From b297f50310ed36f7298e11e0dc85f1b6fac53b89 Mon Sep 17 00:00:00 2001 From: sceptillion <33798691+sceptillion@users.noreply.github.com> Date: Mon, 11 Dec 2017 17:26:33 -0800 Subject: split flash.s --- asm/code_800B540.s | 327946 -------------------------------------------------- 1 file changed, 327946 deletions(-) (limited to 'asm/code_800B540.s') diff --git a/asm/code_800B540.s b/asm/code_800B540.s index c51bcf1..1f7afbc 100644 --- a/asm/code_800B540.s +++ b/asm/code_800B540.s @@ -3400,327950 +3400,4 @@ _0800CEFE: _0800CF08: .4byte 0x04000040 thumb_func_end sub_800CE54 - thumb_func_start sub_800CF0C -sub_800CF0C: - push {lr} - bl IdentifyFlash - lsls r0, 16 - cmp r0, 0 - bne _0800CF32 - movs r0, 0x3 - bl sub_800B6E8 - adds r1, r0, 0 - movs r0, 0x2 - bl SetFlashTimerIntr - lsls r0, 16 - cmp r0, 0 - bne _0800CF32 - ldr r1, _0800CF38 - movs r0, 0x1 - strb r0, [r1] -_0800CF32: - pop {r0} - bx r0 - .align 2, 0 -_0800CF38: .4byte gUnknown_203B0B4 - thumb_func_end sub_800CF0C - - thumb_func_start sub_800CF3C -sub_800CF3C: - push {lr} - ldr r0, _0800CF54 - ldrb r0, [r0] - cmp r0, 0 - beq _0800CF4E - ldr r0, _0800CF58 - ldr r0, [r0] - bl _call_via_r0 -_0800CF4E: - pop {r0} - bx r0 - .align 2, 0 -_0800CF54: .4byte gUnknown_203B0B4 -_0800CF58: .4byte EraseFlashChip - thumb_func_end sub_800CF3C - - thumb_func_start sub_800CF5C -sub_800CF5C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r5, r2, 0 - ldr r0, _0800CFAC - ldrb r0, [r0] - cmp r0, 0 - beq _0800CFB4 - adds r4, r1, 0 - ldr r0, _0800CFB0 - cmp r5, r0 - ble _0800CF94 - movs r7, 0x80 - lsls r7, 5 - mov r8, r0 -_0800CF7C: - lsls r0, r6, 16 - lsrs r0, 16 - movs r1, 0 - adds r2, r4, 0 - adds r3, r7, 0 - bl ReadFlash - adds r6, 0x1 - adds r4, r7 - subs r5, r7 - cmp r5, r8 - bgt _0800CF7C -_0800CF94: - cmp r5, 0 - ble _0800CFA6 - lsls r0, r6, 16 - lsrs r0, 16 - movs r1, 0 - adds r2, r4, 0 - adds r3, r5, 0 - bl ReadFlash -_0800CFA6: - movs r0, 0 - b _0800CFB6 - .align 2, 0 -_0800CFAC: .4byte gUnknown_203B0B4 -_0800CFB0: .4byte 0x00000fff -_0800CFB4: - movs r0, 0x3 -_0800CFB6: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_800CF5C - - thumb_func_start sub_800CFC0 -sub_800CFC0: - push {r4-r6,lr} - ldr r4, _0800CFD8 - add sp, r4 - adds r6, r0, 0 - adds r5, r2, 0 - ldr r0, _0800CFDC - ldrb r0, [r0] - cmp r0, 0 - beq _0800D03C - movs r2, 0x1 - adds r4, r1, 0 - b _0800CFEC - .align 2, 0 -_0800CFD8: .4byte 0xfffff000 -_0800CFDC: .4byte gUnknown_203B0B4 -_0800CFE0: - adds r6, 0x1 - movs r0, 0x80 - lsls r0, 5 - adds r4, r0 - ldr r0, _0800D034 - adds r5, r0 -_0800CFEC: - ldr r0, _0800D038 - cmp r5, r0 - ble _0800D002 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_800D04C - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _0800CFE0 -_0800D002: - cmp r2, 0 - beq _0800D03C - cmp r5, 0 - ble _0800D02C - movs r2, 0x80 - lsls r2, 5 - mov r0, sp - movs r1, 0xFF - bl MemoryFill8 - mov r0, sp - adds r1, r4, 0 - adds r2, r5, 0 - bl MemoryCopy8 - adds r0, r6, 0 - mov r1, sp - bl sub_800D04C - lsls r0, 24 - lsrs r2, r0, 24 -_0800D02C: - cmp r2, 0 - beq _0800D03C - movs r0, 0 - b _0800D03E - .align 2, 0 -_0800D034: .4byte 0xfffff000 -_0800D038: .4byte 0x00000fff -_0800D03C: - movs r0, 0x3 -_0800D03E: - movs r3, 0x80 - lsls r3, 5 - add sp, r3 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_800CFC0 - - thumb_func_start sub_800D04C -sub_800D04C: - push {r4-r7,lr} - adds r5, r1, 0 - movs r6, 0x3 - ldr r7, _0800D07C - lsls r0, 16 - lsrs r4, r0, 16 -_0800D058: - ldr r2, [r7] - adds r0, r4, 0 - adds r1, r5, 0 - bl _call_via_r2 - lsls r0, 16 - cmp r0, 0 - bne _0800D080 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x80 - lsls r2, 5 - bl VerifyFlashSectorNBytes - cmp r0, 0 - bne _0800D080 - movs r0, 0x1 - b _0800D08A - .align 2, 0 -_0800D07C: .4byte ProgramFlashSector -_0800D080: - adds r0, r6, 0 - subs r6, 0x1 - cmp r0, 0 - bgt _0800D058 - movs r0, 0 -_0800D08A: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_800D04C - - thumb_func_start Hang -Hang: - push {lr} -_0800D092: - swi 0x2 - b _0800D092 - thumb_func_end Hang - - thumb_func_start sub_800D098 -sub_800D098: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r1, _0800D138 -_0800D0A4: - ldrh r0, [r1] - cmp r0, 0x9F - bls _0800D0A4 - movs r1, 0x80 - lsls r1, 19 - ldrh r0, [r1] - adds r7, r0, 0 - movs r0, 0 - strh r0, [r1] - movs r1, 0xA0 - lsls r1, 19 - ldr r2, _0800D13C - adds r0, r2, 0 - strh r0, [r1] - ldr r2, _0800D140 - ldrh r0, [r2] - ldr r1, _0800D144 - cmp r0, r1 - beq _0800D0D0 -_0800D0CA: - ldrh r0, [r2] - cmp r0, r1 - bne _0800D0CA -_0800D0D0: - ldr r6, _0800D148 - movs r0, 0 - mov r8, r0 - strh r0, [r6] - ldr r5, _0800D14C - ldrh r4, [r5] - movs r1, 0xC0 - lsls r1, 6 - adds r0, r1, 0 - strh r0, [r5] - ldr r2, _0800D150 - mov r10, r2 - ldr r1, _0800D154 - adds r0, r1, 0 - strh r0, [r2] - movs r2, 0x1 - mov r9, r2 - strh r2, [r6] - bl SoundBiasReset - swi 0x3 - bl SoundBiasSet - mov r0, r8 - strh r0, [r6] - strh r4, [r5] - mov r1, r10 - strh r0, [r1] - mov r2, r9 - strh r2, [r6] - ldr r1, _0800D138 -_0800D10E: - ldrh r0, [r1] - cmp r0, 0x9F - bls _0800D10E - movs r0, 0x80 - lsls r0, 19 - strh r7, [r0] - ldr r2, _0800D140 - ldrh r0, [r2] - ldr r1, _0800D144 - cmp r0, r1 - beq _0800D12A -_0800D124: - ldrh r0, [r2] - cmp r0, r1 - bne _0800D124 -_0800D12A: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800D138: .4byte 0x04000006 -_0800D13C: .4byte 0x0000efff -_0800D140: .4byte 0x04000130 -_0800D144: .4byte 0x000003ff -_0800D148: .4byte 0x04000208 -_0800D14C: .4byte 0x04000200 -_0800D150: .4byte 0x04000132 -_0800D154: .4byte 0x0000c304 - thumb_func_end sub_800D098 - - thumb_func_start sub_800D158 -sub_800D158: - push {r1-r3} - push {lr} - ldr r1, [sp, 0x4] - add r2, sp, 0x8 - bl vsprintf - pop {r3} - add sp, 0xC - bx r3 - thumb_func_end sub_800D158 - - thumb_func_start sub_800D16C -sub_800D16C: - push {r0-r3} - push {lr} - mov r12, r4 - ldr r4, _0800D198 - add sp, r4 - mov r4, r12 - ldr r0, _0800D19C - add r0, sp - ldr r1, [r0] - movs r2, 0x81 - lsls r2, 3 - add r2, sp - mov r0, sp - bl vsprintf - movs r3, 0x80 - lsls r3, 3 - add sp, r3 - pop {r3} - add sp, 0x10 - bx r3 - .align 2, 0 -_0800D198: .4byte 0xfffffc00 -_0800D19C: .4byte 0x00000404 - thumb_func_end sub_800D16C - - thumb_func_start sub_800D1A0 -sub_800D1A0: - push {r3} - add sp, 0x4 - bx lr - thumb_func_end sub_800D1A0 - - thumb_func_start nullsub_183 -nullsub_183: - bx lr - thumb_func_end nullsub_183 - - thumb_func_start nullsub_188 -nullsub_188: - bx lr - thumb_func_end nullsub_188 - - thumb_func_start nullsub_184 -nullsub_184: - bx lr - thumb_func_end nullsub_184 - - thumb_func_start sub_800D1B4 -sub_800D1B4: - movs r0, 0 - bx lr - thumb_func_end sub_800D1B4 - - thumb_func_start sub_800D1B8 -sub_800D1B8: - adds r0, r2, 0 - bx lr - thumb_func_end sub_800D1B8 - - thumb_func_start nullsub_187 -nullsub_187: - bx lr - thumb_func_end nullsub_187 - - thumb_func_start sub_800D1C0 -sub_800D1C0: - push {lr} - ldr r1, _0800D1D4 - ldr r0, [r1] - cmp r0, 0x2 - bne _0800D1D8 - ldr r0, [r1, 0x4] - cmp r0, 0x2 - bne _0800D1D8 - movs r0, 0x1 - b _0800D1DA - .align 2, 0 -_0800D1D4: .4byte gUnknown_202DB60 -_0800D1D8: - movs r0, 0 -_0800D1DA: - pop {r1} - bx r1 - thumb_func_end sub_800D1C0 - - thumb_func_start sub_800D1E0 -sub_800D1E0: - push {r4-r7,lr} - movs r0, 0 - ldr r1, _0800D218 - mov r12, r1 - ldr r6, _0800D21C - ldr r7, _0800D220 - movs r5, 0x1 -_0800D1EE: - movs r2, 0 - lsls r1, r0, 4 - adds r4, r0, 0x1 - lsls r0, 2 - adds r3, r0, r7 - add r1, r12 -_0800D1FA: - ldrh r0, [r1] - cmp r0, r6 - bne _0800D202 - str r5, [r3] -_0800D202: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x7 - bls _0800D1FA - adds r0, r4, 0 - cmp r0, 0x1 - ble _0800D1EE - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800D218: .4byte gUnknown_202DB30 -_0800D21C: .4byte 0x0000fdfd -_0800D220: .4byte gUnknown_202DB60 - thumb_func_end sub_800D1E0 - - thumb_func_start sub_800D224 -sub_800D224: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - str r0, [sp] - movs r6, 0 - ldr r0, _0800D280 - mov r12, r0 - ldr r1, _0800D284 - mov r10, r1 - movs r2, 0x2 - mov r9, r2 -_0800D240: - ldr r1, [sp] - asrs r1, r6 - movs r0, 0x1 - ands r1, r0 - adds r3, r6, 0x1 - mov r8, r3 - cmp r1, 0 - beq _0800D2CE - lsls r0, r6, 2 - ldr r1, _0800D288 - adds r2, r0, r1 - ldr r1, [r2] - adds r5, r0, 0 - cmp r1, 0x1 - bne _0800D2CE - lsls r0, r6, 5 - adds r0, r6 - lsls r0, 3 - ldr r1, _0800D28C - adds r7, r0, r1 - movs r4, 0 - mov r3, r12 - adds r0, r5, r3 - ldr r1, [r0] - mov r3, r10 - ldr r0, [r3] - lsrs r0, 1 - cmp r1, r0 - bcc _0800D290 - mov r0, r9 - str r0, [r2] - b _0800D2C4 - .align 2, 0 -_0800D280: .4byte gUnknown_202DB58 -_0800D284: .4byte gUnknown_202DB74 -_0800D288: .4byte gUnknown_202DB60 -_0800D28C: .4byte gUnknown_202D910 -_0800D290: - mov r1, r12 - adds r0, r5, r1 - ldr r3, [r0] - adds r2, r3, r4 - lsls r2, 1 - adds r2, r7 - lsls r0, r4, 1 - lsls r1, r6, 4 - adds r0, r1 - ldr r1, _0800D2E4 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r2] - adds r4, 0x1 - cmp r4, 0x7 - bhi _0800D2C4 - adds r1, r3, r4 - mov r2, r10 - ldr r0, [r2] - lsrs r0, 1 - cmp r1, r0 - bcc _0800D290 - ldr r3, _0800D2E8 - adds r0, r5, r3 - mov r1, r9 - str r1, [r0] -_0800D2C4: - mov r2, r12 - adds r1, r5, r2 - ldr r0, [r1] - adds r0, 0x8 - str r0, [r1] -_0800D2CE: - mov r6, r8 - cmp r6, 0x1 - ble _0800D240 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800D2E4: .4byte gUnknown_202DB30 -_0800D2E8: .4byte gUnknown_202DB60 - thumb_func_end sub_800D224 - - thumb_func_start sub_800D2EC -sub_800D2EC: - push {r4-r7,lr} - ldr r0, _0800D318 - mov r12, r0 - ldr r3, _0800D31C - adds r7, r3, 0 - ldr r6, _0800D320 - ldr r2, _0800D324 - adds r5, r2, 0 - adds r5, 0xE - ldr r4, _0800D328 -_0800D300: - ldr r0, [r4] - lsrs r0, 1 - ldr r1, [r7] - cmp r1, r0 - bcs _0800D32C - lsls r0, r1, 1 - add r0, r12 - ldrh r0, [r0] - strh r0, [r2] - adds r0, r1, 0x1 - str r0, [r3] - b _0800D32E - .align 2, 0 -_0800D318: .4byte gUnknown_202D808 -_0800D31C: .4byte gUnknown_202DB50 -_0800D320: .4byte 0x0000fcfc -_0800D324: .4byte gUnknown_202DB20 -_0800D328: .4byte gUnknown_202DB74 -_0800D32C: - strh r6, [r2] -_0800D32E: - adds r2, 0x2 - cmp r2, r5 - bls _0800D300 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_800D2EC - - thumb_func_start sub_800D33C -sub_800D33C: - push {r4,r5,lr} - movs r5, 0 - ldr r1, _0800D370 - ldr r4, _0800D374 - ldr r0, [r4] - str r0, [r1] - ldr r0, _0800D378 - ldr r1, _0800D37C - bl sub_800D820 - adds r2, r0, 0 - str r2, [r4] - ldr r1, _0800D380 - ldrb r0, [r1] - cmp r0, 0 - bne _0800D384 - movs r0, 0x80 - lsls r0, 1 - ands r0, r2 - cmp r0, 0 - beq _0800D36A - movs r0, 0x1 - strb r0, [r1] -_0800D36A: - movs r0, 0 - b _0800D40E - .align 2, 0 -_0800D370: .4byte gUnknown_202DB6C -_0800D374: .4byte gUnknown_202DB68 -_0800D378: .4byte gUnknown_202DB20 -_0800D37C: .4byte gUnknown_202DB30 -_0800D380: .4byte gUnknown_202DB70 -_0800D384: - movs r0, 0x80 - lsls r0, 5 - ands r0, r2 - cmp r0, 0 - beq _0800D392 - movs r0, 0x3 - b _0800D40E -_0800D392: - movs r0, 0x80 - lsls r0, 6 - ands r0, r2 - cmp r0, 0 - beq _0800D3A0 - movs r0, 0x4 - b _0800D40E -_0800D3A0: - movs r0, 0x80 - lsls r0, 8 - ands r0, r2 - cmp r0, 0 - beq _0800D3BA - lsls r1, r2, 28 - lsrs r1, 28 - lsls r0, r2, 20 - lsrs r0, 28 - cmp r1, r0 - beq _0800D3BA - movs r0, 0x5 - b _0800D40E -_0800D3BA: - ldr r4, _0800D3F8 - ldr r0, _0800D3FC - ldr r2, [r4] - ldr r0, [r0] - orrs r0, r2 - movs r1, 0xE - ands r0, r1 - cmp r0, 0 - beq _0800D40C - ldr r0, _0800D400 - ldr r1, [r0] - lsls r1, 26 - lsrs r1, 30 - movs r0, 0x1 - lsls r0, r1 - ands r2, r0 - cmp r2, 0 - beq _0800D40C - bl sub_800D1E0 - ldr r0, [r4] - bl sub_800D224 - ldr r0, [r4] - bl sub_800D1C0 - lsls r0, 24 - cmp r0, 0 - beq _0800D404 - movs r0, 0x2 - b _0800D40E - .align 2, 0 -_0800D3F8: .4byte gUnknown_202DB68 -_0800D3FC: .4byte gUnknown_202DB6C -_0800D400: .4byte 0x04000128 -_0800D404: - ldr r0, [r4] - bl sub_800D2EC - movs r5, 0x1 -_0800D40C: - adds r0, r5, 0 -_0800D40E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_800D33C - - thumb_func_start sub_800D414 -sub_800D414: - push {r4,lr} - ldr r0, _0800D468 - movs r4, 0 - str r4, [r0] - ldr r0, _0800D46C - str r4, [r0] - ldr r0, _0800D470 - strb r4, [r0] - ldr r0, _0800D474 - str r4, [r0] - ldr r0, _0800D478 - str r4, [r0] - str r4, [r0, 0x4] - ldr r0, _0800D47C - movs r1, 0x10 - bl MemoryClear16 - ldr r0, _0800D480 - movs r1, 0x20 - bl MemoryClear16 - ldr r0, _0800D484 - str r4, [r0] - ldr r0, _0800D488 - str r4, [r0] - str r4, [r0, 0x4] - ldr r0, _0800D48C - movs r1, 0x84 - lsls r1, 1 - bl MemoryClear16 - ldr r0, _0800D490 - movs r1, 0x84 - lsls r1, 2 - bl MemoryClear16 - bl sub_800D6AC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800D468: .4byte gUnknown_202DB68 -_0800D46C: .4byte gUnknown_202DB6C -_0800D470: .4byte gUnknown_202DB70 -_0800D474: .4byte gUnknown_202DB74 -_0800D478: .4byte gUnknown_202DB60 -_0800D47C: .4byte gUnknown_202DB20 -_0800D480: .4byte gUnknown_202DB30 -_0800D484: .4byte gUnknown_202DB50 -_0800D488: .4byte gUnknown_202DB58 -_0800D48C: .4byte gUnknown_202D808 -_0800D490: .4byte gUnknown_202D910 - thumb_func_end sub_800D414 - - thumb_func_start sub_800D494 -sub_800D494: - push {r4,lr} - ldr r0, _0800D4E4 - movs r4, 0 - str r4, [r0] - ldr r0, _0800D4E8 - str r4, [r0] - ldr r0, _0800D4EC - strb r4, [r0] - ldr r0, _0800D4F0 - str r4, [r0] - ldr r0, _0800D4F4 - str r4, [r0] - str r4, [r0, 0x4] - ldr r0, _0800D4F8 - movs r1, 0x10 - bl MemoryClear16 - ldr r0, _0800D4FC - movs r1, 0x20 - bl MemoryClear16 - ldr r0, _0800D500 - str r4, [r0] - ldr r0, _0800D504 - str r4, [r0] - str r4, [r0, 0x4] - ldr r0, _0800D508 - movs r1, 0x84 - lsls r1, 1 - bl MemoryClear16 - ldr r0, _0800D50C - movs r1, 0x84 - lsls r1, 2 - bl MemoryClear16 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800D4E4: .4byte gUnknown_202DB68 -_0800D4E8: .4byte gUnknown_202DB6C -_0800D4EC: .4byte gUnknown_202DB70 -_0800D4F0: .4byte gUnknown_202DB74 -_0800D4F4: .4byte gUnknown_202DB60 -_0800D4F8: .4byte gUnknown_202DB20 -_0800D4FC: .4byte gUnknown_202DB30 -_0800D500: .4byte gUnknown_202DB50 -_0800D504: .4byte gUnknown_202DB58 -_0800D508: .4byte gUnknown_202D808 -_0800D50C: .4byte gUnknown_202D910 - thumb_func_end sub_800D494 - - thumb_func_start sub_800D510 -sub_800D510: - ldr r1, _0800D51C - movs r2, 0x80 - lsls r2, 8 - adds r0, r2, 0 - strh r0, [r1] - bx lr - .align 2, 0 -_0800D51C: .4byte 0x04000134 - thumb_func_end sub_800D510 - - thumb_func_start sub_800D520 -sub_800D520: - push {r4,r5,lr} - sub sp, 0x4 - mov r1, sp - movs r0, 0x1 - strh r0, [r1] - ldr r0, _0800D568 - ldrb r1, [r0] - movs r0, 0x30 - ands r0, r1 - cmp r0, 0 - bne _0800D55C - mov r1, sp - mov r0, sp - ldrh r0, [r0] - subs r0, 0x1 - strh r0, [r1] - ldrh r0, [r1] - ldr r1, _0800D56C - cmp r0, r1 - beq _0800D55C - mov r4, sp - adds r5, r1, 0 -_0800D54C: - bl VBlankIntrWait - ldrh r0, [r4] - subs r0, 0x1 - strh r0, [r4] - ldrh r0, [r4] - cmp r0, r5 - bne _0800D54C -_0800D55C: - bl sub_800D7D0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0800D568: .4byte 0x04000128 -_0800D56C: .4byte 0x0000ffff - thumb_func_end sub_800D520 - - thumb_func_start sub_800D570 -sub_800D570: - push {lr} - bl sub_800D7B8 - pop {r0} - bx r0 - thumb_func_end sub_800D570 - - thumb_func_start sub_800D57C -sub_800D57C: - ldr r0, _0800D584 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0800D584: .4byte gUnknown_202DB70 - thumb_func_end sub_800D57C - - thumb_func_start sub_800D588 -sub_800D588: - ldr r0, _0800D598 - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r0, 24 - bx lr - .align 2, 0 -_0800D598: .4byte gUnknown_202DB68 - thumb_func_end sub_800D588 - - thumb_func_start sub_800D59C -sub_800D59C: - push {r4-r6,lr} - adds r3, r0, 0 - adds r2, r1, 0 - movs r5, 0 - ldr r6, _0800D5F4 - ldr r4, _0800D5F8 - adds r0, r2, 0x1 - movs r1, 0x2 - negs r1, r1 - ands r0, r1 - adds r0, 0x8 - str r0, [r4] - adds r0, r6, 0x4 - adds r1, r3, 0 - bl CpuCopy - ldr r0, _0800D5FC - strh r0, [r6] - strh r5, [r6, 0x2] - movs r2, 0 - ldr r0, [r4] - lsrs r0, 1 - subs r0, 0x2 - cmp r5, r0 - bcs _0800D5DE - adds r3, r0, 0 - adds r1, r6, 0 -_0800D5D2: - ldrh r0, [r1] - adds r5, r0 - adds r1, 0x2 - adds r2, 0x1 - cmp r2, r3 - bcc _0800D5D2 -_0800D5DE: - ldr r2, _0800D5F4 - mvns r1, r5 - ldr r0, _0800D5F8 - ldr r0, [r0] - lsrs r0, 1 - subs r1, r0 - strh r1, [r2, 0x2] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0800D5F4: .4byte gUnknown_202D808 -_0800D5F8: .4byte gUnknown_202DB74 -_0800D5FC: .4byte 0x0000fdfd - thumb_func_end sub_800D59C - - thumb_func_start sub_800D600 -sub_800D600: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r6, 0 - ldr r0, _0800D64C - mov r8, r0 - ldr r7, _0800D650 - ldr r0, [r7] - lsrs r0, 1 - subs r0, 0x2 - mov r12, r0 - movs r5, 0 -_0800D618: - movs r4, 0 - mov r2, r8 - adds r1, r5, r2 - movs r3, 0 - cmp r4, r12 - bcs _0800D636 - ldr r0, [r7] - lsrs r0, 1 - subs r2, r0, 0x2 -_0800D62A: - ldrh r0, [r1] - adds r4, r0 - adds r1, 0x2 - adds r3, 0x1 - cmp r3, r2 - bcc _0800D62A -_0800D636: - ldr r0, [r7] - lsrs r0, 1 - ldr r2, _0800D654 - adds r1, r2, 0 - subs r1, r0 - lsls r0, r4, 16 - lsls r1, 16 - cmp r0, r1 - beq _0800D658 - movs r0, 0 - b _0800D666 - .align 2, 0 -_0800D64C: .4byte gUnknown_202D910 -_0800D650: .4byte gUnknown_202DB74 -_0800D654: .4byte 0x0000ffff -_0800D658: - movs r0, 0x84 - lsls r0, 1 - adds r5, r0 - adds r6, 0x1 - cmp r6, 0x1 - bls _0800D618 - movs r0, 0x1 -_0800D666: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_800D600 - - thumb_func_start sub_800D670 -sub_800D670: - push {lr} - adds r3, r1, 0 - lsls r1, r0, 5 - adds r1, r0 - lsls r1, 3 - ldr r0, _0800D688 - adds r1, r0 - adds r0, r3, 0 - bl CpuCopy - pop {r0} - bx r0 - .align 2, 0 -_0800D688: .4byte gUnknown_202D914 - thumb_func_end sub_800D670 - - thumb_func_start sub_800D68C -sub_800D68C: - push {lr} - adds r1, r0, 0 - lsls r0, r1, 5 - adds r0, r1 - lsls r0, 3 - ldr r1, _0800D6A8 - adds r0, r1 - movs r2, 0x84 - lsls r2, 1 - movs r1, 0 - bl MemoryFill8 - pop {r0} - bx r0 - .align 2, 0 -_0800D6A8: .4byte gUnknown_202D910 - thumb_func_end sub_800D68C - - thumb_func_start sub_800D6AC -sub_800D6AC: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - ldr r3, _0800D784 - movs r4, 0 - strh r4, [r3] - ldr r2, _0800D788 - ldrh r1, [r2] - ldr r0, _0800D78C - ands r0, r1 - strh r0, [r2] - movs r0, 0x1 - strh r0, [r3] - ldr r0, _0800D790 - strh r4, [r0] - subs r2, 0xD8 - movs r0, 0x80 - lsls r0, 6 - str r0, [r2] - ldrh r0, [r2] - ldr r3, _0800D794 - adds r1, r3, 0 - orrs r0, r1 - strh r0, [r2] - movs r0, 0 - str r0, [sp] - ldr r4, _0800D798 - ldr r2, _0800D79C - mov r0, sp - adds r1, r4, 0 - bl CpuSet - ldr r0, _0800D7A0 - ldr r1, _0800D7A4 - ldr r2, _0800D7A8 - bl CpuSet - ldr r0, _0800D7AC - ldr r1, _0800D7B0 - ldr r2, _0800D7B4 - bl CpuSet - movs r0, 0x1 - negs r0, r0 - str r0, [r4, 0x14] - adds r0, r4, 0 - adds r0, 0x60 - str r0, [r4, 0x28] - adds r0, 0x18 - str r0, [r4, 0x2C] - movs r3, 0 - adds r5, r4, 0 - adds r5, 0xC0 - movs r2, 0 - movs r7, 0x30 - adds r7, r4 - mov r8, r7 - movs r0, 0x90 - adds r0, r4 - mov r12, r0 - adds r6, r4, 0 - adds r6, 0xA8 - movs r7, 0x40 - adds r7, r4 - mov r9, r7 -_0800D732: - lsls r1, r3, 2 - mov r7, r12 - adds r0, r2, r7 - mov r7, r8 - adds r7, 0x4 - mov r8, r7 - subs r7, 0x4 - stm r7!, {r0} - adds r0, r2, r6 - mov r7, r9 - adds r7, 0x4 - mov r9, r7 - subs r7, 0x4 - stm r7!, {r0} - adds r0, r4, 0 - adds r0, 0x50 - adds r1, r0 - str r5, [r1] - adds r5, 0x48 - adds r2, 0x48 - adds r3, 0x1 - cmp r3, 0x1 - ble _0800D732 - movs r0, 0 - ldr r3, _0800D784 - strh r0, [r3] - ldr r2, _0800D788 - ldrh r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strh r0, [r2] - movs r0, 0x1 - strh r0, [r3] - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800D784: .4byte 0x04000208 -_0800D788: .4byte 0x04000200 -_0800D78C: .4byte 0x0000ff3f -_0800D790: .4byte 0x04000134 -_0800D794: .4byte 0x00004003 -_0800D798: .4byte gUnknown_202DCF8 -_0800D79C: .4byte 0x05000048 -_0800D7A0: .4byte sub_80001E8 -_0800D7A4: .4byte gUnknown_202DB78 -_0800D7A8: .4byte 0x04000010 -_0800D7AC: .4byte sub_8000228 -_0800D7B0: .4byte gUnknown_202DBB8 -_0800D7B4: .4byte 0x04000050 - thumb_func_end sub_800D6AC - - thumb_func_start sub_800D7B8 -sub_800D7B8: - push {lr} - ldr r1, _0800D7CC - ldrb r0, [r1] - cmp r0, 0 - beq _0800D7C6 - movs r0, 0x1 - strb r0, [r1, 0x8] -_0800D7C6: - pop {r0} - bx r0 - .align 2, 0 -_0800D7CC: .4byte gUnknown_202DCF8 - thumb_func_end sub_800D7B8 - - thumb_func_start sub_800D7D0 -sub_800D7D0: - push {r4,lr} - ldr r3, _0800D804 - movs r4, 0 - strh r4, [r3] - ldr r2, _0800D808 - ldrh r1, [r2] - ldr r0, _0800D80C - ands r0, r1 - strh r0, [r2] - movs r0, 0x1 - strh r0, [r3] - ldr r1, _0800D810 - ldr r2, _0800D814 - adds r0, r2, 0 - strh r0, [r1] - subs r1, 0x1C - ldr r0, _0800D818 - str r0, [r1] - adds r1, 0xF6 - movs r0, 0xC0 - strh r0, [r1] - ldr r0, _0800D81C - strb r4, [r0, 0x8] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800D804: .4byte 0x04000208 -_0800D808: .4byte 0x04000200 -_0800D80C: .4byte 0x0000ff3f -_0800D810: .4byte 0x04000128 -_0800D814: .4byte 0x00002003 -_0800D818: .4byte 0x0000b1fc -_0800D81C: .4byte gUnknown_202DCF8 - thumb_func_end sub_800D7D0 - - thumb_func_start sub_800D820 -sub_800D820: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - mov r12, r1 - ldr r5, _0800D844 - ldr r6, [r5] - ldr r0, _0800D848 - ldrb r2, [r0, 0x1] - adds r7, r0, 0 - cmp r2, 0x1 - beq _0800D8AA - cmp r2, 0x1 - bgt _0800D84C - cmp r2, 0 - beq _0800D852 - b _0800D8E8 - .align 2, 0 -_0800D844: .4byte 0x04000128 -_0800D848: .4byte gUnknown_202DCF8 -_0800D84C: - cmp r2, 0x2 - beq _0800D8DC - b _0800D8E8 -_0800D852: - ldr r1, [r7, 0x14] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0800D8A6 - movs r0, 0x88 - adds r4, r6, 0 - ands r4, r0 - cmp r4, 0x8 - bne _0800D8E8 - movs r1, 0x4 - adds r0, r6, 0 - ands r0, r1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0800D8A6 - ldr r3, _0800D8C0 - strh r0, [r3] - ldr r2, _0800D8C4 - ldrh r1, [r2] - ldr r0, _0800D8C8 - ands r0, r1 - strh r0, [r2] - ldrh r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strh r0, [r2] - movs r0, 0x1 - strh r0, [r3] - ldrb r1, [r5, 0x1] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r5, 0x1] - ldr r1, _0800D8CC - movs r0, 0xC0 - strh r0, [r1] - subs r1, 0xF6 - ldr r0, _0800D8D0 - str r0, [r1] - strb r4, [r7] -_0800D8A6: - movs r0, 0x1 - strb r0, [r7, 0x1] -_0800D8AA: - ldr r1, _0800D8D4 - ldrb r0, [r1, 0x2] - cmp r0, 0 - beq _0800D8DC - ldrb r0, [r1, 0xA] - cmp r0, 0x7 - bhi _0800D8D8 - adds r0, 0x1 - strb r0, [r1, 0xA] - b _0800D8DC - .align 2, 0 -_0800D8C0: .4byte 0x04000208 -_0800D8C4: .4byte 0x04000200 -_0800D8C8: .4byte 0x0000ff7f -_0800D8CC: .4byte 0x04000202 -_0800D8D0: .4byte 0x0000b1fc -_0800D8D4: .4byte gUnknown_202DCF8 -_0800D8D8: - movs r0, 0x2 - strb r0, [r1, 0x1] -_0800D8DC: - mov r0, r12 - bl sub_800D9B8 - mov r0, r8 - bl sub_800D944 -_0800D8E8: - ldr r1, _0800D908 - ldrb r0, [r1, 0xB] - adds r0, 0x1 - strb r0, [r1, 0xB] - ldrb r3, [r1, 0x3] - ldrb r0, [r1, 0x2] - lsls r2, r0, 8 - ldrb r0, [r1] - adds r7, r1, 0 - cmp r0, 0x8 - bne _0800D90C - movs r0, 0x80 - orrs r0, r2 - orrs r0, r3 - b _0800D910 - .align 2, 0 -_0800D908: .4byte gUnknown_202DCF8 -_0800D90C: - adds r0, r3, 0 - orrs r0, r2 -_0800D910: - adds r2, r0, 0 - ldrb r0, [r7, 0x9] - cmp r0, 0 - beq _0800D91E - movs r0, 0x80 - lsls r0, 5 - orrs r2, r0 -_0800D91E: - ldrb r0, [r7, 0xA] - lsrs r0, 3 - lsls r1, r0, 15 - lsls r0, r6, 26 - lsrs r0, 30 - cmp r0, 0x1 - bls _0800D936 - movs r0, 0x80 - lsls r0, 6 - orrs r0, r1 - orrs r0, r2 - b _0800D93A -_0800D936: - adds r0, r2, 0 - orrs r0, r1 -_0800D93A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_800D820 - - thumb_func_start sub_800D944 -sub_800D944: - push {r4,r5,lr} - movs r5, 0 - ldr r4, _0800D9AC - ldr r2, [r4, 0x28] - ldrb r1, [r4, 0xB] - strb r1, [r2] - ldr r3, [r4, 0x28] - ldrb r1, [r4, 0x2] - ldrb r2, [r4, 0x3] - eors r1, r2 - strb r1, [r3, 0x1] - ldr r1, [r4, 0x28] - strh r5, [r1, 0x2] - ldr r1, [r4, 0x28] - adds r1, 0x4 - ldr r2, _0800D9B0 - bl CpuSet - movs r2, 0 - ldr r1, [r4, 0x28] -_0800D96C: - ldrh r0, [r1] - adds r5, r0 - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x9 - bls _0800D96C - adds r2, r4, 0 - ldr r1, [r2, 0x28] - mvns r0, r5 - subs r0, 0xC - strh r0, [r1, 0x2] - ldrb r0, [r2] - cmp r0, 0 - beq _0800D98E - ldr r1, _0800D9B4 - movs r0, 0 - strh r0, [r1] -_0800D98E: - movs r0, 0x1 - negs r0, r0 - str r0, [r4, 0x14] - ldrb r0, [r4] - cmp r0, 0 - beq _0800D9A6 - ldrb r0, [r4, 0x8] - cmp r0, 0 - beq _0800D9A6 - ldr r1, _0800D9B4 - movs r0, 0xC0 - strh r0, [r1] -_0800D9A6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0800D9AC: .4byte gUnknown_202DCF8 -_0800D9B0: .4byte 0x04000004 -_0800D9B4: .4byte 0x0400010e - thumb_func_end sub_800D944 - - thumb_func_start sub_800D9B8 -sub_800D9B8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - str r0, [sp, 0x8] - ldr r0, _0800DA68 - bl _call_via_r0 - str r0, [sp] - ldr r1, _0800DA6C - movs r0, 0 - strb r0, [r1, 0x3] - movs r6, 0 - add r0, sp, 0x4 - mov r10, r0 - mov r9, r1 - movs r1, 0x50 - add r1, r9 - mov r8, r1 -_0800D9E2: - movs r3, 0 - movs r2, 0 - lsls r5, r6, 2 - mov r0, sp - adds r4, r0, r6 - adds r7, r6, 0x1 - mov r1, r8 - adds r0, r5, r1 - ldr r1, [r0] -_0800D9F4: - ldrh r0, [r1] - adds r3, r0 - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x9 - bls _0800D9F4 - ldrb r0, [r4] - cmp r0, 0 - beq _0800DA32 - lsls r0, r3, 16 - asrs r0, 16 - movs r2, 0xD - negs r2, r2 - cmp r0, r2 - bne _0800DA32 - mov r1, r8 - adds r0, r5, r1 - ldr r0, [r0] - adds r0, 0x4 - lsls r1, r6, 4 - ldr r2, [sp, 0x8] - adds r1, r2, r1 - ldr r2, _0800DA70 - bl CpuSet - movs r0, 0x1 - lsls r0, r6 - mov r2, r9 - ldrb r1, [r2, 0x3] - orrs r0, r1 - strb r0, [r2, 0x3] -_0800DA32: - movs r0, 0 - str r0, [sp, 0x4] - mov r1, r8 - adds r0, r5, r1 - ldr r1, [r0] - adds r1, 0x4 - mov r0, r10 - ldr r2, _0800DA74 - bl CpuSet - adds r6, r7, 0 - cmp r6, 0x1 - ble _0800D9E2 - ldr r1, _0800DA6C - ldrb r0, [r1, 0x2] - ldrb r2, [r1, 0x3] - orrs r0, r2 - strb r0, [r1, 0x2] - ldrb r0, [r1, 0x3] - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0800DA68: .4byte gUnknown_202DB78 -_0800DA6C: .4byte gUnknown_202DCF8 -_0800DA70: .4byte 0x04000004 -_0800DA74: .4byte 0x05000004 - thumb_func_end sub_800D9B8 - - thumb_func_start nullsub_189 -nullsub_189: - bx lr - thumb_func_end nullsub_189 - - thumb_func_start nullsub_190 -nullsub_190: - bx lr - thumb_func_end nullsub_190 - - thumb_func_start nullsub_191 -nullsub_191: - bx lr - thumb_func_end nullsub_191 - - thumb_func_start nullsub_192 -nullsub_192: - bx lr - thumb_func_end nullsub_192 - - thumb_func_start nullsub_193 -nullsub_193: - bx lr - thumb_func_end nullsub_193 - - thumb_func_start nullsub_194 -nullsub_194: - bx lr - thumb_func_end nullsub_194 - - thumb_func_start nullsub_195 -nullsub_195: - bx lr - thumb_func_end nullsub_195 - - thumb_func_start sub_800DA94 -sub_800DA94: - movs r0, 0 - bx lr - thumb_func_end sub_800DA94 - - thumb_func_start sub_800DA98 -sub_800DA98: - movs r0, 0 - bx lr - thumb_func_end sub_800DA98 - - thumb_func_start sub_800DA9C -sub_800DA9C: - movs r0, 0 - bx lr - thumb_func_end sub_800DA9C - - thumb_func_start nullsub_196 -nullsub_196: - bx lr - thumb_func_end nullsub_196 - - thumb_func_start nullsub_197 -nullsub_197: - bx lr - thumb_func_end nullsub_197 - - thumb_func_start nullsub_198 -nullsub_198: - bx lr - thumb_func_end nullsub_198 - - thumb_func_start sub_800DAAC -sub_800DAAC: - movs r0, 0 - bx lr - thumb_func_end sub_800DAAC - - thumb_func_start sub_800DAB0 -sub_800DAB0: - movs r0, 0 - bx lr - thumb_func_end sub_800DAB0 - - thumb_func_start sub_800DAB4 -sub_800DAB4: - movs r0, 0 - bx lr - thumb_func_end sub_800DAB4 - - thumb_func_start sub_800DAB8 -sub_800DAB8: - movs r0, 0 - bx lr - thumb_func_end sub_800DAB8 - - thumb_func_start sub_800DABC -sub_800DABC: - movs r0, 0 - bx lr - thumb_func_end sub_800DABC - - thumb_func_start sub_800DAC0 -sub_800DAC0: - push {r4-r6,lr} - adds r6, r0, 0 - ldr r5, _0800DB38 - ldr r0, [r5] - cmp r0, 0 - beq _0800DAD0 - bl sub_800DB7C -_0800DAD0: - ldr r4, _0800DB3C - adds r0, r4, 0 - movs r1, 0xB - bl MemoryAlloc - str r0, [r5] - adds r1, r4, 0 - bl MemoryClear8 - ldr r1, [r5] - ldr r2, _0800DB40 - adds r0, r1, r2 - str r6, [r0] - movs r2, 0x1 - negs r2, r2 - movs r0, 0x1F -_0800DAF0: - str r2, [r1, 0x4] - subs r0, 0x1 - adds r1, 0xD0 - cmp r0, 0 - bge _0800DAF0 - adds r0, r6, 0 - bl sub_800ED38 - bl sub_800F034 - ldr r0, _0800DB38 - ldr r0, [r0] - ldr r1, _0800DB40 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - beq _0800DB4C - cmp r0, 0x1 - bne _0800DB6C - ldr r0, _0800DB44 - ldr r1, _0800DB48 - bl Call_OpenFileAndGetFileDataPtr - adds r4, r0, 0 - cmp r4, 0 - beq _0800DB6C - movs r1, 0x92 - lsls r1, 2 - movs r2, 0x1F - movs r3, 0 - bl sub_8005610 - adds r0, r4, 0 - bl CloseFile - b _0800DB6C - .align 2, 0 -_0800DB38: .4byte gUnknown_203B0CC -_0800DB3C: .4byte 0x00001a18 -_0800DB40: .4byte 0x00001a04 -_0800DB44: .4byte gUnknown_80B9C6C -_0800DB48: .4byte gUnknown_9740000 -_0800DB4C: - ldr r0, _0800DB74 - ldr r1, _0800DB78 - bl Call_OpenFileAndGetFileDataPtr - adds r4, r0, 0 - cmp r4, 0 - beq _0800DB6C - movs r1, 0x92 - lsls r1, 2 - movs r2, 0x1F - movs r3, 0 - bl sub_8005610 - adds r0, r4, 0 - bl CloseFile -_0800DB6C: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0800DB74: .4byte gUnknown_80B9C74 -_0800DB78: .4byte gUnknown_9740000 - thumb_func_end sub_800DAC0 - - thumb_func_start sub_800DB7C -sub_800DB7C: - push {r4-r6,lr} - ldr r0, _0800DBB8 - ldr r4, [r0] - movs r6, 0x1 - negs r6, r6 - movs r5, 0x1F -_0800DB88: - ldr r0, [r4, 0x4] - cmp r0, r6 - beq _0800DB92 - bl sub_800DC14 -_0800DB92: - subs r5, 0x1 - adds r4, 0xD0 - cmp r5, 0 - bge _0800DB88 - bl sub_800F078 - bl sub_800ED64 - ldr r4, _0800DBB8 - ldr r0, [r4] - cmp r0, 0 - beq _0800DBB2 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0800DBB2: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0800DBB8: .4byte gUnknown_203B0CC - thumb_func_end sub_800DB7C - - thumb_func_start sub_800DBBC -sub_800DBBC: - push {r4-r6,lr} - ldr r0, _0800DBFC - ldr r4, [r0] - movs r6, 0x1 - negs r6, r6 - movs r5, 0x1F -_0800DBC8: - ldr r0, [r4, 0x4] - cmp r0, r6 - beq _0800DBD2 - bl sub_800DC14 -_0800DBD2: - subs r5, 0x1 - adds r4, 0xD0 - cmp r5, 0 - bge _0800DBC8 - ldr r0, _0800DBFC - ldr r0, [r0] - movs r2, 0x1 - negs r2, r2 - movs r1, 0x1F -_0800DBE4: - str r2, [r0, 0x4] - subs r1, 0x1 - adds r0, 0xD0 - cmp r1, 0 - bge _0800DBE4 - bl sub_800ED80 - bl sub_800F094 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0800DBFC: .4byte gUnknown_203B0CC - thumb_func_end sub_800DBBC - - thumb_func_start sub_800DC00 -sub_800DC00: - push {lr} - ldr r0, _0800DC10 - ldr r0, [r0] - cmp r0, 0 - beq _0800DC0C - movs r0, 0x1 -_0800DC0C: - pop {r1} - bx r1 - .align 2, 0 -_0800DC10: .4byte gUnknown_203B0CC - thumb_func_end sub_800DC00 - - thumb_func_start sub_800DC14 -sub_800DC14: - push {r4,r5,lr} - bl sub_800E2C0 - adds r1, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0800DC96 - ldr r2, _0800DC60 - movs r0, 0xD0 - muls r1, r0 - ldr r0, [r2] - adds r5, r0, r1 - ldr r0, [r5, 0x34] - cmp r0, 0x4 - bne _0800DC56 - bl sub_8009BE4 - bl sub_8000728 - cmp r0, 0x1 - bne _0800DC56 - bl sub_8040238 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0x80 - lsls r0, 8 - movs r1, 0 - bl sub_800CD64 -_0800DC56: - ldr r0, [r5, 0x34] - cmp r0, 0x3 - bne _0800DC82 - movs r4, 0 - b _0800DC66 - .align 2, 0 -_0800DC60: .4byte gUnknown_203B0CC -_0800DC64: - adds r4, 0x1 -_0800DC66: - cmp r4, 0x1 - bgt _0800DC90 - adds r0, r4, 0 - bl sub_800F18C - adds r2, r0, 0 - ldr r1, [r2] - ldr r0, [r5, 0x38] - cmp r1, r0 - bne _0800DC64 - ldr r0, [r2, 0x4] - subs r0, 0x1 - str r0, [r2, 0x4] - b _0800DC90 -_0800DC82: - movs r0, 0x1 - bl sub_800F18C - movs r1, 0 - str r1, [r0, 0x4] - subs r1, 0x1 - str r1, [r0] -_0800DC90: - adds r0, r5, 0 - bl sub_800DCA8 -_0800DC96: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_800DC14 - - thumb_func_start sub_800DC9C -sub_800DC9C: - push {lr} - bl sub_800E900 - pop {r1} - bx r1 - thumb_func_end sub_800DC9C - - thumb_func_start sub_800DCA8 -sub_800DCA8: - push {r4,r5,lr} - movs r1, 0x1 - negs r1, r1 - str r1, [r0, 0x4] - adds r1, r0, 0 - adds r1, 0x54 - movs r5, 0 - strb r5, [r1] - adds r4, r0, 0 - adds r4, 0xB8 - ldr r0, [r4] - cmp r0, 0 - beq _0800DCC8 - bl sub_800F204 - str r5, [r4] -_0800DCC8: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_800DCA8 - - thumb_func_start sub_800DCD0 -sub_800DCD0: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x4C] - movs r5, 0x1 - negs r5, r5 - cmp r0, r5 - beq _0800DCFA - ldr r0, [r4, 0x50] - cmp r0, 0 - bne _0800DCFA - bl sub_8000728 - cmp r0, 0x2 - beq _0800DCF6 - ldr r0, [r4, 0x4C] - lsls r0, 16 - lsrs r0, 16 - bl sub_8011988 -_0800DCF6: - str r5, [r4, 0x4C] - str r5, [r4, 0x50] -_0800DCFA: - ldr r0, [r4, 0x50] - cmp r0, 0 - ble _0800DD04 - subs r0, 0x1 - str r0, [r4, 0x50] -_0800DD04: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_800DCD0 - - thumb_func_start sub_800DD0C -sub_800DD0C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r5, r0, 0 - adds r6, r1, 0 - movs r0, 0x58 - adds r0, r5 - mov r8, r0 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 6 - ands r0, r1 - cmp r0, 0 - beq _0800DD2E - movs r0, 0 - b _0800DD30 -_0800DD2E: - lsrs r0, r1, 15 -_0800DD30: - cmp r0, 0 - bne _0800DD64 - adds r0, r5, 0 - bl sub_800DCA8 - ldr r0, [r5, 0x34] - cmp r0, 0x3 - bne _0800DD60 - movs r4, 0 - b _0800DD46 -_0800DD44: - adds r4, 0x1 -_0800DD46: - cmp r4, 0x1 - bgt _0800DD60 - adds r0, r4, 0 - bl sub_800F18C - adds r2, r0, 0 - ldr r1, [r2] - ldr r0, [r5, 0x38] - cmp r1, r0 - bne _0800DD44 - ldr r0, [r2, 0x4] - subs r0, 0x1 - str r0, [r2, 0x4] -_0800DD60: - movs r0, 0 - b _0800DE28 -_0800DD64: - mov r0, r8 - bl sub_80054BC - movs r4, 0 - ldr r0, [r5, 0x8] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - bne _0800DD88 - ldr r0, [r5, 0x14] - cmp r0, 0x5 - bgt _0800DD84 - cmp r0, 0x3 - blt _0800DD84 - subs r4, 0x3 - b _0800DD8A -_0800DD84: - adds r4, 0x3 - b _0800DD8A -_0800DD88: - movs r4, 0x3 -_0800DD8A: - movs r2, 0 - ldr r1, [r5, 0x20] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0800DD9E - ldrh r0, [r5, 0x1E] - lsls r0, 16 - ldrh r2, [r5, 0x1C] - orrs r2, r0 -_0800DD9E: - lsls r0, r2, 16 - asrs r1, r0, 16 - adds r7, r0, 0 - cmp r1, 0x63 - beq _0800DE26 - asrs r0, r2, 16 - adds r2, r0, 0 - cmp r2, 0x63 - beq _0800DE26 - ldr r3, [r5, 0x24] - ldr r0, _0800DE34 - cmp r3, r0 - bne _0800DDCA - movs r1, 0x1A - ldrsh r0, [r5, r1] - movs r3, 0x2 - ldrsh r1, [r6, r3] - subs r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - adds r3, r0, r4 -_0800DDCA: - movs r4, 0x18 - ldrsh r0, [r5, r4] - movs r4, 0 - ldrsh r1, [r6, r4] - subs r0, r1 - asrs r1, r7, 16 - adds r4, r0, r1 - movs r7, 0x1A - ldrsh r0, [r5, r7] - movs r7, 0x2 - ldrsh r1, [r6, r7] - subs r0, r1 - adds r2, r0, r2 - adds r0, r5, 0 - adds r0, 0xCC - ldrh r0, [r0] - ldrh r1, [r5, 0x18] - adds r0, r1 - strh r0, [r5, 0x18] - adds r0, r5, 0 - adds r0, 0xCE - ldrh r0, [r0] - ldrh r7, [r5, 0x1A] - adds r0, r7 - strh r0, [r5, 0x1A] - adds r1, r4, 0 - adds r1, 0x3F - movs r0, 0xB7 - lsls r0, 1 - cmp r1, r0 - bhi _0800DE26 - movs r0, 0x40 - negs r0, r0 - cmp r2, r0 - ble _0800DE26 - cmp r2, 0xDF - bgt _0800DE26 - ldr r0, [r5, 0x3C] - str r0, [sp] - adds r0, r5, 0 - adds r0, 0x28 - str r0, [sp, 0x4] - mov r0, r8 - adds r1, r4, 0 - bl sub_800558C -_0800DE26: - movs r0, 0x1 -_0800DE28: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0800DE34: .4byte 0x0000ffff - thumb_func_end sub_800DD0C - - thumb_func_start sub_800DE38 -sub_800DE38: - push {r4,r5,lr} - adds r5, r0, 0 - adds r0, 0x58 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 6 - ands r0, r1 - cmp r0, 0 - beq _0800DE4E - movs r0, 0 - b _0800DE50 -_0800DE4E: - lsrs r0, r1, 15 -_0800DE50: - cmp r0, 0 - bne _0800DE84 - adds r0, r5, 0 - bl sub_800DCA8 - ldr r0, [r5, 0x34] - cmp r0, 0x3 - bne _0800DE80 - movs r4, 0 - b _0800DE66 -_0800DE64: - adds r4, 0x1 -_0800DE66: - cmp r4, 0x1 - bgt _0800DE80 - adds r0, r4, 0 - bl sub_800F18C - adds r2, r0, 0 - ldr r1, [r2] - ldr r0, [r5, 0x38] - cmp r1, r0 - bne _0800DE64 - ldr r0, [r2, 0x4] - subs r0, 0x1 - str r0, [r2, 0x4] -_0800DE80: - movs r0, 0 - b _0800DE86 -_0800DE84: - movs r0, 0x1 -_0800DE86: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_800DE38 - - thumb_func_start sub_800DE8C -sub_800DE8C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - adds r6, r0, 0 - movs r0, 0x94 - adds r0, r6 - mov r8, r0 - ldr r4, [r0, 0x18] - cmp r4, 0 - beq _0800DEA4 - b _0800E09C -_0800DEA4: - ldr r1, [r0, 0x14] - movs r7, 0x1 - str r7, [sp] - adds r0, r6, 0 - adds r0, 0xAC - str r0, [sp, 0x4] - add r2, sp, 0xC - str r2, [sp, 0x8] - mov r0, r8 - movs r2, 0 - movs r3, 0 - bl sub_8009A7C - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _0800DEC8 - b _0800E030 -_0800DEC8: - add r0, sp, 0xC - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _0800DEE8 - adds r0, r6, 0 - adds r0, 0xB4 - strb r7, [r0] - ldr r0, _0800DF0C - ldr r0, [r0] - ldr r2, _0800DF10 - adds r1, r0, r2 - str r4, [r1] - ldr r1, _0800DF14 - adds r0, r1 - str r4, [r0] -_0800DEE8: - add r0, sp, 0xC - ldrh r0, [r0, 0x2] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - beq _0800DF6C - cmp r0, 0x63 - bne _0800DF1C - ldr r0, _0800DF0C - ldr r0, [r0] - ldr r1, _0800DF10 - adds r2, r0, r1 - ldr r1, _0800DF18 - str r1, [r2] - ldr r2, _0800DF14 - adds r0, r2 - str r4, [r0] - b _0800DF6C - .align 2, 0 -_0800DF0C: .4byte gUnknown_203B0CC -_0800DF10: .4byte 0x00001a08 -_0800DF14: .4byte 0x00001a0c -_0800DF18: .4byte 0x00000c1c -_0800DF1C: - cmp r0, 0 - ble _0800DF50 - ldr r0, _0800DF40 - ldr r4, [r0] - ldr r0, _0800DF44 - adds r5, r4, r0 - ldr r1, _0800DF48 - adds r4, r1 - add r0, sp, 0xC - movs r2, 0x2 - ldrsh r1, [r0, r2] - ldr r0, _0800DF4C - bl __divsi3 - str r0, [r4] - str r0, [r5] - b _0800DF6C - .align 2, 0 -_0800DF40: .4byte gUnknown_203B0CC -_0800DF44: .4byte 0x00001a08 -_0800DF48: .4byte 0x00001a0c -_0800DF4C: .4byte 0x00000c1c -_0800DF50: - ldr r0, _0800DFA4 - ldr r4, [r0] - ldr r0, _0800DFA8 - adds r1, r4, r0 - ldr r0, _0800DFAC - str r0, [r1] - ldr r1, _0800DFB0 - adds r4, r1 - add r1, sp, 0xC - movs r2, 0x2 - ldrsh r1, [r1, r2] - bl __divsi3 - str r0, [r4] -_0800DF6C: - mov r0, r8 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - bne _0800DF78 - b _0800E094 -_0800DF78: - ldr r0, _0800DFA4 - ldr r1, [r0] - ldr r2, _0800DFB4 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, 0 - beq _0800DFB8 - cmp r0, 0x1 - bne _0800DFEA - adds r0, r6, 0 - adds r0, 0xB8 - ldr r0, [r0] - ldr r0, [r0, 0x4] - ldr r1, [r0, 0x10] - movs r0, 0xE0 - lsls r0, 2 - adds r1, r0 - movs r0, 0xE0 - movs r2, 0x10 - bl sub_809971C - b _0800DFEA - .align 2, 0 -_0800DFA4: .4byte gUnknown_203B0CC -_0800DFA8: .4byte 0x00001a08 -_0800DFAC: .4byte 0x00000c1c -_0800DFB0: .4byte 0x00001a0c -_0800DFB4: .4byte 0x00001a04 -_0800DFB8: - ldr r2, _0800E010 - adds r0, r1, r2 - ldr r0, [r0] - movs r1, 0x64 - bl __divsi3 - adds r7, r0, 0 - movs r4, 0 - adds r6, 0xB8 - movs r5, 0xE0 - lsls r5, 2 -_0800DFCE: - adds r0, r4, 0 - adds r0, 0xE0 - ldr r1, [r6] - ldr r1, [r1, 0x4] - ldr r1, [r1, 0x10] - adds r1, r5 - adds r2, r7, 0 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - adds r4, 0x1 - cmp r4, 0xF - ble _0800DFCE -_0800DFEA: - ldr r1, _0800E014 - ldr r2, _0800E018 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _0800E01C - ldr r0, [r0] - ldr r1, _0800E010 - adds r2, r0, r1 - adds r1, 0x4 - adds r0, r1 - ldr r1, [r2] - ldr r0, [r0] - adds r1, r0 - str r1, [r2] - cmp r1, 0 - bge _0800E020 - movs r0, 0 - str r0, [r2] - b _0800E094 - .align 2, 0 -_0800E010: .4byte 0x00001a08 -_0800E014: .4byte gUnknown_2026E4E -_0800E018: .4byte 0x00000a0a -_0800E01C: .4byte gUnknown_203B0CC -_0800E020: - ldr r0, _0800E02C - cmp r1, r0 - ble _0800E094 - str r0, [r2] - b _0800E094 - .align 2, 0 -_0800E02C: .4byte 0x00000c1c -_0800E030: - bl sub_8009BE4 - adds r0, r6, 0 - bl sub_800DCA8 - bl sub_8000728 - cmp r0, 0x1 - bne _0800E058 - bl sub_8040238 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0x80 - lsls r0, 8 - movs r1, 0 - bl sub_800CD64 -_0800E058: - ldr r4, _0800E084 - ldr r0, [r4] - ldr r2, _0800E088 - adds r0, r2 - ldr r0, [r0] - bl sub_800CDA8 - ldr r1, _0800E08C - ldr r0, [r4] - ldr r2, _0800E090 - adds r0, r2 - ldrh r0, [r0] - strh r0, [r1] - movs r0, 0x1 - bl sub_800F18C - str r5, [r0, 0x4] - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - movs r0, 0 - b _0800E0A6 - .align 2, 0 -_0800E084: .4byte gUnknown_203B0CC -_0800E088: .4byte 0x00001a10 -_0800E08C: .4byte gUnknown_2026E4E -_0800E090: .4byte 0x00001a14 -_0800E094: - mov r1, r8 - ldr r0, [r1, 0x14] - adds r0, 0x1 - str r0, [r1, 0x14] -_0800E09C: - mov r2, r8 - ldr r0, [r2, 0x18] - subs r0, 0x1 - str r0, [r2, 0x18] - movs r0, 0x1 -_0800E0A6: - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_800DE8C - - thumb_func_start sub_800E0B4 -sub_800E0B4: - push {r4-r6,lr} - sub sp, 0x8 - adds r5, r0, 0 - ldr r0, [r5, 0xC] - bl sub_800ECA4 - adds r6, r0, 0 - ldr r0, [r6] - str r0, [r5, 0x34] - ldr r0, [r6, 0x4] - str r0, [r5, 0x38] - ldr r0, [r6, 0x10] - str r0, [r5, 0x4C] - ldr r0, [r5, 0x10] - ldr r1, [r6, 0x14] - adds r0, r1 - str r0, [r5, 0x50] - adds r0, r6, 0 - adds r0, 0x21 - ldrb r0, [r0] - adds r1, r5, 0 - adds r1, 0x55 - strb r0, [r1] - adds r0, r6, 0 - adds r0, 0x20 - ldrb r1, [r0] - adds r0, r5, 0 - adds r0, 0x54 - strb r1, [r0] - adds r0, 0x64 - ldr r0, [r0] - bl sub_800E2B8 - adds r2, r0, 0 - str r2, [r5, 0x8] - ldr r3, [r6, 0xC] - str r3, [r5, 0x40] - ldr r1, [r5, 0x14] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0800E114 - movs r0, 0x7 - ands r0, r2 - cmp r0, 0 - bne _0800E114 - adds r0, r3, r1 - str r0, [r5, 0x40] -_0800E114: - ldr r0, [r5, 0x34] - cmp r0, 0x3 - beq _0800E12E - cmp r0, 0x3 - bhi _0800E128 - cmp r0, 0x1 - bcc _0800E184 - movs r0, 0x92 - lsls r0, 2 - b _0800E132 -_0800E128: - cmp r0, 0x4 - beq _0800E140 - b _0800E184 -_0800E12E: - movs r0, 0xDC - lsls r0, 2 -_0800E132: - str r0, [r5, 0x48] - ldr r0, [r6, 0x8] - str r0, [r5, 0x3C] - movs r0, 0x1 - negs r0, r0 - str r0, [r5, 0x44] - b _0800E184 -_0800E140: - movs r0, 0x1 - negs r0, r0 - str r0, [r5, 0x48] - ldr r0, [r6, 0x8] - str r0, [r5, 0x3C] - movs r0, 0xF0 - lsls r0, 4 - str r0, [r5, 0x44] - ldr r4, _0800E194 - ldr r0, [r4] - ldr r2, _0800E198 - adds r1, r0, r2 - movs r2, 0 - str r2, [r1] - ldr r3, _0800E19C - adds r0, r3 - str r2, [r0] - bl sub_800CDC8 - ldr r2, [r4] - ldr r4, _0800E1A0 - adds r1, r2, r4 - str r0, [r1] - ldr r0, _0800E1A4 - ldrh r0, [r0] - ldr r1, _0800E1A8 - adds r2, r1 - strh r0, [r2] - ldrb r0, [r6, 0x18] - cmp r0, 0 - beq _0800E184 - movs r0, 0x5 - bl sub_800CDA8 -_0800E184: - ldr r0, [r5, 0x34] - cmp r0, 0x3 - beq _0800E1C2 - cmp r0, 0x3 - bls _0800E1AC - cmp r0, 0x4 - beq _0800E1E4 - b _0800E200 - .align 2, 0 -_0800E194: .4byte gUnknown_203B0CC -_0800E198: .4byte 0x00001a08 -_0800E19C: .4byte 0x00001a0c -_0800E1A0: .4byte 0x00001a10 -_0800E1A4: .4byte gUnknown_2026E4E -_0800E1A8: .4byte 0x00001a14 -_0800E1AC: - cmp r0, 0x1 - bcc _0800E200 - adds r0, r5, 0 - adds r0, 0x58 - adds r1, r5, 0 - adds r1, 0xB8 - ldr r1, [r1] - ldr r2, [r5, 0x40] - movs r3, 0x92 - lsls r3, 2 - b _0800E1D2 -_0800E1C2: - adds r0, r5, 0 - adds r0, 0x58 - adds r1, r5, 0 - adds r1, 0xB8 - ldr r1, [r1] - ldr r2, [r5, 0x40] - movs r3, 0xDC - lsls r3, 2 -_0800E1D2: - movs r4, 0 - str r4, [sp] - adds r4, r5, 0 - adds r4, 0x55 - ldrb r4, [r4] - str r4, [sp, 0x4] - bl sub_800543C - b _0800E200 -_0800E1E4: - adds r0, r5, 0 - adds r0, 0xB8 - ldr r0, [r0] - adds r1, r5, 0 - adds r1, 0x94 - ldr r0, [r0, 0x4] - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r3} - stm r1!, {r2,r3} - adds r1, r5, 0 - adds r1, 0xB4 - movs r0, 0 - strb r0, [r1] -_0800E200: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_800E0B4 - - thumb_func_start sub_800E208 -sub_800E208: - push {r4-r7,lr} - adds r7, r0, 0 - adds r6, r1, 0 - ldr r0, _0800E220 - ldr r4, [r0] - ldr r0, [r6] - cmp r0, 0 - bne _0800E224 -_0800E218: - movs r0, 0x1 - negs r0, r0 - b _0800E2B0 - .align 2, 0 -_0800E220: .4byte gUnknown_203B0CC -_0800E224: - movs r1, 0 -_0800E226: - ldr r5, [r4, 0x4] - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - bne _0800E2A8 - adds r0, r4, 0 - movs r1, 0xD0 - bl MemoryClear8 - ldr r0, [r6] - bl sub_800ECA4 - adds r1, r0, 0 - ldr r2, [r1] - cmp r2, 0x2 - bne _0800E254 - ldr r0, _0800E2A0 - ldr r0, [r0] - ldr r3, _0800E2A4 - adds r0, r3 - ldr r0, [r0] - cmp r0, 0x1 - bne _0800E218 -_0800E254: - cmp r2, 0x1 - bne _0800E266 - ldr r0, _0800E2A0 - ldr r0, [r0] - ldr r3, _0800E2A4 - adds r0, r3 - ldr r0, [r0] - cmp r0, 0 - bne _0800E218 -_0800E266: - ldr r1, [r1, 0x4] - adds r0, r2, 0 - bl sub_800F1C0 - adds r1, r4, 0 - adds r1, 0xB8 - str r0, [r1] - cmp r0, 0 - beq _0800E218 - str r7, [r4] - bl sub_800E2F0 - str r0, [r4, 0x4] - adds r1, r4, 0 - adds r1, 0xC - adds r0, r6, 0 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldr r0, [r0] - str r0, [r1] - adds r0, r4, 0 - bl sub_800E0B4 - ldr r0, [r4, 0x4] - b _0800E2B0 - .align 2, 0 -_0800E2A0: .4byte gUnknown_203B0CC -_0800E2A4: .4byte 0x00001a04 -_0800E2A8: - adds r1, 0x1 - adds r4, 0xD0 - cmp r1, 0x1F - ble _0800E226 -_0800E2B0: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_800E208 - - thumb_func_start sub_800E2B8 -sub_800E2B8: - ldr r0, [r0, 0x4] - ldr r0, [r0, 0x8] - bx lr - thumb_func_end sub_800E2B8 - - thumb_func_start sub_800E2C0 -sub_800E2C0: - push {lr} - adds r3, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r3, r0 - beq _0800E2E8 - ldr r0, _0800E2DC - ldr r1, [r0] - movs r2, 0 -_0800E2D2: - ldr r0, [r1, 0x4] - cmp r0, r3 - bne _0800E2E0 - adds r0, r2, 0 - b _0800E2EC - .align 2, 0 -_0800E2DC: .4byte gUnknown_203B0CC -_0800E2E0: - adds r2, 0x1 - adds r1, 0xD0 - cmp r2, 0x1F - ble _0800E2D2 -_0800E2E8: - movs r0, 0x1 - negs r0, r0 -_0800E2EC: - pop {r1} - bx r1 - thumb_func_end sub_800E2C0 - - thumb_func_start sub_800E2F0 -sub_800E2F0: - ldr r0, _0800E304 - ldr r1, [r0] - movs r0, 0xD0 - lsls r0, 5 - adds r1, r0 - ldr r0, [r1] - adds r2, r0, 0x1 - str r2, [r1] - bx lr - .align 2, 0 -_0800E304: .4byte gUnknown_203B0CC - thumb_func_end sub_800E2F0 - - thumb_func_start sub_800E308 -sub_800E308: - push {r4-r7,lr} - sub sp, 0x50 - adds r4, r0, 0 - adds r7, r1, 0 - ldrh r0, [r4] - bl sub_800ECB8 - movs r1, 0x6 - ldrsh r0, [r0, r1] - str r0, [sp, 0x28] - ldr r0, [r4, 0x10] - str r0, [sp, 0x2C] - ldr r0, [r4, 0xC] - str r0, [sp, 0x30] - ldr r0, [r4, 0x4] - str r0, [sp, 0x34] - ldr r0, [r4, 0x8] - str r0, [sp, 0x38] - movs r2, 0x2 - ldrsh r0, [r4, r2] - ldrh r1, [r4] - bl sub_800E750 - str r0, [sp, 0x3C] - ldr r0, _0800E3A0 - str r0, [sp, 0x40] - add r1, sp, 0x44 - ldr r0, _0800E3A4 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - add r1, sp, 0x28 - mov r0, sp - movs r2, 0x28 - bl memcpy - movs r0, 0x2 - mov r1, sp - bl sub_800E208 - adds r5, r0, 0 - movs r6, 0x1 - negs r6, r6 - cmp r5, r6 - beq _0800E396 - adds r0, r5, 0 - bl sub_800E2C0 - adds r1, r0, 0 - cmp r1, r6 - beq _0800E396 - ldr r2, _0800E3A8 - movs r0, 0xD0 - muls r1, r0 - ldr r0, [r2] - adds r2, r0, r1 - adds r1, r2, 0 - adds r1, 0xBC - ldr r0, [r4, 0x4] - str r0, [r1] - adds r1, 0x4 - ldr r0, [r7] - str r0, [r1] - ldrh r1, [r4, 0x2] - adds r0, r2, 0 - adds r0, 0xC4 - strh r1, [r0] - adds r1, r2, 0 - adds r1, 0xC8 - ldr r0, [r2, 0x1C] - str r0, [r1] - adds r0, r5, 0 -_0800E396: - add sp, 0x50 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0800E3A0: .4byte 0x0000ffff -_0800E3A4: .4byte gUnknown_80B9C60 -_0800E3A8: .4byte gUnknown_203B0CC - thumb_func_end sub_800E308 - - thumb_func_start sub_800E3AC -sub_800E3AC: - push {r4-r6,lr} - adds r4, r1, 0 - adds r6, r2, 0 - bl sub_800E2C0 - adds r1, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0800E43C - ldr r2, _0800E444 - movs r0, 0xD0 - muls r1, r0 - ldr r0, [r2] - adds r5, r0, r1 - ldr r0, [r4] - str r0, [r5, 0x18] - adds r0, r5, 0 - adds r0, 0xC0 - movs r2, 0 - ldrsh r1, [r0, r2] - subs r0, 0x4 - movs r3, 0 - ldrsh r0, [r0, r3] - subs r2, r1, r0 - cmp r2, 0 - bge _0800E3E4 - negs r2, r2 -_0800E3E4: - adds r0, r5, 0 - adds r0, 0xC2 - movs r3, 0 - ldrsh r1, [r0, r3] - subs r0, 0x4 - movs r3, 0 - ldrsh r0, [r0, r3] - subs r1, r0 - cmp r1, 0 - bge _0800E3FA - negs r1, r1 -_0800E3FA: - cmp r1, r2 - bge _0800E400 - adds r1, r2, 0 -_0800E400: - cmp r1, 0 - bge _0800E406 - adds r1, 0x3 -_0800E406: - asrs r4, r1, 2 - subs r1, r4, 0x1 - ldrh r0, [r5, 0x1E] - adds r0, 0x9 - strh r0, [r5, 0x1E] - movs r2, 0x1C - ldrsh r0, [r5, r2] - muls r0, r1 - strh r0, [r5, 0x1C] - movs r3, 0x1E - ldrsh r0, [r5, r3] - muls r0, r1 - strh r0, [r5, 0x1E] - movs r1, 0x1C - ldrsh r0, [r5, r1] - adds r1, r4, 0 - bl __divsi3 - strh r0, [r5, 0x1C] - movs r2, 0x1E - ldrsh r0, [r5, r2] - adds r1, r4, 0 - bl __divsi3 - subs r0, 0x9 - strh r0, [r5, 0x1E] - str r6, [r5, 0x24] -_0800E43C: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0800E444: .4byte gUnknown_203B0CC - thumb_func_end sub_800E3AC - - thumb_func_start sub_800E448 -sub_800E448: - push {r4,lr} - sub sp, 0x50 - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - bl sub_800ECE4 - lsls r0, 16 - asrs r0, 16 - str r0, [sp, 0x28] - movs r2, 0 - str r2, [sp, 0x2C] - movs r1, 0x1 - negs r1, r1 - str r1, [sp, 0x30] - ldr r0, [r4] - str r0, [sp, 0x34] - str r2, [sp, 0x38] - str r1, [sp, 0x3C] - ldr r0, _0800E494 - str r0, [sp, 0x40] - add r1, sp, 0x44 - ldr r0, _0800E498 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - add r1, sp, 0x28 - mov r0, sp - movs r2, 0x28 - bl memcpy - movs r0, 0x3 - mov r1, sp - bl sub_800E208 - add sp, 0x50 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0800E494: .4byte 0x0000ffff -_0800E498: .4byte gUnknown_80B9C60 - thumb_func_end sub_800E448 - - thumb_func_start sub_800E49C -sub_800E49C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x50 - adds r7, r1, 0 - mov r8, r2 - lsls r0, 24 - lsrs r0, 24 - lsls r3, 24 - lsrs r6, r3, 24 - cmp r6, 0 - beq _0800E4BA - bl sub_800ECF8 - b _0800E4BE -_0800E4BA: - bl sub_800ED0C -_0800E4BE: - lsls r0, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_800E700 - adds r5, r0, 0 - str r4, [sp, 0x28] - movs r1, 0 - str r1, [sp, 0x2C] - movs r4, 0x1 - negs r4, r4 - str r4, [sp, 0x30] - ldr r0, [r7] - str r0, [sp, 0x34] - str r1, [sp, 0x38] - str r4, [sp, 0x3C] - str r1, [sp, 0x40] - add r1, sp, 0x44 - ldr r0, _0800E508 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - add r1, sp, 0x28 - mov r0, sp - movs r2, 0x28 - bl memcpy - ldr r0, [sp, 0x68] - str r0, [sp, 0x18] - cmp r6, 0 - beq _0800E50C - cmp r5, r4 - beq _0800E516 - str r5, [sp, 0x14] - lsls r0, r5, 2 - add r0, r8 - ldr r0, [r0] - b _0800E514 - .align 2, 0 -_0800E508: .4byte gUnknown_80B9C60 -_0800E50C: - movs r0, 0x3 - str r0, [sp, 0x14] - mov r1, r8 - ldr r0, [r1, 0xC] -_0800E514: - str r0, [sp, 0x10] -_0800E516: - movs r0, 0x4 - mov r1, sp - bl sub_800E208 - add sp, 0x50 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_800E49C - - thumb_func_start sub_800E52C -sub_800E52C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1B0 - adds r7, r0, 0 - ldrh r0, [r7] - cmp r0, 0x52 - bne _0800E628 - mov r1, sp - ldr r0, _0800E618 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r4,r5} - stm r1!, {r4,r5} - movs r0, 0 - mov r10, r0 - mov r9, r0 - mov r8, sp - add r6, sp, 0x20 - adds r4, r6, 0 -_0800E55C: - ldrh r0, [r7] - bl sub_800ECB8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - str r0, [r4] - ldr r0, [r7, 0x10] - str r0, [r4, 0x4] - ldr r0, [r7, 0xC] - str r0, [r4, 0x8] - ldr r0, [r7, 0x4] - str r0, [r4, 0xC] - ldrh r0, [r4, 0xE] - adds r0, 0x40 - strh r0, [r4, 0xE] - ldr r0, [r7, 0x8] - str r0, [r4, 0x10] - mov r2, r8 - ldrh r0, [r2] - ldrh r3, [r4, 0x10] - adds r0, r3 - strh r0, [r4, 0x10] - ldrh r0, [r4, 0x12] - subs r0, 0x40 - ldrh r5, [r2, 0x2] - adds r0, r5 - strh r0, [r4, 0x12] - movs r1, 0x2 - ldrsh r0, [r7, r1] - ldrh r1, [r7] - bl sub_800E750 - str r0, [r4, 0x14] - ldr r0, _0800E61C - str r0, [r4, 0x18] - adds r1, r6, 0 - adds r1, 0x1C - ldr r0, _0800E620 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - movs r0, 0x1 - adds r1, r6, 0 - bl sub_800E208 - adds r5, r0, 0 - bl sub_800E2C0 - adds r1, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0800E5D4 - ldr r2, _0800E624 - movs r0, 0xD0 - muls r1, r0 - ldr r0, [r2] - adds r0, r1 - adds r0, 0xCC - movs r1, 0x6 - strh r1, [r0] -_0800E5D4: - mov r0, r9 - cmp r0, 0 - bne _0800E5DC - mov r10, r5 -_0800E5DC: - movs r1, 0x4 - add r8, r1 - adds r4, 0x28 - adds r6, 0x28 - movs r2, 0x1 - add r9, r2 - mov r3, r9 - cmp r3, 0x7 - ble _0800E55C - movs r4, 0x6 - mov r9, r4 -_0800E5F2: - ldrh r0, [r7] - bl sub_800ECB8 - movs r5, 0x2 - ldrsh r0, [r0, r5] - bl sub_800ECA4 - ldr r0, [r0, 0x4] - bl sub_800F15C - movs r0, 0x1 - negs r0, r0 - add r9, r0 - mov r1, r9 - cmp r1, 0 - bge _0800E5F2 - mov r0, r10 - b _0800E67E - .align 2, 0 -_0800E618: .4byte gUnknown_80B9C7C -_0800E61C: .4byte 0x0000ffff -_0800E620: .4byte gUnknown_80B9C60 -_0800E624: .4byte gUnknown_203B0CC -_0800E628: - add r6, sp, 0x160 - add r5, sp, 0x188 - ldrh r0, [r7] - bl sub_800ECB8 - movs r2, 0x2 - ldrsh r0, [r0, r2] - str r0, [r5] - add r1, sp, 0x18C - ldr r0, [r7, 0x10] - str r0, [r1] - add r1, sp, 0x190 - ldr r0, [r7, 0xC] - str r0, [r1] - add r1, sp, 0x194 - ldr r0, [r7, 0x4] - str r0, [r1] - add r1, sp, 0x198 - ldr r0, [r7, 0x8] - str r0, [r1] - add r4, sp, 0x19C - movs r3, 0x2 - ldrsh r0, [r7, r3] - ldrh r1, [r7] - bl sub_800E750 - str r0, [r4] - add r1, sp, 0x1A0 - ldr r0, _0800E690 - str r0, [r1] - add r1, sp, 0x1A4 - ldr r0, _0800E694 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x28 - bl memcpy - movs r0, 0x1 - adds r1, r6, 0 - bl sub_800E208 -_0800E67E: - add sp, 0x1B0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0800E690: .4byte 0x0000ffff -_0800E694: .4byte gUnknown_80B9C60 - thumb_func_end sub_800E52C - - thumb_func_start sub_800E698 -sub_800E698: - push {r4,r5,lr} - adds r4, r1, 0 - adds r5, r2, 0 - bl sub_800E2C0 - adds r1, r0, 0 - movs r3, 0x1 - negs r3, r3 - cmp r1, r3 - beq _0800E6D2 - ldr r2, _0800E6C8 - movs r0, 0xD0 - muls r1, r0 - ldr r0, [r2] - adds r1, r0, r1 - ldr r0, [r4] - str r0, [r1, 0x18] - ldr r0, [r1, 0x20] - cmp r0, r3 - beq _0800E6CC - ldr r0, [r5] - str r0, [r1, 0x1C] - b _0800E6D2 - .align 2, 0 -_0800E6C8: .4byte gUnknown_203B0CC -_0800E6CC: - movs r0, 0 - strh r0, [r1, 0x1C] - strh r0, [r1, 0x1E] -_0800E6D2: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_800E698 - - thumb_func_start sub_800E6D8 -sub_800E6D8: - push {lr} - bl sub_800E2C0 - adds r1, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0800E6EC - adds r0, r1, 0 - b _0800E6F8 -_0800E6EC: - ldr r2, _0800E6FC - movs r0, 0xD0 - muls r1, r0 - ldr r0, [r2] - adds r0, r1 - ldr r0, [r0, 0x20] -_0800E6F8: - pop {r1} - bx r1 - .align 2, 0 -_0800E6FC: .4byte gUnknown_203B0CC - thumb_func_end sub_800E6D8 - - thumb_func_start sub_800E700 -sub_800E700: - push {lr} - lsls r0, 16 - asrs r0, 16 - bl sub_800E900 - pop {r1} - bx r1 - thumb_func_end sub_800E700 - - thumb_func_start sub_800E710 -sub_800E710: - push {r4-r6,lr} - lsls r0, 16 - asrs r5, r0, 16 - lsls r1, 16 - lsrs r1, 16 - adds r0, r1, 0 - bl sub_800ECB8 - adds r4, r0, 0 - ldr r0, [r4, 0x20] - bl sub_800ECD0 - adds r1, r0, 0 - movs r2, 0 - ldr r0, [r4, 0x1C] - cmp r2, r0 - bge _0800E748 - adds r3, r0, 0 -_0800E734: - movs r6, 0 - ldrsh r0, [r1, r6] - cmp r0, r5 - bne _0800E740 - ldr r0, [r1, 0x4] - b _0800E74A -_0800E740: - adds r2, 0x1 - adds r1, 0xC - cmp r2, r3 - blt _0800E734 -_0800E748: - ldr r0, [r4, 0x14] -_0800E74A: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_800E710 - - thumb_func_start sub_800E750 -sub_800E750: - push {r4-r6,lr} - lsls r0, 16 - asrs r5, r0, 16 - lsls r1, 16 - lsrs r1, 16 - adds r0, r1, 0 - bl sub_800ECB8 - adds r4, r0, 0 - ldr r0, [r4, 0x20] - bl sub_800ECD0 - adds r1, r0, 0 - movs r2, 0 - ldr r0, [r4, 0x1C] - cmp r2, r0 - bge _0800E788 - adds r3, r0, 0 -_0800E774: - movs r6, 0 - ldrsh r0, [r1, r6] - cmp r0, r5 - bne _0800E780 - ldr r0, [r1, 0x4] - b _0800E78A -_0800E780: - adds r2, 0x1 - adds r1, 0xC - cmp r2, r3 - blt _0800E774 -_0800E788: - ldr r0, [r4, 0x14] -_0800E78A: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_800E750 - - thumb_func_start sub_800E790 -sub_800E790: - push {r4-r6,lr} - lsls r0, 16 - asrs r5, r0, 16 - lsls r1, 16 - lsrs r1, 16 - adds r0, r1, 0 - bl sub_800ECB8 - adds r4, r0, 0 - ldr r0, [r4, 0x20] - bl sub_800ECD0 - adds r1, r0, 0 - movs r2, 0 - ldr r0, [r4, 0x1C] - cmp r2, r0 - bge _0800E7C8 - adds r3, r0, 0 -_0800E7B4: - movs r6, 0 - ldrsh r0, [r1, r6] - cmp r0, r5 - bne _0800E7C0 - ldr r0, [r1, 0x8] - b _0800E7CA -_0800E7C0: - adds r2, 0x1 - adds r1, 0xC - cmp r2, r3 - blt _0800E7B4 -_0800E7C8: - ldr r0, [r4, 0x18] -_0800E7CA: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_800E790 - - thumb_func_start sub_800E7D0 -sub_800E7D0: - push {r4-r6,lr} - sub sp, 0x10 - adds r4, r0, 0 - movs r6, 0 - ldrh r0, [r4] - bl sub_800ECB8 - movs r1, 0 - ldrsh r0, [r0, r1] - str r0, [sp] - ldrh r0, [r4] - bl sub_800ECB8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - str r0, [sp, 0x4] - ldrh r0, [r4] - bl sub_800ECB8 - movs r1, 0x4 - ldrsh r0, [r0, r1] - str r0, [sp, 0x8] - ldrh r0, [r4] - bl sub_800ECB8 - movs r1, 0x6 - ldrsh r0, [r0, r1] - str r0, [sp, 0xC] - movs r5, 0 - mov r4, sp - b _0800E812 -_0800E80E: - adds r4, 0x4 - adds r5, 0x1 -_0800E812: - cmp r5, 0x3 - bgt _0800E82C - ldr r0, [r4] - bl sub_800ECA4 - movs r1, 0 - ldr r0, [r0] - cmp r0, 0x4 - bne _0800E826 - movs r1, 0x1 -_0800E826: - adds r6, r1, 0 - cmp r6, 0 - beq _0800E80E -_0800E82C: - adds r0, r6, 0 - add sp, 0x10 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_800E7D0 - - thumb_func_start sub_800E838 -sub_800E838: - push {r4,r5,lr} - sub sp, 0x10 - adds r4, r0, 0 - adds r5, r1, 0 - ldrh r0, [r4] - bl sub_800ECB8 - movs r1, 0 - ldrsh r0, [r0, r1] - str r0, [sp] - ldrh r0, [r4] - bl sub_800ECB8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - str r0, [sp, 0x4] - ldrh r0, [r4] - bl sub_800ECB8 - movs r1, 0x4 - ldrsh r0, [r0, r1] - str r0, [sp, 0x8] - ldrh r0, [r4] - bl sub_800ECB8 - movs r1, 0x6 - ldrsh r0, [r0, r1] - str r0, [sp, 0xC] - lsls r5, 2 - mov r1, sp - adds r0, r1, r5 - ldr r0, [r0] - bl sub_800ECA4 - movs r1, 0 - ldr r0, [r0] - cmp r0, 0x4 - bne _0800E886 - movs r1, 0x1 -_0800E886: - adds r0, r1, 0 - add sp, 0x10 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_800E838 - - thumb_func_start sub_800E890 -sub_800E890: - push {r4,lr} - adds r4, r0, 0 - ldr r0, [r4] - bl sub_800E900 - str r0, [r4, 0x14] - movs r0, 0x7 - adds r1, r4, 0 - bl sub_800E208 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_800E890 - - thumb_func_start sub_800E8AC -sub_800E8AC: - push {r4-r7,lr} - adds r4, r1, 0 - adds r5, r2, 0 - adds r6, r3, 0 - ldr r7, [sp, 0x14] - bl sub_800E2C0 - adds r1, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0800E8F2 - ldr r2, _0800E8F8 - movs r0, 0xD0 - muls r1, r0 - ldr r0, [r2] - adds r1, r0, r1 - cmp r4, 0 - beq _0800E8D6 - ldr r0, [r4] - str r0, [r1, 0x18] -_0800E8D6: - cmp r5, 0 - beq _0800E8DE - ldr r0, [r5] - str r0, [r1, 0x1C] -_0800E8DE: - ldr r0, _0800E8FC - cmp r6, r0 - beq _0800E8E6 - str r6, [r1, 0x24] -_0800E8E6: - cmp r7, 0 - beq _0800E8F2 - adds r1, 0x28 - adds r0, r7, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} -_0800E8F2: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800E8F8: .4byte gUnknown_203B0CC -_0800E8FC: .4byte 0x0000ffff - thumb_func_end sub_800E8AC - - thumb_func_start sub_800E900 -sub_800E900: - push {lr} - bl sub_800ECA4 - ldr r0, [r0, 0x1C] - pop {r1} - bx r1 - thumb_func_end sub_800E900 - - thumb_func_start sub_800E90C -sub_800E90C: - push {r4-r7,lr} - adds r5, r0, 0 - movs r7, 0 - ldr r0, _0800E938 - ldr r4, [r0] - movs r6, 0x1F -_0800E918: - ldr r1, [r4, 0x4] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0800E960 - ldr r0, [r4, 0x10] - cmp r0, 0 - bgt _0800E94A - ldr r0, [r4, 0x34] - cmp r0, 0x4 - bne _0800E93C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_800DE8C - b _0800E944 - .align 2, 0 -_0800E938: .4byte gUnknown_203B0CC -_0800E93C: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_800DD0C -_0800E944: - ldr r0, [r4, 0x10] - cmp r0, 0 - ble _0800E94E -_0800E94A: - subs r0, 0x1 - str r0, [r4, 0x10] -_0800E94E: - adds r0, r4, 0 - bl sub_800DCD0 - adds r0, r4, 0 - adds r0, 0x54 - ldrb r0, [r0] - cmp r0, 0 - bne _0800E960 - movs r7, 0x1 -_0800E960: - subs r6, 0x1 - adds r4, 0xD0 - cmp r6, 0 - bge _0800E918 - adds r0, r7, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_800E90C - - thumb_func_start sub_800E970 -sub_800E970: - push {r4,r5,lr} - ldr r0, _0800E9A4 - ldr r4, [r0] - movs r5, 0x1F -_0800E978: - ldr r1, [r4, 0x4] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0800E994 - ldr r0, [r4, 0x10] - cmp r0, 0 - bgt _0800E994 - ldr r0, [r4, 0x34] - cmp r0, 0x4 - beq _0800E994 - adds r0, r4, 0 - bl sub_800DE38 -_0800E994: - subs r5, 0x1 - adds r4, 0xD0 - cmp r5, 0 - bge _0800E978 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0800E9A4: .4byte gUnknown_203B0CC - thumb_func_end sub_800E970 - - thumb_func_start sub_800E9A8 -sub_800E9A8: - push {lr} - adds r3, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r3, r0 - beq _0800E9DC - ldr r0, _0800E9D0 - ldr r1, [r0] - movs r2, 0 -_0800E9BA: - ldr r0, [r1, 0x4] - cmp r0, r3 - bne _0800E9D4 - adds r0, r1, 0 - adds r0, 0x54 - ldrb r0, [r0] - cmp r0, 0 - bne _0800E9DC - movs r0, 0x1 - b _0800E9DE - .align 2, 0 -_0800E9D0: .4byte gUnknown_203B0CC -_0800E9D4: - adds r2, 0x1 - adds r1, 0xD0 - cmp r2, 0x1F - ble _0800E9BA -_0800E9DC: - movs r0, 0 -_0800E9DE: - pop {r1} - bx r1 - thumb_func_end sub_800E9A8 - - thumb_func_start sub_800E9E4 -sub_800E9E4: - push {lr} - bl sub_800E2C0 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _0800E9F6 - movs r0, 0 - b _0800E9F8 -_0800E9F6: - movs r0, 0x1 -_0800E9F8: - pop {r1} - bx r1 - thumb_func_end sub_800E9E4 - - thumb_func_start sub_800E9FC -sub_800E9FC: - push {r4,lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, _0800EA38 - ldr r1, [r0] - movs r2, 0 - movs r4, 0x1 - negs r4, r4 -_0800EA0C: - ldr r0, [r1, 0x4] - cmp r0, r4 - beq _0800EA20 - cmp r3, 0 - bne _0800EA3C - adds r0, r1, 0 - adds r0, 0x54 - ldrb r0, [r0] - cmp r0, 0 - beq _0800EA3C -_0800EA20: - adds r2, 0x1 - adds r1, 0xD0 - cmp r2, 0x1F - ble _0800EA0C - bl sub_800EC74 - lsls r0, 24 - cmp r0, 0 - bne _0800EA3C - movs r0, 0 - b _0800EA3E - .align 2, 0 -_0800EA38: .4byte gUnknown_203B0CC -_0800EA3C: - movs r0, 0x1 -_0800EA3E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_800E9FC - - thumb_func_start sub_800EA44 -sub_800EA44: - push {r4-r6,lr} - lsls r0, 16 - asrs r5, r0, 16 - lsls r1, 16 - lsrs r1, 16 - adds r0, r1, 0 - bl sub_800ECB8 - adds r4, r0, 0 - ldr r0, [r4, 0x20] - bl sub_800ECD0 - adds r1, r0, 0 - movs r2, 0 - ldr r0, [r4, 0x1C] - cmp r2, r0 - bge _0800EA7C - adds r3, r0, 0 -_0800EA68: - movs r6, 0 - ldrsh r0, [r1, r6] - cmp r0, r5 - bne _0800EA74 - ldrb r0, [r1, 0x2] - b _0800EA7E -_0800EA74: - adds r2, 0x1 - adds r1, 0xC - cmp r2, r3 - blt _0800EA68 -_0800EA7C: - ldrb r0, [r4, 0x10] -_0800EA7E: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_800EA44 - - thumb_func_start sub_800EA84 -sub_800EA84: - push {r4,lr} - sub sp, 0x50 - adds r4, r0, 0 - ldrh r0, [r4] - bl sub_800ECB8 - movs r1, 0 - ldrsh r0, [r0, r1] - str r0, [sp, 0x28] - ldr r0, [r4, 0x10] - str r0, [sp, 0x2C] - ldr r0, [r4, 0xC] - str r0, [sp, 0x30] - ldr r0, [r4, 0x4] - str r0, [sp, 0x34] - ldr r0, [r4, 0x8] - str r0, [sp, 0x38] - ldrh r0, [r4] - bl sub_800ECB8 - movs r2, 0 - ldrsh r0, [r0, r2] - bl sub_800EBBC - str r0, [sp, 0x3C] - ldr r0, _0800EADC - str r0, [sp, 0x40] - add r1, sp, 0x44 - ldr r0, _0800EAE0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - add r1, sp, 0x28 - mov r0, sp - movs r2, 0x28 - bl memcpy - movs r0, 0x5 - mov r1, sp - bl sub_800E208 - add sp, 0x50 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0800EADC: .4byte 0x0000ffff -_0800EAE0: .4byte gUnknown_80B9C60 - thumb_func_end sub_800EA84 - - thumb_func_start sub_800EAE4 -sub_800EAE4: - push {r4,r5,lr} - adds r4, r1, 0 - adds r5, r2, 0 - bl sub_800E2C0 - adds r1, r0, 0 - movs r3, 0x1 - negs r3, r3 - cmp r1, r3 - beq _0800EB1E - ldr r2, _0800EB14 - movs r0, 0xD0 - muls r1, r0 - ldr r0, [r2] - adds r1, r0, r1 - ldr r0, [r4] - str r0, [r1, 0x18] - ldr r0, [r1, 0x20] - cmp r0, r3 - beq _0800EB18 - ldr r0, [r5] - str r0, [r1, 0x1C] - b _0800EB1E - .align 2, 0 -_0800EB14: .4byte gUnknown_203B0CC -_0800EB18: - movs r0, 0 - strh r0, [r1, 0x1C] - strh r0, [r1, 0x1E] -_0800EB1E: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_800EAE4 - - thumb_func_start sub_800EB24 -sub_800EB24: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x20 - adds r6, r1, 0 - mov r8, r2 - adds r5, r3, 0 - ldr r4, [sp, 0x38] - bl sub_800E2C0 - adds r1, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0800EBB0 - ldr r2, _0800EB8C - movs r0, 0xD0 - muls r1, r0 - ldr r0, [r2] - adds r2, r0, r1 - adds r0, r2, 0 - adds r0, 0xCC - ldr r0, [r0] - cmp r0, 0 - bne _0800EB5A - ldr r0, [r6] - str r0, [r2, 0x18] -_0800EB5A: - ldr r0, [r2] - cmp r0, 0x6 - beq _0800EB94 - ldr r0, [r2, 0x8] - movs r1, 0x7 - mov r12, r1 - ands r0, r1 - cmp r0, 0 - bne _0800EB94 - mov r1, sp - ldr r0, _0800EB90 - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6} - stm r1!, {r3,r6} - mov r7, r12 - ands r4, r7 - lsls r0, r4, 2 - add r0, sp - ldr r0, [r0] - adds r0, r5, r0 - b _0800EB96 - .align 2, 0 -_0800EB8C: .4byte gUnknown_203B0CC -_0800EB90: .4byte gUnknown_80B9C9C -_0800EB94: - adds r0, r5, 0x1 -_0800EB96: - str r0, [r2, 0x24] - ldr r1, [r2, 0x20] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0800EBAA - mov r1, r8 - ldr r0, [r1] - str r0, [r2, 0x1C] - b _0800EBB0 -_0800EBAA: - movs r0, 0 - strh r0, [r2, 0x1C] - strh r0, [r2, 0x1E] -_0800EBB0: - add sp, 0x20 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_800EB24 - - thumb_func_start sub_800EBBC -sub_800EBBC: - push {lr} - bl sub_800ECA4 - ldr r0, [r0, 0x1C] - pop {r1} - bx r1 - thumb_func_end sub_800EBBC - - thumb_func_start sub_800EBC8 -sub_800EBC8: - push {r4,lr} - sub sp, 0x50 - adds r4, r0, 0 - ldrh r0, [r4] - bl sub_800ECB8 - movs r1, 0x4 - ldrsh r0, [r0, r1] - str r0, [sp, 0x28] - ldr r0, [r4, 0x10] - str r0, [sp, 0x2C] - ldr r0, [r4, 0xC] - str r0, [sp, 0x30] - ldr r0, [r4, 0x4] - str r0, [sp, 0x34] - ldr r0, [r4, 0x8] - str r0, [sp, 0x38] - ldrh r0, [r4] - bl sub_800ECB8 - movs r2, 0x4 - ldrsh r0, [r0, r2] - bl sub_800EC68 - str r0, [sp, 0x3C] - ldr r0, _0800EC20 - str r0, [sp, 0x40] - add r1, sp, 0x44 - ldr r0, _0800EC24 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - add r1, sp, 0x28 - mov r0, sp - movs r2, 0x28 - bl memcpy - movs r0, 0x6 - mov r1, sp - bl sub_800E208 - add sp, 0x50 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0800EC20: .4byte 0x0000ffff -_0800EC24: .4byte gUnknown_80B9C60 - thumb_func_end sub_800EBC8 - - thumb_func_start sub_800EC28 -sub_800EC28: - push {r4,r5,lr} - adds r4, r1, 0 - adds r5, r2, 0 - bl sub_800E2C0 - adds r1, r0, 0 - movs r3, 0x1 - negs r3, r3 - cmp r1, r3 - beq _0800EC62 - ldr r2, _0800EC58 - movs r0, 0xD0 - muls r1, r0 - ldr r0, [r2] - adds r1, r0, r1 - ldr r0, [r4] - str r0, [r1, 0x18] - ldr r0, [r1, 0x20] - cmp r0, r3 - beq _0800EC5C - ldr r0, [r5] - str r0, [r1, 0x1C] - b _0800EC62 - .align 2, 0 -_0800EC58: .4byte gUnknown_203B0CC -_0800EC5C: - movs r0, 0 - strh r0, [r1, 0x1C] - strh r0, [r1, 0x1E] -_0800EC62: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_800EC28 - - thumb_func_start sub_800EC68 -sub_800EC68: - push {lr} - bl sub_800ECA4 - ldr r0, [r0, 0x1C] - pop {r1} - bx r1 - thumb_func_end sub_800EC68 - - thumb_func_start sub_800EC74 -sub_800EC74: - push {lr} - movs r0, 0x1 - bl sub_800F19C - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_800EC74 - - thumb_func_start sub_800EC84 -sub_800EC84: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800ECB8 - ldrb r0, [r0, 0x8] - pop {r1} - bx r1 - thumb_func_end sub_800EC84 - - thumb_func_start sub_800EC94 -sub_800EC94: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800ECB8 - ldrb r0, [r0, 0x9] - pop {r1} - bx r1 - thumb_func_end sub_800EC94 - - thumb_func_start sub_800ECA4 -sub_800ECA4: - adds r1, r0, 0 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _0800ECB4 - adds r0, r1 - bx lr - .align 2, 0 -_0800ECB4: .4byte gUnknown_80B9CC4 - thumb_func_end sub_800ECA4 - - thumb_func_start sub_800ECB8 -sub_800ECB8: - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _0800ECCC - adds r0, r1 - bx lr - .align 2, 0 -_0800ECCC: .4byte gUnknown_80BDBC4 - thumb_func_end sub_800ECB8 - - thumb_func_start sub_800ECD0 -sub_800ECD0: - adds r1, r0, 0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _0800ECE0 - adds r0, r1 - bx lr - .align 2, 0 -_0800ECE0: .4byte gUnknown_80C183C - thumb_func_end sub_800ECD0 - - thumb_func_start sub_800ECE4 -sub_800ECE4: - lsls r0, 24 - ldr r1, _0800ECF4 - lsrs r0, 23 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_0800ECF4: .4byte gUnknown_80CE73C - thumb_func_end sub_800ECE4 - - thumb_func_start sub_800ECF8 -sub_800ECF8: - lsls r0, 24 - ldr r1, _0800ED08 - lsrs r0, 22 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_0800ED08: .4byte gUnknown_80CE37C - thumb_func_end sub_800ECF8 - - thumb_func_start sub_800ED0C -sub_800ED0C: - lsls r0, 24 - ldr r1, _0800ED1C - lsrs r0, 22 - adds r0, r1 - movs r1, 0x2 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_0800ED1C: .4byte gUnknown_80CE37C - thumb_func_end sub_800ED0C - - thumb_func_start sub_800ED20 -sub_800ED20: - lsls r0, 16 - lsrs r0, 16 - ldr r2, _0800ED34 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r2, 0xC - adds r1, r2 - ldr r0, [r1] - bx lr - .align 2, 0 -_0800ED34: .4byte gUnknown_80BDBC4 - thumb_func_end sub_800ED20 - - thumb_func_start sub_800ED38 -sub_800ED38: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _0800ED60 - ldr r0, [r4] - cmp r0, 0 - bne _0800ED54 - movs r0, 0x4C - movs r1, 0xB - bl MemoryAlloc - str r0, [r4] - movs r1, 0x4C - bl MemoryClear8 -_0800ED54: - ldr r0, [r4] - str r5, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0800ED60: .4byte gUnknown_203B0D0 - thumb_func_end sub_800ED38 - - thumb_func_start sub_800ED64 -sub_800ED64: - push {r4,lr} - ldr r4, _0800ED7C - ldr r0, [r4] - cmp r0, 0 - beq _0800ED76 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0800ED76: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800ED7C: .4byte gUnknown_203B0D0 - thumb_func_end sub_800ED64 - - thumb_func_start sub_800ED80 -sub_800ED80: - push {r4,lr} - ldr r2, _0800EDAC - ldr r1, [r2] - movs r0, 0 - str r0, [r1] - adds r4, r2, 0 - movs r3, 0 - movs r2, 0x4 - movs r1, 0x1 -_0800ED92: - ldr r0, [r4] - adds r0, r2 - str r3, [r0] - str r3, [r0, 0x4] - str r3, [r0, 0x8] - adds r2, 0x24 - subs r1, 0x1 - cmp r1, 0 - bge _0800ED92 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800EDAC: .4byte gUnknown_203B0D0 - thumb_func_end sub_800ED80 - - thumb_func_start sub_800EDB0 -sub_800EDB0: - push {r4,r5,lr} - adds r4, r0, 0 - movs r3, 0 - ldr r5, _0800EDDC - movs r2, 0 -_0800EDBA: - ldr r1, [r5] - adds r0, r1, 0x4 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0 - bne _0800EDE0 - adds r1, r2 - adds r1, 0x4 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - movs r0, 0x1 - b _0800EDEA - .align 2, 0 -_0800EDDC: .4byte gUnknown_203B0D0 -_0800EDE0: - adds r2, 0x24 - adds r3, 0x1 - cmp r3, 0x1 - ble _0800EDBA - movs r0, 0 -_0800EDEA: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_800EDB0 - - thumb_func_start sub_800EDF0 -sub_800EDF0: - push {r4,lr} - sub sp, 0x24 - adds r4, r1, 0 - cmp r0, 0 - beq _0800EE00 - cmp r0, 0x1 - beq _0800EE1A - b _0800EE44 -_0800EE00: - movs r0, 0x3 - str r0, [sp] - movs r0, 0xE - str r0, [sp, 0xC] - movs r1, 0x1 - negs r1, r1 - str r1, [sp, 0x10] - movs r0, 0xDC - lsls r0, 2 - str r0, [sp, 0x18] - movs r0, 0x1F - str r0, [sp, 0x1C] - b _0800EE40 -_0800EE1A: - movs r0, 0x4 - str r0, [sp] - movs r0, 0xE - str r0, [sp, 0xC] - movs r0, 0xF0 - lsls r0, 4 - str r0, [sp, 0x10] - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0x18] - str r0, [sp, 0x1C] - bl sub_8000728 - movs r2, 0x2 - eors r0, r2 - negs r1, r0 - orrs r1, r0 - asrs r1, 31 - ands r1, r2 -_0800EE40: - str r1, [sp, 0x14] - str r4, [sp, 0x4] -_0800EE44: - ldr r0, [r4, 0x4] - str r0, [sp, 0x8] - movs r0, 0 - str r0, [sp, 0x20] - mov r0, sp - bl sub_800EDB0 - add sp, 0x24 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_800EDF0 - - thumb_func_start sub_800EE5C -sub_800EE5C: - push {r4-r6,lr} - adds r4, r0, 0 - bl sub_800ECA4 - adds r6, r0, 0 - cmp r4, 0 - beq _0800EEC2 - ldr r2, [r6] - subs r0, r2, 0x1 - cmp r0, 0x1 - bls _0800EEC2 - ldr r1, [r6, 0x4] - adds r0, r2, 0 - bl sub_800F1C0 - adds r5, r0, 0 - cmp r5, 0 - beq _0800EEC2 - ldr r0, [r6] - ldr r1, [r6, 0x4] - bl sub_800F0F4 - adds r4, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - bne _0800EE9A - adds r0, r5, 0 - bl sub_800F204 - b _0800EEC2 -_0800EE9A: - movs r0, 0x2 - negs r0, r0 - cmp r4, r0 - beq _0800EEB6 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_800F13C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_800EDF0 - b _0800EEBC -_0800EEB6: - adds r0, r5, 0 - bl sub_800F204 -_0800EEBC: - ldr r0, [r6, 0x4] - bl sub_800F15C -_0800EEC2: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_800EE5C - - thumb_func_start sub_800EEC8 -sub_800EEC8: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800ECB8 - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_800EE5C - pop {r0} - bx r0 - thumb_func_end sub_800EEC8 - - thumb_func_start sub_800EEE0 -sub_800EEE0: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800ECB8 - movs r1, 0x4 - ldrsh r0, [r0, r1] - bl sub_800EE5C - pop {r0} - bx r0 - thumb_func_end sub_800EEE0 - - thumb_func_start sub_800EEF8 -sub_800EEF8: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800ECB8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_800EE5C - pop {r0} - bx r0 - thumb_func_end sub_800EEF8 - - thumb_func_start sub_800EF10 -sub_800EF10: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800ECB8 - movs r1, 0x6 - ldrsh r0, [r0, r1] - bl sub_800EE5C - pop {r0} - bx r0 - thumb_func_end sub_800EF10 - - thumb_func_start sub_800EF28 -sub_800EF28: - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_800ECE4 - lsls r0, 16 - asrs r0, 16 - bl sub_800EE5C - pop {r0} - bx r0 - thumb_func_end sub_800EF28 - - thumb_func_start sub_800EF40 -sub_800EF40: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - cmp r1, 0 - beq _0800EF52 - bl sub_800ECF8 - b _0800EF56 -_0800EF52: - bl sub_800ED0C -_0800EF56: - lsls r0, 16 - asrs r0, 16 - bl sub_800EE5C - pop {r0} - bx r0 - thumb_func_end sub_800EF40 - - thumb_func_start sub_800EF64 -sub_800EF64: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r0, _0800EF9C - mov r9, r0 - movs r1, 0x4 - mov r8, r1 - movs r7, 0 - movs r6, 0 - movs r5, 0x1 -_0800EF7A: - mov r0, r9 - ldr r1, [r0] - adds r0, r1, 0x4 - adds r0, r7 - ldr r0, [r0] - cmp r0, 0 - beq _0800F01A - mov r0, r8 - adds r4, r1, r0 - ldr r0, [r4] - cmp r0, 0x3 - beq _0800EFA0 - cmp r0, 0x3 - bls _0800F018 - cmp r0, 0x4 - beq _0800EFDA - b _0800F018 - .align 2, 0 -_0800EF9C: .4byte gUnknown_203B0D0 -_0800EFA0: - ldr r0, [r4, 0x8] - ldr r1, [r4, 0x18] - bl sub_8005674 - mov r1, r9 - ldr r0, [r1] - ldr r0, [r0] - cmp r0, 0 - beq _0800EFCA - cmp r0, 0x1 - bne _0800F00C - ldr r0, [r4, 0x8] - ldr r1, [r0, 0x18] - ldr r0, [r4, 0xC] - adds r0, 0x10 - lsls r0, 20 - lsrs r0, 16 - movs r2, 0x10 - bl sub_809971C - b _0800F00C -_0800EFCA: - ldr r0, [r4, 0xC] - ldr r1, [r4, 0x8] - ldr r1, [r1, 0x18] - ldr r2, [r4, 0x1C] - ldr r3, [r4, 0x20] - bl sub_8005770 - b _0800F00C -_0800EFDA: - bl sub_8000728 - cmp r0, 0x1 - bne _0800F000 - movs r0, 0 - movs r1, 0x1 - bl sub_800CD64 - movs r0, 0 - bl sub_8052210 - movs r0, 0x5 - movs r1, 0 - bl sub_803EAF0 - bl sub_800CB20 - bl xxx_call_update_bg_vram -_0800F000: - ldr r0, [r4, 0x8] - ldr r1, [r4, 0xC] - ldr r2, [r4, 0x10] - ldr r3, [r4, 0x14] - bl sub_8009A1C -_0800F00C: - ldr r0, [r4, 0x4] - cmp r0, 0 - beq _0800F018 - bl sub_800F204 - str r6, [r4, 0x4] -_0800F018: - str r6, [r4] -_0800F01A: - movs r0, 0x24 - add r8, r0 - adds r7, 0x24 - subs r5, 0x1 - cmp r5, 0 - bge _0800EF7A - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_800EF64 - - thumb_func_start sub_800F034 -sub_800F034: - push {r4-r6,lr} - ldr r4, _0800F074 - ldr r0, [r4] - cmp r0, 0 - bne _0800F04E - movs r0, 0x10 - movs r1, 0xB - bl MemoryAlloc - str r0, [r4] - movs r1, 0x10 - bl MemoryClear8 -_0800F04E: - movs r3, 0 - adds r6, r4, 0 - movs r5, 0x1 - negs r5, r5 - movs r4, 0 -_0800F058: - ldr r0, [r6] - lsls r2, r3, 3 - adds r1, r0, r2 - str r5, [r1] - adds r0, 0x4 - adds r0, r2 - str r4, [r0] - adds r3, 0x1 - cmp r3, 0x1 - ble _0800F058 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0800F074: .4byte gUnknown_203B0D4 - thumb_func_end sub_800F034 - - thumb_func_start sub_800F078 -sub_800F078: - push {r4,lr} - ldr r4, _0800F090 - ldr r0, [r4] - cmp r0, 0 - beq _0800F08A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0800F08A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800F090: .4byte gUnknown_203B0D4 - thumb_func_end sub_800F078 - - thumb_func_start sub_800F094 -sub_800F094: - push {r4-r6,lr} - movs r3, 0 - ldr r6, _0800F0BC - movs r5, 0x1 - negs r5, r5 - movs r4, 0 -_0800F0A0: - ldr r0, [r6] - lsls r2, r3, 3 - adds r1, r0, r2 - str r5, [r1] - adds r0, 0x4 - adds r0, r2 - str r4, [r0] - adds r3, 0x1 - cmp r3, 0x1 - ble _0800F0A0 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0800F0BC: .4byte gUnknown_203B0D4 - thumb_func_end sub_800F094 - - thumb_func_start sub_800F0C0 -sub_800F0C0: - push {lr} - cmp r0, 0x3 - bne _0800F0D8 - ldr r0, _0800F0D4 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, r1 - bne _0800F0EC - movs r0, 0 - b _0800F0F0 - .align 2, 0 -_0800F0D4: .4byte gUnknown_203B0D4 -_0800F0D8: - ldr r0, _0800F0E8 - ldr r0, [r0] - ldr r0, [r0, 0x8] - cmp r0, r1 - bne _0800F0EC - movs r0, 0x1 - b _0800F0F0 - .align 2, 0 -_0800F0E8: .4byte gUnknown_203B0D4 -_0800F0EC: - movs r0, 0x3 - negs r0, r0 -_0800F0F0: - pop {r1} - bx r1 - thumb_func_end sub_800F0C0 - - thumb_func_start sub_800F0F4 -sub_800F0F4: - push {lr} - cmp r0, 0x3 - bne _0800F114 - ldr r0, _0800F110 - ldr r2, [r0] - ldr r0, [r2] - cmp r0, r1 - beq _0800F11E - ldr r0, [r2, 0x4] - cmp r0, 0 - bne _0800F132 - movs r0, 0 - b _0800F136 - .align 2, 0 -_0800F110: .4byte gUnknown_203B0D4 -_0800F114: - ldr r0, _0800F124 - ldr r2, [r0] - ldr r0, [r2, 0x8] - cmp r0, r1 - bne _0800F128 -_0800F11E: - movs r0, 0x2 - negs r0, r0 - b _0800F136 - .align 2, 0 -_0800F124: .4byte gUnknown_203B0D4 -_0800F128: - ldr r0, [r2, 0xC] - cmp r0, 0 - bne _0800F132 - movs r0, 0x1 - b _0800F136 -_0800F132: - movs r0, 0x1 - negs r0, r0 -_0800F136: - pop {r1} - bx r1 - thumb_func_end sub_800F0F4 - - thumb_func_start sub_800F13C -sub_800F13C: - push {lr} - ldr r1, _0800F158 - ldr r3, [r1] - lsls r1, r0, 3 - adds r0, r3, 0x4 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - bne _0800F154 - adds r1, r3, r1 - ldr r0, [r2, 0x4] - str r0, [r1] -_0800F154: - pop {r0} - bx r0 - .align 2, 0 -_0800F158: .4byte gUnknown_203B0D4 - thumb_func_end sub_800F13C - - thumb_func_start sub_800F15C -sub_800F15C: - push {r4,r5,lr} - adds r4, r0, 0 - movs r3, 0 - ldr r5, _0800F17C -_0800F164: - ldr r1, [r5] - lsls r2, r3, 3 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, r4 - bne _0800F180 - adds r1, 0x4 - adds r1, r2 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - b _0800F186 - .align 2, 0 -_0800F17C: .4byte gUnknown_203B0D4 -_0800F180: - adds r3, 0x1 - cmp r3, 0x1 - ble _0800F164 -_0800F186: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_800F15C - - thumb_func_start sub_800F18C -sub_800F18C: - ldr r1, _0800F198 - lsls r0, 3 - ldr r1, [r1] - adds r1, r0 - adds r0, r1, 0 - bx lr - .align 2, 0 -_0800F198: .4byte gUnknown_203B0D4 - thumb_func_end sub_800F18C - - thumb_func_start sub_800F19C -sub_800F19C: - push {lr} - ldr r1, _0800F1B4 - ldr r1, [r1] - lsls r0, 3 - adds r1, 0x4 - adds r1, r0 - ldr r0, [r1] - cmp r0, 0 - beq _0800F1B8 - movs r0, 0x1 - b _0800F1BA - .align 2, 0 -_0800F1B4: .4byte gUnknown_203B0D4 -_0800F1B8: - movs r0, 0 -_0800F1BA: - pop {r1} - bx r1 - thumb_func_end sub_800F19C - - thumb_func_start sub_800F1C0 -sub_800F1C0: - push {lr} - sub sp, 0x8 - adds r2, r1, 0 - cmp r0, 0x1 - bcc _0800F1EC - cmp r0, 0x3 - bls _0800F1D4 - cmp r0, 0x4 - beq _0800F1E4 - b _0800F1EC -_0800F1D4: - ldr r1, _0800F1E0 - mov r0, sp - bl sprintf - b _0800F1EC - .align 2, 0 -_0800F1E0: .4byte gUnknown_80CE77C -_0800F1E4: - ldr r1, _0800F1FC - mov r0, sp - bl sprintf -_0800F1EC: - ldr r1, _0800F200 - mov r0, sp - bl Call_OpenFileAndGetFileDataPtr - add sp, 0x8 - pop {r1} - bx r1 - .align 2, 0 -_0800F1FC: .4byte gUnknown_80CE788 -_0800F200: .4byte gUnknown_9740000 - thumb_func_end sub_800F1C0 - - thumb_func_start sub_800F204 -sub_800F204: - push {lr} - bl CloseFile - pop {r0} - bx r0 - thumb_func_end sub_800F204 - - thumb_func_start sub_800F210 -sub_800F210: - push {r4,lr} - adds r4, r0, 0 - movs r3, 0 - ldr r0, _0800F230 - ldr r0, [r0] - adds r1, r0, 0x4 - adds r2, r0, 0 - adds r2, 0x8 -_0800F220: - ldrb r0, [r1] - cmp r0, 0 - beq _0800F234 - ldr r0, [r2] - cmp r0, r4 - bne _0800F234 - adds r0, r1, 0 - b _0800F240 - .align 2, 0 -_0800F230: .4byte gUnknown_203B0D8 -_0800F234: - adds r1, 0x40 - adds r2, 0x40 - adds r3, 0x1 - cmp r3, 0x15 - ble _0800F220 - movs r0, 0 -_0800F240: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_800F210 - - thumb_func_start sub_800F248 -sub_800F248: - push {lr} - movs r2, 0 - ldr r0, _0800F25C - ldr r0, [r0] - adds r1, r0, 0x4 -_0800F252: - ldrb r0, [r1] - cmp r0, 0 - bne _0800F260 - adds r0, r1, 0 - b _0800F26A - .align 2, 0 -_0800F25C: .4byte gUnknown_203B0D8 -_0800F260: - adds r1, 0x40 - adds r2, 0x1 - cmp r2, 0x15 - ble _0800F252 - movs r0, 0 -_0800F26A: - pop {r1} - bx r1 - thumb_func_end sub_800F248 - - thumb_func_start sub_800F270 -sub_800F270: - push {r4-r6,lr} - adds r2, r0, 0 - lsls r0, r1, 3 - adds r0, 0x28 - adds r3, r2, r0 - movs r5, 0x80 - lsls r5, 21 - cmp r1, 0 - bne _0800F284 - movs r5, 0x1 -_0800F284: - movs r6, 0x80 - lsls r6, 21 - cmp r1, 0 - bne _0800F290 - movs r6, 0x80 - lsls r6, 20 -_0800F290: - movs r4, 0x1 - cmp r1, 0 - bne _0800F298 - movs r4, 0x1C -_0800F298: - ldr r0, [r2, 0xC] - cmp r0, 0 - bne _0800F2A4 - b _0800F2CC -_0800F2A0: - adds r0, r1, 0 - b _0800F2CE -_0800F2A4: - ldr r2, [r3] - adds r1, r5, 0 - cmp r2, 0 - beq _0800F2AE - adds r1, r2, 0 -_0800F2AE: - movs r2, 0 - cmp r2, r4 - bge _0800F2CC - adds r3, r0, 0 -_0800F2B6: - lsls r1, 1 - cmp r1, r6 - bls _0800F2BE - adds r1, r5, 0 -_0800F2BE: - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0800F2A0 - adds r2, 0x1 - cmp r2, r4 - blt _0800F2B6 -_0800F2CC: - movs r0, 0 -_0800F2CE: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_800F270 - - thumb_func_start sub_800F2D4 -sub_800F2D4: - push {lr} - movs r1, 0 - cmp r0, 0 - beq _0800F2E4 -_0800F2DC: - lsrs r0, 1 - adds r1, 0x1 - cmp r0, 0 - bne _0800F2DC -_0800F2E4: - adds r0, r1, 0 - pop {r1} - bx r1 - thumb_func_end sub_800F2D4 - - thumb_func_start sub_800F2EC -sub_800F2EC: - push {r4-r7,lr} - sub sp, 0xC - adds r5, r0, 0 - adds r6, r1, 0 - adds r7, r2, 0 - lsls r0, r6, 3 - adds r0, 0x28 - adds r4, r5, r0 - ldr r0, [r5, 0xC] - cmp r0, 0 - bne _0800F306 - str r0, [r4] - b _0800F35C -_0800F306: - ldr r0, [r4] - cmp r0, 0 - bne _0800F30E - str r0, [r4, 0x4] -_0800F30E: - ldr r0, [r4, 0x4] - cmp r0, 0 - bgt _0800F32A - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_800F270 - adds r1, r0, 0 - ldr r0, [r4] - cmp r0, r1 - beq _0800F326 - str r1, [r4] -_0800F326: - movs r0, 0x3C - b _0800F32C -_0800F32A: - subs r0, 0x1 -_0800F32C: - str r0, [r4, 0x4] - ldrb r0, [r5, 0x10] - cmp r0, 0 - beq _0800F35C - ldr r0, [r4] - cmp r0, 0 - beq _0800F35C - bl sub_800F2D4 - adds r1, r0, 0 - movs r2, 0x8 - ldrsh r0, [r5, r2] - adds r2, r5, 0 - adds r2, 0x14 - lsls r3, r6, 2 - adds r3, 0x18 - adds r3, r5, r3 - str r7, [sp] - ldrb r4, [r5, 0x11] - str r4, [sp, 0x4] - ldr r4, [r5, 0x4] - str r4, [sp, 0x8] - bl sub_800F364 -_0800F35C: - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_800F2EC - - thumb_func_start sub_800F364 -sub_800F364: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - mov r12, r2 - ldr r0, [sp, 0x20] - mov r8, r0 - ldr r4, [sp, 0x24] - ldr r0, _0800F410 - lsls r1, 3 - adds r2, r1, r0 - ldr r0, [r2] - ldr r1, [r2, 0x4] - str r0, [sp] - str r1, [sp, 0x4] - lsls r2, r0, 1 - ldr r1, [sp] - adds r2, r1 - lsls r2, 3 - ldr r0, _0800F414 - adds r2, r0 - ldr r0, [r2, 0x8] - ldr r6, _0800F418 - adds r7, r0, r6 - movs r0, 0x3 - ands r4, r0 - lsls r4, 10 - ldr r5, _0800F41C - ldrh r1, [r5, 0x4] - ldr r0, _0800F420 - ands r0, r1 - orrs r0, r4 - strh r0, [r5, 0x4] - mov r0, r12 - movs r4, 0 - ldrsh r1, [r0, r4] - ldr r0, [r2] - lsls r0, 2 - subs r1, r0 - mov r6, r8 - movs r4, 0 - ldrsh r0, [r6, r4] - subs r1, r0 - movs r6, 0 - ldrsh r0, [r3, r6] - adds r4, r1, r0 - mov r0, r12 - movs r6, 0x2 - ldrsh r1, [r0, r6] - ldr r0, [r2, 0x4] - lsls r0, 2 - subs r1, r0 - mov r2, r8 - movs r6, 0x2 - ldrsh r0, [r2, r6] - subs r1, r0 - movs r2, 0x2 - ldrsh r0, [r3, r2] - adds r3, r1, r0 - adds r6, r3, 0 - subs r6, 0x10 - movs r0, 0x20 - negs r0, r0 - cmp r4, r0 - bge _0800F3E8 - b _0800F5E4 -_0800F3E8: - cmp r3, r0 - bge _0800F3EE - b _0800F5E4 -_0800F3EE: - cmp r4, 0xEF - ble _0800F3F4 - b _0800F5E4 -_0800F3F4: - cmp r3, 0x9F - ble _0800F3FA - b _0800F5E4 -_0800F3FA: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0xF - bls _0800F404 - b _0800F5A6 -_0800F404: - lsls r0, 2 - ldr r1, _0800F424 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0800F410: .4byte gUnknown_80D3474 -_0800F414: .4byte gUnknown_80CE79C -_0800F418: .4byte 0x0000032b -_0800F41C: .4byte gUnknown_203B0DC -_0800F420: .4byte 0x0000f3ff -_0800F424: .4byte _0800F428 - .align 2, 0 -_0800F428: - .4byte _0800F468 - .4byte _0800F4CC - .4byte _0800F4CC - .4byte _0800F574 - .4byte _0800F538 - .4byte _0800F4CC - .4byte _0800F4CC - .4byte _0800F498 - .4byte _0800F4CC - .4byte _0800F4CC - .4byte _0800F4CC - .4byte _0800F468 - .4byte _0800F4CC - .4byte _0800F468 - .4byte _0800F4CC - .4byte _0800F500 -_0800F468: - ldrh r2, [r5] - ldr r1, _0800F48C - adds r0, r1, 0 - ands r0, r2 - strh r0, [r5] - ldrh r0, [r5, 0x2] - ands r1, r0 - ldr r0, _0800F490 - ands r4, r0 - movs r0, 0xFE - lsls r0, 8 - ands r1, r0 - orrs r1, r4 - strh r1, [r5, 0x2] - ldr r1, _0800F494 - ands r1, r6 - b _0800F59A - .align 2, 0 -_0800F48C: .4byte 0x00003fff -_0800F490: .4byte 0x000001ff -_0800F494: .4byte 0x00000fff -_0800F498: - movs r3, 0x80 - lsls r3, 8 - ldrh r2, [r5] - ldr r1, _0800F4C0 - adds r0, r1, 0 - ands r0, r2 - orrs r0, r3 - strh r0, [r5] - ldrh r0, [r5, 0x2] - ands r1, r0 - ldr r0, _0800F4C4 - ands r4, r0 - movs r0, 0xFE - lsls r0, 8 - ands r1, r0 - orrs r1, r4 - strh r1, [r5, 0x2] - ldr r1, _0800F4C8 - ands r1, r6 - b _0800F59A - .align 2, 0 -_0800F4C0: .4byte 0x00003fff -_0800F4C4: .4byte 0x000001ff -_0800F4C8: .4byte 0x00000fff -_0800F4CC: - ldrh r2, [r5] - ldr r1, _0800F4F4 - adds r0, r1, 0 - ands r0, r2 - strh r0, [r5] - movs r2, 0x80 - lsls r2, 7 - ldrh r0, [r5, 0x2] - ands r1, r0 - orrs r1, r2 - ldr r0, _0800F4F8 - ands r4, r0 - movs r0, 0xFE - lsls r0, 8 - ands r1, r0 - orrs r1, r4 - strh r1, [r5, 0x2] - ldr r1, _0800F4FC - ands r1, r6 - b _0800F59A - .align 2, 0 -_0800F4F4: .4byte 0x00003fff -_0800F4F8: .4byte 0x000001ff -_0800F4FC: .4byte 0x00000fff -_0800F500: - ldrh r2, [r5] - ldr r1, _0800F52C - adds r0, r1, 0 - ands r0, r2 - strh r0, [r5] - movs r2, 0x80 - lsls r2, 7 - ldrh r0, [r5, 0x2] - ands r1, r0 - orrs r1, r2 - adds r2, r4, 0 - adds r2, 0x8 - ldr r0, _0800F530 - ands r2, r0 - movs r0, 0xFE - lsls r0, 8 - ands r1, r0 - orrs r1, r2 - strh r1, [r5, 0x2] - ldr r1, _0800F534 - ands r1, r6 - b _0800F59A - .align 2, 0 -_0800F52C: .4byte 0x00003fff -_0800F530: .4byte 0x000001ff -_0800F534: .4byte 0x00000fff -_0800F538: - movs r3, 0x80 - lsls r3, 7 - ldrh r2, [r5] - ldr r1, _0800F568 - adds r0, r1, 0 - ands r0, r2 - orrs r0, r3 - strh r0, [r5] - movs r2, 0x80 - lsls r2, 8 - ldrh r0, [r5, 0x2] - ands r1, r0 - orrs r1, r2 - ldr r0, _0800F56C - ands r4, r0 - movs r0, 0xFE - lsls r0, 8 - ands r1, r0 - orrs r1, r4 - strh r1, [r5, 0x2] - ldr r1, _0800F570 - ands r1, r6 - b _0800F59A - .align 2, 0 -_0800F568: .4byte 0x00003fff -_0800F56C: .4byte 0x000001ff -_0800F570: .4byte 0x00000fff -_0800F574: - ldrh r2, [r5] - ldr r1, _0800F5F0 - adds r0, r1, 0 - ands r0, r2 - strh r0, [r5] - movs r2, 0x80 - lsls r2, 8 - ldrh r0, [r5, 0x2] - ands r1, r0 - orrs r1, r2 - ldr r0, _0800F5F4 - ands r4, r0 - movs r0, 0xFE - lsls r0, 8 - ands r1, r0 - orrs r1, r4 - strh r1, [r5, 0x2] - ldr r1, _0800F5F8 - ands r1, r3 -_0800F59A: - lsls r1, 4 - ldrh r2, [r5, 0x6] - movs r0, 0xF - ands r0, r2 - orrs r0, r1 - strh r0, [r5, 0x6] -_0800F5A6: - ldr r0, _0800F5FC - ands r7, r0 - ldrh r1, [r5, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r7 - movs r1, 0xF - ldr r3, [sp, 0x4] - ands r1, r3 - lsls r1, 12 - ldr r2, _0800F5F8 - ands r0, r2 - orrs r0, r1 - strh r0, [r5, 0x4] - mov r4, r12 - movs r6, 0x2 - ldrsh r1, [r4, r6] - mov r2, r8 - movs r3, 0x2 - ldrsh r0, [r2, r3] - subs r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 - adds r1, 0x1 - adds r0, r5, 0 - movs r2, 0 - movs r3, 0 - bl AddSprite -_0800F5E4: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800F5F0: .4byte 0x00003fff -_0800F5F4: .4byte 0x000001ff -_0800F5F8: .4byte 0x00000fff -_0800F5FC: .4byte 0x000003ff - thumb_func_end sub_800F364 - - thumb_func_start sub_800F600 -sub_800F600: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r1, 24 - lsrs r1, 24 - mov r9, r1 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - ldr r0, _0800F660 - adds r1, r0 - ldr r7, [r1, 0x14] - ldr r3, [r1, 0x10] - ldr r2, [r1] - ldr r0, [r1, 0x4] - muls r0, r2 - lsls r4, r0, 5 - mov r8, r4 - ldr r0, [r1, 0x8] - ldr r1, _0800F664 - adds r0, r1 - lsls r5, r0, 5 - adds r6, r5, 0 - ldr r0, _0800F668 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0 - bge _0800F63C - adds r0, 0x3 -_0800F63C: - asrs r0, 2 - adds r1, r3, 0 - bl __modsi3 - muls r0, r4 - ldr r1, _0800F66C - adds r0, r1 - adds r1, r7, r0 - mov r2, r9 - cmp r2, 0 - beq _0800F674 - ldr r2, _0800F670 - adds r0, r5, r2 - adds r2, r4, 0 - bl sub_80098BC - b _0800F67E - .align 2, 0 -_0800F660: .4byte gUnknown_80CE79C -_0800F664: .4byte 0x0000032b -_0800F668: .4byte gUnknown_203B0D8 -_0800F66C: .4byte gUnknown_80CE934 -_0800F670: .4byte 0x06010000 -_0800F674: - ldr r2, _0800F68C - adds r0, r6, r2 - mov r2, r8 - bl CpuCopy -_0800F67E: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800F68C: .4byte 0x06010000 - thumb_func_end sub_800F600 - - thumb_func_start sub_800F690 -sub_800F690: - push {r4,r5,lr} - ldr r5, _0800F738 - ldr r0, [r5] - cmp r0, 0 - bne _0800F6AC - ldr r4, _0800F73C - adds r0, r4, 0 - movs r1, 0xC - bl MemoryAlloc - str r0, [r5] - adds r1, r4, 0 - bl MemoryClear8 -_0800F6AC: - ldr r1, [r5] - movs r0, 0 - str r0, [r1] - movs r0, 0x1 - movs r1, 0 - bl sub_800F600 - movs r0, 0x2 - movs r1, 0 - bl sub_800F600 - movs r0, 0x3 - movs r1, 0 - bl sub_800F600 - movs r0, 0x4 - movs r1, 0 - bl sub_800F600 - movs r0, 0x5 - movs r1, 0 - bl sub_800F600 - movs r0, 0x6 - movs r1, 0 - bl sub_800F600 - movs r0, 0x7 - movs r1, 0 - bl sub_800F600 - movs r0, 0x8 - movs r1, 0 - bl sub_800F600 - movs r0, 0x9 - movs r1, 0 - bl sub_800F600 - movs r0, 0xA - movs r1, 0 - bl sub_800F600 - movs r0, 0xB - movs r1, 0 - bl sub_800F600 - movs r0, 0xC - movs r1, 0 - bl sub_800F600 - movs r0, 0xD - movs r1, 0 - bl sub_800F600 - movs r0, 0xE - movs r1, 0 - bl sub_800F600 - movs r0, 0xF - movs r1, 0 - bl sub_800F600 - movs r0, 0x10 - movs r1, 0 - bl sub_800F600 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0800F738: .4byte gUnknown_203B0D8 -_0800F73C: .4byte 0x00000584 - thumb_func_end sub_800F690 - - thumb_func_start sub_800F740 -sub_800F740: - push {r4,lr} - ldr r4, _0800F758 - ldr r0, [r4] - cmp r0, 0 - beq _0800F752 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0800F752: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800F758: .4byte gUnknown_203B0D8 - thumb_func_end sub_800F740 - - thumb_func_start sub_800F75C -sub_800F75C: - push {r4-r7,lr} - adds r4, r0, 0 - adds r7, r2, 0 - lsls r1, 16 - asrs r5, r1, 16 - lsls r3, 24 - lsrs r6, r3, 24 - ldr r0, _0800F790 - ldr r0, [r0] - cmp r0, 0 - beq _0800F788 - adds r0, r4, 0 - bl sub_800F210 - cmp r0, 0 - beq _0800F788 - movs r1, 0 - strh r5, [r0, 0x8] - str r7, [r0, 0xC] - strb r6, [r0, 0x10] - adds r0, 0x38 - strb r1, [r0] -_0800F788: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800F790: .4byte gUnknown_203B0D8 - thumb_func_end sub_800F75C - - thumb_func_start sub_800F794 -sub_800F794: - push {r4-r6,lr} - adds r1, r0, 0 - adds r4, r2, 0 - adds r5, r3, 0 - ldr r6, [sp, 0x10] - ldr r0, _0800F7CC - ldr r0, [r0] - cmp r0, 0 - beq _0800F7C6 - adds r0, r1, 0 - bl sub_800F210 - adds r2, r0, 0 - cmp r2, 0 - beq _0800F7C6 - adds r1, r2, 0 - adds r1, 0x38 - movs r0, 0x1 - strb r0, [r1] - strh r4, [r2, 0x3C] - strh r5, [r2, 0x3E] - ldr r0, [r6] - str r0, [r2, 0x20] - ldr r0, [r6, 0xC] - str r0, [r2, 0x24] -_0800F7C6: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0800F7CC: .4byte gUnknown_203B0D8 - thumb_func_end sub_800F794 - - thumb_func_start sub_800F7D0 -sub_800F7D0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - ldr r0, _0800F800 - ldr r0, [r0] - cmp r0, 0 - beq _0800F8C0 - ldr r1, [r0] - adds r0, r1, 0 - cmp r1, 0 - bge _0800F7EA - adds r0, r1, 0x3 -_0800F7EA: - asrs r0, 2 - lsls r0, 2 - subs r0, r1, r0 - cmp r0, 0x1 - beq _0800F82A - cmp r0, 0x1 - bgt _0800F804 - cmp r0, 0 - beq _0800F80E - b _0800F888 - .align 2, 0 -_0800F800: .4byte gUnknown_203B0D8 -_0800F804: - cmp r0, 0x2 - beq _0800F846 - cmp r0, 0x3 - beq _0800F868 - b _0800F888 -_0800F80E: - movs r0, 0x1 - movs r1, 0x1 - bl sub_800F600 - movs r0, 0x2 - movs r1, 0x1 - bl sub_800F600 - movs r0, 0x3 - movs r1, 0x1 - bl sub_800F600 - movs r0, 0x4 - b _0800F860 -_0800F82A: - movs r0, 0x5 - movs r1, 0x1 - bl sub_800F600 - movs r0, 0x6 - movs r1, 0x1 - bl sub_800F600 - movs r0, 0x7 - movs r1, 0x1 - bl sub_800F600 - movs r0, 0x8 - b _0800F860 -_0800F846: - movs r0, 0x9 - movs r1, 0x1 - bl sub_800F600 - movs r0, 0xA - movs r1, 0x1 - bl sub_800F600 - movs r0, 0xB - movs r1, 0x1 - bl sub_800F600 - movs r0, 0xC -_0800F860: - movs r1, 0x1 - bl sub_800F600 - b _0800F888 -_0800F868: - movs r0, 0xD - movs r1, 0x1 - bl sub_800F600 - movs r0, 0xE - movs r1, 0x1 - bl sub_800F600 - movs r0, 0xF - movs r1, 0x1 - bl sub_800F600 - movs r0, 0x10 - movs r1, 0x1 - bl sub_800F600 -_0800F888: - movs r5, 0 - movs r6, 0x4 -_0800F88C: - ldr r7, _0800F8CC - ldr r4, [r7] - lsls r0, r5, 6 - adds r0, r4, r0 - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _0800F8B0 - adds r4, r6 - adds r0, r4, 0 - movs r1, 0 - mov r2, r8 - bl sub_800F2EC - adds r0, r4, 0 - movs r1, 0x1 - mov r2, r8 - bl sub_800F2EC -_0800F8B0: - adds r6, 0x40 - adds r5, 0x1 - cmp r5, 0x15 - ble _0800F88C - ldr r1, [r7] - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_0800F8C0: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800F8CC: .4byte gUnknown_203B0D8 - thumb_func_end sub_800F7D0 - - thumb_func_start sub_800F8D0 -sub_800F8D0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - adds r7, r2, 0 - mov r8, r3 - lsls r1, 16 - asrs r6, r1, 16 - ldr r0, _0800F92C - ldr r0, [r0] - cmp r0, 0 - beq _0800F920 - adds r0, r5, 0 - bl sub_800F210 - adds r4, r0, 0 - cmp r4, 0 - bne _0800F920 - bl sub_800F248 - adds r1, r0, 0 - cmp r1, 0 - beq _0800F920 - movs r0, 0x1 - strb r0, [r1] - str r5, [r1, 0x4] - strh r6, [r1, 0x8] - str r4, [r1, 0xC] - ldr r0, [r7] - str r0, [r1, 0x14] - mov r0, r8 - strb r0, [r1, 0x11] - ldr r0, _0800F930 - ldr r0, [r0] - str r0, [r1, 0x1C] - str r0, [r1, 0x18] - str r4, [r1, 0x28] - str r4, [r1, 0x2C] - str r4, [r1, 0x30] - str r4, [r1, 0x34] -_0800F920: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800F92C: .4byte gUnknown_203B0D8 -_0800F930: .4byte gUnknown_80D3564 - thumb_func_end sub_800F8D0 - - thumb_func_start sub_800F934 -sub_800F934: - push {lr} - adds r1, r0, 0 - ldr r0, _0800F954 - ldr r0, [r0] - cmp r0, 0 - beq _0800F950 - adds r0, r1, 0 - bl sub_800F210 - cmp r0, 0 - beq _0800F950 - movs r1, 0x40 - bl MemoryClear8 -_0800F950: - pop {r0} - bx r0 - .align 2, 0 -_0800F954: .4byte gUnknown_203B0D8 - thumb_func_end sub_800F934 - - thumb_func_start sub_800F958 -sub_800F958: - push {r4-r7,lr} - adds r4, r0, 0 - adds r6, r1, 0 - adds r5, r2, 0 - adds r7, r3, 0 - ldr r0, _0800F98C - ldr r0, [r0] - cmp r0, 0 - beq _0800F984 - adds r0, r4, 0 - bl sub_800F210 - adds r3, r0, 0 - cmp r3, 0 - beq _0800F984 - ldr r0, [r6] - str r0, [r3, 0x14] - strb r7, [r3, 0x11] - ldr r0, [r5] - str r0, [r3, 0x18] - ldr r0, [r5, 0xC] - str r0, [r3, 0x1C] -_0800F984: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800F98C: .4byte gUnknown_203B0D8 - thumb_func_end sub_800F958 - - thumb_func_start sub_800F990 -sub_800F990: - push {r4-r7,lr} - sub sp, 0x8 - adds r6, r0, 0 - ldr r4, _0800FA20 - ldr r0, [r6, 0x8] - str r0, [r4] - ldr r1, _0800FA24 - ldr r2, _0800FA28 - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0 - movs r1, 0x14 - bl sub_80095CC - movs r0, 0x2 - bl xxx_update_some_bg_tiles - ldr r1, [r4] - ldr r0, _0800FA2C - adds r2, r1, r0 - ldr r0, _0800FA30 - str r0, [r2] - ldrb r0, [r6, 0x5] - ldr r2, _0800FA34 - adds r1, r2 - movs r5, 0 - strb r0, [r1] - bl sub_8010DA4 - ldr r0, [r4] - ldr r2, _0800FA38 - adds r1, r0, r2 - movs r2, 0x1 - negs r2, r2 - str r2, [r1] - ldr r1, _0800FA3C - adds r0, r1 - str r2, [r0] - ldrb r0, [r6, 0x4] - bl sub_800FC5C - ldr r0, [r4] - ldr r2, _0800FA40 - adds r1, r0, r2 - adds r2, 0x4 - adds r0, r2 - ldr r0, [r0] - str r0, [r1] - ldr r1, _0800FA44 - movs r0, 0xFF - strb r0, [r1] - ldr r0, _0800FA48 - strb r5, [r0] - bl sub_8011760 - add r7, sp, 0x4 -_0800FA00: - movs r5, 0 - str r5, [sp] - str r5, [sp, 0x4] - mov r0, sp - adds r1, r7, 0 - bl sub_800FAA8 - cmp r0, 0x1 - bne _0800FA4C - ldr r0, [sp] - ldr r1, [sp, 0x4] - movs r2, 0x32 - bl sub_80100C0 - b _0800FA00 - .align 2, 0 -_0800FA20: .4byte gUnknown_203B0E4 -_0800FA24: .4byte gUnknown_2026E4E -_0800FA28: .4byte 0x00001010 -_0800FA2C: .4byte 0x00004014 -_0800FA30: .4byte gUnknown_80D3570 -_0800FA34: .4byte 0x00004a2c -_0800FA38: .4byte 0x00004a28 -_0800FA3C: .4byte 0x00004a1c -_0800FA40: .4byte 0x00004a20 -_0800FA44: .4byte gUnknown_202DE18 -_0800FA48: .4byte gUnknown_202DE19 -_0800FA4C: - cmp r0, 0x2 - bne _0800FA6C - bl sub_800FB6C - lsls r0, 24 - cmp r0, 0 - beq _0800FA00 - ldr r0, [r4] - ldr r1, _0800FA68 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r6, 0xC] - b _0800FA92 - .align 2, 0 -_0800FA68: .4byte 0x00004df4 -_0800FA6C: - cmp r0, 0x3 - bne _0800FA00 - ldr r0, [r4] - ldr r2, _0800FA8C - adds r1, r0, r2 - adds r2, 0x8 - adds r0, r2 - ldr r1, [r1] - ldr r0, [r0] - cmp r1, r0 - beq _0800FA90 - movs r1, 0 - movs r2, 0xA - bl sub_80100C0 - b _0800FA00 - .align 2, 0 -_0800FA8C: .4byte 0x00004a18 -_0800FA90: - strb r5, [r6, 0xC] -_0800FA92: - bl sub_800FC28 - bl sub_8010EF0 - bl nullsub_16 - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_800F990 - - thumb_func_start sub_800FAA8 -sub_800FAA8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r8, r0 - mov r9, r1 - movs r5, 0 - bl sub_8011300 - bl sub_8011398 -_0800FABE: - bl sub_801169C - bl sub_8010014 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0xFF - beq _0800FB1C - ldr r6, _0800FB50 - ldr r2, [r6] - ldr r1, _0800FB54 - adds r0, r2, r1 - ldr r4, [r0] - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - adds r0, r2 - lsls r1, r3, 1 - ldr r7, _0800FB58 - adds r0, r7 - adds r1, r0, r1 - movs r7, 0 - ldrsh r0, [r1, r7] - cmp r0, 0 - blt _0800FB1C - adds r1, r0, 0 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - ldr r7, _0800FB5C - adds r0, r7 - adds r0, r2, r0 - ldrb r0, [r0] - cmp r0, 0 - beq _0800FB1C - movs r5, 0x1 - mov r0, r8 - str r1, [r0] - mov r1, r9 - str r3, [r1] - ldr r1, [r6] - ldr r2, _0800FB60 - adds r0, r1, r2 - str r3, [r0] - ldr r7, _0800FB64 - adds r1, r7 - str r4, [r1] -_0800FB1C: - ldr r4, _0800FB68 - ldrh r1, [r4, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0800FB2E - bl sub_80117D0 - movs r5, 0x2 -_0800FB2E: - ldrh r1, [r4, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0800FB3E - bl sub_80117E4 - movs r5, 0x3 -_0800FB3E: - cmp r5, 0 - beq _0800FABE - adds r0, r5, 0 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0800FB50: .4byte gUnknown_203B0E4 -_0800FB54: .4byte 0x00004a18 -_0800FB58: .4byte 0x0000401a -_0800FB5C: .4byte 0x00004018 -_0800FB60: .4byte 0x00004a28 -_0800FB64: .4byte 0x00004a1c -_0800FB68: .4byte gUnknown_20255F0 - thumb_func_end sub_800FAA8 - - thumb_func_start sub_800FB6C -sub_800FB6C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r0, 0 - mov r8, r0 - bl sub_8011494 - ldr r7, _0800FBE8 - ldr r6, _0800FBEC -_0800FB7E: - ldr r5, [r7] - ldr r1, _0800FBF0 - adds r4, r5, r1 - adds r0, r4, 0 - bl AddMenuCursorSprite - bl sub_801169C - ldrh r1, [r6, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0800FBA2 - adds r0, r4, 0 - bl MoveMenuCursorDown - bl sub_80117F8 -_0800FBA2: - ldrh r1, [r6, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0800FBB6 - adds r0, r4, 0 - bl MoveMenuCursorUp - bl sub_80117F8 -_0800FBB6: - ldrh r1, [r6, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0800FBCA - ldr r2, _0800FBF4 - adds r0, r5, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0800FC00 -_0800FBCA: - bl sub_80117D0 - ldr r1, [r7] - movs r3, 0x18 - ldrsh r2, [r4, r3] - ldr r3, _0800FBF8 - adds r0, r1, r3 - adds r0, r2 - ldrb r0, [r0] - ldr r2, _0800FBFC - adds r1, r2 - strb r0, [r1] - movs r3, 0x1 - mov r8, r3 - b _0800FC16 - .align 2, 0 -_0800FBE8: .4byte gUnknown_203B0E4 -_0800FBEC: .4byte gUnknown_20255F0 -_0800FBF0: .4byte 0x00004dfc -_0800FBF4: .4byte 0x00004e25 -_0800FBF8: .4byte 0x00004dec -_0800FBFC: .4byte 0x00004df4 -_0800FC00: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0800FC12 - ldr r1, _0800FC24 - adds r0, r5, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0800FB7E -_0800FC12: - bl sub_80117E4 -_0800FC16: - mov r0, r8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0800FC24: .4byte 0x00004e26 - thumb_func_end sub_800FB6C - - thumb_func_start sub_800FC28 -sub_800FC28: - push {r4,r5,lr} - bl sub_8011168 - bl sub_80117AC - ldr r5, _0800FC54 - movs r4, 0x3B -_0800FC36: - ldr r1, [r5] - ldr r0, _0800FC58 - adds r1, r0 - ldr r0, [r1] - subs r0, 0x2 - str r0, [r1] - bl sub_801169C - subs r4, 0x1 - cmp r4, 0 - bge _0800FC36 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0800FC54: .4byte gUnknown_203B0E4 -_0800FC58: .4byte 0x00004dcc - thumb_func_end sub_800FC28 - - thumb_func_start sub_800FC5C -sub_800FC5C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x40 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x14] - movs r0, 0 - str r0, [sp, 0x18] - mov r8, r0 - ldr r1, _0800FD1C - mov r9, r1 - ldr r2, _0800FD20 - str r2, [sp, 0x38] -_0800FC7C: - movs r7, 0 - movs r3, 0 - mov r10, r3 - mov r4, r9 - ldr r0, [r4] - ldr r1, [sp, 0x38] - adds r6, r0, r1 - ldr r2, _0800FD24 - adds r0, r2 - mov r3, r8 - lsls r1, r3, 5 - ldr r0, [r0] - adds r2, r0, r1 - adds r1, r6, 0x2 - movs r5, 0x7 -_0800FC9A: - ldrh r0, [r1] - ldr r4, _0800FD28 - orrs r0, r4 - strh r0, [r1] - adds r1, 0x2 - subs r5, 0x1 - cmp r5, 0 - bge _0800FC9A - movs r5, 0 - adds r1, r2, 0 - adds r1, 0x8 -_0800FCB0: - adds r4, r1, r5 - ldrb r0, [r4] - str r1, [sp, 0x3C] - bl sub_800FFE8 - lsls r0, 24 - ldr r1, [sp, 0x3C] - cmp r0, 0 - beq _0800FCE4 - ldrb r0, [r4] - ldr r7, [sp, 0x14] - cmp r0, r7 - bne _0800FCCE - mov r2, r8 - str r2, [sp, 0x18] -_0800FCCE: - cmp r0, 0 - bne _0800FCE2 - mov r3, r9 - ldr r0, [r3] - ldr r4, _0800FD2C - adds r0, r4 - mov r7, r8 - str r7, [r0] - movs r0, 0x1 - mov r10, r0 -_0800FCE2: - movs r7, 0x1 -_0800FCE4: - adds r5, 0x1 - cmp r5, 0x7 - ble _0800FCB0 - cmp r7, 0 - beq _0800FD30 - movs r5, 0 - movs r4, 0x1 - strb r4, [r6] - adds r3, r6, 0 - adds r3, 0x14 - mov r1, r9 - ldr r0, [r1] - ldr r1, [r0, 0x8] - movs r2, 0x1 - mov r7, r10 - cmp r7, 0 - beq _0800FD08 - movs r2, 0xC -_0800FD08: - movs r0, 0x40 - str r0, [sp] - str r5, [sp, 0x4] - str r4, [sp, 0x8] - adds r0, r3, 0 - movs r3, 0 - bl sub_80053AC - b _0800FD32 - .align 2, 0 -_0800FD1C: .4byte gUnknown_203B0E4 -_0800FD20: .4byte 0x00004018 -_0800FD24: .4byte 0x00004014 -_0800FD28: .4byte 0x0000ffff -_0800FD2C: .4byte 0x00004a24 -_0800FD30: - strb r7, [r6] -_0800FD32: - ldr r0, [sp, 0x38] - adds r0, 0x50 - str r0, [sp, 0x38] - movs r1, 0x1 - add r8, r1 - mov r2, r8 - cmp r2, 0x1F - ble _0800FC7C - movs r3, 0 - mov r8, r3 - ldr r4, [sp, 0x18] - lsls r4, 5 - str r4, [sp, 0x34] -_0800FD4C: - mov r7, r8 - lsls r0, r7, 2 - add r0, r8 - lsls r0, 4 - ldr r1, _0800FEDC - adds r0, r1 - ldr r2, _0800FEE0 - ldr r1, [r2] - adds r3, r1, r0 - ldr r4, _0800FEE4 - adds r1, r4 - lsls r2, r7, 5 - ldr r0, [r1] - adds r0, r2 - str r0, [sp, 0x1C] - ldrb r0, [r3] - adds r7, 0x1 - str r7, [sp, 0x28] - cmp r0, 0 - bne _0800FD76 - b _0800FF56 -_0800FD76: - movs r5, 0 - adds r3, 0x2 - mov r10, r3 - ldr r4, [sp, 0x1C] - adds r4, 0x10 - ldr r6, _0800FEE0 -_0800FD82: - lsls r0, r5, 1 - mov r1, r10 - adds r2, r1, r0 - ldr r1, _0800FEE8 - strh r1, [r2] - adds r1, r4, r0 - ldrh r3, [r1] - movs r7, 0 - ldrsh r0, [r1, r7] - cmp r0, 0 - blt _0800FDB0 - adds r1, r0, 0 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - ldr r1, _0800FEDC - adds r0, r1 - ldr r1, [r6] - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _0800FDB0 - strh r3, [r2] -_0800FDB0: - adds r5, 0x1 - cmp r5, 0x7 - ble _0800FD82 - ldr r3, _0800FEE0 - ldr r2, [r3] - ldr r4, _0800FEEC - adds r0, r2, r4 - ldr r1, [r0] - ldr r7, _0800FEF0 - adds r0, r2, r7 - ldr r3, [r0] - cmp r1, 0 - blt _0800FDEC - cmp r3, 0 - blt _0800FDEC - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 4 - ldr r4, _0800FEDC - adds r0, r4 - adds r0, r2, r0 - ldrb r0, [r0] - cmp r0, 0 - beq _0800FDEC - adds r1, 0x4 - movs r0, 0x7 - ands r1, r0 - lsls r0, r1, 1 - add r0, r10 - strh r3, [r0] -_0800FDEC: - movs r5, 0 -_0800FDEE: - movs r7, 0x1 - negs r7, r7 - str r7, [sp, 0x20] - ldr r0, _0800FEF4 - str r0, [sp, 0x24] - lsls r0, r5, 1 - mov r2, r10 - adds r1, r2, r0 - movs r3, 0 - ldrsh r1, [r1, r3] - str r0, [sp, 0x30] - adds r4, r5, 0x1 - str r4, [sp, 0x2C] - cmp r1, 0 - blt _0800FE0E - b _0800FF4E -_0800FE0E: - movs r6, 0 -_0800FE10: - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 4 - ldr r7, _0800FEDC - adds r0, r7 - ldr r2, _0800FEE0 - ldr r1, [r2] - adds r3, r1, r0 - ldr r4, _0800FEE4 - adds r1, r4 - lsls r2, r6, 5 - ldr r0, [r1] - adds r2, r0, r2 - adds r7, r6, 0x1 - mov r9, r7 - cmp r6, r8 - bne _0800FE34 - b _0800FF3A -_0800FE34: - ldrb r0, [r3] - cmp r0, 0 - bne _0800FE3C - b _0800FF3A -_0800FE3C: - movs r1, 0x4 - ldrsh r0, [r2, r1] - ldr r3, [sp, 0x1C] - movs r4, 0x4 - ldrsh r1, [r3, r4] - subs r0, r1 - lsls r0, 8 - str r0, [sp, 0xC] - movs r7, 0x6 - ldrsh r0, [r2, r7] - movs r2, 0x6 - ldrsh r1, [r3, r2] - subs r0, r1 - lsls r0, 8 - str r0, [sp, 0x10] - add r0, sp, 0xC - bl sub_800A0B0 - adds r2, r0, 0 - ldr r0, [sp, 0xC] - cmp r0, 0 - bge _0800FE6A - adds r0, 0x3 -_0800FE6A: - asrs r1, r0, 2 - str r1, [sp, 0xC] - ldr r0, [sp, 0x10] - cmp r0, 0 - bge _0800FE76 - adds r0, 0x3 -_0800FE76: - asrs r0, 2 - str r0, [sp, 0x10] - cmp r1, 0 - bge _0800FE80 - adds r1, 0xFF -_0800FE80: - asrs r1, 8 - str r1, [sp, 0xC] - cmp r0, 0 - bge _0800FE8A - adds r0, 0xFF -_0800FE8A: - asrs r0, 8 - str r0, [sp, 0x10] - cmp r1, 0 - bne _0800FE96 - movs r0, 0x1 - str r0, [sp, 0xC] -_0800FE96: - ldr r0, [sp, 0x10] - cmp r0, 0 - bne _0800FEA0 - movs r0, 0x1 - str r0, [sp, 0x10] -_0800FEA0: - movs r7, 0 - cmp r5, 0x2 - bne _0800FF04 - ldr r1, _0800FEF8 - ldr r4, _0800FEFC - movs r3, 0x8 - cmp r2, r1 - ble _0800FEB8 - ldr r0, _0800FF00 -_0800FEB2: - adds r2, r0 - cmp r2, r1 - bgt _0800FEB2 -_0800FEB8: - cmp r2, 0 - bge _0800FEC6 - movs r0, 0x80 - lsls r0, 5 -_0800FEC0: - adds r2, r0 - cmp r2, 0 - blt _0800FEC0 -_0800FEC6: - adds r1, r3, r4 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, r2 - blt _0800FF20 - movs r4, 0x2 - ldrsh r0, [r1, r4] - cmp r0, r2 - ble _0800FF1C - b _0800FF20 - .align 2, 0 -_0800FEDC: .4byte 0x00004018 -_0800FEE0: .4byte gUnknown_203B0E4 -_0800FEE4: .4byte 0x00004014 -_0800FEE8: .4byte 0x0000ffff -_0800FEEC: .4byte 0x00004a28 -_0800FEF0: .4byte 0x00004a1c -_0800FEF4: .4byte 0x000f423f -_0800FEF8: .4byte 0x00000fff -_0800FEFC: .4byte gUnknown_80D3EBC -_0800FF00: .4byte 0xfffff000 -_0800FF04: - ldr r0, _0800FFC8 - lsls r1, r5, 2 - adds r1, r0 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, r2 - bgt _0800FF1C - movs r4, 0x2 - ldrsh r0, [r1, r4] - cmp r0, r2 - ble _0800FF1C - movs r7, 0x1 -_0800FF1C: - cmp r7, 0 - beq _0800FF3A -_0800FF20: - ldr r0, [sp, 0xC] - adds r1, r0, 0 - muls r1, r0 - ldr r0, [sp, 0x10] - adds r7, r0, 0 - muls r7, r0 - adds r0, r7, 0 - adds r1, r0 - ldr r0, [sp, 0x24] - cmp r0, r1 - ble _0800FF3A - str r1, [sp, 0x24] - str r6, [sp, 0x20] -_0800FF3A: - mov r6, r9 - cmp r6, 0x1F - bgt _0800FF42 - b _0800FE10 -_0800FF42: - ldr r1, [sp, 0x20] - cmp r1, 0 - blt _0800FF4E - ldr r0, [sp, 0x30] - add r0, r10 - strh r1, [r0] -_0800FF4E: - ldr r5, [sp, 0x2C] - cmp r5, 0x7 - bgt _0800FF56 - b _0800FDEE -_0800FF56: - ldr r3, [sp, 0x28] - mov r8, r3 - cmp r3, 0x1F - bgt _0800FF60 - b _0800FD4C -_0800FF60: - ldr r4, _0800FFCC - ldr r1, [r4] - ldr r7, _0800FFD0 - adds r0, r1, r7 - ldr r1, [r1, 0xC] - movs r2, 0 - str r2, [sp] - str r2, [sp, 0x4] - movs r2, 0x1 - str r2, [sp, 0x8] - movs r2, 0 - movs r3, 0 - bl sub_80053AC - ldr r2, [r4] - ldr r1, _0800FFD4 - adds r0, r2, r1 - ldr r3, [sp, 0x18] - str r3, [r0] - ldr r4, _0800FFD8 - adds r1, r2, r4 - ldr r7, _0800FFDC - adds r0, r2, r7 - ldr r0, [r0] - ldr r3, [sp, 0x34] - adds r0, r3, r0 - ldr r0, [r0, 0x4] - str r0, [r1] - ldrh r0, [r1] - subs r0, 0x78 - subs r4, 0x4 - adds r1, r2, r4 - strh r0, [r1] - ldr r7, _0800FFE0 - adds r0, r2, r7 - ldrh r0, [r0] - subs r0, 0x50 - ldr r1, _0800FFE4 - adds r2, r1 - strh r0, [r2] - bl sub_8011240 - bl sub_80110B0 - add sp, 0x40 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0800FFC8: .4byte gUnknown_80D3EBC -_0800FFCC: .4byte gUnknown_203B0E4 -_0800FFD0: .4byte 0x00004c10 -_0800FFD4: .4byte 0x00004a18 -_0800FFD8: .4byte 0x00004dd8 -_0800FFDC: .4byte 0x00004014 -_0800FFE0: .4byte 0x00004dda -_0800FFE4: .4byte 0x00004dd6 - thumb_func_end sub_800FC5C - - thumb_func_start sub_800FFE8 -sub_800FFE8: - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0x39 - bhi _08010004 - cmp r0, 0 - beq _0801000C - ldr r0, _08010008 - ldr r0, [r0] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0801000C -_08010004: - movs r0, 0 - b _0801000E - .align 2, 0 -_08010008: .4byte gUnknown_203B468 -_0801000C: - movs r0, 0x1 -_0801000E: - pop {r1} - bx r1 - thumb_func_end sub_800FFE8 - - thumb_func_start sub_8010014 -sub_8010014: - push {r4,r5,lr} - sub sp, 0x20 - ldr r1, _08010094 - mov r0, sp - movs r2, 0x10 - bl memcpy - add r4, sp, 0x10 - ldr r1, _08010098 - adds r0, r4, 0 - movs r2, 0x10 - bl memcpy - movs r2, 0 - ldr r0, _0801009C - ldrh r3, [r0] - movs r0, 0x80 - lsls r0, 1 - ands r0, r3 - mov r5, sp - cmp r0, 0 - beq _08010042 - adds r5, r4, 0 -_08010042: - adds r1, r3, 0 - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0801004E - movs r2, 0x1 -_0801004E: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0801005A - movs r0, 0x2 - orrs r2, r0 -_0801005A: - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08010066 - movs r0, 0x4 - orrs r2, r0 -_08010066: - movs r0, 0x20 - ands r0, r3 - cmp r0, 0 - beq _08010072 - movs r0, 0x8 - orrs r2, r0 -_08010072: - ldr r3, _080100A0 - adds r2, r5, r2 - ldrb r1, [r2] - ldrb r0, [r3] - cmp r0, r1 - bne _080100A8 - ldr r1, _080100A4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bls _080100B0 - ldrb r0, [r2] - b _080100B2 - .align 2, 0 -_08010094: .4byte gUnknown_80D3EDC -_08010098: .4byte gUnknown_80D3EEC -_0801009C: .4byte gUnknown_20255F0 -_080100A0: .4byte gUnknown_202DE18 -_080100A4: .4byte gUnknown_202DE19 -_080100A8: - strb r1, [r3] - ldr r1, _080100BC - movs r0, 0 - strb r0, [r1] -_080100B0: - movs r0, 0xFF -_080100B2: - add sp, 0x20 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080100BC: .4byte gUnknown_202DE19 - thumb_func_end sub_8010014 - - thumb_func_start sub_80100C0 -sub_80100C0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - str r0, [sp, 0xC] - mov r8, r2 - ldr r4, _080101E0 - ldr r2, [r4] - ldr r3, _080101E4 - adds r0, r2, r3 - ldr r2, [r2, 0xC] - movs r3, 0x7 - ands r3, r1 - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - movs r1, 0x1 - str r1, [sp, 0x8] - adds r1, r2, 0 - movs r2, 0 - bl sub_80053AC - bl sub_8011168 - ldr r0, [r4] - ldr r2, _080101E8 - adds r1, r0, r2 - ldr r1, [r1] - ldr r3, _080101EC - adds r0, r3 - ldr r2, [r0] - lsls r1, 5 - adds r1, r2 - ldr r1, [r1, 0x4] - mov r9, r1 - ldr r1, [sp, 0xC] - lsls r0, r1, 5 - adds r0, r2 - ldr r0, [r0, 0x4] - str r0, [sp, 0x10] - bl sub_80117F8 - movs r7, 0 - cmp r7, r8 - bge _0801018A - ldr r2, [sp, 0x10] - lsls r1, r2, 16 - asrs r1, 16 - mov r3, r9 - lsls r0, r3, 16 - asrs r0, 16 - subs r1, r0 - str r1, [sp, 0x14] - movs r0, 0 - mov r10, r0 -_08010132: - ldr r0, _080101E0 - ldr r6, [r0] - lsls r5, r7, 8 - mov r0, r10 - mov r1, r8 - bl __divsi3 - cmp r0, 0 - bge _08010146 - adds r0, 0xFF -_08010146: - asrs r0, 8 - add r0, r9 - ldr r2, _080101F0 - adds r1, r6, r2 - strh r0, [r1] - ldr r3, [sp, 0x10] - asrs r0, r3, 16 - mov r1, r9 - asrs r4, r1, 16 - subs r0, r4 - muls r0, r5 - mov r1, r8 - bl __divsi3 - cmp r0, 0 - bge _08010168 - adds r0, 0xFF -_08010168: - asrs r0, 8 - adds r0, r4 - ldr r2, _080101F4 - adds r1, r6, r2 - strh r0, [r1] - bl sub_8011240 - bl sub_80110B0 - bl sub_801169C - ldr r3, [sp, 0x14] - lsls r0, r3, 8 - add r10, r0 - adds r7, 0x1 - cmp r7, r8 - blt _08010132 -_0801018A: - ldr r4, _080101E0 - ldr r0, [r4] - ldr r2, _080101E8 - adds r1, r0, r2 - ldr r3, [sp, 0xC] - str r3, [r1] - ldr r1, _080101F0 - adds r2, r0, r1 - ldr r3, _080101EC - adds r0, r3 - ldr r1, [r0] - ldr r3, [sp, 0xC] - lsls r0, r3, 5 - adds r0, r1 - ldr r0, [r0, 0x4] - str r0, [r2] - bl sub_8011240 - bl sub_80110B0 - bl sub_801169C - ldr r1, [r4] - ldr r2, _080101E4 - adds r0, r1, r2 - ldr r1, [r1, 0xC] - movs r2, 0 - str r2, [sp] - str r2, [sp, 0x4] - movs r2, 0x1 - str r2, [sp, 0x8] - movs r2, 0 - movs r3, 0 - bl sub_80053AC - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080101E0: .4byte gUnknown_203B0E4 -_080101E4: .4byte 0x00004c10 -_080101E8: .4byte 0x00004a18 -_080101EC: .4byte 0x00004014 -_080101F0: .4byte 0x00004dd8 -_080101F4: .4byte 0x00004dda - thumb_func_end sub_80100C0 - - thumb_func_start sub_80101F8 -sub_80101F8: - push {lr} - adds r3, r0, 0 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0 - bne _08010218 - ldr r0, _08010214 - adds r2, r3, 0 - adds r2, 0x50 - adds r1, r3, 0 - movs r3, 0 - bl xxx_format_string - b _08010220 - .align 2, 0 -_08010214: .4byte gUnknown_80D3EFC -_08010218: - adds r0, r3, 0 - movs r2, 0 - bl sub_8092578 -_08010220: - pop {r0} - bx r0 - thumb_func_end sub_80101F8 - - thumb_func_start sub_8010224 -sub_8010224: - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r7, 0 - ldr r0, _08010248 - adds r4, r0, 0x4 - adds r5, r0, 0 - adds r5, 0x8 -_08010234: - movs r2, 0 - adds r3, r5, 0 -_08010238: - adds r0, r3, r2 - ldrb r0, [r0] - cmp r0, r6 - bne _0801024C - ldrh r0, [r4] - strh r0, [r1] - ldrh r0, [r4, 0x2] - b _08010260 - .align 2, 0 -_08010248: .4byte gUnknown_80D3570 -_0801024C: - adds r2, 0x1 - cmp r2, 0x7 - ble _08010238 - adds r4, 0x20 - adds r5, 0x20 - adds r7, 0x1 - cmp r7, 0x1F - ble _08010234 - movs r0, 0 - strh r0, [r1] -_08010260: - strh r0, [r1, 0x2] - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8010224 - - thumb_func_start sub_8010268 -sub_8010268: - push {r4-r6,lr} - ldr r4, _080102D4 - add sp, r4 - adds r5, r0, 0 - ldr r1, _080102D8 - adds r0, 0xB0 - ldr r0, [r0] - str r0, [r1] - ldr r1, _080102DC - ldr r2, _080102E0 - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0 - movs r1, 0x14 - bl sub_80095CC - movs r0, 0x2 - bl xxx_update_some_bg_tiles - bl sub_801059C - adds r0, r5, 0x4 - bl sub_8010494 - bl sub_801178C - movs r4, 0x3B -_0801029E: - bl sub_8010960 - subs r4, 0x1 - cmp r4, 0 - bge _0801029E - ldrb r0, [r5, 0x4] - ldrb r1, [r5, 0x8] - bl sub_8010344 - adds r0, r5, 0 - adds r0, 0x8 - bl sub_8010B74 - adds r6, r5, 0 - adds r6, 0x70 - movs r4, 0x3B -_080102BE: - bl sub_8010960 - subs r4, 0x1 - cmp r4, 0 - bge _080102BE - ldrb r0, [r5, 0x14] - cmp r0, 0 - beq _080102E4 - movs r0, 0x20 - ldrsh r1, [r5, r0] - b _080102E6 - .align 2, 0 -_080102D4: .4byte 0xfffffc14 -_080102D8: .4byte gUnknown_203B0E8 -_080102DC: .4byte gUnknown_2026E4E -_080102E0: .4byte 0x00000a06 -_080102E4: - movs r1, 0 -_080102E6: - ldrb r0, [r5, 0x8] - ldrb r3, [r6] - movs r4, 0 - str r4, [sp] - add r2, sp, 0x4 - bl sub_809034C - cmp r0, 0 - beq _0801031C - cmp r0, 0x1 - bne _0801030A - add r0, sp, 0x4 - bl sub_8010C10 - adds r0, r5, 0 - adds r0, 0xB4 - strb r4, [r0] - b _0801032C -_0801030A: - cmp r0, 0x2 - bne _0801032C - add r0, sp, 0x4 - bl sub_8010C58 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08010326 -_0801031C: - adds r1, r5, 0 - adds r1, 0xB4 - movs r0, 0x1 - strb r0, [r1] - b _0801032C -_08010326: - adds r0, r5, 0 - adds r0, 0xB4 - strb r1, [r0] -_0801032C: - bl sub_801091C - bl sub_801073C - bl nullsub_16 - movs r3, 0xFB - lsls r3, 2 - add sp, r3 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8010268 - - thumb_func_start sub_8010344 -sub_8010344: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - lsls r0, 24 - lsls r1, 24 - ldr r2, _08010470 - lsrs r0, 22 - adds r0, r2 - lsrs r1, 22 - adds r1, r2 - ldr r2, [r1] - str r2, [sp, 0x14] - movs r3, 0 - ldrsh r5, [r1, r3] - ldr r1, [r0] - mov r9, r1 - movs r2, 0 - ldrsh r6, [r0, r2] - subs r2, r5, r6 - cmp r2, 0 - bge _08010376 - negs r2, r2 -_08010376: - ldr r3, [sp, 0x14] - asrs r0, r3, 16 - mov r3, r9 - asrs r1, r3, 16 - subs r4, r0, r1 - adds r3, r4, 0 - str r0, [sp, 0x18] - mov r8, r1 - cmp r4, 0 - bge _0801038C - negs r4, r4 -_0801038C: - cmp r4, r2 - bge _08010392 - adds r4, r2, 0 -_08010392: - lsrs r0, r4, 31 - adds r0, r4, r0 - asrs r4, r0, 1 - subs r0, r6, r5 - str r0, [sp, 0xC] - str r3, [sp, 0x10] - add r0, sp, 0xC - bl sub_800A0B0 - ldr r1, _08010474 - adds r3, r0, r1 - cmp r3, 0 - bge _080103B0 - ldr r2, _08010478 - adds r3, r0, r2 -_080103B0: - asrs r3, 9 - movs r0, 0x7 - ands r3, r0 - ldr r0, _0801047C - ldr r1, [r0] - ldr r2, _08010480 - adds r0, r1, r2 - ldr r2, _08010484 - adds r1, r2 - ldr r1, [r1] - movs r2, 0 - str r2, [sp] - str r2, [sp, 0x4] - movs r2, 0x1 - str r2, [sp, 0x8] - movs r2, 0 - bl sub_80053AC - movs r7, 0 - cmp r7, r4 - bge _08010448 - mov r10, r5 -_080103DC: - ldr r0, _0801047C - ldr r6, [r0] - mov r3, r9 - lsls r0, r3, 16 - asrs r0, 16 - mov r1, r10 - subs r0, r1, r0 - lsls r5, r7, 8 - muls r0, r5 - adds r1, r4, 0 - bl __divsi3 - cmp r0, 0 - bge _080103FA - adds r0, 0xFF -_080103FA: - asrs r0, 8 - add r0, r9 - ldr r2, _08010488 - adds r1, r6, r2 - strh r0, [r1] - ldr r3, [sp, 0x18] - mov r1, r8 - subs r0, r3, r1 - muls r0, r5 - adds r1, r4, 0 - bl __divsi3 - cmp r0, 0 - bge _08010418 - adds r0, 0xFF -_08010418: - asrs r0, 8 - add r0, r8 - ldr r2, _0801048C - adds r1, r6, r2 - strh r0, [r1] - bl sub_8010798 - bl sub_8010858 - bl sub_8010960 - ldr r0, _08010490 - ldrh r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08010448 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08010448 - adds r7, 0x1 - cmp r7, r4 - blt _080103DC -_08010448: - ldr r0, _0801047C - ldr r0, [r0] - ldr r3, _08010488 - adds r0, r3 - ldr r1, [sp, 0x14] - str r1, [r0] - bl sub_8010798 - bl sub_8010858 - bl sub_8010960 - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08010470: .4byte gUnknown_80D3F14 -_08010474: .4byte 0xfffffc00 -_08010478: .4byte 0xfffffdff -_0801047C: .4byte gUnknown_203B0E8 -_08010480: .4byte 0x00005114 -_08010484: .4byte 0x0000110c -_08010488: .4byte 0x000052dc -_0801048C: .4byte 0x000052de -_08010490: .4byte gUnknown_20255F0 - thumb_func_end sub_8010344 - - thumb_func_start sub_8010494 -sub_8010494: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - mov r9, r0 - movs r5, 0 - ldr r0, _080104C0 - mov r10, r0 - mov r8, r5 -_080104AA: - mov r1, r10 - ldr r0, [r1] - mov r3, r8 - adds r4, r0, r3 - cmp r5, 0x3E - bgt _080104C4 - mov r0, r9 - adds r0, 0x6D - adds r0, r5 - ldrb r0, [r0] - b _080104C6 - .align 2, 0 -_080104C0: .4byte gUnknown_203B0E8 -_080104C4: - movs r0, 0x1 -_080104C6: - cmp r0, 0 - beq _0801050C - movs r7, 0 - movs r6, 0x1 - strb r6, [r4] - adds r3, r4, 0 - adds r3, 0x8 - mov r1, r10 - ldr r0, [r1] - ldr r1, _08010504 - adds r0, r1 - ldr r1, [r0] - movs r2, 0x1 - cmp r5, 0x3F - bne _080104E6 - movs r2, 0xC -_080104E6: - movs r0, 0x40 - str r0, [sp] - str r7, [sp, 0x4] - str r6, [sp, 0x8] - adds r0, r3, 0 - movs r3, 0 - bl sub_80053AC - ldr r1, _08010508 - lsls r0, r5, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [r4, 0x4] - b _0801050E - .align 2, 0 -_08010504: .4byte 0x00001108 -_08010508: .4byte gUnknown_80D3F14 -_0801050C: - strb r0, [r4] -_0801050E: - movs r3, 0x44 - add r8, r3 - adds r5, 0x1 - cmp r5, 0x3F - ble _080104AA - movs r2, 0 - ldr r4, _0801057C - ldr r1, [r4] - ldr r3, _08010580 - adds r0, r1, r3 - ldr r3, _08010584 - adds r1, r3 - ldr r1, [r1] - str r2, [sp] - str r2, [sp, 0x4] - movs r2, 0x1 - str r2, [sp, 0x8] - movs r2, 0 - movs r3, 0 - bl sub_80053AC - ldr r2, [r4] - ldr r4, _08010588 - adds r3, r2, r4 - ldr r1, _0801058C - mov r4, r9 - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [r3] - ldrh r0, [r3] - subs r0, 0x78 - ldr r3, _08010590 - adds r1, r2, r3 - strh r0, [r1] - ldr r4, _08010594 - adds r0, r2, r4 - ldrh r0, [r0] - subs r0, 0x50 - ldr r1, _08010598 - adds r2, r1 - strh r0, [r2] - bl sub_8010798 - bl sub_8010858 - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801057C: .4byte gUnknown_203B0E8 -_08010580: .4byte 0x00005114 -_08010584: .4byte 0x0000110c -_08010588: .4byte 0x000052dc -_0801058C: .4byte gUnknown_80D3F14 -_08010590: .4byte 0x000052d8 -_08010594: .4byte 0x000052de -_08010598: .4byte 0x000052da - thumb_func_end sub_8010494 - - thumb_func_start sub_801059C -sub_801059C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - bl sub_808D33C - adds r7, r0, 0 - ldr r6, _080106E4 - ldr r0, [r6] - ldr r5, _080106E8 - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - str r0, [sp, 0xC] - ldr r0, [r6, 0x4] - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - str r0, [sp, 0x10] - ldr r1, _080106EC - movs r0, 0x8 - ldrsh r2, [r7, r0] - mov r0, sp - bl sprintf - ldr r1, _080106F0 - mov r8, r1 - mov r0, sp - bl OpenFileAndGetFileDataPtr - ldr r4, _080106F4 - ldr r1, [r4] - ldr r2, _080106F8 - adds r1, r2 - str r0, [r1] - ldr r0, _080106FC - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, [r4] - ldr r3, _08010700 - mov r9, r3 - add r1, r9 - str r0, [r1] - ldr r0, [r6, 0x8] - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, [r4] - ldr r2, _08010704 - mov r10, r2 - add r1, r10 - str r0, [r1] - ldr r0, _08010708 - mov r1, r8 - bl OpenFileAndGetFileDataPtr - ldr r1, [r4] - ldr r3, _0801070C - adds r1, r3 - str r0, [r1] - ldr r0, [r6, 0xC] - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, [r4] - movs r2, 0x88 - lsls r2, 5 - adds r1, r2 - str r0, [r1] - movs r3, 0x8 - ldrsh r0, [r7, r3] - movs r1, 0 - bl sub_808DD68 - ldr r1, [r4] - ldr r3, _08010710 - adds r2, r1, r3 - lsls r0, 24 - lsrs r0, 24 - str r0, [r2] - add r1, r9 - ldr r0, [r1] - movs r1, 0x40 - movs r2, 0x1F - movs r3, 0 - bl sub_8005610 - ldr r0, _08010714 - movs r1, 0 - ldr r2, [sp, 0xC] - bl sub_800AE28 - ldr r1, [r4] - ldr r2, _08010718 - adds r0, r1, r2 - add r1, r10 - ldr r1, [r1] - movs r2, 0x10 - bl sub_8004AA4 - movs r1, 0x80 - lsls r1, 7 - ldr r0, [r4] - ldr r3, _0801071C - adds r0, r3 - ldr r2, [sp, 0x10] - bl sub_800AAA8 - ldr r1, [r4] - ldr r2, _08010720 - adds r0, r1, r2 - movs r2, 0 - str r2, [r0] - ldr r3, _08010724 - adds r0, r1, r3 - strh r2, [r0] - ldr r0, _08010728 - adds r1, r0 - strh r2, [r1] - movs r3, 0 - ldr r1, _0801072C - mov r9, r1 - mov r8, r4 - ldr r7, _08010730 - ldr r2, _08010734 - adds r4, r2, 0 - ldr r6, _08010738 - movs r5, 0 -_080106A2: - mov r0, r8 - ldr r2, [r0] - lsls r0, r3, 1 - adds r1, r2, r7 - adds r1, r0 - ldrh r0, [r1] - orrs r0, r4 - strh r0, [r1] - adds r2, r6 - adds r2, r3 - strb r5, [r2] - adds r3, 0x1 - cmp r3, r9 - ble _080106A2 - ldr r0, [sp, 0xC] - bl CloseFile - ldr r0, [sp, 0x10] - bl CloseFile - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080106E4: .4byte gUnknown_80D4014 -_080106E8: .4byte gUnknown_8380000 -_080106EC: .4byte gUnknown_80D405C -_080106F0: .4byte gUnknown_8510000 -_080106F4: .4byte gUnknown_203B0E8 -_080106F8: .4byte 0x0000110c -_080106FC: .4byte gUnknown_80D4064 -_08010700: .4byte 0x00001108 -_08010704: .4byte 0x00001110 -_08010708: .4byte gUnknown_80D406C -_0801070C: .4byte 0x00001104 -_08010710: .4byte 0x000052d4 -_08010714: .4byte 0x06008000 -_08010718: .4byte 0x00005150 -_0801071C: .4byte 0x00001114 -_08010720: .4byte 0x000052d0 -_08010724: .4byte 0x000052d8 -_08010728: .4byte 0x000052da -_0801072C: .4byte 0x000005db -_08010730: .4byte 0x000052e0 -_08010734: .4byte 0x0000ffff -_08010738: .4byte 0x00005e98 - thumb_func_end sub_801059C - - thumb_func_start sub_801073C -sub_801073C: - push {r4,lr} - ldr r4, _08010784 - ldr r0, [r4] - ldr r1, _08010788 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - ldr r1, _0801078C - adds r0, r1 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - ldr r1, _08010790 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - movs r1, 0x88 - lsls r1, 5 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - ldr r1, _08010794 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08010784: .4byte gUnknown_203B0E8 -_08010788: .4byte 0x00001110 -_0801078C: .4byte 0x0000110c -_08010790: .4byte 0x00001108 -_08010794: .4byte 0x00001104 - thumb_func_end sub_801073C - - thumb_func_start sub_8010798 -sub_8010798: - push {r4-r6,lr} - ldr r2, _080107BC - ldr r0, [r2] - ldr r1, _080107C0 - adds r3, r0, r1 - movs r4, 0 - ldrsh r1, [r3, r4] - ldr r5, _080107C4 - adds r4, r0, r5 - movs r6, 0 - ldrsh r0, [r4, r6] - subs r1, r0 - adds r5, r2, 0 - cmp r1, 0x2F - bgt _080107C8 - ldrh r0, [r3] - subs r0, 0x30 - b _080107D0 - .align 2, 0 -_080107BC: .4byte gUnknown_203B0E8 -_080107C0: .4byte 0x000052dc -_080107C4: .4byte 0x000052d8 -_080107C8: - cmp r1, 0xC0 - ble _080107D2 - ldrh r0, [r3] - subs r0, 0xC0 -_080107D0: - strh r0, [r4] -_080107D2: - ldr r0, [r5] - ldr r1, _080107F0 - adds r3, r0, r1 - movs r2, 0 - ldrsh r1, [r3, r2] - ldr r4, _080107F4 - adds r2, r0, r4 - movs r6, 0 - ldrsh r0, [r2, r6] - subs r1, r0 - cmp r1, 0x2F - bgt _080107F8 - ldrh r0, [r3] - subs r0, 0x30 - b _08010800 - .align 2, 0 -_080107F0: .4byte 0x000052de -_080107F4: .4byte 0x000052da -_080107F8: - cmp r1, 0x70 - ble _08010802 - ldrh r0, [r3] - subs r0, 0x70 -_08010800: - strh r0, [r2] -_08010802: - adds r3, r5, 0 - ldr r0, [r3] - ldr r4, _08010850 - adds r1, r0, r4 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - bge _08010816 - movs r0, 0 - strh r0, [r1] -_08010816: - ldr r0, [r3] - ldr r2, _08010854 - adds r1, r0, r2 - movs r6, 0 - ldrsh r0, [r1, r6] - cmp r0, 0 - bge _08010828 - movs r0, 0 - strh r0, [r1] -_08010828: - ldr r0, [r3] - adds r1, r0, r4 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0xEF - ble _08010838 - movs r0, 0xF0 - strh r0, [r1] -_08010838: - ldr r0, [r5] - adds r2, r0, r2 - movs r4, 0 - ldrsh r0, [r2, r4] - cmp r0, 0x9F - ble _08010848 - movs r0, 0xA0 - strh r0, [r2] -_08010848: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08010850: .4byte 0x000052d8 -_08010854: .4byte 0x000052da - thumb_func_end sub_8010798 - - thumb_func_start sub_8010858 -sub_8010858: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r0, _080108FC - ldr r1, [r0] - ldr r2, _08010900 - adds r1, r2 - ldrh r1, [r1] - lsls r1, 16 - asrs r6, r1, 19 - adds r2, r6, 0 - movs r3, 0 - mov r10, r0 - movs r0, 0x1F - mov r9, r0 -_0801087C: - mov r1, r10 - ldr r0, [r1] - ldr r1, _08010904 - adds r0, r1 - ldrh r0, [r0] - lsls r0, 16 - asrs r4, r0, 19 - lsls r1, r2, 7 - adds r2, 0x1 - mov r12, r2 - adds r3, 0x1 - mov r8, r3 - movs r7, 0x1E - lsls r0, r4, 1 - adds r5, r0, r1 -_0801089A: - mov r2, r9 - ands r4, r2 - ands r6, r2 - lsls r2, r4, 1 - lsls r0, r6, 6 - adds r2, r0 - ldr r3, _08010908 - adds r3, r2, r3 - str r3, [sp] - mov r0, r10 - ldr r1, [r0] - ldr r3, _0801090C - adds r0, r1, r3 - adds r0, r5 - ldrh r0, [r0] - ldr r3, [sp] - strh r0, [r3] - ldr r0, _08010910 - adds r2, r0 - ldr r3, _08010914 - adds r1, r3 - adds r1, r5 - ldrh r0, [r1] - strh r0, [r2] - adds r5, 0x2 - adds r4, 0x1 - subs r7, 0x1 - cmp r7, 0 - bge _0801089A - mov r2, r12 - adds r6, 0x1 - mov r3, r8 - cmp r3, 0x14 - ble _0801087C - movs r0, 0x2 - bl sub_80098F8 - movs r0, 0x3 - bl sub_80098F8 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080108FC: .4byte gUnknown_203B0E8 -_08010900: .4byte 0x000052da -_08010904: .4byte 0x000052d8 -_08010908: .4byte gUnknown_202C038 -_0801090C: .4byte 0x00003114 -_08010910: .4byte gUnknown_202C838 -_08010914: .4byte 0x00001114 - thumb_func_end sub_8010858 - - thumb_func_start nullsub_24 -nullsub_24: - bx lr - thumb_func_end nullsub_24 - - thumb_func_start sub_801091C -sub_801091C: - push {r4,r5,lr} - bl sub_8010950 - bl sub_80117C4 - ldr r5, _08010948 - movs r4, 0x3B -_0801092A: - ldr r1, [r5] - ldr r0, _0801094C - adds r1, r0 - ldr r0, [r1] - subs r0, 0x2 - str r0, [r1] - bl sub_8010960 - subs r4, 0x1 - cmp r4, 0 - bge _0801092A - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08010948: .4byte gUnknown_203B0E8 -_0801094C: .4byte 0x000052d0 - thumb_func_end sub_801091C - - thumb_func_start sub_8010950 -sub_8010950: - push {lr} - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r0} - bx r0 - thumb_func_end sub_8010950 - - thumb_func_start sub_8010960 -sub_8010960: - push {r4-r6,lr} - ldr r6, _080109EC - ldr r1, [r6] - ldr r4, _080109F0 - adds r0, r1, r4 - movs r2, 0 - ldrsh r0, [r0, r2] - ldr r5, _080109F4 - adds r1, r5 - movs r2, 0 - ldrsh r1, [r1, r2] - bl sub_800CCA0 - ldr r1, [r6] - adds r4, r1, r4 - movs r2, 0 - ldrsh r0, [r4, r2] - adds r1, r5 - movs r2, 0 - ldrsh r1, [r1, r2] - bl sub_800CCAC - movs r0, 0x1 - bl sub_8010A88 - bl sub_8010A00 - movs r0, 0 - movs r1, 0 - bl sub_8005838 - ldr r0, _080109F8 - ldr r0, [r0] - ldrb r0, [r0, 0xA] - bl nullsub_8 - bl sub_8005180 - bl sub_80060EC - ldr r0, _080109FC - ldr r0, [r0] - bl sub_8094FB4 - bl sub_800CB20 - bl sub_800485C - bl CopySpritesToOam - bl sub_8005304 - bl TransferBGPaletteBuffer - bl xxx_call_update_bg_vram - bl nullsub_24 - bl sub_8009908 - bl xxx_call_update_bg_sound_input - bl sub_8011860 - movs r0, 0 - bl sub_8004D8C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080109EC: .4byte gUnknown_203B0E8 -_080109F0: .4byte 0x000052d8 -_080109F4: .4byte 0x000052da -_080109F8: .4byte gUnknown_203B46C -_080109FC: .4byte gUnknown_203B47C - thumb_func_end sub_8010960 - - thumb_func_start sub_8010A00 -sub_8010A00: - push {r4-r6,lr} - movs r3, 0 - ldr r6, _08010A7C - ldr r0, [r6] - ldr r2, _08010A80 - adds r1, r0, r2 - ldr r2, [r1] - cmp r2, 0x1E - bgt _08010A74 - movs r3, 0x88 - lsls r3, 5 - adds r0, r3 - ldr r0, [r0] - ldr r5, [r0, 0x4] - adds r0, r2, 0x1 - str r0, [r1] - cmp r0, 0x1E - ble _08010A28 - movs r0, 0x1F - str r0, [r1] -_08010A28: - movs r4, 0 -_08010A2A: - ldr r0, [r6] - ldr r1, _08010A80 - adds r0, r1 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - adds r4, 0x1 - cmp r4, 0xDF - ble _08010A2A - ldr r0, _08010A7C - ldr r0, [r0] - ldr r2, _08010A84 - adds r0, r2 - ldr r0, [r0] - ldr r5, [r0, 0x4] - movs r4, 0 -_08010A52: - movs r3, 0x80 - lsls r3, 1 - adds r0, r4, r3 - ldr r1, _08010A7C - ldr r1, [r1] - ldr r2, _08010A80 - adds r1, r2 - ldr r2, [r1] - adds r1, r5, 0 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - adds r4, 0x1 - cmp r4, 0xEF - ble _08010A52 - movs r3, 0x1 -_08010A74: - adds r0, r3, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08010A7C: .4byte gUnknown_203B0E8 -_08010A80: .4byte 0x000052d0 -_08010A84: .4byte 0x00001104 - thumb_func_end sub_8010A00 - - thumb_func_start sub_8010A88 -sub_8010A88: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - add r0, sp, 0x8 - bl sub_8004E8C - add r1, sp, 0x8 - ldr r0, _08010B58 - strh r0, [r1, 0x4] - movs r0, 0x80 - lsls r0, 4 - strh r0, [r1, 0xA] - ldr r6, _08010B5C - ldr r0, [r6] - ldr r2, _08010B60 - adds r1, r0, r2 - ldr r5, [r1] - ldr r3, _08010B64 - adds r0, r3 - bl sub_80054BC - mov r0, r9 - cmp r0, 0 - beq _08010AF6 - ldr r4, [r6] - ldr r1, _08010B64 - adds r0, r4, r1 - ldr r2, _08010B68 - adds r1, r4, r2 - movs r3, 0 - ldrsh r1, [r1, r3] - lsls r2, r5, 16 - asrs r2, 16 - subs r1, r2 - ldr r3, _08010B6C - adds r2, r4, r3 - movs r3, 0 - ldrsh r2, [r2, r3] - asrs r3, r5, 16 - subs r2, r3 - ldr r3, _08010B70 - adds r4, r3 - ldr r3, [r4] - str r3, [sp] - add r3, sp, 0x8 - str r3, [sp, 0x4] - movs r3, 0x3 - bl sub_800558C -_08010AF6: - lsls r0, r5, 16 - asrs r0, 16 - mov r10, r0 - movs r7, 0 - asrs r5, 16 - mov r8, r5 - movs r6, 0x3F -_08010B04: - ldr r1, _08010B5C - ldr r0, [r1] - adds r4, r0, r7 - ldrb r0, [r4] - cmp r0, 0 - beq _08010B40 - adds r5, r4, 0 - adds r5, 0x8 - adds r0, r5, 0 - bl sub_80054BC - mov r2, r9 - cmp r2, 0 - beq _08010B40 - movs r3, 0x4 - ldrsh r1, [r4, r3] - mov r0, r10 - subs r1, r0 - movs r3, 0x6 - ldrsh r2, [r4, r3] - mov r0, r8 - subs r2, r0 - movs r0, 0 - str r0, [sp] - add r3, sp, 0x8 - str r3, [sp, 0x4] - adds r0, r5, 0 - movs r3, 0x1 - bl sub_800558C -_08010B40: - adds r7, 0x44 - subs r6, 0x1 - cmp r6, 0 - bge _08010B04 - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08010B58: .4byte 0x0000f3ff -_08010B5C: .4byte gUnknown_203B0E8 -_08010B60: .4byte 0x000052d8 -_08010B64: .4byte 0x00005114 -_08010B68: .4byte 0x000052dc -_08010B6C: .4byte 0x000052de -_08010B70: .4byte 0x000052d4 - thumb_func_end sub_8010A88 - - thumb_func_start sub_8010B74 -sub_8010B74: - push {r4,r5,lr} - sub sp, 0x64 - adds r5, r0, 0 - add r4, sp, 0x4 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r2, 0x3 - str r2, [sp, 0x8] - movs r0, 0xC - strh r0, [r4, 0x8] - movs r1, 0x2 - strh r1, [r4, 0xA] - movs r0, 0x10 - strh r0, [r4, 0xC] - strh r1, [r4, 0xE] - strh r1, [r4, 0x10] - str r2, [sp, 0x20] - str r2, [sp, 0x38] - str r2, [sp, 0x50] - ldr r0, _08010BC0 - ldr r0, [r0] - ldr r2, _08010BC4 - adds r1, r0, r2 - movs r2, 0 - ldrsh r1, [r1, r2] - ldr r2, _08010BC8 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - subs r1, r0 - cmp r1, 0x50 - bgt _08010BCC - add r1, sp, 0x4 - movs r0, 0x11 - b _08010BD0 - .align 2, 0 -_08010BC0: .4byte gUnknown_203B0E8 -_08010BC4: .4byte 0x000052de -_08010BC8: .4byte 0x000052da -_08010BCC: - add r1, sp, 0x4 - movs r0, 0x1 -_08010BD0: - strh r0, [r1, 0xA] - add r0, sp, 0x4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0 - bl sub_80073B8 - ldr r0, _08010C08 - adds r1, r5, 0 - bl sub_809027C - ldr r2, _08010C0C - movs r0, 0 - str r0, [sp] - movs r0, 0xC - movs r1, 0x2 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - add sp, 0x64 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08010C08: .4byte gUnknown_202DF98 -_08010C0C: .4byte gUnknown_80D4074 - thumb_func_end sub_8010B74 - - thumb_func_start sub_8010C10 -sub_8010C10: - push {r4,lr} - sub sp, 0x18 - movs r2, 0 - str r2, [sp] - movs r1, 0x3 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - ldr r1, _08010C54 - str r1, [sp, 0x10] - movs r1, 0 - movs r3, 0 - bl sub_8014248 -_08010C2C: - bl xxx_draw_string_80144C4 - bl sub_8010960 - add r0, sp, 0x14 - bl sub_80144A4 - cmp r0, 0 - bne _08010C2C - movs r4, 0x9 -_08010C40: - bl sub_8010960 - subs r4, 0x1 - cmp r4, 0 - bge _08010C40 - add sp, 0x18 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08010C54: .4byte 0x00000301 - thumb_func_end sub_8010C10 - - thumb_func_start sub_8010C58 -sub_8010C58: - push {r4-r6,lr} - sub sp, 0x38 - adds r5, r0, 0 - movs r2, 0 - ldrb r0, [r5] - ldr r3, _08010D70 - add r6, sp, 0x2C - cmp r0, 0 - beq _08010C7C - adds r1, r5, 0 -_08010C6C: - ldrb r0, [r1] - cmp r0, 0xA - bne _08010C74 - adds r2, 0xC -_08010C74: - adds r1, 0x1 - ldrb r0, [r1] - cmp r0, 0 - bne _08010C6C -_08010C7C: - adds r2, 0xB - adds r0, r2, 0 - cmp r2, 0 - bge _08010C86 - adds r0, r2, 0x7 -_08010C86: - asrs r2, r0, 3 - movs r0, 0x13 - subs r0, r2 - movs r4, 0 - strh r0, [r3, 0xA] - strh r2, [r3, 0x10] - strh r2, [r3, 0xE] - movs r0, 0xE - subs r0, r2 - strh r0, [r3, 0x22] - adds r0, r3, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0 - bl sub_80073B8 - str r4, [sp] - movs r0, 0x4 - movs r1, 0 - adds r2, r5, 0 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - movs r0, 0x1 - bl sub_80073B8 - ldr r2, _08010D74 - str r4, [sp] - movs r0, 0xA - movs r1, 0 - movs r3, 0x1 - bl sub_8014FF0 - ldr r2, _08010D78 - str r4, [sp] - movs r0, 0xA - movs r1, 0xC - movs r3, 0x1 - bl sub_8014FF0 - movs r0, 0x1 - bl sub_80073E0 - add r0, sp, 0x4 - movs r2, 0x1 - strh r2, [r0, 0x18] - movs r1, 0x2 - strh r1, [r0, 0x1A] - strh r1, [r0, 0x1C] - strh r4, [r0, 0x1E] - strh r4, [r0, 0x20] - strh r4, [r0, 0x4] - strh r4, [r0, 0x6] - str r2, [sp, 0x4] - strh r4, [r0, 0xC] - strh r4, [r0, 0xE] - strh r4, [r0, 0x14] - strh r4, [r0, 0x16] - movs r1, 0x8 - strh r1, [r0, 0x8] - strh r1, [r0, 0xA] - movs r1, 0x18 - bl sub_80137B0 - adds r0, r6, 0 - bl sub_801317C - ldr r4, _08010D7C -_08010D18: - add r0, sp, 0x4 - bl AddMenuCursorSprite - bl sub_8010960 - ldrh r1, [r4, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08010D36 - add r0, sp, 0x4 - bl MoveMenuCursorDown - bl sub_80117F8 -_08010D36: - ldrh r1, [r4, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08010D4A - add r0, sp, 0x4 - bl MoveMenuCursorUp - bl sub_80117F8 -_08010D4A: - ldrh r1, [r4, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08010D5E - mov r0, sp - adds r0, 0x2D - ldrb r0, [r0] - cmp r0, 0 - beq _08010D18 -_08010D5E: - bl sub_80117D0 - add r0, sp, 0x4 - movs r1, 0x18 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _08010D80 - movs r0, 0 - b _08010D82 - .align 2, 0 -_08010D70: .4byte gUnknown_203B0EC -_08010D74: .4byte gUnknown_80D407C -_08010D78: .4byte gUnknown_80D4080 -_08010D7C: .4byte gUnknown_20255F0 -_08010D80: - movs r0, 0x1 -_08010D82: - add sp, 0x38 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8010C58 - - thumb_func_start sub_8010D8C -sub_8010D8C: - lsls r0, 24 - ldr r2, _08010DA0 - lsrs r0, 22 - adds r0, r2 - ldrh r2, [r0] - strh r2, [r1] - ldrh r0, [r0, 0x2] - strh r0, [r1, 0x2] - bx lr - .align 2, 0 -_08010DA0: .4byte gUnknown_80D3F14 - thumb_func_end sub_8010D8C - - thumb_func_start sub_8010DA4 -sub_8010DA4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - bl sub_808D33C - mov r9, r0 - ldr r6, _08010EBC - ldr r0, [r6] - ldr r5, _08010EC0 - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - mov r10, r0 - ldr r0, [r6, 0x4] - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - adds r7, r0, 0 - ldr r1, _08010EC4 - mov r0, r9 - movs r3, 0x8 - ldrsh r2, [r0, r3] - mov r0, sp - bl sprintf - ldr r0, _08010EC8 - mov r8, r0 - mov r0, sp - mov r1, r8 - bl OpenFileAndGetFileDataPtr - ldr r4, _08010ECC - ldr r1, [r4] - str r0, [r1, 0xC] - ldr r0, _08010ED0 - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, [r4] - str r0, [r1, 0x8] - ldr r0, [r6, 0x8] - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, [r4] - str r0, [r1, 0x10] - ldr r0, _08010ED4 - mov r1, r8 - bl OpenFileAndGetFileDataPtr - ldr r1, [r4] - str r0, [r1, 0x4] - ldr r0, [r6, 0xC] - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, [r4] - str r0, [r1] - mov r1, r9 - movs r2, 0x8 - ldrsh r0, [r1, r2] - movs r1, 0 - bl sub_808DD68 - ldr r2, [r4] - ldr r3, _08010ED8 - adds r1, r2, r3 - lsls r0, 24 - lsrs r0, 24 - str r0, [r1] - ldr r0, [r2, 0x8] - movs r1, 0x40 - movs r2, 0x1F - movs r3, 0 - bl sub_8005610 - ldr r0, _08010EDC - movs r1, 0 - mov r2, r10 - bl sub_800AE28 - ldr r1, [r4] - ldr r2, _08010EE0 - adds r0, r1, r2 - ldr r1, [r1, 0x10] - movs r2, 0x10 - bl sub_8004AA4 - movs r1, 0x80 - lsls r1, 7 - ldr r0, [r4] - adds r0, 0x14 - adds r2, r7, 0 - bl sub_800AAA8 - ldr r1, [r4] - ldr r3, _08010EE4 - adds r0, r1, r3 - movs r2, 0 - str r2, [r0] - adds r3, 0x8 - adds r0, r1, r3 - strh r2, [r0] - ldr r0, _08010EE8 - adds r1, r0 - strh r2, [r1] - ldr r5, _08010EEC - movs r3, 0 - movs r1, 0x7 -_08010E84: - ldr r0, [r4] - adds r0, r2, r0 - adds r0, r5 - strh r3, [r0] - adds r2, 0x3C - subs r1, 0x1 - cmp r1, 0 - bge _08010E84 - mov r0, r10 - bl CloseFile - adds r0, r7, 0 - bl CloseFile - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08010EBC: .4byte gUnknown_80D408C -_08010EC0: .4byte gUnknown_8380000 -_08010EC4: .4byte gUnknown_80D40E4 -_08010EC8: .4byte gUnknown_8510000 -_08010ECC: .4byte gUnknown_203B0E4 -_08010ED0: .4byte gUnknown_80D40EC -_08010ED4: .4byte gUnknown_80D40F4 -_08010ED8: .4byte 0x00004dd0 -_08010EDC: .4byte 0x06008000 -_08010EE0: .4byte 0x00004c4c -_08010EE4: .4byte 0x00004dcc -_08010EE8: .4byte 0x00004dd6 -_08010EEC: .4byte 0x00004a30 - thumb_func_end sub_8010DA4 - - thumb_func_start sub_8010EF0 -sub_8010EF0: - push {r4,lr} - ldr r4, _08010F24 - ldr r0, [r4] - ldr r0, [r0, 0x10] - bl CloseFile - ldr r0, [r4] - ldr r0, [r0, 0x8] - bl CloseFile - ldr r0, [r4] - ldr r0, [r0, 0xC] - bl CloseFile - ldr r0, [r4] - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - ldr r0, [r0, 0x4] - bl CloseFile - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08010F24: .4byte gUnknown_203B0E4 - thumb_func_end sub_8010EF0 - - thumb_func_start sub_8010F28 -sub_8010F28: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - add r0, sp, 0x8 - bl sub_8004E8C - add r1, sp, 0x8 - ldr r0, _08011080 - strh r0, [r1, 0x4] - movs r0, 0x80 - lsls r0, 4 - strh r0, [r1, 0xA] - ldr r6, _08011084 - ldr r0, [r6] - ldr r2, _08011088 - adds r1, r0, r2 - ldr r1, [r1] - mov r8, r1 - ldr r4, _0801108C - adds r0, r4 - bl sub_80054BC - ldr r3, [r6] - adds r4, r3, r4 - ldr r7, _08011090 - adds r0, r3, r7 - movs r2, 0 - ldrsh r1, [r0, r2] - mov r7, r8 - lsls r5, r7, 16 - asrs r5, 16 - subs r1, r5 - ldr r2, _08011094 - adds r0, r3, r2 - movs r7, 0 - ldrsh r2, [r0, r7] - mov r7, r8 - asrs r0, r7, 16 - subs r2, r0 - ldr r0, _08011098 - adds r3, r0 - ldr r0, [r3] - str r0, [sp] - add r3, sp, 0x8 - str r3, [sp, 0x4] - adds r0, r4, 0 - movs r3, 0x3 - bl sub_800558C - movs r7, 0 - mov r10, r6 - ldr r6, _0801109C - mov r9, r5 -_08010F98: - mov r4, r10 - ldr r0, [r4] - adds r4, r0, r6 - ldr r1, _080110A0 - adds r0, r1 - lsls r1, r7, 5 - ldr r0, [r0] - adds r5, r0, r1 - ldrb r0, [r4] - cmp r0, 0 - beq _08010FD8 - adds r4, 0x14 - adds r0, r4, 0 - bl sub_80054BC - movs r2, 0x4 - ldrsh r1, [r5, r2] - mov r3, r9 - subs r1, r3 - movs r0, 0x6 - ldrsh r2, [r5, r0] - mov r3, r8 - asrs r0, r3, 16 - subs r2, r0 - movs r0, 0 - str r0, [sp] - add r0, sp, 0x8 - str r0, [sp, 0x4] - adds r0, r4, 0 - movs r3, 0x1 - bl sub_800558C -_08010FD8: - adds r6, 0x50 - adds r7, 0x1 - cmp r7, 0x1F - ble _08010F98 - movs r5, 0 - ldr r1, _08011084 - mov r9, r1 - ldr r6, _080110A4 - movs r2, 0 - str r2, [sp, 0x14] -_08010FEC: - mov r3, r9 - ldr r1, [r3] - ldr r4, [sp, 0x14] - adds r0, r4, r1 - ldr r7, _080110A4 - adds r0, r7 - ldrh r0, [r0] - lsrs r0, 15 - cmp r0, 0 - beq _08011062 - adds r0, r1, r6 - bl sub_80054BC - ldr r0, _080110A8 - ldrh r0, [r0] - movs r2, 0x80 - lsls r2, 1 - adds r1, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0801101E - movs r0, 0x1 - ands r0, r5 - cmp r0, 0 - beq _08011062 -_0801101E: - mov r3, r9 - ldr r4, [r3] - adds r0, r4, r6 - ldr r1, _080110AC - lsls r3, r5, 2 - adds r3, r1 - movs r7, 0 - ldrsh r1, [r3, r7] - ldr r7, _08011090 - adds r2, r4, r7 - movs r7, 0 - ldrsh r2, [r2, r7] - adds r1, r2 - mov r7, r8 - lsls r2, r7, 16 - asrs r2, 16 - subs r1, r2 - movs r7, 0x2 - ldrsh r2, [r3, r7] - ldr r3, _08011094 - adds r3, r4 - movs r4, 0 - ldrsh r3, [r3, r4] - adds r2, r3 - mov r7, r8 - asrs r3, r7, 16 - subs r2, r3 - movs r3, 0 - str r3, [sp] - add r3, sp, 0x8 - str r3, [sp, 0x4] - movs r3, 0x2 - bl sub_800558C -_08011062: - adds r6, 0x3C - ldr r4, [sp, 0x14] - adds r4, 0x3C - str r4, [sp, 0x14] - adds r5, 0x1 - cmp r5, 0x7 - ble _08010FEC - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08011080: .4byte 0x0000f3ff -_08011084: .4byte gUnknown_203B0E4 -_08011088: .4byte 0x00004dd4 -_0801108C: .4byte 0x00004c10 -_08011090: .4byte 0x00004dd8 -_08011094: .4byte 0x00004dda -_08011098: .4byte 0x00004dd0 -_0801109C: .4byte 0x00004018 -_080110A0: .4byte 0x00004014 -_080110A4: .4byte 0x00004a30 -_080110A8: .4byte gUnknown_20255F0 -_080110AC: .4byte gUnknown_80D40C4 - thumb_func_end sub_8010F28 - - thumb_func_start sub_80110B0 -sub_80110B0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r0, _08011150 - ldr r1, [r0] - ldr r2, _08011154 - adds r1, r2 - ldrh r1, [r1] - lsls r1, 16 - asrs r6, r1, 19 - adds r2, r6, 0 - movs r3, 0 - mov r10, r0 - movs r0, 0x1F - mov r9, r0 -_080110D4: - mov r1, r10 - ldr r0, [r1] - ldr r1, _08011158 - adds r0, r1 - ldrh r0, [r0] - lsls r0, 16 - asrs r4, r0, 19 - lsls r1, r2, 7 - adds r2, 0x1 - mov r12, r2 - adds r3, 0x1 - mov r8, r3 - movs r7, 0x1E - lsls r0, r4, 1 - adds r5, r0, r1 -_080110F2: - mov r2, r9 - ands r4, r2 - ands r6, r2 - lsls r2, r4, 1 - lsls r0, r6, 6 - adds r2, r0 - ldr r3, _0801115C - adds r3, r2, r3 - str r3, [sp] - mov r0, r10 - ldr r1, [r0] - ldr r3, _08011160 - adds r0, r1, r3 - adds r0, r5 - ldrh r0, [r0] - ldr r3, [sp] - strh r0, [r3] - ldr r0, _08011164 - adds r2, r0 - adds r1, 0x14 - adds r1, r5 - ldrh r0, [r1] - strh r0, [r2] - adds r5, 0x2 - adds r4, 0x1 - subs r7, 0x1 - cmp r7, 0 - bge _080110F2 - mov r2, r12 - adds r6, 0x1 - mov r3, r8 - cmp r3, 0x14 - ble _080110D4 - movs r0, 0x2 - bl sub_80098F8 - movs r0, 0x3 - bl sub_80098F8 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08011150: .4byte gUnknown_203B0E4 -_08011154: .4byte 0x00004dd6 -_08011158: .4byte 0x00004dd4 -_0801115C: .4byte gUnknown_202C038 -_08011160: .4byte 0x00002014 -_08011164: .4byte gUnknown_202C838 - thumb_func_end sub_80110B0 - - thumb_func_start sub_8011168 -sub_8011168: - push {r4,r5,lr} - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r3, _080111B0 - ldr r1, [r3] - ldr r2, _080111B4 - adds r0, r1, r2 - movs r2, 0 - str r2, [r0] - ldr r4, _080111B8 - adds r0, r1, r4 - str r2, [r0] - adds r4, 0x4 - adds r0, r1, r4 - str r2, [r0] - ldr r0, _080111BC - adds r1, r0 - str r2, [r1] - adds r5, r3, 0 - ldr r4, _080111C0 - movs r3, 0 - movs r1, 0x7 -_0801119A: - ldr r0, [r5] - adds r0, r2, r0 - adds r0, r4 - strh r3, [r0] - adds r2, 0x3C - subs r1, 0x1 - cmp r1, 0 - bge _0801119A - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080111B0: .4byte gUnknown_203B0E4 -_080111B4: .4byte 0x00004ddc -_080111B8: .4byte 0x00004de0 -_080111BC: .4byte 0x00004de8 -_080111C0: .4byte 0x00004a30 - thumb_func_end sub_8011168 - - thumb_func_start sub_80111C4 -sub_80111C4: - push {r4-r6,lr} - movs r3, 0 - ldr r6, _08011238 - ldr r0, [r6] - ldr r2, _0801123C - adds r1, r0, r2 - ldr r2, [r1] - cmp r2, 0x1E - bgt _0801122E - ldr r0, [r0] - ldr r5, [r0, 0x4] - adds r0, r2, 0x1 - str r0, [r1] - cmp r0, 0x1E - ble _080111E6 - movs r0, 0x1F - str r0, [r1] -_080111E6: - movs r4, 0 -_080111E8: - ldr r0, [r6] - ldr r1, _0801123C - adds r0, r1 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - adds r4, 0x1 - cmp r4, 0xDF - ble _080111E8 - ldr r0, _08011238 - ldr r0, [r0] - ldr r0, [r0, 0x4] - ldr r5, [r0, 0x4] - movs r4, 0 -_0801120C: - movs r2, 0x80 - lsls r2, 1 - adds r0, r4, r2 - ldr r1, _08011238 - ldr r1, [r1] - ldr r2, _0801123C - adds r1, r2 - ldr r2, [r1] - adds r1, r5, 0 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - adds r4, 0x1 - cmp r4, 0xEF - ble _0801120C - movs r3, 0x1 -_0801122E: - adds r0, r3, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08011238: .4byte gUnknown_203B0E4 -_0801123C: .4byte 0x00004dcc - thumb_func_end sub_80111C4 - - thumb_func_start sub_8011240 -sub_8011240: - push {r4-r6,lr} - ldr r2, _08011264 - ldr r0, [r2] - ldr r1, _08011268 - adds r3, r0, r1 - movs r4, 0 - ldrsh r1, [r3, r4] - ldr r5, _0801126C - adds r4, r0, r5 - movs r6, 0 - ldrsh r0, [r4, r6] - subs r1, r0 - adds r5, r2, 0 - cmp r1, 0x2F - bgt _08011270 - ldrh r0, [r3] - subs r0, 0x30 - b _08011278 - .align 2, 0 -_08011264: .4byte gUnknown_203B0E4 -_08011268: .4byte 0x00004dd8 -_0801126C: .4byte 0x00004dd4 -_08011270: - cmp r1, 0xC0 - ble _0801127A - ldrh r0, [r3] - subs r0, 0xC0 -_08011278: - strh r0, [r4] -_0801127A: - ldr r0, [r5] - ldr r1, _08011298 - adds r3, r0, r1 - movs r2, 0 - ldrsh r1, [r3, r2] - ldr r4, _0801129C - adds r2, r0, r4 - movs r6, 0 - ldrsh r0, [r2, r6] - subs r1, r0 - cmp r1, 0x2F - bgt _080112A0 - ldrh r0, [r3] - subs r0, 0x30 - b _080112A8 - .align 2, 0 -_08011298: .4byte 0x00004dda -_0801129C: .4byte 0x00004dd6 -_080112A0: - cmp r1, 0x70 - ble _080112AA - ldrh r0, [r3] - subs r0, 0x70 -_080112A8: - strh r0, [r2] -_080112AA: - adds r3, r5, 0 - ldr r0, [r3] - ldr r4, _080112F8 - adds r1, r0, r4 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - bge _080112BE - movs r0, 0 - strh r0, [r1] -_080112BE: - ldr r0, [r3] - ldr r2, _080112FC - adds r1, r0, r2 - movs r6, 0 - ldrsh r0, [r1, r6] - cmp r0, 0 - bge _080112D0 - movs r0, 0 - strh r0, [r1] -_080112D0: - ldr r0, [r3] - adds r1, r0, r4 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0xEF - ble _080112E0 - movs r0, 0xEF - strh r0, [r1] -_080112E0: - ldr r0, [r5] - adds r2, r0, r2 - movs r4, 0 - ldrsh r0, [r2, r4] - cmp r0, 0x97 - ble _080112F0 - movs r0, 0x97 - strh r0, [r2] -_080112F0: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080112F8: .4byte 0x00004dd4 -_080112FC: .4byte 0x00004dd6 - thumb_func_end sub_8011240 - - thumb_func_start sub_8011300 -sub_8011300: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xC - ldr r0, _08011388 - ldr r2, [r0] - ldr r1, _0801138C - adds r0, r2, r1 - ldr r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - ldr r3, _08011390 - adds r0, r3 - adds r2, r0 - mov r9, r2 - movs r4, 0 - ldr r0, _08011394 - mov r8, r0 - movs r7, 0 - mov r6, r8 - movs r5, 0 -_0801132E: - ldr r0, _08011388 - ldr r2, [r0] - adds r0, r5, r2 - add r0, r8 - strh r7, [r0] - lsls r1, r4, 1 - mov r0, r9 - adds r0, 0x2 - adds r1, r0, r1 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - blt _08011370 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 4 - ldr r0, _08011390 - adds r1, r0 - adds r1, r2, r1 - ldrb r0, [r1] - cmp r0, 0 - beq _08011370 - adds r0, r2, r6 - ldr r1, [r2, 0x8] - adds r2, r4, 0x4 - movs r3, 0x40 - str r3, [sp] - str r7, [sp, 0x4] - movs r3, 0x1 - str r3, [sp, 0x8] - movs r3, 0 - bl sub_80053AC -_08011370: - adds r6, 0x3C - adds r5, 0x3C - adds r4, 0x1 - cmp r4, 0x7 - ble _0801132E - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08011388: .4byte gUnknown_203B0E4 -_0801138C: .4byte 0x00004a18 -_08011390: .4byte 0x00004018 -_08011394: .4byte 0x00004a30 - thumb_func_end sub_8011300 - - thumb_func_start sub_8011398 -sub_8011398: - push {r4-r6,lr} - sub sp, 0x12C - ldr r5, _080113F4 - ldr r0, [r5] - ldr r2, _080113F8 - adds r1, r0, r2 - ldr r1, [r1] - ldr r3, _080113FC - adds r0, r3 - lsls r1, 5 - ldr r0, [r0] - adds r6, r0, r1 - add r4, sp, 0xCC - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r2, 0x3 - str r2, [r4, 0x4] - movs r0, 0x7 - strh r0, [r4, 0x8] - movs r1, 0x2 - strh r1, [r4, 0xA] - movs r0, 0x15 - strh r0, [r4, 0xC] - strh r1, [r4, 0xE] - strh r1, [r4, 0x10] - str r2, [r4, 0x1C] - str r2, [r4, 0x34] - str r2, [r4, 0x4C] - ldr r0, [r5] - ldr r2, _08011400 - adds r1, r0, r2 - movs r3, 0 - ldrsh r1, [r1, r3] - subs r2, 0x4 - adds r0, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - subs r1, r0 - cmp r1, 0x50 - bgt _08011404 - movs r0, 0x11 - b _08011406 - .align 2, 0 -_080113F4: .4byte gUnknown_203B0E4 -_080113F8: .4byte 0x00004a18 -_080113FC: .4byte 0x00004014 -_08011400: .4byte 0x00004dda -_08011404: - movs r0, 0x1 -_08011406: - strh r0, [r4, 0xA] - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0 - bl sub_80073B8 - ldr r1, _0801147C - ldr r2, [r6] - add r0, sp, 0x4 - bl sub_800D158 - movs r0, 0 - str r0, [sp] - movs r0, 0xC - movs r1, 0x2 - add r2, sp, 0x4 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - ldr r0, _08011480 - ldr r1, [r0] - ldr r0, _08011484 - adds r2, r1, r0 - movs r3, 0x8 - ldrsh r0, [r4, r3] - lsls r0, 3 - subs r0, 0x5 - str r0, [r2] - ldr r0, _08011488 - adds r2, r1, r0 - movs r3, 0xA - ldrsh r0, [r4, r3] - lsls r0, 3 - adds r0, 0x5 - str r0, [r2] - ldr r0, _0801148C - adds r2, r1, r0 - movs r3, 0xC - ldrsh r0, [r4, r3] - lsls r0, 3 - adds r0, 0xA - str r0, [r2] - ldr r0, _08011490 - adds r1, r0 - movs r2, 0xE - ldrsh r0, [r4, r2] - lsls r0, 3 - adds r0, 0xA - str r0, [r1] - add sp, 0x12C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801147C: .4byte gUnknown_80D40FC -_08011480: .4byte gUnknown_203B0E4 -_08011484: .4byte 0x00004ddc -_08011488: .4byte 0x00004de0 -_0801148C: .4byte 0x00004de4 -_08011490: .4byte 0x00004de8 - thumb_func_end sub_8011398 - - thumb_func_start sub_8011494 -sub_8011494: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC8 - ldr r0, _08011610 - ldr r2, [r0] - ldr r1, _08011614 - adds r0, r2, r1 - ldr r0, [r0] - ldr r3, _08011618 - adds r1, r2, r3 - lsls r0, 5 - ldr r1, [r1] - adds r1, r0 - mov r8, r1 - ldr r0, _0801161C - adds r7, r2, r0 - add r4, sp, 0x64 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x68] - add r1, sp, 0x6C - movs r0, 0x7 - strh r0, [r1] - movs r2, 0x2 - strh r2, [r1, 0x2] - add r1, sp, 0x70 - movs r0, 0x15 - strh r0, [r1] - mov r0, sp - adds r0, 0x72 - strh r2, [r0] - add r0, sp, 0x74 - strh r2, [r0] - add r5, sp, 0xC4 - str r5, [sp, 0x78] - movs r1, 0x3 - str r1, [sp, 0x80] - add r0, sp, 0x94 - str r1, [r0, 0x4] - add r0, sp, 0xAC - str r1, [r0, 0x4] - add r0, sp, 0x4 - adds r1, r4, 0 - movs r2, 0x60 - bl memcpy - movs r1, 0 - mov r9, r1 - movs r6, 0 - mov r10, r5 -_08011506: - mov r0, r8 - adds r0, 0x8 - adds r4, r0, r6 - ldrb r0, [r4] - bl sub_800FFE8 - lsls r0, 24 - cmp r0, 0 - beq _0801152A - ldr r0, _08011610 - ldr r0, [r0] - ldr r2, _08011620 - adds r0, r2 - add r0, r9 - ldrb r1, [r4] - strb r1, [r0] - movs r3, 0x1 - add r9, r3 -_0801152A: - adds r6, 0x1 - cmp r6, 0x7 - ble _08011506 - ldr r5, _08011610 - ldr r0, [r5] - ldr r1, _08011624 - adds r0, r1 - mov r2, r9 - str r2, [r0] - movs r4, 0 - movs r0, 0x1 - mov r3, r10 - strb r0, [r3] - add r0, sp, 0xC4 - strb r4, [r0, 0x1] - movs r1, 0x12 - strb r1, [r0, 0x2] - strb r4, [r0, 0x3] - strh r4, [r7, 0x18] - strh r2, [r7, 0x1A] - mov r0, r9 - strh r0, [r7, 0x1C] - strh r4, [r7, 0x1E] - strh r4, [r7, 0x20] - strh r4, [r7, 0x4] - movs r0, 0x10 - strh r0, [r7, 0x6] - str r4, [r7] - strh r4, [r7, 0xC] - strh r4, [r7, 0xE] - strh r4, [r7, 0x14] - strh r4, [r7, 0x16] - movs r0, 0x8 - strh r0, [r7, 0x8] - strh r0, [r7, 0xA] - adds r0, r7, 0 - adds r0, 0x28 - bl sub_801317C - movs r1, 0x1C - ldrsh r0, [r7, r1] - movs r1, 0 - bl sub_80095E4 - adds r1, r0, 0 - add r3, sp, 0x4 - adds r2, r3, 0 - adds r0, r1, 0x2 - strh r0, [r2, 0xE] - strh r0, [r3, 0x10] - lsls r1, 3 - adds r0, r7, 0 - bl sub_80137B0 - add r0, sp, 0x4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, [r5] - ldr r2, _08011628 - adds r0, r1, r2 - str r4, [r0] - ldr r3, _0801162C - adds r0, r1, r3 - str r4, [r0] - adds r2, 0x8 - adds r0, r1, r2 - str r4, [r0] - adds r3, 0x8 - adds r1, r3 - str r4, [r1] - movs r0, 0 - bl sub_80073B8 - ldr r2, _08011630 - str r4, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - movs r6, 0 - cmp r6, r9 - bge _08011678 - add r0, sp, 0x64 - mov r8, r0 - ldr r1, _08011634 - mov r10, r1 -_080115DC: - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_8013800 - adds r4, r0, 0 - ldr r2, _08011610 - ldr r0, [r2] - ldr r3, _08011620 - adds r0, r3 - adds r0, r6 - ldrb r5, [r0] - ldr r0, _08011638 - adds r1, r5, 0 - bl sub_80101F8 - cmp r5, 0 - bne _08011640 - str r5, [sp] - movs r0, 0xC - adds r1, r4, 0 - ldr r2, _0801163C - movs r3, 0 - bl sub_8014FF0 - b _08011672 - .align 2, 0 -_08011610: .4byte gUnknown_203B0E4 -_08011614: .4byte 0x00004a18 -_08011618: .4byte 0x00004014 -_0801161C: .4byte 0x00004dfc -_08011620: .4byte 0x00004dec -_08011624: .4byte 0x00004df8 -_08011628: .4byte 0x00004ddc -_0801162C: .4byte 0x00004de0 -_08011630: .4byte gUnknown_80D4104 -_08011634: .4byte gUnknown_202DE30 -_08011638: .4byte gUnknown_202DE58 -_0801163C: .4byte gUnknown_80D4120 -_08011640: - ldr r1, _08011690 - ldr r0, [r1] - ldr r2, _08011694 - adds r0, r2 - ldrb r2, [r0] - adds r0, r5, 0 - mov r1, r8 - bl sub_80926F8 - mov r3, r8 - movs r1, 0x2 - ldrsh r0, [r3, r1] - mov r2, r10 - str r0, [r2] - movs r1, 0 - ldrsh r0, [r3, r1] - str r0, [r2, 0x4] - movs r0, 0 - str r0, [sp] - movs r0, 0xC - adds r1, r4, 0 - ldr r2, _08011698 - movs r3, 0 - bl sub_8014FF0 -_08011672: - adds r6, 0x1 - cmp r6, r9 - blt _080115DC -_08011678: - movs r0, 0 - bl sub_80073E0 - add sp, 0xC8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08011690: .4byte gUnknown_203B0E4 -_08011694: .4byte 0x00004a2c -_08011698: .4byte gUnknown_80D4124 - thumb_func_end sub_8011494 - - thumb_func_start sub_801169C -sub_801169C: - push {r4-r6,lr} - sub sp, 0x8 - ldr r5, _08011744 - ldr r1, [r5] - ldr r4, _08011748 - adds r0, r1, r4 - movs r2, 0 - ldrsh r0, [r0, r2] - ldr r6, _0801174C - adds r1, r6 - movs r3, 0 - ldrsh r1, [r1, r3] - bl sub_800CCA0 - ldr r1, [r5] - adds r4, r1, r4 - movs r2, 0 - ldrsh r0, [r4, r2] - adds r1, r6 - movs r3, 0 - ldrsh r1, [r1, r3] - bl sub_800CCAC - bl sub_8010F28 - bl sub_80111C4 - lsls r0, 24 - lsrs r0, 24 - ldr r2, [r5] - ldr r3, _08011750 - adds r1, r2, r3 - ldr r3, _08011754 - adds r2, r3 - ldr r2, [r2] - str r2, [sp] - movs r2, 0 - str r2, [sp, 0x4] - movs r2, 0xB0 - movs r3, 0x10 - bl sub_8004AF0 - movs r0, 0 - movs r1, 0 - bl sub_8005838 - ldr r0, _08011758 - ldr r0, [r0] - ldrb r0, [r0, 0xA] - bl nullsub_8 - bl sub_8005180 - bl sub_80060EC - ldr r0, _0801175C - ldr r0, [r0] - bl sub_8094FB4 - bl sub_800CB20 - bl sub_800485C - bl CopySpritesToOam - bl sub_8005304 - bl TransferBGPaletteBuffer - bl xxx_call_update_bg_vram - bl sub_8009908 - bl xxx_call_update_bg_sound_input - bl sub_8011860 - movs r0, 0 - bl sub_8004D8C - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08011744: .4byte gUnknown_203B0E4 -_08011748: .4byte 0x00004dd4 -_0801174C: .4byte 0x00004dd6 -_08011750: .4byte 0x00004c4c -_08011754: .4byte 0x00004dcc -_08011758: .4byte gUnknown_203B46C -_0801175C: .4byte gUnknown_203B47C - thumb_func_end sub_801169C - - thumb_func_start sub_8011760 -sub_8011760: - push {lr} - movs r0, 0xD - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _08011776 - movs r0, 0x13 - bl sub_800BDFC - b _08011788 -_08011776: - movs r0, 0xC - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _08011788 - movs r0, 0x7 - bl sub_800BDFC -_08011788: - pop {r0} - bx r0 - thumb_func_end sub_8011760 - - thumb_func_start sub_801178C -sub_801178C: - push {lr} - movs r0, 0xD - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080117A2 - movs r0, 0x13 - bl sub_800BDFC - b _080117A8 -_080117A2: - movs r0, 0x7 - bl sub_800BDFC -_080117A8: - pop {r0} - bx r0 - thumb_func_end sub_801178C - - thumb_func_start sub_80117AC -sub_80117AC: - push {lr} - movs r0, 0xD - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _080117C0 - movs r0, 0x1E - bl sub_800BFD0 -_080117C0: - pop {r0} - bx r0 - thumb_func_end sub_80117AC - - thumb_func_start sub_80117C4 -sub_80117C4: - push {lr} - movs r0, 0x1E - bl sub_800BFD0 - pop {r0} - bx r0 - thumb_func_end sub_80117C4 - - thumb_func_start sub_80117D0 -sub_80117D0: - push {lr} - movs r0, 0x97 - lsls r0, 1 - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 - pop {r0} - bx r0 - thumb_func_end sub_80117D0 - - thumb_func_start sub_80117E4 -sub_80117E4: - push {lr} - ldr r0, _080117F4 - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 - pop {r0} - bx r0 - .align 2, 0 -_080117F4: .4byte 0x0000012f - thumb_func_end sub_80117E4 - - thumb_func_start sub_80117F8 -sub_80117F8: - push {lr} - ldr r0, _08011808 - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 - pop {r0} - bx r0 - .align 2, 0 -_08011808: .4byte 0x0000012d - thumb_func_end sub_80117F8 - - thumb_func_start sub_801180C -sub_801180C: - ldr r0, _08011820 - movs r1, 0 - str r1, [r0] - ldr r0, _08011824 - strh r1, [r0] - ldr r0, _08011828 - strh r1, [r0] - ldr r0, _0801182C - strh r1, [r0] - bx lr - .align 2, 0 -_08011820: .4byte gUnknown_202DE1C -_08011824: .4byte gUnknown_202DE20 -_08011828: .4byte gUnknown_202DE22 -_0801182C: .4byte gUnknown_202DE24 - thumb_func_end sub_801180C - - thumb_func_start sub_8011830 -sub_8011830: - push {lr} - bl sub_800C93C - ldr r0, _08011848 - movs r1, 0 - strh r1, [r0] - ldr r0, _0801184C - strh r1, [r0] - ldr r0, _08011850 - strh r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_08011848: .4byte gUnknown_202DE20 -_0801184C: .4byte gUnknown_202DE22 -_08011850: .4byte gUnknown_202DE24 - thumb_func_end sub_8011830 - - thumb_func_start sub_8011854 -sub_8011854: - push {lr} - bl sub_800C9CC - pop {r0} - bx r0 - thumb_func_end sub_8011854 - - thumb_func_start sub_8011860 -sub_8011860: - push {lr} - ldr r1, _08011898 - ldrh r2, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - ble _08011872 - subs r0, r2, 0x1 - strh r0, [r1] -_08011872: - ldr r1, _0801189C - ldrh r2, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - ble _08011882 - subs r0, r2, 0x1 - strh r0, [r1] -_08011882: - ldr r1, _080118A0 - ldrh r2, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - ble _08011892 - subs r0, r2, 0x1 - strh r0, [r1] -_08011892: - pop {r0} - bx r0 - .align 2, 0 -_08011898: .4byte gUnknown_202DE20 -_0801189C: .4byte gUnknown_202DE22 -_080118A0: .4byte gUnknown_202DE24 - thumb_func_end sub_8011860 - - thumb_func_start sub_80118A4 -sub_80118A4: - push {lr} - bl sub_8011924 - ldr r0, _080118BC - bl sub_801199C - ldr r0, _080118C0 - bl sub_801199C - pop {r0} - bx r0 - .align 2, 0 -_080118BC: .4byte 0x000003e6 -_080118C0: .4byte 0x000003e5 - thumb_func_end sub_80118A4 - - thumb_func_start sub_80118C4 -sub_80118C4: - push {r4,lr} - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r4, 0 - bl sub_800BFD0 - ldr r0, _080118E8 - adds r1, r4, 0 - bl sub_800C3F8 - ldr r0, _080118EC - adds r1, r4, 0 - bl sub_800C3F8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080118E8: .4byte 0x000003e6 -_080118EC: .4byte 0x000003e5 - thumb_func_end sub_80118C4 - - thumb_func_start sub_80118F0 -sub_80118F0: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800BDFC - pop {r0} - bx r0 - thumb_func_end sub_80118F0 - - thumb_func_start sub_8011900 -sub_8011900: - push {lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 16 - lsrs r1, 16 - bl sub_800BE8C - pop {r0} - bx r0 - thumb_func_end sub_8011900 - - thumb_func_start sub_8011914 -sub_8011914: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800BF48 - pop {r0} - bx r0 - thumb_func_end sub_8011914 - - thumb_func_start sub_8011924 -sub_8011924: - push {lr} - bl sub_800BF80 - pop {r0} - bx r0 - thumb_func_end sub_8011924 - - thumb_func_start sub_8011930 -sub_8011930: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800BFD0 - pop {r0} - bx r0 - thumb_func_end sub_8011930 - - thumb_func_start sub_8011940 -sub_8011940: - push {r4,lr} - lsls r0, 16 - lsrs r4, r0, 16 - bl sub_800C068 - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _08011960 - cmp r4, r0 - bne _08011964 - eors r1, r4 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - b _0801196C - .align 2, 0 -_08011960: .4byte 0x000003e7 -_08011964: - movs r0, 0 - cmp r1, r4 - bne _0801196C - movs r0, 0x1 -_0801196C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8011940 - - thumb_func_start sub_8011974 -sub_8011974: - push {lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 16 - lsrs r1, 16 - bl sub_800C074 - pop {r0} - bx r0 - thumb_func_end sub_8011974 - - thumb_func_start sub_8011988 -sub_8011988: - push {lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 - pop {r0} - bx r0 - thumb_func_end sub_8011988 - - thumb_func_start sub_801199C -sub_801199C: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800C298 - pop {r0} - bx r0 - thumb_func_end sub_801199C - - thumb_func_start sub_80119AC -sub_80119AC: - push {lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 16 - lsrs r1, 16 - bl sub_800C3F8 - pop {r0} - bx r0 - thumb_func_end sub_80119AC - - thumb_func_start sub_80119C0 -sub_80119C0: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800C5D0 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_80119C0 - - thumb_func_start sub_80119D4 -sub_80119D4: - push {r4,lr} - adds r2, r0, 0 - ldr r4, _080119FC - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - bgt _080119F6 - ldr r1, _08011A00 - lsls r0, r2, 1 - adds r0, r1 - ldrh r0, [r0] - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 - movs r0, 0x4 - strh r0, [r4] -_080119F6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080119FC: .4byte gUnknown_202DE20 -_08011A00: .4byte gUnknown_80D4144 - thumb_func_end sub_80119D4 - - thumb_func_start sub_8011A04 -sub_8011A04: - push {lr} - ldr r1, _08011A24 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - bgt _08011A1E - movs r0, 0x3 - strh r0, [r1] - ldr r0, _08011A28 - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 -_08011A1E: - pop {r0} - bx r0 - .align 2, 0 -_08011A24: .4byte gUnknown_202DE22 -_08011A28: .4byte 0x00000131 - thumb_func_end sub_8011A04 - - thumb_func_start sub_8011A2C -sub_8011A2C: - ldr r1, _08011A34 - str r0, [r1] - bx lr - .align 2, 0 -_08011A34: .4byte gUnknown_202DE1C - thumb_func_end sub_8011A2C - - thumb_func_start NDS_DebugInit -NDS_DebugInit: - push {lr} - bl nullsub_26 - bl nullsub_27 - bl nullsub_29 - bl nullsub_30 - bl nullsub_31 - bl nullsub_32 - bl nullsub_28 - ldr r1, _08011A60 - movs r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_08011A60: .4byte gUnknown_203B14C - thumb_func_end NDS_DebugInit - - thumb_func_start nullsub_25 -nullsub_25: - bx lr - thumb_func_end nullsub_25 - - thumb_func_start nullsub_26 -nullsub_26: - bx lr - thumb_func_end nullsub_26 - - thumb_func_start PrintFuncFileLineOrNotEntry -PrintFuncFileLineOrNotEntry: - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r0, r1, 0 - cmp r0, 0 - beq _08011A90 - ldr r1, _08011A8C - ldr r2, [r0, 0x8] - ldr r3, [r0] - ldr r0, [r0, 0x4] - str r0, [sp] - adds r0, r4, 0 - bl sprintf - b _08011A98 - .align 2, 0 -_08011A8C: .4byte gUnknown_80D418C -_08011A90: - ldr r1, _08011AA0 - adds r0, r4, 0 - bl sprintf -_08011A98: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08011AA0: .4byte gUnknown_80D41B0 - thumb_func_end PrintFuncFileLineOrNotEntry - - thumb_func_start PrintFuncFileLine -PrintFuncFileLine: - push {r4,r5,lr} - sub sp, 0x8 - ldr r5, _08011AC4 - ldr r3, [r1, 0x8] - ldr r4, [r1] - str r4, [sp] - ldr r1, [r1, 0x4] - str r1, [sp, 0x4] - adds r1, r5, 0 - bl sprintf - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08011AC4: .4byte gUnknown_80D41C4 - thumb_func_end PrintFuncFileLine - - thumb_func_start PrintMessageWithFuncFileLine -PrintMessageWithFuncFileLine: - push {r2,r3} - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, [sp, 0x10] - add r2, sp, 0x14 - bl vsprintf - adds r0, r4, 0 - bl strlen - adds r4, r0 - ldr r1, _08011AFC - ldr r2, [r5, 0x8] - ldr r3, [r5] - ldr r0, [r5, 0x4] - str r0, [sp] - adds r0, r4, 0 - bl sprintf - add sp, 0x4 - pop {r4,r5} - pop {r3} - add sp, 0x8 - bx r3 - .align 2, 0 -_08011AFC: .4byte gUnknown_80D41EC - thumb_func_end PrintMessageWithFuncFileLine - - thumb_func_start nullsub_199 -nullsub_199: - bx lr - thumb_func_end nullsub_199 - - thumb_func_start nullsub_27 -nullsub_27: - bx lr - thumb_func_end nullsub_27 - - thumb_func_start sub_8011B08 -sub_8011B08: - ldr r1, _08011B10 - movs r0, 0x1 - strb r0, [r1] - bx lr - .align 2, 0 -_08011B10: .4byte gUnknown_203B150 - thumb_func_end sub_8011B08 - - thumb_func_start sub_8011B14 -sub_8011B14: - ldr r1, _08011B1C - movs r0, 0 - strb r0, [r1] - bx lr - .align 2, 0 -_08011B1C: .4byte gUnknown_203B150 - thumb_func_end sub_8011B14 - - thumb_func_start sub_8011B20 -sub_8011B20: - push {lr} - ldr r1, _08011B38 - movs r2, 0 - ldrb r0, [r1] - cmp r0, 0 - bne _08011B2E - movs r2, 0x1 -_08011B2E: - strb r2, [r1] - ldrb r0, [r1] - pop {r1} - bx r1 - .align 2, 0 -_08011B38: .4byte gUnknown_203B150 - thumb_func_end sub_8011B20 - - thumb_func_start sub_8011B3C -sub_8011B3C: - ldr r0, _08011B44 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08011B44: .4byte gUnknown_203B150 - thumb_func_end sub_8011B3C - - thumb_func_start nullsub_137 -nullsub_137: - bx lr - thumb_func_end nullsub_137 - - thumb_func_start FatalErrorPrintFuncFileLine -FatalErrorPrintFuncFileLine: - push {lr} - sub sp, 0x100 - adds r2, r0, 0 - cmp r2, 0 - beq _08011B5E - mov r0, sp - bl PrintFuncFileLine - b _08011B66 -_08011B5E: - ldr r2, _08011B6C - mov r0, sp - bl PrintFuncFileLine -_08011B66: - add sp, 0x100 - pop {r0} - bx r0 - .align 2, 0 -_08011B6C: .4byte gUnknown_80D421C - thumb_func_end FatalErrorPrintFuncFileLine - - thumb_func_start FatalErrorFormatMessage -FatalErrorFormatMessage: - push {r0-r3} - push {lr} - sub sp, 0x100 - ldr r1, [sp, 0x104] - add r2, sp, 0x108 - mov r0, sp - bl vsprintf - add sp, 0x100 - pop {r3} - add sp, 0x10 - bx r3 - thumb_func_end FatalErrorFormatMessage - - thumb_func_start sub_8011B88 -sub_8011B88: - push {r0-r3} - push {lr} - sub sp, 0x100 - ldr r1, [sp, 0x104] - add r2, sp, 0x108 - mov r0, sp - bl vsprintf - add sp, 0x100 - pop {r3} - add sp, 0x10 - bx r3 - thumb_func_end sub_8011B88 - - thumb_func_start nullsub_28 -nullsub_28: - bx lr - thumb_func_end nullsub_28 - - thumb_func_start sub_8011BA4 -sub_8011BA4: - movs r0, 0 - bx lr - thumb_func_end sub_8011BA4 - - thumb_func_start sub_8011BA8 -sub_8011BA8: - movs r0, 0 - bx lr - thumb_func_end sub_8011BA8 - - thumb_func_start sub_8011BAC -sub_8011BAC: - ldr r0, _08011BB0 - bx lr - .align 2, 0 -_08011BB0: .4byte gUnknown_80D4288 - thumb_func_end sub_8011BAC - - thumb_func_start sub_8011BB4 -sub_8011BB4: - push {lr} - bl Hang - pop {r0} - bx r0 - thumb_func_end sub_8011BB4 - - thumb_func_start Log -Log: - push {r1-r3} - add sp, 0xC - bx lr - thumb_func_end Log - - thumb_func_start sub_8011BC8 -sub_8011BC8: - push {r2,r3} - add sp, 0x8 - bx lr - thumb_func_end sub_8011BC8 - - thumb_func_start nullsub_29 -nullsub_29: - bx lr - thumb_func_end nullsub_29 - - thumb_func_start nullsub_30 -nullsub_30: - bx lr - thumb_func_end nullsub_30 - - thumb_func_start nullsub_31 -nullsub_31: - bx lr - thumb_func_end nullsub_31 - - thumb_func_start nullsub_32 -nullsub_32: - bx lr - thumb_func_end nullsub_32 - - thumb_func_start FatalErrorHang -FatalErrorHang: - push {lr} - bl Hang - pop {r0} - bx r0 - thumb_func_end FatalErrorHang - - thumb_func_start FatalError -FatalError: - push {r1-r3} - push {r4,lr} - sub sp, 0x100 - adds r1, r0, 0 - ldr r4, [sp, 0x108] - ldr r0, _08011C14 - bl FatalErrorPrintFuncFileLine - add r2, sp, 0x10C - mov r0, sp - adds r1, r4, 0 - bl vsprintf - ldr r0, _08011C18 - mov r1, sp - bl FatalErrorFormatMessage - bl FatalErrorHang - .align 2, 0 -_08011C14: .4byte gUnknown_80D42C0 -_08011C18: .4byte gUnknown_80D42D4 - thumb_func_end FatalError - - thumb_func_start sub_8011C1C -sub_8011C1C: - ldr r0, _08011C24 - ldr r0, [r0] - bx lr - .align 2, 0 -_08011C24: .4byte gUnknown_203B17C - thumb_func_end sub_8011C1C - - thumb_func_start sub_8011C28 -sub_8011C28: - ldr r1, _08011C30 - str r0, [r1] - bx lr - .align 2, 0 -_08011C30: .4byte gUnknown_203B17C - thumb_func_end sub_8011C28 - - thumb_func_start sub_8011C34 -sub_8011C34: - ldr r0, _08011C3C - ldr r0, [r0] - bx lr - .align 2, 0 -_08011C3C: .4byte gUnknown_202DE28 - thumb_func_end sub_8011C34 - - thumb_func_start sub_8011C40 -sub_8011C40: - ldr r1, _08011C48 - str r0, [r1] - bx lr - .align 2, 0 -_08011C48: .4byte gUnknown_202DE28 - thumb_func_end sub_8011C40 - - thumb_func_start sub_8011C4C -sub_8011C4C: - ldr r0, _08011C54 - ldr r0, [r0] - bx lr - .align 2, 0 -_08011C54: .4byte gUnknown_203B180 - thumb_func_end sub_8011C4C - - thumb_func_start sub_8011C58 -sub_8011C58: - push {r4,lr} - adds r4, r0, 0 - movs r2, 0 - lsrs r1, 2 - cmp r1, 0x1 - ble _08011C72 - adds r3, r4, 0x4 - subs r1, 0x1 -_08011C68: - ldm r3!, {r0} - adds r2, r0 - subs r1, 0x1 - cmp r1, 0 - bne _08011C68 -_08011C72: - str r2, [r4] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8011C58 - - thumb_func_start sub_8011C7C -sub_8011C7C: - push {r4,lr} - adds r4, r0, 0 - movs r2, 0 - lsrs r1, 2 - cmp r1, 0x1 - ble _08011C96 - adds r3, r4, 0x4 - subs r1, 0x1 -_08011C8C: - ldm r3!, {r0} - adds r2, r0 - subs r1, 0x1 - cmp r1, 0 - bne _08011C8C -_08011C96: - ldr r0, [r4] - cmp r0, r2 - bne _08011CA0 - movs r0, 0 - b _08011CA2 -_08011CA0: - movs r0, 0x1 -_08011CA2: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8011C7C - - thumb_func_start sub_8011CA8 -sub_8011CA8: - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - ldr r0, _08011CCC - ldr r0, [r0] - ldr r0, _08011CD0 - adds r1, r2, r0 - cmp r1, 0 - bge _08011CBE - ldr r0, _08011CD4 - adds r1, r2, r0 -_08011CBE: - asrs r1, 12 - ldr r0, [r3] - adds r0, r1 - str r0, [r3] - pop {r0} - bx r0 - .align 2, 0 -_08011CCC: .4byte gUnknown_203B184 -_08011CD0: .4byte 0x00000fff -_08011CD4: .4byte 0x00001ffe - thumb_func_end sub_8011CA8 - - thumb_func_start sub_8011CD8 -sub_8011CD8: - push {r4-r6,lr} - adds r5, r1, 0 - adds r4, r2, 0 - ldr r6, [r0] - adds r1, r4, 0 - bl sub_8011CA8 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8011C58 - ldr r0, _08011D04 - ldr r0, [r0] - cmp r0, 0 - bne _08011D08 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_800CFC0 - adds r1, r0, 0 - b _08011D28 - .align 2, 0 -_08011D04: .4byte gUnknown_203B184 -_08011D08: - bl sub_800DAB8 - lsls r0, 24 - cmp r0, 0 - beq _08011D38 - lsls r0, r6, 16 - lsrs r0, 16 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_800DAB4 - lsls r0, 24 - movs r1, 0 - cmp r0, 0 - bne _08011D28 - movs r1, 0x3 -_08011D28: - cmp r1, 0x4 - bne _08011D30 - movs r0, 0x1 - b _08011D3A -_08011D30: - cmp r1, 0 - bne _08011D38 - movs r0, 0 - b _08011D3A -_08011D38: - movs r0, 0x2 -_08011D3A: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8011CD8 - - thumb_func_start sub_8011D40 -sub_8011D40: - push {r4-r6,lr} - adds r5, r1, 0 - adds r4, r2, 0 - ldr r6, [r0] - adds r1, r4, 0 - bl sub_8011CA8 - ldr r0, _08011D64 - ldr r0, [r0] - cmp r0, 0 - bne _08011D68 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_800CF5C - adds r1, r0, 0 - b _08011D86 - .align 2, 0 -_08011D64: .4byte gUnknown_203B184 -_08011D68: - bl sub_800DAB8 - lsls r0, 24 - cmp r0, 0 - beq _08011D8A - lsls r0, r6, 16 - lsrs r0, 16 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_800DAB0 - lsls r0, 24 - movs r1, 0 - cmp r0, 0 - beq _08011D8A -_08011D86: - cmp r1, 0 - beq _08011D8E -_08011D8A: - movs r0, 0x1 - b _08011DA2 -_08011D8E: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8011C7C - lsls r0, 24 - cmp r0, 0 - bne _08011DA0 - movs r0, 0 - b _08011DA2 -_08011DA0: - movs r0, 0x2 -_08011DA2: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8011D40 - - thumb_func_start sub_8011DA8 -sub_8011DA8: - movs r0, 0x1 - bx lr - thumb_func_end sub_8011DA8 - - thumb_func_start sub_8011DAC -sub_8011DAC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - ldr r0, _08011DE4 - mov r8, r0 - movs r1, 0x5 - bl MemoryAlloc - adds r5, r0, 0 - movs r1, 0x89 - lsls r1, 3 - adds r4, r5, r1 - adds r0, r6, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_8011D40 - adds r7, r0, 0 - cmp r7, 0 - beq _08011DE8 - adds r0, r6, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_8011D40 - adds r7, r0, 0 - b _08011DF0 - .align 2, 0 -_08011DE4: .4byte 0x000057d4 -_08011DE8: - adds r0, r6, 0 - mov r1, r8 - bl sub_8011CA8 -_08011DF0: - cmp r7, 0 - beq _08011DF6 - b _08011F6E -_08011DF6: - ldr r2, _08011E38 - adds r0, r5, r2 - ldr r1, [r0] - ldr r0, _08011E3C - cmp r1, r0 - beq _08011E04 - movs r7, 0x4 -_08011E04: - cmp r7, 0 - beq _08011E0A - b _08011F6E -_08011E0A: - ldr r0, _08011E40 - ldr r1, [r0] - cmp r1, 0 - bne _08011E48 - ldr r1, _08011E44 - adds r0, r5, r1 - ldr r0, [r0] - bl sub_8011C28 - movs r2, 0x83 - lsls r2, 3 - adds r0, r5, r2 - ldr r0, [r0] - bl sub_8011C40 - movs r1, 0x84 - lsls r1, 3 - adds r0, r5, r1 - ldr r0, [r0] - bl SetRngState - b _08011E60 - .align 2, 0 -_08011E38: .4byte 0x00000414 -_08011E3C: .4byte 0x05071412 -_08011E40: .4byte gUnknown_203B184 -_08011E44: .4byte 0x0000041c -_08011E48: - ldr r2, _08011E80 - adds r0, r5, r2 - ldr r0, [r0] - str r0, [r1, 0x54] - subs r2, 0x4 - adds r0, r5, r2 - ldr r0, [r0] - str r0, [r1, 0x50] - adds r2, 0x8 - adds r0, r5, r2 - ldr r0, [r0] - str r0, [r1, 0x58] -_08011E60: - cmp r7, 0 - beq _08011E66 - b _08011F6E -_08011E66: - ldr r0, _08011E84 - ldr r0, [r0] - cmp r0, 0 - bne _08011E88 - adds r0, r5, 0x4 - bl sub_8002718 - lsls r0, 24 - cmp r0, 0 - bne _08011E94 - movs r7, 0x4 - b _08011F6E - .align 2, 0 -_08011E80: .4byte 0x0000041c -_08011E84: .4byte gUnknown_203B184 -_08011E88: - ldr r0, [r0, 0x4C] - adds r1, r5, 0x4 - movs r2, 0x80 - lsls r2, 3 - bl MemoryCopy8 -_08011E94: - cmp r7, 0 - bne _08011F6E - ldr r6, _08011F80 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_808EE9C - adds r1, r0, 0 - ldr r2, _08011F84 - adds r0, r5, r2 - ldr r0, [r0] - cmp r1, r0 - beq _08011EB0 - movs r7, 0x3 -_08011EB0: - adds r4, r6 - movs r6, 0x96 - lsls r6, 2 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_808F2B0 - adds r1, r0, 0 - movs r2, 0x85 - lsls r2, 3 - adds r0, r5, r2 - ldr r0, [r0] - cmp r1, r0 - beq _08011ECE - movs r7, 0x3 -_08011ECE: - adds r4, r6 - movs r6, 0xEC - lsls r6, 1 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_8091D14 - adds r1, r0, 0 - movs r2, 0x86 - lsls r2, 3 - adds r0, r5, r2 - ldr r0, [r0] - cmp r1, r0 - beq _08011EEC - movs r7, 0x3 -_08011EEC: - adds r4, r6 - adds r0, r4, 0 - movs r1, 0x10 - bl sub_809222C - adds r1, r0, 0 - ldr r2, _08011F88 - adds r0, r5, r2 - ldr r0, [r0] - cmp r1, r0 - beq _08011F04 - movs r7, 0x3 -_08011F04: - adds r4, 0x10 - adds r0, r4, 0 - movs r1, 0x8 - bl sub_80927F4 - adds r1, r0, 0 - movs r2, 0x87 - lsls r2, 3 - adds r0, r5, r2 - ldr r0, [r0] - cmp r1, r0 - beq _08011F1E - movs r7, 0x3 -_08011F1E: - adds r4, 0x8 - movs r6, 0x80 - lsls r6, 1 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_8097D98 - adds r1, r0, 0 - ldr r2, _08011F8C - adds r0, r5, r2 - ldr r0, [r0] - cmp r1, r0 - beq _08011F3A - movs r7, 0x3 -_08011F3A: - adds r4, r6 - ldr r6, _08011F90 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_80954CC - adds r1, r0, 0 - movs r2, 0x88 - lsls r2, 3 - adds r0, r5, r2 - ldr r0, [r0] - cmp r1, r0 - beq _08011F56 - movs r7, 0x3 -_08011F56: - adds r4, r6 - ldr r1, _08011F94 - adds r0, r4, 0 - bl sub_8096FA0 - adds r1, r0, 0 - ldr r2, _08011F98 - adds r0, r5, r2 - ldr r0, [r0] - cmp r1, r0 - beq _08011F6E - movs r7, 0x3 -_08011F6E: - adds r0, r5, 0 - bl MemoryFree - adds r0, r7, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08011F80: .4byte 0x00004650 -_08011F84: .4byte 0x00000424 -_08011F88: .4byte 0x00000434 -_08011F8C: .4byte 0x0000043c -_08011F90: .4byte 0x00000594 -_08011F94: .4byte 0x00000221 -_08011F98: .4byte 0x00000444 - thumb_func_end sub_8011DAC - - thumb_func_start sub_8011F9C -sub_8011F9C: - push {lr} - bl sub_8011D40 - pop {r1} - bx r1 - thumb_func_end sub_8011F9C - - thumb_func_start sub_8011FA8 -sub_8011FA8: - push {r4,r5,lr} - sub sp, 0x4 - movs r4, 0x80 - lsls r4, 4 - adds r0, r4, 0 - movs r1, 0x5 - bl MemoryAlloc - adds r5, r0, 0 - movs r0, 0x1F - str r0, [sp] - mov r0, sp - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_8011D40 - adds r2, r0, 0 - cmp r2, 0 - bne _08011FD8 - ldr r1, [r5, 0x14] - ldr r0, _08011FF0 - cmp r1, r0 - beq _08011FD8 - movs r2, 0x4 -_08011FD8: - ldr r4, _08011FF4 - cmp r2, 0 - bne _08011FE0 - ldr r4, [r5, 0x18] -_08011FE0: - adds r0, r5, 0 - bl MemoryFree - adds r0, r4, 0 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08011FF0: .4byte 0x05071412 -_08011FF4: .4byte 0x000f1209 - thumb_func_end sub_8011FA8 - - thumb_func_start sub_8011FF8 -sub_8011FF8: - push {r4-r6,lr} - sub sp, 0x4 - movs r4, 0x80 - lsls r4, 4 - adds r0, r4, 0 - movs r1, 0x5 - bl MemoryAlloc - adds r5, r0, 0 - movs r0, 0x1F - str r0, [sp] - movs r6, 0 - mov r0, sp - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_8011D40 - cmp r0, 0 - bne _08012028 - ldr r1, [r5, 0x14] - ldr r0, _08012038 - cmp r1, r0 - bne _08012028 - movs r6, 0x1 -_08012028: - adds r0, r5, 0 - bl MemoryFree - adds r0, r6, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08012038: .4byte 0x05071412 - thumb_func_end sub_8011FF8 - - thumb_func_start sub_801203C -sub_801203C: - push {r4-r7,lr} - adds r7, r0, 0 - adds r4, r1, 0 - ldr r0, _08012078 - movs r1, 0x5 - bl MemoryAlloc - adds r6, r0, 0 - movs r0, 0x89 - lsls r0, 3 - adds r5, r6, r0 - ldr r0, _0801207C - ldr r2, [r0] - cmp r2, 0 - bne _08012084 - ldr r1, _08012080 - adds r0, r6, r1 - str r4, [r0] - bl sub_8011C34 - movs r2, 0x83 - lsls r2, 3 - adds r1, r6, r2 - str r0, [r1] - bl GetRngState - movs r2, 0x84 - lsls r2, 3 - adds r1, r6, r2 - b _0801209E - .align 2, 0 -_08012078: .4byte 0x000057d4 -_0801207C: .4byte gUnknown_203B184 -_08012080: .4byte 0x0000041c -_08012084: - ldr r0, _080120C8 - adds r1, r6, r0 - ldr r0, [r2, 0x54] - str r0, [r1] - movs r0, 0x83 - lsls r0, 3 - adds r1, r6, r0 - ldr r0, [r2, 0x50] - str r0, [r1] - movs r0, 0x84 - lsls r0, 3 - adds r1, r6, r0 - ldr r0, [r2, 0x58] -_0801209E: - str r0, [r1] - ldr r2, _080120CC - adds r1, r6, r2 - ldr r0, _080120D0 - str r0, [r1] - bl sub_8011C4C - adds r1, r0, 0 - ldr r2, _080120D4 - adds r0, r6, r2 - movs r2, 0x10 - bl strncpy - ldr r0, _080120D8 - ldr r1, [r0] - cmp r1, 0 - bne _080120DC - adds r0, r6, 0x4 - bl sub_8002700 - b _080120E8 - .align 2, 0 -_080120C8: .4byte 0x0000041c -_080120CC: .4byte 0x00000414 -_080120D0: .4byte 0x05071412 -_080120D4: .4byte 0x00000404 -_080120D8: .4byte gUnknown_203B184 -_080120DC: - adds r0, r6, 0x4 - ldr r1, [r1, 0x4C] - movs r2, 0x80 - lsls r2, 3 - bl MemoryCopy8 -_080120E8: - ldr r4, _080121A4 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_808ED78 - ldr r2, _080121A8 - adds r1, r6, r2 - str r0, [r1] - adds r5, r4 - movs r4, 0x96 - lsls r4, 2 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_808F154 - movs r2, 0x85 - lsls r2, 3 - adds r1, r6, r2 - str r0, [r1] - adds r5, r4 - subs r4, 0x80 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8091C68 - movs r2, 0x86 - lsls r2, 3 - adds r1, r6, r2 - str r0, [r1] - adds r5, r4 - adds r0, r5, 0 - movs r1, 0x10 - bl sub_80921C4 - ldr r2, _080121AC - adds r1, r6, r2 - str r0, [r1] - adds r5, 0x10 - adds r0, r5, 0 - movs r1, 0x8 - bl sub_80927A8 - movs r2, 0x87 - lsls r2, 3 - adds r1, r6, r2 - str r0, [r1] - adds r5, 0x8 - subs r4, 0xD8 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8097D60 - ldr r2, _080121B0 - adds r1, r6, r2 - str r0, [r1] - adds r5, r4 - ldr r4, _080121B4 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8095624 - movs r2, 0x88 - lsls r2, 3 - adds r1, r6, r2 - str r0, [r1] - adds r5, r4 - ldr r1, _080121B8 - adds r0, r5, 0 - bl sub_80970D8 - ldr r2, _080121BC - adds r1, r6, r2 - str r0, [r1] - ldr r4, _080121C0 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_8011CD8 - adds r5, r0, 0 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_8011CD8 - adds r4, r0, 0 - adds r0, r6, 0 - bl MemoryFree - cmp r5, 0 - beq _080121C4 - adds r0, r5, 0 - b _080121CE - .align 2, 0 -_080121A4: .4byte 0x00004650 -_080121A8: .4byte 0x00000424 -_080121AC: .4byte 0x00000434 -_080121B0: .4byte 0x0000043c -_080121B4: .4byte 0x00000594 -_080121B8: .4byte 0x00000221 -_080121BC: .4byte 0x00000444 -_080121C0: .4byte 0x000057d4 -_080121C4: - cmp r4, 0 - bne _080121CC - movs r0, 0 - b _080121CE -_080121CC: - adds r0, r4, 0 -_080121CE: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_801203C - - thumb_func_start sub_80121D4 -sub_80121D4: - push {lr} - bl sub_8011CD8 - pop {r1} - bx r1 - thumb_func_end sub_80121D4 - - thumb_func_start sub_80121E0 -sub_80121E0: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - movs r6, 0x80 - lsls r6, 4 - adds r0, r6, 0 - movs r1, 0x5 - bl MemoryAlloc - adds r4, r0, 0 - movs r0, 0x1F - str r0, [sp] - str r5, [r4, 0x18] - bl sub_809769C - ldr r0, [r0] - str r0, [r4, 0x1C] - ldr r0, _0801223C - str r0, [r4, 0x14] - bl sub_8011C4C - adds r1, r0, 0 - adds r0, r4, 0x4 - movs r2, 0x10 - bl strncpy - adds r0, r4, 0 - adds r0, 0x20 - movs r1, 0 - bl sub_80958E4 - mov r0, sp - adds r1, r4, 0 - adds r2, r6, 0 - bl sub_8011CD8 - adds r5, r0, 0 - adds r0, r4, 0 - bl MemoryFree - adds r0, r5, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0801223C: .4byte 0x05071412 - thumb_func_end sub_80121E0 - - thumb_func_start sub_8012240 -sub_8012240: - push {r4,r5,lr} - movs r4, 0x80 - lsls r4, 4 - adds r0, r4, 0 - movs r1, 0x5 - bl MemoryAlloc - adds r5, r0, 0 - movs r1, 0xFF - movs r2, 0x4 - bl MemoryFill8 - bl sub_8011830 - movs r0, 0x1F - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_800CFC0 - adds r4, r0, 0 - bl sub_8011854 - adds r0, r5, 0 - bl MemoryFree - cmp r4, 0 - bne _0801227A - movs r0, 0 - b _0801227C -_0801227A: - movs r0, 0x2 -_0801227C: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8012240 - - thumb_func_start sub_8012284 -sub_8012284: - push {lr} - bl sub_80122D0 - bl sub_80122F4 - bl sub_8012300 - pop {r0} - bx r0 - thumb_func_end sub_8012284 - - thumb_func_start sub_8012298 -sub_8012298: - push {lr} - bl sub_80976A8 - bl sub_80122A8 - pop {r0} - bx r0 - thumb_func_end sub_8012298 - - thumb_func_start sub_80122A8 -sub_80122A8: - push {lr} - bl sub_80122D0 - bl sub_80122F4 - bl sub_8012300 - bl sub_8012240 - pop {r0} - bx r0 - thumb_func_end sub_80122A8 - - thumb_func_start nullsub_33 -nullsub_33: - bx lr - thumb_func_end nullsub_33 - - thumb_func_start sub_80122C4 -sub_80122C4: - push {lr} - bl sub_80122A8 - pop {r0} - bx r0 - thumb_func_end sub_80122C4 - - thumb_func_start sub_80122D0 -sub_80122D0: - push {lr} - movs r0, 0 - bl sub_8011C28 - movs r0, 0x1 - negs r0, r0 - bl sub_8011C40 - bl sub_8097748 - ldr r0, _080122F0 - ldr r0, [r0] - bl sub_8094FA8 - pop {r0} - bx r0 - .align 2, 0 -_080122F0: .4byte gUnknown_203B47C - thumb_func_end sub_80122D0 - - thumb_func_start sub_80122F4 -sub_80122F4: - push {lr} - bl sub_800135C - pop {r0} - bx r0 - thumb_func_end sub_80122F4 - - thumb_func_start sub_8012300 -sub_8012300: - push {lr} - bl sub_80923B8 - bl sub_808CE08 - bl sub_80909D8 - bl sub_8092094 - bl sub_80972F4 - bl sub_8095118 - bl sub_8095900 - bl sub_80974E8 - movs r0, 0x1 - bl sub_8094998 - bl sub_8097F74 - pop {r0} - bx r0 - thumb_func_end sub_8012300 - - thumb_func_start nullsub_200 -nullsub_200: - bx lr - thumb_func_end nullsub_200 - - thumb_func_start sub_8012334 -sub_8012334: - push {lr} - adds r2, r0, 0 - ldr r0, _08012390 - str r2, [r0] - cmp r2, 0 - beq _080123C8 - ldr r1, _08012394 - ldr r0, [r2] - str r0, [r1] - ldr r1, _08012398 - ldr r0, [r2, 0x4] - str r0, [r1] - ldr r1, _0801239C - ldr r0, [r2, 0x8] - str r0, [r1] - ldr r1, _080123A0 - ldr r0, [r2, 0xC] - str r0, [r1] - ldr r1, _080123A4 - ldr r0, [r2, 0x10] - str r0, [r1] - ldr r1, _080123A8 - ldr r0, [r2, 0x14] - str r0, [r1] - ldr r1, _080123AC - ldr r0, [r2, 0x18] - str r0, [r1] - ldr r1, _080123B0 - ldr r0, [r2, 0x1C] - str r0, [r1] - ldr r1, _080123B4 - ldr r0, [r2, 0x20] - str r0, [r1] - ldr r1, _080123B8 - ldr r0, [r2, 0x24] - str r0, [r1] - ldr r1, _080123BC - ldr r0, [r2, 0x28] - str r0, [r1] - ldr r1, _080123C0 - ldr r0, [r2, 0x2C] - str r0, [r1] - ldr r1, _080123C4 - ldr r0, [r2, 0x30] - b _0801242E - .align 2, 0 -_08012390: .4byte gUnknown_203B184 -_08012394: .4byte gUnknown_203B460 -_08012398: .4byte gUnknown_203B45C -_0801239C: .4byte gUnknown_203B480 -_080123A0: .4byte gUnknown_203B484 -_080123A4: .4byte gUnknown_203B488 -_080123A8: .4byte gUnknown_203B48C -_080123AC: .4byte gUnknown_203B490 -_080123B0: .4byte gUnknown_203B464 -_080123B4: .4byte gUnknown_203B494 -_080123B8: .4byte gUnknown_203B498 -_080123BC: .4byte gUnknown_203B468 -_080123C0: .4byte gUnknown_203B46C -_080123C4: .4byte gUnknown_203B47C -_080123C8: - bl sub_80909D0 - ldr r1, _08012434 - str r0, [r1] - bl sub_808CE00 - ldr r1, _08012438 - str r0, [r1] - bl sub_80950F8 - ldr r1, _0801243C - str r0, [r1] - bl sub_8095100 - ldr r1, _08012440 - str r0, [r1] - bl sub_8095108 - ldr r1, _08012444 - str r0, [r1] - bl sub_8095110 - ldr r1, _08012448 - str r0, [r1] - bl sub_80958F8 - ldr r1, _0801244C - str r0, [r1] - bl sub_809208C - ldr r1, _08012450 - str r0, [r1] - bl sub_8097680 - ldr r1, _08012454 - str r0, [r1] - bl sub_8097F6C - ldr r1, _08012458 - str r0, [r1] - bl sub_80923B0 - ldr r1, _0801245C - str r0, [r1] - bl sub_8094990 - ldr r1, _08012460 - str r0, [r1] - bl sub_8094FA0 - ldr r1, _08012464 -_0801242E: - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_08012434: .4byte gUnknown_203B460 -_08012438: .4byte gUnknown_203B45C -_0801243C: .4byte gUnknown_203B480 -_08012440: .4byte gUnknown_203B484 -_08012444: .4byte gUnknown_203B488 -_08012448: .4byte gUnknown_203B48C -_0801244C: .4byte gUnknown_203B490 -_08012450: .4byte gUnknown_203B464 -_08012454: .4byte gUnknown_203B494 -_08012458: .4byte gUnknown_203B498 -_0801245C: .4byte gUnknown_203B468 -_08012460: .4byte gUnknown_203B46C -_08012464: .4byte gUnknown_203B47C - thumb_func_end sub_8012334 - - thumb_func_start sub_8012468 -sub_8012468: - push {r4,lr} - ldr r4, _08012480 - movs r0, 0x8 - movs r1, 0x5 - bl MemoryAlloc - str r0, [r4] - movs r1, 0x1 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08012480: .4byte gUnknown_203B188 - thumb_func_end sub_8012468 - - thumb_func_start sub_8012484 -sub_8012484: - push {r4,r5,lr} - sub sp, 0x8 - ldr r1, _080124A0 - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0x6 - bhi _0801254C - lsls r0, 2 - ldr r1, _080124A4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080124A0: .4byte gUnknown_203B188 -_080124A4: .4byte _080124A8 - .align 2, 0 -_080124A8: - .4byte _080124C4 - .4byte _080124CC - .4byte _080124E8 - .4byte _0801251C - .4byte _08012534 - .4byte _0801254C - .4byte _08012548 -_080124C4: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1] - b _0801254C -_080124CC: - movs r0, 0 - str r0, [sp] - mov r0, sp - bl sub_8011DAC - ldr r1, _080124E4 - ldr r1, [r1] - str r0, [r1, 0x4] - movs r0, 0x2 - str r0, [r1] - b _0801254C - .align 2, 0 -_080124E4: .4byte gUnknown_203B188 -_080124E8: - adds r5, r4, 0 - ldr r1, [r5] - ldr r0, [r1, 0x4] - cmp r0, 0 - beq _0801253C - bl sub_8011FF8 - lsls r0, 24 - cmp r0, 0 - beq _08012518 - ldr r0, _08012510 - ldr r3, _08012514 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1] - b _0801254C - .align 2, 0 -_08012510: .4byte gUnknown_80D4354 -_08012514: .4byte 0x00000301 -_08012518: - ldr r1, [r4] - b _0801252A -_0801251C: - add r0, sp, 0x4 - bl sub_80144A4 - cmp r0, 0 - bne _0801254C - ldr r0, _08012530 - ldr r1, [r0] -_0801252A: - movs r0, 0x4 - str r0, [r1] - b _0801254C - .align 2, 0 -_08012530: .4byte gUnknown_203B188 -_08012534: - bl sub_8012298 - ldr r0, _08012544 - ldr r1, [r0] -_0801253C: - movs r0, 0x6 - str r0, [r1] - b _0801254C - .align 2, 0 -_08012544: .4byte gUnknown_203B188 -_08012548: - movs r0, 0 - b _0801254E -_0801254C: - movs r0, 0x1 -_0801254E: - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8012484 - - thumb_func_start sub_8012558 -sub_8012558: - push {r4,lr} - ldr r4, _08012570 - ldr r0, [r4] - cmp r0, 0 - beq _0801256A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801256A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08012570: .4byte gUnknown_203B188 - thumb_func_end sub_8012558 - - thumb_func_start sub_8012574 -sub_8012574: - push {r4-r6,lr} - lsls r0, 16 - asrs r4, r0, 16 - bl sub_80993D8 - ldr r5, _080125D4 - movs r0, 0x20 - movs r1, 0x5 - bl MemoryAlloc - str r0, [r5] - movs r6, 0 - movs r1, 0 - strh r4, [r0, 0x1C] - str r1, [r0, 0xC] - str r1, [r0, 0x10] - cmp r4, 0 - beq _080125BA - adds r0, r4, 0 - bl sub_808DDD0 - ldr r1, [r5] - str r0, [r1, 0xC] - ldr r0, [r0, 0x4] - str r0, [r1, 0x10] - strb r6, [r1, 0x18] - ldr r0, [r5] - strb r6, [r0, 0x19] - ldr r0, [r5] - strb r6, [r0, 0x1A] - ldr r1, [r5] - movs r0, 0x2 - strh r0, [r1, 0x14] - movs r0, 0x8 - strh r0, [r1, 0x16] -_080125BA: - ldr r1, [r5] - ldr r0, [r1, 0xC] - cmp r0, 0 - beq _080125DC - adds r2, r1, 0 - adds r2, 0xC - ldr r0, _080125D8 - movs r1, 0 - movs r3, 0x20 - bl sub_80141B4 - b _080125E8 - .align 2, 0 -_080125D4: .4byte gUnknown_203B18C -_080125D8: .4byte gUnknown_80D4398 -_080125DC: - ldr r0, _080125F8 - movs r1, 0 - movs r2, 0 - movs r3, 0x20 - bl sub_80141B4 -_080125E8: - ldr r0, _080125FC - ldr r1, [r0] - movs r0, 0x3 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080125F8: .4byte gUnknown_80D4398 -_080125FC: .4byte gUnknown_203B18C - thumb_func_end sub_8012574 - - thumb_func_start sub_8012600 -sub_8012600: - push {r4,r5,lr} - sub sp, 0x8 - movs r5, 0 - ldr r0, _08012628 - ldr r2, [r0] - ldr r1, [r2, 0xC] - adds r4, r0, 0 - cmp r1, 0 - beq _08012616 - adds r5, r2, 0 - adds r5, 0xC -_08012616: - ldr r0, [r2] - cmp r0, 0x7 - bls _0801261E - b _08012738 -_0801261E: - lsls r0, 2 - ldr r1, _0801262C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08012628: .4byte gUnknown_203B18C -_0801262C: .4byte _08012630 - .align 2, 0 -_08012630: - .4byte _08012650 - .4byte _08012654 - .4byte _08012738 - .4byte _08012678 - .4byte _08012680 - .4byte _0801271C - .4byte _08012738 - .4byte _08012734 -_08012650: - ldr r1, [r4] - b _0801272A -_08012654: - ldr r1, [r4] - ldr r0, [r1, 0x4] - adds r0, 0x1 - str r0, [r1, 0x4] - cmp r0, 0x8 - ble _08012738 - ldr r0, _08012674 - movs r1, 0 - movs r2, 0 - movs r3, 0x20 - bl sub_80141B4 - ldr r1, [r4] - movs r0, 0x3 - str r0, [r1] - b _08012738 - .align 2, 0 -_08012674: .4byte gUnknown_80D43D8 -_08012678: - ldr r1, [r4] - movs r0, 0x4 - str r0, [r1] - b _08012738 -_08012680: - movs r0, 0 - str r0, [sp] - bl sub_80140DC - bl sub_8011C1C - adds r1, r0, 0 - mov r0, sp - bl sub_801203C - ldr r4, _080126B8 - ldr r1, [r4] - str r0, [r1, 0x8] - cmp r0, 0 - beq _080126C4 - cmp r0, 0x1 - beq _080126DC - ldr r0, [r1, 0xC] - cmp r0, 0 - beq _080126F4 - ldr r0, _080126BC -_080126AA: - ldr r3, _080126C0 - movs r1, 0 - adds r2, r5, 0 - bl sub_80141B4 - b _08012700 - .align 2, 0 -_080126B8: .4byte gUnknown_203B18C -_080126BC: .4byte gUnknown_80D44B0 -_080126C0: .4byte 0x00000101 -_080126C4: - ldr r0, [r1, 0xC] - cmp r0, 0 - beq _080126D4 - ldr r0, _080126D0 - b _080126AA - .align 2, 0 -_080126D0: .4byte gUnknown_80D4438 -_080126D4: - ldr r0, _080126D8 - b _080126F6 - .align 2, 0 -_080126D8: .4byte gUnknown_80D4438 -_080126DC: - ldr r0, _080126F0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_80141B4 - ldr r1, [r4] - movs r0, 0x6 - b _08012706 - .align 2, 0 -_080126F0: .4byte gUnknown_80D444C -_080126F4: - ldr r0, _08012710 -_080126F6: - ldr r3, _08012714 - movs r1, 0 - adds r2, r5, 0 - bl sub_80141B4 -_08012700: - ldr r0, _08012718 - ldr r1, [r0] - movs r0, 0x5 -_08012706: - str r0, [r1] - bl sub_8014114 - b _08012738 - .align 2, 0 -_08012710: .4byte gUnknown_80D44B0 -_08012714: .4byte 0x00000101 -_08012718: .4byte gUnknown_203B18C -_0801271C: - add r0, sp, 0x4 - bl sub_80144A4 - cmp r0, 0 - bne _08012738 - ldr r0, _08012730 - ldr r1, [r0] -_0801272A: - movs r0, 0x7 - str r0, [r1] - b _08012738 - .align 2, 0 -_08012730: .4byte gUnknown_203B18C -_08012734: - movs r0, 0 - b _0801273A -_08012738: - movs r0, 0x1 -_0801273A: - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8012600 - - thumb_func_start sub_8012744 -sub_8012744: - ldr r0, _0801274C - ldr r0, [r0] - ldr r0, [r0, 0x8] - bx lr - .align 2, 0 -_0801274C: .4byte gUnknown_203B18C - thumb_func_end sub_8012744 - - thumb_func_start sub_8012750 -sub_8012750: - push {r4,lr} - ldr r4, _08012778 - ldr r0, [r4] - cmp r0, 0 - beq _0801276E - ldr r0, [r0, 0xC] - cmp r0, 0 - beq _08012764 - bl CloseFile -_08012764: - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801276E: - bl sub_80993E4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08012778: .4byte gUnknown_203B18C - thumb_func_end sub_8012750 - - thumb_func_start sub_801277C -sub_801277C: - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - ldr r4, _080127A4 - movs r0, 0x10 - movs r1, 0x5 - bl MemoryAlloc - str r0, [r4] - str r5, [r0, 0x4] - str r6, [r0, 0x8] - movs r1, 0 - strb r1, [r0, 0xC] - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080127A4: .4byte gUnknown_203B190 - thumb_func_end sub_801277C - - thumb_func_start sub_80127A8 -sub_80127A8: - push {r4,r5,lr} - sub sp, 0x8 - ldr r5, _080127C0 - ldr r2, [r5] - ldr r4, [r2] - cmp r4, 0x1 - beq _080127D4 - cmp r4, 0x1 - bgt _080127C4 - cmp r4, 0 - beq _080127CE - b _0801281E - .align 2, 0 -_080127C0: .4byte gUnknown_203B190 -_080127C4: - cmp r4, 0x2 - beq _08012808 - cmp r4, 0x3 - beq _0801281A - b _0801281E -_080127CE: - movs r0, 0x1 - str r0, [r2] - b _0801281E -_080127D4: - movs r0, 0x10 - str r0, [sp] - ldr r1, [r2, 0x4] - ldr r2, [r2, 0x8] - mov r0, sp - bl sub_8011F9C - cmp r0, 0 - bne _080127EC - ldr r0, [r5] - strb r4, [r0, 0xC] - b _08012812 -_080127EC: - ldr r0, _08012800 - ldr r3, _08012804 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - ldr r1, [r5] - movs r0, 0x2 - str r0, [r1] - b _0801281E - .align 2, 0 -_08012800: .4byte gUnknown_80D44C8 -_08012804: .4byte 0x00000301 -_08012808: - add r0, sp, 0x4 - bl sub_80144A4 - cmp r0, 0 - bne _0801281E -_08012812: - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1] - b _0801281E -_0801281A: - movs r0, 0 - b _08012820 -_0801281E: - movs r0, 0x1 -_08012820: - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80127A8 - - thumb_func_start sub_8012828 -sub_8012828: - ldr r0, _08012830 - ldr r0, [r0] - ldrb r0, [r0, 0xC] - bx lr - .align 2, 0 -_08012830: .4byte gUnknown_203B190 - thumb_func_end sub_8012828 - - thumb_func_start sub_8012834 -sub_8012834: - push {r4,lr} - ldr r4, _0801284C - ldr r0, [r4] - cmp r0, 0 - beq _08012846 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08012846: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801284C: .4byte gUnknown_203B190 - thumb_func_end sub_8012834 - - thumb_func_start sub_8012850 -sub_8012850: - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r6, r0, 0 - mov r8, r1 - lsls r4, r2, 24 - lsrs r4, 24 - ldr r5, _0801288C - movs r0, 0x14 - movs r1, 0x5 - bl MemoryAlloc - str r0, [r5] - str r6, [r0, 0x4] - mov r1, r8 - str r1, [r0, 0x8] - movs r1, 0 - strb r4, [r0, 0xC] - ldr r0, [r5] - str r1, [r0] - ldrb r0, [r0, 0xC] - cmp r0, 0 - beq _08012894 - ldr r0, _08012890 - movs r2, 0 - movs r3, 0x20 - bl sub_80141B4 - b _080128A0 - .align 2, 0 -_0801288C: .4byte gUnknown_203B194 -_08012890: .4byte gUnknown_80D45AC -_08012894: - ldr r0, _080128AC - movs r1, 0 - movs r2, 0 - movs r3, 0x20 - bl sub_80141B4 -_080128A0: - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080128AC: .4byte gUnknown_80D45AC - thumb_func_end sub_8012850 - - thumb_func_start sub_80128B0 -sub_80128B0: - push {r4,lr} - sub sp, 0x8 - ldr r1, _080128CC - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0x5 - bls _080128C2 - b _080129F0 -_080128C2: - lsls r0, 2 - ldr r1, _080128D0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080128CC: .4byte gUnknown_203B194 -_080128D0: .4byte _080128D4 - .align 2, 0 -_080128D4: - .4byte _080128EC - .4byte _080128F4 - .4byte _0801291C - .4byte _080129C8 - .4byte _080129F0 - .4byte _080129E0 -_080128EC: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1] - b _080129F0 -_080128F4: - bl sub_80140DC - movs r0, 0x10 - str r0, [sp] - ldr r4, _08012918 - ldr r0, [r4] - ldr r1, [r0, 0x4] - ldr r2, [r0, 0x8] - mov r0, sp - bl sub_80121D4 - ldr r1, [r4] - str r0, [r1, 0x10] - movs r0, 0x2 - str r0, [r1] - movs r0, 0x1 - b _080129F2 - .align 2, 0 -_08012918: .4byte gUnknown_203B194 -_0801291C: - movs r0, 0 - str r0, [sp] - ldr r0, [r4] - ldr r0, [r0, 0x10] - cmp r0, 0 - bne _08012934 - mov r0, sp - movs r1, 0x2 - bl sub_801203C - ldr r1, [r4] - str r0, [r1, 0x10] -_08012934: - ldr r0, [r4] - ldr r0, [r0, 0x10] - cmp r0, 0 - beq _08012964 - cmp r0, 0x1 - beq _080129AC - ldr r0, _08012958 - bl sub_80121E0 - ldr r0, _0801295C - ldr r3, _08012960 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - ldr r1, [r4] - movs r0, 0x3 - b _080129BC - .align 2, 0 -_08012958: .4byte 0x000f1209 -_0801295C: .4byte gUnknown_80D47A0 -_08012960: .4byte 0x00000301 -_08012964: - ldr r0, _08012980 - bl sub_80121E0 - ldr r0, [r4] - ldrb r0, [r0, 0xC] - cmp r0, 0 - beq _0801298C - ldr r0, _08012984 - ldr r3, _08012988 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _08012998 - .align 2, 0 -_08012980: .4byte 0x000f1207 -_08012984: .4byte gUnknown_80D45F4 -_08012988: .4byte 0x00000301 -_0801298C: - ldr r0, _080129A0 - ldr r3, _080129A4 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_08012998: - ldr r0, _080129A8 - ldr r1, [r0] - movs r0, 0x3 - b _080129BC - .align 2, 0 -_080129A0: .4byte gUnknown_80D4668 -_080129A4: .4byte 0x00000301 -_080129A8: .4byte gUnknown_203B194 -_080129AC: - ldr r0, _080129C4 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_80141B4 - ldr r1, [r4] - movs r0, 0x4 -_080129BC: - str r0, [r1] - bl sub_8014114 - b _080129F0 - .align 2, 0 -_080129C4: .4byte gUnknown_80D473C -_080129C8: - add r0, sp, 0x4 - bl sub_80144A4 - cmp r0, 0 - bne _080129F0 - ldr r0, _080129DC - ldr r1, [r0] - movs r0, 0x5 - str r0, [r1] - b _080129F0 - .align 2, 0 -_080129DC: .4byte gUnknown_203B194 -_080129E0: - ldr r0, [r4] - ldr r0, [r0, 0x10] - cmp r0, 0 - bne _080129EC - movs r0, 0x2 - b _080129F2 -_080129EC: - movs r0, 0x3 - b _080129F2 -_080129F0: - movs r0, 0 -_080129F2: - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80128B0 - - thumb_func_start sub_80129FC -sub_80129FC: - push {r4,lr} - ldr r4, _08012A14 - ldr r0, [r4] - cmp r0, 0 - beq _08012A0E - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08012A0E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08012A14: .4byte gUnknown_203B194 - thumb_func_end sub_80129FC - - thumb_func_start sub_8012A18 -sub_8012A18: - push {lr} - bl sub_8011860 - bl xxx_draw_string_80144C4 - ldr r0, _08012A60 - ldr r0, [r0] - ldrb r0, [r0, 0xA] - bl nullsub_8 - bl sub_8005180 - bl sub_80060EC - bl sub_800CB20 - bl sub_800485C - bl CopySpritesToOam - bl sub_8005304 - bl TransferBGPaletteBuffer - bl xxx_call_update_bg_vram - bl sub_8009908 - bl xxx_call_update_bg_sound_input - movs r0, 0 - bl sub_8004D8C - pop {r0} - bx r0 - .align 2, 0 -_08012A60: .4byte gUnknown_203B46C - thumb_func_end sub_8012A18 - - thumb_func_start sub_8012A64 -sub_8012A64: - push {r4,lr} - adds r4, r0, 0 - cmp r4, 0 - beq _08012A94 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08012A7A - adds r0, r4, 0 - bl nullsub_34 -_08012A7A: - ldrb r1, [r4, 0x1] - cmp r1, 0 - beq _08012A88 - movs r0, 0 - strb r0, [r4, 0x1] - movs r0, 0x1 - b _08012A98 -_08012A88: - ldrb r0, [r4, 0x2] - cmp r0, 0 - beq _08012A94 - strb r1, [r4, 0x2] - movs r0, 0x2 - b _08012A98 -_08012A94: - bl sub_8012AE8 -_08012A98: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8012A64 - - thumb_func_start GetKeyPress -GetKeyPress: - push {lr} - adds r1, r0, 0 - cmp r1, 0 - beq _08012ADE - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08012AB4 - movs r0, 0x1 - b _08012AE2 -_08012AB4: - adds r0, r1, 0 - adds r0, 0x2A - ldrb r0, [r0] - cmp r0, 0 - beq _08012AC2 - movs r0, 0x2 - b _08012AE2 -_08012AC2: - adds r0, r1, 0 - adds r0, 0x2C - ldrb r0, [r0] - cmp r0, 0 - beq _08012AD0 - movs r0, 0x9 - b _08012AE2 -_08012AD0: - adds r0, r1, 0 - adds r0, 0x2B - ldrb r0, [r0] - cmp r0, 0 - beq _08012ADE - movs r0, 0xA - b _08012AE2 -_08012ADE: - bl sub_8012AE8 -_08012AE2: - pop {r1} - bx r1 - thumb_func_end GetKeyPress - - thumb_func_start sub_8012AE8 -sub_8012AE8: - push {lr} - ldr r2, _08012B08 - ldrh r1, [r2] - movs r3, 0x80 - lsls r3, 1 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08012B4A - ldrh r1, [r2, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08012B0C - movs r0, 0xB - b _08012BBE - .align 2, 0 -_08012B08: .4byte gUnknown_20255F0 -_08012B0C: - ldrh r1, [r2, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08012B1A - movs r0, 0xC - b _08012BBE -_08012B1A: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08012B26 - movs r0, 0xD - b _08012BBE -_08012B26: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08012B32 - movs r0, 0xE - b _08012BBE -_08012B32: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08012B3E - movs r0, 0xF - b _08012BBE -_08012B3E: - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08012BBC - movs r0, 0x6 - b _08012BBE -_08012B4A: - ldrh r1, [r2, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08012B58 - movs r0, 0x1 - b _08012BBE -_08012B58: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08012B64 - movs r0, 0x2 - b _08012BBE -_08012B64: - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08012B70 - movs r0, 0x3 - b _08012BBE -_08012B70: - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08012B7C - movs r0, 0x4 - b _08012BBE -_08012B7C: - ldrh r1, [r2, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08012B8A - movs r0, 0x7 - b _08012BBE -_08012B8A: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08012B96 - movs r0, 0x8 - b _08012BBE -_08012B96: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08012BA2 - movs r0, 0x9 - b _08012BBE -_08012BA2: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08012BAE - movs r0, 0xA - b _08012BBE -_08012BAE: - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _08012BBC - movs r0, 0x5 - b _08012BBE -_08012BBC: - movs r0, 0 -_08012BBE: - pop {r1} - bx r1 - thumb_func_end sub_8012AE8 - - thumb_func_start sub_8012BC4 -sub_8012BC4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - mov r10, r0 - mov r9, r1 - adds r1, r2, 0 - adds r7, r3, 0 - movs r0, 0 - mov r8, r0 - add r0, sp, 0x4 - adds r2, r7, 0 - bl ConvertToDecimal - subs r5, r7, 0x1 - cmp r5, 0 - ble _08012C0A - lsls r0, r5, 2 - mov r1, sp - adds r1, r0 - adds r1, 0x4 - ldr r0, [r1] - cmp r0, 0 - bne _08012C0A - movs r2, 0xFF -_08012BFA: - str r2, [r1] - subs r1, 0x4 - subs r5, 0x1 - cmp r5, 0 - ble _08012C0A - ldr r0, [r1] - cmp r0, 0 - beq _08012BFA -_08012C0A: - movs r5, 0 - cmp r5, r7 - bge _08012C50 - ldr r0, [sp, 0x4] - cmp r0, 0xFF - beq _08012C50 - add r6, sp, 0x4 -_08012C18: - ldm r6!, {r0} - adds r0, 0x30 - lsls r0, 24 - lsrs r0, 24 - bl sub_8092288 - adds r4, r0, 0 - bl sub_8008584 - movs r1, 0x6 - ldrsh r0, [r0, r1] - add r8, r0 - mov r2, r10 - mov r1, r8 - subs r0, r2, r1 - ldr r2, [sp, 0x48] - str r2, [sp] - mov r1, r9 - adds r2, r4, 0 - ldr r3, [sp, 0x44] - bl xxx_call_draw_char - adds r5, 0x1 - cmp r5, r7 - bge _08012C50 - ldr r0, [r6] - cmp r0, 0xFF - bne _08012C18 -_08012C50: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8012BC4 - - thumb_func_start sub_8012C60 -sub_8012C60: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - adds r0, r2, 0 - adds r7, r3, 0 - lsls r0, 24 - lsrs r0, 24 - bl sub_8092288 - adds r4, r0, 0 - bl sub_8008584 - adds r1, r0, 0 - movs r2, 0x6 - ldrsh r0, [r1, r2] - cmp r0, 0xB - bgt _08012C90 - movs r1, 0xC - subs r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r0, r1, 1 - b _08012C92 -_08012C90: - movs r0, 0 -_08012C92: - adds r0, r5, r0 - ldr r1, [sp, 0x18] - str r1, [sp] - adds r1, r6, 0 - adds r2, r4, 0 - adds r3, r7, 0 - bl xxx_call_draw_char - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8012C60 - - thumb_func_start sub_8012CAC -sub_8012CAC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r4, r1, 0 - movs r7, 0 - movs r6, 0 - ldr r0, [r4] - cmp r0, 0 - beq _08012CE6 - movs r5, 0x80 - lsls r5, 9 -_08012CC4: - adds r0, r5, 0 - movs r1, 0x80 - lsls r1, 9 - adds r5, r1 - asrs r7, r0, 16 - ldr r0, [r4] - bl sub_8008ED0 - lsls r0, 16 - asrs r0, 16 - cmp r0, r6 - ble _08012CDE - adds r6, r0, 0 -_08012CDE: - adds r4, 0x8 - ldr r0, [r4] - cmp r0, 0 - bne _08012CC4 -_08012CE6: - adds r0, r6, 0 - cmp r0, 0 - bge _08012CEE - adds r0, 0x7 -_08012CEE: - asrs r0, 3 - adds r0, 0x2 - mov r1, r8 - strh r0, [r1, 0xC] - mov r0, r8 - adds r1, r7, 0 - bl sub_8012D08 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8012CAC - - thumb_func_start sub_8012D08 -sub_8012D08: - push {r4,lr} - adds r4, r0, 0 - adds r0, r1, 0 - movs r1, 0xC - bl sub_80095E4 - lsls r0, 16 - asrs r1, r0, 16 - ldr r0, [r4, 0x4] - cmp r0, 0x6 - bne _08012D24 - adds r0, r1, 0x2 - lsls r0, 16 - asrs r1, r0, 16 -_08012D24: - lsls r0, r1, 16 - lsrs r0, 16 - strh r0, [r4, 0xE] - strh r0, [r4, 0x10] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8012D08 - - thumb_func_start sub_8012D34 -sub_8012D34: - push {r4,lr} - adds r4, r0, 0 - adds r0, r1, 0 - movs r1, 0x18 - bl sub_8009614 - lsls r0, 16 - asrs r1, r0, 16 - ldr r0, [r4, 0x4] - cmp r0, 0x6 - bne _08012D50 - adds r0, r1, 0x2 - lsls r0, 16 - asrs r1, r0, 16 -_08012D50: - lsls r0, r1, 16 - lsrs r0, 16 - strh r0, [r4, 0xE] - strh r0, [r4, 0x10] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8012D34 - - thumb_func_start sub_8012D60 -sub_8012D60: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r4, r0, 0 - adds r5, r3, 0 - ldr r7, [sp, 0x20] - movs r3, 0 - movs r6, 0x1 - negs r6, r6 - mov r12, r3 - ldr r0, [sp, 0x24] - str r0, [r4, 0x10] - str r1, [r4, 0x4] - str r2, [r4, 0x8] - cmp r2, 0 - bne _08012D88 - ldr r0, _08012E00 - str r0, [r4, 0x8] -_08012D88: - str r5, [r4, 0xC] - ldr r0, [r1] - adds r5, r4, 0 - adds r5, 0x14 - movs r2, 0x4C - adds r2, r4 - mov r8, r2 - movs r2, 0x4D - adds r2, r4 - mov r9, r2 - movs r2, 0x4E - adds r2, r4 - mov r10, r2 - cmp r0, 0 - beq _08012DC6 -_08012DA6: - cmp r7, 0 - blt _08012DB2 - ldr r0, [r1, 0x4] - cmp r7, r0 - bne _08012DB2 - adds r6, r3, 0 -_08012DB2: - ldr r0, [r1] - ldrb r0, [r0] - cmp r0, 0x2A - bne _08012DBC - mov r12, r3 -_08012DBC: - adds r1, 0x8 - adds r3, 0x1 - ldr r0, [r1] - cmp r0, 0 - bne _08012DA6 -_08012DC6: - cmp r6, 0 - bge _08012DCC - mov r6, r12 -_08012DCC: - adds r0, r5, 0 - adds r1, r3, 0 - ldr r2, [sp, 0x24] - bl sub_8013134 - strh r6, [r4, 0x2C] - adds r0, r5, 0 - movs r1, 0 - bl sub_80137B0 - movs r0, 0x1 - mov r1, r8 - strb r0, [r1] - mov r2, r9 - strb r0, [r2] - mov r1, r10 - strb r0, [r1] - subs r0, 0x2 - str r0, [r4, 0x48] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08012E00: .4byte gUnknown_80D47B8 - thumb_func_end sub_8012D60 - - thumb_func_start sub_8012E04 -sub_8012E04: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r5, r0, 0 - adds r7, r1, 0 - mov r8, r2 - mov r9, r3 - ldr r3, [sp, 0x1C] - movs r1, 0 - movs r6, 0x1 - negs r6, r6 - movs r4, 0 - ldr r0, [r7] - cmp r0, 0 - beq _08012E46 - adds r2, r7, 0 -_08012E26: - cmp r3, 0 - blt _08012E32 - ldr r0, [r2, 0x4] - cmp r3, r0 - bne _08012E32 - adds r6, r1, 0 -_08012E32: - ldr r0, [r2] - ldrb r0, [r0] - cmp r0, 0x2A - bne _08012E3C - adds r4, r1, 0 -_08012E3C: - adds r2, 0x8 - adds r1, 0x1 - ldr r0, [r2] - cmp r0, 0 - bne _08012E26 -_08012E46: - cmp r6, 0 - bge _08012E4C - adds r6, r4, 0 -_08012E4C: - adds r4, r5, 0 - adds r4, 0x14 - adds r0, r4, 0 - ldr r2, [sp, 0x20] - bl sub_8013134 - strh r6, [r5, 0x2C] - adds r0, r4, 0 - movs r1, 0 - bl sub_80137B0 - ldr r0, [sp, 0x20] - str r0, [r5, 0x10] - mov r0, r8 - str r0, [r5, 0x8] - cmp r0, 0 - bne _08012E72 - ldr r0, _08012EA0 - str r0, [r5, 0x8] -_08012E72: - mov r0, r9 - str r0, [r5, 0xC] - str r7, [r5, 0x4] - adds r1, r5, 0 - adds r1, 0x4E - movs r0, 0 - strb r0, [r1] - adds r0, r5, 0 - adds r0, 0x4C - movs r1, 0x1 - strb r1, [r0] - adds r0, 0x1 - strb r1, [r0] - movs r0, 0x1 - negs r0, r0 - str r0, [r5, 0x48] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08012EA0: .4byte gUnknown_80D47B8 - thumb_func_end sub_8012E04 - - thumb_func_start sub_8012EA4 -sub_8012EA4: - push {lr} - adds r2, r0, 0 - adds r2, 0x4C - strb r1, [r2] - adds r2, 0x1 - movs r1, 0x1 - strb r1, [r2] - bl sub_8012EBC - pop {r0} - bx r0 - thumb_func_end sub_8012EA4 - - thumb_func_start sub_8012EBC -sub_8012EBC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x164 - adds r5, r0, 0 - movs r0, 0x4D - adds r0, r5 - mov r8, r0 - ldrb r0, [r0] - cmp r0, 0 - beq _08012F9E - ldr r0, [r5, 0x10] - bl sub_80073B8 - ldr r2, [r5, 0x10] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 3 - ldr r1, _08012F54 - adds r0, r1 - ldr r0, [r0, 0xC] - cmp r0, 0x6 - bne _08012F24 - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - mov r4, sp - adds r4, r0 - adds r4, 0x4 - add r0, sp, 0x4 - bl sub_8006518 - ldr r0, [r5] - bl sub_8008ED0 - adds r1, r0, 0 - ldr r0, [r4, 0x14] - ldrb r0, [r0, 0x2] - lsls r0, 3 - subs r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - adds r0, 0x8 - ldr r2, [r5] - ldr r3, [r5, 0x10] - movs r1, 0 - str r1, [sp] - bl sub_8014FF0 -_08012F24: - ldr r7, [r5, 0x8] - ldr r4, [r5, 0x4] - ldr r6, [r5, 0xC] - movs r1, 0 - mov r9, r1 - ldr r0, [r4] - mov r10, r8 - cmp r0, 0 - beq _08012F92 - add r0, sp, 0x64 - mov r8, r0 -_08012F3A: - ldr r3, [r4] - ldrb r0, [r3] - cmp r0, 0x2A - bne _08012F44 - adds r3, 0x1 -_08012F44: - cmp r6, 0 - beq _08012F58 - ldrh r0, [r6] - lsls r0, 2 - adds r0, r7 - ldr r2, [r0] - adds r6, 0x2 - b _08012F64 - .align 2, 0 -_08012F54: .4byte gUnknown_2027370 -_08012F58: - ldr r0, [r4, 0x4] - cmp r0, 0 - bge _08012F62 - ldr r2, [r7, 0x4] - b _08012F64 -_08012F62: - ldr r2, [r7] -_08012F64: - mov r0, r8 - ldr r1, _08012FBC - bl sub_800D158 - adds r0, r5, 0 - adds r0, 0x14 - mov r1, r9 - bl sub_8013800 - adds r1, r0, 0 - ldr r3, [r5, 0x10] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - mov r2, r8 - bl sub_8014FF0 - adds r4, 0x8 - movs r1, 0x1 - add r9, r1 - ldr r0, [r4] - cmp r0, 0 - bne _08012F3A -_08012F92: - ldr r0, [r5, 0x10] - bl sub_80073E0 - movs r0, 0 - mov r1, r10 - strb r0, [r1] -_08012F9E: - adds r0, r5, 0 - adds r0, 0x4E - ldrb r0, [r0] - cmp r0, 0 - beq _08012FC8 - adds r0, r5, 0 - adds r0, 0x4C - ldrb r0, [r0] - cmp r0, 0 - beq _08012FC0 - adds r0, r5, 0 - adds r0, 0x14 - bl AddMenuCursorSprite - b _08012FC8 - .align 2, 0 -_08012FBC: .4byte gUnknown_80D4828 -_08012FC0: - adds r0, r5, 0 - adds r0, 0x14 - bl sub_8013660 -_08012FC8: - add sp, 0x164 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8012EBC - - thumb_func_start sub_8012FD8 -sub_8012FD8: - push {r4-r7,lr} - adds r4, r0, 0 - movs r0, 0x2C - ldrsh r7, [r4, r0] - adds r6, r4, 0 - adds r6, 0x4C - ldrb r0, [r6] - cmp r0, 0 - beq _08013094 - adds r5, r4, 0 - adds r5, 0x14 - adds r0, r5, 0 - bl GetKeyPress - cmp r0, 0x2 - beq _08013078 - cmp r0, 0x2 - bgt _08013002 - cmp r0, 0x1 - beq _08013028 - b _08013094 -_08013002: - cmp r0, 0x7 - beq _08013012 - cmp r0, 0x8 - bne _08013094 - adds r0, r5, 0 - bl MoveMenuCursorDown - b _08013018 -_08013012: - adds r0, r5, 0 - bl MoveMenuCursorUp -_08013018: - movs r1, 0x2C - ldrsh r0, [r4, r1] - cmp r7, r0 - beq _08013094 - movs r0, 0x3 - bl sub_80119D4 - b _08013094 -_08013028: - adds r0, r5, 0 - bl sub_80137A8 - adds r2, r0, 0 - lsls r1, r2, 3 - ldr r0, [r4, 0x4] - adds r0, r1 - ldr r3, [r0, 0x4] - cmp r3, 0 - blt _08013068 - ldr r1, [r4, 0xC] - cmp r1, 0 - beq _0801304C - lsls r0, r2, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0x1 - beq _08013068 -_0801304C: - str r3, [r4, 0x48] - adds r1, r4, 0 - adds r1, 0x4C - movs r0, 0 - strb r0, [r1] - strh r0, [r4, 0x38] - ldr r1, [r4, 0xC] - cmp r1, 0 - beq _08013070 - lsls r0, r2, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0x2 - bne _08013070 -_08013068: - movs r0, 0x2 - bl sub_80119D4 - b _08013094 -_08013070: - movs r0, 0 - bl sub_80119D4 - b _08013094 -_08013078: - movs r1, 0x2E - ldrsh r0, [r4, r1] - ldr r1, [r4, 0x4] - lsls r0, 3 - adds r0, r1 - ldr r0, [r0, 0x4] - cmp r0, 0 - blt _08013094 - str r0, [r4, 0x48] - movs r0, 0 - strb r0, [r6] - movs r0, 0x1 - bl sub_80119D4 -_08013094: - adds r0, r4, 0 - bl sub_8012EBC - adds r0, r4, 0 - adds r0, 0x4C - ldrb r0, [r0] - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8012FD8 - - thumb_func_start sub_80130A8 -sub_80130A8: - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r4, 0 - adds r6, 0x4C - ldrb r0, [r6] - cmp r0, 0 - beq _08013100 - adds r5, r4, 0 - adds r5, 0x14 - adds r0, r5, 0 - bl GetKeyPress - cmp r0, 0x1 - beq _080130CA - cmp r0, 0x2 - beq _080130E6 - b _08013100 -_080130CA: - adds r0, r5, 0 - bl sub_80137A8 - lsls r0, 3 - ldr r1, [r4, 0x4] - adds r1, r0 - ldr r0, [r1, 0x4] - str r0, [r4, 0x48] - movs r0, 0 - strb r0, [r6] - strh r0, [r4, 0x38] - bl sub_80119D4 - b _08013100 -_080130E6: - movs r1, 0x2E - ldrsh r0, [r4, r1] - ldr r1, [r4, 0x4] - lsls r0, 3 - adds r0, r1 - ldr r0, [r0, 0x4] - cmp r0, 0 - blt _08013100 - str r0, [r4, 0x48] - movs r0, 0 - strb r0, [r6] - bl sub_80119D4 -_08013100: - adds r0, r4, 0 - bl sub_8012EBC - adds r0, r4, 0 - adds r0, 0x4C - ldrb r0, [r0] - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80130A8 - - thumb_func_start sub_8013114 -sub_8013114: - push {lr} - adds r2, r0, 0 - adds r0, 0x4C - ldrb r0, [r0] - cmp r0, 0 - beq _08013124 - movs r0, 0x1 - b _0801312E -_08013124: - cmp r1, 0 - beq _0801312C - ldr r0, [r2, 0x48] - str r0, [r1] -_0801312C: - movs r0, 0 -_0801312E: - pop {r1} - bx r1 - thumb_func_end sub_8013114 - - thumb_func_start sub_8013134 -sub_8013134: - push {r4,lr} - adds r4, r0, 0 - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 3 - ldr r3, _0801315C - adds r0, r3 - str r2, [r4] - movs r2, 0 - strh r2, [r4, 0x18] - strh r1, [r4, 0x1A] - strh r1, [r4, 0x1C] - strh r2, [r4, 0x1E] - strh r2, [r4, 0x4] - ldr r0, [r0, 0xC] - cmp r0, 0x6 - bne _08013160 - movs r0, 0x10 - b _08013162 - .align 2, 0 -_0801315C: .4byte gUnknown_2027370 -_08013160: - movs r0, 0x2 -_08013162: - strh r0, [r4, 0x6] - movs r0, 0 - strh r0, [r4, 0xC] - strh r0, [r4, 0xE] - strh r0, [r4, 0x14] - strh r0, [r4, 0x24] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8013134 - - thumb_func_start sub_801317C -sub_801317C: - push {lr} - movs r1, 0 - strb r1, [r0] - strb r1, [r0, 0x1] - strb r1, [r0, 0x2] - strb r1, [r0, 0x4] - strb r1, [r0, 0x3] - ldr r1, _080131A4 - strh r1, [r0, 0x8] - movs r1, 0x1 - negs r1, r1 - strh r1, [r0, 0xA] - adds r0, 0x8 - bl nullsub_7 - bl sub_8004914 - pop {r0} - bx r0 - .align 2, 0 -_080131A4: .4byte 0x0000ffff - thumb_func_end sub_801317C - - thumb_func_start AddMenuCursorSprite -AddMenuCursorSprite: - push {lr} - movs r1, 0 - bl AddMenuCursorSprite_ - pop {r0} - bx r0 - thumb_func_end AddMenuCursorSprite - - thumb_func_start AddMenuCursorSprite_ -AddMenuCursorSprite_: - push {r4-r6,lr} - sub sp, 0x8 - adds r6, r0, 0 - movs r0, 0 - movs r1, 0 - str r0, [sp] - str r1, [sp, 0x4] - movs r1, 0x1A - ldrsh r0, [r6, r1] - cmp r0, 0 - bgt _080131CC - b _080132D6 -_080131CC: - adds r0, r6, 0 - bl UpdateMenuCursorSpriteCoords - ldrh r1, [r6, 0x24] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080132D6 - mov r0, sp - ldrh r0, [r0] - ldr r1, _080132FC - ands r1, r0 - ldr r3, _08013300 - ldr r0, [sp] - ands r0, r3 - orrs r0, r1 - str r0, [sp] - mov r1, sp - ldrh r1, [r1] - adds r2, r3, 0 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08013304 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r4, _08013308 - adds r0, r4, 0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _0801330C - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08013310 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08013314 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - ands r3, r1 - orrs r3, r0 - str r3, [sp] - mov r3, sp - movs r2, 0xFD - lsls r2, 2 - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r4 - movs r5, 0xF - movs r1, 0xF0 - lsls r1, 8 - ldr r4, _08013318 - ands r0, r4 - orrs r0, r1 - strh r0, [r3, 0x4] - ldrh r0, [r3, 0x6] - ldr r1, _0801331C - ands r1, r0 - ldr r0, _08013320 - ands r1, r0 - movs r2, 0x8 - ldrsh r0, [r6, r2] - ldr r2, _08013324 - ands r0, r2 - strh r0, [r3, 0x2] - movs r2, 0xA - ldrsh r0, [r6, r2] - adds r0, 0x1 - ands r0, r4 - lsls r0, 4 - ands r1, r5 - orrs r1, r0 - strh r1, [r3, 0x6] - mov r0, sp - movs r1, 0xFF - movs r2, 0 - movs r3, 0 - bl AddSprite -_080132D6: - adds r0, r6, 0 - bl sub_8013470 - movs r1, 0x14 - ldrsh r0, [r6, r1] - cmp r0, 0 - beq _080132EC - adds r0, r6, 0 - adds r0, 0x14 - bl sub_801332C -_080132EC: - ldrh r0, [r6, 0x24] - adds r0, 0x1 - strh r0, [r6, 0x24] - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080132FC: .4byte 0x0000feff -_08013300: .4byte 0xffff0000 -_08013304: .4byte 0x0000fdff -_08013308: .4byte 0x0000f3ff -_0801330C: .4byte 0x0000efff -_08013310: .4byte 0x0000dfff -_08013314: .4byte 0x00003fff -_08013318: .4byte 0x00000fff -_0801331C: .4byte 0x0000fffe -_08013320: .4byte 0x0000fffd -_08013324: .4byte 0x000001ff - thumb_func_end AddMenuCursorSprite_ - - thumb_func_start nullsub_34 -nullsub_34: - bx lr - thumb_func_end nullsub_34 - - thumb_func_start sub_801332C -sub_801332C: - push {r4-r6,lr} - sub sp, 0x8 - movs r1, 0 - movs r2, 0 - str r1, [sp] - str r2, [sp, 0x4] - mov r1, sp - ldrh r1, [r1] - ldr r2, _08013440 - ands r2, r1 - ldr r4, _08013444 - ldr r1, [sp] - ands r1, r4 - orrs r1, r2 - str r1, [sp] - mov r2, sp - ldrh r2, [r2] - adds r3, r4, 0 - ands r3, r1 - orrs r3, r2 - str r3, [sp] - mov r1, sp - ldrh r2, [r1] - ldr r1, _08013448 - ands r1, r2 - adds r2, r4, 0 - ands r2, r3 - orrs r2, r1 - str r2, [sp] - mov r1, sp - ldrh r1, [r1] - adds r3, r4, 0 - ands r3, r2 - orrs r3, r1 - str r3, [sp] - movs r5, 0x80 - lsls r5, 3 - mov r1, sp - ldrh r2, [r1] - ldr r6, _0801344C - adds r1, r6, 0 - ands r1, r2 - adds r2, r4, 0 - ands r2, r3 - orrs r2, r1 - str r2, [sp] - mov r1, sp - ldrh r1, [r1] - orrs r5, r1 - adds r3, r4, 0 - ands r3, r2 - orrs r3, r5 - str r3, [sp] - mov r1, sp - ldrh r2, [r1] - ldr r1, _08013450 - ands r1, r2 - adds r2, r4, 0 - ands r2, r3 - orrs r2, r1 - str r2, [sp] - mov r1, sp - ldrh r1, [r1] - adds r3, r4, 0 - ands r3, r2 - orrs r3, r1 - str r3, [sp] - mov r1, sp - ldrh r2, [r1] - ldr r1, _08013454 - ands r1, r2 - adds r2, r4, 0 - ands r2, r3 - orrs r2, r1 - str r2, [sp] - mov r1, sp - ldrh r1, [r1] - adds r3, r4, 0 - ands r3, r2 - orrs r3, r1 - str r3, [sp] - mov r1, sp - ldrh r2, [r1] - ldr r1, _08013458 - ands r1, r2 - adds r2, r4, 0 - ands r2, r3 - orrs r2, r1 - str r2, [sp] - mov r1, sp - ldrh r1, [r1] - ands r4, r2 - orrs r4, r1 - str r4, [sp] - mov r4, sp - ldr r3, _0801345C - ldrh r2, [r4, 0x4] - movs r1, 0xFC - lsls r1, 8 - ands r1, r2 - orrs r1, r3 - ands r1, r6 - movs r6, 0xF - movs r2, 0xF0 - lsls r2, 8 - ldr r5, _08013460 - ands r1, r5 - orrs r1, r2 - strh r1, [r4, 0x4] - ldrh r1, [r4, 0x6] - ldr r2, _08013464 - ands r2, r1 - ldr r1, _08013468 - ands r2, r1 - movs r3, 0 - ldrsh r1, [r0, r3] - ldr r3, _0801346C - ands r1, r3 - strh r1, [r4, 0x2] - movs r1, 0x2 - ldrsh r0, [r0, r1] - adds r0, 0x1 - ands r0, r5 - lsls r0, 4 - ands r2, r6 - orrs r2, r0 - strh r2, [r4, 0x6] - mov r0, sp - movs r1, 0xFF - movs r2, 0 - movs r3, 0 - bl AddSprite - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08013440: .4byte 0x0000feff -_08013444: .4byte 0xffff0000 -_08013448: .4byte 0x0000fdff -_0801344C: .4byte 0x0000f3ff -_08013450: .4byte 0x0000efff -_08013454: .4byte 0x0000dfff -_08013458: .4byte 0x00003fff -_0801345C: .4byte 0x000003f5 -_08013460: .4byte 0x00000fff -_08013464: .4byte 0x0000fffe -_08013468: .4byte 0x0000fffd -_0801346C: .4byte 0x000001ff - thumb_func_end sub_801332C - - thumb_func_start sub_8013470 -sub_8013470: - push {r4-r6,lr} - sub sp, 0x8 - adds r6, r0, 0 - movs r0, 0 - movs r1, 0 - str r0, [sp] - str r1, [sp, 0x4] - movs r1, 0xC - ldrsh r0, [r6, r1] - cmp r0, 0 - bne _08013488 - b _08013624 -_08013488: - movs r2, 0x1E - ldrsh r0, [r6, r2] - cmp r0, 0 - beq _08013586 - mov r0, sp - ldrh r0, [r0] - ldr r1, _0801362C - ands r1, r0 - ldr r3, _08013630 - ldr r0, [sp] - ands r0, r3 - orrs r0, r1 - str r0, [sp] - mov r1, sp - ldrh r1, [r1] - adds r2, r3, 0 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08013634 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r4, _08013638 - adds r0, r4, 0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _0801363C - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08013640 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08013644 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - ands r3, r1 - orrs r3, r0 - str r3, [sp] - mov r3, sp - ldr r2, _08013648 - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r4 - movs r5, 0xF - movs r1, 0xF0 - lsls r1, 8 - ldr r4, _0801364C - ands r0, r4 - orrs r0, r1 - strh r0, [r3, 0x4] - ldrh r0, [r3, 0x6] - ldr r1, _08013650 - ands r1, r0 - ldr r0, _08013654 - ands r1, r0 - movs r2, 0xC - ldrsh r0, [r6, r2] - ldr r2, _08013658 - ands r0, r2 - strh r0, [r3, 0x2] - movs r2, 0xE - ldrsh r0, [r6, r2] - ands r0, r4 - lsls r0, 4 - ands r1, r5 - orrs r1, r0 - strh r1, [r3, 0x6] - mov r0, sp - movs r1, 0xFF - movs r2, 0 - movs r3, 0 - bl AddSprite -_08013586: - movs r1, 0x20 - ldrsh r0, [r6, r1] - cmp r0, 0 - beq _08013624 - adds r1, r0, 0 - movs r2, 0x1E - ldrsh r0, [r6, r2] - adds r0, 0x1 - cmp r1, r0 - beq _08013624 - mov r0, sp - ldrh r0, [r0] - ldr r1, _0801362C - ands r1, r0 - mov r0, sp - strh r1, [r0] - strh r1, [r0] - ldr r0, _08013634 - ands r0, r1 - mov r1, sp - strh r0, [r1] - strh r0, [r1] - ldr r4, _08013638 - ands r0, r4 - strh r0, [r1] - strh r0, [r1] - ldr r1, _0801363C - ands r1, r0 - mov r0, sp - strh r1, [r0] - strh r1, [r0] - ldr r2, _08013640 - ands r2, r1 - strh r2, [r0] - strh r2, [r0] - ldr r0, _08013644 - ands r0, r2 - mov r1, sp - strh r0, [r1] - strh r0, [r1] - mov r3, sp - ldr r2, _0801365C - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r4 - movs r5, 0xF - movs r1, 0xF0 - lsls r1, 8 - ldr r4, _0801364C - ands r0, r4 - orrs r0, r1 - strh r0, [r3, 0x4] - ldrh r0, [r3, 0x6] - ldr r1, _08013650 - ands r1, r0 - ldr r0, _08013654 - ands r1, r0 - movs r2, 0xC - ldrsh r0, [r6, r2] - adds r0, 0xA - ldr r2, _08013658 - ands r0, r2 - strh r0, [r3, 0x2] - movs r2, 0xE - ldrsh r0, [r6, r2] - ands r0, r4 - lsls r0, 4 - ands r1, r5 - orrs r1, r0 - strh r1, [r3, 0x6] - mov r0, sp - movs r1, 0xFF - movs r2, 0 - movs r3, 0 - bl AddSprite -_08013624: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801362C: .4byte 0x0000feff -_08013630: .4byte 0xffff0000 -_08013634: .4byte 0x0000fdff -_08013638: .4byte 0x0000f3ff -_0801363C: .4byte 0x0000efff -_08013640: .4byte 0x0000dfff -_08013644: .4byte 0x00003fff -_08013648: .4byte 0x000003f2 -_0801364C: .4byte 0x00000fff -_08013650: .4byte 0x0000fffe -_08013654: .4byte 0x0000fffd -_08013658: .4byte 0x000001ff -_0801365C: .4byte 0x000003f3 - thumb_func_end sub_8013470 - - thumb_func_start sub_8013660 -sub_8013660: - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x1A - ldrsh r0, [r4, r1] - cmp r0, 0 - ble _0801367A - adds r0, r4, 0 - bl UpdateMenuCursorSpriteCoords - adds r0, r4, 0 - adds r0, 0x8 - bl sub_801332C -_0801367A: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8013660 - - thumb_func_start UpdateMenuCursorSpriteCoords -UpdateMenuCursorSpriteCoords: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, [r5] - lsls r4, r0, 3 - adds r4, r0 - lsls r4, 3 - ldr r0, _080136B8 - adds r4, r0 - movs r1, 0 - ldrsh r0, [r4, r1] - lsls r0, 3 - ldrh r2, [r5, 0x4] - adds r0, r2 - strh r0, [r5, 0x8] - movs r0, 0x18 - ldrsh r1, [r5, r0] - adds r0, r5, 0 - bl sub_8013800 - movs r2, 0x2 - ldrsh r1, [r4, r2] - lsls r1, 3 - adds r1, r0 - strh r1, [r5, 0xA] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080136B8: .4byte gUnknown_2027370 - thumb_func_end UpdateMenuCursorSpriteCoords - - thumb_func_start MoveMenuCursorDown -MoveMenuCursorDown: - push {lr} - adds r1, r0, 0 - movs r3, 0 - strh r3, [r1, 0x24] - movs r0, 0x1A - ldrsh r2, [r1, r0] - cmp r2, 0 - ble _080136DA - ldrh r0, [r1, 0x18] - adds r0, 0x1 - strh r0, [r1, 0x18] - lsls r0, 16 - asrs r0, 16 - cmp r0, r2 - blt _080136DC -_080136DA: - strh r3, [r1, 0x18] -_080136DC: - pop {r0} - bx r0 - thumb_func_end MoveMenuCursorDown - - thumb_func_start sub_80136E0 -sub_80136E0: - push {r4,r5,lr} - adds r2, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - movs r1, 0 - strh r1, [r2, 0x24] - ldrh r4, [r2, 0x1A] - movs r0, 0x1A - ldrsh r3, [r2, r0] - cmp r3, 0 - ble _08013708 - ldrh r0, [r2, 0x18] - adds r0, 0x1 - strh r0, [r2, 0x18] - lsls r0, 16 - asrs r0, 16 - cmp r0, r3 - blt _08013710 - cmp r5, 0 - beq _0801370C -_08013708: - strh r1, [r2, 0x18] - b _08013710 -_0801370C: - subs r0, r4, 0x1 - strh r0, [r2, 0x18] -_08013710: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80136E0 - - thumb_func_start MoveMenuCursorUp -MoveMenuCursorUp: - push {r4,lr} - adds r1, r0, 0 - movs r2, 0 - strh r2, [r1, 0x24] - ldrh r3, [r1, 0x1A] - movs r4, 0x1A - ldrsh r0, [r1, r4] - cmp r0, 0 - bgt _0801372E - strh r2, [r1, 0x18] - b _0801373E -_0801372E: - ldrh r0, [r1, 0x18] - subs r0, 0x1 - strh r0, [r1, 0x18] - lsls r0, 16 - cmp r0, 0 - bge _0801373E - subs r0, r3, 0x1 - strh r0, [r1, 0x18] -_0801373E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end MoveMenuCursorUp - - thumb_func_start sub_8013744 -sub_8013744: - push {r4-r6,lr} - adds r2, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r5, r1, 0 - movs r3, 0 - strh r3, [r2, 0x24] - ldrh r4, [r2, 0x1A] - movs r6, 0x1A - ldrsh r0, [r2, r6] - cmp r0, 0 - bgt _08013760 - strh r3, [r2, 0x18] - b _08013778 -_08013760: - ldrh r0, [r2, 0x18] - subs r0, 0x1 - strh r0, [r2, 0x18] - lsls r0, 16 - cmp r0, 0 - bge _08013778 - cmp r1, 0 - beq _08013776 - subs r0, r4, 0x1 - strh r0, [r2, 0x18] - b _08013778 -_08013776: - strh r5, [r2, 0x18] -_08013778: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8013744 - - thumb_func_start sub_8013780 -sub_8013780: - push {lr} - adds r2, r0, 0 - cmp r1, 0 - bge _0801378E - movs r0, 0 - strh r0, [r2, 0x18] - b _080137A0 -_0801378E: - movs r3, 0x1A - ldrsh r0, [r2, r3] - cmp r1, r0 - blt _0801379E - ldrh r0, [r2, 0x1A] - subs r0, 0x1 - strh r0, [r2, 0x18] - b _080137A0 -_0801379E: - strh r1, [r2, 0x18] -_080137A0: - movs r0, 0 - strh r0, [r2, 0x24] - pop {r0} - bx r0 - thumb_func_end sub_8013780 - - thumb_func_start sub_80137A8 -sub_80137A8: - movs r1, 0x18 - ldrsh r0, [r0, r1] - bx lr - thumb_func_end sub_80137A8 - - thumb_func_start sub_80137B0 -sub_80137B0: - push {r4,lr} - adds r4, r0, 0 - cmp r1, 0 - ble _080137BC - lsls r0, r1, 8 - b _080137E2 -_080137BC: - ldr r3, _080137F4 - ldr r1, [r4] - lsls r0, r1, 3 - adds r0, r1 - lsls r1, r0, 3 - adds r0, r3, 0 - adds r0, 0xC - adds r0, r1, r0 - ldr r0, [r0] - movs r2, 0 - cmp r0, 0x6 - bne _080137D6 - movs r2, 0x10 -_080137D6: - adds r0, r1, r3 - movs r1, 0x6 - ldrsh r0, [r0, r1] - lsls r0, 3 - subs r0, r2 - lsls r0, 8 -_080137E2: - movs r2, 0x1C - ldrsh r1, [r4, r2] - bl __divsi3 - str r0, [r4, 0x10] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080137F4: .4byte gUnknown_2027370 - thumb_func_end sub_80137B0 - - thumb_func_start sub_80137F8 -sub_80137F8: - lsls r1, 8 - str r1, [r0, 0x10] - bx lr - thumb_func_end sub_80137F8 - - thumb_func_start sub_8013800 -sub_8013800: - push {lr} - movs r3, 0x6 - ldrsh r2, [r0, r3] - ldr r0, [r0, 0x10] - muls r0, r1 - cmp r0, 0 - bge _08013810 - adds r0, 0xFF -_08013810: - asrs r0, 8 - adds r0, r2, r0 - pop {r1} - bx r1 - thumb_func_end sub_8013800 - - thumb_func_start sub_8013818 -sub_8013818: - push {r4,lr} - adds r4, r0, 0 - str r3, [r4] - movs r0, 0 - strh r1, [r4, 0x22] - strh r2, [r4, 0x1C] - strh r0, [r4, 0x14] - strh r0, [r4, 0x24] - strh r0, [r4, 0x18] - strh r0, [r4, 0x1E] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - adds r0, r4, 0 - bl sub_8013984 - adds r0, r4, 0 - movs r1, 0xC - bl sub_80137F8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8013818 - - thumb_func_start sub_8013848 -sub_8013848: - push {r4,lr} - adds r4, r0, 0 - str r3, [r4] - movs r0, 0 - strh r1, [r4, 0x22] - strh r2, [r4, 0x1C] - strh r0, [r4, 0x14] - strh r0, [r4, 0x24] - strh r0, [r4, 0x18] - strh r0, [r4, 0x1E] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - adds r0, r4, 0 - bl sub_8013984 - adds r0, r4, 0 - movs r1, 0x18 - bl sub_80137F8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8013848 - - thumb_func_start sub_8013878 -sub_8013878: - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - cmp r6, 0 - bge _08013886 - movs r6, 0 - b _08013890 -_08013886: - movs r1, 0x22 - ldrsh r0, [r5, r1] - cmp r6, r0 - blt _08013890 - subs r6, r0, 0x1 -_08013890: - movs r0, 0x1C - ldrsh r1, [r5, r0] - adds r0, r6, 0 - bl __divsi3 - movs r4, 0 - strh r0, [r5, 0x1E] - movs r0, 0x1C - ldrsh r1, [r5, r0] - adds r0, r6, 0 - bl __modsi3 - strh r0, [r5, 0x18] - strh r4, [r5, 0x24] - adds r0, r5, 0 - bl sub_8013984 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8013878 - - thumb_func_start sub_80138B8 -sub_80138B8: - push {r4-r7,lr} - adds r5, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - movs r0, 0x1E - ldrsh r7, [r5, r0] - movs r1, 0x18 - ldrsh r6, [r5, r1] - adds r0, r5, 0 - bl AddMenuCursorSprite - cmp r4, 0 - beq _0801391C - adds r0, r5, 0 - bl GetKeyPress - cmp r0, 0x8 - beq _080138F8 - cmp r0, 0x8 - bgt _080138E6 - cmp r0, 0x7 - beq _080138F0 - b _0801391C -_080138E6: - cmp r0, 0x9 - beq _0801390E - cmp r0, 0xA - beq _08013916 - b _0801391C -_080138F0: - adds r0, r5, 0 - bl MoveMenuCursorUp - b _080138FE -_080138F8: - adds r0, r5, 0 - bl MoveMenuCursorDown -_080138FE: - movs r1, 0x18 - ldrsh r0, [r5, r1] - cmp r6, r0 - beq _0801391C - movs r0, 0x3 - bl sub_80119D4 - b _0801391C -_0801390E: - adds r0, r5, 0 - bl sub_8013A7C - b _0801391C -_08013916: - adds r0, r5, 0 - bl sub_8013A54 -_0801391C: - movs r1, 0x1E - ldrsh r0, [r5, r1] - cmp r7, r0 - bne _08013928 - movs r0, 0 - b _08013930 -_08013928: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x1 -_08013930: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80138B8 - - thumb_func_start sub_8013938 -sub_8013938: - push {r4,r5,lr} - adds r4, r0, 0 - movs r0, 0x1E - ldrsh r5, [r4, r0] - movs r0, 0 - strh r0, [r4, 0x1A] - strh r0, [r4, 0x14] - adds r0, r4, 0 - bl AddMenuCursorSprite - adds r0, r4, 0 - bl GetKeyPress - cmp r0, 0x9 - beq _0801395C - cmp r0, 0xA - beq _08013964 - b _0801396A -_0801395C: - adds r0, r4, 0 - bl sub_8013A7C - b _0801396A -_08013964: - adds r0, r4, 0 - bl sub_8013A54 -_0801396A: - movs r1, 0x1E - ldrsh r0, [r4, r1] - cmp r5, r0 - bne _08013976 - movs r0, 0 - b _0801397E -_08013976: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x1 -_0801397E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8013938 - - thumb_func_start sub_8013984 -sub_8013984: - push {r4-r6,lr} - adds r4, r0, 0 - ldr r1, [r4] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 3 - ldr r1, _08013A20 - adds r6, r0, r1 - ldrh r1, [r4, 0x1C] - movs r2, 0x1C - ldrsh r0, [r4, r2] - cmp r0, 0 - bne _080139A2 - adds r0, r1, 0x1 - strh r0, [r4, 0x1C] -_080139A2: - movs r1, 0x22 - ldrsh r0, [r4, r1] - movs r2, 0x1C - ldrsh r1, [r4, r2] - bl __divsi3 - adds r5, r0, 0 - strh r5, [r4, 0x20] - movs r1, 0x22 - ldrsh r0, [r4, r1] - movs r2, 0x1C - ldrsh r1, [r4, r2] - bl __modsi3 - cmp r0, 0 - beq _080139C6 - adds r0, r5, 0x1 - strh r0, [r4, 0x20] -_080139C6: - movs r0, 0x1E - ldrsh r1, [r4, r0] - movs r2, 0x20 - ldrsh r0, [r4, r2] - subs r0, 0x1 - ldrh r5, [r4, 0x20] - cmp r1, r0 - ble _080139DA - subs r0, r5, 0x1 - strh r0, [r4, 0x1E] -_080139DA: - movs r0, 0x1E - ldrsh r1, [r4, r0] - movs r2, 0x20 - ldrsh r0, [r4, r2] - subs r0, 0x1 - cmp r1, r0 - bne _080139F8 - movs r1, 0x22 - ldrsh r0, [r4, r1] - movs r2, 0x1C - ldrsh r1, [r4, r2] - bl __modsi3 - cmp r0, 0 - bne _080139FA -_080139F8: - ldrh r0, [r4, 0x1C] -_080139FA: - strh r0, [r4, 0x1A] - movs r0, 0x18 - ldrsh r1, [r4, r0] - movs r2, 0x1A - ldrsh r0, [r4, r2] - subs r0, 0x1 - cmp r1, r0 - ble _08013A10 - ldrh r0, [r4, 0x1A] - subs r0, 0x1 - strh r0, [r4, 0x18] -_08013A10: - movs r1, 0 - strh r1, [r4, 0x4] - ldr r0, [r6, 0xC] - cmp r0, 0x6 - bne _08013A24 - movs r0, 0x10 - strh r0, [r4, 0x6] - b _08013A26 - .align 2, 0 -_08013A20: .4byte gUnknown_2027370 -_08013A24: - strh r1, [r4, 0x6] -_08013A26: - lsls r0, r5, 16 - asrs r0, 16 - cmp r0, 0x1 - bgt _08013A32 - movs r0, 0 - b _08013A40 -_08013A32: - movs r1, 0 - ldrsh r0, [r6, r1] - movs r2, 0x4 - ldrsh r1, [r6, r2] - adds r0, r1 - subs r0, 0x2 - lsls r0, 3 -_08013A40: - strh r0, [r4, 0xC] - movs r1, 0x2 - ldrsh r0, [r6, r1] - adds r0, 0x1 - lsls r0, 3 - subs r0, 0x2 - strh r0, [r4, 0xE] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8013984 - - thumb_func_start sub_8013A54 -sub_8013A54: - push {lr} - adds r2, r0, 0 - movs r0, 0x1E - ldrsh r1, [r2, r0] - movs r3, 0x20 - ldrsh r0, [r2, r3] - subs r0, 0x1 - cmp r1, r0 - bge _08013A6C - ldrh r0, [r2, 0x1E] - adds r0, 0x1 - b _08013A6E -_08013A6C: - movs r0, 0 -_08013A6E: - strh r0, [r2, 0x1E] - adds r0, r2, 0 - bl sub_8013984 - pop {r0} - bx r0 - thumb_func_end sub_8013A54 - - thumb_func_start sub_8013A7C -sub_8013A7C: - push {lr} - adds r1, r0, 0 - ldrh r2, [r1, 0x1E] - movs r3, 0x1E - ldrsh r0, [r1, r3] - cmp r0, 0 - bgt _08013A90 - ldrh r0, [r1, 0x20] - subs r0, 0x1 - b _08013A92 -_08013A90: - subs r0, r2, 0x1 -_08013A92: - strh r0, [r1, 0x1E] - adds r0, r1, 0 - bl sub_8013984 - pop {r0} - bx r0 - thumb_func_end sub_8013A7C - - thumb_func_start sub_8013AA0 -sub_8013AA0: - push {r4,r5,lr} - sub sp, 0x28 - adds r5, r0, 0 - ldrh r1, [r5, 0x28] - ldr r0, _08013B9C - ands r0, r1 - ldr r1, _08013BA0 - ands r0, r1 - ldr r4, _08013BA4 - ands r0, r4 - ldr r1, _08013BA8 - ands r0, r1 - ldr r1, _08013BAC - ands r0, r1 - movs r1, 0x80 - lsls r1, 7 - ldr r3, _08013BB0 - ands r0, r3 - orrs r0, r1 - strh r0, [r5, 0x28] - movs r1, 0x80 - lsls r1, 6 - ldrh r0, [r5, 0x2A] - ldr r2, _08013BB4 - ands r2, r0 - orrs r2, r1 - ands r2, r3 - movs r3, 0xFC - lsls r3, 2 - ldrh r1, [r5, 0x2C] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r3 - ands r0, r4 - movs r3, 0xF - movs r4, 0xF0 - lsls r4, 8 - ldr r1, _08013BB8 - ands r0, r1 - orrs r0, r4 - strh r0, [r5, 0x2C] - movs r0, 0xFE - lsls r0, 8 - ands r2, r0 - movs r0, 0xF0 - orrs r2, r0 - strh r2, [r5, 0x2A] - subs r1, 0xFF - ldrh r0, [r5, 0x2E] - ands r3, r0 - movs r0, 0 - orrs r3, r1 - strh r3, [r5, 0x2E] - adds r1, r5, 0 - adds r1, 0x26 - strb r0, [r1] - ldr r1, [r5, 0xC] - ldr r2, [r5, 0x10] - mov r0, sp - bl ConvertToDecimal - ldr r0, [r5, 0x10] - adds r1, r5, 0 - adds r1, 0x25 - strb r0, [r1] - ldrb r2, [r1] - subs r0, r2, 0x1 - lsls r0, 2 - add r0, sp - ldr r0, [r0] - cmp r0, 0 - bne _08013B50 - cmp r2, 0x1 - bls _08013B50 - adds r2, r1, 0 -_08013B38: - ldrb r0, [r2] - subs r0, 0x1 - strb r0, [r2] - ldrb r1, [r2] - subs r0, r1, 0x1 - lsls r0, 2 - add r0, sp - ldr r0, [r0] - cmp r0, 0 - bne _08013B50 - cmp r1, 0x1 - bhi _08013B38 -_08013B50: - ldr r1, [r5, 0x4] - str r1, [r5] - ldr r2, [r5, 0x10] - mov r0, sp - bl ConvertToDecimal - adds r0, r5, 0 - adds r0, 0x25 - ldrb r0, [r0] - subs r0, 0x1 - adds r1, r5, 0 - adds r1, 0x24 - strb r0, [r1] - ldrb r2, [r1] - lsls r0, r2, 2 - add r0, sp - ldr r0, [r0] - cmp r0, 0 - bne _08013B92 - cmp r2, 0 - beq _08013B92 - adds r2, r1, 0 -_08013B7C: - ldrb r0, [r2] - subs r0, 0x1 - strb r0, [r2] - ldrb r1, [r2] - lsls r0, r1, 2 - add r0, sp - ldr r0, [r0] - cmp r0, 0 - bne _08013B92 - cmp r1, 0 - bne _08013B7C -_08013B92: - add sp, 0x28 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08013B9C: .4byte 0x0000feff -_08013BA0: .4byte 0x0000fdff -_08013BA4: .4byte 0x0000f3ff -_08013BA8: .4byte 0x0000efff -_08013BAC: .4byte 0x0000dfff -_08013BB0: .4byte 0x00003fff -_08013BB4: .4byte 0x0000c1ff -_08013BB8: .4byte 0x00000fff - thumb_func_end sub_8013AA0 - - thumb_func_start sub_8013BBC -sub_8013BBC: - push {r4-r7,lr} - adds r7, r0, 0 - adds r4, r7, 0 - adds r4, 0x26 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - adds r0, r7, 0 - bl sub_8013D10 - ldrb r1, [r4] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08013C26 - movs r2, 0x80 - lsls r2, 6 - ldrh r1, [r7, 0x2A] - ldr r4, _08013C38 - adds r0, r4, 0 - ands r0, r1 - orrs r0, r2 - strh r0, [r7, 0x2A] - adds r5, r7, 0 - adds r5, 0x28 - movs r6, 0x80 - lsls r6, 1 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl AddSprite - ldrh r0, [r7, 0x2A] - ands r4, r0 - strh r4, [r7, 0x2A] - ldrh r1, [r7, 0x2E] - ldr r0, _08013C3C - lsrs r1, 4 - adds r1, 0x10 - ands r1, r0 - lsls r1, 4 - ldrh r2, [r7, 0x2E] - movs r0, 0xF - ands r0, r2 - orrs r0, r1 - strh r0, [r7, 0x2E] - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl AddSprite -_08013C26: - adds r0, r7, 0 - bl sub_8013DD0 - lsls r0, 24 - cmp r0, 0 - beq _08013C40 - movs r0, 0x1 - b _08013C62 - .align 2, 0 -_08013C38: .4byte 0x0000c1ff -_08013C3C: .4byte 0x00000fff -_08013C40: - bl sub_8012AE8 - cmp r0, 0x1 - beq _08013C56 - cmp r0, 0x2 - bne _08013C60 - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _08013C62 -_08013C56: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _08013C62 -_08013C60: - movs r0, 0 -_08013C62: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8013BBC - - thumb_func_start sub_8013C68 -sub_8013C68: - push {r4-r6,lr} - sub sp, 0x2C - adds r5, r0, 0 - ldr r1, [r5] - ldr r2, [r5, 0x10] - add r0, sp, 0x4 - bl ConvertToDecimal - ldr r0, [r5, 0x10] - subs r4, r0, 0x1 - cmp r4, 0 - ble _08013CA0 - lsls r0, r4, 2 - mov r1, sp - adds r1, r0 - adds r1, 0x4 - ldr r0, [r1] - cmp r0, 0 - bne _08013CA0 - movs r2, 0xFF -_08013C90: - str r2, [r1] - subs r1, 0x4 - subs r4, 0x1 - cmp r4, 0 - ble _08013CA0 - ldr r0, [r1] - cmp r0, 0 - beq _08013C90 -_08013CA0: - movs r4, 0 - adds r0, r5, 0 - adds r0, 0x25 - adds r6, r0, 0 - b _08013CDA -_08013CAA: - lsls r0, r4, 2 - add r0, sp - adds r0, 0x4 - ldr r0, [r0] - cmp r0, 0xFF - bne _08013CBA - movs r3, 0x2A - b _08013CC0 -_08013CBA: - adds r0, 0x30 - lsls r0, 24 - lsrs r3, r0, 24 -_08013CC0: - adds r4, 0x1 - lsls r1, r4, 1 - adds r1, r4 - lsls r1, 2 - ldr r0, [r5, 0x1C] - subs r0, r1 - ldr r1, [r5, 0x20] - ldr r2, [r5, 0x14] - str r2, [sp] - adds r2, r3, 0 - movs r3, 0x7 - bl sub_8012C60 -_08013CDA: - ldrb r0, [r6] - cmp r4, r0 - blt _08013CAA - movs r4, 0 - b _08013D02 -_08013CE4: - ldr r0, [r5, 0x14] - adds r4, 0x1 - lsls r2, r4, 1 - adds r2, r4 - lsls r2, 2 - ldr r1, [r5, 0x1C] - subs r1, r2 - subs r1, 0x1 - ldr r2, [r5, 0x20] - adds r2, 0xA - movs r3, 0x5 - str r3, [sp] - movs r3, 0xB - bl sub_800792C -_08013D02: - ldr r0, [r5, 0x10] - cmp r4, r0 - blt _08013CE4 - add sp, 0x2C - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8013C68 - - thumb_func_start sub_8013D10 -sub_8013D10: - push {r4-r7,lr} - adds r6, r0, 0 - ldr r0, [r6, 0x14] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - ldr r0, _08013D34 - adds r7, r1, r0 - adds r4, r6, 0 - adds r4, 0x24 - ldrb r5, [r4] - bl sub_8012AE8 - cmp r0, 0x9 - beq _08013D38 - cmp r0, 0xA - beq _08013D4E - b _08013D62 - .align 2, 0 -_08013D34: .4byte gUnknown_2027370 -_08013D38: - ldrb r1, [r4] - adds r0, r6, 0 - adds r0, 0x25 - ldrb r0, [r0] - subs r0, 0x1 - cmp r1, r0 - bge _08013D4A - adds r0, r1, 0x1 - b _08013D5C -_08013D4A: - movs r0, 0 - b _08013D60 -_08013D4E: - ldrb r0, [r4] - cmp r0, 0 - bne _08013D5A - adds r0, r6, 0 - adds r0, 0x25 - ldrb r0, [r0] -_08013D5A: - subs r0, 0x1 -_08013D5C: - lsls r0, 24 - lsrs r0, 24 -_08013D60: - adds r5, r0, 0 -_08013D62: - adds r4, r6, 0 - adds r4, 0x24 - ldrb r0, [r4] - cmp r5, r0 - beq _08013D7C - strb r5, [r4] - movs r0, 0x3 - bl sub_80119D4 - adds r1, r6, 0 - adds r1, 0x26 - movs r0, 0x8 - strb r0, [r1] -_08013D7C: - ldrb r0, [r4] - adds r0, 0x1 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - ldr r2, [r6, 0x1C] - subs r2, r1 - movs r1, 0 - ldrsh r0, [r7, r1] - lsls r0, 3 - adds r2, r0 - subs r2, 0x3 - ldr r0, _08013DC8 - ands r2, r0 - ldrh r1, [r6, 0x2A] - movs r0, 0xFE - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - strh r0, [r6, 0x2A] - movs r1, 0x2 - ldrsh r0, [r7, r1] - lsls r0, 3 - ldr r1, [r6, 0x20] - adds r1, r0 - subs r1, 0x7 - ldr r0, _08013DCC - ands r1, r0 - lsls r1, 4 - ldrh r2, [r6, 0x2E] - movs r0, 0xF - ands r0, r2 - orrs r0, r1 - strh r0, [r6, 0x2E] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08013DC8: .4byte 0x000001ff -_08013DCC: .4byte 0x00000fff - thumb_func_end sub_8013D10 - - thumb_func_start sub_8013DD0 -sub_8013DD0: - push {r4,r5,lr} - adds r4, r0, 0 - bl sub_8012AE8 - cmp r0, 0x7 - beq _08013DE4 - cmp r0, 0x8 - beq _08013E10 - movs r0, 0 - b _08013E4C -_08013DE4: - ldr r2, [r4] - ldr r0, [r4, 0xC] - cmp r2, r0 - beq _08013E18 - ldr r1, _08013E0C - adds r0, r4, 0 - adds r0, 0x24 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - adds r5, r2, r0 - movs r0, 0x3 - bl sub_80119D4 - ldr r0, [r4, 0xC] - cmp r5, r0 - bgt _08013E3E - b _08013E48 - .align 2, 0 -_08013E0C: .4byte gUnknown_80D4830 -_08013E10: - ldr r2, [r4] - ldr r0, [r4, 0x8] - cmp r2, r0 - bne _08013E22 -_08013E18: - movs r0, 0x2 - bl sub_80119D4 - movs r0, 0 - b _08013E4C -_08013E22: - ldr r1, _08013E44 - adds r0, r4, 0 - adds r0, 0x24 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - subs r5, r2, r0 - movs r0, 0x3 - bl sub_80119D4 - ldr r0, [r4, 0x8] - cmp r5, r0 - bge _08013E48 -_08013E3E: - str r0, [r4] - b _08013E4A - .align 2, 0 -_08013E44: .4byte gUnknown_80D4830 -_08013E48: - str r5, [r4] -_08013E4A: - movs r0, 0x1 -_08013E4C: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8013DD0 - - thumb_func_start sub_8013E54 -sub_8013E54: - push {r4-r6,lr} - sub sp, 0x8 - ldr r6, _08013F60 - movs r0, 0 - movs r1, 0 - str r0, [sp] - str r1, [sp, 0x4] - mov r0, sp - ldrh r0, [r0] - ldr r1, _08013F64 - ands r1, r0 - ldr r3, _08013F68 - ldr r0, [sp] - ands r0, r3 - orrs r0, r1 - str r0, [sp] - mov r1, sp - ldrh r1, [r1] - adds r2, r3, 0 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08013F6C - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r5, _08013F70 - adds r0, r5, 0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08013F74 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08013F78 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - movs r4, 0x80 - lsls r4, 7 - mov r0, sp - ldrh r1, [r0] - ldr r0, _08013F7C - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - orrs r4, r0 - ands r3, r1 - orrs r3, r4 - str r3, [sp] - mov r3, sp - movs r2, 0xFC - lsls r2, 2 - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r5 - movs r2, 0xF - movs r1, 0xF0 - lsls r1, 8 - ldr r4, _08013F80 - ands r0, r4 - orrs r0, r1 - strh r0, [r3, 0x4] - movs r1, 0x2 - ldrsh r0, [r6, r1] - lsls r0, 3 - adds r0, 0x80 - ands r0, r4 - lsls r0, 4 - ldrh r1, [r3, 0x6] - ands r2, r1 - orrs r2, r0 - strh r2, [r3, 0x6] - movs r0, 0x70 - strh r0, [r3, 0x2] - movs r1, 0x80 - lsls r1, 1 - mov r0, sp - movs r2, 0 - movs r3, 0 - bl AddSprite - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08013F60: .4byte gUnknown_2027370 -_08013F64: .4byte 0x0000feff -_08013F68: .4byte 0xffff0000 -_08013F6C: .4byte 0x0000fdff -_08013F70: .4byte 0x0000f3ff -_08013F74: .4byte 0x0000efff -_08013F78: .4byte 0x0000dfff -_08013F7C: .4byte 0x00003fff -_08013F80: .4byte 0x00000fff - thumb_func_end sub_8013E54 - - thumb_func_start sub_8013F84 -sub_8013F84: - push {r4-r6,lr} - sub sp, 0x8 - ldr r6, _08014090 - movs r0, 0 - movs r1, 0 - str r0, [sp] - str r1, [sp, 0x4] - mov r0, sp - ldrh r0, [r0] - ldr r1, _08014094 - ands r1, r0 - ldr r3, _08014098 - ldr r0, [sp] - ands r0, r3 - orrs r0, r1 - str r0, [sp] - mov r1, sp - ldrh r1, [r1] - adds r2, r3, 0 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _0801409C - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r5, _080140A0 - adds r0, r5, 0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _080140A4 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _080140A8 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - movs r4, 0x80 - lsls r4, 7 - mov r0, sp - ldrh r1, [r0] - ldr r0, _080140AC - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - orrs r4, r0 - ands r3, r1 - orrs r3, r4 - str r3, [sp] - mov r3, sp - movs r2, 0xFC - lsls r2, 2 - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r5 - movs r2, 0xF - movs r1, 0xF0 - lsls r1, 8 - ldr r4, _080140B0 - ands r0, r4 - orrs r0, r1 - strh r0, [r3, 0x4] - movs r1, 0x2 - ldrsh r0, [r6, r1] - lsls r0, 3 - adds r0, 0x60 - ands r0, r4 - lsls r0, 4 - ldrh r1, [r3, 0x6] - ands r2, r1 - orrs r2, r0 - strh r2, [r3, 0x6] - movs r0, 0x70 - strh r0, [r3, 0x2] - movs r1, 0x80 - lsls r1, 1 - mov r0, sp - movs r2, 0 - movs r3, 0 - bl AddSprite - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08014090: .4byte gUnknown_2027370 -_08014094: .4byte 0x0000feff -_08014098: .4byte 0xffff0000 -_0801409C: .4byte 0x0000fdff -_080140A0: .4byte 0x0000f3ff -_080140A4: .4byte 0x0000efff -_080140A8: .4byte 0x0000dfff -_080140AC: .4byte 0x00003fff -_080140B0: .4byte 0x00000fff - thumb_func_end sub_8013F84 - - thumb_func_start sub_80140B4 -sub_80140B4: - push {r4-r7,lr} - ldr r4, _080140D8 - adds r2, r0, 0 - movs r3, 0x3 -_080140BC: - adds r1, r2, 0 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r4, 0x18 - adds r2, 0x18 - subs r3, 0x1 - cmp r3, 0 - bge _080140BC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080140D8: .4byte gUnknown_80D47C8 - thumb_func_end sub_80140B4 - - thumb_func_start sub_80140DC -sub_80140DC: - push {lr} - sub sp, 0x4 - ldr r0, _080140F4 - str r0, [sp] - mov r0, sp - bl SetSavingIconCoords - bl sub_8011830 - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080140F4: .4byte 0x008000c8 - thumb_func_end sub_80140DC - - thumb_func_start sub_80140F8 -sub_80140F8: - push {lr} - sub sp, 0x4 - ldr r0, _08014110 - str r0, [sp] - mov r0, sp - bl SetSavingIconCoords - bl sub_8011830 - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08014110: .4byte 0x004000bc - thumb_func_end sub_80140F8 - - thumb_func_start sub_8014114 -sub_8014114: - push {lr} - bl sub_8011854 - movs r0, 0 - bl SetSavingIconCoords - pop {r0} - bx r0 - thumb_func_end sub_8014114 - - thumb_func_start nullsub_201 -nullsub_201: - bx lr - thumb_func_end nullsub_201 - - thumb_func_start sub_8014128 -sub_8014128: - push {lr} - bl sub_8012AE8 - cmp r0, 0x2 - beq _08014136 - movs r0, 0x1 - b _08014138 -_08014136: - movs r0, 0 -_08014138: - pop {r1} - bx r1 - thumb_func_end sub_8014128 - - thumb_func_start sub_801413C -sub_801413C: - movs r0, 0 - bx lr - thumb_func_end sub_801413C - - thumb_func_start sub_8014140 -sub_8014140: - movs r0, 0 - bx lr - thumb_func_end sub_8014140 - - thumb_func_start sub_8014144 -sub_8014144: - ldr r0, _0801415C - movs r2, 0 - str r2, [r0] - ldr r0, _08014160 - movs r1, 0x3C - str r1, [r0] - ldr r0, _08014164 - str r1, [r0] - ldr r0, _08014168 - str r2, [r0] - bx lr - .align 2, 0 -_0801415C: .4byte gUnknown_202E744 -_08014160: .4byte gUnknown_202E738 -_08014164: .4byte gUnknown_202E73C -_08014168: .4byte gUnknown_202E740 - thumb_func_end sub_8014144 - - thumb_func_start sub_801416C -sub_801416C: - push {lr} - adds r2, r0, 0 - adds r3, r1, 0 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - bge _0801418C - ldr r0, _08014184 - str r3, [r0] - ldr r1, _08014188 - negs r0, r2 - b _08014194 - .align 2, 0 -_08014184: .4byte gUnknown_202E738 -_08014188: .4byte gUnknown_202E740 -_0801418C: - ldr r0, _080141A8 - str r2, [r0] - ldr r1, _080141AC - movs r0, 0 -_08014194: - str r0, [r1] - ldr r0, _080141B0 - adds r1, r3, 0 - cmp r1, 0 - bge _080141A0 - movs r1, 0 -_080141A0: - str r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_080141A8: .4byte gUnknown_202E738 -_080141AC: .4byte gUnknown_202E740 -_080141B0: .4byte gUnknown_202E73C - thumb_func_end sub_801416C - - thumb_func_start sub_80141B4 -sub_80141B4: - push {r4-r6,lr} - sub sp, 0x14 - lsls r3, 16 - lsrs r3, 16 - movs r6, 0x1 - negs r6, r6 - movs r5, 0 - str r5, [sp] - movs r4, 0x3 - str r4, [sp, 0x4] - str r5, [sp, 0x8] - str r2, [sp, 0xC] - str r3, [sp, 0x10] - adds r2, r6, 0 - movs r3, 0 - bl sub_8014248 - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80141B4 - - thumb_func_start sub_80141E0 -sub_80141E0: - push {r4-r6,lr} - sub sp, 0x14 - lsls r6, r2, 16 - movs r2, 0x1 - negs r2, r2 - ldr r3, _08014210 - movs r5, 0 - str r5, [sp] - movs r4, 0x3 - str r4, [sp, 0x4] - str r5, [sp, 0x8] - str r1, [sp, 0xC] - movs r1, 0xC0 - lsls r1, 18 - orrs r1, r6 - lsrs r1, 16 - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08014210: .4byte gUnknown_80D485C - thumb_func_end sub_80141E0 - - thumb_func_start sub_8014214 -sub_8014214: - push {r4-r6,lr} - sub sp, 0x14 - lsls r6, r2, 16 - movs r2, 0x1 - negs r2, r2 - ldr r3, _08014244 - movs r5, 0 - str r5, [sp] - movs r4, 0x3 - str r4, [sp, 0x4] - str r5, [sp, 0x8] - str r1, [sp, 0xC] - movs r1, 0xC0 - lsls r1, 18 - orrs r1, r6 - lsrs r1, 16 - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08014244: .4byte gUnknown_80D4880 - thumb_func_end sub_8014214 - - thumb_func_start sub_8014248 -sub_8014248: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r1, 0 - mov r9, r2 - mov r8, r3 - ldr r5, [sp, 0x28] - ldr r7, [sp, 0x30] - ldr r1, [sp, 0x34] - lsls r1, 16 - lsrs r1, 16 - mov r10, r1 - movs r1, 0 - str r1, [sp] - ldr r4, _080142B8 - ldr r3, _080142BC - adds r2, r4, r3 - adds r1, r4, 0 - mov r3, r10 - bl xxx_format_string - ldr r0, _080142C0 - str r4, [r0] - ldr r0, _080142C4 - str r6, [r0, 0x24] - ldr r0, _080142C8 - str r5, [r0] - ldr r0, _080142CC - mov r4, r8 - str r4, [r0] - ldr r0, _080142D0 - ldr r5, [sp, 0x24] - str r5, [r0] - ldr r0, _080142D4 - mov r6, r9 - str r6, [r0] - ldr r0, _080142D8 - bl sub_801317C - movs r0, 0x10 - mov r1, r10 - ands r0, r1 - cmp r0, 0 - beq _080142E4 - ldr r2, _080142DC - adds r1, r2, 0 - ldr r0, _080142E0 - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - ldm r0!, {r3,r4,r6} - stm r1!, {r3,r4,r6} - b _080142F2 - .align 2, 0 -_080142B8: .4byte gUnknown_202E798 -_080142BC: .4byte 0x000003e7 -_080142C0: .4byte gUnknown_202E794 -_080142C4: .4byte gUnknown_202E748 -_080142C8: .4byte gUnknown_202EC10 -_080142CC: .4byte gUnknown_202EC14 -_080142D0: .4byte gUnknown_202EC18 -_080142D4: .4byte gUnknown_202EC1C -_080142D8: .4byte gUnknown_202EC28 -_080142DC: .4byte gUnknown_203B198 -_080142E0: .4byte gUnknown_80D48DC -_080142E4: - ldr r2, _08014358 - adds r1, r2, 0 - ldr r0, _0801435C - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} -_080142F2: - adds r4, r2, 0 - movs r0, 0 - strh r0, [r4, 0x24] - strh r0, [r4, 0x26] - strh r0, [r4, 0x28] - movs r0, 0x40 - strb r0, [r4, 0x18] - cmp r7, 0 - beq _08014368 - ldr r1, [r7, 0x4] - cmp r1, 0 - beq _08014368 - ldrb r0, [r7, 0xC] - lsls r0, 3 - adds r1, 0x4 - adds r1, r0 - ldr r0, [r1] - cmp r0, 0 - beq _08014368 - ldrh r0, [r7, 0x8] - strh r0, [r4, 0x20] - ldrh r0, [r7, 0xA] - strh r0, [r4, 0x22] - movs r0, 0x5 - strh r0, [r4, 0x24] - strh r0, [r4, 0x26] - strh r0, [r4, 0x28] - movs r4, 0 -_0801432A: - adds r0, r4, 0 - adds r0, 0xE0 - ldr r2, [r7, 0x4] - ldrb r1, [r7, 0xC] - lsls r1, 3 - adds r2, r1 - lsls r3, r4, 2 - ldr r1, [r2] - adds r1, r3 - bl SetBGPaletteBufferColorArray - adds r4, 0x1 - cmp r4, 0xF - ble _0801432A - movs r0, 0x1 - str r0, [sp] - ldrb r0, [r7, 0xE] - cmp r0, 0 - beq _08014360 - ldr r1, _08014358 - movs r0, 0x7 - b _08014364 - .align 2, 0 -_08014358: .4byte gUnknown_203B198 -_0801435C: .4byte gUnknown_80D48C4 -_08014360: - ldr r1, _080143E8 - movs r0, 0x5 -_08014364: - str r0, [r1, 0x1C] - adds r4, r1, 0 -_08014368: - ldr r2, _080143EC - adds r1, r4, 0 - adds r1, 0x30 - adds r0, r2, 0 - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - adds r0, r4, 0 - adds r0, 0x48 - ldm r2!, {r1,r3,r5} - stm r0!, {r1,r3,r5} - ldm r2!, {r1,r3,r6} - stm r0!, {r1,r3,r6} - bl sub_8004914 - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, _080143F0 - movs r4, 0 - movs r2, 0 - movs r0, 0x4 - strh r0, [r1] - strh r0, [r1, 0x2] - movs r0, 0x70 - strh r0, [r1, 0x8] - ldr r0, _080143F4 - movs r5, 0x2 - ldrsh r0, [r0, r5] - lsls r0, 3 - adds r0, 0x22 - strh r0, [r1, 0xA] - movs r0, 0x7 - str r0, [r1, 0x10] - str r2, [r1, 0x1C] - adds r1, 0x20 - strb r4, [r1] - movs r0, 0x10 - mov r6, r10 - ands r0, r6 - movs r1, 0x3 - cmp r0, 0 - beq _080143C6 - movs r1, 0x8 -_080143C6: - adds r0, r1, 0 - bl sub_80063D8 - ldr r0, _080143F8 - movs r1, 0x1 - str r1, [r0] - ldr r0, _080143FC - mov r2, r10 - strh r2, [r0] - movs r0, 0x20 - mov r3, r10 - ands r0, r3 - cmp r0, 0 - beq _08014404 - ldr r0, _08014400 - strb r1, [r0] - b _08014408 - .align 2, 0 -_080143E8: .4byte gUnknown_203B198 -_080143EC: .4byte gUnknown_80D48AC -_080143F0: .4byte gUnknown_202E748 -_080143F4: .4byte gUnknown_2027370 -_080143F8: .4byte gUnknown_202E744 -_080143FC: .4byte gUnknown_202E77C -_08014400: .4byte gUnknown_202E790 -_08014404: - ldr r0, _0801445C - strb r4, [r0] -_08014408: - movs r0, 0x80 - lsls r0, 3 - mov r4, r10 - ands r0, r4 - cmp r0, 0 - beq _08014418 - bl sub_8094C14 -_08014418: - ldr r0, _08014460 - movs r1, 0x1 - str r1, [r0] - ldr r0, _08014464 - str r1, [r0] - bl sub_80048F8 - ldr r1, _08014468 - movs r0, 0 - strb r0, [r1] - ldr r1, _0801446C - movs r0, 0 - str r0, [r1] - ldr r5, [sp] - cmp r5, 0 - beq _08014480 - ldr r0, [r7, 0x4] - ldrb r1, [r7, 0xC] - lsls r1, 3 - adds r0, 0x4 - adds r0, r1 - ldr r4, [r0] - movs r0, 0x1 - bl sub_80073B8 - ldrb r0, [r7, 0xD] - cmp r0, 0 - bne _08014470 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0xE - bl sub_8008274 - b _0801447A - .align 2, 0 -_0801445C: .4byte gUnknown_202E790 -_08014460: .4byte gUnknown_202E788 -_08014464: .4byte gUnknown_202E78C -_08014468: .4byte gUnknown_202E791 -_0801446C: .4byte gUnknown_202E784 -_08014470: - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0xE - bl sub_800836C -_0801447A: - movs r0, 0x1 - bl sub_80073E0 -_08014480: - 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_8014248 - - thumb_func_start sub_8014490 -sub_8014490: - ldr r0, _0801449C - movs r1, 0 - str r1, [r0] - ldr r0, _080144A0 - str r1, [r0] - bx lr - .align 2, 0 -_0801449C: .4byte gUnknown_202E744 -_080144A0: .4byte gUnknown_202EC1C - thumb_func_end sub_8014490 - - thumb_func_start sub_80144A4 -sub_80144A4: - push {lr} - adds r1, r0, 0 - cmp r1, 0 - beq _080144B2 - ldr r0, _080144BC - ldr r0, [r0] - str r0, [r1] -_080144B2: - ldr r0, _080144C0 - ldr r0, [r0] - pop {r1} - bx r1 - .align 2, 0 -_080144BC: .4byte gUnknown_202EC1C -_080144C0: .4byte gUnknown_202E744 - thumb_func_end sub_80144A4 - - thumb_func_start xxx_draw_string_80144C4 -xxx_draw_string_80144C4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - movs r0, 0x1 - mov r10, r0 - ldr r1, _080144F4 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_080144DC: - ldr r0, _080144F8 - ldr r1, [r0] - adds r3, r0, 0 - cmp r1, 0xB - bls _080144E8 - b _08014A6A -_080144E8: - lsls r0, r1, 2 - ldr r1, _080144FC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080144F4: .4byte gUnknown_202E784 -_080144F8: .4byte gUnknown_202E744 -_080144FC: .4byte _08014500 - .align 2, 0 -_08014500: - .4byte _08014A72 - .4byte _08014530 - .4byte _08014708 - .4byte _08014A38 - .4byte _08014A48 - .4byte _08014A60 - .4byte _08014778 - .4byte _080147E2 - .4byte _080147E2 - .4byte _080147E2 - .4byte _080149D8 - .4byte _08014A04 -_08014530: - ldr r0, _08014540 - ldr r6, [r0] - ldr r0, _08014544 - ldrb r0, [r0] - cmp r0, 0 - beq _0801457C - ldr r7, _08014548 - b _08014580 - .align 2, 0 -_08014540: .4byte gUnknown_202E794 -_08014544: .4byte gUnknown_202E790 -_08014548: .4byte 0x0001869f -_0801454C: - str r2, [r3, 0x1C] - adds r1, r3, 0 - adds r1, 0x20 - movs r0, 0x1 - strb r0, [r1] - ldr r1, _0801456C - movs r0, 0x8 - str r0, [r1] - ldr r0, _08014570 - strb r2, [r0] - ldr r1, _08014574 - ldr r0, _08014578 - ldr r0, [r0] - str r0, [r1] - b _0801466C - .align 2, 0 -_0801456C: .4byte gUnknown_202E744 -_08014570: .4byte gUnknown_202E791 -_08014574: .4byte gUnknown_202E780 -_08014578: .4byte gUnknown_202E738 -_0801457C: - ldr r0, _08014594 - ldr r7, [r0] -_08014580: - ldr r1, _08014598 - movs r0, 0 - str r0, [r1, 0x2C] - bl sub_80073B8 - ldr r1, _0801459C - mov r8, r1 - ldr r2, _080145A0 - mov r9, r2 - b _08014652 - .align 2, 0 -_08014594: .4byte gUnknown_202E788 -_08014598: .4byte gUnknown_202E748 -_0801459C: .4byte gUnknown_202E744 -_080145A0: .4byte gUnknown_202E780 -_080145A4: - adds r0, r4, 0 - adds r0, 0x20 - ldrb r5, [r0] - cmp r5, 0 - beq _080145EC - movs r3, 0x2 - ldrsh r0, [r4, r3] - cmp r0, 0x22 - ble _080145CC - movs r0, 0x8 - mov r4, r8 - str r0, [r4] - ldr r0, _080145C8 - ldr r0, [r0] - mov r1, r9 - str r0, [r1] - b _080145DA - .align 2, 0 -_080145C8: .4byte gUnknown_202E738 -_080145CC: - movs r0, 0x7 - mov r2, r8 - str r0, [r2] - ldr r0, _080145E4 - ldr r0, [r0] - mov r3, r9 - str r0, [r3] -_080145DA: - ldr r1, _080145E8 - movs r0, 0 - strb r0, [r1] - b _0801466C - .align 2, 0 -_080145E4: .4byte gUnknown_202E73C -_080145E8: .4byte gUnknown_202E791 -_080145EC: - ldrb r0, [r6] - cmp r0, 0 - beq _0801466C - cmp r0, 0xD - beq _080145FA - cmp r0, 0xA - bne _08014608 -_080145FA: - movs r0, 0x4 - strh r0, [r4] - ldrh r0, [r4, 0x2] - adds r0, 0xB - strh r0, [r4, 0x2] - adds r6, 0x1 - b _08014630 -_08014608: - adds r0, r6, 0 - add r1, sp, 0x4 - bl xxx_get_next_char_from_string - adds r6, r0, 0 - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - ldr r2, [sp, 0x4] - ldr r3, [r4, 0x10] - str r5, [sp] - bl xxx_call_draw_char - ldrh r1, [r4] - adds r1, r0 - strh r1, [r4] - ldr r0, _08014694 - ldr r0, [r0] - str r0, [r4, 0x2C] -_08014630: - ldr r3, _08014698 - movs r4, 0x2 - ldrsh r0, [r3, r4] - cmp r0, 0x22 - ble _08014650 - ldr r0, _0801469C - ldrh r1, [r0] - movs r0, 0x10 - ands r0, r1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0 - bne _0801464C - b _0801454C -_0801464C: - movs r0, 0x4 - strh r0, [r3, 0x2] -_08014650: - subs r7, 0x1 -_08014652: - cmp r7, 0 - ble _0801466C - ldr r4, _08014698 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8009190 - adds r6, r0, 0 - adds r0, r4, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0 - beq _080145A4 -_0801466C: - movs r0, 0 - bl sub_80073E0 - ldr r4, _080146A0 - str r6, [r4] - ldr r0, _080146A4 - bl sub_801317C - ldr r0, [r4] - ldrb r0, [r0] - cmp r0, 0 - bne _080146BC - ldr r0, _080146A8 - ldr r0, [r0] - cmp r0, 0 - beq _080146B0 - ldr r1, _080146AC - movs r0, 0x3 - str r0, [r1] - b _08014A72 - .align 2, 0 -_08014694: .4byte gUnknown_202E78C -_08014698: .4byte gUnknown_202E748 -_0801469C: .4byte gUnknown_202E77C -_080146A0: .4byte gUnknown_202E794 -_080146A4: .4byte gUnknown_202EC28 -_080146A8: .4byte gUnknown_202EC14 -_080146AC: .4byte gUnknown_202E744 -_080146B0: - ldr r1, _080146B8 - movs r0, 0x6 - str r0, [r1] - b _08014A72 - .align 2, 0 -_080146B8: .4byte gUnknown_202E744 -_080146BC: - ldr r0, _080146E8 - movs r2, 0 - str r2, [r0, 0x30] - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - beq _080146FC - ldr r1, _080146EC - ldr r0, [r1] - cmp r0, 0x1 - beq _080146D4 - b _08014A72 -_080146D4: - movs r0, 0x7 - str r0, [r1] - ldr r0, _080146F0 - strb r2, [r0] - ldr r1, _080146F4 - ldr r0, _080146F8 - ldr r0, [r0] - str r0, [r1] - b _08014A72 - .align 2, 0 -_080146E8: .4byte gUnknown_202E748 -_080146EC: .4byte gUnknown_202E744 -_080146F0: .4byte gUnknown_202E791 -_080146F4: .4byte gUnknown_202E780 -_080146F8: .4byte gUnknown_202E738 -_080146FC: - ldr r1, _08014704 - movs r0, 0x2 - b _08014A68 - .align 2, 0 -_08014704: .4byte gUnknown_202E744 -_08014708: - ldr r4, _08014760 - ldrh r1, [r4] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08014718 - bl sub_8011A04 -_08014718: - ldrh r1, [r4] - movs r0, 0x2 - ands r0, r1 - ldr r2, _08014764 - cmp r0, 0 - bne _08014742 - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08014742 - ldr r0, _08014768 - ldrh r1, [r0, 0x2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _08014742 - ldr r0, _0801476C - movs r1, 0x1 - strb r1, [r0] - ldr r0, _08014770 - str r0, [r2, 0x30] -_08014742: - ldr r1, [r2, 0x30] - adds r1, 0x1 - str r1, [r2, 0x30] - ldr r0, [r2, 0x2C] - cmp r1, r0 - bgt _08014750 - b _08014A72 -_08014750: - ldr r1, _08014774 - movs r0, 0x1 - str r0, [r1] - adds r1, r2, 0 - adds r1, 0x21 - movs r0, 0 - strb r0, [r1] - b _08014A6A - .align 2, 0 -_08014760: .4byte gUnknown_202E77C -_08014764: .4byte gUnknown_202E748 -_08014768: .4byte gUnknown_20255F0 -_0801476C: .4byte gUnknown_202E790 -_08014770: .4byte 0x0001869f -_08014774: .4byte gUnknown_202E744 -_08014778: - ldr r0, _080147B4 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 1 - ands r0, r1 - cmp r0, 0 - beq _080147DC - movs r0, 0x9 - str r0, [r3] - ldr r1, _080147B8 - movs r0, 0 - strb r0, [r1] - ldr r0, _080147BC - ldr r1, [r0] - cmp r1, 0 - ble _080147C8 - ldr r2, _080147C0 - ldr r0, _080147C4 - ldr r0, [r0] - subs r0, r1, r0 - str r0, [r2] - cmp r0, 0 - blt _080147A8 - b _08014A6A -_080147A8: - movs r0, 0xB - str r0, [r3] - movs r0, 0 - str r0, [r2] - b _08014A6A - .align 2, 0 -_080147B4: .4byte gUnknown_202E77C -_080147B8: .4byte gUnknown_202E791 -_080147BC: .4byte gUnknown_202E740 -_080147C0: .4byte gUnknown_202E780 -_080147C4: .4byte gUnknown_202E784 -_080147C8: - ldr r0, _080147D4 - ldr r1, _080147D8 - ldr r1, [r1] - str r1, [r0] - b _08014A6A - .align 2, 0 -_080147D4: .4byte gUnknown_202E780 -_080147D8: .4byte gUnknown_202E738 -_080147DC: - movs r0, 0xB - str r0, [r3] - b _08014A6A -_080147E2: - movs r5, 0 - ldr r0, _0801481C - adds r0, 0x20 - strb r5, [r0] - ldr r4, _08014820 - adds r0, r4, 0 - movs r1, 0 - bl nullsub_34 - ldr r0, _08014824 - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08014802 - b _0801494C -_08014802: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0801482C - ldr r1, _08014828 - ldr r0, [r1] - cmp r0, 0 - bgt _08014814 - b _0801494C -_08014814: - subs r0, 0x1 - str r0, [r1] - b _08014856 - .align 2, 0 -_0801481C: .4byte gUnknown_202E748 -_08014820: .4byte gUnknown_202EC28 -_08014824: .4byte gUnknown_202E77C -_08014828: .4byte gUnknown_202E780 -_0801482C: - ldr r2, _080148E4 - ldrh r1, [r2, 0x2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0801483A - b _0801494C -_0801483A: - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _08014842 - b _0801494C -_08014842: - ldrh r1, [r2] - movs r0, 0xF2 - ands r0, r1 - cmp r0, 0x2 - bne _0801484E - b _0801494C -_0801484E: - ldrb r0, [r4, 0x5] - cmp r0, 0 - beq _08014856 - movs r5, 0x1 -_08014856: - cmp r5, 0 - bne _0801494C - ldr r1, _080148E8 - ldrb r0, [r1] - adds r2, r0, 0x1 - strb r2, [r1] - ldr r0, _080148EC - ldrh r7, [r0] - movs r0, 0x2 - ands r0, r7 - cmp r0, 0 - beq _08014870 - b _08014A72 -_08014870: - movs r0, 0x8 - ands r2, r0 - cmp r2, 0 - bne _0801487A - b _08014A72 -_0801487A: - ldr r3, _080148F0 - ldrh r1, [r3] - ldr r0, _080148F4 - ands r0, r1 - ldr r1, _080148F8 - ands r0, r1 - ldr r4, _080148FC - ands r0, r4 - ldr r1, _08014900 - ands r0, r1 - ldr r1, _08014904 - ands r0, r1 - movs r1, 0x80 - lsls r1, 7 - ldr r2, _08014908 - ands r0, r2 - orrs r0, r1 - strh r0, [r3] - ldrh r0, [r3, 0x2] - ldr r5, _0801490C - ands r5, r0 - ands r5, r2 - strh r5, [r3, 0x2] - movs r2, 0xFC - lsls r2, 2 - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r4 - movs r6, 0xF - lsls r1, r6, 12 - ldr r2, _08014910 - ands r0, r2 - movs r4, 0 - mov r8, r4 - orrs r0, r1 - strh r0, [r3, 0x4] - movs r0, 0x10 - ands r0, r7 - adds r4, r3, 0 - cmp r0, 0 - beq _08014914 - movs r2, 0xF0 - lsls r2, 3 - ldrh r1, [r4, 0x6] - adds r0, r6, 0 - ands r0, r1 - orrs r0, r2 - strh r0, [r4, 0x6] - movs r0, 0x70 - b _08014932 - .align 2, 0 -_080148E4: .4byte gUnknown_20255F0 -_080148E8: .4byte gUnknown_202E791 -_080148EC: .4byte gUnknown_202E77C -_080148F0: .4byte gUnknown_202E6E0 -_080148F4: .4byte 0x0000feff -_080148F8: .4byte 0x0000fdff -_080148FC: .4byte 0x0000f3ff -_08014900: .4byte 0x0000efff -_08014904: .4byte 0x0000dfff -_08014908: .4byte 0x00003fff -_0801490C: .4byte 0x0000c1ff -_08014910: .4byte 0x00000fff -_08014914: - ldr r3, _08014944 - movs r0, 0xA - ldrsh r1, [r3, r0] - adds r1, 0x1 - ands r1, r2 - lsls r1, 4 - ldrh r2, [r4, 0x6] - adds r0, r6, 0 - ands r0, r2 - orrs r0, r1 - strh r0, [r4, 0x6] - movs r1, 0x8 - ldrsh r0, [r3, r1] - ldr r1, _08014948 - ands r0, r1 -_08014932: - strh r0, [r4, 0x2] - movs r1, 0x80 - lsls r1, 1 - adds r0, r4, 0 - movs r2, 0 - movs r3, 0 - bl AddSprite - b _08014A72 - .align 2, 0 -_08014944: .4byte gUnknown_202E748 -_08014948: .4byte 0x000001ff -_0801494C: - ldr r0, _08014960 - ldr r0, [r0] - ldrb r0, [r0] - cmp r0, 0 - bne _08014968 - ldr r1, _08014964 - movs r0, 0xB - str r0, [r1] - b _080149BA - .align 2, 0 -_08014960: .4byte gUnknown_202E794 -_08014964: .4byte gUnknown_202E744 -_08014968: - ldr r4, _08014974 - ldr r0, [r4] - cmp r0, 0x9 - bne _08014978 - movs r0, 0xB - b _080149B8 - .align 2, 0 -_08014974: .4byte gUnknown_202E744 -_08014978: - cmp r0, 0x8 - bne _080149B6 - ldr r2, _080149A0 - movs r1, 0x4 - strh r1, [r2] - movs r3, 0x2 - ldrsh r0, [r2, r3] - cmp r0, 0x22 - ble _080149B6 - strh r1, [r2, 0x2] - ldr r0, _080149A4 - ldrh r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080149A8 -_08014998: - movs r0, 0 - bl sub_8008C54 - b _080149B6 - .align 2, 0 -_080149A0: .4byte gUnknown_202E748 -_080149A4: .4byte gUnknown_202E77C -_080149A8: - ldr r1, [r2, 0x1C] - cmp r1, 0 - bne _08014998 - movs r0, 0xA - str r0, [r4] - str r1, [r2, 0x28] - b _080149BA -_080149B6: - movs r0, 0x1 -_080149B8: - str r0, [r4] -_080149BA: - ldr r1, _080149D0 - movs r0, 0x70 - strh r0, [r1, 0x8] - ldr r0, _080149D4 - movs r4, 0x2 - ldrsh r0, [r0, r4] - lsls r0, 3 - adds r0, 0x22 - strh r0, [r1, 0xA] - b _08014A72 - .align 2, 0 -_080149D0: .4byte gUnknown_202E748 -_080149D4: .4byte gUnknown_2027370 -_080149D8: - ldr r4, _080149F8 - ldr r0, [r4, 0x28] - adds r0, 0x1 - str r0, [r4, 0x28] - ldr r0, _080149FC - ldr r1, [r0] - movs r0, 0 - bl _call_via_r1 - ldr r0, [r4, 0x28] - cmp r0, 0x11 - ble _08014A72 - ldr r1, _08014A00 - movs r0, 0x1 - str r0, [r1] - b _08014A72 - .align 2, 0 -_080149F8: .4byte gUnknown_202E748 -_080149FC: .4byte gUnknown_203B088 -_08014A00: .4byte gUnknown_202E744 -_08014A04: - ldr r0, _08014A2C - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - beq _08014A34 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, _08014A30 - movs r0, 0 - str r0, [r1] - b _08014A72 - .align 2, 0 -_08014A2C: .4byte gUnknown_202E77C -_08014A30: .4byte gUnknown_202E744 -_08014A34: - str r0, [r3] - b _08014A72 -_08014A38: - bl sub_8014A88 - ldr r1, _08014A44 - movs r0, 0x4 - str r0, [r1] - b _08014A72 - .align 2, 0 -_08014A44: .4byte gUnknown_202E744 -_08014A48: - bl sub_8014B94 - lsls r0, 24 - cmp r0, 0 - beq _08014A72 - ldr r1, _08014A5C - movs r0, 0x5 - str r0, [r1] - b _08014A72 - .align 2, 0 -_08014A5C: .4byte gUnknown_202E744 -_08014A60: - bl nullsub_35 - ldr r1, _08014A84 - movs r0, 0xB -_08014A68: - str r0, [r1] -_08014A6A: - mov r0, r10 - cmp r0, 0 - beq _08014A72 - b _080144DC -_08014A72: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08014A84: .4byte gUnknown_202E744 - thumb_func_end xxx_draw_string_80144C4 - - thumb_func_start sub_8014A88 -sub_8014A88: - push {r4-r7,lr} - sub sp, 0x88 - ldr r0, _08014A98 - ldr r4, [r0] - movs r5, 0 - movs r7, 0 - movs r6, 0 - b _08014ABE - .align 2, 0 -_08014A98: .4byte gUnknown_202EC14 -_08014A9C: - adds r5, 0xC - ldr r0, [r4] - add r1, sp, 0x8 - add r2, sp, 0x88 - movs r3, 0 - bl xxx_format_string - add r0, sp, 0x8 - bl sub_8008ED0 - cmp r7, r0 - bge _08014AB6 - adds r7, r0, 0 -_08014AB6: - adds r4, 0x8 - adds r6, 0x1 - cmp r6, 0x9 - bgt _08014AC4 -_08014ABE: - ldr r0, [r4] - cmp r0, 0 - bne _08014A9C -_08014AC4: - adds r0, r5, 0 - cmp r5, 0 - bge _08014ACC - adds r0, r5, 0x7 -_08014ACC: - asrs r2, r0, 3 - movs r0, 0x7 - ands r5, r0 - cmp r5, 0 - beq _08014AD8 - adds r2, 0x1 -_08014AD8: - ldr r4, _08014B74 - ldr r0, _08014B78 - ldr r0, [r0] - str r0, [r4, 0x34] - adds r1, r7, 0 - cmp r1, 0 - bge _08014AE8 - adds r1, 0x7 -_08014AE8: - asrs r1, 3 - adds r1, 0x2 - strh r1, [r4, 0x3C] - adds r0, r4, 0 - adds r0, 0x40 - strh r2, [r0] - strh r2, [r4, 0x3E] - movs r0, 0x1C - subs r0, r1 - strh r0, [r4, 0x38] - movs r0, 0xE - subs r0, r2 - strh r0, [r4, 0x3A] - movs r0, 0x80 - strb r0, [r4] - movs r0, 0xC0 - strb r0, [r4, 0x18] - ldr r5, _08014B7C - ldr r0, [r5] - cmp r0, 0 - beq _08014B1E - adds r1, r4, 0 - adds r1, 0x48 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} -_08014B1E: - bl sub_8004914 - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0 - bl sub_800641C - ldr r0, _08014B80 - ldr r1, _08014B84 - ldr r1, [r1] - ldr r2, _08014B88 - ldr r3, _08014B8C - ldr r3, [r3] - ldr r4, _08014B90 - ldr r4, [r4] - str r4, [sp] - movs r4, 0x2 - str r4, [sp, 0x4] - bl sub_8012D60 - ldr r0, [r5] - cmp r0, 0 - beq _08014B6A - movs r0, 0x3 - bl sub_80073B8 - ldr r0, [r5] - ldr r2, [r0, 0x18] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - movs r1, 0x2 - movs r3, 0x3 - bl xxx_call_draw_string - movs r0, 0x3 - bl sub_80073E0 -_08014B6A: - add sp, 0x88 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08014B74: .4byte gUnknown_203B198 -_08014B78: .4byte gUnknown_202EC10 -_08014B7C: .4byte gUnknown_202EC20 -_08014B80: .4byte gUnknown_202EBC0 -_08014B84: .4byte gUnknown_202EC14 -_08014B88: .4byte gUnknown_80D48A0 -_08014B8C: .4byte gUnknown_202EC18 -_08014B90: .4byte gUnknown_202EC1C - thumb_func_end sub_8014A88 - - thumb_func_start sub_8014B94 -sub_8014B94: - push {r4,lr} - ldr r4, _08014BA8 - adds r0, r4, 0 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - beq _08014BAC - movs r0, 0 - b _08014BB6 - .align 2, 0 -_08014BA8: .4byte gUnknown_202EBC0 -_08014BAC: - ldr r1, _08014BBC - adds r0, r4, 0 - bl sub_8013114 - movs r0, 0x1 -_08014BB6: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08014BBC: .4byte gUnknown_202EC1C - thumb_func_end sub_8014B94 - - thumb_func_start nullsub_35 -nullsub_35: - bx lr - thumb_func_end nullsub_35 - - thumb_func_start xxx_format_string -xxx_format_string: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x40 - adds r5, r0, 0 - str r1, [sp, 0x3C] - adds r7, r2, 0 - lsls r3, 16 - lsrs r3, 16 - mov r8, r3 - movs r0, 0x1 - mov r10, r0 - mov r9, r0 - subs r7, 0x1 - b _08014F62 -_08014BE6: - movs r1, 0x1 - b _08014C2C -_08014BEA: - mov r0, r10 - cmp r0, 0 - beq _08014C24 - movs r1, 0 - mov r10, r1 - mov r9, r1 - movs r0, 0x8 - mov r1, r8 - ands r0, r1 - cmp r0, 0 - beq _08014C2E - ldr r0, _08014C1C - add r4, sp, 0x3C - adds r1, r4, 0 - adds r2, r7, 0 - mov r3, r8 - bl sub_8014FA8 - ldr r0, _08014C20 - adds r1, r4, 0 - adds r2, r7, 0 - mov r3, r8 - bl sub_8014FA8 - b _08014C2E - .align 2, 0 -_08014C1C: .4byte gUnknown_202E5D8 -_08014C20: .4byte gUnknown_80D48F4 -_08014C24: - mov r0, r9 - cmp r0, 0 - beq _08014C2E - movs r1, 0 -_08014C2C: - mov r9, r1 -_08014C2E: - cmp r6, 0x23 - bne _08014C5A - ldrb r3, [r5, 0x1] - cmp r3, 0x50 - beq _08014C3C - cmp r3, 0x70 - bne _08014C42 -_08014C3C: - movs r0, 0x1 - mov r10, r0 - mov r9, r0 -_08014C42: - ldr r1, [sp, 0x3C] - adds r2, r1, 0x1 - cmp r2, r7 - bcs _08014C56 - movs r0, 0x23 - strb r0, [r1] - str r2, [sp, 0x3C] - strb r3, [r1, 0x1] - adds r0, r2, 0x1 - str r0, [sp, 0x3C] -_08014C56: - adds r5, 0x2 - b _08014F62 -_08014C5A: - cmp r6, 0x24 - beq _08014C60 - b _08014F26 -_08014C60: - movs r4, 0 - adds r5, 0x1 - ldrb r0, [r5] - subs r0, 0x24 - cmp r0, 0x52 - bls _08014C6E - b _08014F0E -_08014C6E: - lsls r0, 2 - ldr r1, _08014C78 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08014C78: .4byte _08014C7C - .align 2, 0 -_08014C7C: - .4byte _08014F04 - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0C - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014EC4 - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014E60 - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014E54 - .4byte _08014DC8 - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014DDC - .4byte _08014E10 - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014F0E - .4byte _08014E24 - .4byte _08014F0E - .4byte _08014E84 -_08014DC8: - adds r5, 0x1 - ldrb r0, [r5] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 4 - ldr r0, _08014DD8 - adds r4, r1, r0 - b _08014F0C - .align 2, 0 -_08014DD8: .4byte gUnknown_202CF58 -_08014DDC: - adds r5, 0x1 - ldrb r0, [r5] - cmp r0, 0x6D - bne _08014DFC - bl sub_808D3BC - adds r1, r0, 0 - ldr r4, _08014DF8 - adds r0, r4, 0 - movs r2, 0 - bl sub_808D9AC - b _08014F0E - .align 2, 0 -_08014DF8: .4byte gUnknown_202EB80 -_08014DFC: - ldrb r0, [r5] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 4 - ldr r0, _08014E0C - adds r4, r1, r0 - b _08014F0C - .align 2, 0 -_08014E0C: .4byte gUnknown_202D098 -_08014E10: - adds r5, 0x1 - ldrb r0, [r5] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 4 - ldr r0, _08014E20 - adds r4, r1, r0 - b _08014F0C - .align 2, 0 -_08014E20: .4byte gUnknown_202D3B8 -_08014E24: - adds r5, 0x1 - movs r0, 0 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _08014E40 - ldr r0, _08014E3C - bl sub_80920D8 - b _08014E48 - .align 2, 0 -_08014E3C: .4byte gUnknown_202E6E8 -_08014E40: - ldr r0, _08014E4C - ldr r1, _08014E50 - bl strcpy -_08014E48: - ldr r4, _08014E4C - b _08014F0E - .align 2, 0 -_08014E4C: .4byte gUnknown_202E6E8 -_08014E50: .4byte gUnknown_80D48F8 -_08014E54: - adds r5, 0x1 - ldr r4, _08014E5C - b _08014F0E - .align 2, 0 -_08014E5C: .4byte gUnknown_202E628 -_08014E60: - adds r5, 0x1 - ldr r1, _08014E7C - ldr r2, _08014E80 - ldrb r0, [r5] - subs r0, 0x30 - lsls r0, 2 - adds r0, r2 - adds r5, 0x1 - ldr r2, [r0] - mov r0, sp - bl sub_800D158 -_08014E78: - mov r4, sp - b _08014F0E - .align 2, 0 -_08014E7C: .4byte gUnknown_80D4900 -_08014E80: .4byte gUnknown_202DE30 -_08014E84: - adds r5, 0x1 - ldr r1, _08014EBC - ldrb r0, [r5] - subs r0, 0x30 - lsls r0, 2 - adds r0, r1 - ldr r3, [r0] - adds r5, 0x1 - ldr r1, _08014EC0 - ldrb r2, [r5] - subs r2, 0x30 - adds r5, 0x1 - mov r0, sp - bl sub_800D158 - mov r0, sp - ldrb r1, [r0] - cmp r1, 0 - beq _08014E78 - movs r2, 0x60 -_08014EAC: - cmp r1, 0x20 - bne _08014EB2 - strb r2, [r0] -_08014EB2: - adds r0, 0x1 - ldrb r1, [r0] - cmp r1, 0 - bne _08014EAC - b _08014E78 - .align 2, 0 -_08014EBC: .4byte gUnknown_202DE30 -_08014EC0: .4byte gUnknown_80D4904 -_08014EC4: - adds r5, 0x1 - ldr r1, _08014EFC - ldrb r0, [r5] - subs r0, 0x30 - lsls r0, 2 - adds r0, r1 - ldr r3, [r0] - adds r5, 0x1 - ldr r1, _08014F00 - ldrb r2, [r5] - subs r2, 0x30 - adds r5, 0x1 - mov r0, sp - bl sub_800D158 - mov r0, sp - ldrb r1, [r0] - cmp r1, 0 - beq _08014E78 - movs r2, 0x60 -_08014EEC: - cmp r1, 0x20 - bne _08014EF2 - strb r2, [r0] -_08014EF2: - adds r0, 0x1 - ldrb r1, [r0] - cmp r1, 0 - bne _08014EEC - b _08014E78 - .align 2, 0 -_08014EFC: .4byte gUnknown_202DE30 -_08014F00: .4byte gUnknown_80D4908 -_08014F04: - ldr r4, _08014F08 - b _08014F0E - .align 2, 0 -_08014F08: .4byte gUnknown_80D4910 -_08014F0C: - adds r5, 0x1 -_08014F0E: - cmp r4, 0 - beq _08014F62 - add r1, sp, 0x3C - adds r0, r4, 0 - adds r2, r7, 0 - mov r3, r8 - bl sub_8014FA8 - lsls r0, 24 - cmp r0, 0 - bne _08014F7E - b _08014F62 -_08014F26: - adds r0, r6, 0 - adds r0, 0x7F - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bls _08014F36 - cmp r6, 0x87 - bne _08014F54 -_08014F36: - ldr r0, [sp, 0x3C] - cmp r0, r7 - bcs _08014F42 - strb r6, [r0] - adds r0, 0x1 - str r0, [sp, 0x3C] -_08014F42: - adds r5, 0x1 - ldrb r1, [r5] - cmp r1, 0 - beq _08014F7E - ldr r0, [sp, 0x3C] - cmp r0, r7 - bcs _08014F60 - strb r1, [r0] - b _08014F5C -_08014F54: - ldr r0, [sp, 0x3C] - cmp r0, r7 - bcs _08014F60 - strb r6, [r0] -_08014F5C: - adds r0, 0x1 - str r0, [sp, 0x3C] -_08014F60: - adds r5, 0x1 -_08014F62: - ldrb r6, [r5] - cmp r6, 0 - beq _08014F7E - cmp r6, 0xD - beq _08014F72 - cmp r6, 0xA - beq _08014F72 - b _08014BEA -_08014F72: - movs r0, 0x80 - mov r1, r8 - ands r0, r1 - cmp r0, 0 - bne _08014F7E - b _08014BE6 -_08014F7E: - ldr r0, [sp, 0x3C] - movs r1, 0 - strb r1, [r0] - ldrb r0, [r5] - cmp r0, 0xD - bne _08014F8C - adds r5, 0x1 -_08014F8C: - ldrb r0, [r5] - cmp r0, 0xA - bne _08014F94 - adds r5, 0x1 -_08014F94: - adds r0, r5, 0 - add sp, 0x40 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end xxx_format_string - - thumb_func_start sub_8014FA8 -sub_8014FA8: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - lsls r3, 16 - lsrs r3, 16 - ldr r2, [r5] - ldrb r1, [r4] - cmp r1, 0 - beq _08014FE4 - movs r0, 0x80 - ands r0, r3 - lsls r0, 16 - lsrs r3, r0, 16 -_08014FC4: - cmp r3, 0 - beq _08014FD2 - cmp r1, 0xD - bne _08014FD2 - str r2, [r5] - movs r0, 0x1 - b _08014FE8 -_08014FD2: - cmp r2, r6 - bcs _08014FDC - ldrb r0, [r4] - strb r0, [r2] - adds r2, 0x1 -_08014FDC: - adds r4, 0x1 - ldrb r1, [r4] - cmp r1, 0 - bne _08014FC4 -_08014FE4: - str r2, [r5] - movs r0, 0 -_08014FE8: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8014FA8 - - thumb_func_start sub_8014FF0 -sub_8014FF0: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x1F8 - adds r5, r0, 0 - adds r6, r1, 0 - adds r0, r2, 0 - mov r8, r3 - ldr r4, [sp, 0x20C] - add r2, sp, 0x1F8 - add r1, sp, 0x4 - movs r3, 0 - bl xxx_format_string - ldr r1, _08015030 - add r1, sp - movs r0, 0 - strb r0, [r1] - str r4, [sp] - adds r0, r5, 0 - adds r1, r6, 0 - add r2, sp, 0x4 - mov r3, r8 - bl xxx_call_draw_string - add sp, 0x1F8 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08015030: .4byte 0x000001f7 - thumb_func_end sub_8014FF0 - - thumb_func_start sub_8015034 -sub_8015034: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x1FC - adds r6, r0, 0 - mov r8, r1 - adds r0, r2, 0 - mov r9, r3 - ldr r4, [sp, 0x214] - ldr r5, [sp, 0x218] - add r2, sp, 0x1FC - add r1, sp, 0x8 - movs r3, 0 - bl xxx_format_string - ldr r1, _0801507C - add r1, sp - movs r0, 0 - strb r0, [r1] - str r4, [sp] - str r5, [sp, 0x4] - adds r0, r6, 0 - mov r1, r8 - add r2, sp, 0x8 - mov r3, r9 - bl sub_8008F8C - add sp, 0x1FC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801507C: .4byte 0x000001fb - thumb_func_end sub_8015034 - - thumb_func_start sub_8015080 -sub_8015080: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r8, r0 - mov r9, r1 - ldr r4, _08015158 - ldr r0, _0801515C - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r1, 0 - str r1, [r0] - mov r12, r4 - ldr r0, _08015160 - mov r10, r0 - mov r5, r12 - movs r3, 0 - movs r2, 0x3 -_080150AC: - mov r4, r12 - ldr r1, [r4] - adds r1, r3 - adds r1, 0x54 - mov r0, r10 - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _080150AC - movs r4, 0 - ldr r1, [r5] - adds r1, 0x54 - ldr r0, _08015164 - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldr r1, [r5] - adds r1, 0x84 - ldr r0, _08015168 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r0, [r5] - adds r0, 0x84 - mov r1, r9 - bl sub_8012CAC - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x54 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0 - bl sub_80073B8 - ldr r2, [r5] - adds r1, r2, 0 - adds r1, 0xB4 - ldr r6, _0801515C - adds r2, r6 - mov r0, r8 - movs r3, 0 - bl xxx_format_string - ldr r2, [r5] - adds r2, 0xB4 - str r4, [sp] - movs r0, 0x4 - movs r1, 0x4 - movs r3, 0 - bl xxx_call_draw_string - movs r0, 0 - bl sub_80073E0 - ldr r0, [r5] - adds r0, 0x4 - movs r1, 0x1 - negs r1, r1 - str r1, [sp] - movs r1, 0x2 - str r1, [sp, 0x4] - mov r1, r9 - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - movs r0, 0x1 - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08015158: .4byte gUnknown_203B1F8 -_0801515C: .4byte 0x000004b4 -_08015160: .4byte gUnknown_80DAF70 -_08015164: .4byte gUnknown_80DAF88 -_08015168: .4byte gUnknown_80DAFA0 - thumb_func_end sub_8015080 - - thumb_func_start sub_801516C -sub_801516C: - push {r4,lr} - ldr r4, _08015184 - ldr r0, [r4] - adds r0, 0x4 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - beq _08015188 - movs r0, 0 - b _08015192 - .align 2, 0 -_08015184: .4byte gUnknown_203B1F8 -_08015188: - ldr r1, [r4] - adds r0, r1, 0x4 - bl sub_8013114 - movs r0, 0x3 -_08015192: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_801516C - - thumb_func_start sub_8015198 -sub_8015198: - ldr r0, _080151A0 - ldr r0, [r0] - ldr r0, [r0] - bx lr - .align 2, 0 -_080151A0: .4byte gUnknown_203B1F8 - thumb_func_end sub_8015198 - - thumb_func_start sub_80151A4 -sub_80151A4: - push {r4,lr} - ldr r4, _080151BC - ldr r0, [r4] - cmp r0, 0 - beq _080151B6 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080151B6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080151BC: .4byte gUnknown_203B1F8 - thumb_func_end sub_80151A4 - - thumb_func_start sub_80151C0 -sub_80151C0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r5, r0, 0 - adds r6, r1, 0 - ldr r4, _080151FC - movs r0, 0xCC - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - str r5, [r0] - movs r1, 0 - strb r1, [r0, 0x19] - ldr r0, [r4] - strb r1, [r0, 0x18] - ldr r0, [r4] - strb r1, [r0, 0x4] - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0x5 - bhi _0801524C - lsls r0, 2 - ldr r1, _08015200 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080151FC: .4byte gUnknown_203B1FC -_08015200: .4byte _08015204 - .align 2, 0 -_08015204: - .4byte _0801524C - .4byte _0801524C - .4byte _0801524C - .4byte _0801524C - .4byte _0801521C - .4byte _08015234 -_0801521C: - ldr r1, _08015230 - ldr r2, [r1] - movs r0, 0x9 - strb r0, [r2, 0x1A] - ldr r2, [r1] - movs r0, 0x1 - strb r0, [r2, 0x4] - ldr r2, [r1] - movs r0, 0x36 - b _08015258 - .align 2, 0 -_08015230: .4byte gUnknown_203B1FC -_08015234: - ldr r1, _08015248 - ldr r2, [r1] - movs r0, 0x9 - strb r0, [r2, 0x1A] - ldr r2, [r1] - movs r0, 0x1 - strb r0, [r2, 0x4] - ldr r2, [r1] - movs r0, 0x18 - b _08015258 - .align 2, 0 -_08015248: .4byte gUnknown_203B1FC -_0801524C: - ldr r1, _08015374 - ldr r2, [r1] - movs r0, 0x6 - strb r0, [r2, 0x1A] - ldr r2, [r1] - movs r0, 0xA -_08015258: - strb r0, [r2, 0x1B] - mov r8, r1 - mov r0, r8 - ldr r2, [r0] - movs r1, 0x9A - lsls r1, 1 - adds r0, r2, r1 - str r6, [r0] - adds r1, r2, 0 - adds r1, 0xF8 - adds r0, r2, 0 - adds r0, 0xFC - str r0, [r1] - movs r2, 0 - mov r1, r8 - movs r3, 0 -_08015278: - ldr r0, [r1] - adds r0, 0xF8 - ldr r0, [r0] - adds r0, r2 - strb r3, [r0] - adds r2, 0x1 - cmp r2, 0x35 - ble _08015278 - ldr r5, _08015374 - ldr r2, [r5] - adds r0, r2, 0 - adds r0, 0xF8 - ldr r0, [r0] - movs r3, 0x9A - lsls r3, 1 - adds r1, r2, r3 - ldr r1, [r1] - ldrb r2, [r2, 0x1B] - bl MemoryCopy8 - movs r2, 0 - ldr r0, [r5] - ldrb r3, [r0, 0x1B] - cmp r2, r3 - bge _080152EA - adds r1, r0, 0 - adds r1, 0xF8 - ldr r0, [r1] - ldrb r0, [r0] - mov r8, r5 - cmp r0, 0 - beq _080152C8 -_080152B8: - adds r2, 0x1 - cmp r2, r3 - bge _080152EA - ldr r0, [r1] - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080152B8 -_080152C8: - mov r4, r8 - ldr r0, [r4] - ldrb r0, [r0, 0x1B] - cmp r2, r0 - bge _080152EA - mov r1, r8 - movs r3, 0 -_080152D6: - ldr r0, [r1] - adds r0, 0xF8 - ldr r0, [r0] - adds r0, r2 - strb r3, [r0] - adds r2, 0x1 - ldr r0, [r1] - ldrb r0, [r0, 0x1B] - cmp r2, r0 - blt _080152D6 -_080152EA: - bl sub_8015F44 - ldr r2, _08015374 - ldr r1, [r2] - strb r0, [r1, 0x1C] - ldr r1, [r2] - ldrb r0, [r1, 0x1C] - ldrb r5, [r1, 0x1B] - cmp r0, r5 - bne _08015302 - subs r0, 0x1 - strb r0, [r1, 0x1C] -_08015302: - movs r6, 0x1 - mov r12, r6 - ldr r6, [r2] - adds r5, r6, 0x6 - ldrh r1, [r6, 0x6] - ldr r0, _08015378 - ands r0, r1 - ldr r1, _0801537C - ands r0, r1 - ldr r2, _08015380 - ands r0, r2 - ldr r1, _08015384 - ands r0, r1 - ldr r1, _08015388 - ands r0, r1 - strh r0, [r6, 0x6] - ldrh r0, [r5, 0x4] - adds r3, r2, 0 - ands r3, r0 - movs r1, 0xF - movs r2, 0xF0 - lsls r2, 8 - ldr r0, _0801538C - ands r3, r0 - orrs r3, r2 - strh r3, [r5, 0x4] - ldrh r0, [r5, 0x2] - movs r4, 0xFE - lsls r4, 8 - ands r4, r0 - movs r0, 0xF0 - orrs r4, r0 - strh r4, [r5, 0x2] - movs r2, 0xF0 - lsls r2, 4 - ldrh r0, [r5, 0x6] - ands r1, r0 - movs r7, 0 - orrs r1, r2 - strh r1, [r5, 0x6] - ldrb r0, [r6, 0x4] - cmp r0, 0 - beq _0801539C - ldr r0, _08015390 - ands r4, r0 - ldr r1, _08015394 - movs r0, 0xFC - lsls r0, 8 - ands r3, r0 - orrs r3, r1 - strh r3, [r5, 0x4] - ldr r0, _08015398 - ands r4, r0 - strh r4, [r5, 0x2] - mov r7, r12 - b _080153BE - .align 2, 0 -_08015374: .4byte gUnknown_203B1FC -_08015378: .4byte 0x0000feff -_0801537C: .4byte 0x0000fdff -_08015380: .4byte 0x0000f3ff -_08015384: .4byte 0x0000efff -_08015388: .4byte 0x0000dfff -_0801538C: .4byte 0x00000fff -_08015390: .4byte 0x0000c1ff -_08015394: .4byte 0x000003f6 -_08015398: .4byte 0x00003fff -_0801539C: - movs r1, 0x80 - lsls r1, 6 - ldr r0, _08015468 - ands r4, r0 - orrs r4, r1 - orrs r4, r7 - movs r1, 0xFC - lsls r1, 2 - movs r0, 0xFC - lsls r0, 8 - ands r3, r0 - orrs r3, r1 - strh r3, [r5, 0x4] - ldr r0, _0801546C - ands r4, r0 - strh r4, [r5, 0x2] - mov r1, r12 -_080153BE: - movs r2, 0x80 - lsls r2, 7 - ldrh r1, [r6, 0x6] - ands r0, r1 - orrs r0, r2 - strh r0, [r6, 0x6] - ldr r5, _08015470 - ldr r1, [r5] - movs r0, 0x4 - strb r0, [r1, 0x16] - ldr r4, [r5] - adds r6, r4, 0 - adds r6, 0xE - ldrh r1, [r4, 0xE] - ldr r0, _08015474 - ands r0, r1 - ldr r1, _08015478 - ands r0, r1 - ldr r3, _0801547C - ands r0, r3 - ldr r1, _08015480 - ands r0, r1 - ldr r1, _08015484 - ands r0, r1 - ldr r1, _0801546C - ands r0, r1 - strh r0, [r4, 0xE] - movs r2, 0xFD - lsls r2, 2 - ldrh r1, [r6, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r3 - movs r2, 0xF - movs r3, 0xF0 - lsls r3, 8 - ldr r1, _08015488 - ands r0, r1 - orrs r0, r3 - strh r0, [r6, 0x4] - movs r0, 0xF0 - strh r0, [r6, 0x2] - subs r1, 0xFF - ldrh r0, [r6, 0x6] - ands r2, r0 - movs r0, 0 - orrs r2, r1 - strh r2, [r6, 0x6] - strb r0, [r4, 0x17] - mov r8, r5 - ldr r2, _0801548C - mov r10, r2 - mov r12, r8 - movs r3, 0x9C - lsls r3, 1 - mov r9, r3 - ldr r4, _08015490 - movs r3, 0 - movs r2, 0x3 -_08015438: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - add r1, r9 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _08015438 - mov r6, r8 - ldr r1, [r6] - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _08015498 - movs r7, 0xA8 - lsls r7, 1 - adds r1, r7 - ldr r0, _08015494 - b _080154A0 - .align 2, 0 -_08015468: .4byte 0x0000c1ff -_0801546C: .4byte 0x00003fff -_08015470: .4byte gUnknown_203B1FC -_08015474: .4byte 0x0000feff -_08015478: .4byte 0x0000fdff -_0801547C: .4byte 0x0000f3ff -_08015480: .4byte 0x0000efff -_08015484: .4byte 0x0000dfff -_08015488: .4byte 0x00000fff -_0801548C: .4byte gUnknown_80DB550 -_08015490: .4byte gUnknown_80DB538 -_08015494: .4byte gUnknown_80DB580 -_08015498: - movs r0, 0xA8 - lsls r0, 1 - adds r1, r0 - ldr r0, _080154EC -_080154A0: - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - mov r0, r8 - ldr r1, [r0] - movs r4, 0x9C - lsls r4, 1 - adds r1, r4 - mov r0, r10 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - bl sub_8004914 - mov r3, r8 - ldr r0, [r3] - adds r0, r4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - bl sub_8015A08 - bl sub_8015C1C - bl sub_8015F84 - movs r0, 0x1 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080154EC: .4byte gUnknown_80DB568 - thumb_func_end sub_80151C0 - - thumb_func_start sub_80154F0 -sub_80154F0: - push {r4,r5,lr} - ldr r4, _08015558 - ldr r1, [r4] - ldrb r0, [r1, 0x16] - adds r0, 0x1 - strb r0, [r1, 0x16] - bl sub_80157D8 - ldr r2, [r4] - ldrb r1, [r2, 0x16] - movs r5, 0x8 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0801551C - adds r0, r2, 0x6 - movs r1, 0x80 - lsls r1, 1 - movs r2, 0 - movs r3, 0 - bl AddSprite -_0801551C: - ldr r1, [r4] - ldrb r0, [r1, 0x17] - adds r0, 0x1 - strb r0, [r1, 0x17] - bl sub_80158BC - ldr r2, [r4] - ldrb r1, [r2, 0x17] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _08015544 - adds r0, r2, 0 - adds r0, 0xE - movs r1, 0x80 - lsls r1, 1 - movs r2, 0 - movs r3, 0 - bl AddSprite -_08015544: - bl sub_8012AE8 - subs r0, 0x1 - cmp r0, 0x5 - bhi _080155E2 - lsls r0, 2 - ldr r1, _0801555C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08015558: .4byte gUnknown_203B1FC -_0801555C: .4byte _08015560 - .align 2, 0 -_08015560: - .4byte _080155C0 - .4byte _080155C6 - .4byte _080155E2 - .4byte _080155D4 - .4byte _08015578 - .4byte _0801558C -_08015578: - ldr r0, _08015588 - ldr r1, [r0] - ldrb r0, [r1, 0x1C] - cmp r0, 0 - beq _080155B8 - subs r0, 0x1 - b _080155A8 - .align 2, 0 -_08015588: .4byte gUnknown_203B1FC -_0801558C: - ldr r5, _080155B4 - ldr r0, [r5] - ldrb r4, [r0, 0x1C] - ldrb r0, [r0, 0x1B] - subs r0, 0x1 - cmp r4, r0 - beq _080155B8 - bl sub_8015F44 - cmp r4, r0 - bge _080155B8 - ldr r1, [r5] - ldrb r0, [r1, 0x1C] - adds r0, 0x1 -_080155A8: - strb r0, [r1, 0x1C] - movs r0, 0x3 - bl sub_80119D4 - b _080155E2 - .align 2, 0 -_080155B4: .4byte gUnknown_203B1FC -_080155B8: - movs r0, 0x2 - bl sub_80119D4 - b _080155E2 -_080155C0: - bl sub_801560C - b _080155E4 -_080155C6: - bl sub_8015748 - lsls r0, 24 - cmp r0, 0 - beq _080155E2 - movs r0, 0x2 - b _080155E4 -_080155D4: - movs r0, 0x3 - bl sub_80119D4 - ldr r0, _080155EC - ldr r1, [r0] - movs r0, 0x5 - strb r0, [r1, 0x1A] -_080155E2: - movs r0, 0 -_080155E4: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080155EC: .4byte gUnknown_203B1FC - thumb_func_end sub_80154F0 - - thumb_func_start sub_80155F0 -sub_80155F0: - push {r4,lr} - ldr r4, _08015608 - ldr r0, [r4] - cmp r0, 0 - beq _08015602 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08015602: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08015608: .4byte gUnknown_203B1FC - thumb_func_end sub_80155F0 - - thumb_func_start sub_801560C -sub_801560C: - push {r4-r6,lr} - ldr r3, _08015640 - ldr r4, _08015644 - ldr r5, [r4] - ldrb r0, [r5, 0x1A] - lsls r1, r0, 1 - adds r1, r0 - ldrb r2, [r5, 0x19] - lsls r0, r2, 8 - subs r0, r2 - adds r0, r1 - lsls r0, 2 - adds r3, 0x8 - adds r0, r3 - ldr r6, [r0] - movs r0, 0x83 - lsls r0, 1 - cmp r6, r0 - beq _0801567A - cmp r6, r0 - bgt _08015648 - subs r0, 0x1 - cmp r6, r0 - beq _0801566C - b _080156BC - .align 2, 0 -_08015640: .4byte gUnknown_80DB0F8 -_08015644: .4byte gUnknown_203B1FC -_08015648: - ldr r0, _08015668 - cmp r6, r0 - bne _080156BC - movs r1, 0 - ldrb r0, [r5, 0x18] - cmp r0, 0 - bne _08015658 - movs r1, 0x1 -_08015658: - strb r1, [r5, 0x18] - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0 - bl sub_8015A08 - b _0801573E - .align 2, 0 -_08015668: .4byte 0x00000107 -_0801566C: - bl sub_8015748 - lsls r0, 24 - cmp r0, 0 - beq _0801573E - movs r0, 0x2 - b _08015740 -_0801567A: - bl sub_8015F44 - cmp r0, 0 - beq _080156D4 - ldr r0, [r4] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08015696 - bl sub_8015F44 - ldr r1, [r4] - ldrb r1, [r1, 0x1B] - cmp r0, r1 - bne _080156D4 -_08015696: - movs r0, 0 - bl sub_80119D4 - ldr r0, _080156B8 - ldr r2, [r0] - movs r1, 0x9A - lsls r1, 1 - adds r0, r2, r1 - ldr r0, [r0] - adds r1, r2, 0 - adds r1, 0xF8 - ldr r1, [r1] - ldrb r2, [r2, 0x1B] - bl MemoryCopy8 - movs r0, 0x3 - b _08015740 - .align 2, 0 -_080156B8: .4byte gUnknown_203B1FC -_080156BC: - ldr r0, [r4] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _080156DC - lsls r0, r6, 24 - lsrs r0, 24 - bl sub_803D0F0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _080156DC -_080156D4: - movs r0, 0x2 - bl sub_80119D4 - b _0801573E -_080156DC: - ldr r0, _08015728 - ldr r3, [r0] - ldrb r1, [r3, 0x18] - adds r4, r0, 0 - cmp r1, 0x1 - bne _0801570A - ldrb r0, [r3, 0x1B] - subs r2, r0, 0x2 - ldrb r3, [r3, 0x1C] - cmp r2, r3 - blt _0801570A - adds r3, r4, 0 -_080156F4: - ldr r0, [r3] - adds r0, 0xF8 - ldr r0, [r0] - adds r0, r2 - ldrb r1, [r0] - strb r1, [r0, 0x1] - subs r2, 0x1 - ldr r0, [r3] - ldrb r0, [r0, 0x1C] - cmp r2, r0 - bge _080156F4 -_0801570A: - ldr r0, [r4] - ldrb r1, [r0, 0x1C] - adds r0, 0xF8 - ldr r0, [r0] - adds r0, r1 - strb r6, [r0] - ldr r1, [r4] - ldrb r2, [r1, 0x1C] - ldrb r0, [r1, 0x1B] - subs r0, 0x1 - cmp r2, r0 - bge _0801572C - adds r0, r2, 0x1 - strb r0, [r1, 0x1C] - b _08015730 - .align 2, 0 -_08015728: .4byte gUnknown_203B1FC -_0801572C: - movs r0, 0x5 - strb r0, [r1, 0x1A] -_08015730: - movs r0, 0 - bl sub_80119D4 - bl sub_8015C1C - bl sub_8015F84 -_0801573E: - movs r0, 0 -_08015740: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_801560C - - thumb_func_start sub_8015748 -sub_8015748: - push {r4,lr} - ldr r4, _0801576C - ldr r2, [r4] - ldrb r1, [r2, 0x1C] - adds r0, r2, 0 - adds r0, 0xF8 - ldr r0, [r0] - adds r0, r1 - ldrb r3, [r0] - cmp r3, 0 - bne _08015790 - cmp r1, 0 - bne _08015770 - movs r0, 0x2 - bl sub_80119D4 - movs r0, 0x1 - b _080157CE - .align 2, 0 -_0801576C: .4byte gUnknown_203B1FC -_08015770: - subs r0, r1, 0x1 - strb r0, [r2, 0x1C] - ldr r0, [r4] - ldrb r1, [r0, 0x1C] - adds r0, 0xF8 - ldr r0, [r0] - adds r0, r1 - strb r3, [r0] - movs r0, 0x1 - bl sub_80119D4 - bl sub_8015C1C - bl sub_8015F84 - b _080157CC -_08015790: - bl sub_8015F44 - subs r3, r0, 0x1 - ldr r0, [r4] - ldrb r2, [r0, 0x1C] - cmp r2, r3 - bge _080157B0 -_0801579E: - ldr r0, [r4] - adds r0, 0xF8 - ldr r0, [r0] - adds r0, r2 - ldrb r1, [r0, 0x1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, r3 - blt _0801579E -_080157B0: - ldr r0, _080157D4 - ldr r0, [r0] - adds r0, 0xF8 - ldr r0, [r0] - adds r0, r3 - movs r1, 0 - strb r1, [r0] - movs r0, 0x1 - bl sub_80119D4 - bl sub_8015C1C - bl sub_8015F84 -_080157CC: - movs r0, 0 -_080157CE: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080157D4: .4byte gUnknown_203B1FC - thumb_func_end sub_8015748 - - thumb_func_start sub_80157D8 -sub_80157D8: - push {r4,r5,lr} - ldr r5, _080157EC - ldr r0, _080157F0 - ldr r0, [r0] - mov r12, r0 - ldr r0, [r0] - cmp r0, 0x4 - bne _080157F8 - ldr r3, _080157F4 - b _080157FE - .align 2, 0 -_080157EC: .4byte gUnknown_20273B8 -_080157F0: .4byte gUnknown_203B1FC -_080157F4: .4byte gUnknown_80DAFC0 -_080157F8: - cmp r0, 0x5 - bne _0801585C - ldr r3, _08015850 -_080157FE: - mov r1, r12 - ldrb r0, [r1, 0x1C] - lsls r0, 2 - adds r0, r3 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r2, 0 - ldrsh r0, [r5, r2] - lsls r0, 3 - adds r1, r0 - ldr r0, _08015854 - ands r1, r0 - mov r4, r12 - adds r4, 0x6 - ldrh r2, [r4, 0x2] - movs r0, 0xFE - lsls r0, 8 - ands r0, r2 - orrs r0, r1 - strh r0, [r4, 0x2] - mov r1, r12 - ldrb r0, [r1, 0x1C] - lsls r0, 2 - adds r0, r3 - movs r2, 0x2 - ldrsh r1, [r0, r2] - movs r3, 0x2 - ldrsh r0, [r5, r3] - lsls r0, 3 - adds r1, r0 - adds r1, 0x5 - ldr r0, _08015858 - ands r1, r0 - lsls r1, 4 - ldrh r2, [r4, 0x6] - movs r0, 0xF - ands r0, r2 - orrs r0, r1 - strh r0, [r4, 0x6] - b _080158B0 - .align 2, 0 -_08015850: .4byte gUnknown_80DB098 -_08015854: .4byte 0x000001ff -_08015858: .4byte 0x00000fff -_0801585C: - mov r0, r12 - ldrb r1, [r0, 0x1C] - lsls r1, 1 - mov r2, r12 - adds r2, 0x1E - adds r2, r1 - adds r0, 0x8A - adds r0, r1 - movs r3, 0 - ldrsh r1, [r0, r3] - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 - ldrh r2, [r2] - adds r1, r2 - movs r2, 0 - ldrsh r0, [r5, r2] - lsls r0, 3 - adds r0, 0x1E - adds r1, r0 - lsls r1, 23 - lsrs r1, 23 - mov r3, r12 - adds r3, 0x6 - ldrh r2, [r3, 0x2] - movs r0, 0xFE - lsls r0, 8 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x2] - movs r0, 0x2 - ldrsh r1, [r5, r0] - lsls r1, 3 - adds r1, 0x22 - ldr r0, _080158B8 - ands r1, r0 - lsls r1, 4 - ldrh r2, [r3, 0x6] - movs r0, 0xF - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x6] -_080158B0: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080158B8: .4byte 0x00000fff - thumb_func_end sub_80157D8 - - thumb_func_start sub_80158BC -sub_80158BC: - push {r4-r6,lr} - ldr r6, _080158D4 - bl sub_8012AE8 - cmp r0, 0x8 - beq _08015908 - cmp r0, 0x8 - bgt _080158D8 - cmp r0, 0x7 - beq _080158E2 - b _08015980 - .align 2, 0 -_080158D4: .4byte gUnknown_2027370 -_080158D8: - cmp r0, 0x9 - beq _08015930 - cmp r0, 0xA - beq _08015958 - b _08015980 -_080158E2: - ldr r4, _08015900 - ldr r3, _08015904 - ldr r2, [r3] - ldrb r0, [r2, 0x1A] - lsls r1, r0, 1 - adds r1, r0 - ldrb r2, [r2, 0x19] - lsls r0, r2, 8 - subs r0, r2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0] - adds r5, r3, 0 - b _08015988 - .align 2, 0 -_08015900: .4byte gUnknown_80DB0F8 -_08015904: .4byte gUnknown_203B1FC -_08015908: - ldr r4, _08015928 - ldr r3, _0801592C - ldr r2, [r3] - ldrb r0, [r2, 0x1A] - lsls r1, r0, 1 - adds r1, r0 - ldrb r2, [r2, 0x19] - lsls r0, r2, 8 - subs r0, r2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x1] - adds r5, r3, 0 - b _08015988 - .align 2, 0 -_08015928: .4byte gUnknown_80DB0F8 -_0801592C: .4byte gUnknown_203B1FC -_08015930: - ldr r4, _08015950 - ldr r3, _08015954 - ldr r2, [r3] - ldrb r0, [r2, 0x1A] - lsls r1, r0, 1 - adds r1, r0 - ldrb r2, [r2, 0x19] - lsls r0, r2, 8 - subs r0, r2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x2] - adds r5, r3, 0 - b _08015988 - .align 2, 0 -_08015950: .4byte gUnknown_80DB0F8 -_08015954: .4byte gUnknown_203B1FC -_08015958: - ldr r4, _08015978 - ldr r3, _0801597C - ldr r2, [r3] - ldrb r0, [r2, 0x1A] - lsls r1, r0, 1 - adds r1, r0 - ldrb r2, [r2, 0x19] - lsls r0, r2, 8 - subs r0, r2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x3] - adds r5, r3, 0 - b _08015988 - .align 2, 0 -_08015978: .4byte gUnknown_80DB0F8 -_0801597C: .4byte gUnknown_203B1FC -_08015980: - ldr r1, _080159F8 - ldr r0, [r1] - ldrb r0, [r0, 0x1A] - adds r5, r1, 0 -_08015988: - adds r4, r5, 0 - ldr r1, [r4] - ldrb r2, [r1, 0x1A] - cmp r0, r2 - beq _080159A0 - strb r0, [r1, 0x1A] - movs r0, 0x3 - bl sub_80119D4 - ldr r1, [r4] - movs r0, 0x8 - strb r0, [r1, 0x17] -_080159A0: - ldr r3, _080159FC - ldr r4, [r5] - ldrb r0, [r4, 0x1A] - lsls r1, r0, 1 - adds r1, r0 - ldrb r2, [r4, 0x19] - lsls r0, r2, 8 - subs r0, r2 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - movs r3, 0 - ldrsh r1, [r6, r3] - lsls r1, 3 - ldrb r2, [r0, 0x4] - adds r1, r2 - subs r1, 0x5 - movs r3, 0x2 - ldrsh r2, [r6, r3] - lsls r2, 3 - ldrb r0, [r0, 0x5] - adds r2, r0 - adds r2, 0x1 - ldr r0, _08015A00 - ands r1, r0 - adds r4, 0xE - ldrh r3, [r4, 0x2] - movs r0, 0xFE - lsls r0, 8 - ands r0, r3 - orrs r0, r1 - strh r0, [r4, 0x2] - ldr r0, _08015A04 - ands r2, r0 - lsls r2, 4 - ldrh r1, [r4, 0x6] - movs r0, 0xF - ands r0, r1 - orrs r0, r2 - strh r0, [r4, 0x6] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080159F8: .4byte gUnknown_203B1FC -_080159FC: .4byte gUnknown_80DB0F8 -_08015A00: .4byte 0x000001ff -_08015A04: .4byte 0x00000fff - thumb_func_end sub_80158BC - - thumb_func_start sub_8015A08 -sub_8015A08: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - movs r0, 0 - bl sub_8008C54 - movs r0, 0 - bl sub_80073B8 - ldr r3, _08015A68 - ldr r2, _08015A6C - ldr r0, [r2] - ldrb r1, [r0, 0x19] - lsls r0, r1, 8 - subs r0, r1 - lsls r0, 2 - adds r1, r3, 0 - adds r1, 0x8 - adds r0, r1 - ldr r4, [r0] - ldr r0, _08015A70 - cmp r4, r0 - bne _08015A3E - b _08015BC0 -_08015A3E: - mov r8, r2 - adds r7, r3, 0 - add r0, sp, 0x14 - mov r10, r0 - movs r6, 0 - mov r9, r6 -_08015A4A: - ldr r0, [r2] - ldrb r1, [r0, 0x19] - lsls r0, r1, 8 - subs r0, r1 - lsls r0, 2 - adds r0, r6, r0 - adds r0, r3 - ldrb r0, [r0, 0x6] - cmp r0, 0x2 - beq _08015AAA - cmp r0, 0x2 - bgt _08015A74 - cmp r0, 0x1 - beq _08015A7A - b _08015A82 - .align 2, 0 -_08015A68: .4byte gUnknown_80DB0F8 -_08015A6C: .4byte gUnknown_203B1FC -_08015A70: .4byte 0x00000109 -_08015A74: - cmp r0, 0x3 - beq _08015A7E - b _08015A82 -_08015A7A: - movs r5, 0x5 - b _08015AAC -_08015A7E: - movs r5, 0x7 - b _08015AAC -_08015A82: - movs r5, 0x7 - mov r1, r8 - ldr r0, [r1] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08015AAC - cmp r4, 0xFF - bgt _08015AA4 - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_803D0F0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _08015AAC - b _08015AAA -_08015AA4: - ldr r0, _08015ADC - cmp r4, r0 - bgt _08015AAC -_08015AAA: - movs r5, 0x2 -_08015AAC: - movs r0, 0x84 - lsls r0, 1 - cmp r4, r0 - beq _08015B9E - subs r0, 0x1 - cmp r4, r0 - bne _08015B04 - mov r2, r8 - ldr r0, [r2] - ldrb r2, [r0, 0x18] - cmp r2, 0 - bne _08015AE4 - ldrb r0, [r0, 0x19] - lsls r1, r0, 8 - subs r1, r0 - lsls r1, 2 - adds r1, r6, r1 - adds r1, r7 - ldrb r0, [r1, 0x4] - adds r0, 0x3 - ldrb r1, [r1, 0x5] - str r2, [sp] - ldr r2, _08015AE0 - b _08015B6A - .align 2, 0 -_08015ADC: .4byte 0x00000101 -_08015AE0: .4byte gUnknown_80DB598 -_08015AE4: - ldrb r0, [r0, 0x19] - lsls r1, r0, 8 - subs r1, r0 - lsls r1, 2 - adds r1, r6, r1 - adds r1, r7 - ldrb r0, [r1, 0x4] - adds r0, 0x3 - ldrb r1, [r1, 0x5] - mov r3, r9 - str r3, [sp] - ldr r2, _08015B00 - b _08015B6A - .align 2, 0 -_08015B00: .4byte gUnknown_80DB5A4 -_08015B04: - cmp r4, 0x20 - bne _08015B34 - add r0, sp, 0x4 - ldr r1, _08015B30 - adds r2, r5, 0 - bl sub_800D158 - mov r1, r8 - ldr r0, [r1] - ldrb r0, [r0, 0x19] - lsls r1, r0, 8 - subs r1, r0 - lsls r1, 2 - adds r1, r6, r1 - adds r1, r7 - ldrb r0, [r1, 0x4] - adds r0, 0x1 - ldrb r1, [r1, 0x5] - mov r2, r9 - str r2, [sp] - add r2, sp, 0x4 - b _08015B6A - .align 2, 0 -_08015B30: .4byte gUnknown_80DB5B0 -_08015B34: - cmp r4, 0xFF - ble _08015B7C - ldr r1, _08015B74 - movs r0, 0xFF - ands r4, r0 - lsls r0, r4, 2 - adds r0, r1 - ldr r3, [r0] - mov r0, r10 - ldr r1, _08015B78 - adds r2, r5, 0 - bl sub_800D158 - mov r3, r8 - ldr r0, [r3] - ldrb r0, [r0, 0x19] - lsls r1, r0, 8 - subs r1, r0 - lsls r1, 2 - adds r1, r6, r1 - adds r1, r7 - ldrb r0, [r1, 0x4] - adds r0, 0x3 - ldrb r1, [r1, 0x5] - mov r2, r9 - str r2, [sp] - mov r2, r10 -_08015B6A: - movs r3, 0 - bl xxx_call_draw_string - b _08015B9E - .align 2, 0 -_08015B74: .4byte gUnknown_80DB4F4 -_08015B78: .4byte gUnknown_80DB5B8 -_08015B7C: - mov r3, r8 - ldr r0, [r3] - ldrb r0, [r0, 0x19] - lsls r1, r0, 8 - subs r1, r0 - lsls r1, 2 - adds r1, r6, r1 - adds r1, r7 - ldrb r0, [r1, 0x4] - ldrb r1, [r1, 0x5] - lsls r2, r4, 24 - lsrs r2, 24 - mov r3, r9 - str r3, [sp] - adds r3, r5, 0 - bl sub_8012C60 -_08015B9E: - adds r6, 0xC - ldr r3, _08015C10 - ldr r2, _08015C14 - ldr r0, [r2] - ldrb r1, [r0, 0x19] - lsls r0, r1, 8 - subs r0, r1 - lsls r0, 2 - adds r0, r6, r0 - adds r1, r3, 0 - adds r1, 0x8 - adds r0, r1 - ldr r4, [r0] - ldr r0, _08015C18 - cmp r4, r0 - beq _08015BC0 - b _08015A4A -_08015BC0: - movs r4, 0xE - str r4, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0xE0 - bl sub_800792C - str r4, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0x47 - movs r3, 0xE0 - bl sub_800792C - str r4, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x48 - bl sub_8007A78 - str r4, [sp] - movs r0, 0 - movs r1, 0xDF - movs r2, 0 - movs r3, 0x48 - bl sub_8007A78 - movs r0, 0 - bl sub_80073E0 - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08015C10: .4byte gUnknown_80DB0F8 -_08015C14: .4byte gUnknown_203B1FC -_08015C18: .4byte 0x00000109 - thumb_func_end sub_8015A08 - - thumb_func_start sub_8015C1C -sub_8015C1C: - push {r4,r5,lr} - sub sp, 0x54 - movs r0, 0x1 - bl sub_8008C54 - movs r0, 0x1 - bl sub_80073B8 - ldr r0, _08015C74 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08015C78 - movs r4, 0xE - str r4, [sp] - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0xE0 - bl sub_800792C - str r4, [sp] - movs r0, 0x1 - movs r1, 0 - movs r2, 0x37 - movs r3, 0xE0 - bl sub_800792C - str r4, [sp] - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0x38 - bl sub_8007A78 - str r4, [sp] - movs r0, 0x1 - movs r1, 0xDF - movs r2, 0 - movs r3, 0x38 - bl sub_8007A78 - b _08015CB2 - .align 2, 0 -_08015C74: .4byte gUnknown_203B1FC -_08015C78: - movs r4, 0xE - str r4, [sp] - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0xB0 - bl sub_800792C - str r4, [sp] - movs r0, 0x1 - movs r1, 0 - movs r2, 0x27 - movs r3, 0xB0 - bl sub_800792C - str r4, [sp] - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0x28 - bl sub_8007A78 - str r4, [sp] - movs r0, 0x1 - movs r1, 0xAF - movs r2, 0 - movs r3, 0x28 - bl sub_8007A78 -_08015CB2: - ldr r0, _08015CC8 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x5 - bhi _08015D50 - lsls r0, 2 - ldr r1, _08015CCC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08015CC8: .4byte gUnknown_203B1FC -_08015CCC: .4byte _08015CD0 - .align 2, 0 -_08015CD0: - .4byte _08015CE8 - .4byte _08015D18 - .4byte _08015CF8 - .4byte _08015D08 - .4byte _08015D28 - .4byte _08015D40 -_08015CE8: - ldr r2, _08015CF4 - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r1, 0x5 - b _08015D32 - .align 2, 0 -_08015CF4: .4byte gUnknown_80DB5C0 -_08015CF8: - ldr r2, _08015D04 - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r1, 0x5 - b _08015D32 - .align 2, 0 -_08015D04: .4byte gUnknown_80DB5D4 -_08015D08: - ldr r2, _08015D14 - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r1, 0x5 - b _08015D32 - .align 2, 0 -_08015D14: .4byte gUnknown_80DB5F8 -_08015D18: - ldr r2, _08015D24 - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r1, 0x5 - b _08015D32 - .align 2, 0 -_08015D24: .4byte gUnknown_80DB61C -_08015D28: - ldr r2, _08015D3C - movs r0, 0 - str r0, [sp] - movs r0, 0x36 - movs r1, 0x2 -_08015D32: - movs r3, 0x1 - bl xxx_call_draw_string - b _08015D50 - .align 2, 0 -_08015D3C: .4byte gUnknown_80DB638 -_08015D40: - ldr r2, _08015D64 - movs r0, 0 - str r0, [sp] - movs r0, 0x30 - movs r1, 0x4 - movs r3, 0x1 - bl xxx_call_draw_string -_08015D50: - ldr r5, _08015D68 - ldr r0, [r5] - ldr r1, [r0] - cmp r1, 0x4 - beq _08015D6C - cmp r1, 0x4 - bcc _08015D88 - cmp r1, 0x5 - beq _08015D7A - b _08015DFE - .align 2, 0 -_08015D64: .4byte gUnknown_80DB638 -_08015D68: .4byte gUnknown_203B1FC -_08015D6C: - adds r0, 0xF8 - ldr r0, [r0] - movs r1, 0x1 - movs r2, 0 - bl sub_8015E10 - b _08015DFE -_08015D7A: - adds r0, 0xF8 - ldr r0, [r0] - movs r1, 0x1 - movs r2, 0 - bl sub_8015EB4 - b _08015DFE -_08015D88: - bl sub_8016028 - adds r3, r0, 0 - movs r0, 0x4 - str r0, [sp] - movs r0, 0x1 - movs r1, 0x26 - movs r2, 0x21 - bl sub_80078A4 - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0xF8 - ldr r0, [r0] - ldrb r1, [r1, 0x1B] - bl sub_8015FEC - adds r4, r0, 0 - bl sub_8016028 - cmp r4, r0 - ble _08015DC0 - ldr r1, _08015DBC - ldr r0, [r5] - b _08015DD0 - .align 2, 0 -_08015DBC: .4byte gUnknown_80DB654 -_08015DC0: - bl sub_8015F44 - ldr r2, [r5] - ldrb r1, [r2, 0x1B] - cmp r0, r1 - bne _08015DE0 - ldr r1, _08015DDC - adds r0, r2, 0 -_08015DD0: - adds r0, 0xF8 - ldr r2, [r0] - add r0, sp, 0x4 - bl sub_800D158 - b _08015DEE - .align 2, 0 -_08015DDC: .4byte gUnknown_80DB65C -_08015DE0: - ldr r1, _08015E0C - adds r0, r2, 0 - adds r0, 0xF8 - ldr r2, [r0] - add r0, sp, 0x4 - bl sub_800D158 -_08015DEE: - movs r0, 0 - str r0, [sp] - movs r0, 0x26 - movs r1, 0x16 - add r2, sp, 0x4 - movs r3, 0x1 - bl xxx_call_draw_string -_08015DFE: - movs r0, 0x1 - bl sub_80073E0 - add sp, 0x54 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08015E0C: .4byte gUnknown_80DB664 - thumb_func_end sub_8015C1C - - thumb_func_start sub_8015E10 -sub_8015E10: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - mov r8, r0 - adds r7, r1, 0 - lsls r2, 16 - asrs r6, r2, 16 - ldr r5, _08015EB0 - movs r4, 0x35 -_08015E24: - movs r0, 0 - ldrsh r1, [r5, r0] - movs r0, 0x2 - ldrsh r2, [r5, r0] - adds r0, r6, 0 - adds r0, 0xB - adds r2, r0 - movs r0, 0x5 - str r0, [sp] - adds r0, r7, 0 - movs r3, 0xB - bl sub_80078A4 - adds r5, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _08015E24 - movs r4, 0 - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0 - beq _08015EA4 - mov r5, r8 -_08015E52: - movs r3, 0x7 - cmp r4, 0x4 - ble _08015E7E - movs r3, 0x6 - cmp r4, 0xC - ble _08015E7E - movs r3, 0x7 - cmp r4, 0x11 - ble _08015E7E - cmp r4, 0x16 - ble _08015E7E - movs r3, 0x6 - cmp r4, 0x1E - ble _08015E7E - movs r3, 0x7 - cmp r4, 0x23 - ble _08015E7E - cmp r4, 0x28 - ble _08015E7E - cmp r4, 0x30 - bgt _08015E7E - movs r3, 0x6 -_08015E7E: - ldr r0, _08015EB0 - lsls r1, r4, 2 - adds r1, r0 - movs r2, 0 - ldrsh r0, [r1, r2] - movs r2, 0x2 - ldrsh r1, [r1, r2] - adds r1, r6 - ldrb r2, [r5] - str r7, [sp] - bl sub_8012C60 - adds r5, 0x1 - adds r4, 0x1 - cmp r4, 0x35 - bgt _08015EA4 - ldrb r0, [r5] - cmp r0, 0 - bne _08015E52 -_08015EA4: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08015EB0: .4byte gUnknown_80DAFC0 - thumb_func_end sub_8015E10 - - thumb_func_start sub_8015EB4 -sub_8015EB4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - mov r8, r0 - adds r7, r1, 0 - lsls r2, 16 - asrs r6, r2, 16 - ldr r5, _08015F40 - movs r4, 0x17 -_08015EC8: - movs r0, 0 - ldrsh r1, [r5, r0] - movs r0, 0x2 - ldrsh r2, [r5, r0] - adds r0, r6, 0 - adds r0, 0xB - adds r2, r0 - movs r0, 0x5 - str r0, [sp] - adds r0, r7, 0 - movs r3, 0xC - bl sub_80078A4 - adds r5, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _08015EC8 - movs r4, 0 - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0 - beq _08015F34 - mov r5, r8 -_08015EF6: - movs r3, 0x7 - cmp r4, 0x3 - ble _08015F0E - movs r3, 0x6 - cmp r4, 0x7 - ble _08015F0E - movs r3, 0x7 - cmp r4, 0xF - ble _08015F0E - cmp r4, 0x13 - bgt _08015F0E - movs r3, 0x6 -_08015F0E: - ldr r0, _08015F40 - lsls r1, r4, 2 - adds r1, r0 - movs r2, 0 - ldrsh r0, [r1, r2] - movs r2, 0x2 - ldrsh r1, [r1, r2] - adds r1, r6 - ldrb r2, [r5] - str r7, [sp] - bl sub_8012C60 - adds r5, 0x1 - adds r4, 0x1 - cmp r4, 0x17 - bgt _08015F34 - ldrb r0, [r5] - cmp r0, 0 - bne _08015EF6 -_08015F34: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08015F40: .4byte gUnknown_80DB098 - thumb_func_end sub_8015EB4 - - thumb_func_start sub_8015F44 -sub_8015F44: - push {r4,lr} - movs r2, 0 - ldr r0, _08015F78 - ldr r0, [r0] - ldrb r4, [r0, 0x1B] - cmp r2, r4 - bge _08015F7C - adds r3, r0, 0 - adds r3, 0xF8 - ldr r0, [r3] - ldrb r0, [r0] - cmp r0, 0 - beq _08015F7C - movs r2, 0x1 - movs r1, 0x1 -_08015F62: - cmp r1, r4 - bge _08015F7C - ldr r0, [r3] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08015F7C - adds r2, r1, 0x1 - adds r1, r2, 0 - b _08015F62 - .align 2, 0 -_08015F78: .4byte gUnknown_203B1FC -_08015F7C: - adds r0, r2, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8015F44 - - thumb_func_start sub_8015F84 -sub_8015F84: - push {r4-r7,lr} - movs r6, 0 - movs r5, 0 - ldr r3, _08015FBC - ldr r0, [r3] - ldrb r0, [r0, 0x1B] - cmp r5, r0 - bge _08015FE4 - adds r7, r3, 0 -_08015F96: - ldr r1, [r7] - lsls r4, r5, 1 - adds r0, r1, 0 - adds r0, 0x1E - adds r0, r4 - strh r6, [r0] - adds r0, r1, 0 - adds r0, 0xF8 - ldr r0, [r0] - adds r2, r0, r5 - ldrb r0, [r2] - cmp r0, 0 - bne _08015FC0 - adds r0, r1, 0 - adds r0, 0x8A - adds r0, r4 - movs r1, 0x8 - strh r1, [r0] - b _08015FE4 - .align 2, 0 -_08015FBC: .4byte gUnknown_203B1FC -_08015FC0: - ldrb r0, [r2] - bl sub_8092288 - bl sub_8008584 - ldr r3, [r7] - adds r1, r3, 0 - adds r1, 0x8A - adds r1, r4 - ldrh r2, [r0, 0x6] - strh r2, [r1] - movs r1, 0x6 - ldrsh r0, [r0, r1] - adds r6, r0 - adds r5, 0x1 - ldrb r3, [r3, 0x1B] - cmp r5, r3 - blt _08015F96 -_08015FE4: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8015F84 - - thumb_func_start sub_8015FEC -sub_8015FEC: - push {r4-r7,lr} - adds r2, r0, 0 - adds r5, r1, 0 - movs r7, 0 - movs r6, 0 - cmp r7, r5 - bge _08016020 - ldrb r0, [r2] - cmp r0, 0 - beq _08016020 - adds r4, r2, 0 -_08016002: - ldrb r0, [r4] - bl sub_8092288 - bl sub_8008584 - movs r1, 0x6 - ldrsh r0, [r0, r1] - adds r7, r0 - adds r4, 0x1 - adds r6, 0x1 - cmp r6, r5 - bge _08016020 - ldrb r0, [r4] - cmp r0, 0 - bne _08016002 -_08016020: - adds r0, r7, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8015FEC - - thumb_func_start sub_8016028 -sub_8016028: - movs r0, 0x3C - bx lr - thumb_func_end sub_8016028 - - thumb_func_start sub_801602C -sub_801602C: - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _08016064 - movs r0, 0x50 - movs r1, 0x8 - bl MemoryAlloc - adds r1, r0, 0 - str r1, [r4] - str r6, [r1] - str r5, [r1, 0x8] - cmp r6, 0x1 - beq _0801606E - cmp r6, 0x1 - bcc _08016068 - cmp r6, 0x2 - beq _0801606E - cmp r6, 0x3 - beq _0801606E - b _08016070 - .align 2, 0 -_08016064: .4byte gUnknown_203B200 -_08016068: - movs r0, 0 - str r0, [r1, 0x4] - b _08016070 -_0801606E: - str r6, [r1, 0x4] -_08016070: - movs r0, 0 - bl sub_80160F4 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_801602C - - thumb_func_start sub_8016080 -sub_8016080: - push {lr} - ldr r0, _08016098 - ldr r0, [r0] - ldr r0, [r0, 0xC] - cmp r0, 0x4 - bhi _080160D0 - lsls r0, 2 - ldr r1, _0801609C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08016098: .4byte gUnknown_203B200 -_0801609C: .4byte _080160A0 - .align 2, 0 -_080160A0: - .4byte _080160B4 - .4byte _080160BA - .4byte _080160C0 - .4byte _080160C6 - .4byte _080160CC -_080160B4: - bl sub_80161F8 - b _080160D0 -_080160BA: - bl sub_8016248 - b _080160D0 -_080160C0: - bl sub_8016280 - b _080160D0 -_080160C6: - bl sub_801629C - b _080160D0 -_080160CC: - movs r0, 0x3 - b _080160D2 -_080160D0: - movs r0, 0 -_080160D2: - pop {r1} - bx r1 - thumb_func_end sub_8016080 - - thumb_func_start sub_80160D8 -sub_80160D8: - push {r4,lr} - ldr r4, _080160F0 - ldr r0, [r4] - cmp r0, 0 - beq _080160EA - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080160EA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080160F0: .4byte gUnknown_203B200 - thumb_func_end sub_80160D8 - - thumb_func_start sub_80160F4 -sub_80160F4: - push {lr} - ldr r1, _08016108 - ldr r1, [r1] - str r0, [r1, 0xC] - bl nullsub_36 - bl sub_8016110 - pop {r0} - bx r0 - .align 2, 0 -_08016108: .4byte gUnknown_203B200 - thumb_func_end sub_80160F4 - - thumb_func_start nullsub_36 -nullsub_36: - bx lr - thumb_func_end nullsub_36 - - thumb_func_start sub_8016110 -sub_8016110: - push {r4,lr} - sub sp, 0x14 - ldr r4, _08016128 - ldr r1, [r4] - ldr r0, [r1, 0xC] - cmp r0, 0x1 - beq _08016140 - cmp r0, 0x1 - bgt _0801612C - cmp r0, 0 - beq _08016136 - b _080161B8 - .align 2, 0 -_08016128: .4byte gUnknown_203B200 -_0801612C: - cmp r0, 0x2 - beq _08016194 - cmp r0, 0x3 - beq _080161AC - b _080161B8 -_08016136: - ldr r0, [r1, 0x4] - ldr r1, [r1, 0x8] - bl sub_80151C0 - b _080161B8 -_08016140: - bl sub_80161C8 - ldr r1, [r4] - ldr r0, [r1, 0x4] - cmp r0, 0x1 - bne _0801615C - ldr r0, _08016158 - ldr r1, [r1, 0x8] - movs r2, 0xA - bl sub_80922B4 - b _08016166 - .align 2, 0 -_08016158: .4byte gUnknown_202DF98 -_0801615C: - ldr r0, _08016188 - ldr r1, [r1, 0x8] - movs r2, 0xA - bl sub_80922B4 -_08016166: - ldr r0, _0801618C - ldr r1, _08016190 - ldr r3, [r1] - adds r3, 0x10 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r1, 0x20 - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x3 - bl sub_8014248 - b _080161B8 - .align 2, 0 -_08016188: .4byte gUnknown_202DF98 -_0801618C: .4byte gUnknown_80DB688 -_08016190: .4byte gUnknown_203B200 -_08016194: - ldr r0, _080161A4 - ldr r3, _080161A8 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _080161B8 - .align 2, 0 -_080161A4: .4byte gUnknown_80DB6A4 -_080161A8: .4byte 0x00000121 -_080161AC: - ldr r0, _080161C0 - ldr r3, _080161C4 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_080161B8: - add sp, 0x14 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080161C0: .4byte gUnknown_80DB6BC -_080161C4: .4byte 0x00000121 - thumb_func_end sub_8016110 - - thumb_func_start sub_80161C8 -sub_80161C8: - ldr r0, _080161EC - ldr r1, [r0] - ldr r0, _080161F0 - ldr r0, [r0] - str r0, [r1, 0x10] - movs r0, 0x2 - str r0, [r1, 0x14] - ldr r0, _080161F4 - ldr r0, [r0] - str r0, [r1, 0x18] - movs r0, 0x3 - str r0, [r1, 0x1C] - movs r0, 0 - str r0, [r1, 0x20] - movs r0, 0x1 - str r0, [r1, 0x24] - bx lr - .align 2, 0 -_080161EC: .4byte gUnknown_203B200 -_080161F0: .4byte gUnknown_80D4920 -_080161F4: .4byte gUnknown_80D4928 - thumb_func_end sub_80161C8 - - thumb_func_start sub_80161F8 -sub_80161F8: - push {r4,lr} - bl sub_80154F0 - cmp r0, 0x3 - bne _08016242 - bl sub_80155F0 - bl sub_80162B8 - lsls r0, 24 - cmp r0, 0 - beq _08016218 - movs r0, 0x3 - bl sub_80160F4 - b _08016242 -_08016218: - ldr r0, _08016238 - ldr r0, [r0] - ldr r0, [r0, 0x8] - movs r1, 0xA - bl sub_8015FEC - adds r4, r0, 0 - bl sub_8016028 - cmp r4, r0 - ble _0801623C - movs r0, 0x2 - bl sub_80160F4 - b _08016242 - .align 2, 0 -_08016238: .4byte gUnknown_203B200 -_0801623C: - movs r0, 0x1 - bl sub_80160F4 -_08016242: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80161F8 - - thumb_func_start sub_8016248 -sub_8016248: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0801627A - ldr r0, [sp] - cmp r0, 0x2 - beq _0801626C - cmp r0, 0x2 - bgt _08016266 - cmp r0, 0x1 - beq _08016274 - b _0801627A -_08016266: - cmp r0, 0x3 - beq _08016274 - b _0801627A -_0801626C: - movs r0, 0x4 - bl sub_80160F4 - b _0801627A -_08016274: - movs r0, 0 - bl sub_80160F4 -_0801627A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8016248 - - thumb_func_start sub_8016280 -sub_8016280: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08016294 - movs r0, 0 - bl sub_80160F4 -_08016294: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8016280 - - thumb_func_start sub_801629C -sub_801629C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080162B0 - movs r0, 0 - bl sub_80160F4 -_080162B0: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_801629C - - thumb_func_start sub_80162B8 -sub_80162B8: - push {lr} - movs r3, 0xA - movs r1, 0 - ldr r0, _080162D4 - ldr r0, [r0] - ldr r2, [r0, 0x8] -_080162C4: - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080162DE - cmp r0, 0x20 - beq _080162D8 - movs r0, 0 - b _080162E0 - .align 2, 0 -_080162D4: .4byte gUnknown_203B200 -_080162D8: - adds r1, 0x1 - cmp r1, r3 - blt _080162C4 -_080162DE: - movs r0, 0x1 -_080162E0: - pop {r1} - bx r1 - thumb_func_end sub_80162B8 - - thumb_func_start sub_80162E4 -sub_80162E4: - push {r4-r6,lr} - adds r4, r0, 0 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _0801633C - movs r0, 0x84 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r6, 0 - str r6, [r0, 0x10] - str r4, [r0] - ldr r0, _08016340 - movs r1, 0x35 - bl sub_808D8E0 - ldr r4, _08016344 - adds r0, r4, 0 - movs r1, 0x35 - bl sub_808D8E0 - movs r0, 0x35 - bl sub_808D994 - adds r1, r0, 0 - subs r4, 0x50 - adds r0, r4, 0 - bl strcpy - ldr r5, [r5] - ldr r0, [r5] - cmp r0, 0x1 - bne _08016348 - adds r0, r5, 0 - adds r0, 0xA4 - str r6, [r0] - b _08016352 - .align 2, 0 -_0801633C: .4byte gUnknown_203B204 -_08016340: .4byte gUnknown_202E5D8 -_08016344: .4byte gUnknown_202E1C8 -_08016348: - adds r1, r5, 0 - adds r1, 0xA4 - adds r0, r5, 0 - adds r0, 0x94 - str r0, [r1] -_08016352: - movs r0, 0x35 - bl sub_808DDD0 - ldr r2, _0801639C - ldr r3, [r2] - adds r1, r3, 0 - adds r1, 0x94 - str r0, [r1] - adds r1, 0x4 - ldr r0, [r0, 0x4] - str r0, [r1] - adds r0, r3, 0 - adds r0, 0xA0 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xA1 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xA2 - strb r1, [r0] - ldr r1, [r2] - adds r2, r1, 0 - adds r2, 0x9C - movs r0, 0x2 - strh r0, [r2] - adds r1, 0x9E - movs r0, 0x8 - strh r0, [r1] - movs r0, 0 - bl sub_8016444 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0801639C: .4byte gUnknown_203B204 - thumb_func_end sub_80162E4 - - thumb_func_start sub_80163A0 -sub_80163A0: - push {lr} - ldr r0, _080163B8 - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r0, 0xC - bhi _08016410 - lsls r0, 2 - ldr r1, _080163BC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080163B8: .4byte gUnknown_203B204 -_080163BC: .4byte _080163C0 - .align 2, 0 -_080163C0: - .4byte _08016410 - .4byte _080163F4 - .4byte _080163FA - .4byte _08016410 - .4byte _08016410 - .4byte _08016410 - .4byte _0801640C - .4byte _08016410 - .4byte _08016400 - .4byte _08016410 - .4byte _08016410 - .4byte _08016406 - .4byte _08016410 -_080163F4: - bl sub_8016B24 - b _08016414 -_080163FA: - bl sub_80169BC - b _08016414 -_08016400: - bl sub_8016A18 - b _08016414 -_08016406: - bl sub_8016A8C - b _08016414 -_0801640C: - movs r0, 0x3 - b _08016416 -_08016410: - bl sub_8016B00 -_08016414: - movs r0, 0 -_08016416: - pop {r1} - bx r1 - thumb_func_end sub_80163A0 - - thumb_func_start sub_801641C -sub_801641C: - push {r4,lr} - ldr r4, _08016440 - ldr r0, [r4] - cmp r0, 0 - beq _08016438 - adds r0, 0x94 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08016438: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08016440: .4byte gUnknown_203B204 - thumb_func_end sub_801641C - - thumb_func_start sub_8016444 -sub_8016444: - push {lr} - ldr r1, _08016458 - ldr r1, [r1] - str r0, [r1, 0x4] - bl sub_801645C - bl sub_801653C - pop {r0} - bx r0 - .align 2, 0 -_08016458: .4byte gUnknown_203B204 - thumb_func_end sub_8016444 - - thumb_func_start sub_801645C -sub_801645C: - push {r4-r7,lr} - ldr r4, _0801647C - ldr r0, [r4] - adds r0, 0xA8 - bl sub_8006518 - ldr r0, [r4] - ldr r1, [r0, 0x4] - cmp r1, 0x8 - beq _080164AC - cmp r1, 0x8 - bgt _08016480 - cmp r1, 0x2 - beq _08016486 - b _080164F8 - .align 2, 0 -_0801647C: .4byte gUnknown_203B204 -_08016480: - cmp r1, 0xB - beq _080164AC - b _080164F8 -_08016486: - adds r0, 0xA8 - movs r1, 0x80 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xC0 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xD8 - strb r1, [r0] - ldr r1, [r4] - adds r1, 0xF0 - ldr r0, _080164A8 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - b _080164D8 - .align 2, 0 -_080164A8: .4byte gUnknown_80DB6F4 -_080164AC: - ldr r4, _080164EC - ldr r0, [r4] - adds r0, 0xA8 - movs r1, 0x80 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xC0 - strb r1, [r0] - ldr r1, [r4] - adds r1, 0xF0 - ldr r0, _080164F0 - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r1, [r4] - adds r1, 0xD8 - ldr r0, _080164F4 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} -_080164D8: - bl sub_8004914 - ldr r0, [r4] - adds r0, 0xA8 - movs r1, 0x1 - movs r2, 0 - bl sub_800641C - b _0801652E - .align 2, 0 -_080164EC: .4byte gUnknown_203B204 -_080164F0: .4byte gUnknown_80DB6F4 -_080164F4: .4byte gUnknown_80DB70C -_080164F8: - ldr r6, _08016534 - mov r12, r6 - ldr r4, _08016538 - movs r3, 0 - movs r2, 0x3 -_08016502: - mov r7, r12 - ldr r1, [r7] - adds r1, r3 - adds r1, 0xA8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _08016502 - bl sub_8004914 - ldr r0, _08016534 - ldr r0, [r0] - adds r0, 0xA8 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C -_0801652E: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08016534: .4byte gUnknown_203B204 -_08016538: .4byte gUnknown_80DB6DC - thumb_func_end sub_801645C - - thumb_func_start sub_801653C -sub_801653C: - push {r4,r5,lr} - sub sp, 0x14 - ldr r1, _08016558 - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r2, r1, 0 - cmp r0, 0xC - bls _0801654E - b _080168EC -_0801654E: - lsls r0, 2 - ldr r1, _0801655C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08016558: .4byte gUnknown_203B204 -_0801655C: .4byte _08016560 - .align 2, 0 -_08016560: - .4byte _08016594 - .4byte _080165B4 - .4byte _080168B2 - .4byte _08016650 - .4byte _08016668 - .4byte _080166C4 - .4byte _080168EC - .4byte _080166DC - .4byte _0801674C - .4byte _080167A8 - .4byte _080167CC - .4byte _0801685C - .4byte _080168C4 -_08016594: - ldr r2, [r2] - movs r0, 0x1 - str r0, [r2, 0x8] - ldr r3, _080165B0 - ldr r1, [r2] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - adds r2, 0xA4 - ldr r2, [r2] - b _08016844 - .align 2, 0 -_080165B0: .4byte gUnknown_80D49E0 -_080165B4: - bl sub_8016900 - ldr r0, _080165FC - ldr r0, [r0] - mov r12, r0 - movs r0, 0x2 - mov r1, r12 - str r0, [r1, 0x8] - ldr r0, _08016600 - ldr r0, [r0] - movs r3, 0x99 - lsls r3, 2 - adds r0, r3 - ldr r4, [r0] - cmp r4, 0 - bne _08016608 - ldr r2, _08016604 - ldr r1, [r1] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x4 - adds r0, r2 - ldr r0, [r0] - mov r5, r12 - ldr r2, [r5, 0x10] - mov r3, r12 - adds r3, 0x14 - mov r1, r12 - adds r1, 0x54 - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - b _08016632 - .align 2, 0 -_080165FC: .4byte gUnknown_203B204 -_08016600: .4byte gUnknown_203B460 -_08016604: .4byte gUnknown_80D49E0 -_08016608: - ldr r0, _08016648 - str r4, [r0] - ldr r2, _0801664C - mov r0, r12 - ldr r1, [r0] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x8 - adds r0, r2 - ldr r0, [r0] - mov r1, r12 - ldr r2, [r1, 0x10] - mov r3, r12 - adds r3, 0x14 - adds r1, 0x54 - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] -_08016632: - mov r1, r12 - adds r1, 0xA4 - ldr r1, [r1] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _080168EC - .align 2, 0 -_08016648: .4byte gUnknown_202DE30 -_0801664C: .4byte gUnknown_80D49E0 -_08016650: - ldr r3, [r2] - movs r0, 0x1 - str r0, [r3, 0x8] - ldr r2, _08016664 - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x38 - b _0801683C - .align 2, 0 -_08016664: .4byte gUnknown_80D49E0 -_08016668: - ldr r3, [r2] - movs r0, 0x6 - str r0, [r3, 0x8] - ldr r0, _08016698 - ldr r0, [r0] - movs r5, 0x99 - lsls r5, 2 - adds r0, r5 - ldr r1, [r0] - cmp r1, 0 - bne _080166A0 - ldr r2, _0801669C - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x10 - adds r0, r2 - ldr r0, [r0] - adds r1, r3, 0 - adds r1, 0xA4 - ldr r2, [r1] - b _08016844 - .align 2, 0 -_08016698: .4byte gUnknown_203B460 -_0801669C: .4byte gUnknown_80D49E0 -_080166A0: - ldr r0, _080166BC - str r1, [r0] - ldr r2, _080166C0 - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x14 - adds r0, r2 - ldr r0, [r0] - adds r1, r3, 0 - adds r1, 0xA4 - ldr r2, [r1] - b _08016844 - .align 2, 0 -_080166BC: .4byte gUnknown_202DE30 -_080166C0: .4byte gUnknown_80D49E0 -_080166C4: - ldr r3, [r2] - movs r0, 0x1 - str r0, [r3, 0x8] - ldr r2, _080166D8 - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0xC - b _0801683C - .align 2, 0 -_080166D8: .4byte gUnknown_80D49E0 -_080166DC: - ldr r0, _08016700 - ldr r1, [r0] - movs r3, 0x98 - lsls r3, 2 - adds r0, r1, r3 - ldr r0, [r0] - cmp r0, 0 - bne _08016708 - ldr r3, [r2] - movs r0, 0x1 - str r0, [r3, 0x8] - ldr r2, _08016704 - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x1C - b _0801683C - .align 2, 0 -_08016700: .4byte gUnknown_203B460 -_08016704: .4byte gUnknown_80D49E0 -_08016708: - movs r5, 0x99 - lsls r5, 2 - adds r0, r1, r5 - ldr r1, [r0] - ldr r0, _0801672C - cmp r1, r0 - ble _08016734 - ldr r3, [r2] - movs r0, 0x1 - str r0, [r3, 0x8] - ldr r2, _08016730 - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x20 - b _0801683C - .align 2, 0 -_0801672C: .4byte 0x0098967e -_08016730: .4byte gUnknown_80D49E0 -_08016734: - ldr r3, [r2] - movs r0, 0x8 - str r0, [r3, 0x8] - ldr r2, _08016748 - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x18 - b _0801683C - .align 2, 0 -_08016748: .4byte gUnknown_80D49E0 -_0801674C: - ldr r4, [r2] - ldr r0, _080167A0 - ldr r3, [r0] - movs r1, 0x99 - lsls r1, 2 - adds r0, r3, r1 - ldr r1, [r0] - ldr r0, _080167A4 - subs r0, r1 - str r0, [r4, 0x70] - movs r5, 0x98 - lsls r5, 2 - adds r1, r3, r5 - ldr r1, [r1] - cmp r0, r1 - ble _0801676E - str r1, [r4, 0x70] -_0801676E: - ldr r2, [r2] - ldr r0, [r2, 0x70] - str r0, [r2, 0x68] - movs r0, 0x1 - str r0, [r2, 0x6C] - movs r0, 0x5 - str r0, [r2, 0x74] - movs r0, 0x2 - str r0, [r2, 0x78] - adds r0, r2, 0 - adds r0, 0xD8 - str r0, [r2, 0x7C] - adds r1, r2, 0 - adds r1, 0x80 - movs r0, 0x50 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x12 - str r0, [r1] - adds r0, r2, 0 - adds r0, 0x64 - bl sub_8013AA0 - movs r0, 0x1 - b _080168AE - .align 2, 0 -_080167A0: .4byte gUnknown_203B460 -_080167A4: .4byte 0x0098967f -_080167A8: - ldr r3, [r2] - movs r0, 0x1 - str r0, [r3, 0x8] - ldr r1, _080167C4 - ldr r0, [r3, 0xC] - str r0, [r1] - ldr r2, _080167C8 - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x24 - b _0801683C - .align 2, 0 -_080167C4: .4byte gUnknown_202DE30 -_080167C8: .4byte gUnknown_80D49E0 -_080167CC: - ldr r0, _080167F4 - ldr r3, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r3, r1 - ldr r1, [r0] - ldr r0, _080167F8 - cmp r1, r0 - ble _08016800 - ldr r3, [r2] - movs r0, 0x1 - str r0, [r3, 0x8] - ldr r2, _080167FC - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x30 - b _0801683C - .align 2, 0 -_080167F4: .4byte gUnknown_203B460 -_080167F8: .4byte 0x0001869e -_080167FC: .4byte gUnknown_80D49E0 -_08016800: - movs r5, 0x99 - lsls r5, 2 - adds r4, r3, r5 - ldr r0, [r4] - cmp r0, 0 - bne _08016824 - ldr r3, [r2] - movs r0, 0x1 - str r0, [r3, 0x8] - ldr r2, _08016820 - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x2C - b _0801683C - .align 2, 0 -_08016820: .4byte gUnknown_80D49E0 -_08016824: - ldr r3, [r2] - movs r0, 0xB - str r0, [r3, 0x8] - ldr r1, _08016850 - ldr r0, [r4] - str r0, [r1] - ldr r2, _08016854 - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x28 -_0801683C: - adds r0, r2 - ldr r0, [r0] - adds r3, 0xA4 - ldr r2, [r3] -_08016844: - ldr r3, _08016858 - movs r1, 0 - bl sub_80141B4 - b _080168EC - .align 2, 0 -_08016850: .4byte gUnknown_202DE30 -_08016854: .4byte gUnknown_80D49E0 -_08016858: .4byte 0x0000010d -_0801685C: - ldr r4, [r2] - ldr r0, _080168BC - ldr r3, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r3, r1 - ldr r1, [r0] - ldr r0, _080168C0 - subs r0, r1 - str r0, [r4, 0x70] - movs r5, 0x99 - lsls r5, 2 - adds r1, r3, r5 - ldr r1, [r1] - cmp r0, r1 - ble _0801687E - str r1, [r4, 0x70] -_0801687E: - ldr r2, [r2] - ldr r0, [r2, 0x70] - str r0, [r2, 0x68] - movs r0, 0x1 - str r0, [r2, 0x6C] - movs r0, 0x5 - str r0, [r2, 0x74] - movs r0, 0x2 - str r0, [r2, 0x78] - adds r0, r2, 0 - adds r0, 0xD8 - str r0, [r2, 0x7C] - adds r1, r2, 0 - adds r1, 0x80 - movs r0, 0x50 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x12 - str r0, [r1] - adds r0, r2, 0 - adds r0, 0x64 - bl sub_8013AA0 - movs r0, 0 -_080168AE: - bl sub_8016B48 -_080168B2: - movs r0, 0x3 - bl sub_8016BB8 - b _080168EC - .align 2, 0 -_080168BC: .4byte gUnknown_203B460 -_080168C0: .4byte 0x0001869f -_080168C4: - ldr r3, [r2] - movs r0, 0x1 - str r0, [r3, 0x8] - ldr r1, _080168F4 - ldr r0, [r3, 0xC] - str r0, [r1] - ldr r2, _080168F8 - ldr r1, [r3] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r2, 0x34 - adds r0, r2 - ldr r0, [r0] - adds r3, 0xA4 - ldr r2, [r3] - ldr r3, _080168FC - movs r1, 0 - bl sub_80141B4 -_080168EC: - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080168F4: .4byte gUnknown_202DE30 -_080168F8: .4byte gUnknown_80D49E0 -_080168FC: .4byte 0x0000010d - thumb_func_end sub_801653C - - thumb_func_start sub_8016900 -sub_8016900: - push {r4-r7,lr} - ldr r4, _08016980 - ldr r0, [r4] - adds r0, 0x54 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _08016984 - ldr r0, [r0] - str r0, [r3, 0x14] - movs r0, 0x2 - str r0, [r3, 0x18] - movs r1, 0x1 - ldr r0, _08016988 - ldr r0, [r0] - str r0, [r3, 0x1C] - movs r0, 0x3 - str r0, [r3, 0x20] - ldr r0, _0801698C - ldr r0, [r0] - str r0, [r3, 0x24] - movs r0, 0x4 - str r0, [r3, 0x28] - ldr r0, _08016990 - ldr r0, [r0] - str r0, [r3, 0x2C] - str r1, [r3, 0x30] - movs r6, 0x4 - str r2, [r3, 0x34] - str r1, [r3, 0x38] - movs r5, 0 - mov r12, r3 - adds r3, 0x18 - mov r2, r12 - adds r2, 0x54 -_0801694C: - ldrh r0, [r2] - cmp r0, 0 - bne _0801695C - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x10] - cmp r1, r0 - beq _080169B6 -_0801695C: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _0801694C - movs r5, 0 - cmp r5, r6 - bge _080169B6 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x54 - ldrh r0, [r0] - cmp r0, 0 - bne _08016994 - ldr r0, [r1, 0x18] - str r0, [r1, 0x10] - b _080169B6 - .align 2, 0 -_08016980: .4byte gUnknown_203B204 -_08016984: .4byte gUnknown_80D4958 -_08016988: .4byte gUnknown_80D4964 -_0801698C: .4byte gUnknown_80D4970 -_08016990: .4byte gUnknown_80D4934 -_08016994: - adds r5, 0x1 - cmp r5, r6 - bge _080169B6 - ldr r2, [r4] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0x54 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08016994 - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x18 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x10] -_080169B6: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8016900 - - thumb_func_start sub_80169BC -sub_80169BC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08016A10 - ldr r0, _080169E4 - ldr r1, [r0] - ldr r0, [sp] - str r0, [r1, 0x10] - ldr r0, [sp] - cmp r0, 0x2 - beq _080169F2 - cmp r0, 0x2 - bgt _080169E8 - cmp r0, 0x1 - beq _08016A0A - b _08016A10 - .align 2, 0 -_080169E4: .4byte gUnknown_203B204 -_080169E8: - cmp r0, 0x3 - beq _080169FA - cmp r0, 0x4 - beq _08016A02 - b _08016A10 -_080169F2: - movs r0, 0x7 - bl sub_8016444 - b _08016A10 -_080169FA: - movs r0, 0xA - bl sub_8016444 - b _08016A10 -_08016A02: - movs r0, 0x3 - bl sub_8016444 - b _08016A10 -_08016A0A: - movs r0, 0x4 - bl sub_8016444 -_08016A10: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80169BC - - thumb_func_start sub_8016A18 -sub_8016A18: - push {r4,lr} - ldr r4, _08016A38 - ldr r0, [r4] - adds r0, 0x64 - bl sub_8013BBC - cmp r0, 0x1 - beq _08016A3C - cmp r0, 0x1 - bcc _08016A86 - cmp r0, 0x2 - beq _08016A80 - cmp r0, 0x3 - beq _08016A44 - b _08016A86 - .align 2, 0 -_08016A38: .4byte gUnknown_203B204 -_08016A3C: - movs r0, 0x1 - bl sub_8016B48 - b _08016A86 -_08016A44: - ldr r3, [r4] - ldr r2, [r3, 0x64] - str r2, [r3, 0xC] - ldr r0, _08016A7C - ldr r0, [r0] - mov r12, r0 - movs r1, 0x99 - lsls r1, 2 - add r1, r12 - ldr r0, [r1] - adds r0, r2 - str r0, [r1] - movs r2, 0x98 - lsls r2, 2 - add r2, r12 - ldr r0, [r2] - ldr r1, [r3, 0xC] - subs r0, r1 - str r0, [r2] - movs r0, 0xA6 - lsls r0, 1 - bl sub_8011988 - movs r0, 0x9 - bl sub_8016444 - b _08016A86 - .align 2, 0 -_08016A7C: .4byte gUnknown_203B460 -_08016A80: - movs r0, 0x5 - bl sub_8016444 -_08016A86: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8016A18 - - thumb_func_start sub_8016A8C -sub_8016A8C: - push {r4,lr} - ldr r4, _08016AAC - ldr r0, [r4] - adds r0, 0x64 - bl sub_8013BBC - cmp r0, 0x1 - beq _08016AB0 - cmp r0, 0x1 - bcc _08016AFA - cmp r0, 0x2 - beq _08016AF4 - cmp r0, 0x3 - beq _08016AB8 - b _08016AFA - .align 2, 0 -_08016AAC: .4byte gUnknown_203B204 -_08016AB0: - movs r0, 0 - bl sub_8016B48 - b _08016AFA -_08016AB8: - ldr r3, [r4] - ldr r2, [r3, 0x64] - str r2, [r3, 0xC] - ldr r0, _08016AF0 - ldr r0, [r0] - mov r12, r0 - movs r1, 0x98 - lsls r1, 2 - add r1, r12 - ldr r0, [r1] - adds r0, r2 - str r0, [r1] - movs r2, 0x99 - lsls r2, 2 - add r2, r12 - ldr r0, [r2] - ldr r1, [r3, 0xC] - subs r0, r1 - str r0, [r2] - movs r0, 0xA6 - lsls r0, 1 - bl sub_8011988 - movs r0, 0xC - bl sub_8016444 - b _08016AFA - .align 2, 0 -_08016AF0: .4byte gUnknown_203B460 -_08016AF4: - movs r0, 0x5 - bl sub_8016444 -_08016AFA: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8016A8C - - thumb_func_start sub_8016B00 -sub_8016B00: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08016B18 - ldr r0, _08016B20 - ldr r0, [r0] - ldr r0, [r0, 0x8] - bl sub_8016444 -_08016B18: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08016B20: .4byte gUnknown_203B204 - thumb_func_end sub_8016B00 - - thumb_func_start sub_8016B24 -sub_8016B24: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0x4 - bne _08016B3C - ldr r0, _08016B44 - ldr r0, [r0] - ldr r0, [r0, 0x8] - bl sub_8016444 -_08016B3C: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08016B44: .4byte gUnknown_203B204 - thumb_func_end sub_8016B24 - - thumb_func_start sub_8016B48 -sub_8016B48: - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, _08016B7C - ldr r0, [r4] - ldr r0, [r0, 0x78] - bl sub_8008C54 - ldr r0, [r4] - ldr r0, [r0, 0x78] - bl sub_80073B8 - cmp r5, 0 - beq _08016B84 - ldr r0, _08016B80 - ldr r2, [r0] - ldr r0, [r4] - ldr r3, [r0, 0x78] - movs r0, 0 - str r0, [sp] - movs r0, 0xC - movs r1, 0 - bl xxx_call_draw_string - b _08016B96 - .align 2, 0 -_08016B7C: .4byte gUnknown_203B204 -_08016B80: .4byte gUnknown_80D49CC -_08016B84: - ldr r0, _08016BB0 - ldr r2, [r0] - ldr r0, [r4] - ldr r3, [r0, 0x78] - str r5, [sp] - movs r0, 0xC - movs r1, 0 - bl xxx_call_draw_string -_08016B96: - ldr r4, _08016BB4 - ldr r0, [r4] - adds r0, 0x64 - bl sub_8013C68 - ldr r0, [r4] - ldr r0, [r0, 0x78] - bl sub_80073E0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08016BB0: .4byte gUnknown_80D49DC -_08016BB4: .4byte gUnknown_203B204 - thumb_func_end sub_8016B48 - - thumb_func_start sub_8016BB8 -sub_8016BB8: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x8 - adds r4, r0, 0 - bl sub_8008C54 - adds r0, r4, 0 - bl sub_80073B8 - ldr r2, _08016C34 - movs r0, 0 - mov r8, r0 - str r0, [sp] - movs r0, 0x10 - movs r1, 0x4 - adds r3, r4, 0 - bl xxx_call_draw_string - ldr r6, _08016C38 - ldr r0, [r6] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r2, [r0] - movs r5, 0x5 - str r5, [sp] - str r4, [sp, 0x4] - movs r0, 0x60 - movs r1, 0x4 - movs r3, 0x5 - bl sub_8012BC4 - ldr r2, _08016C3C - mov r0, r8 - str r0, [sp] - movs r0, 0x70 - movs r1, 0x4 - adds r3, r4, 0 - bl xxx_call_draw_string - ldr r0, [r6] - movs r1, 0x99 - lsls r1, 2 - adds r0, r1 - ldr r2, [r0] - str r5, [sp] - str r4, [sp, 0x4] - movs r0, 0xC8 - movs r1, 0x4 - movs r3, 0x7 - bl sub_8012BC4 - adds r0, r4, 0 - bl sub_80073E0 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08016C34: .4byte gUnknown_80DB724 -_08016C38: .4byte gUnknown_203B460 -_08016C3C: .4byte gUnknown_80DB72C - thumb_func_end sub_8016BB8 - - thumb_func_start sub_8016C40 -sub_8016C40: - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - bl sub_8008C54 - adds r0, r4, 0 - bl sub_80073B8 - ldr r2, _08016C8C - movs r0, 0 - str r0, [sp] - movs r0, 0x6 - movs r1, 0 - adds r3, r4, 0 - bl xxx_call_draw_string - ldr r0, _08016C90 - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r2, [r0] - movs r0, 0x5 - str r0, [sp] - str r4, [sp, 0x4] - movs r0, 0x2A - movs r1, 0xC - movs r3, 0x5 - bl sub_8012BC4 - adds r0, r4, 0 - bl sub_80073E0 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08016C8C: .4byte gUnknown_80DB738 -_08016C90: .4byte gUnknown_203B460 - thumb_func_end sub_8016C40 - - thumb_func_start sub_8016C94 -sub_8016C94: - push {r4-r6,lr} - adds r4, r0, 0 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _08016CF0 - movs r0, 0xA6 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r6, 0 - str r6, [r0, 0x18] - str r6, [r0, 0x1C] - str r6, [r0, 0x20] - str r4, [r0] - ldr r0, _08016CF4 - movs r1, 0x73 - bl sub_808D8E0 - ldr r4, _08016CF8 - adds r0, r4, 0 - movs r1, 0x73 - bl sub_808D8E0 - movs r0, 0x73 - bl sub_808D994 - adds r1, r0, 0 - subs r4, 0x50 - adds r0, r4, 0 - bl strcpy - ldr r5, [r5] - ldr r0, [r5] - cmp r0, 0x1 - bne _08016CFC - adds r0, r5, 0 - adds r0, 0xE8 - str r6, [r0] - b _08016D06 - .align 2, 0 -_08016CF0: .4byte gUnknown_203B208 -_08016CF4: .4byte gUnknown_202E5D8 -_08016CF8: .4byte gUnknown_202E1C8 -_08016CFC: - adds r1, r5, 0 - adds r1, 0xE8 - adds r0, r5, 0 - adds r0, 0xD8 - str r0, [r1] -_08016D06: - movs r0, 0x73 - bl sub_808DDD0 - ldr r2, _08016D50 - ldr r3, [r2] - adds r1, r3, 0 - adds r1, 0xD8 - str r0, [r1] - adds r1, 0x4 - ldr r0, [r0, 0x4] - str r0, [r1] - adds r0, r3, 0 - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xE5 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xE6 - strb r1, [r0] - ldr r1, [r2] - adds r2, r1, 0 - adds r2, 0xE0 - movs r0, 0x2 - strh r0, [r2] - adds r1, 0xE2 - movs r0, 0x8 - strh r0, [r1] - movs r0, 0 - bl sub_8016E68 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08016D50: .4byte gUnknown_203B208 - thumb_func_end sub_8016C94 - - thumb_func_start sub_8016D54 -sub_8016D54: - push {lr} - ldr r0, _08016D6C - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r0, 0x1C - bhi _08016E34 - lsls r0, 2 - ldr r1, _08016D70 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08016D6C: .4byte gUnknown_203B208 -_08016D70: .4byte _08016D74 - .align 2, 0 -_08016D74: - .4byte _08016DE8 - .4byte _08016DE8 - .4byte _08016E34 - .4byte _08016E34 - .4byte _08016E30 - .4byte _08016E34 - .4byte _08016E34 - .4byte _08016E34 - .4byte _08016E34 - .4byte _08016E34 - .4byte _08016E34 - .4byte _08016E34 - .4byte _08016E34 - .4byte _08016DEE - .4byte _08016DEE - .4byte _08016DF4 - .4byte _08016DFA - .4byte _08016E00 - .4byte _08016E06 - .4byte _08016E34 - .4byte _08016E34 - .4byte _08016E34 - .4byte _08016E0C - .4byte _08016E0C - .4byte _08016E12 - .4byte _08016E18 - .4byte _08016E1E - .4byte _08016E24 - .4byte _08016E2A -_08016DE8: - bl sub_8017828 - b _08016E38 -_08016DEE: - bl sub_8017AF8 - b _08016E38 -_08016DF4: - bl sub_8017C7C - b _08016E38 -_08016DFA: - bl sub_8017DC0 - b _08016E38 -_08016E00: - bl sub_80178D0 - b _08016E38 -_08016E06: - bl sub_80179A8 - b _08016E38 -_08016E0C: - bl sub_8017B88 - b _08016E38 -_08016E12: - bl sub_8017C28 - b _08016E38 -_08016E18: - bl sub_8017D24 - b _08016E38 -_08016E1E: - bl sub_8017DDC - b _08016E38 -_08016E24: - bl sub_8017928 - b _08016E38 -_08016E2A: - bl sub_8017A1C - b _08016E38 -_08016E30: - movs r0, 0x3 - b _08016E3A -_08016E34: - bl sub_8017DF8 -_08016E38: - movs r0, 0 -_08016E3A: - pop {r1} - bx r1 - thumb_func_end sub_8016D54 - - thumb_func_start sub_8016E40 -sub_8016E40: - push {r4,lr} - ldr r4, _08016E64 - ldr r0, [r4] - cmp r0, 0 - beq _08016E5C - adds r0, 0xD8 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08016E5C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08016E64: .4byte gUnknown_203B208 - thumb_func_end sub_8016E40 - - thumb_func_start sub_8016E68 -sub_8016E68: - push {lr} - ldr r1, _08016E7C - ldr r1, [r1] - str r0, [r1, 0x4] - bl sub_8016E80 - bl sub_8016FF8 - pop {r0} - bx r0 - .align 2, 0 -_08016E7C: .4byte gUnknown_203B208 - thumb_func_end sub_8016E68 - - thumb_func_start sub_8016E80 -sub_8016E80: - push {r4-r7,lr} - ldr r4, _08016EA4 - ldr r0, [r4] - adds r0, 0xEC - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0, 0x4] - subs r0, 0xD - cmp r0, 0xC - bls _08016E98 - b _08016FB4 -_08016E98: - lsls r0, 2 - ldr r1, _08016EA8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08016EA4: .4byte gUnknown_203B208 -_08016EA8: .4byte _08016EAC - .align 2, 0 -_08016EAC: - .4byte _08016EE0 - .4byte _08016EE0 - .4byte _08016F94 - .4byte _08016FB4 - .4byte _08016FB4 - .4byte _08016FB4 - .4byte _08016FB4 - .4byte _08016FB4 - .4byte _08016FB4 - .4byte _08016F2C - .4byte _08016F2C - .4byte _08016F7C - .4byte _08016F94 -_08016EE0: - ldr r3, _08016F24 - ldr r1, [r3] - ldr r2, _08016F28 - adds r1, 0xEC - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - ldr r1, [r3] - movs r6, 0x82 - lsls r6, 1 - adds r1, r6 - adds r0, r2, 0 - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - ldr r1, [r3] - movs r5, 0x8E - lsls r5, 1 - adds r1, r5 - adds r0, r2, 0 - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldr r0, [r3] - adds r0, 0xEC - ldm r2!, {r1,r3,r4} - stm r0!, {r1,r3,r4} - ldm r2!, {r5-r7} - stm r0!, {r5-r7} - b _08016FD8 - .align 2, 0 -_08016F24: .4byte gUnknown_203B208 -_08016F28: .4byte gUnknown_80DB748 -_08016F2C: - ldr r3, _08016F70 - ldr r1, [r3] - ldr r2, _08016F74 - adds r1, 0xEC - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - ldr r1, [r3] - movs r6, 0x82 - lsls r6, 1 - adds r1, r6 - adds r0, r2, 0 - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - ldr r0, [r3] - movs r5, 0x8E - lsls r5, 1 - adds r0, r5 - ldm r2!, {r1,r6,r7} - stm r0!, {r1,r6,r7} - ldm r2!, {r4-r6} - stm r0!, {r4-r6} - ldr r1, [r3] - adds r1, 0xEC - ldr r0, _08016F78 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - b _08016FD8 - .align 2, 0 -_08016F70: .4byte gUnknown_203B208 -_08016F74: .4byte gUnknown_80DB748 -_08016F78: .4byte gUnknown_80DB778 -_08016F7C: - ldr r0, _08016F8C - ldr r1, [r0] - movs r7, 0x82 - lsls r7, 1 - adds r1, r7 - ldr r0, _08016F90 - b _08016FA0 - .align 2, 0 -_08016F8C: .4byte gUnknown_203B208 -_08016F90: .4byte gUnknown_80DB790 -_08016F94: - ldr r0, _08016FAC - ldr r1, [r0] - movs r0, 0x8E - lsls r0, 1 - adds r1, r0 - ldr r0, _08016FB0 -_08016FA0: - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - b _08016FD8 - .align 2, 0 -_08016FAC: .4byte gUnknown_203B208 -_08016FB0: .4byte gUnknown_80DB760 -_08016FB4: - ldr r0, _08016FF0 - mov r12, r0 - ldr r4, _08016FF4 - movs r3, 0 - movs r2, 0x3 -_08016FBE: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - adds r1, 0xEC - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _08016FBE -_08016FD8: - bl sub_8004914 - ldr r0, _08016FF0 - ldr r0, [r0] - adds r0, 0xEC - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08016FF0: .4byte gUnknown_203B208 -_08016FF4: .4byte gUnknown_80DB748 - thumb_func_end sub_8016E80 - - thumb_func_start sub_8016FF8 -sub_8016FF8: - push {r4,r5,lr} - sub sp, 0x14 - ldr r1, _08017014 - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r4, r1, 0 - cmp r0, 0x1D - bls _0801700A - b _08017584 -_0801700A: - lsls r0, 2 - ldr r1, _08017018 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08017014: .4byte gUnknown_203B208 -_08017018: .4byte _0801701C - .align 2, 0 -_0801701C: - .4byte _08017094 - .4byte _080170BC - .4byte _0801710C - .4byte _0801713C - .4byte _08017584 - .4byte _0801715C - .4byte _0801718C - .4byte _080171BC - .4byte _080171EC - .4byte _0801721C - .4byte _0801724C - .4byte _0801726C - .4byte _0801728C - .4byte _080172AC - .4byte _080172BA - .4byte _080172C2 - .4byte _080174A8 - .4byte _080172E4 - .4byte _0801731C - .4byte _08017344 - .4byte _08017394 - .4byte _080173B4 - .4byte _080173E8 - .4byte _080173F6 - .4byte _08017404 - .4byte _08017474 - .4byte _080174A8 - .4byte _080174B2 - .4byte _080174E8 - .4byte _08017530 -_08017094: - bl sub_80175FC - ldr r2, _080170B4 - ldr r0, [r2] - adds r0, 0xE4 - movs r4, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r3, _080170B8 - ldr r5, [r2] - ldr r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r0, r3 - b _080170DA - .align 2, 0 -_080170B4: .4byte gUnknown_203B208 -_080170B8: .4byte gUnknown_80D5404 -_080170BC: - bl sub_80175FC - ldr r1, _08017104 - ldr r0, [r1] - adds r0, 0xE4 - movs r4, 0 - strb r4, [r0] - ldr r2, _08017108 - ldr r5, [r1] - ldr r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x4 - adds r0, r2 -_080170DA: - ldr r0, [r0] - ldr r2, [r5, 0x18] - adds r3, r5, 0 - adds r3, 0x24 - adds r1, r5, 0 - adds r1, 0x4C - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - adds r1, r5, 0 - adds r1, 0xE8 - ldr r1, [r1] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _08017584 - .align 2, 0 -_08017104: .4byte gUnknown_203B208 -_08017108: .4byte gUnknown_80D5404 -_0801710C: - ldr r0, [r4] - movs r1, 0x1 - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r2, _08017134 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x4C - adds r0, r2 - ldr r0, [r0] - adds r3, 0xE8 - ldr r2, [r3] - ldr r3, _08017138 - b _080173D8 - .align 2, 0 -_08017134: .4byte gUnknown_80D5404 -_08017138: .4byte 0x0000010d -_0801713C: - ldr r0, [r4] - movs r1, 0x4 - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0x1 - strb r1, [r0] - ldr r2, _08017158 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x8 - b _080173CE - .align 2, 0 -_08017158: .4byte gUnknown_80D5404 -_0801715C: - ldr r0, [r4] - movs r1, 0x1 - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r2, _08017184 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x34 - adds r0, r2 - ldr r0, [r0] - adds r3, 0xE8 - ldr r2, [r3] - ldr r3, _08017188 - b _080173D8 - .align 2, 0 -_08017184: .4byte gUnknown_80D5404 -_08017188: .4byte 0x0000010d -_0801718C: - ldr r0, [r4] - movs r1, 0x1 - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r2, _080171B4 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x38 - adds r0, r2 - ldr r0, [r0] - adds r3, 0xE8 - ldr r2, [r3] - ldr r3, _080171B8 - b _080173D8 - .align 2, 0 -_080171B4: .4byte gUnknown_80D5404 -_080171B8: .4byte 0x0000010d -_080171BC: - ldr r0, [r4] - movs r1, 0x1 - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r2, _080171E4 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x3C - adds r0, r2 - ldr r0, [r0] - adds r3, 0xE8 - ldr r2, [r3] - ldr r3, _080171E8 - b _080173D8 - .align 2, 0 -_080171E4: .4byte gUnknown_80D5404 -_080171E8: .4byte 0x0000010d -_080171EC: - ldr r0, [r4] - movs r1, 0x1 - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r2, _08017214 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x48 - adds r0, r2 - ldr r0, [r0] - adds r3, 0xE8 - ldr r2, [r3] - ldr r3, _08017218 - b _080173D8 - .align 2, 0 -_08017214: .4byte gUnknown_80D5404 -_08017218: .4byte 0x0000010d -_0801721C: - ldr r0, _08017244 - ldr r1, [r4] - adds r1, 0xC - movs r2, 0 - bl sub_8090E14 - ldr r0, [r4] - movs r1, 0xE - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r2, _08017248 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x40 - b _080173CE - .align 2, 0 -_08017244: .4byte gUnknown_202DE58 -_08017248: .4byte gUnknown_80D5404 -_0801724C: - ldr r0, [r4] - movs r1, 0xE - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r2, _08017268 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x44 - b _080173CE - .align 2, 0 -_08017268: .4byte gUnknown_80D5404 -_0801726C: - ldr r0, [r4] - movs r1, 0xD - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r2, _08017288 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0xC - b _080173CE - .align 2, 0 -_08017288: .4byte gUnknown_80D5404 -_0801728C: - ldr r0, [r4] - movs r1, 0xE - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r2, _080172A8 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x10 - b _080173CE - .align 2, 0 -_080172A8: .4byte gUnknown_80D5404 -_080172AC: - movs r0, 0x3 - movs r1, 0x3 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - b _08017584 -_080172BA: - movs r0, 0x1 - bl sub_801A8D0 - b _08017584 -_080172C2: - bl sub_801A9E0 - bl sub_80176B8 - ldr r0, _080172E0 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x58 - adds r1, r2, 0 - adds r1, 0x24 - adds r3, r2, 0 - adds r3, 0x4C - ldr r2, [r2, 0x1C] - b _08017494 - .align 2, 0 -_080172E0: .4byte gUnknown_203B208 -_080172E4: - bl sub_80177F8 - ldr r0, _08017310 - ldr r4, _08017314 - ldr r1, [r4] - adds r1, 0xC - movs r2, 0 - bl sub_8090E14 - ldr r0, [r4] - adds r0, 0xE4 - movs r5, 0 - strb r5, [r0] - ldr r2, _08017318 - ldr r4, [r4] - ldr r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x14 - b _08017504 - .align 2, 0 -_08017310: .4byte gUnknown_202DE58 -_08017314: .4byte gUnknown_203B208 -_08017318: .4byte gUnknown_80D5404 -_0801731C: - bl sub_80177F8 - ldr r1, _0801733C - ldr r0, [r1] - adds r0, 0xE4 - movs r5, 0 - strb r5, [r0] - ldr r2, _08017340 - ldr r4, [r1] - ldr r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x18 - b _08017504 - .align 2, 0 -_0801733C: .4byte gUnknown_203B208 -_08017340: .4byte gUnknown_80D5404 -_08017344: - bl sub_8090A34 - cmp r0, 0 - bne _0801735C - bl sub_801A928 - ldr r0, _08017358 - ldr r1, [r0] - movs r0, 0x1 - b _08017362 - .align 2, 0 -_08017358: .4byte gUnknown_203B208 -_0801735C: - ldr r0, _08017388 - ldr r1, [r0] - movs r0, 0xC -_08017362: - str r0, [r1, 0x8] - ldr r3, _08017388 - ldr r0, [r3] - adds r0, 0xE4 - movs r1, 0x1 - strb r1, [r0] - ldr r2, _0801738C - ldr r3, [r3] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x1C - adds r0, r2 - ldr r0, [r0] - adds r3, 0xE8 - ldr r2, [r3] - ldr r3, _08017390 - b _080173D8 - .align 2, 0 -_08017388: .4byte gUnknown_203B208 -_0801738C: .4byte gUnknown_80D5404 -_08017390: .4byte 0x0000010d -_08017394: - ldr r0, [r4] - movs r1, 0x16 - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r2, _080173B0 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x20 - b _080173CE - .align 2, 0 -_080173B0: .4byte gUnknown_80D5404 -_080173B4: - ldr r0, [r4] - movs r1, 0x17 - str r1, [r0, 0x8] - adds r0, 0xE4 - movs r1, 0 - strb r1, [r0] - ldr r2, _080173E0 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x24 -_080173CE: - adds r0, r2 - ldr r0, [r0] - adds r3, 0xE8 - ldr r2, [r3] - ldr r3, _080173E4 -_080173D8: - movs r1, 0 - bl sub_80141B4 - b _08017584 - .align 2, 0 -_080173E0: .4byte gUnknown_80D5404 -_080173E4: .4byte 0x0000030d -_080173E8: - movs r0, 0x1 - movs r1, 0x3 - movs r2, 0 - movs r3, 0xA - bl sub_801C8C4 - b _080173FC -_080173F6: - movs r0, 0x1 - bl sub_801CB5C -_080173FC: - movs r0, 0 - bl sub_801AD34 - b _08017584 -_08017404: - ldr r2, [r4] - adds r1, r2, 0 - adds r1, 0xB8 - movs r0, 0x2 - str r0, [r1] - subs r1, 0x8 - movs r0, 0x1 - str r0, [r1] - ldr r0, _08017430 - ldr r1, [r0] - ldrb r0, [r2, 0xE] - lsls r0, 1 - adds r1, 0x50 - adds r3, r1, r0 - ldrh r0, [r3] - cmp r0, 0x63 - bls _08017434 - adds r1, r2, 0 - adds r1, 0xB4 - movs r0, 0x63 - b _0801743A - .align 2, 0 -_08017430: .4byte gUnknown_203B460 -_08017434: - adds r1, r2, 0 - adds r1, 0xB4 - ldrh r0, [r3] -_0801743A: - str r0, [r1] - ldr r2, [r4] - adds r1, r2, 0 - adds r1, 0xAC - adds r0, r2, 0 - adds r0, 0xB4 - ldr r0, [r0] - str r0, [r1] - adds r1, 0x10 - movs r0, 0x1 - str r0, [r1] - adds r1, 0x4 - movs r3, 0x82 - lsls r3, 1 - adds r0, r2, r3 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x28 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x12 - str r0, [r1] - adds r0, r2, 0 - adds r0, 0xA8 - bl sub_8013AA0 - bl sub_8017598 - b _08017584 -_08017474: - bl sub_801CCD8 - movs r0, 0 - bl sub_801AD34 - bl sub_8017758 - ldr r0, _080174A4 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x58 - adds r1, r2, 0 - adds r1, 0x24 - adds r3, r2, 0 - adds r3, 0x4C - ldr r2, [r2, 0x20] -_08017494: - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _08017584 - .align 2, 0 -_080174A4: .4byte gUnknown_203B208 -_080174A8: - ldr r0, [r4] - adds r0, 0xC - bl sub_801B3C0 - b _08017584 -_080174B2: - bl sub_80177F8 - ldr r0, _080174DC - ldr r4, _080174E0 - ldr r1, [r4] - adds r1, 0xC - movs r2, 0 - bl sub_8090E14 - ldr r0, [r4] - adds r0, 0xE4 - movs r5, 0 - strb r5, [r0] - ldr r2, _080174E4 - ldr r4, [r4] - ldr r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x28 - b _08017504 - .align 2, 0 -_080174DC: .4byte gUnknown_202DE58 -_080174E0: .4byte gUnknown_203B208 -_080174E4: .4byte gUnknown_80D5404 -_080174E8: - bl sub_80177F8 - ldr r1, _08017528 - ldr r0, [r1] - adds r0, 0xE4 - movs r5, 0 - strb r5, [r0] - ldr r2, _0801752C - ldr r4, [r1] - ldr r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x2C -_08017504: - adds r0, r2 - ldr r0, [r0] - adds r3, r4, 0 - adds r3, 0x24 - str r5, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r5, [sp, 0x8] - adds r4, 0xE8 - ldr r1, [r4] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x4 - bl sub_8014248 - b _08017584 - .align 2, 0 -_08017528: .4byte gUnknown_203B208 -_0801752C: .4byte gUnknown_80D5404 -_08017530: - movs r0, 0x1 - bl sub_801CF14 - lsls r0, 24 - cmp r0, 0 - bne _08017544 - bl sub_8090A34 - cmp r0, 0x13 - ble _08017554 -_08017544: - bl sub_801CBB8 - ldr r0, _08017550 - ldr r1, [r0] - movs r0, 0x1 - b _0801755A - .align 2, 0 -_08017550: .4byte gUnknown_203B208 -_08017554: - ldr r0, _0801758C - ldr r1, [r0] - movs r0, 0x15 -_0801755A: - str r0, [r1, 0x8] - ldr r3, _0801758C - ldr r0, [r3] - adds r0, 0xE4 - movs r1, 0x1 - strb r1, [r0] - ldr r2, _08017590 - ldr r3, [r3] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x30 - adds r0, r2 - ldr r0, [r0] - adds r3, 0xE8 - ldr r2, [r3] - ldr r3, _08017594 - movs r1, 0 - bl sub_80141B4 -_08017584: - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801758C: .4byte gUnknown_203B208 -_08017590: .4byte gUnknown_80D5404 -_08017594: .4byte 0x0000010d - thumb_func_end sub_8016FF8 - - thumb_func_start sub_8017598 -sub_8017598: - push {r4,lr} - sub sp, 0x4 - ldr r4, _080175F4 - ldr r0, [r4] - adds r0, 0xBC - ldr r0, [r0] - bl sub_8008C54 - ldr r0, [r4] - adds r0, 0xBC - ldr r0, [r0] - bl sub_80073B8 - ldr r2, _080175F8 - ldr r0, [r4] - adds r0, 0xBC - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - movs r1, 0 - bl xxx_call_draw_string - ldr r0, [r4] - adds r0, 0xA8 - bl sub_8013C68 - ldr r0, [r4] - adds r0, 0xBC - ldr r0, [r0] - bl sub_80073E0 - bl sub_801CCD8 - movs r0, 0 - bl sub_801AD34 - ldr r0, [r4] - adds r0, 0x58 - movs r1, 0 - bl sub_8012EA4 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080175F4: .4byte gUnknown_203B208 -_080175F8: .4byte gUnknown_80DB7A8 - thumb_func_end sub_8017598 - - thumb_func_start sub_80175FC -sub_80175FC: - push {r4-r7,lr} - ldr r4, _0801767C - ldr r0, [r4] - adds r0, 0x4C - movs r1, 0 - movs r2, 0xA - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _08017680 - ldr r0, [r0] - str r0, [r3, 0x24] - movs r0, 0x2 - str r0, [r3, 0x28] - movs r1, 0x1 - ldr r0, _08017684 - ldr r0, [r0] - str r0, [r3, 0x2C] - movs r0, 0x3 - str r0, [r3, 0x30] - ldr r0, _08017688 - ldr r0, [r0] - str r0, [r3, 0x34] - movs r0, 0x6 - str r0, [r3, 0x38] - ldr r0, _0801768C - ldr r0, [r0] - str r0, [r3, 0x3C] - str r1, [r3, 0x40] - movs r6, 0x4 - str r2, [r3, 0x44] - str r1, [r3, 0x48] - movs r5, 0 - mov r12, r3 - adds r3, 0x28 - mov r2, r12 - adds r2, 0x4C -_08017648: - ldrh r0, [r2] - cmp r0, 0 - bne _08017658 - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x18] - cmp r1, r0 - beq _080176B2 -_08017658: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _08017648 - movs r5, 0 - cmp r5, r6 - bge _080176B2 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x4C - ldrh r0, [r0] - cmp r0, 0 - bne _08017690 - ldr r0, [r1, 0x28] - str r0, [r1, 0x18] - b _080176B2 - .align 2, 0 -_0801767C: .4byte gUnknown_203B208 -_08017680: .4byte gUnknown_80D4958 -_08017684: .4byte gUnknown_80D4964 -_08017688: .4byte gUnknown_80D4970 -_0801768C: .4byte gUnknown_80D4934 -_08017690: - adds r5, 0x1 - cmp r5, r6 - bge _080176B2 - ldr r2, [r4] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0x4C - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08017690 - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x28 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x18] -_080176B2: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80175FC - - thumb_func_start sub_80176B8 -sub_80176B8: - push {r4-r7,lr} - ldr r4, _08017724 - ldr r0, [r4] - adds r0, 0x4C - movs r1, 0 - movs r2, 0xA - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _08017728 - ldr r0, [r0] - str r0, [r3, 0x24] - movs r0, 0x2 - str r0, [r3, 0x28] - movs r1, 0x1 - ldr r0, _0801772C - ldr r0, [r0] - str r0, [r3, 0x2C] - movs r0, 0x6 - str r0, [r3, 0x30] - movs r6, 0x2 - str r2, [r3, 0x34] - str r1, [r3, 0x38] - movs r5, 0 - mov r12, r3 - adds r3, 0x28 - mov r2, r12 - adds r2, 0x4C -_080176F2: - ldrh r0, [r2] - cmp r0, 0 - bne _08017702 - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x1C] - cmp r1, r0 - beq _08017752 -_08017702: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _080176F2 - movs r5, 0 - cmp r5, r6 - bge _08017752 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x4C - ldrh r0, [r0] - cmp r0, 0 - bne _08017730 - ldr r0, [r1, 0x28] - str r0, [r1, 0x1C] - b _08017752 - .align 2, 0 -_08017724: .4byte gUnknown_203B208 -_08017728: .4byte gUnknown_80D4958 -_0801772C: .4byte gUnknown_80D4970 -_08017730: - adds r5, 0x1 - cmp r5, r6 - bge _08017752 - ldr r2, [r4] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0x4C - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08017730 - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x28 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x1C] -_08017752: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80176B8 - - thumb_func_start sub_8017758 -sub_8017758: - push {r4-r7,lr} - ldr r4, _080177C4 - ldr r0, [r4] - adds r0, 0x4C - movs r1, 0 - movs r2, 0xA - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _080177C8 - ldr r0, [r0] - str r0, [r3, 0x24] - movs r0, 0x3 - str r0, [r3, 0x28] - movs r1, 0x1 - ldr r0, _080177CC - ldr r0, [r0] - str r0, [r3, 0x2C] - movs r0, 0x6 - str r0, [r3, 0x30] - movs r6, 0x2 - str r2, [r3, 0x34] - str r1, [r3, 0x38] - movs r5, 0 - mov r12, r3 - adds r3, 0x28 - mov r2, r12 - adds r2, 0x4C -_08017792: - ldrh r0, [r2] - cmp r0, 0 - bne _080177A2 - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x20] - cmp r1, r0 - beq _080177F2 -_080177A2: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _08017792 - movs r5, 0 - cmp r5, r6 - bge _080177F2 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x4C - ldrh r0, [r0] - cmp r0, 0 - bne _080177D0 - ldr r0, [r1, 0x28] - str r0, [r1, 0x20] - b _080177F2 - .align 2, 0 -_080177C4: .4byte gUnknown_203B208 -_080177C8: .4byte gUnknown_80D4964 -_080177CC: .4byte gUnknown_80D4970 -_080177D0: - adds r5, 0x1 - cmp r5, r6 - bge _080177F2 - ldr r2, [r4] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0x4C - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _080177D0 - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x28 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x20] -_080177F2: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8017758 - - thumb_func_start sub_80177F8 -sub_80177F8: - ldr r0, _0801781C - ldr r1, [r0] - movs r3, 0 - ldr r0, _08017820 - ldr r0, [r0] - str r0, [r1, 0x24] - movs r0, 0x4 - str r0, [r1, 0x28] - movs r2, 0x1 - ldr r0, _08017824 - ldr r0, [r0] - str r0, [r1, 0x2C] - movs r0, 0x5 - str r0, [r1, 0x30] - str r3, [r1, 0x34] - str r2, [r1, 0x38] - bx lr - .align 2, 0 -_0801781C: .4byte gUnknown_203B208 -_08017820: .4byte gUnknown_80D4920 -_08017824: .4byte gUnknown_80D4928 - thumb_func_end sub_80177F8 - - thumb_func_start sub_8017828 -sub_8017828: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080178C8 - ldr r1, [sp] - cmp r1, 0x1 - beq _08017842 - ldr r0, _08017854 - ldr r0, [r0] - str r1, [r0, 0x18] -_08017842: - ldr r0, [sp] - cmp r0, 0x2 - beq _08017862 - cmp r0, 0x2 - bgt _08017858 - cmp r0, 0x1 - beq _080178C2 - b _080178C8 - .align 2, 0 -_08017854: .4byte gUnknown_203B208 -_08017858: - cmp r0, 0x3 - beq _0801788E - cmp r0, 0x6 - beq _080178BA - b _080178C8 -_08017862: - bl sub_8090A34 - cmp r0, 0 - bne _08017872 - movs r0, 0x5 - bl sub_8016E68 - b _080178C8 -_08017872: - movs r0, 0 - bl sub_801CF50 - lsls r0, 24 - cmp r0, 0 - beq _08017886 - movs r0, 0x8 - bl sub_8016E68 - b _080178C8 -_08017886: - movs r0, 0xB - bl sub_8016E68 - b _080178C8 -_0801788E: - movs r0, 0x1 - bl sub_801CF14 - lsls r0, 24 - cmp r0, 0 - beq _080178A2 - movs r0, 0x7 - bl sub_8016E68 - b _080178C8 -_080178A2: - bl sub_8090A34 - cmp r0, 0x13 - ble _080178B2 - movs r0, 0x6 - bl sub_8016E68 - b _080178C8 -_080178B2: - movs r0, 0x14 - bl sub_8016E68 - b _080178C8 -_080178BA: - movs r0, 0x2 - bl sub_8016E68 - b _080178C8 -_080178C2: - movs r0, 0x3 - bl sub_8016E68 -_080178C8: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8017828 - - thumb_func_start sub_80178D0 -sub_80178D0: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0801791E - ldr r0, [sp] - cmp r0, 0x4 - beq _080178F4 - cmp r0, 0x4 - bgt _080178EE - cmp r0, 0x1 - beq _08017918 - b _0801791E -_080178EE: - cmp r0, 0x5 - beq _08017918 - b _0801791E -_080178F4: - ldr r4, _08017914 - ldr r0, [r4] - adds r0, 0xC - bl sub_80917B8 - ldr r0, [r4] - ldr r0, [r0, 0x10] - bl sub_80911F8 - bl sub_80910B4 - movs r0, 0x13 - bl sub_8016E68 - b _0801791E - .align 2, 0 -_08017914: .4byte gUnknown_203B208 -_08017918: - movs r0, 0xE - bl sub_8016E68 -_0801791E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80178D0 - - thumb_func_start sub_8017928 -sub_8017928: - push {lr} - sub sp, 0x8 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080179A2 - ldr r0, [sp] - cmp r0, 0x4 - beq _0801794C - cmp r0, 0x4 - bgt _08017946 - cmp r0, 0x1 - beq _0801799C - b _080179A2 -_08017946: - cmp r0, 0x5 - beq _0801799C - b _080179A2 -_0801794C: - ldr r0, _0801798C - ldr r1, [r0] - ldr r0, _08017990 - ldr r3, [r0] - ldrb r0, [r3, 0xE] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrb r2, [r3, 0xD] - ldrh r0, [r1] - subs r0, r2 - strh r0, [r1] - ldrb r2, [r3, 0xE] - ldr r1, _08017994 - ldr r0, [sp, 0x4] - ands r0, r1 - orrs r0, r2 - str r0, [sp, 0x4] - ldrb r1, [r3, 0xD] - lsls r1, 8 - ldr r2, _08017998 - ands r0, r2 - orrs r0, r1 - str r0, [sp, 0x4] - add r0, sp, 0x4 - bl sub_8091274 - movs r0, 0x1D - bl sub_8016E68 - b _080179A2 - .align 2, 0 -_0801798C: .4byte gUnknown_203B460 -_08017990: .4byte gUnknown_203B208 -_08017994: .4byte 0xffffff00 -_08017998: .4byte 0xffff00ff -_0801799C: - movs r0, 0x17 - bl sub_8016E68 -_080179A2: - add sp, 0x8 - pop {r0} - bx r0 - thumb_func_end sub_8017928 - - thumb_func_start sub_80179A8 -sub_80179A8: - push {r4-r7,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08017A12 - ldr r0, [sp] - cmp r0, 0x4 - beq _080179CC - cmp r0, 0x4 - bgt _080179C6 - cmp r0, 0x1 - beq _08017A0C - b _08017A12 -_080179C6: - cmp r0, 0x5 - beq _08017A0C - b _08017A12 -_080179CC: - movs r5, 0 - ldr r6, _08017A08 - movs r7, 0 -_080179D2: - adds r0, r5, 0 - bl sub_801AED0 - cmp r0, 0 - beq _080179F2 - lsls r4, r5, 2 - ldr r0, [r6] - adds r0, r4 - bl sub_80917B8 - ldr r0, [r6] - adds r0, r4 - strb r7, [r0, 0x2] - ldr r0, [r6] - adds r0, r4 - strb r7, [r0] -_080179F2: - adds r5, 0x1 - cmp r5, 0x13 - ble _080179D2 - bl sub_80910B4 - bl sub_801AE84 - movs r0, 0x13 - bl sub_8016E68 - b _08017A12 - .align 2, 0 -_08017A08: .4byte gUnknown_203B460 -_08017A0C: - movs r0, 0xE - bl sub_8016E68 -_08017A12: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80179A8 - - thumb_func_start sub_8017A1C -sub_8017A1C: - push {r4-r6,lr} - sub sp, 0x8 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08017AEE - ldr r0, [sp] - cmp r0, 0x4 - beq _08017A40 - cmp r0, 0x4 - bgt _08017A3A - cmp r0, 0x1 - beq _08017AE8 - b _08017AEE -_08017A3A: - cmp r0, 0x5 - beq _08017AE8 - b _08017AEE -_08017A40: - movs r5, 0 - ldr r6, _08017A88 -_08017A44: - lsls r0, r5, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_801CFE0 - cmp r0, 0 - beq _08017ACE - ldr r1, _08017A8C - ldr r0, [sp, 0x4] - ands r0, r1 - orrs r0, r4 - str r0, [sp, 0x4] - add r4, sp, 0x4 - ldrb r0, [r4] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _08017AA2 - ldr r2, _08017A90 - ldr r1, [r2] - ldrb r0, [r4] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r1, [r1] - cmp r1, 0x63 - bls _08017A94 - ldr r0, [sp, 0x4] - ands r0, r6 - movs r1, 0xC6 - lsls r1, 7 - b _08017A9C - .align 2, 0 -_08017A88: .4byte 0xffff00ff -_08017A8C: .4byte 0xffffff00 -_08017A90: .4byte gUnknown_203B460 -_08017A94: - lsls r1, 24 - lsrs r1, 16 - ldr r0, [sp, 0x4] - ands r0, r6 -_08017A9C: - orrs r0, r1 - str r0, [sp, 0x4] - b _08017AB0 -_08017AA2: - ldr r0, [sp, 0x4] - ands r0, r6 - movs r1, 0x80 - lsls r1, 1 - orrs r0, r1 - str r0, [sp, 0x4] - ldr r2, _08017AE4 -_08017AB0: - ldr r3, [r2] - add r0, sp, 0x4 - ldrb r1, [r4] - lsls r1, 1 - adds r3, 0x50 - adds r3, r1 - ldr r1, [sp, 0x4] - lsrs r1, 8 - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r3] - subs r2, r1 - strh r2, [r3] - bl sub_8091274 -_08017ACE: - adds r5, 0x1 - cmp r5, 0xEF - ble _08017A44 - bl sub_80910B4 - bl sub_801CF94 - movs r0, 0x1D - bl sub_8016E68 - b _08017AEE - .align 2, 0 -_08017AE4: .4byte gUnknown_203B460 -_08017AE8: - movs r0, 0x17 - bl sub_8016E68 -_08017AEE: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8017A1C - - thumb_func_start sub_8017AF8 -sub_8017AF8: - push {lr} - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x3 - beq _08017B14 - cmp r0, 0x3 - bhi _08017B0E - cmp r0, 0x2 - beq _08017B78 - b _08017B82 -_08017B0E: - cmp r0, 0x4 - beq _08017B50 - b _08017B82 -_08017B14: - bl sub_801AEA8 - cmp r0, 0 - beq _08017B2A - movs r0, 0 - bl sub_8099690 - movs r0, 0x12 - bl sub_8016E68 - b _08017B82 -_08017B2A: - bl sub_801A8AC - ldr r1, _08017B48 - ldr r2, [r1] - str r0, [r2, 0x10] - ldr r1, _08017B4C - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0xC] - movs r0, 0xF - bl sub_8016E68 - b _08017B82 - .align 2, 0 -_08017B48: .4byte gUnknown_203B208 -_08017B4C: .4byte gUnknown_203B460 -_08017B50: - bl sub_801A8AC - ldr r1, _08017B70 - ldr r2, [r1] - str r0, [r2, 0x10] - ldr r1, _08017B74 - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0xC] - movs r0, 0x10 - bl sub_8016E68 - b _08017B82 - .align 2, 0 -_08017B70: .4byte gUnknown_203B208 -_08017B74: .4byte gUnknown_203B460 -_08017B78: - bl sub_801A928 - movs r0, 0x1 - bl sub_8016E68 -_08017B82: - pop {r0} - bx r0 - thumb_func_end sub_8017AF8 - - thumb_func_start sub_8017B88 -sub_8017B88: - push {r4,lr} - movs r0, 0x1 - bl sub_801CA08 - cmp r0, 0x2 - beq _08017C10 - cmp r0, 0x2 - bhi _08017B9E - cmp r0, 0x1 - beq _08017C1C - b _08017C22 -_08017B9E: - cmp r0, 0x3 - beq _08017BA8 - cmp r0, 0x4 - beq _08017BE4 - b _08017C22 -_08017BA8: - bl sub_801CFB8 - cmp r0, 0 - beq _08017BB8 - movs r0, 0x1C - bl sub_8016E68 - b _08017C22 -_08017BB8: - bl sub_801CB24 - ldr r4, _08017BE0 - ldr r1, [r4] - strb r0, [r1, 0x14] - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xC - ldrb r1, [r1, 0x14] - movs r2, 0 - bl sub_8090A8C - ldr r1, [r4] - movs r0, 0x1 - strb r0, [r1, 0xD] - movs r0, 0x19 - bl sub_8016E68 - b _08017C22 - .align 2, 0 -_08017BE0: .4byte gUnknown_203B208 -_08017BE4: - bl sub_801CB24 - ldr r4, _08017C0C - ldr r1, [r4] - strb r0, [r1, 0x14] - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xC - ldrb r1, [r1, 0x14] - movs r2, 0 - bl sub_8090A8C - ldr r1, [r4] - movs r0, 0x1 - strb r0, [r1, 0xD] - movs r0, 0x1A - bl sub_8016E68 - b _08017C22 - .align 2, 0 -_08017C0C: .4byte gUnknown_203B208 -_08017C10: - bl sub_801CBB8 - movs r0, 0x1 - bl sub_8016E68 - b _08017C22 -_08017C1C: - movs r0, 0 - bl sub_801AD34 -_08017C22: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8017B88 - - thumb_func_start sub_8017C28 -sub_8017C28: - push {r4,lr} - movs r0, 0 - bl sub_801CA08 - ldr r4, _08017C54 - ldr r0, [r4] - adds r0, 0x58 - bl sub_8012FD8 - ldr r0, [r4] - adds r0, 0xA8 - bl sub_8013BBC - cmp r0, 0x1 - beq _08017C58 - cmp r0, 0x1 - bcc _08017C76 - cmp r0, 0x2 - beq _08017C70 - cmp r0, 0x3 - beq _08017C5E - b _08017C76 - .align 2, 0 -_08017C54: .4byte gUnknown_203B208 -_08017C58: - bl sub_8017598 - b _08017C76 -_08017C5E: - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0xA8 - ldr r1, [r1] - strb r1, [r0, 0xD] - movs r0, 0x1B - bl sub_8016E68 - b _08017C76 -_08017C70: - movs r0, 0x17 - bl sub_8016E68 -_08017C76: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8017C28 - - thumb_func_start sub_8017C7C -sub_8017C7C: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801A6E8 - ldr r4, _08017CBC - ldr r0, [r4] - adds r0, 0x58 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08017CAC - ldr r0, [r4] - adds r0, 0x58 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08017CAC - ldr r0, [r4] - str r1, [r0, 0x1C] -_08017CAC: - ldr r0, [sp] - cmp r0, 0x2 - beq _08017CC6 - cmp r0, 0x2 - bgt _08017CC0 - cmp r0, 0x1 - beq _08017D14 - b _08017D1A - .align 2, 0 -_08017CBC: .4byte gUnknown_203B208 -_08017CC0: - cmp r0, 0x6 - beq _08017D06 - b _08017D1A -_08017CC6: - movs r0, 0 - bl sub_8099690 - ldr r4, _08017CE4 - ldr r0, [r4] - ldrb r0, [r0, 0xE] - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - bne _08017CE8 - movs r0, 0x9 - bl sub_8016E68 - b _08017D1A - .align 2, 0 -_08017CE4: .4byte gUnknown_203B208 -_08017CE8: - ldr r0, [r4] - ldr r0, [r0, 0x10] - bl sub_801ADA0 - lsls r0, 24 - cmp r0, 0 - bne _08017CFE - movs r0, 0xA - bl sub_8016E68 - b _08017D1A -_08017CFE: - movs r0, 0x11 - bl sub_8016E68 - b _08017D1A -_08017D06: - movs r0, 0 - bl sub_8099690 - movs r0, 0x10 - bl sub_8016E68 - b _08017D1A -_08017D14: - movs r0, 0xE - bl sub_8016E68 -_08017D1A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8017C7C - - thumb_func_start sub_8017D24 -sub_8017D24: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801CA08 - ldr r4, _08017D64 - ldr r0, [r4] - adds r0, 0x58 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08017D54 - ldr r0, [r4] - adds r0, 0x58 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08017D54 - ldr r0, [r4] - str r1, [r0, 0x20] -_08017D54: - ldr r0, [sp] - cmp r0, 0x3 - beq _08017D6E - cmp r0, 0x3 - bgt _08017D68 - cmp r0, 0x1 - beq _08017DB0 - b _08017DB6 - .align 2, 0 -_08017D64: .4byte gUnknown_203B208 -_08017D68: - cmp r0, 0x6 - beq _08017DA8 - b _08017DB6 -_08017D6E: - bl sub_8090A34 - cmp r0, 0x13 - ble _08017D82 - bl sub_801CBB8 - movs r0, 0x6 - bl sub_8016E68 - b _08017DB6 -_08017D82: - ldr r0, _08017D9C - ldr r0, [r0] - ldrb r0, [r0, 0xE] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _08017DA0 - movs r0, 0x18 - bl sub_8016E68 - b _08017DB6 - .align 2, 0 -_08017D9C: .4byte gUnknown_203B208 -_08017DA0: - movs r0, 0x1B - bl sub_8016E68 - b _08017DB6 -_08017DA8: - movs r0, 0x1A - bl sub_8016E68 - b _08017DB6 -_08017DB0: - movs r0, 0x17 - bl sub_8016E68 -_08017DB6: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8017D24 - - thumb_func_start sub_8017DC0 -sub_8017DC0: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _08017DD8 - cmp r0, 0x3 - bhi _08017DD8 - bl sub_801B450 - movs r0, 0xE - bl sub_8016E68 -_08017DD8: - pop {r0} - bx r0 - thumb_func_end sub_8017DC0 - - thumb_func_start sub_8017DDC -sub_8017DDC: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _08017DF4 - cmp r0, 0x3 - bhi _08017DF4 - bl sub_801B450 - movs r0, 0x17 - bl sub_8016E68 -_08017DF4: - pop {r0} - bx r0 - thumb_func_end sub_8017DDC - - thumb_func_start sub_8017DF8 -sub_8017DF8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08017E10 - ldr r0, _08017E18 - ldr r0, [r0] - ldr r0, [r0, 0x8] - bl sub_8016E68 -_08017E10: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08017E18: .4byte gUnknown_203B208 - thumb_func_end sub_8017DF8 - - thumb_func_start sub_8017E1C -sub_8017E1C: - push {r4,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _08017E50 - movs r0, 0xA8 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r1, 0 - str r1, [r0, 0x14] - str r1, [r0, 0x18] - str r1, [r0, 0x1C] - movs r0, 0 - bl sub_8017F10 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08017E50: .4byte gUnknown_203B20C - thumb_func_end sub_8017E1C - - thumb_func_start sub_8017E54 -sub_8017E54: - push {lr} - ldr r0, _08017E6C - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0xE - bhi _08017EEC - lsls r0, 2 - ldr r1, _08017E70 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08017E6C: .4byte gUnknown_203B20C -_08017E70: .4byte _08017E74 - .align 2, 0 -_08017E74: - .4byte _08017EB0 - .4byte _08017EB8 - .4byte _08017EEC - .4byte _08017EE8 - .4byte _08017EBE - .4byte _08017EBE - .4byte _08017EC4 - .4byte _08017ECA - .4byte _08017EEC - .4byte _08017EEC - .4byte _08017ED0 - .4byte _08017ED0 - .4byte _08017ED6 - .4byte _08017EDC - .4byte _08017EE2 -_08017EB0: - movs r0, 0x1 - bl sub_8017F10 - b _08017EEC -_08017EB8: - bl sub_8018588 - b _08017EEC -_08017EBE: - bl sub_8018620 - b _08017EEC -_08017EC4: - bl sub_8018904 - b _08017EEC -_08017ECA: - bl sub_8018AC8 - b _08017EEC -_08017ED0: - bl sub_80186F8 - b _08017EEC -_08017ED6: - bl sub_8018854 - b _08017EEC -_08017EDC: - bl sub_80189C8 - b _08017EEC -_08017EE2: - bl sub_8018AE4 - b _08017EEC -_08017EE8: - movs r0, 0x3 - b _08017EEE -_08017EEC: - movs r0, 0 -_08017EEE: - pop {r1} - bx r1 - thumb_func_end sub_8017E54 - - thumb_func_start sub_8017EF4 -sub_8017EF4: - push {r4,lr} - ldr r4, _08017F0C - ldr r0, [r4] - cmp r0, 0 - beq _08017F06 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08017F06: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08017F0C: .4byte gUnknown_203B20C - thumb_func_end sub_8017EF4 - - thumb_func_start sub_8017F10 -sub_8017F10: - push {lr} - ldr r1, _08017F24 - ldr r1, [r1] - str r0, [r1] - bl sub_8017F28 - bl sub_8018100 - pop {r0} - bx r0 - .align 2, 0 -_08017F24: .4byte gUnknown_203B20C - thumb_func_end sub_8017F10 - - thumb_func_start sub_8017F28 -sub_8017F28: - push {r4-r7,lr} - ldr r4, _08017F48 - ldr r0, [r4] - adds r0, 0xF0 - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0xD - bls _08017F3E - b _080180BC -_08017F3E: - lsls r0, 2 - ldr r1, _08017F4C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08017F48: .4byte gUnknown_203B20C -_08017F4C: .4byte _08017F50 - .align 2, 0 -_08017F50: - .4byte _080180BC - .4byte _08017F88 - .4byte _080180BC - .4byte _080180BC - .4byte _08017FE8 - .4byte _08017FE8 - .4byte _0801809C - .4byte _080180BC - .4byte _080180BC - .4byte _080180BC - .4byte _08018034 - .4byte _08018034 - .4byte _08018084 - .4byte _0801809C -_08017F88: - ldr r4, _08017FDC - ldr r1, [r4] - ldr r2, _08017FE0 - adds r1, 0xF0 - adds r0, r2, 0 - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r3,r5,r7} - stm r1!, {r3,r5,r7} - ldr r1, [r4] - movs r6, 0x84 - lsls r6, 1 - adds r1, r6 - adds r0, r2, 0 - ldm r0!, {r3,r5,r7} - stm r1!, {r3,r5,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldr r0, [r4] - adds r0, 0xF0 - ldm r2!, {r5-r7} - stm r0!, {r5-r7} - ldm r2!, {r1,r3,r5} - stm r0!, {r1,r3,r5} - bl sub_80182E4 - ldr r2, [r4] - movs r0, 0x90 - lsls r0, 1 - adds r2, r0 - ldr r1, _08017FE4 - ldm r1!, {r3,r6,r7} - stm r2!, {r3,r6,r7} - ldm r1!, {r5-r7} - stm r2!, {r5-r7} - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0x20 - bl sub_8012CAC - b _080180E0 - .align 2, 0 -_08017FDC: .4byte gUnknown_203B20C -_08017FE0: .4byte gUnknown_80DB7B8 -_08017FE4: .4byte gUnknown_80DB7D0 -_08017FE8: - ldr r3, _0801802C - ldr r1, [r3] - ldr r2, _08018030 - adds r1, 0xF0 - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - ldr r1, [r3] - movs r6, 0x84 - lsls r6, 1 - adds r1, r6 - adds r0, r2, 0 - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - ldr r1, [r3] - movs r5, 0x90 - lsls r5, 1 - adds r1, r5 - adds r0, r2, 0 - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldr r0, [r3] - adds r0, 0xF0 - ldm r2!, {r1,r3,r4} - stm r0!, {r1,r3,r4} - ldm r2!, {r5-r7} - stm r0!, {r5-r7} - b _080180E0 - .align 2, 0 -_0801802C: .4byte gUnknown_203B20C -_08018030: .4byte gUnknown_80DB7B8 -_08018034: - ldr r3, _08018078 - ldr r1, [r3] - ldr r2, _0801807C - adds r1, 0xF0 - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - ldr r1, [r3] - movs r6, 0x84 - lsls r6, 1 - adds r1, r6 - adds r0, r2, 0 - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - ldr r0, [r3] - movs r5, 0x90 - lsls r5, 1 - adds r0, r5 - ldm r2!, {r1,r6,r7} - stm r0!, {r1,r6,r7} - ldm r2!, {r4-r6} - stm r0!, {r4-r6} - ldr r1, [r3] - adds r1, 0xF0 - ldr r0, _08018080 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - b _080180E0 - .align 2, 0 -_08018078: .4byte gUnknown_203B20C -_0801807C: .4byte gUnknown_80DB7B8 -_08018080: .4byte gUnknown_80DB800 -_08018084: - ldr r0, _08018094 - ldr r1, [r0] - movs r7, 0x84 - lsls r7, 1 - adds r1, r7 - ldr r0, _08018098 - b _080180A8 - .align 2, 0 -_08018094: .4byte gUnknown_203B20C -_08018098: .4byte gUnknown_80DB818 -_0801809C: - ldr r0, _080180B4 - ldr r1, [r0] - movs r0, 0x90 - lsls r0, 1 - adds r1, r0 - ldr r0, _080180B8 -_080180A8: - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - b _080180E0 - .align 2, 0 -_080180B4: .4byte gUnknown_203B20C -_080180B8: .4byte gUnknown_80DB7E8 -_080180BC: - ldr r0, _080180F8 - mov r12, r0 - ldr r4, _080180FC - movs r3, 0 - movs r2, 0x3 -_080180C6: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - adds r1, 0xF0 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _080180C6 -_080180E0: - bl sub_8004914 - ldr r0, _080180F8 - ldr r0, [r0] - adds r0, 0xF0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080180F8: .4byte gUnknown_203B20C -_080180FC: .4byte gUnknown_80DB7B8 - thumb_func_end sub_8017F28 - - thumb_func_start sub_8018100 -sub_8018100: - push {r4,lr} - sub sp, 0x8 - ldr r1, _0801811C - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0xE - bls _08018112 - b _08018278 -_08018112: - lsls r0, 2 - ldr r1, _08018120 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801811C: .4byte gUnknown_203B20C -_08018120: .4byte _08018124 - .align 2, 0 -_08018124: - .4byte _08018278 - .4byte _08018160 - .4byte _08018278 - .4byte _08018278 - .4byte _08018172 - .4byte _08018180 - .4byte _08018188 - .4byte _080181A8 - .4byte _08018278 - .4byte _08018278 - .4byte _080181B2 - .4byte _080181C0 - .4byte _080181CE - .4byte _0801823C - .4byte _08018270 -_08018160: - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x70 - adds r1, r2, 0 - adds r1, 0x20 - adds r3, r2, 0 - adds r3, 0x60 - ldr r2, [r2, 0x14] - b _0801825C -_08018172: - movs r0, 0x3 - movs r1, 0x3 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - b _08018278 -_08018180: - movs r0, 0x1 - bl sub_801A8D0 - b _08018278 -_08018188: - bl sub_801A9E0 - bl sub_801841C - ldr r0, _080181A4 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x70 - adds r1, r2, 0 - adds r1, 0x20 - adds r3, r2, 0 - adds r3, 0x60 - ldr r2, [r2, 0x18] - b _0801825C - .align 2, 0 -_080181A4: .4byte gUnknown_203B20C -_080181A8: - ldr r0, [r4] - adds r0, 0x8 - bl sub_801B3C0 - b _08018278 -_080181B2: - movs r0, 0x1 - movs r1, 0x3 - movs r2, 0 - movs r3, 0xA - bl sub_801C8C4 - b _080181C6 -_080181C0: - movs r0, 0x1 - bl sub_801CB5C -_080181C6: - movs r0, 0 - bl sub_801AD34 - b _08018278 -_080181CE: - ldr r2, [r4] - adds r1, r2, 0 - adds r1, 0xD0 - movs r0, 0x2 - str r0, [r1] - subs r1, 0x8 - movs r0, 0x1 - str r0, [r1] - ldr r0, _080181F8 - ldr r1, [r0] - ldrb r0, [r2, 0xA] - lsls r0, 1 - adds r1, 0x50 - adds r3, r1, r0 - ldrh r0, [r3] - cmp r0, 0x63 - bls _080181FC - adds r1, r2, 0 - adds r1, 0xCC - movs r0, 0x63 - b _08018202 - .align 2, 0 -_080181F8: .4byte gUnknown_203B460 -_080181FC: - adds r1, r2, 0 - adds r1, 0xCC - ldrh r0, [r3] -_08018202: - str r0, [r1] - ldr r2, [r4] - adds r1, r2, 0 - adds r1, 0xC4 - adds r0, r2, 0 - adds r0, 0xCC - ldr r0, [r0] - str r0, [r1] - adds r1, 0x10 - movs r0, 0x1 - str r0, [r1] - adds r1, 0x4 - movs r3, 0x84 - lsls r3, 1 - adds r0, r2, r3 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x28 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x12 - str r0, [r1] - adds r0, r2, 0 - adds r0, 0xC0 - bl sub_8013AA0 - bl sub_8018280 - b _08018278 -_0801823C: - bl sub_801CCD8 - movs r0, 0 - bl sub_801AD34 - bl sub_80184D4 - ldr r0, _0801826C - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x70 - adds r1, r2, 0 - adds r1, 0x20 - adds r3, r2, 0 - adds r3, 0x60 - ldr r2, [r2, 0x1C] -_0801825C: - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _08018278 - .align 2, 0 -_0801826C: .4byte gUnknown_203B20C -_08018270: - ldr r0, [r4] - adds r0, 0x8 - bl sub_801B3C0 -_08018278: - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8018100 - - thumb_func_start sub_8018280 -sub_8018280: - push {r4,lr} - sub sp, 0x4 - ldr r4, _080182DC - ldr r0, [r4] - adds r0, 0xD4 - ldr r0, [r0] - bl sub_8008C54 - ldr r0, [r4] - adds r0, 0xD4 - ldr r0, [r0] - bl sub_80073B8 - ldr r2, _080182E0 - ldr r0, [r4] - adds r0, 0xD4 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - movs r1, 0 - bl xxx_call_draw_string - ldr r0, [r4] - adds r0, 0xC0 - bl sub_8013C68 - ldr r0, [r4] - adds r0, 0xD4 - ldr r0, [r0] - bl sub_80073E0 - bl sub_801CCD8 - movs r0, 0 - bl sub_801AD34 - ldr r0, [r4] - adds r0, 0x70 - movs r1, 0 - bl sub_8012EA4 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080182DC: .4byte gUnknown_203B20C -_080182E0: .4byte gUnknown_80DB830 - thumb_func_end sub_8018280 - - thumb_func_start sub_80182E4 -sub_80182E4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r0, 0 - mov r8, r0 - ldr r4, _080183DC - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - ldr r0, _080183E0 - ldr r0, [r0] - str r0, [r1, 0x20] - movs r0, 0x2 - str r0, [r1, 0x24] - bl sub_8090A34 - cmp r0, 0 - beq _0801831C - movs r0, 0 - bl sub_801CF50 - lsls r0, 24 - cmp r0, 0 - beq _08018324 -_0801831C: - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0x1 - strh r1, [r0] -_08018324: - movs r1, 0x1 - add r8, r1 - ldr r4, _080183DC - ldr r2, [r4] - mov r0, r8 - lsls r3, r0, 3 - adds r0, r2, 0 - adds r0, 0x20 - adds r0, r3 - ldr r1, _080183E4 - ldr r1, [r1] - str r1, [r0] - adds r2, 0x24 - adds r2, r3 - movs r0, 0x3 - str r0, [r2] - movs r0, 0x1 - bl sub_801CF14 - lsls r0, 24 - cmp r0, 0 - bne _08018358 - bl sub_8090A34 - cmp r0, 0x13 - ble _08018366 -_08018358: - ldr r0, [r4] - mov r2, r8 - lsls r1, r2, 1 - adds r0, 0x60 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] -_08018366: - movs r0, 0x1 - add r8, r0 - ldr r4, _080183DC - ldr r7, [r4] - mov r2, r8 - lsls r1, r2, 3 - adds r2, r7, 0 - adds r2, 0x20 - adds r3, r2, r1 - ldr r0, _080183E8 - ldr r0, [r0] - str r0, [r3] - adds r6, r7, 0 - adds r6, 0x24 - adds r1, r6, r1 - movs r3, 0x1 - str r3, [r1] - add r8, r3 - mov r1, r8 - lsls r0, r1, 3 - adds r2, r0 - movs r1, 0 - str r1, [r2] - adds r0, r6, r0 - str r3, [r0] - movs r5, 0 - mov r12, r4 - cmp r5, r8 - bge _080183C0 - adds r4, r7, 0 - adds r2, r4, 0 - adds r2, 0x60 - adds r3, r6, 0 -_080183A8: - ldrh r0, [r2] - cmp r0, 0 - bne _080183B6 - ldr r1, [r3] - ldr r0, [r4, 0x14] - cmp r1, r0 - beq _08018410 -_080183B6: - adds r2, 0x2 - adds r3, 0x8 - adds r5, 0x1 - cmp r5, r8 - blt _080183A8 -_080183C0: - movs r5, 0 - cmp r5, r8 - bge _08018410 - mov r2, r12 - ldr r1, [r2] - adds r0, r1, 0 - adds r0, 0x60 - ldrh r0, [r0] - cmp r0, 0 - bne _080183EC - ldr r0, [r1, 0x24] - str r0, [r1, 0x14] - b _08018410 - .align 2, 0 -_080183DC: .4byte gUnknown_203B20C -_080183E0: .4byte gUnknown_80D4958 -_080183E4: .4byte gUnknown_80D4964 -_080183E8: .4byte gUnknown_80D4934 -_080183EC: - adds r5, 0x1 - cmp r5, r8 - bge _08018410 - mov r0, r12 - ldr r2, [r0] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0x60 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _080183EC - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x24 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x14] -_08018410: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80182E4 - - thumb_func_start sub_801841C -sub_801841C: - push {r4-r7,lr} - ldr r4, _080184A0 - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - ldr r0, _080184A4 - ldr r0, [r0] - str r0, [r1, 0x20] - movs r0, 0x2 - str r0, [r1, 0x24] - ldr r0, [r1, 0xC] - bl sub_801ADA0 - lsls r0, 24 - cmp r0, 0 - bne _0801844C - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0x1 - strh r1, [r0] -_0801844C: - ldr r2, [r4] - movs r1, 0x1 - ldr r0, _080184A8 - ldr r0, [r0] - str r0, [r2, 0x28] - movs r0, 0x4 - str r0, [r2, 0x2C] - movs r5, 0x2 - movs r0, 0 - str r0, [r2, 0x30] - str r1, [r2, 0x34] - movs r3, 0 - adds r6, r4, 0 - mov r12, r2 - mov r4, r12 - adds r4, 0x60 - adds r2, 0x24 -_0801846E: - ldrh r0, [r4] - cmp r0, 0 - bne _0801847E - ldr r1, [r2] - mov r7, r12 - ldr r0, [r7, 0x18] - cmp r1, r0 - beq _080184CE -_0801847E: - adds r4, 0x2 - adds r2, 0x8 - adds r3, 0x1 - cmp r3, r5 - blt _0801846E - movs r3, 0 - cmp r3, r5 - bge _080184CE - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0x60 - ldrh r0, [r0] - cmp r0, 0 - bne _080184AC - ldr r0, [r1, 0x24] - str r0, [r1, 0x18] - b _080184CE - .align 2, 0 -_080184A0: .4byte gUnknown_203B20C -_080184A4: .4byte gUnknown_80D4958 -_080184A8: .4byte gUnknown_80D4970 -_080184AC: - adds r3, 0x1 - cmp r3, r5 - bge _080184CE - ldr r2, [r6] - lsls r0, r3, 1 - adds r1, r2, 0 - adds r1, 0x60 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _080184AC - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0x24 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x18] -_080184CE: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_801841C - - thumb_func_start sub_80184D4 -sub_80184D4: - push {r4-r7,lr} - ldr r4, _08018554 - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - ldr r0, _08018558 - ldr r0, [r0] - str r0, [r1, 0x20] - movs r0, 0x3 - str r0, [r1, 0x24] - bl sub_8090A34 - cmp r0, 0x13 - ble _08018500 - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0x1 - strh r1, [r0] -_08018500: - ldr r2, [r4] - movs r1, 0x1 - ldr r0, _0801855C - ldr r0, [r0] - str r0, [r2, 0x28] - movs r0, 0x4 - str r0, [r2, 0x2C] - movs r5, 0x2 - movs r0, 0 - str r0, [r2, 0x30] - str r1, [r2, 0x34] - movs r3, 0 - adds r6, r4, 0 - mov r12, r2 - mov r4, r12 - adds r4, 0x60 - adds r2, 0x24 -_08018522: - ldrh r0, [r4] - cmp r0, 0 - bne _08018532 - ldr r1, [r2] - mov r7, r12 - ldr r0, [r7, 0x1C] - cmp r1, r0 - beq _08018582 -_08018532: - adds r4, 0x2 - adds r2, 0x8 - adds r3, 0x1 - cmp r3, r5 - blt _08018522 - movs r3, 0 - cmp r3, r5 - bge _08018582 - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0x60 - ldrh r0, [r0] - cmp r0, 0 - bne _08018560 - ldr r0, [r1, 0x24] - str r0, [r1, 0x1C] - b _08018582 - .align 2, 0 -_08018554: .4byte gUnknown_203B20C -_08018558: .4byte gUnknown_80D4964 -_0801855C: .4byte gUnknown_80D4970 -_08018560: - adds r3, 0x1 - cmp r3, r5 - bge _08018582 - ldr r2, [r6] - lsls r0, r3, 1 - adds r1, r2, 0 - adds r1, 0x60 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08018560 - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0x24 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x1C] -_08018582: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80184D4 - - thumb_func_start sub_8018588 -sub_8018588: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - ldr r4, _080185C4 - ldr r0, [r4] - adds r0, 0x70 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080185B4 - ldr r0, [r4] - adds r0, 0x70 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _080185B4 - ldr r0, [r4] - str r1, [r0, 0x14] -_080185B4: - ldr r0, [sp] - cmp r0, 0x2 - beq _080185CE - cmp r0, 0x2 - bgt _080185C8 - cmp r0, 0x1 - beq _08018610 - b _08018616 - .align 2, 0 -_080185C4: .4byte gUnknown_203B20C -_080185C8: - cmp r0, 0x3 - beq _080185EA - b _08018616 -_080185CE: - bl sub_8090A34 - cmp r0, 0 - beq _080185F6 - movs r0, 0 - bl sub_801CF50 - lsls r0, 24 - cmp r0, 0 - bne _080185F6 - movs r0, 0x4 - bl sub_8017F10 - b _08018616 -_080185EA: - movs r0, 0x1 - bl sub_801CF14 - lsls r0, 24 - cmp r0, 0 - beq _08018608 -_080185F6: - ldr r0, _08018604 - ldr r0, [r0] - adds r0, 0x70 - movs r1, 0x1 - bl sub_8012EA4 - b _08018616 - .align 2, 0 -_08018604: .4byte gUnknown_203B20C -_08018608: - movs r0, 0xA - bl sub_8017F10 - b _08018616 -_08018610: - movs r0, 0x3 - bl sub_8017F10 -_08018616: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8018588 - - thumb_func_start sub_8018620 -sub_8018620: - push {r4-r7,lr} - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x3 - beq _0801863C - cmp r0, 0x3 - bhi _08018636 - cmp r0, 0x2 - beq _080186E8 - b _080186F2 -_08018636: - cmp r0, 0x4 - beq _080186C0 - b _080186F2 -_0801863C: - bl sub_801AEA8 - cmp r0, 0 - beq _08018698 - movs r5, 0 - ldr r6, _0801868C - movs r7, 0 -_0801864A: - adds r0, r5, 0 - bl sub_801AED0 - cmp r0, 0 - beq _0801866A - lsls r4, r5, 2 - ldr r0, [r6] - adds r0, r4 - bl sub_80917B8 - ldr r0, [r6] - adds r0, r4 - strb r7, [r0, 0x2] - ldr r0, [r6] - adds r0, r4 - strb r7, [r0] -_0801866A: - adds r5, 0x1 - cmp r5, 0x13 - ble _0801864A - bl sub_80910B4 - bl sub_801AE84 - bl sub_8090A34 - cmp r0, 0 - bne _08018690 - bl sub_801A928 - movs r0, 0x1 - bl sub_8017F10 - b _080186F2 - .align 2, 0 -_0801868C: .4byte gUnknown_203B460 -_08018690: - movs r0, 0x5 - bl sub_8017F10 - b _080186F2 -_08018698: - bl sub_801A8AC - ldr r1, _080186B8 - ldr r2, [r1] - str r0, [r2, 0xC] - ldr r1, _080186BC - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x8] - movs r0, 0x6 - bl sub_8017F10 - b _080186F2 - .align 2, 0 -_080186B8: .4byte gUnknown_203B20C -_080186BC: .4byte gUnknown_203B460 -_080186C0: - bl sub_801A8AC - ldr r1, _080186E0 - ldr r2, [r1] - str r0, [r2, 0xC] - ldr r1, _080186E4 - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x8] - movs r0, 0x7 - bl sub_8017F10 - b _080186F2 - .align 2, 0 -_080186E0: .4byte gUnknown_203B20C -_080186E4: .4byte gUnknown_203B460 -_080186E8: - bl sub_801A928 - movs r0, 0x1 - bl sub_8017F10 -_080186F2: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8018620 - - thumb_func_start sub_80186F8 -sub_80186F8: - push {r4-r7,lr} - sub sp, 0x4 - movs r0, 0x1 - bl sub_801CA08 - cmp r0, 0x2 - bne _08018708 - b _08018838 -_08018708: - cmp r0, 0x2 - bhi _08018714 - cmp r0, 0x1 - bne _08018712 - b _08018844 -_08018712: - b _0801884A -_08018714: - cmp r0, 0x3 - beq _0801871E - cmp r0, 0x4 - beq _0801880C - b _0801884A -_0801871E: - bl sub_801CFB8 - cmp r0, 0 - beq _080187E0 - movs r6, 0 - mov r5, sp - ldr r7, _0801876C -_0801872C: - lsls r0, r6, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_801CFE0 - cmp r0, 0 - beq _080187B2 - ldr r1, _08018770 - ldr r0, [sp] - ands r0, r1 - orrs r0, r4 - str r0, [sp] - ldrb r0, [r5] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _08018786 - ldr r2, _08018774 - ldr r1, [r2] - ldrb r0, [r5] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r1, [r1] - cmp r1, 0x63 - bls _08018778 - ldr r0, [sp] - ands r0, r7 - movs r1, 0xC6 - lsls r1, 7 - b _08018780 - .align 2, 0 -_0801876C: .4byte 0xffff00ff -_08018770: .4byte 0xffffff00 -_08018774: .4byte gUnknown_203B460 -_08018778: - lsls r1, 24 - lsrs r1, 16 - ldr r0, [sp] - ands r0, r7 -_08018780: - orrs r0, r1 - str r0, [sp] - b _08018794 -_08018786: - ldr r0, [sp] - ands r0, r7 - movs r1, 0x80 - lsls r1, 1 - orrs r0, r1 - str r0, [sp] - ldr r2, _080187DC -_08018794: - ldr r2, [r2] - ldrb r0, [r5] - lsls r0, 1 - adds r2, 0x50 - adds r2, r0 - ldr r0, [sp] - lsrs r0, 8 - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r2] - subs r1, r0 - strh r1, [r2] - mov r0, sp - bl sub_8091274 -_080187B2: - adds r6, 0x1 - cmp r6, 0xEF - ble _0801872C - bl sub_80910B4 - bl sub_801CF94 - movs r0, 0x1 - bl sub_801CF14 - lsls r0, 24 - cmp r0, 0 - bne _08018838 - bl sub_8090A34 - cmp r0, 0x13 - bgt _08018838 - movs r0, 0xB - bl sub_8017F10 - b _0801884A - .align 2, 0 -_080187DC: .4byte gUnknown_203B460 -_080187E0: - bl sub_801CB24 - ldr r4, _08018808 - ldr r1, [r4] - strb r0, [r1, 0x10] - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x8 - ldrb r1, [r1, 0x10] - movs r2, 0 - bl sub_8090A8C - ldr r1, [r4] - movs r0, 0x1 - strb r0, [r1, 0x9] - movs r0, 0xD - bl sub_8017F10 - b _0801884A - .align 2, 0 -_08018808: .4byte gUnknown_203B20C -_0801880C: - bl sub_801CB24 - ldr r4, _08018834 - ldr r1, [r4] - strb r0, [r1, 0x10] - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x8 - ldrb r1, [r1, 0x10] - movs r2, 0 - bl sub_8090A8C - ldr r1, [r4] - movs r0, 0x1 - strb r0, [r1, 0x9] - movs r0, 0xE - bl sub_8017F10 - b _0801884A - .align 2, 0 -_08018834: .4byte gUnknown_203B20C -_08018838: - bl sub_801CBB8 - movs r0, 0x1 - bl sub_8017F10 - b _0801884A -_08018844: - movs r0, 0 - bl sub_801AD34 -_0801884A: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80186F8 - - thumb_func_start sub_8018854 -sub_8018854: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - bl sub_801CA08 - ldr r4, _080188E0 - ldr r0, [r4] - adds r0, 0x70 - bl sub_8012FD8 - ldr r0, [r4] - adds r0, 0xC0 - bl sub_8013BBC - cmp r0, 0x1 - beq _080188F8 - cmp r0, 0x1 - bcc _080188FC - cmp r0, 0x2 - beq _080188F0 - cmp r0, 0x3 - bne _080188FC - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xC0 - ldr r0, [r0] - strb r0, [r1, 0x9] - ldr r0, _080188E4 - ldr r1, [r0] - ldr r3, [r4] - ldrb r0, [r3, 0xA] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrb r2, [r3, 0x9] - ldrh r0, [r1] - subs r0, r2 - strh r0, [r1] - ldrb r2, [r3, 0xA] - ldr r1, _080188E8 - ldr r0, [sp] - ands r0, r1 - orrs r0, r2 - str r0, [sp] - ldrb r1, [r3, 0x9] - lsls r1, 8 - ldr r2, _080188EC - ands r0, r2 - orrs r0, r1 - str r0, [sp] - mov r0, sp - bl sub_8091274 - movs r0, 0x1 - bl sub_801CF14 - lsls r0, 24 - cmp r0, 0 - bne _080188D2 - bl sub_8090A34 - cmp r0, 0x13 - ble _080188F0 -_080188D2: - bl sub_801CBB8 - movs r0, 0x1 - bl sub_8017F10 - b _080188FC - .align 2, 0 -_080188E0: .4byte gUnknown_203B20C -_080188E4: .4byte gUnknown_203B460 -_080188E8: .4byte 0xffffff00 -_080188EC: .4byte 0xffff00ff -_080188F0: - movs r0, 0xB - bl sub_8017F10 - b _080188FC -_080188F8: - bl sub_8018280 -_080188FC: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8018854 - - thumb_func_start sub_8018904 -sub_8018904: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801A6E8 - ldr r4, _08018944 - ldr r0, [r4] - adds r0, 0x70 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08018934 - ldr r0, [r4] - adds r0, 0x70 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08018934 - ldr r0, [r4] - str r1, [r0, 0x18] -_08018934: - ldr r0, [sp] - cmp r0, 0x2 - beq _0801894E - cmp r0, 0x2 - bgt _08018948 - cmp r0, 0x1 - beq _080189BA - b _080189C0 - .align 2, 0 -_08018944: .4byte gUnknown_203B20C -_08018948: - cmp r0, 0x4 - beq _080189AC - b _080189C0 -_0801894E: - ldr r4, _08018978 - ldr r0, [r4] - ldrb r0, [r0, 0xA] - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - beq _0801896C - ldr r0, [r4] - ldr r0, [r0, 0xC] - bl sub_801ADA0 - lsls r0, 24 - cmp r0, 0 - bne _0801897C -_0801896C: - ldr r0, [r4] - adds r0, 0x70 - movs r1, 0x1 - bl sub_8012EA4 - b _080189C0 - .align 2, 0 -_08018978: .4byte gUnknown_203B20C -_0801897C: - ldr r0, [r4] - adds r0, 0x8 - bl sub_80917B8 - ldr r0, [r4] - ldr r0, [r0, 0xC] - bl sub_80911F8 - bl sub_80910B4 - bl sub_8090A34 - cmp r0, 0 - bne _080189A4 - bl sub_801A928 - movs r0, 0x1 - bl sub_8017F10 - b _080189C0 -_080189A4: - movs r0, 0x5 - bl sub_8017F10 - b _080189C0 -_080189AC: - movs r0, 0 - bl sub_8099690 - movs r0, 0x7 - bl sub_8017F10 - b _080189C0 -_080189BA: - movs r0, 0x5 - bl sub_8017F10 -_080189C0: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8018904 - - thumb_func_start sub_80189C8 -sub_80189C8: - push {r4,lr} - sub sp, 0x8 - movs r0, 0 - str r0, [sp] - bl sub_801CA08 - ldr r4, _08018A08 - ldr r0, [r4] - adds r0, 0x70 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080189F8 - ldr r0, [r4] - adds r0, 0x70 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _080189F8 - ldr r0, [r4] - str r1, [r0, 0x1C] -_080189F8: - ldr r0, [sp] - cmp r0, 0x3 - beq _08018A12 - cmp r0, 0x3 - bgt _08018A0C - cmp r0, 0x1 - beq _08018AB8 - b _08018ABE - .align 2, 0 -_08018A08: .4byte gUnknown_203B20C -_08018A0C: - cmp r0, 0x4 - beq _08018AB0 - b _08018ABE -_08018A12: - bl sub_8090A34 - cmp r0, 0x13 - ble _08018A2C - ldr r0, _08018A28 - ldr r0, [r0] - adds r0, 0x70 - movs r1, 0x1 - bl sub_8012EA4 - b _08018ABE - .align 2, 0 -_08018A28: .4byte gUnknown_203B20C -_08018A2C: - ldr r4, _08018A44 - ldr r0, [r4] - ldrb r0, [r0, 0xA] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _08018A48 - movs r0, 0xC - bl sub_8017F10 - b _08018ABE - .align 2, 0 -_08018A44: .4byte gUnknown_203B20C -_08018A48: - ldr r0, _08018A9C - ldr r1, [r0] - ldr r3, [r4] - ldrb r0, [r3, 0xA] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrb r2, [r3, 0x9] - ldrh r0, [r1] - subs r0, r2 - strh r0, [r1] - ldrb r2, [r3, 0xA] - ldr r1, _08018AA0 - ldr r0, [sp, 0x4] - ands r0, r1 - orrs r0, r2 - str r0, [sp, 0x4] - ldrb r1, [r3, 0x9] - lsls r1, 8 - ldr r2, _08018AA4 - ands r0, r2 - orrs r0, r1 - str r0, [sp, 0x4] - add r0, sp, 0x4 - bl sub_8091274 - movs r0, 0x1 - bl sub_801CF14 - lsls r0, 24 - cmp r0, 0 - bne _08018A90 - bl sub_8090A34 - cmp r0, 0x13 - ble _08018AA8 -_08018A90: - bl sub_801CBB8 - movs r0, 0x1 - bl sub_8017F10 - b _08018ABE - .align 2, 0 -_08018A9C: .4byte gUnknown_203B460 -_08018AA0: .4byte 0xffffff00 -_08018AA4: .4byte 0xffff00ff -_08018AA8: - movs r0, 0xB - bl sub_8017F10 - b _08018ABE -_08018AB0: - movs r0, 0xE - bl sub_8017F10 - b _08018ABE -_08018AB8: - movs r0, 0xB - bl sub_8017F10 -_08018ABE: - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80189C8 - - thumb_func_start sub_8018AC8 -sub_8018AC8: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _08018AE0 - cmp r0, 0x3 - bhi _08018AE0 - bl sub_801B450 - movs r0, 0x5 - bl sub_8017F10 -_08018AE0: - pop {r0} - bx r0 - thumb_func_end sub_8018AC8 - - thumb_func_start sub_8018AE4 -sub_8018AE4: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _08018AFC - cmp r0, 0x3 - bhi _08018AFC - bl sub_801B450 - movs r0, 0xB - bl sub_8017F10 -_08018AFC: - pop {r0} - bx r0 - thumb_func_end sub_8018AE4 - - thumb_func_start sub_8018B00 -sub_8018B00: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _08018B30 - movs r0, 0xA4 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - adds r1, r0, 0 - str r1, [r5] - movs r2, 0 - str r2, [r1, 0x28] - str r2, [r1, 0x2C] - str r2, [r1, 0x30] - str r4, [r1] - cmp r4, 0x1 - beq _08018B3A - cmp r4, 0x1 - bcc _08018B34 - cmp r4, 0x2 - beq _08018B44 - cmp r4, 0x3 - beq _08018B80 - b _08018BAE - .align 2, 0 -_08018B30: .4byte gUnknown_203B210 -_08018B34: - movs r0, 0x1 - strb r0, [r1, 0x4] - b _08018B46 -_08018B3A: - strb r4, [r1, 0x4] - ldr r0, [r5] - adds r0, 0xE4 - str r2, [r0] - b _08018B50 -_08018B44: - strb r2, [r1, 0x4] -_08018B46: - ldr r0, [r5] - adds r1, r0, 0 - adds r1, 0xE4 - adds r0, 0xD4 - str r0, [r1] -_08018B50: - ldr r0, _08018B78 - movs r5, 0xBE - lsls r5, 1 - adds r1, r5, 0 - bl sub_808D8E0 - ldr r4, _08018B7C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_808D8E0 - adds r0, r5, 0 - bl sub_808D994 - adds r1, r0, 0 - subs r4, 0x50 - adds r0, r4, 0 - bl strcpy - b _08018BAE - .align 2, 0 -_08018B78: .4byte gUnknown_202E5D8 -_08018B7C: .4byte gUnknown_202E1C8 -_08018B80: - strb r2, [r1, 0x4] - ldr r0, [r5] - adds r0, 0xE4 - str r2, [r0] - ldr r0, _08018BF8 - movs r5, 0xBE - lsls r5, 1 - adds r1, r5, 0 - bl sub_808D8E0 - ldr r4, _08018BFC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_808D8E0 - adds r0, r5, 0 - bl sub_808D994 - adds r1, r0, 0 - subs r4, 0x50 - adds r0, r4, 0 - bl strcpy -_08018BAE: - movs r0, 0xBE - lsls r0, 1 - bl sub_808DDD0 - ldr r2, _08018C00 - ldr r3, [r2] - adds r1, r3, 0 - adds r1, 0xD4 - str r0, [r1] - adds r1, 0x4 - ldr r0, [r0, 0x4] - str r0, [r1] - adds r0, r3, 0 - adds r0, 0xE0 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xE1 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xE2 - strb r1, [r0] - ldr r1, [r2] - adds r2, r1, 0 - adds r2, 0xDC - movs r0, 0x2 - strh r0, [r2] - adds r1, 0xDE - movs r0, 0x8 - strh r0, [r1] - movs r0, 0 - bl sub_8018D18 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08018BF8: .4byte gUnknown_202E5D8 -_08018BFC: .4byte gUnknown_202E1C8 -_08018C00: .4byte gUnknown_203B210 - thumb_func_end sub_8018B00 - - thumb_func_start sub_8018C04 -sub_8018C04: - push {lr} - ldr r0, _08018C1C - ldr r0, [r0] - ldr r0, [r0, 0x8] - cmp r0, 0x1F - bhi _08018CE4 - lsls r0, 2 - ldr r1, _08018C20 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08018C1C: .4byte gUnknown_203B210 -_08018C20: .4byte _08018C24 - .align 2, 0 -_08018C24: - .4byte _08018CA4 - .4byte _08018CA4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE0 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CAA - .4byte _08018CAA - .4byte _08018CB6 - .4byte _08018CD4 - .4byte _08018CC2 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CE4 - .4byte _08018CB0 - .4byte _08018CB0 - .4byte _08018CBC - .4byte _08018CDA - .4byte _08018CC8 - .4byte _08018CCE -_08018CA4: - bl sub_8019730 - b _08018CE8 -_08018CAA: - bl sub_80199CC - b _08018CE8 -_08018CB0: - bl sub_8019B08 - b _08018CE8 -_08018CB6: - bl sub_8019BBC - b _08018CE8 -_08018CBC: - bl sub_8019C78 - b _08018CE8 -_08018CC2: - bl sub_8019850 - b _08018CE8 -_08018CC8: - bl sub_80198E8 - b _08018CE8 -_08018CCE: - bl sub_8019944 - b _08018CE8 -_08018CD4: - bl sub_8019D30 - b _08018CE8 -_08018CDA: - bl sub_8019D4C - b _08018CE8 -_08018CE0: - movs r0, 0x3 - b _08018CEA -_08018CE4: - bl sub_8019D68 -_08018CE8: - movs r0, 0 -_08018CEA: - pop {r1} - bx r1 - thumb_func_end sub_8018C04 - - thumb_func_start sub_8018CF0 -sub_8018CF0: - push {r4,lr} - ldr r4, _08018D14 - ldr r0, [r4] - cmp r0, 0 - beq _08018D0C - adds r0, 0xD4 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08018D0C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08018D14: .4byte gUnknown_203B210 - thumb_func_end sub_8018CF0 - - thumb_func_start sub_8018D18 -sub_8018D18: - push {lr} - ldr r1, _08018D2C - ldr r1, [r1] - str r0, [r1, 0x8] - bl sub_8018D30 - bl sub_8018E88 - pop {r0} - bx r0 - .align 2, 0 -_08018D2C: .4byte gUnknown_203B210 - thumb_func_end sub_8018D18 - - thumb_func_start sub_8018D30 -sub_8018D30: - push {r4-r7,lr} - ldr r4, _08018D54 - ldr r0, [r4] - adds r0, 0xE8 - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0, 0x8] - subs r0, 0x12 - cmp r0, 0xA - bls _08018D48 - b _08018E44 -_08018D48: - lsls r0, 2 - ldr r1, _08018D58 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08018D54: .4byte gUnknown_203B210 -_08018D58: .4byte _08018D5C - .align 2, 0 -_08018D5C: - .4byte _08018D88 - .4byte _08018D88 - .4byte _08018E24 - .4byte _08018E44 - .4byte _08018E44 - .4byte _08018E44 - .4byte _08018E44 - .4byte _08018E44 - .4byte _08018DDC - .4byte _08018DDC - .4byte _08018E24 -_08018D88: - ldr r3, _08018DCC - ldr r1, [r3] - ldr r2, _08018DD0 - adds r1, 0xE8 - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - ldr r0, [r3] - movs r6, 0x8C - lsls r6, 1 - adds r0, r6 - ldm r2!, {r1,r4,r7} - stm r0!, {r1,r4,r7} - ldm r2!, {r5-r7} - stm r0!, {r5-r7} - ldr r1, [r3] - adds r1, 0xE8 - ldr r0, _08018DD4 - ldm r0!, {r2,r4,r5} - stm r1!, {r2,r4,r5} - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - ldr r1, [r3] - movs r3, 0x80 - lsls r3, 1 - adds r1, r3 - ldr r0, _08018DD8 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - b _08018E68 - .align 2, 0 -_08018DCC: .4byte gUnknown_203B210 -_08018DD0: .4byte gUnknown_80DB840 -_08018DD4: .4byte gUnknown_80DB870 -_08018DD8: .4byte gUnknown_80DB888 -_08018DDC: - ldr r3, _08018E18 - ldr r1, [r3] - ldr r2, _08018E1C - adds r1, 0xE8 - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - ldr r1, [r3] - movs r4, 0x80 - lsls r4, 1 - adds r1, r4 - adds r0, r2, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldr r0, [r3] - movs r6, 0x8C - lsls r6, 1 - adds r0, r6 - ldm r2!, {r1,r5,r7} - stm r0!, {r1,r5,r7} - ldm r2!, {r1,r6,r7} - stm r0!, {r1,r6,r7} - ldr r1, [r3] - adds r1, r4 - ldr r0, _08018E20 - b _08018E30 - .align 2, 0 -_08018E18: .4byte gUnknown_203B210 -_08018E1C: .4byte gUnknown_80DB840 -_08018E20: .4byte gUnknown_80DB888 -_08018E24: - ldr r0, _08018E3C - ldr r1, [r0] - movs r0, 0x8C - lsls r0, 1 - adds r1, r0 - ldr r0, _08018E40 -_08018E30: - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - b _08018E68 - .align 2, 0 -_08018E3C: .4byte gUnknown_203B210 -_08018E40: .4byte gUnknown_80DB858 -_08018E44: - ldr r0, _08018E80 - mov r12, r0 - ldr r4, _08018E84 - movs r3, 0 - movs r2, 0x3 -_08018E4E: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - adds r1, 0xE8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _08018E4E -_08018E68: - bl sub_8004914 - ldr r0, _08018E80 - ldr r0, [r0] - adds r0, 0xE8 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08018E80: .4byte gUnknown_203B210 -_08018E84: .4byte gUnknown_80DB840 - thumb_func_end sub_8018D30 - - thumb_func_start sub_8018E88 -sub_8018E88: - push {r4,lr} - sub sp, 0x14 - ldr r1, _08018EA4 - ldr r0, [r1] - ldr r0, [r0, 0x8] - adds r4, r1, 0 - cmp r0, 0x20 - bls _08018E9A - b _080194E8 -_08018E9A: - lsls r0, 2 - ldr r1, _08018EA8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08018EA4: .4byte gUnknown_203B210 -_08018EA8: .4byte _08018EAC - .align 2, 0 -_08018EAC: - .4byte _08018F30 - .4byte _08018F58 - .4byte _08018FA8 - .4byte _08018FD0 - .4byte _080194E8 - .4byte _08018FFC - .4byte _08019024 - .4byte _0801904C - .4byte _08019070 - .4byte _08019094 - .4byte _080190B8 - .4byte _080190DC - .4byte _08019104 - .4byte _0801912C - .4byte _08019164 - .4byte _0801918C - .4byte _080191B4 - .4byte _08019294 - .4byte _080191DC - .4byte _080191FA - .4byte _08019218 - .4byte _080193F4 - .4byte _08019254 - .4byte _08019314 - .4byte _0801933C - .4byte _080193FE - .4byte _08019364 - .4byte _08019372 - .4byte _08019380 - .4byte _080193F4 - .4byte _080193B4 - .4byte _0801946C - .4byte _080194C0 -_08018F30: - bl sub_8019DAC - bl sub_80194F8 - movs r0, 0 - bl sub_8019E04 - ldr r2, _08018F50 - ldr r0, _08018F54 - ldr r4, [r0] - ldr r1, [r4] - movs r0, 0x5C - muls r0, r1 - adds r0, r2 - b _08018F76 - .align 2, 0 -_08018F50: .4byte gUnknown_80D5EC8 -_08018F54: .4byte gUnknown_203B210 -_08018F58: - bl sub_8019DAC - bl sub_80194F8 - movs r0, 0 - bl sub_8019E04 - ldr r1, _08018FA0 - ldr r0, _08018FA4 - ldr r4, [r0] - ldr r2, [r4] - movs r0, 0x5C - muls r0, r2 - adds r1, 0x4 - adds r0, r1 -_08018F76: - ldr r0, [r0] - ldr r2, [r4, 0x28] - adds r3, r4, 0 - adds r3, 0x34 - adds r1, r4, 0 - adds r1, 0x74 - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - adds r1, r4, 0 - adds r1, 0xE4 - ldr r1, [r1] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _080194E8 - .align 2, 0 -_08018FA0: .4byte gUnknown_80D5EC8 -_08018FA4: .4byte gUnknown_203B210 -_08018FA8: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1, 0xC] - movs r0, 0 - bl sub_8019E04 - ldr r1, _08018FCC - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x58 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_08018FCC: .4byte gUnknown_80D5EC8 -_08018FD0: - ldr r1, [r4] - movs r0, 0x4 - str r0, [r1, 0xC] - movs r0, 0 - bl sub_8019E04 - ldr r1, _08018FF4 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x8 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - ldr r3, _08018FF8 - b _08019456 - .align 2, 0 -_08018FF4: .4byte gUnknown_80D5EC8 -_08018FF8: .4byte 0x0000030d -_08018FFC: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1, 0xC] - movs r0, 0 - bl sub_8019E04 - ldr r1, _08019020 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x30 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_08019020: .4byte gUnknown_80D5EC8 -_08019024: - ldr r1, [r4] - movs r0, 0x10 - str r0, [r1, 0xC] - movs r0, 0x1 - bl sub_8019E04 - ldr r1, _08019048 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x34 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_08019048: .4byte gUnknown_80D5EC8 -_0801904C: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1, 0xC] - bl sub_8019E04 - ldr r1, _0801906C - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x38 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_0801906C: .4byte gUnknown_80D5EC8 -_08019070: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1, 0xC] - bl sub_8019E04 - ldr r1, _08019090 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x3C - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_08019090: .4byte gUnknown_80D5EC8 -_08019094: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1, 0xC] - bl sub_8019E04 - ldr r1, _080190B4 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x40 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_080190B4: .4byte gUnknown_80D5EC8 -_080190B8: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1, 0xC] - bl sub_8019E04 - ldr r1, _080190D8 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x44 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_080190D8: .4byte gUnknown_80D5EC8 -_080190DC: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1, 0xC] - movs r0, 0 - bl sub_8019E04 - ldr r1, _08019100 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x48 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_08019100: .4byte gUnknown_80D5EC8 -_08019104: - ldr r1, [r4] - movs r0, 0x10 - str r0, [r1, 0xC] - movs r0, 0x1 - bl sub_8019E04 - ldr r1, _08019128 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_08019128: .4byte gUnknown_80D5EC8 -_0801912C: - ldr r0, _0801915C - ldr r1, [r4] - adds r1, 0x1C - movs r2, 0 - bl sub_8090E14 - ldr r1, [r4] - movs r0, 0x18 - str r0, [r1, 0xC] - movs r0, 0x1 - bl sub_8019E04 - ldr r1, _08019160 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_0801915C: .4byte gUnknown_202DE58 -_08019160: .4byte gUnknown_80D5EC8 -_08019164: - ldr r1, [r4] - movs r0, 0x18 - str r0, [r1, 0xC] - movs r0, 0x1 - bl sub_8019E04 - ldr r1, _08019188 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x54 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_08019188: .4byte gUnknown_80D5EC8 -_0801918C: - ldr r1, [r4] - movs r0, 0x12 - str r0, [r1, 0xC] - movs r0, 0 - bl sub_8019E04 - ldr r1, _080191B0 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0xC - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_080191B0: .4byte gUnknown_80D5EC8 -_080191B4: - ldr r1, [r4] - movs r0, 0x13 - str r0, [r1, 0xC] - movs r0, 0 - bl sub_8019E04 - ldr r1, _080191D8 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x10 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_080191D8: .4byte gUnknown_80D5EC8 -_080191DC: - ldr r0, [r4] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _080191EC - movs r0, 0x3 - bl sub_8019E40 - b _080191F2 -_080191EC: - movs r0, 0x3 - bl sub_801A20C -_080191F2: - movs r0, 0 - bl sub_801AD34 - b _08019378 -_080191FA: - ldr r0, [r4] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _0801920A - movs r0, 0x1 - bl sub_8019FCC - b _08019210 -_0801920A: - movs r0, 0x1 - bl sub_801A398 -_08019210: - movs r0, 0 - bl sub_801AD34 - b _08019378 -_08019218: - ldr r0, [r4] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08019226 - bl sub_801A0D8 - b _0801922A -_08019226: - bl sub_801A4A4 -_0801922A: - movs r0, 0 - bl sub_801AD34 - movs r0, 0x1 - bl sub_8016C40 - bl sub_80195C0 - ldr r0, _08019250 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x84 - adds r1, r2, 0 - adds r1, 0x34 - adds r3, r2, 0 - adds r3, 0x74 - ldr r2, [r2, 0x30] - b _080193A0 - .align 2, 0 -_08019250: .4byte gUnknown_203B210 -_08019254: - bl sub_8019700 - ldr r0, _08019284 - ldr r4, _08019288 - ldr r1, [r4] - adds r1, 0x1C - movs r2, 0 - bl sub_8090E14 - ldr r1, _0801928C - ldr r0, [r4] - ldr r0, [r0, 0x10] - str r0, [r1] - movs r0, 0 - bl sub_8019E04 - ldr r1, _08019290 - ldr r4, [r4] - ldr r2, [r4] - movs r0, 0x5C - muls r0, r2 - adds r1, 0x14 - b _0801948C - .align 2, 0 -_08019284: .4byte gUnknown_202DE58 -_08019288: .4byte gUnknown_203B210 -_0801928C: .4byte gUnknown_202DE30 -_08019290: .4byte gUnknown_80D5EC8 -_08019294: - bl sub_8019D8C - cmp r0, 0 - bne _080192C0 - ldr r0, _080192AC - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _080192B0 - bl sub_801A010 - b _080192B4 - .align 2, 0 -_080192AC: .4byte gUnknown_203B210 -_080192B0: - bl sub_801A3DC -_080192B4: - ldr r0, _080192BC - ldr r1, [r0] - movs r0, 0xB - b _080192F2 - .align 2, 0 -_080192BC: .4byte gUnknown_203B210 -_080192C0: - bl sub_8090A34 - cmp r0, 0x13 - ble _080192EC - ldr r0, _080192D8 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _080192DC - bl sub_801A010 - b _080192E0 - .align 2, 0 -_080192D8: .4byte gUnknown_203B210 -_080192DC: - bl sub_801A3DC -_080192E0: - ldr r0, _080192E8 - ldr r1, [r0] - movs r0, 0x1 - b _080192F2 - .align 2, 0 -_080192E8: .4byte gUnknown_203B210 -_080192EC: - ldr r0, _0801930C - ldr r1, [r0] - movs r0, 0x10 -_080192F2: - str r0, [r1, 0xC] - movs r0, 0 - bl sub_8019E04 - ldr r2, _08019310 - ldr r0, _0801930C - ldr r1, [r0] - ldr r3, [r1] - movs r0, 0x5C - muls r0, r3 - adds r2, 0x18 - b _0801944C - .align 2, 0 -_0801930C: .4byte gUnknown_203B210 -_08019310: .4byte gUnknown_80D5EC8 -_08019314: - ldr r1, [r4] - movs r0, 0x1A - str r0, [r1, 0xC] - movs r0, 0 - bl sub_8019E04 - ldr r1, _08019338 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x1C - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_08019338: .4byte gUnknown_80D5EC8 -_0801933C: - ldr r1, [r4] - movs r0, 0x1B - str r0, [r1, 0xC] - movs r0, 0 - bl sub_8019E04 - ldr r1, _08019360 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x20 - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - b _08019454 - .align 2, 0 -_08019360: .4byte gUnknown_80D5EC8 -_08019364: - movs r0, 0x4 - movs r1, 0x3 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - b _08019378 -_08019372: - movs r0, 0x1 - bl sub_801A8D0 -_08019378: - movs r0, 0x1 - bl sub_8016C40 - b _080194E8 -_08019380: - bl sub_801A9E0 - movs r0, 0x1 - bl sub_8016C40 - bl sub_8019660 - ldr r0, _080193B0 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x84 - adds r1, r2, 0 - adds r1, 0x34 - adds r3, r2, 0 - adds r3, 0x74 - ldr r2, [r2, 0x2C] -_080193A0: - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _080194E8 - .align 2, 0 -_080193B0: .4byte gUnknown_203B210 -_080193B4: - bl sub_8019700 - ldr r0, _080193E4 - ldr r4, _080193E8 - ldr r1, [r4] - adds r1, 0x1C - movs r2, 0 - bl sub_8090E14 - ldr r1, _080193EC - ldr r0, [r4] - ldr r0, [r0, 0x10] - str r0, [r1] - movs r0, 0 - bl sub_8019E04 - ldr r1, _080193F0 - ldr r4, [r4] - ldr r2, [r4] - movs r0, 0x5C - muls r0, r2 - adds r1, 0x24 - b _0801948C - .align 2, 0 -_080193E4: .4byte gUnknown_202DE58 -_080193E8: .4byte gUnknown_203B210 -_080193EC: .4byte gUnknown_202DE30 -_080193F0: .4byte gUnknown_80D5EC8 -_080193F4: - ldr r0, [r4] - adds r0, 0x1C - bl sub_801B3C0 - b _080194E8 -_080193FE: - bl sub_8090A34 - cmp r0, 0 - beq _08019418 - ldr r0, _08019424 - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r1, [r0] - ldr r0, _08019428 - cmp r1, r0 - ble _08019430 -_08019418: - bl sub_801A928 - ldr r0, _0801942C - ldr r1, [r0] - movs r0, 0x1 - b _08019436 - .align 2, 0 -_08019424: .4byte gUnknown_203B460 -_08019428: .4byte 0x0001869e -_0801942C: .4byte gUnknown_203B210 -_08019430: - ldr r0, _08019460 - ldr r1, [r0] - movs r0, 0x18 -_08019436: - str r0, [r1, 0xC] - movs r0, 0 - bl sub_8019E04 - ldr r2, _08019464 - ldr r0, _08019460 - ldr r1, [r0] - ldr r3, [r1] - movs r0, 0x5C - muls r0, r3 - adds r2, 0x2C -_0801944C: - adds r0, r2 - ldr r0, [r0] - adds r1, 0xE4 - ldr r2, [r1] -_08019454: - ldr r3, _08019468 -_08019456: - movs r1, 0 - bl sub_80141B4 - b _080194E8 - .align 2, 0 -_08019460: .4byte gUnknown_203B210 -_08019464: .4byte gUnknown_80D5EC8 -_08019468: .4byte 0x0000010d -_0801946C: - bl sub_8019700 - ldr r1, _080194B4 - ldr r4, _080194B8 - ldr r0, [r4] - ldr r0, [r0, 0x18] - str r0, [r1] - movs r0, 0 - bl sub_8019E04 - ldr r1, _080194BC - ldr r4, [r4] - ldr r2, [r4] - movs r0, 0x5C - muls r0, r2 - adds r1, 0x28 -_0801948C: - adds r0, r1 - ldr r0, [r0] - adds r3, r4, 0 - adds r3, 0x34 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - adds r4, 0xE4 - ldr r1, [r4] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x5 - bl sub_8014248 - b _080194E8 - .align 2, 0 -_080194B4: .4byte gUnknown_202DE30 -_080194B8: .4byte gUnknown_203B210 -_080194BC: .4byte gUnknown_80D5EC8 -_080194C0: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1, 0xC] - movs r0, 0 - bl sub_8019E04 - ldr r1, _080194F0 - ldr r2, [r4] - ldr r3, [r2] - movs r0, 0x5C - muls r0, r3 - adds r1, 0x2C - adds r0, r1 - ldr r0, [r0] - adds r2, 0xE4 - ldr r2, [r2] - ldr r3, _080194F4 - movs r1, 0 - bl sub_80141B4 -_080194E8: - add sp, 0x14 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080194F0: .4byte gUnknown_80D5EC8 -_080194F4: .4byte 0x0000010d - thumb_func_end sub_8018E88 - - thumb_func_start sub_80194F8 -sub_80194F8: - push {r4-r7,lr} - ldr r4, _08019580 - ldr r0, [r4] - adds r0, 0x74 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _08019584 - ldr r0, [r0] - str r0, [r3, 0x34] - movs r0, 0x2 - str r0, [r3, 0x38] - movs r1, 0x1 - ldr r0, _08019588 - ldr r0, [r0] - str r0, [r3, 0x3C] - movs r0, 0x3 - str r0, [r3, 0x40] - ldr r0, _0801958C - str r0, [r3, 0x44] - movs r0, 0x4 - str r0, [r3, 0x48] - ldr r0, _08019590 - ldr r0, [r0] - str r0, [r3, 0x4C] - movs r0, 0x7 - str r0, [r3, 0x50] - ldr r0, _08019594 - ldr r0, [r0] - str r0, [r3, 0x54] - str r1, [r3, 0x58] - movs r6, 0x5 - str r2, [r3, 0x5C] - str r1, [r3, 0x60] - movs r5, 0 - mov r12, r3 - adds r3, 0x38 - mov r2, r12 - adds r2, 0x74 -_0801954C: - ldrh r0, [r2] - cmp r0, 0 - bne _0801955C - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x28] - cmp r1, r0 - beq _080195BA -_0801955C: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _0801954C - movs r5, 0 - cmp r5, r6 - bge _080195BA - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x74 - ldrh r0, [r0] - cmp r0, 0 - bne _08019598 - ldr r0, [r1, 0x38] - str r0, [r1, 0x28] - b _080195BA - .align 2, 0 -_08019580: .4byte gUnknown_203B210 -_08019584: .4byte gUnknown_80D4978 -_08019588: .4byte gUnknown_80D4984 -_0801958C: .4byte gUnknown_80DB8A0 -_08019590: .4byte gUnknown_80D4970 -_08019594: .4byte gUnknown_80D4934 -_08019598: - adds r5, 0x1 - cmp r5, r6 - bge _080195BA - ldr r2, [r4] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0x74 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08019598 - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x38 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x28] -_080195BA: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80194F8 - - thumb_func_start sub_80195C0 -sub_80195C0: - push {r4-r7,lr} - ldr r4, _0801962C - ldr r0, [r4] - adds r0, 0x74 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _08019630 - ldr r0, [r0] - str r0, [r3, 0x34] - movs r0, 0x2 - str r0, [r3, 0x38] - movs r1, 0x1 - ldr r0, _08019634 - ldr r0, [r0] - str r0, [r3, 0x3C] - movs r0, 0x7 - str r0, [r3, 0x40] - movs r6, 0x2 - str r2, [r3, 0x44] - str r1, [r3, 0x48] - movs r5, 0 - mov r12, r3 - adds r3, 0x38 - mov r2, r12 - adds r2, 0x74 -_080195FA: - ldrh r0, [r2] - cmp r0, 0 - bne _0801960A - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x30] - cmp r1, r0 - beq _0801965A -_0801960A: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _080195FA - movs r5, 0 - cmp r5, r6 - bge _0801965A - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x74 - ldrh r0, [r0] - cmp r0, 0 - bne _08019638 - ldr r0, [r1, 0x38] - str r0, [r1, 0x30] - b _0801965A - .align 2, 0 -_0801962C: .4byte gUnknown_203B210 -_08019630: .4byte gUnknown_80D4978 -_08019634: .4byte gUnknown_80D4970 -_08019638: - adds r5, 0x1 - cmp r5, r6 - bge _0801965A - ldr r2, [r4] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0x74 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08019638 - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x38 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x30] -_0801965A: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80195C0 - - thumb_func_start sub_8019660 -sub_8019660: - push {r4-r7,lr} - ldr r4, _080196CC - ldr r0, [r4] - adds r0, 0x74 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _080196D0 - ldr r0, [r0] - str r0, [r3, 0x34] - movs r0, 0x3 - str r0, [r3, 0x38] - movs r1, 0x1 - ldr r0, _080196D4 - ldr r0, [r0] - str r0, [r3, 0x3C] - movs r0, 0x7 - str r0, [r3, 0x40] - movs r6, 0x2 - str r2, [r3, 0x44] - str r1, [r3, 0x48] - movs r5, 0 - mov r12, r3 - adds r3, 0x38 - mov r2, r12 - adds r2, 0x74 -_0801969A: - ldrh r0, [r2] - cmp r0, 0 - bne _080196AA - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x2C] - cmp r1, r0 - beq _080196FA -_080196AA: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _0801969A - movs r5, 0 - cmp r5, r6 - bge _080196FA - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x74 - ldrh r0, [r0] - cmp r0, 0 - bne _080196D8 - ldr r0, [r1, 0x38] - str r0, [r1, 0x2C] - b _080196FA - .align 2, 0 -_080196CC: .4byte gUnknown_203B210 -_080196D0: .4byte gUnknown_80D4984 -_080196D4: .4byte gUnknown_80D4970 -_080196D8: - adds r5, 0x1 - cmp r5, r6 - bge _080196FA - ldr r2, [r4] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0x74 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _080196D8 - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x38 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x2C] -_080196FA: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8019660 - - thumb_func_start sub_8019700 -sub_8019700: - ldr r0, _08019724 - ldr r1, [r0] - movs r3, 0 - ldr r0, _08019728 - ldr r0, [r0] - str r0, [r1, 0x34] - movs r0, 0x5 - str r0, [r1, 0x38] - movs r2, 0x1 - ldr r0, _0801972C - ldr r0, [r0] - str r0, [r1, 0x3C] - movs r0, 0x6 - str r0, [r1, 0x40] - str r3, [r1, 0x44] - str r2, [r1, 0x48] - bx lr - .align 2, 0 -_08019724: .4byte gUnknown_203B210 -_08019728: .4byte gUnknown_80D4920 -_0801972C: .4byte gUnknown_80D4928 - thumb_func_end sub_8019700 - - thumb_func_start sub_8019730 -sub_8019730: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - beq _08019740 - b _0801984A -_08019740: - ldr r1, [sp] - cmp r1, 0x1 - beq _0801974C - ldr r0, _08019760 - ldr r0, [r0] - str r1, [r0, 0x28] -_0801974C: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0x6 - bls _08019756 - b _0801984A -_08019756: - lsls r0, 2 - ldr r1, _08019764 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08019760: .4byte gUnknown_203B210 -_08019764: .4byte _08019768 - .align 2, 0 -_08019768: - .4byte _08019844 - .4byte _08019784 - .4byte _080197AC - .4byte _080197E4 - .4byte _0801984A - .4byte _0801984A - .4byte _0801983C -_08019784: - bl sub_8019D8C - cmp r0, 0 - bne _08019794 - movs r0, 0x5 - bl sub_8018D18 - b _0801984A -_08019794: - bl sub_8090A34 - cmp r0, 0x13 - ble _080197A4 - movs r0, 0xA - bl sub_8018D18 - b _0801984A -_080197A4: - movs r0, 0xF - bl sub_8018D18 - b _0801984A -_080197AC: - bl sub_8090A34 - cmp r0, 0 - beq _080197EC - ldr r0, _080197D8 - ldr r0, [r0] - ldr r0, [r0, 0x14] - cmp r0, 0 - beq _080197FE - ldr r0, _080197DC - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r1, [r0] - ldr r0, _080197E0 - cmp r1, r0 - bgt _08019822 - movs r0, 0x17 - bl sub_8018D18 - b _0801984A - .align 2, 0 -_080197D8: .4byte gUnknown_203B210 -_080197DC: .4byte gUnknown_203B460 -_080197E0: .4byte 0x0001869e -_080197E4: - bl sub_8090A34 - cmp r0, 0 - bne _080197F4 -_080197EC: - movs r0, 0x9 - bl sub_8018D18 - b _0801984A -_080197F4: - ldr r0, _08019808 - ldr r1, [r0] - ldr r0, [r1, 0x14] - cmp r0, 0 - bne _0801980C -_080197FE: - movs r0, 0x8 - bl sub_8018D18 - b _0801984A - .align 2, 0 -_08019808: .4byte gUnknown_203B210 -_0801980C: - ldr r0, _0801982C - ldr r0, [r0] - movs r2, 0x98 - lsls r2, 2 - adds r0, r2 - ldr r1, [r1, 0x18] - ldr r0, [r0] - adds r1, r0 - ldr r0, _08019830 - cmp r1, r0 - ble _08019834 -_08019822: - movs r0, 0x7 - bl sub_8018D18 - b _0801984A - .align 2, 0 -_0801982C: .4byte gUnknown_203B460 -_08019830: .4byte 0x0001869f -_08019834: - movs r0, 0x1F - bl sub_8018D18 - b _0801984A -_0801983C: - movs r0, 0x2 - bl sub_8018D18 - b _0801984A -_08019844: - movs r0, 0x3 - bl sub_8018D18 -_0801984A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8019730 - - thumb_func_start sub_8019850 -sub_8019850: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080198DE - ldr r0, [sp] - cmp r0, 0x5 - beq _08019874 - cmp r0, 0x5 - bgt _0801986E - cmp r0, 0x1 - beq _080198D8 - b _080198DE -_0801986E: - cmp r0, 0x6 - beq _080198D8 - b _080198DE -_08019874: - ldr r4, _080198A8 - ldr r0, [r4] - ldr r0, [r0, 0x10] - negs r0, r0 - bl sub_80913A0 - ldr r1, [r4] - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _080198AC - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - bl sub_809185C - bl sub_8091274 - ldr r0, [r4] - adds r0, 0x20 - ldrb r0, [r0] - bl sub_8091840 - bl sub_8091874 - b _080198C8 - .align 2, 0 -_080198A8: .4byte gUnknown_203B210 -_080198AC: - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - bl sub_8091A90 - bl sub_8091274 - ldr r0, [r4] - adds r0, 0x21 - ldrb r0, [r0] - bl sub_8091A74 - bl sub_8091AA8 -_080198C8: - movs r0, 0xA6 - lsls r0, 1 - bl sub_8011988 - movs r0, 0x11 - bl sub_8018D18 - b _080198DE -_080198D8: - movs r0, 0x10 - bl sub_8018D18 -_080198DE: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8019850 - - thumb_func_start sub_80198E8 -sub_80198E8: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0801993A - ldr r0, [sp] - cmp r0, 0x5 - beq _0801990C - cmp r0, 0x5 - bgt _08019906 - cmp r0, 0x1 - beq _08019934 - b _0801993A -_08019906: - cmp r0, 0x6 - beq _08019934 - b _0801993A -_0801990C: - ldr r4, _08019930 - ldr r0, [r4] - ldr r0, [r0, 0x10] - bl sub_80913A0 - ldr r0, [r4] - ldr r0, [r0, 0x24] - bl sub_80911F8 - movs r0, 0xA6 - lsls r0, 1 - bl sub_8011988 - movs r0, 0x19 - bl sub_8018D18 - b _0801993A - .align 2, 0 -_08019930: .4byte gUnknown_203B210 -_08019934: - movs r0, 0x18 - bl sub_8018D18 -_0801993A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80198E8 - - thumb_func_start sub_8019944 -sub_8019944: - push {r4,r5,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080199C2 - ldr r0, [sp] - cmp r0, 0x5 - beq _08019968 - cmp r0, 0x5 - bgt _08019962 - cmp r0, 0x1 - beq _080199BC - b _080199C2 -_08019962: - cmp r0, 0x6 - beq _080199BC - b _080199C2 -_08019968: - movs r4, 0 - ldr r5, _080199B4 -_0801996C: - lsls r1, r4, 2 - ldr r0, [r5] - adds r2, r0, r1 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0801998E - ldrb r0, [r2, 0x2] - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - beq _0801998E - adds r0, r4, 0 - bl sub_8091234 -_0801998E: - adds r4, 0x1 - cmp r4, 0x13 - ble _0801996C - bl sub_80910B4 - ldr r0, _080199B8 - ldr r0, [r0] - ldr r0, [r0, 0x18] - bl sub_80913A0 - movs r0, 0xA6 - lsls r0, 1 - bl sub_8011988 - movs r0, 0x20 - bl sub_8018D18 - b _080199C2 - .align 2, 0 -_080199B4: .4byte gUnknown_203B460 -_080199B8: .4byte gUnknown_203B210 -_080199BC: - movs r0, 0x1 - bl sub_8018D18 -_080199C2: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8019944 - - thumb_func_start sub_80199CC -sub_80199CC: - push {r4,r5,lr} - ldr r0, _080199E0 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _080199E4 - movs r0, 0x1 - bl sub_8019EDC - b _080199EA - .align 2, 0 -_080199E0: .4byte gUnknown_203B210 -_080199E4: - movs r0, 0x1 - bl sub_801A2A8 -_080199EA: - cmp r0, 0x2 - beq _08019AD4 - cmp r0, 0x2 - bhi _080199FA - cmp r0, 0x1 - bne _080199F8 - b _08019AF4 -_080199F8: - b _08019B00 -_080199FA: - cmp r0, 0x3 - beq _08019A04 - cmp r0, 0x4 - beq _08019A6C - b _08019B00 -_08019A04: - ldr r4, _08019A24 - ldr r0, [r4] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08019A28 - bl sub_8019FB0 - ldr r1, [r4] - adds r1, 0x20 - strb r0, [r1] - ldr r0, [r4] - adds r0, 0x20 - ldrb r0, [r0] - bl sub_809185C - b _08019A3C - .align 2, 0 -_08019A24: .4byte gUnknown_203B210 -_08019A28: - bl sub_801A37C - ldr r1, [r4] - adds r1, 0x21 - strb r0, [r1] - ldr r0, [r4] - adds r0, 0x21 - ldrb r0, [r0] - bl sub_8091A90 -_08019A3C: - adds r5, r0, 0 - ldr r4, _08019A68 - ldr r0, [r4] - adds r0, 0x1C - ldrb r1, [r5] - movs r2, 0 - bl sub_8090A8C - ldr r1, [r4] - ldrb r0, [r5, 0x1] - strb r0, [r1, 0x1D] - ldr r0, [r4] - adds r0, 0x1C - bl sub_8090C7C - ldr r1, [r4] - str r0, [r1, 0x10] - movs r0, 0x14 - bl sub_8018D18 - b _08019B00 - .align 2, 0 -_08019A68: .4byte gUnknown_203B210 -_08019A6C: - ldr r4, _08019A8C - ldr r0, [r4] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08019A90 - bl sub_8019FB0 - ldr r1, [r4] - adds r1, 0x20 - strb r0, [r1] - ldr r0, [r4] - adds r0, 0x20 - ldrb r0, [r0] - bl sub_809185C - b _08019AA4 - .align 2, 0 -_08019A8C: .4byte gUnknown_203B210 -_08019A90: - bl sub_801A37C - ldr r1, [r4] - adds r1, 0x21 - strb r0, [r1] - ldr r0, [r4] - adds r0, 0x21 - ldrb r0, [r0] - bl sub_8091A90 -_08019AA4: - adds r5, r0, 0 - ldr r4, _08019AD0 - ldr r0, [r4] - adds r0, 0x1C - ldrb r1, [r5] - movs r2, 0 - bl sub_8090A8C - ldr r1, [r4] - ldrb r0, [r5, 0x1] - strb r0, [r1, 0x1D] - ldr r0, [r4] - adds r0, 0x1C - bl sub_8090C7C - ldr r1, [r4] - str r0, [r1, 0x10] - movs r0, 0x15 - bl sub_8018D18 - b _08019B00 - .align 2, 0 -_08019AD0: .4byte gUnknown_203B210 -_08019AD4: - ldr r0, _08019AE4 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08019AE8 - bl sub_801A010 - b _08019AEC - .align 2, 0 -_08019AE4: .4byte gUnknown_203B210 -_08019AE8: - bl sub_801A3DC -_08019AEC: - movs r0, 0x1 - bl sub_8018D18 - b _08019B00 -_08019AF4: - movs r0, 0 - bl sub_801AD34 - movs r0, 0x1 - bl sub_8016C40 -_08019B00: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80199CC - - thumb_func_start sub_8019B08 -sub_8019B08: - push {r4,lr} - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x4 - bhi _08019BB0 - lsls r0, 2 - ldr r1, _08019B20 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08019B20: .4byte _08019B24 - .align 2, 0 -_08019B24: - .4byte _08019BB6 - .4byte _08019BB0 - .4byte _08019BA4 - .4byte _08019B38 - .4byte _08019B6C -_08019B38: - bl sub_801A8AC - ldr r4, _08019B64 - ldr r2, [r4] - str r0, [r2, 0x24] - ldr r1, _08019B68 - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x1C] - adds r2, 0x1C - adds r0, r2, 0 - bl sub_8090CCC - ldr r1, [r4] - str r0, [r1, 0x10] - movs r0, 0x1C - bl sub_8018D18 - b _08019BB6 - .align 2, 0 -_08019B64: .4byte gUnknown_203B210 -_08019B68: .4byte gUnknown_203B460 -_08019B6C: - bl sub_801A8AC - ldr r4, _08019B9C - ldr r2, [r4] - str r0, [r2, 0x24] - ldr r1, _08019BA0 - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x1C] - adds r2, 0x1C - adds r0, r2, 0 - bl sub_8090CCC - ldr r1, [r4] - str r0, [r1, 0x10] - movs r0, 0 - bl sub_8099690 - movs r0, 0x1D - bl sub_8018D18 - b _08019BB6 - .align 2, 0 -_08019B9C: .4byte gUnknown_203B210 -_08019BA0: .4byte gUnknown_203B460 -_08019BA4: - bl sub_801A928 - movs r0, 0x1 - bl sub_8018D18 - b _08019BB6 -_08019BB0: - movs r0, 0x1 - bl sub_8016C40 -_08019BB6: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8019B08 - - thumb_func_start sub_8019BBC -sub_8019BBC: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - ldr r0, _08019BD8 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08019BDC - movs r0, 0 - bl sub_8019EDC - b _08019BE2 - .align 2, 0 -_08019BD8: .4byte gUnknown_203B210 -_08019BDC: - movs r0, 0 - bl sub_801A2A8 -_08019BE2: - ldr r4, _08019C18 - ldr r0, [r4] - adds r0, 0x84 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08019C06 - ldr r0, [r4] - adds r0, 0x84 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08019C06 - ldr r0, [r4] - str r1, [r0, 0x30] -_08019C06: - ldr r0, [sp] - cmp r0, 0x2 - beq _08019C22 - cmp r0, 0x2 - bgt _08019C1C - cmp r0, 0x1 - beq _08019C68 - b _08019C6E - .align 2, 0 -_08019C18: .4byte gUnknown_203B210 -_08019C1C: - cmp r0, 0x7 - beq _08019C60 - b _08019C6E -_08019C22: - ldr r0, _08019C3C - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r1, [r0] - cmp r1, 0 - bne _08019C40 - movs r0, 0x6 - bl sub_8018D18 - b _08019C6E - .align 2, 0 -_08019C3C: .4byte gUnknown_203B460 -_08019C40: - ldr r0, _08019C54 - ldr r0, [r0] - ldr r0, [r0, 0x10] - cmp r0, r1 - ble _08019C58 - movs r0, 0xC - bl sub_8018D18 - b _08019C6E - .align 2, 0 -_08019C54: .4byte gUnknown_203B210 -_08019C58: - movs r0, 0x16 - bl sub_8018D18 - b _08019C6E -_08019C60: - movs r0, 0x15 - bl sub_8018D18 - b _08019C6E -_08019C68: - movs r0, 0x13 - bl sub_8018D18 -_08019C6E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8019BBC - - thumb_func_start sub_8019C78 -sub_8019C78: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801A6E8 - ldr r4, _08019CB8 - ldr r0, [r4] - adds r0, 0x84 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08019CA8 - ldr r0, [r4] - adds r0, 0x84 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08019CA8 - ldr r0, [r4] - str r1, [r0, 0x2C] -_08019CA8: - ldr r0, [sp] - cmp r0, 0x3 - beq _08019CC2 - cmp r0, 0x3 - bgt _08019CBC - cmp r0, 0x1 - beq _08019D22 - b _08019D28 - .align 2, 0 -_08019CB8: .4byte gUnknown_203B210 -_08019CBC: - cmp r0, 0x7 - beq _08019D14 - b _08019D28 -_08019CC2: - movs r0, 0 - bl sub_8099690 - ldr r4, _08019CE0 - ldr r0, [r4] - ldrb r0, [r0, 0x1E] - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - bne _08019CE4 - movs r0, 0xD - bl sub_8018D18 - b _08019D28 - .align 2, 0 -_08019CE0: .4byte gUnknown_203B210 -_08019CE4: - ldr r1, [r4] - ldr r0, _08019D04 - ldr r0, [r0] - movs r2, 0x98 - lsls r2, 2 - adds r0, r2 - ldr r1, [r1, 0x10] - ldr r0, [r0] - adds r1, r0 - ldr r0, _08019D08 - cmp r1, r0 - ble _08019D0C - movs r0, 0xE - bl sub_8018D18 - b _08019D28 - .align 2, 0 -_08019D04: .4byte gUnknown_203B460 -_08019D08: .4byte 0x0001869f -_08019D0C: - movs r0, 0x1E - bl sub_8018D18 - b _08019D28 -_08019D14: - movs r0, 0 - bl sub_8099690 - movs r0, 0x1D - bl sub_8018D18 - b _08019D28 -_08019D22: - movs r0, 0x1B - bl sub_8018D18 -_08019D28: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8019C78 - - thumb_func_start sub_8019D30 -sub_8019D30: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _08019D48 - cmp r0, 0x3 - bhi _08019D48 - bl sub_801B450 - movs r0, 0x13 - bl sub_8018D18 -_08019D48: - pop {r0} - bx r0 - thumb_func_end sub_8019D30 - - thumb_func_start sub_8019D4C -sub_8019D4C: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _08019D64 - cmp r0, 0x3 - bhi _08019D64 - bl sub_801B450 - movs r0, 0x1B - bl sub_8018D18 -_08019D64: - pop {r0} - bx r0 - thumb_func_end sub_8019D4C - - thumb_func_start sub_8019D68 -sub_8019D68: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08019D80 - ldr r0, _08019D88 - ldr r0, [r0] - ldr r0, [r0, 0xC] - bl sub_8018D18 -_08019D80: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08019D88: .4byte gUnknown_203B210 - thumb_func_end sub_8019D68 - - thumb_func_start sub_8019D8C -sub_8019D8C: - push {lr} - ldr r0, _08019DA0 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - bne _08019DA4 - bl sub_8091A48 - b _08019DA8 - .align 2, 0 -_08019DA0: .4byte gUnknown_203B210 -_08019DA4: - bl sub_8091814 -_08019DA8: - pop {r1} - bx r1 - thumb_func_end sub_8019D8C - - thumb_func_start sub_8019DAC -sub_8019DAC: - push {r4,r5,lr} - ldr r0, _08019DFC - ldr r1, [r0] - movs r0, 0 - str r0, [r1, 0x14] - str r0, [r1, 0x18] - movs r5, 0 -_08019DBA: - ldr r0, _08019E00 - lsls r1, r5, 2 - ldr r0, [r0] - adds r4, r0, r1 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08019DEE - ldrb r0, [r4, 0x2] - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - beq _08019DEE - adds r0, r4, 0 - bl sub_8090CCC - ldr r1, _08019DFC - ldr r2, [r1] - ldr r1, [r2, 0x18] - adds r1, r0 - str r1, [r2, 0x18] - ldr r0, [r2, 0x14] - adds r0, 0x1 - str r0, [r2, 0x14] -_08019DEE: - adds r5, 0x1 - cmp r5, 0x13 - ble _08019DBA - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08019DFC: .4byte gUnknown_203B210 -_08019E00: .4byte gUnknown_203B460 - thumb_func_end sub_8019DAC - - thumb_func_start sub_8019E04 -sub_8019E04: - push {lr} - adds r2, r0, 0 - ldr r0, _08019E20 - ldr r1, [r0] - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _08019E2A - cmp r2, 0x1 - bne _08019E24 - adds r0, r1, 0 - adds r0, 0xE0 - strb r2, [r0] - b _08019E3A - .align 2, 0 -_08019E20: .4byte gUnknown_203B210 -_08019E24: - adds r1, 0xE0 - movs r0, 0 - b _08019E38 -_08019E2A: - cmp r2, 0x1 - bne _08019E34 - adds r1, 0xE0 - movs r0, 0x7 - b _08019E38 -_08019E34: - adds r1, 0xE0 - movs r0, 0x6 -_08019E38: - strb r0, [r1] -_08019E3A: - pop {r0} - bx r0 - thumb_func_end sub_8019E04 - - thumb_func_start sub_8019E40 -sub_8019E40: - push {r4-r6,lr} - adds r6, r0, 0 - bl sub_8091814 - cmp r0, 0 - beq _08019ED4 - ldr r5, _08019EC8 - movs r0, 0xA0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - str r6, [r0, 0x34] - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 3 - adds r1, 0x3C - adds r1, r0, r1 - str r1, [r0, 0x38] - adds r0, 0x3C - bl sub_8006518 - ldr r1, [r5] - ldr r2, [r1, 0x34] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x3C - ldr r0, _08019ECC - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r5] - ldr r1, [r0, 0x38] - adds r0, 0x9C - str r0, [r1, 0x14] - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - bl sub_8091814 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0xA - adds r3, r6, 0 - bl sub_8013818 - ldr r0, [r5] - ldr r1, _08019ED0 - ldrh r1, [r1] - strh r1, [r0, 0x18] - bl sub_8013984 - bl sub_801A064 - bl sub_801A0D8 - movs r0, 0x1 - b _08019ED6 - .align 2, 0 -_08019EC8: .4byte gUnknown_203B214 -_08019ECC: .4byte gUnknown_80DB8CC -_08019ED0: .4byte gUnknown_203B218 -_08019ED4: - movs r0, 0 -_08019ED6: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8019E40 - - thumb_func_start sub_8019EDC -sub_8019EDC: - push {lr} - sub sp, 0x4 - lsls r0, 24 - cmp r0, 0 - bne _08019EF8 - ldr r0, _08019EF4 - ldr r0, [r0] - bl sub_8013660 - movs r0, 0 - b _08019FAA - .align 2, 0 -_08019EF4: .4byte gUnknown_203B214 -_08019EF8: - ldr r0, _08019F10 - ldr r0, [r0] - bl GetKeyPress - cmp r0, 0x2 - beq _08019F1A - cmp r0, 0x2 - bgt _08019F14 - cmp r0, 0x1 - beq _08019F24 - b _08019F88 - .align 2, 0 -_08019F10: .4byte gUnknown_203B214 -_08019F14: - cmp r0, 0x4 - beq _08019F7E - b _08019F88 -_08019F1A: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _08019FAA -_08019F24: - bl sub_8019FB0 - lsls r0, 24 - lsrs r0, 24 - bl sub_809185C - ldrb r2, [r0] - lsls r2, 16 - ldr r3, _08019F68 - ldr r1, [sp] - ands r1, r3 - orrs r1, r2 - str r1, [sp] - ldrb r0, [r0, 0x1] - lsls r0, 8 - ldr r2, _08019F6C - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - bl sub_8090C7C - ldr r1, _08019F70 - ldr r1, [r1] - movs r2, 0x98 - lsls r2, 2 - adds r1, r2 - ldr r1, [r1] - cmp r0, r1 - ble _08019F74 - movs r0, 0x2 - bl sub_80119D4 - b _08019F7A - .align 2, 0 -_08019F68: .4byte 0xff00ffff -_08019F6C: .4byte 0xffff00ff -_08019F70: .4byte gUnknown_203B460 -_08019F74: - movs r0, 0 - bl sub_80119D4 -_08019F7A: - movs r0, 0x3 - b _08019FAA -_08019F7E: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _08019FAA -_08019F88: - ldr r0, _08019F9C - ldr r0, [r0] - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _08019FA0 - movs r0, 0 - b _08019FAA - .align 2, 0 -_08019F9C: .4byte gUnknown_203B214 -_08019FA0: - bl sub_801A064 - bl sub_801A0D8 - movs r0, 0x1 -_08019FAA: - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8019EDC - - thumb_func_start sub_8019FB0 -sub_8019FB0: - ldr r0, _08019FC8 - ldr r1, [r0] - movs r0, 0x1E - ldrsh r2, [r1, r0] - movs r3, 0x1C - ldrsh r0, [r1, r3] - muls r0, r2 - ldrb r1, [r1, 0x18] - adds r0, r1 - lsls r0, 24 - lsrs r0, 24 - bx lr - .align 2, 0 -_08019FC8: .4byte gUnknown_203B214 - thumb_func_end sub_8019FB0 - - thumb_func_start sub_8019FCC -sub_8019FCC: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0801A00C - ldr r0, [r5] - adds r0, 0x3C - movs r1, 0 - movs r2, 0 - bl sub_800641C - bl sub_8091814 - adds r1, r0, 0 - ldr r0, [r5] - strh r1, [r0, 0x22] - bl sub_8013984 - bl sub_801A064 - bl sub_801A0D8 - cmp r4, 0 - beq _0801A006 - ldr r0, [r5] - bl AddMenuCursorSprite -_0801A006: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801A00C: .4byte gUnknown_203B214 - thumb_func_end sub_8019FCC - - thumb_func_start sub_801A010 -sub_801A010: - push {r4,r5,lr} - ldr r4, _0801A058 - ldr r2, [r4] - cmp r2, 0 - beq _0801A050 - ldr r1, _0801A05C - ldrh r0, [r2, 0x18] - strh r0, [r1] - ldr r0, [r2, 0x34] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x3C - ldr r0, _0801A060 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801A050: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801A058: .4byte gUnknown_203B214 -_0801A05C: .4byte gUnknown_203B218 -_0801A060: .4byte gUnknown_80DB8B4 - thumb_func_end sub_801A010 - - thumb_func_start sub_801A064 -sub_801A064: - push {r4,lr} - ldr r4, _0801A0D4 - ldr r0, [r4] - ldrh r1, [r0, 0x20] - adds r0, 0x9C - movs r2, 0 - strb r1, [r0] - ldr r0, [r4] - ldrh r1, [r0, 0x1E] - adds r0, 0x9D - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9E - movs r1, 0xA - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9F - strb r2, [r0] - ldr r0, [r4] - movs r1, 0x1A - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x34] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x4A - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x34] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x4C - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801A0D4: .4byte gUnknown_203B214 - thumb_func_end sub_801A064 - - thumb_func_start sub_801A0D8 -sub_801A0D8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xB4 - ldr r4, _0801A1A4 - ldr r0, [r4] - ldr r0, [r0, 0x34] - bl sub_8008C54 - ldr r0, [r4] - ldr r0, [r0, 0x34] - bl sub_80073B8 - ldr r1, [r4] - movs r2, 0x1E - ldrsh r0, [r1, r2] - lsls r0, 3 - adds r0, 0xA - ldr r2, _0801A1A8 - ldr r3, [r1, 0x34] - movs r1, 0 - str r1, [sp] - bl xxx_call_draw_string - movs r6, 0 - ldr r0, [r4] - movs r1, 0x1A - ldrsh r0, [r0, r1] - cmp r6, r0 - bge _0801A1EC - adds r7, r4, 0 - add r4, sp, 0xB0 - mov r9, r6 - add r5, sp, 0x54 - add r2, sp, 0x60 - mov r8, r2 -_0801A122: - ldr r0, [r7] - movs r2, 0x1E - ldrsh r1, [r0, r2] - movs r2, 0x1C - ldrsh r0, [r0, r2] - muls r0, r1 - adds r0, r6 - lsls r0, 24 - lsrs r0, 24 - bl sub_809185C - ldrb r2, [r0] - lsls r2, 16 - ldr r3, _0801A1AC - ldr r1, [r4] - ands r1, r3 - orrs r1, r2 - str r1, [r4] - ldrb r2, [r0, 0x1] - lsls r2, 8 - ldr r0, _0801A1B0 - ands r1, r0 - orrs r1, r2 - ldr r0, _0801A1B4 - ands r1, r0 - movs r0, 0x3 - orrs r1, r0 - str r1, [r4] - movs r1, 0x1 - str r1, [sp, 0x54] - mov r0, r9 - strb r0, [r5, 0x4] - movs r0, 0x58 - strh r0, [r5, 0x6] - strb r1, [r5, 0x8] - add r0, sp, 0x4 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_8090E14 - adds r0, r4, 0 - bl sub_8090C7C - ldr r1, _0801A1B8 - ldr r1, [r1] - movs r2, 0x98 - lsls r2, 2 - adds r1, r2 - ldr r1, [r1] - cmp r0, r1 - bgt _0801A1BC - ldr r0, [r7] - adds r1, r6, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, [r7] - ldr r3, [r0, 0x34] - mov r0, r9 - str r0, [sp] - movs r0, 0x8 - add r2, sp, 0x4 - bl xxx_call_draw_string - b _0801A1E0 - .align 2, 0 -_0801A1A4: .4byte gUnknown_203B214 -_0801A1A8: .4byte gUnknown_80DB8E4 -_0801A1AC: .4byte 0xff00ffff -_0801A1B0: .4byte 0xffff00ff -_0801A1B4: .4byte 0xffffff00 -_0801A1B8: .4byte gUnknown_203B460 -_0801A1BC: - mov r0, r8 - ldr r1, _0801A204 - add r2, sp, 0x4 - bl sub_800D158 - ldr r0, [r7] - adds r1, r6, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, [r7] - ldr r3, [r0, 0x34] - mov r2, r9 - str r2, [sp] - movs r0, 0x8 - mov r2, r8 - bl xxx_call_draw_string -_0801A1E0: - adds r6, 0x1 - ldr r0, [r7] - movs r1, 0x1A - ldrsh r0, [r0, r1] - cmp r6, r0 - blt _0801A122 -_0801A1EC: - ldr r0, _0801A208 - ldr r0, [r0] - ldr r0, [r0, 0x34] - bl sub_80073E0 - add sp, 0xB4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801A204: .4byte gUnknown_80DB8EC -_0801A208: .4byte gUnknown_203B214 - thumb_func_end sub_801A0D8 - - thumb_func_start sub_801A20C -sub_801A20C: - push {r4-r6,lr} - adds r6, r0, 0 - bl sub_8091A48 - cmp r0, 0 - beq _0801A2A0 - ldr r5, _0801A294 - movs r0, 0xA0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - str r6, [r0, 0x34] - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 3 - adds r1, 0x3C - adds r1, r0, r1 - str r1, [r0, 0x38] - adds r0, 0x3C - bl sub_8006518 - ldr r1, [r5] - ldr r2, [r1, 0x34] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x3C - ldr r0, _0801A298 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r5] - ldr r1, [r0, 0x38] - adds r0, 0x9C - str r0, [r1, 0x14] - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - bl sub_8091A48 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0xA - adds r3, r6, 0 - bl sub_8013818 - ldr r0, [r5] - ldr r1, _0801A29C - ldrh r1, [r1] - strh r1, [r0, 0x18] - bl sub_8013984 - bl sub_801A430 - bl sub_801A4A4 - movs r0, 0x1 - b _0801A2A2 - .align 2, 0 -_0801A294: .4byte gUnknown_203B21C -_0801A298: .4byte gUnknown_80DB914 -_0801A29C: .4byte gUnknown_203B220 -_0801A2A0: - movs r0, 0 -_0801A2A2: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_801A20C - - thumb_func_start sub_801A2A8 -sub_801A2A8: - push {lr} - sub sp, 0x4 - lsls r0, 24 - cmp r0, 0 - bne _0801A2C4 - ldr r0, _0801A2C0 - ldr r0, [r0] - bl sub_8013660 - movs r0, 0 - b _0801A376 - .align 2, 0 -_0801A2C0: .4byte gUnknown_203B21C -_0801A2C4: - ldr r0, _0801A2DC - ldr r0, [r0] - bl GetKeyPress - cmp r0, 0x2 - beq _0801A2E6 - cmp r0, 0x2 - bgt _0801A2E0 - cmp r0, 0x1 - beq _0801A2F0 - b _0801A354 - .align 2, 0 -_0801A2DC: .4byte gUnknown_203B21C -_0801A2E0: - cmp r0, 0x4 - beq _0801A34A - b _0801A354 -_0801A2E6: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0801A376 -_0801A2F0: - bl sub_801A37C - lsls r0, 24 - lsrs r0, 24 - bl sub_8091A90 - ldrb r2, [r0] - lsls r2, 16 - ldr r3, _0801A334 - ldr r1, [sp] - ands r1, r3 - orrs r1, r2 - str r1, [sp] - ldrb r0, [r0, 0x1] - lsls r0, 8 - ldr r2, _0801A338 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - bl sub_8090C7C - ldr r1, _0801A33C - ldr r1, [r1] - movs r2, 0x98 - lsls r2, 2 - adds r1, r2 - ldr r1, [r1] - cmp r0, r1 - ble _0801A340 - movs r0, 0x2 - bl sub_80119D4 - b _0801A346 - .align 2, 0 -_0801A334: .4byte 0xff00ffff -_0801A338: .4byte 0xffff00ff -_0801A33C: .4byte gUnknown_203B460 -_0801A340: - movs r0, 0 - bl sub_80119D4 -_0801A346: - movs r0, 0x3 - b _0801A376 -_0801A34A: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _0801A376 -_0801A354: - ldr r0, _0801A368 - ldr r0, [r0] - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0801A36C - movs r0, 0 - b _0801A376 - .align 2, 0 -_0801A368: .4byte gUnknown_203B21C -_0801A36C: - bl sub_801A430 - bl sub_801A4A4 - movs r0, 0x1 -_0801A376: - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_801A2A8 - - thumb_func_start sub_801A37C -sub_801A37C: - ldr r0, _0801A394 - ldr r1, [r0] - movs r0, 0x1E - ldrsh r2, [r1, r0] - movs r3, 0x1C - ldrsh r0, [r1, r3] - muls r0, r2 - ldrb r1, [r1, 0x18] - adds r0, r1 - lsls r0, 24 - lsrs r0, 24 - bx lr - .align 2, 0 -_0801A394: .4byte gUnknown_203B21C - thumb_func_end sub_801A37C - - thumb_func_start sub_801A398 -sub_801A398: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0801A3D8 - ldr r0, [r5] - adds r0, 0x3C - movs r1, 0 - movs r2, 0 - bl sub_800641C - bl sub_8091A48 - adds r1, r0, 0 - ldr r0, [r5] - strh r1, [r0, 0x22] - bl sub_8013984 - bl sub_801A430 - bl sub_801A4A4 - cmp r4, 0 - beq _0801A3D2 - ldr r0, [r5] - bl AddMenuCursorSprite -_0801A3D2: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801A3D8: .4byte gUnknown_203B21C - thumb_func_end sub_801A398 - - thumb_func_start sub_801A3DC -sub_801A3DC: - push {r4,r5,lr} - ldr r4, _0801A424 - ldr r2, [r4] - cmp r2, 0 - beq _0801A41C - ldr r1, _0801A428 - ldrh r0, [r2, 0x18] - strh r0, [r1] - ldr r0, [r2, 0x34] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x3C - ldr r0, _0801A42C - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801A41C: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801A424: .4byte gUnknown_203B21C -_0801A428: .4byte gUnknown_203B220 -_0801A42C: .4byte gUnknown_80DB8FC - thumb_func_end sub_801A3DC - - thumb_func_start sub_801A430 -sub_801A430: - push {r4,lr} - ldr r4, _0801A4A0 - ldr r0, [r4] - ldrh r1, [r0, 0x20] - adds r0, 0x9C - movs r2, 0 - strb r1, [r0] - ldr r0, [r4] - ldrh r1, [r0, 0x1E] - adds r0, 0x9D - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9E - movs r1, 0xA - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9F - strb r2, [r0] - ldr r0, [r4] - movs r1, 0x1A - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x34] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x4A - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x34] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x4C - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801A4A0: .4byte gUnknown_203B21C - thumb_func_end sub_801A430 - - thumb_func_start sub_801A4A4 -sub_801A4A4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xB4 - ldr r4, _0801A570 - ldr r0, [r4] - ldr r0, [r0, 0x34] - bl sub_8008C54 - ldr r0, [r4] - ldr r0, [r0, 0x34] - bl sub_80073B8 - ldr r1, [r4] - movs r2, 0x1E - ldrsh r0, [r1, r2] - lsls r0, 3 - adds r0, 0xA - ldr r2, _0801A574 - ldr r3, [r1, 0x34] - movs r1, 0 - str r1, [sp] - bl xxx_call_draw_string - movs r6, 0 - ldr r0, [r4] - movs r1, 0x1A - ldrsh r0, [r0, r1] - cmp r6, r0 - bge _0801A5B8 - adds r7, r4, 0 - add r4, sp, 0xB0 - mov r9, r6 - add r5, sp, 0x54 - add r2, sp, 0x60 - mov r8, r2 -_0801A4EE: - ldr r0, [r7] - movs r2, 0x1E - ldrsh r1, [r0, r2] - movs r2, 0x1C - ldrsh r0, [r0, r2] - muls r0, r1 - adds r0, r6 - lsls r0, 24 - lsrs r0, 24 - bl sub_8091A90 - ldrb r2, [r0] - lsls r2, 16 - ldr r3, _0801A578 - ldr r1, [r4] - ands r1, r3 - orrs r1, r2 - str r1, [r4] - ldrb r2, [r0, 0x1] - lsls r2, 8 - ldr r0, _0801A57C - ands r1, r0 - orrs r1, r2 - ldr r0, _0801A580 - ands r1, r0 - movs r0, 0x3 - orrs r1, r0 - str r1, [r4] - movs r1, 0x1 - str r1, [sp, 0x54] - mov r0, r9 - strb r0, [r5, 0x4] - movs r0, 0x58 - strh r0, [r5, 0x6] - strb r1, [r5, 0x8] - add r0, sp, 0x4 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_8090E14 - adds r0, r4, 0 - bl sub_8090C7C - ldr r1, _0801A584 - ldr r1, [r1] - movs r2, 0x98 - lsls r2, 2 - adds r1, r2 - ldr r1, [r1] - cmp r0, r1 - bgt _0801A588 - ldr r0, [r7] - adds r1, r6, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, [r7] - ldr r3, [r0, 0x34] - mov r0, r9 - str r0, [sp] - movs r0, 0x8 - add r2, sp, 0x4 - bl xxx_call_draw_string - b _0801A5AC - .align 2, 0 -_0801A570: .4byte gUnknown_203B21C -_0801A574: .4byte gUnknown_80DB92C -_0801A578: .4byte 0xff00ffff -_0801A57C: .4byte 0xffff00ff -_0801A580: .4byte 0xffffff00 -_0801A584: .4byte gUnknown_203B460 -_0801A588: - mov r0, r8 - ldr r1, _0801A5D0 - add r2, sp, 0x4 - bl sub_800D158 - ldr r0, [r7] - adds r1, r6, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, [r7] - ldr r3, [r0, 0x34] - mov r2, r9 - str r2, [sp] - movs r0, 0x8 - mov r2, r8 - bl xxx_call_draw_string -_0801A5AC: - adds r6, 0x1 - ldr r0, [r7] - movs r1, 0x1A - ldrsh r0, [r0, r1] - cmp r6, r0 - blt _0801A4EE -_0801A5B8: - ldr r0, _0801A5D4 - ldr r0, [r0] - ldr r0, [r0, 0x34] - bl sub_80073E0 - add sp, 0xB4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801A5D0: .4byte gUnknown_80DB934 -_0801A5D4: .4byte gUnknown_203B21C - thumb_func_end sub_801A4A4 - - thumb_func_start sub_801A5D8 -sub_801A5D8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - adds r6, r1, 0 - adds r7, r2, 0 - mov r8, r3 - bl sub_8090A34 - cmp r0, 0 - bne _0801A5F2 - movs r0, 0 - b _0801A6CC -_0801A5F2: - ldr r5, _0801A6D8 - ldr r0, [r5] - cmp r0, 0 - bne _0801A604 - movs r0, 0xF4 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] -_0801A604: - ldr r0, [r5] - str r4, [r0] - bl sub_80910B4 - bl sub_801AE84 - ldr r0, [r5] - adds r1, r0, 0 - adds r1, 0x88 - str r6, [r1] - adds r2, r0, 0 - adds r2, 0x8C - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 3 - adds r1, 0x90 - adds r1, r0, r1 - str r1, [r2] - adds r0, 0x90 - bl sub_8006518 - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x88 - ldr r2, [r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x90 - ldr r0, _0801A6DC - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r2, [r5] - adds r0, r2, 0 - adds r0, 0x8C - ldr r1, [r0] - adds r0, 0x64 - str r0, [r1, 0x14] - cmp r7, 0 - beq _0801A66E - subs r0, 0x68 - ldr r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r1, r2, 0 - adds r1, 0x98 - adds r1, r0 - ldr r0, [r7] - str r0, [r1] -_0801A66E: - ldr r0, [r5] - adds r0, 0x8C - ldr r0, [r0] - mov r1, r8 - bl sub_8012D08 - movs r0, 0x1 - bl sub_8099690 - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x90 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - adds r4, 0x54 - bl sub_8090A34 - adds r1, r0, 0 - adds r0, r4, 0 - mov r2, r8 - adds r3, r6, 0 - bl sub_8013818 - ldr r2, [r5] - ldr r0, _0801A6E0 - ldrh r1, [r0] - adds r0, r2, 0 - adds r0, 0x6C - strh r1, [r0] - ldr r0, _0801A6E4 - ldrh r0, [r0] - adds r1, r2, 0 - adds r1, 0x72 - strh r0, [r1] - adds r0, r2, 0 - adds r0, 0x54 - bl sub_8013984 - bl sub_801A998 - bl sub_801A9E0 - movs r0, 0x1 -_0801A6CC: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0801A6D8: .4byte gUnknown_203B224 -_0801A6DC: .4byte gUnknown_80DB95C -_0801A6E0: .4byte gUnknown_203B228 -_0801A6E4: .4byte gUnknown_203B22A - thumb_func_end sub_801A5D8 - - thumb_func_start sub_801A6E8 -sub_801A6E8: - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - cmp r0, 0 - bne _0801A704 - ldr r0, _0801A700 - ldr r0, [r0] - adds r0, 0x54 - bl sub_8013660 - movs r0, 0 - b _0801A8A2 - .align 2, 0 -_0801A700: .4byte gUnknown_203B224 -_0801A704: - ldr r0, _0801A720 - ldr r0, [r0] - adds r0, 0x54 - bl GetKeyPress - subs r0, 0x1 - cmp r0, 0x5 - bls _0801A716 - b _0801A87C -_0801A716: - lsls r0, 2 - ldr r1, _0801A724 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801A720: .4byte gUnknown_203B224 -_0801A724: .4byte _0801A728 - .align 2, 0 -_0801A728: - .4byte _0801A74A - .4byte _0801A740 - .4byte _0801A864 - .4byte _0801A806 - .4byte _0801A810 - .4byte _0801A810 -_0801A740: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0801A8A2 -_0801A74A: - ldr r1, _0801A760 - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0x5 - bhi _0801A802 - lsls r0, 2 - ldr r1, _0801A764 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801A760: .4byte gUnknown_203B224 -_0801A764: .4byte _0801A768 - .align 2, 0 -_0801A768: - .4byte _0801A780 - .4byte _0801A780 - .4byte _0801A780 - .4byte _0801A794 - .4byte _0801A7AC - .4byte _0801A7FC -_0801A780: - ldr r4, [r4] - bl sub_801A8AC - lsls r0, 2 - adds r4, 0x4 - adds r4, r0 - ldr r0, [r4] - cmp r0, 0 - bne _0801A7F4 - b _0801A7E2 -_0801A794: - bl sub_801AEA8 - cmp r0, 0 - bne _0801A7E2 - bl sub_801A8AC - bl sub_801ADA0 - lsls r0, 24 - cmp r0, 0 - bne _0801A7E2 - b _0801A7F4 -_0801A7AC: - ldr r5, _0801A7EC - ldr r4, [r5] - bl sub_801A8AC - lsls r0, 2 - adds r4, r0 - ldr r0, [r4] - str r0, [sp] - mov r0, sp - ldrb r0, [r0, 0x2] - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - beq _0801A7F4 - mov r0, sp - bl sub_8090CCC - ldr r1, [r5] - movs r2, 0x98 - lsls r2, 2 - adds r1, r2 - ldr r1, [r1] - adds r0, r1 - ldr r1, _0801A7F0 - cmp r0, r1 - bgt _0801A7F4 -_0801A7E2: - movs r0, 0 - bl sub_80119D4 - b _0801A802 - .align 2, 0 -_0801A7EC: .4byte gUnknown_203B460 -_0801A7F0: .4byte 0x0001869f -_0801A7F4: - movs r0, 0x2 - bl sub_80119D4 - b _0801A802 -_0801A7FC: - movs r0, 0 - bl sub_80119D4 -_0801A802: - movs r0, 0x3 - b _0801A8A2 -_0801A806: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _0801A8A2 -_0801A810: - ldr r4, _0801A858 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0x3 - bne _0801A87C - bl sub_801A8AC - adds r1, r0, 0 - ldr r0, [r4] - lsls r5, r1, 2 - adds r0, 0x4 - adds r0, r5 - ldr r0, [r0] - cmp r0, 0 - bne _0801A83A - adds r0, r1, 0 - bl sub_801ADA0 - lsls r0, 24 - cmp r0, 0 - beq _0801A85C -_0801A83A: - movs r0, 0x6 - bl sub_80119D4 - ldr r0, [r4] - adds r2, r0, 0x4 - adds r2, r5 - ldr r1, [r2] - movs r3, 0x1 - eors r1, r3 - str r1, [r2] - adds r0, 0x54 - movs r1, 0 - bl sub_80138B8 - b _0801A89C - .align 2, 0 -_0801A858: .4byte gUnknown_203B224 -_0801A85C: - movs r0, 0x2 - bl sub_80119D4 - b _0801A87C -_0801A864: - ldr r0, _0801A894 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x2 - beq _0801A87C - movs r0, 0x5 - bl sub_80119D4 - bl sub_801AEF8 - bl sub_801A9E0 -_0801A87C: - ldr r0, _0801A894 - ldr r0, [r0] - adds r0, 0x54 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0801A898 - movs r0, 0 - b _0801A8A2 - .align 2, 0 -_0801A894: .4byte gUnknown_203B224 -_0801A898: - bl sub_801A998 -_0801A89C: - bl sub_801A9E0 - movs r0, 0x1 -_0801A8A2: - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_801A6E8 - - thumb_func_start sub_801A8AC -sub_801A8AC: - ldr r0, _0801A8CC - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x72 - movs r3, 0 - ldrsh r1, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r1 - adds r1, r2, 0 - adds r1, 0x6C - movs r2, 0 - ldrsh r1, [r1, r2] - adds r0, r1 - bx lr - .align 2, 0 -_0801A8CC: .4byte gUnknown_203B224 - thumb_func_end sub_801A8AC - - thumb_func_start sub_801A8D0 -sub_801A8D0: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - bl sub_8099690 - bl sub_8004914 - ldr r5, _0801A924 - ldr r0, [r5] - adds r0, 0x90 - movs r1, 0 - movs r2, 0 - bl sub_800641C - bl sub_80910B4 - bl sub_8090A34 - adds r1, r0, 0 - ldr r0, [r5] - adds r2, r0, 0 - adds r2, 0x76 - strh r1, [r2] - adds r0, 0x54 - bl sub_8013984 - bl sub_801A998 - bl sub_801A9E0 - cmp r4, 0 - beq _0801A91C - ldr r0, [r5] - adds r0, 0x54 - bl AddMenuCursorSprite -_0801A91C: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801A924: .4byte gUnknown_203B224 - thumb_func_end sub_801A8D0 - - thumb_func_start sub_801A928 -sub_801A928: - push {r4,r5,lr} - ldr r4, _0801A988 - ldr r2, [r4] - cmp r2, 0 - beq _0801A980 - ldr r1, _0801A98C - adds r0, r2, 0 - adds r0, 0x6C - ldrh r0, [r0] - strh r0, [r1] - ldr r1, _0801A990 - adds r0, r2, 0 - adds r0, 0x72 - ldrh r0, [r0] - strh r0, [r1] - adds r0, r2, 0 - adds r0, 0x88 - ldr r0, [r0] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x90 - ldr r0, _0801A994 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - movs r0, 0 - bl sub_8099690 - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x90 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801A980: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801A988: .4byte gUnknown_203B224 -_0801A98C: .4byte gUnknown_203B228 -_0801A990: .4byte gUnknown_203B22A -_0801A994: .4byte gUnknown_80DB944 - thumb_func_end sub_801A928 - - thumb_func_start sub_801A998 -sub_801A998: - push {r4,lr} - ldr r4, _0801A9DC - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0x74 - ldrh r1, [r1] - adds r0, 0xF0 - movs r2, 0 - strb r1, [r0] - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0x72 - ldrh r1, [r1] - adds r0, 0xF1 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xF2 - movs r1, 0xB - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xF3 - strb r2, [r0] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x90 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801A9DC: .4byte gUnknown_203B224 - thumb_func_end sub_801A998 - - thumb_func_start sub_801A9E0 -sub_801A9E0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xCC - ldr r4, _0801AA2C - ldr r0, [r4] - adds r0, 0x88 - ldr r0, [r0] - bl sub_8008C54 - ldr r0, [r4] - adds r0, 0x88 - ldr r0, [r0] - bl sub_80073B8 - ldr r4, [r4] - adds r1, r4, 0 - adds r1, 0x72 - movs r2, 0 - ldrsh r0, [r1, r2] - lsls r0, 3 - adds r5, r0, 0 - adds r5, 0xA - movs r3, 0 - ldrsh r1, [r1, r3] - cmp r1, 0 - bne _0801AA34 - ldr r2, _0801AA30 - adds r0, r4, 0 - adds r0, 0x88 - ldr r3, [r0] - str r1, [sp] - adds r0, r5, 0 - movs r1, 0 - bl xxx_call_draw_string - b _0801AA48 - .align 2, 0 -_0801AA2C: .4byte gUnknown_203B224 -_0801AA30: .4byte gUnknown_80DB974 -_0801AA34: - ldr r2, _0801AA58 - adds r0, r4, 0 - adds r0, 0x88 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - adds r0, r5, 0 - movs r1, 0 - bl xxx_call_draw_string -_0801AA48: - movs r7, 0 - ldr r1, _0801AA5C - ldr r0, [r1] - adds r0, 0x6E - movs r4, 0 - ldrsh r0, [r0, r4] - b _0801AD0A - .align 2, 0 -_0801AA58: .4byte gUnknown_80DB984 -_0801AA5C: .4byte gUnknown_203B224 -_0801AA60: - ldr r2, [r1] - adds r0, r2, 0 - adds r0, 0x72 - movs r3, 0 - ldrsh r1, [r0, r3] - subs r0, 0x2 - movs r4, 0 - ldrsh r0, [r0, r4] - muls r0, r1 - adds r0, r7 - mov r8, r0 - ldr r0, _0801AA9C - ldr r0, [r0] - mov r3, r8 - lsls r1, r3, 2 - adds r0, r1 - ldr r0, [r0] - add r1, sp, 0xC8 - str r0, [r1] - ldr r0, [r2] - adds r4, r1, 0 - cmp r0, 0x5 - bls _0801AA90 - b _0801ACC4 -_0801AA90: - lsls r0, 2 - ldr r1, _0801AAA0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801AA9C: .4byte gUnknown_203B460 -_0801AAA0: .4byte _0801AAA4 - .align 2, 0 -_0801AAA4: - .4byte _0801AABC - .4byte _0801AAE4 - .4byte _0801AAE4 - .4byte _0801AB18 - .4byte _0801AB90 - .4byte _0801AC50 -_0801AABC: - add r0, sp, 0x4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8090E14 - ldr r4, _0801AAE0 - ldr r0, [r4] - adds r0, 0x54 - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, [r4] - adds r0, 0x88 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - b _0801AC8C - .align 2, 0 -_0801AAE0: .4byte gUnknown_203B224 -_0801AAE4: - add r2, sp, 0x54 - movs r5, 0 - str r5, [sp, 0x54] - strb r5, [r2, 0x4] - movs r0, 0x1 - strb r0, [r2, 0x8] - strb r0, [r4] - add r1, sp, 0xC8 - add r0, sp, 0x4 - bl sub_8090E14 - ldr r4, _0801AB14 - ldr r0, [r4] - adds r0, 0x54 - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, [r4] - adds r0, 0x88 - ldr r3, [r0] - str r5, [sp] - b _0801AC8C - .align 2, 0 -_0801AB14: .4byte gUnknown_203B224 -_0801AB18: - add r2, sp, 0x60 - movs r6, 0 - str r6, [sp, 0x60] - strb r6, [r2, 0x4] - movs r0, 0x1 - strb r0, [r2, 0x8] - strb r0, [r4] - add r1, sp, 0xC8 - add r0, sp, 0x4 - bl sub_8090E14 - ldr r5, _0801AB60 - ldr r0, [r5] - mov r4, r8 - lsls r1, r4, 2 - adds r0, 0x4 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - bne _0801AB4E - mov r0, r8 - bl sub_801ADA0 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0801AB64 -_0801AB4E: - ldr r0, [r5] - adds r0, 0x54 - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, [r5] - b _0801AC86 - .align 2, 0 -_0801AB60: .4byte gUnknown_203B224 -_0801AB64: - ldr r0, _0801AB88 - add r1, sp, 0x4 - movs r2, 0x50 - bl strncpy - ldr r0, [r5] - adds r0, 0x54 - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r2, _0801AB8C - ldr r0, [r5] - adds r0, 0x88 - ldr r3, [r0] - str r4, [sp] - b _0801AC3C - .align 2, 0 -_0801AB88: .4byte gUnknown_202DE58 -_0801AB8C: .4byte gUnknown_80DB994 -_0801AB90: - ldrb r0, [r4, 0x2] - bl sub_80914E4 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _0801AC10 - add r2, sp, 0x6C - movs r1, 0x3 - str r1, [sp, 0x6C] - movs r6, 0 - strb r6, [r2, 0x4] - movs r0, 0x58 - strh r0, [r2, 0x6] - movs r0, 0x1 - strb r0, [r2, 0x8] - strb r1, [r4] - add r0, sp, 0x4 - adds r1, r4, 0 - bl sub_8090E14 - adds r0, r4, 0 - bl sub_8090CCC - ldr r1, _0801AC00 - ldr r1, [r1] - movs r2, 0x98 - lsls r2, 2 - adds r1, r2 - ldr r1, [r1] - adds r0, r1 - ldr r1, _0801AC04 - cmp r0, r1 - ble _0801AC76 - add r5, sp, 0x78 - ldr r1, _0801AC08 - adds r0, r5, 0 - add r2, sp, 0x4 - bl sub_800D158 - ldr r4, _0801AC0C - ldr r0, [r4] - adds r0, 0x54 - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, [r4] - adds r0, 0x88 - ldr r3, [r0] - str r6, [sp] - movs r0, 0x8 - adds r2, r5, 0 - bl xxx_call_draw_string - b _0801ACC4 - .align 2, 0 -_0801AC00: .4byte gUnknown_203B460 -_0801AC04: .4byte 0x0001869f -_0801AC08: .4byte gUnknown_80DB9A0 -_0801AC0C: .4byte gUnknown_203B224 -_0801AC10: - add r0, sp, 0x4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8090E14 - ldr r0, _0801AC44 - add r1, sp, 0x4 - movs r2, 0x50 - bl strncpy - ldr r4, _0801AC48 - ldr r0, [r4] - adds r0, 0x54 - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r2, _0801AC4C - ldr r0, [r4] - adds r0, 0x88 - ldr r3, [r0] - str r5, [sp] -_0801AC3C: - movs r0, 0x8 - bl sub_8014FF0 - b _0801ACC4 - .align 2, 0 -_0801AC44: .4byte gUnknown_202DE58 -_0801AC48: .4byte gUnknown_203B224 -_0801AC4C: .4byte gUnknown_80DB994 -_0801AC50: - add r2, sp, 0x78 - movs r6, 0 - str r6, [sp, 0x78] - strb r6, [r2, 0x4] - movs r0, 0x1 - strb r0, [r2, 0x8] - strb r0, [r4] - add r4, sp, 0xC8 - add r0, sp, 0x4 - adds r1, r4, 0 - bl sub_8090E14 - ldrb r0, [r4, 0x2] - bl sub_8091764 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _0801AC9C -_0801AC76: - ldr r4, _0801AC98 - ldr r0, [r4] - adds r0, 0x54 - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, [r4] -_0801AC86: - adds r0, 0x88 - ldr r3, [r0] - str r6, [sp] -_0801AC8C: - movs r0, 0x8 - add r2, sp, 0x4 - bl xxx_call_draw_string - b _0801ACC4 - .align 2, 0 -_0801AC98: .4byte gUnknown_203B224 -_0801AC9C: - ldr r0, _0801AD28 - add r1, sp, 0x4 - movs r2, 0x50 - bl strncpy - ldr r4, _0801AD2C - ldr r0, [r4] - adds r0, 0x54 - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r2, _0801AD30 - ldr r0, [r4] - adds r0, 0x88 - ldr r3, [r0] - str r5, [sp] - movs r0, 0x8 - bl sub_8014FF0 -_0801ACC4: - mov r0, r8 - bl sub_801AED0 - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0801ACFE - ldr r4, _0801AD2C - ldr r0, [r4] - adds r0, 0x54 - adds r1, r7, 0 - bl sub_8013800 - adds r2, r0, 0 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x88 - ldr r0, [r0] - adds r1, 0x8C - ldr r1, [r1] - movs r4, 0xC - ldrsh r3, [r1, r4] - subs r3, 0x2 - lsls r3, 3 - movs r1, 0xA - str r1, [sp] - movs r1, 0x8 - bl sub_8007B7C -_0801ACFE: - adds r7, 0x1 - ldr r1, _0801AD2C - ldr r0, [r1] - adds r0, 0x6E - movs r2, 0 - ldrsh r0, [r0, r2] -_0801AD0A: - adds r2, r1, 0 - cmp r7, r0 - bge _0801AD12 - b _0801AA60 -_0801AD12: - ldr r0, [r2] - adds r0, 0x88 - ldr r0, [r0] - bl sub_80073E0 - add sp, 0xCC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801AD28: .4byte gUnknown_202DE58 -_0801AD2C: .4byte gUnknown_203B224 -_0801AD30: .4byte gUnknown_80DB994 - thumb_func_end sub_801A9E0 - - thumb_func_start sub_801AD34 -sub_801AD34: - push {r4-r6,lr} - sub sp, 0x8 - adds r4, r0, 0 - bl sub_8008C54 - adds r0, r4, 0 - bl sub_80073B8 - ldr r2, _0801AD98 - movs r6, 0 - str r6, [sp] - movs r0, 0x6 - movs r1, 0 - adds r3, r4, 0 - bl xxx_call_draw_string - bl sub_8090A34 - adds r2, r0, 0 - movs r5, 0x7 - str r5, [sp] - str r4, [sp, 0x4] - movs r0, 0x12 - movs r1, 0xD - movs r3, 0x2 - bl sub_8012BC4 - ldr r2, _0801AD9C - str r6, [sp] - movs r0, 0x16 - movs r1, 0xD - adds r3, r4, 0 - bl xxx_call_draw_string - str r5, [sp] - str r4, [sp, 0x4] - movs r0, 0x2B - movs r1, 0xD - movs r2, 0x14 - movs r3, 0x2 - bl sub_8012BC4 - adds r0, r4, 0 - bl sub_80073E0 - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801AD98: .4byte gUnknown_80DB9A8 -_0801AD9C: .4byte gUnknown_80DB9B0 - thumb_func_end sub_801AD34 - - thumb_func_start sub_801ADA0 -sub_801ADA0: - push {r4-r6,lr} - ldr r5, _0801ADEC - ldr r1, [r5] - lsls r0, 2 - adds r1, r0 - ldr r6, [r1] - lsls r4, r6, 8 - lsrs r0, r4, 24 - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - beq _0801AE12 - lsrs r0, r4, 24 - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _0801ADF4 - lsrs r0, r4, 24 - bl sub_801AE24 - ldr r2, [r5] - lsrs r1, r4, 24 - lsls r1, 1 - adds r2, 0x50 - adds r2, r1 - lsls r0, 16 - lsrs r0, 16 - ldrh r2, [r2] - adds r0, r2 - lsrs r1, r6, 8 - lsls r1, 24 - lsrs r1, 24 - adds r0, r1 - ldr r1, _0801ADF0 - b _0801AE0E - .align 2, 0 -_0801ADEC: .4byte gUnknown_203B460 -_0801ADF0: .4byte 0x000003e7 -_0801ADF4: - lsrs r0, r4, 24 - bl sub_801AE24 - ldr r2, [r5] - lsrs r1, r4, 24 - lsls r1, 1 - adds r2, 0x50 - adds r2, r1 - lsls r0, 16 - lsrs r0, 16 - ldrh r2, [r2] - adds r0, r2 - ldr r1, _0801AE18 -_0801AE0E: - cmp r0, r1 - ble _0801AE1C -_0801AE12: - movs r0, 0 - b _0801AE1E - .align 2, 0 -_0801AE18: .4byte 0x000003e6 -_0801AE1C: - movs r0, 0x1 -_0801AE1E: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_801ADA0 - - thumb_func_start sub_801AE24 -sub_801AE24: - push {r4-r7,lr} - adds r7, r0, 0 - movs r5, 0 - movs r6, 0 - b _0801AE74 -_0801AE2E: - ldr r0, _0801AE64 - ldr r0, [r0] - lsls r1, r6, 2 - adds r0, 0x4 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - beq _0801AE72 - ldr r0, _0801AE68 - ldr r0, [r0] - adds r0, r1 - ldr r4, [r0] - lsls r1, r4, 8 - lsrs r0, r1, 24 - cmp r0, r7 - bne _0801AE72 - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _0801AE6C - lsrs r0, r4, 8 - lsls r0, 24 - lsrs r0, 24 - adds r0, r5, r0 - b _0801AE6E - .align 2, 0 -_0801AE64: .4byte gUnknown_203B224 -_0801AE68: .4byte gUnknown_203B460 -_0801AE6C: - adds r0, r5, 0x1 -_0801AE6E: - lsls r0, 16 - lsrs r5, r0, 16 -_0801AE72: - adds r6, 0x1 -_0801AE74: - bl sub_8090A34 - cmp r6, r0 - blt _0801AE2E - adds r0, r5, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_801AE24 - - thumb_func_start sub_801AE84 -sub_801AE84: - push {r4,lr} - movs r2, 0 - ldr r4, _0801AEA4 - movs r3, 0 -_0801AE8C: - ldr r0, [r4] - lsls r1, r2, 2 - adds r0, 0x4 - adds r0, r1 - str r3, [r0] - adds r2, 0x1 - cmp r2, 0x13 - ble _0801AE8C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801AEA4: .4byte gUnknown_203B224 - thumb_func_end sub_801AE84 - - thumb_func_start sub_801AEA8 -sub_801AEA8: - push {lr} - movs r3, 0 - ldr r0, _0801AECC - ldr r0, [r0] - adds r1, r0, 0x4 - movs r2, 0x13 -_0801AEB4: - ldr r0, [r1] - cmp r0, 0 - beq _0801AEBC - adds r3, 0x1 -_0801AEBC: - adds r1, 0x4 - subs r2, 0x1 - cmp r2, 0 - bge _0801AEB4 - adds r0, r3, 0 - pop {r1} - bx r1 - .align 2, 0 -_0801AECC: .4byte gUnknown_203B224 - thumb_func_end sub_801AEA8 - - thumb_func_start sub_801AED0 -sub_801AED0: - ldr r1, _0801AEE0 - ldr r1, [r1] - lsls r0, 2 - adds r1, 0x4 - adds r1, r0 - ldr r0, [r1] - bx lr - .align 2, 0 -_0801AEE0: .4byte gUnknown_203B224 - thumb_func_end sub_801AED0 - - thumb_func_start sub_801AEE4 -sub_801AEE4: - ldr r2, _0801AEF4 - ldr r2, [r2] - lsls r0, 2 - adds r2, 0x4 - adds r2, r0 - str r1, [r2] - bx lr - .align 2, 0 -_0801AEF4: .4byte gUnknown_203B224 - thumb_func_end sub_801AEE4 - - thumb_func_start sub_801AEF8 -sub_801AEF8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - movs r0, 0 - mov r9, r0 - b _0801AF78 -_0801AF08: - movs r1, 0x1 - add r1, r9 - mov r8, r1 - mov r7, r8 - b _0801AF6E -_0801AF12: - ldr r2, _0801AF90 - ldr r0, [r2] - mov r1, r9 - lsls r6, r1, 2 - adds r0, r6 - ldrb r0, [r0, 0x2] - str r2, [sp] - bl sub_8090D44 - adds r4, r0, 0 - ldr r2, [sp] - ldr r0, [r2] - lsls r5, r7, 2 - adds r0, r5 - ldrb r0, [r0, 0x2] - bl sub_8090D44 - ldr r2, [sp] - cmp r4, r0 - bgt _0801AF4C - cmp r4, r0 - bne _0801AF6C - ldr r0, [r2] - adds r1, r0, r6 - adds r0, r5 - ldrb r1, [r1, 0x1] - ldrb r0, [r0, 0x1] - cmp r1, r0 - bcs _0801AF6C -_0801AF4C: - ldr r0, [r2] - adds r2, r0, r6 - ldr r3, [r2] - adds r0, r5 - ldr r1, [r0] - str r1, [r2] - str r3, [r0] - ldr r0, _0801AF94 - ldr r0, [r0] - adds r0, 0x4 - adds r2, r0, r6 - ldr r3, [r2] - adds r0, r5 - ldr r1, [r0] - str r1, [r2] - str r3, [r0] -_0801AF6C: - adds r7, 0x1 -_0801AF6E: - bl sub_8090A34 - cmp r7, r0 - blt _0801AF12 - mov r9, r8 -_0801AF78: - bl sub_8090A34 - subs r0, 0x1 - cmp r9, r0 - blt _0801AF08 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801AF90: .4byte gUnknown_203B460 -_0801AF94: .4byte gUnknown_203B224 - thumb_func_end sub_801AEF8 - - thumb_func_start sub_801AF98 -sub_801AF98: - ldr r0, _0801AFA0 - ldr r0, [r0] - bx lr - .align 2, 0 -_0801AFA0: .4byte gUnknown_203B224 - thumb_func_end sub_801AF98 - - thumb_func_start sub_801AFA4 -sub_801AFA4: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _0801AFEC - movs r0, 0xA4 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - str r4, [r0, 0x4] - ldr r1, _0801AFF0 - ldr r1, [r1] - lsls r4, 2 - adds r1, r4 - ldrb r1, [r1, 0x2] - strb r1, [r0, 0x8] - ldr r0, [r5] - ldrb r0, [r0, 0x8] - bl sub_80913CC - ldr r1, [r5] - strh r0, [r1, 0xA] - ldr r0, _0801AFF4 - ldrh r1, [r1, 0xA] - bl sub_8092C84 - movs r0, 0 - bl sub_8099690 - bl sub_801B2F4 - cmp r0, 0 - bne _0801AFF8 - movs r0, 0x3 - bl sub_801B064 - b _0801B004 - .align 2, 0 -_0801AFEC: .4byte gUnknown_203B22C -_0801AFF0: .4byte gUnknown_203B460 -_0801AFF4: .4byte gUnknown_202E1C8 -_0801AFF8: - ldr r1, [r5] - movs r0, 0x4 - str r0, [r1, 0x60] - movs r0, 0 - bl sub_801B064 -_0801B004: - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_801AFA4 - - thumb_func_start sub_801B00C -sub_801B00C: - push {lr} - ldr r0, _0801B024 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x1 - beq _0801B036 - cmp r0, 0x1 - bgt _0801B028 - cmp r0, 0 - beq _0801B030 - b _0801B03C - .align 2, 0 -_0801B024: .4byte gUnknown_203B22C -_0801B028: - cmp r0, 0x4 - bne _0801B03C - movs r0, 0x3 - b _0801B042 -_0801B030: - bl sub_801B200 - b _0801B040 -_0801B036: - bl sub_801B2AC - b _0801B040 -_0801B03C: - bl sub_801B2D8 -_0801B040: - movs r0, 0 -_0801B042: - pop {r1} - bx r1 - thumb_func_end sub_801B00C - - thumb_func_start sub_801B048 -sub_801B048: - push {r4,lr} - ldr r4, _0801B060 - ldr r0, [r4] - cmp r0, 0 - beq _0801B05A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801B05A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801B060: .4byte gUnknown_203B22C - thumb_func_end sub_801B048 - - thumb_func_start sub_801B064 -sub_801B064: - push {lr} - ldr r1, _0801B078 - ldr r1, [r1] - str r0, [r1] - bl nullsub_37 - bl sub_801B080 - pop {r0} - bx r0 - .align 2, 0 -_0801B078: .4byte gUnknown_203B22C - thumb_func_end sub_801B064 - - thumb_func_start nullsub_37 -nullsub_37: - bx lr - thumb_func_end nullsub_37 - - thumb_func_start sub_801B080 -sub_801B080: - push {r4,lr} - sub sp, 0x14 - ldr r1, _0801B09C - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0x4 - bhi _0801B168 - lsls r0, 2 - ldr r1, _0801B0A0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801B09C: .4byte gUnknown_203B22C -_0801B0A0: .4byte _0801B0A4 - .align 2, 0 -_0801B0A4: - .4byte _0801B0B8 - .4byte _0801B0E8 - .4byte _0801B0FC - .4byte _0801B15C - .4byte _0801B168 -_0801B0B8: - bl sub_801B178 - ldr r0, _0801B0E0 - ldr r1, _0801B0E4 - ldr r3, [r1] - ldr r2, [r3, 0x60] - adds r3, 0x64 - movs r4, 0 - str r4, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] - movs r1, 0x20 - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _0801B168 - .align 2, 0 -_0801B0E0: .4byte gUnknown_80DB9BC -_0801B0E4: .4byte gUnknown_203B22C -_0801B0E8: - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x58 - movs r3, 0 - ldrsh r1, [r0, r3] - adds r2, 0xC - movs r0, 0x2 - bl sub_801E80C - b _0801B168 -_0801B0FC: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xC - ldr r1, [r1, 0x5C] - adds r1, 0x2C - bl sub_8094060 - ldr r0, [r4] - ldrb r0, [r0, 0x8] - bl sub_80915A0 - lsls r0, 24 - cmp r0, 0 - bne _0801B138 - ldr r3, _0801B150 - ldr r1, [r3] - ldr r2, [r4] - ldr r0, [r2, 0x4] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r2, 0x8] - subs r0, 0x7D - strb r0, [r1, 0x1] - ldr r1, [r3] - ldr r0, [r4] - ldr r0, [r0, 0x4] - lsls r0, 2 - adds r1, r0 - movs r0, 0x7C - strb r0, [r1, 0x2] -_0801B138: - movs r0, 0x9C - lsls r0, 1 - bl sub_8011988 - ldr r0, _0801B154 - ldr r3, _0801B158 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _0801B168 - .align 2, 0 -_0801B150: .4byte gUnknown_203B460 -_0801B154: .4byte gUnknown_80DB9E4 -_0801B158: .4byte 0x00000121 -_0801B15C: - ldr r0, _0801B170 - ldr r3, _0801B174 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_0801B168: - add sp, 0x14 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801B170: .4byte gUnknown_80DBA0C -_0801B174: .4byte 0x00000121 - thumb_func_end sub_801B080 - - thumb_func_start sub_801B178 -sub_801B178: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r5, 0 - ldr r1, _0801B1F4 - ldr r0, [r1] - ldr r0, [r0, 0x4C] - cmp r5, r0 - bge _0801B1D2 - ldr r0, _0801B1F8 - mov r8, r0 - adds r7, r1, 0 - movs r6, 0 -_0801B192: - ldr r4, _0801B1FC - adds r4, r6, r4 - ldr r0, [r7] - lsls r1, r5, 1 - adds r0, 0x50 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0x58 - muls r0, r1 - mov r2, r8 - ldr r1, [r2] - adds r1, r0 - adds r0, r4, 0 - bl sub_808DA34 - ldr r2, [r7] - lsls r1, r5, 3 - adds r0, r2, 0 - adds r0, 0x64 - adds r0, r1 - str r4, [r0] - adds r0, r2, 0 - adds r0, 0x68 - adds r0, r1 - adds r1, r5, 0x4 - str r1, [r0] - adds r6, 0x50 - adds r5, 0x1 - ldr r0, [r2, 0x4C] - cmp r5, r0 - blt _0801B192 -_0801B1D2: - ldr r0, _0801B1F4 - ldr r2, [r0] - lsls r3, r5, 3 - adds r0, r2, 0 - adds r0, 0x64 - adds r0, r3 - movs r1, 0 - str r1, [r0] - adds r2, 0x68 - adds r2, r3 - movs r0, 0x1 - str r0, [r2] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801B1F4: .4byte gUnknown_203B22C -_0801B1F8: .4byte gUnknown_203B45C -_0801B1FC: .4byte gUnknown_202DF98 - thumb_func_end sub_801B178 - - thumb_func_start sub_801B200 -sub_801B200: - push {r4-r6,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0801B2A4 - ldr r5, _0801B228 - ldr r3, [r5] - ldr r0, [sp] - str r0, [r3, 0x60] - ldr r1, [sp] - cmp r1, 0 - beq _0801B2A4 - cmp r1, 0x1 - bne _0801B22C - movs r0, 0x4 - bl sub_801B064 - b _0801B2A4 - .align 2, 0 -_0801B228: .4byte gUnknown_203B22C -_0801B22C: - subs r1, 0x4 - lsls r1, 1 - adds r0, r3, 0 - adds r0, 0x50 - adds r0, r1 - ldrh r0, [r0] - adds r1, r3, 0 - adds r1, 0x58 - strh r0, [r1] - ldr r2, _0801B26C - movs r0, 0 - ldrsh r1, [r1, r0] - movs r0, 0x58 - muls r0, r1 - ldr r1, [r2] - adds r1, r0 - str r1, [r3, 0x5C] - ldr r0, _0801B270 - bl sub_808DA34 - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0xC - ldr r1, [r1, 0x5C] - adds r1, 0x2C - bl sub_809401C - movs r4, 0 - adds r6, r5, 0 - movs r5, 0xC - b _0801B278 - .align 2, 0 -_0801B26C: .4byte gUnknown_203B45C -_0801B270: .4byte gUnknown_202E218 -_0801B274: - adds r5, 0x8 - adds r4, 0x1 -_0801B278: - cmp r4, 0x7 - bgt _0801B292 - ldr r3, [r6] - adds r2, r3, r5 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0801B274 - ldrh r1, [r3, 0xA] - adds r0, r2, 0 - bl sub_8092AD4 -_0801B292: - cmp r4, 0x3 - ble _0801B29E - movs r0, 0x1 - bl sub_801B064 - b _0801B2A4 -_0801B29E: - movs r0, 0x2 - bl sub_801B064 -_0801B2A4: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_801B200 - - thumb_func_start sub_801B2AC -sub_801B2AC: - push {lr} - bl sub_801E8C0 - cmp r0, 0x2 - beq _0801B2CA - cmp r0, 0x2 - bcc _0801B2D4 - cmp r0, 0x3 - bne _0801B2D4 - bl sub_801E93C - movs r0, 0x2 - bl sub_801B064 - b _0801B2D4 -_0801B2CA: - bl sub_801E93C - movs r0, 0 - bl sub_801B064 -_0801B2D4: - pop {r0} - bx r0 - thumb_func_end sub_801B2AC - - thumb_func_start sub_801B2D8 -sub_801B2D8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0801B2EC - movs r0, 0x4 - bl sub_801B064 -_0801B2EC: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_801B2D8 - - thumb_func_start sub_801B2F4 -sub_801B2F4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - mov r0, sp - bl sub_808D580 - adds r6, r0, 0 - ldr r2, _0801B36C - ldr r1, [r2] - movs r0, 0 - str r0, [r1, 0x4C] - movs r5, 0 - cmp r5, r6 - bge _0801B35A - ldr r0, _0801B370 - mov r8, r0 - adds r7, r2, 0 - mov r4, sp -_0801B31A: - ldr r1, [r4] - movs r0, 0x58 - muls r0, r1 - mov r2, r8 - ldr r1, [r2] - adds r1, r0 - ldr r0, [r7] - ldrh r0, [r0, 0xA] - movs r2, 0x8 - ldrsh r1, [r1, r2] - bl sub_808E190 - lsls r0, 24 - cmp r0, 0 - beq _0801B352 - ldr r2, [r7] - ldr r0, [r2, 0x4C] - lsls r0, 1 - adds r1, r2, 0 - adds r1, 0x50 - adds r1, r0 - ldr r0, [r4] - strh r0, [r1] - ldr r0, [r2, 0x4C] - cmp r0, 0x3 - bgt _0801B35A - adds r0, 0x1 - str r0, [r2, 0x4C] -_0801B352: - adds r4, 0x4 - adds r5, 0x1 - cmp r5, r6 - blt _0801B31A -_0801B35A: - ldr r0, _0801B36C - ldr r0, [r0] - ldr r0, [r0, 0x4C] - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0801B36C: .4byte gUnknown_203B22C -_0801B370: .4byte gUnknown_203B45C - thumb_func_end sub_801B2F4 - - thumb_func_start sub_801B374 -sub_801B374: - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0801B3A8 - ldr r4, [r1] - bl sub_80913CC - lsls r0, 16 - lsrs r6, r0, 16 - movs r5, 0 -_0801B388: - ldrh r0, [r4] - lsrs r0, 1 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0801B3AC - movs r0, 0x8 - ldrsh r1, [r4, r0] - adds r0, r6, 0 - bl sub_808E190 - lsls r0, 24 - cmp r0, 0 - beq _0801B3AC - movs r0, 0 - b _0801B3BA - .align 2, 0 -_0801B3A8: .4byte gUnknown_203B45C -_0801B3AC: - adds r5, 0x1 - adds r4, 0x58 - movs r0, 0xCE - lsls r0, 1 - cmp r5, r0 - ble _0801B388 - movs r0, 0x1 -_0801B3BA: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_801B374 - - thumb_func_start sub_801B3C0 -sub_801B3C0: - push {r4,r5,lr} - adds r5, r0, 0 - movs r0, 0x1 - bl sub_8004D8C - ldr r4, _0801B40C - movs r0, 0x94 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - ldr r1, [r5] - str r1, [r0, 0x4] - adds r0, 0x88 - bl sub_801317C - ldr r0, [r4] - movs r1, 0 - str r1, [r0, 0x24] - adds r0, 0x28 - bl sub_80140B4 - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x28 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0 - bl sub_801B46C - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0801B40C: .4byte gUnknown_203B230 - thumb_func_end sub_801B3C0 - - thumb_func_start sub_801B410 -sub_801B410: - push {lr} - ldr r0, _0801B428 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x1 - beq _0801B43C - cmp r0, 0x1 - bgt _0801B42C - cmp r0, 0 - beq _0801B436 - b _0801B446 - .align 2, 0 -_0801B428: .4byte gUnknown_203B230 -_0801B42C: - cmp r0, 0x2 - beq _0801B446 - cmp r0, 0x3 - beq _0801B442 - b _0801B446 -_0801B436: - bl sub_801B51C - b _0801B44A -_0801B43C: - bl sub_801B590 - b _0801B44A -_0801B442: - movs r0, 0x3 - b _0801B44C -_0801B446: - movs r0, 0x2 - b _0801B44C -_0801B44A: - movs r0, 0 -_0801B44C: - pop {r1} - bx r1 - thumb_func_end sub_801B410 - - thumb_func_start sub_801B450 -sub_801B450: - push {r4,lr} - ldr r4, _0801B468 - ldr r0, [r4] - cmp r0, 0 - beq _0801B462 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801B462: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801B468: .4byte gUnknown_203B230 - thumb_func_end sub_801B450 - - thumb_func_start sub_801B46C -sub_801B46C: - push {lr} - ldr r1, _0801B47C - ldr r1, [r1] - str r0, [r1] - bl sub_801B480 - pop {r0} - bx r0 - .align 2, 0 -_0801B47C: .4byte gUnknown_203B230 - thumb_func_end sub_801B46C - - thumb_func_start sub_801B480 -sub_801B480: - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, _0801B4B0 - ldr r0, [r5] - ldr r4, [r0] - cmp r4, 0x1 - beq _0801B4B4 - cmp r4, 0x1 - bgt _0801B50C - cmp r4, 0 - bne _0801B50C - ldr r0, [r0, 0x24] - bl sub_8008C54 - ldr r2, [r5] - adds r0, r2, 0x4 - ldr r1, [r2, 0x24] - adds r2, 0x10 - bl sub_80913E0 - ldr r1, [r5] - str r0, [r1, 0xC] - str r4, [r1, 0x20] - b _0801B50C - .align 2, 0 -_0801B4B0: .4byte gUnknown_203B230 -_0801B4B4: - ldr r0, [r0, 0x24] - bl sub_8008C54 - ldr r0, [r5] - ldr r0, [r0, 0x24] - bl sub_80073B8 - ldr r0, [r5] - ldr r1, [r0, 0x8] - lsls r1, 2 - adds r0, 0x10 - adds r0, r1 - ldr r1, [r0] - ldr r0, _0801B514 - ldr r1, [r1] - bl strcpy - ldr r2, _0801B518 - ldr r0, [r5] - ldr r3, [r0, 0x24] - movs r4, 0 - str r4, [sp] - movs r0, 0x10 - movs r1, 0 - bl sub_8014FF0 - ldr r3, [r5] - ldr r1, [r3, 0x8] - lsls r1, 2 - adds r0, r3, 0 - adds r0, 0x10 - adds r0, r1 - ldr r0, [r0] - ldr r2, [r0, 0x4] - ldr r3, [r3, 0x24] - str r4, [sp] - movs r0, 0x4 - movs r1, 0x10 - bl sub_8014FF0 - ldr r0, [r5] - ldr r0, [r0, 0x24] - bl sub_80073E0 -_0801B50C: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801B514: .4byte gUnknown_202DF98 -_0801B518: .4byte gUnknown_80DBA4C - thumb_func_end sub_801B480 - - thumb_func_start sub_801B51C -sub_801B51C: - push {r4,lr} - ldr r0, _0801B558 - ldr r2, [r0] - ldr r1, [r2, 0xC] - adds r4, r0, 0 - cmp r1, 0 - beq _0801B540 - ldr r0, [r2, 0x20] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0801B538 - bl sub_8013F84 -_0801B538: - ldr r1, [r4] - ldr r0, [r1, 0x20] - adds r0, 0x1 - str r0, [r1, 0x20] -_0801B540: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x88 - ldr r1, [r1, 0x24] - bl sub_8012A64 - cmp r0, 0x1 - beq _0801B55C - cmp r0, 0x2 - beq _0801B57E - b _0801B58A - .align 2, 0 -_0801B558: .4byte gUnknown_203B230 -_0801B55C: - movs r0, 0 - bl sub_80119D4 - ldr r1, [r4] - ldr r0, [r1, 0xC] - cmp r0, 0 - beq _0801B576 - movs r0, 0 - str r0, [r1, 0x8] - movs r0, 0x1 - bl sub_801B46C - b _0801B58A -_0801B576: - movs r0, 0x3 - bl sub_801B46C - b _0801B58A -_0801B57E: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - bl sub_801B46C -_0801B58A: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801B51C - - thumb_func_start sub_801B590 -sub_801B590: - push {r4,lr} - ldr r0, _0801B5D0 - ldr r3, [r0] - ldr r1, [r3, 0xC] - subs r1, 0x1 - ldr r2, [r3, 0x8] - adds r4, r0, 0 - cmp r2, r1 - bge _0801B5B8 - ldr r0, [r3, 0x20] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0801B5B0 - bl sub_8013F84 -_0801B5B0: - ldr r1, [r4] - ldr r0, [r1, 0x20] - adds r0, 0x1 - str r0, [r1, 0x20] -_0801B5B8: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x88 - ldr r1, [r1, 0x24] - bl sub_8012A64 - cmp r0, 0x1 - beq _0801B5D4 - cmp r0, 0x2 - beq _0801B5F8 - b _0801B604 - .align 2, 0 -_0801B5D0: .4byte gUnknown_203B230 -_0801B5D4: - movs r0, 0 - bl sub_80119D4 - ldr r0, [r4] - ldr r1, [r0, 0x8] - adds r1, 0x1 - str r1, [r0, 0x8] - ldr r0, [r0, 0xC] - cmp r1, r0 - bge _0801B5F0 - movs r0, 0x1 - bl sub_801B46C - b _0801B604 -_0801B5F0: - movs r0, 0 - bl sub_801B46C - b _0801B604 -_0801B5F8: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - bl sub_801B46C -_0801B604: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801B590 - - thumb_func_start sub_801B60C -sub_801B60C: - push {r4-r7,lr} - adds r5, r0, 0 - adds r4, r1, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r2, 24 - lsrs r7, r2, 24 - ldr r6, _0801B650 - movs r0, 0xAA - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r6] - adds r2, r0, 0 - adds r2, 0xC8 - movs r1, 0 - str r1, [r2] - str r5, [r0] - strb r4, [r0, 0x12] - ldr r0, [r6] - ldrb r0, [r0, 0x12] - bl sub_8090A60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _0801B654 - ldr r0, [r6] - strb r7, [r0, 0x11] - ldr r0, [r6] - strb r7, [r0, 0xC] - b _0801B65E - .align 2, 0 -_0801B650: .4byte gUnknown_203B234 -_0801B654: - ldr r0, [r6] - strb r1, [r0, 0x11] - ldr r1, [r6] - movs r0, 0x1 - strb r0, [r1, 0xC] -_0801B65E: - ldr r5, _0801B6A0 - ldr r0, [r5] - movs r1, 0 - movs r2, 0x1 - strb r2, [r0, 0x10] - ldr r0, [r5] - str r1, [r0, 0x14] - strb r1, [r0, 0x18] - ldr r0, [r5] - strb r2, [r0, 0x1C] - ldr r4, _0801B6A4 - bl sub_808D33C - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0x6 - bl sub_808D9AC - ldr r0, _0801B6A8 - ldr r2, [r5] - adds r1, r2, 0 - adds r1, 0x10 - adds r2, 0x14 - bl sub_8090E14 - movs r0, 0 - bl sub_801B748 - movs r0, 0x1 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0801B6A0: .4byte gUnknown_203B234 -_0801B6A4: .4byte gUnknown_202DF98 -_0801B6A8: .4byte gUnknown_202DE58 - thumb_func_end sub_801B60C - - thumb_func_start sub_801B6AC -sub_801B6AC: - push {lr} - ldr r0, _0801B6C4 - ldr r0, [r0] - ldr r0, [r0, 0x4] - subs r0, 0x6 - cmp r0, 0xA - bhi _0801B720 - lsls r0, 2 - ldr r1, _0801B6C8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801B6C4: .4byte gUnknown_203B234 -_0801B6C8: .4byte _0801B6CC - .align 2, 0 -_0801B6CC: - .4byte _0801B6FC - .4byte _0801B702 - .4byte _0801B708 - .4byte _0801B708 - .4byte _0801B70E - .4byte _0801B714 - .4byte _0801B71A - .4byte _0801B720 - .4byte _0801B720 - .4byte _0801B720 - .4byte _0801B6F8 -_0801B6F8: - movs r0, 0x3 - b _0801B726 -_0801B6FC: - bl sub_801BC64 - b _0801B724 -_0801B702: - bl sub_801BC94 - b _0801B724 -_0801B708: - bl sub_801BCCC - b _0801B724 -_0801B70E: - bl sub_801BD80 - b _0801B724 -_0801B714: - bl sub_801BEAC - b _0801B724 -_0801B71A: - bl sub_801BE30 - b _0801B724 -_0801B720: - bl sub_801BEC8 -_0801B724: - movs r0, 0 -_0801B726: - pop {r1} - bx r1 - thumb_func_end sub_801B6AC - - thumb_func_start sub_801B72C -sub_801B72C: - push {r4,lr} - ldr r4, _0801B744 - ldr r0, [r4] - cmp r0, 0 - beq _0801B73E - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801B73E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801B744: .4byte gUnknown_203B234 - thumb_func_end sub_801B72C - - thumb_func_start sub_801B748 -sub_801B748: - push {lr} - ldr r1, _0801B75C - ldr r1, [r1] - str r0, [r1, 0x4] - bl sub_801B760 - bl sub_801B874 - pop {r0} - bx r0 - .align 2, 0 -_0801B75C: .4byte gUnknown_203B234 - thumb_func_end sub_801B748 - - thumb_func_start sub_801B760 -sub_801B760: - push {r4-r7,lr} - ldr r0, _0801B77C - ldr r1, [r0] - ldr r1, [r1, 0x4] - subs r1, 0x1 - adds r4, r0, 0 - cmp r1, 0xE - bls _0801B772 - b _0801B86A -_0801B772: - lsls r0, r1, 2 - ldr r1, _0801B780 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801B77C: .4byte gUnknown_203B234 -_0801B780: .4byte _0801B784 - .align 2, 0 -_0801B784: - .4byte _0801B7C0 - .4byte _0801B86A - .4byte _0801B86A - .4byte _0801B86A - .4byte _0801B86A - .4byte _0801B7C0 - .4byte _0801B7C0 - .4byte _0801B7C0 - .4byte _0801B7C0 - .4byte _0801B800 - .4byte _0801B7C0 - .4byte _0801B840 - .4byte _0801B7C0 - .4byte _0801B7C0 - .4byte _0801B7C0 -_0801B7C0: - ldr r4, _0801B7F8 - ldr r0, [r4] - adds r0, 0xF4 - bl sub_8006518 - mov r12, r4 - ldr r4, _0801B7FC - movs r3, 0 - movs r2, 0x3 -_0801B7D2: - mov r0, r12 - ldr r1, [r0] - adds r1, r3 - adds r1, 0xF4 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0801B7D2 - bl sub_8004914 - ldr r0, _0801B7F8 - ldr r0, [r0] - b _0801B82E - .align 2, 0 -_0801B7F8: .4byte gUnknown_203B234 -_0801B7FC: .4byte gUnknown_80DBA58 -_0801B800: - ldr r0, [r4] - adds r0, 0xF4 - bl sub_8006518 - bl sub_801BB5C - ldr r2, [r4] - movs r0, 0x92 - lsls r0, 1 - adds r2, r0 - ldr r1, _0801B83C - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0xCC - bl sub_8012CAC - bl sub_8004914 - ldr r0, [r4] -_0801B82E: - adds r0, 0xF4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - b _0801B86A - .align 2, 0 -_0801B83C: .4byte gUnknown_80DBA70 -_0801B840: - ldr r0, [r4] - adds r0, 0xF4 - bl sub_8006518 - ldr r1, [r4] - movs r6, 0x86 - lsls r6, 1 - adds r1, r6 - ldr r0, _0801B870 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0xF4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C -_0801B86A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801B870: .4byte gUnknown_80DBA88 - thumb_func_end sub_801B760 - - thumb_func_start sub_801B874 -sub_801B874: - push {r4,lr} - sub sp, 0x14 - ldr r1, _0801B890 - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r4, r1, 0 - cmp r0, 0x10 - bls _0801B886 - b _0801BB0E -_0801B886: - lsls r0, 2 - ldr r1, _0801B894 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801B890: .4byte gUnknown_203B234 -_0801B894: .4byte _0801B898 - .align 2, 0 -_0801B898: - .4byte _0801B8DC - .4byte _0801B9BC - .4byte _0801B9D8 - .4byte _0801B9E0 - .4byte _0801B9F0 - .4byte _0801B9F8 - .4byte _0801BA08 - .4byte _0801BA34 - .4byte _0801BA60 - .4byte _0801BA6E - .4byte _0801BA76 - .4byte _0801BA94 - .4byte _0801BA9E - .4byte _0801BAD0 - .4byte _0801BAE0 - .4byte _0801BAFC - .4byte _0801BB0E -_0801B8DC: - ldr r1, [r4] - ldrb r0, [r1, 0x12] - cmp r0, 0xEA - bne _0801B8FE - movs r0, 0x10 - str r0, [r1, 0x8] - movs r0, 0 - movs r1, 0x47 - movs r2, 0x1 - bl sub_8001784 - cmp r0, 0 - bne _0801B914 - movs r0, 0 - movs r1, 0x47 - movs r2, 0x1 - b _0801B92A -_0801B8FE: - cmp r0, 0xEB - bne _0801B938 - movs r0, 0x10 - str r0, [r1, 0x8] - movs r0, 0 - movs r1, 0x47 - movs r2, 0 - bl sub_8001784 - cmp r0, 0 - beq _0801B924 -_0801B914: - movs r0, 0xFA - lsls r0, 2 - bl sub_80913A0 - movs r0, 0x4 - bl sub_801B748 - b _0801BB0E -_0801B924: - movs r0, 0 - movs r1, 0x47 - movs r2, 0 -_0801B92A: - movs r3, 0x1 - bl sub_800199C - movs r0, 0x3 - bl sub_801B748 - b _0801BB0E -_0801B938: - bl sub_8090A34 - cmp r0, 0x13 - ble _0801B986 - ldr r0, [r4] - ldrb r0, [r0, 0x12] - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - beq _0801B968 - ldr r0, _0801B970 - ldr r1, [r0] - ldr r2, [r4] - ldrb r0, [r2, 0x12] - lsls r0, 1 - adds r1, 0x50 - adds r3, r1, r0 - ldrh r1, [r3] - ldrb r0, [r2, 0xC] - adds r1, r0 - ldr r0, _0801B974 - cmp r1, r0 - ble _0801B978 -_0801B968: - ldr r1, [r4] - movs r0, 0x6 - b _0801B99C - .align 2, 0 -_0801B970: .4byte gUnknown_203B460 -_0801B974: .4byte 0x000003e7 -_0801B978: - strh r1, [r3] - movs r0, 0xCB - bl sub_8011988 - ldr r1, [r4] - movs r0, 0x5 - b _0801B99C -_0801B986: - ldr r0, [r4] - adds r0, 0x10 - bl sub_8091290 - bl sub_80910B4 - movs r0, 0xCB - bl sub_8011988 - ldr r1, [r4] - movs r0, 0x10 -_0801B99C: - str r0, [r1, 0x8] - ldr r0, _0801B9B0 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x1 - bne _0801B9B4 - movs r0, 0x2 - bl sub_801B748 - b _0801BB0E - .align 2, 0 -_0801B9B0: .4byte gUnknown_203B234 -_0801B9B4: - movs r0, 0x1 - bl sub_801B748 - b _0801BB0E -_0801B9BC: - movs r0, 0 - bl sub_808D544 - cmp r0, 0x1 - bgt _0801B9D0 - ldr r0, _0801B9CC - b _0801BAE8 - .align 2, 0 -_0801B9CC: .4byte gUnknown_80DBAA0 -_0801B9D0: - ldr r0, _0801B9D4 - b _0801BAE8 - .align 2, 0 -_0801B9D4: .4byte gUnknown_80DBAD0 -_0801B9D8: - ldr r0, _0801B9DC - b _0801BAE8 - .align 2, 0 -_0801B9DC: .4byte gUnknown_80DBB08 -_0801B9E0: - movs r0, 0xD4 - bl sub_8011988 - ldr r0, _0801B9EC - b _0801BAE8 - .align 2, 0 -_0801B9EC: .4byte gUnknown_80DBB38 -_0801B9F0: - ldr r0, _0801B9F4 - b _0801BAE8 - .align 2, 0 -_0801B9F4: .4byte gUnknown_80DBB9C -_0801B9F8: - ldr r1, [r4] - movs r0, 0x10 - str r0, [r1, 0x8] - ldr r0, _0801BA04 - b _0801BAE8 - .align 2, 0 -_0801BA04: .4byte gUnknown_80DBC28 -_0801BA08: - bl sub_801BB20 - ldr r0, _0801BA2C - ldr r1, _0801BA30 - ldr r3, [r1] - adds r3, 0xCC - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - str r2, [sp, 0x10] - movs r1, 0 - movs r2, 0x4 - bl sub_8014248 - b _0801BB0E - .align 2, 0 -_0801BA2C: .4byte gUnknown_80DBC60 -_0801BA30: .4byte gUnknown_203B234 -_0801BA34: - bl sub_801BC24 - ldr r0, _0801BA58 - ldr r1, _0801BA5C - ldr r3, [r1] - adds r3, 0xCC - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - str r2, [sp, 0x10] - movs r1, 0 - movs r2, 0x3 - bl sub_8014248 - b _0801BB0E - .align 2, 0 -_0801BA58: .4byte gUnknown_80DBC98 -_0801BA5C: .4byte gUnknown_203B234 -_0801BA60: - movs r0, 0x1 - movs r1, 0x3 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - b _0801BB0E -_0801BA6E: - movs r0, 0x1 - bl sub_801A8D0 - b _0801BB0E -_0801BA76: - bl sub_801A9E0 - ldr r0, _0801BA90 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x28 - adds r1, r2, 0 - adds r1, 0xCC - adds r2, 0xC8 - ldr r2, [r2] - str r2, [sp] - movs r2, 0x2 - b _0801BAC0 - .align 2, 0 -_0801BA90: .4byte gUnknown_203B234 -_0801BA94: - ldr r0, [r4] - adds r0, 0x20 - bl sub_801B3C0 - b _0801BB0E -_0801BA9E: - bl sub_801A9E0 - ldr r4, _0801BACC - ldr r0, [r4] - adds r0, 0x28 - movs r1, 0 - bl sub_8012EA4 - bl sub_801BC24 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x78 - adds r1, 0xCC - movs r2, 0x3 - str r2, [sp] - movs r2, 0x1 -_0801BAC0: - str r2, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _0801BB0E - .align 2, 0 -_0801BACC: .4byte gUnknown_203B234 -_0801BAD0: - ldr r1, [r4] - movs r0, 0x10 - str r0, [r1, 0x8] - ldr r0, _0801BADC - b _0801BAE8 - .align 2, 0 -_0801BADC: .4byte gUnknown_80DBCC4 -_0801BAE0: - ldr r1, [r4] - movs r0, 0x10 - str r0, [r1, 0x8] - ldr r0, _0801BAF4 -_0801BAE8: - ldr r3, _0801BAF8 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _0801BB0E - .align 2, 0 -_0801BAF4: .4byte gUnknown_80DBCE8 -_0801BAF8: .4byte 0x00000101 -_0801BAFC: - ldr r1, [r4] - movs r0, 0x10 - str r0, [r1, 0x8] - ldr r0, _0801BB18 - ldr r3, _0801BB1C - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_0801BB0E: - add sp, 0x14 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801BB18: .4byte gUnknown_80DBD24 -_0801BB1C: .4byte 0x00000101 - thumb_func_end sub_801B874 - - thumb_func_start sub_801BB20 -sub_801BB20: - ldr r0, _0801BB50 - ldr r3, [r0] - movs r2, 0 - adds r1, r3, 0 - adds r1, 0xCC - ldr r0, _0801BB54 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x4 - str r0, [r1] - adds r1, 0x4 - ldr r0, _0801BB58 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x5 - str r0, [r1] - adds r0, r3, 0 - adds r0, 0xDC - str r2, [r0] - adds r1, 0x8 - movs r0, 0x1 - negs r0, r0 - str r0, [r1] - bx lr - .align 2, 0 -_0801BB50: .4byte gUnknown_203B234 -_0801BB54: .4byte gUnknown_80DBD58 -_0801BB58: .4byte gUnknown_80DBD6C - thumb_func_end sub_801BB20 - - thumb_func_start sub_801BB5C -sub_801BB5C: - push {r4-r7,lr} - ldr r4, _0801BBEC - ldr r2, [r4] - adds r1, r2, 0 - adds r1, 0xCC - ldr r0, _0801BBF0 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x6 - str r0, [r1] - ldr r0, [r2, 0x24] - bl sub_801ADA0 - lsls r0, 24 - cmp r0, 0 - bne _0801BB86 - ldr r0, [r4] - adds r0, 0xD0 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] -_0801BB86: - ldr r0, [r4] - mov r12, r0 - movs r3, 0x1 - movs r2, 0x8 - mov r1, r12 - adds r1, 0xD4 - ldr r0, _0801BBF4 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x7 - str r0, [r1] - adds r1, 0x4 - ldr r0, _0801BBF8 - ldr r0, [r0] - str r0, [r1] - mov r0, r12 - adds r0, 0xE0 - str r2, [r0] - movs r5, 0x3 - adds r1, 0x8 - movs r0, 0 - str r0, [r1] - mov r0, r12 - adds r0, 0xE8 - str r3, [r0] - movs r3, 0 - adds r6, r4, 0 - movs r7, 0x1 - negs r7, r7 - mov r4, r12 - adds r4, 0xC8 - subs r1, 0x14 -_0801BBC6: - ldr r2, [r1] - cmp r2, r7 - beq _0801BBD2 - ldr r0, [r4] - cmp r2, r0 - beq _0801BC1C -_0801BBD2: - adds r1, 0x8 - adds r3, 0x1 - cmp r3, r5 - blt _0801BBC6 - movs r3, 0 - cmp r3, r5 - bge _0801BC1C - ldr r2, [r6] - adds r0, r2, 0 - adds r0, 0xD0 - ldr r1, [r0] - b _0801BC0E - .align 2, 0 -_0801BBEC: .4byte gUnknown_203B234 -_0801BBF0: .4byte gUnknown_80DBD80 -_0801BBF4: .4byte gUnknown_80DBD88 -_0801BBF8: .4byte gUnknown_80D4970 -_0801BBFC: - adds r3, 0x1 - cmp r3, r5 - bge _0801BC1C - ldr r2, [r6] - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0xD0 - adds r1, r0 - ldr r1, [r1] -_0801BC0E: - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0801BBFC - adds r0, r2, 0 - adds r0, 0xC8 - str r1, [r0] -_0801BC1C: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_801BB5C - - thumb_func_start sub_801BC24 -sub_801BC24: - ldr r0, _0801BC58 - ldr r0, [r0] - mov r12, r0 - movs r3, 0 - mov r1, r12 - adds r1, 0xCC - ldr r0, _0801BC5C - ldr r0, [r0] - str r0, [r1] - adds r1, 0x4 - movs r0, 0x2 - str r0, [r1] - movs r2, 0x1 - adds r1, 0x4 - ldr r0, _0801BC60 - ldr r0, [r0] - str r0, [r1] - adds r1, 0x4 - movs r0, 0x3 - str r0, [r1] - mov r0, r12 - adds r0, 0xDC - str r3, [r0] - adds r0, 0x4 - str r2, [r0] - bx lr - .align 2, 0 -_0801BC58: .4byte gUnknown_203B234 -_0801BC5C: .4byte gUnknown_80D4920 -_0801BC60: .4byte gUnknown_80D4928 - thumb_func_end sub_801BC24 - - thumb_func_start sub_801BC64 -sub_801BC64: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0801BC8C - ldr r0, [sp] - cmp r0, 0x4 - beq _0801BC7E - cmp r0, 0x5 - beq _0801BC86 - b _0801BC8C -_0801BC7E: - movs r0, 0x8 - bl sub_801B748 - b _0801BC8C -_0801BC86: - movs r0, 0x7 - bl sub_801B748 -_0801BC8C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_801BC64 - - thumb_func_start sub_801BC94 -sub_801BC94: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0801BCC6 - ldr r0, [sp] - cmp r0, 0x2 - beq _0801BCB8 - cmp r0, 0x2 - bgt _0801BCB2 - cmp r0, 0x1 - beq _0801BCC0 - b _0801BCC6 -_0801BCB2: - cmp r0, 0x3 - beq _0801BCC0 - b _0801BCC6 -_0801BCB8: - movs r0, 0xD - bl sub_801B748 - b _0801BCC6 -_0801BCC0: - movs r0, 0x6 - bl sub_801B748 -_0801BCC6: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_801BC94 - - thumb_func_start sub_801BCCC -sub_801BCCC: - push {lr} - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x4 - bhi _0801BD7A - lsls r0, 2 - ldr r1, _0801BCE4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801BCE4: .4byte _0801BCE8 - .align 2, 0 -_0801BCE8: - .4byte _0801BD7A - .4byte _0801BD7A - .4byte _0801BD70 - .4byte _0801BCFC - .4byte _0801BD34 -_0801BCFC: - bl sub_801A8AC - ldr r1, _0801BD28 - ldr r2, [r1] - str r0, [r2, 0x24] - ldr r1, _0801BD2C - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x20] - ldr r0, _0801BD30 - adds r1, r2, 0 - adds r1, 0x20 - adds r2, 0x14 - bl sub_8090E14 - movs r0, 0xA - bl sub_801B748 - b _0801BD7A - .align 2, 0 -_0801BD28: .4byte gUnknown_203B234 -_0801BD2C: .4byte gUnknown_203B460 -_0801BD30: .4byte gUnknown_202DEA8 -_0801BD34: - bl sub_801A8AC - ldr r1, _0801BD64 - ldr r2, [r1] - str r0, [r2, 0x24] - ldr r1, _0801BD68 - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x20] - ldr r0, _0801BD6C - adds r1, r2, 0 - adds r1, 0x20 - adds r2, 0x14 - bl sub_8090E14 - movs r0, 0 - bl sub_8099690 - movs r0, 0xB - bl sub_801B748 - b _0801BD7A - .align 2, 0 -_0801BD64: .4byte gUnknown_203B234 -_0801BD68: .4byte gUnknown_203B460 -_0801BD6C: .4byte gUnknown_202DEA8 -_0801BD70: - bl sub_801A928 - movs r0, 0x6 - bl sub_801B748 -_0801BD7A: - pop {r0} - bx r0 - thumb_func_end sub_801BCCC - - thumb_func_start sub_801BD80 -sub_801BD80: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801A6E8 - ldr r4, _0801BDC4 - ldr r0, [r4] - adds r0, 0x28 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0801BDB2 - ldr r0, [r4] - adds r0, 0x28 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _0801BDB2 - ldr r0, [r4] - adds r0, 0xC8 - str r1, [r0] -_0801BDB2: - ldr r0, [sp] - cmp r0, 0x6 - beq _0801BDD2 - cmp r0, 0x6 - bgt _0801BDC8 - cmp r0, 0x1 - beq _0801BE22 - b _0801BE28 - .align 2, 0 -_0801BDC4: .4byte gUnknown_203B234 -_0801BDC8: - cmp r0, 0x7 - beq _0801BE0C - cmp r0, 0x8 - beq _0801BE14 - b _0801BE28 -_0801BDD2: - ldr r4, _0801BE08 - ldr r0, [r4] - adds r0, 0x20 - bl sub_80917B8 - ldr r0, [r4] - ldr r0, [r0, 0x24] - bl sub_80911F8 - ldr r0, [r4] - adds r0, 0x10 - bl sub_8091290 - bl sub_80910B4 - movs r0, 0xCB - bl sub_8011988 - movs r0, 0 - bl sub_8099690 - bl sub_801A928 - movs r0, 0xE - bl sub_801B748 - b _0801BE28 - .align 2, 0 -_0801BE08: .4byte gUnknown_203B234 -_0801BE0C: - movs r0, 0xC - bl sub_801B748 - b _0801BE28 -_0801BE14: - movs r0, 0 - bl sub_8099690 - movs r0, 0xB - bl sub_801B748 - b _0801BE28 -_0801BE22: - movs r0, 0x9 - bl sub_801B748 -_0801BE28: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801BD80 - - thumb_func_start sub_801BE30 -sub_801BE30: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801A6E8 - ldr r4, _0801BE70 - ldr r0, [r4] - adds r0, 0x28 - bl sub_8012FD8 - ldr r0, [r4] - adds r0, 0x78 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0801BE5E - ldr r0, [r4] - adds r0, 0x78 - mov r1, sp - bl sub_8013114 -_0801BE5E: - ldr r0, [sp] - cmp r0, 0x2 - beq _0801BE80 - cmp r0, 0x2 - bgt _0801BE74 - cmp r0, 0x1 - beq _0801BE78 - b _0801BEA4 - .align 2, 0 -_0801BE70: .4byte gUnknown_203B234 -_0801BE74: - cmp r0, 0x3 - bne _0801BEA4 -_0801BE78: - movs r0, 0x9 - bl sub_801B748 - b _0801BEA4 -_0801BE80: - ldr r0, [r4] - ldr r0, [r0, 0x24] - bl sub_80911F8 - ldr r0, [r4] - adds r0, 0x10 - bl sub_8091290 - bl sub_80910B4 - movs r0, 0xCB - bl sub_8011988 - bl sub_801A928 - movs r0, 0xF - bl sub_801B748 -_0801BEA4: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801BE30 - - thumb_func_start sub_801BEAC -sub_801BEAC: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _0801BEC4 - cmp r0, 0x3 - bhi _0801BEC4 - bl sub_801B450 - movs r0, 0x9 - bl sub_801B748 -_0801BEC4: - pop {r0} - bx r0 - thumb_func_end sub_801BEAC - - thumb_func_start sub_801BEC8 -sub_801BEC8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0801BEE0 - ldr r0, _0801BEE8 - ldr r0, [r0] - ldr r0, [r0, 0x8] - bl sub_801B748 -_0801BEE0: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0801BEE8: .4byte gUnknown_203B234 - thumb_func_end sub_801BEC8 - - thumb_func_start sub_801BEEC -sub_801BEEC: - push {r4-r6,lr} - lsls r0, 16 - asrs r5, r0, 16 - adds r0, r5, 0 - bl sub_801C5F0 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - bne _0801BF40 - ldr r4, _0801BF38 - movs r0, 0x92 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - str r6, [r0, 0x30] - strh r5, [r0, 0x4] - ldr r3, _0801BF3C - movs r1, 0x58 - adds r2, r5, 0 - muls r2, r1 - ldr r1, [r3] - adds r1, r2 - str r1, [r0, 0x8] - adds r0, 0xC - movs r2, 0x14 - ldrsh r1, [r1, r2] - bl sub_808EBA8 - ldr r1, [r4] - str r0, [r1, 0x2C] - movs r0, 0 - bl sub_801BFB4 - movs r0, 0x1 - b _0801BF42 - .align 2, 0 -_0801BF38: .4byte gUnknown_203B238 -_0801BF3C: .4byte gUnknown_203B45C -_0801BF40: - movs r0, 0 -_0801BF42: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_801BEEC - - thumb_func_start sub_801BF48 -sub_801BF48: - push {lr} - ldr r0, _0801BF60 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x4 - bhi _0801BF90 - lsls r0, 2 - ldr r1, _0801BF64 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801BF60: .4byte gUnknown_203B238 -_0801BF64: .4byte _0801BF68 - .align 2, 0 -_0801BF68: - .4byte _0801BF80 - .4byte _0801BF80 - .4byte _0801BF86 - .4byte _0801BF8C - .4byte _0801BF7C -_0801BF7C: - movs r0, 0x3 - b _0801BF92 -_0801BF80: - bl sub_801C118 - b _0801BF90 -_0801BF86: - bl sub_801C1A0 - b _0801BF90 -_0801BF8C: - bl sub_801C228 -_0801BF90: - movs r0, 0 -_0801BF92: - pop {r1} - bx r1 - thumb_func_end sub_801BF48 - - thumb_func_start sub_801BF98 -sub_801BF98: - push {r4,lr} - ldr r4, _0801BFB0 - ldr r0, [r4] - cmp r0, 0 - beq _0801BFAA - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801BFAA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801BFB0: .4byte gUnknown_203B238 - thumb_func_end sub_801BF98 - - thumb_func_start sub_801BFB4 -sub_801BFB4: - push {lr} - ldr r1, _0801BFC8 - ldr r1, [r1] - str r0, [r1] - bl sub_801BFCC - bl sub_801C03C - pop {r0} - bx r0 - .align 2, 0 -_0801BFC8: .4byte gUnknown_203B238 - thumb_func_end sub_801BFB4 - - thumb_func_start sub_801BFCC -sub_801BFCC: - push {r4-r7,lr} - ldr r4, _0801BFF0 - ldr r0, [r4] - adds r0, 0xC4 - bl sub_8006518 - ldr r1, [r4] - ldr r0, [r1] - cmp r0, 0x2 - bne _0801BFF8 - adds r1, 0xF4 - ldr r0, _0801BFF4 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - b _0801C01A - .align 2, 0 -_0801BFF0: .4byte gUnknown_203B238 -_0801BFF4: .4byte gUnknown_80DBDB0 -_0801BFF8: - mov r12, r4 - ldr r4, _0801C034 - movs r3, 0 - movs r2, 0x3 -_0801C000: - mov r0, r12 - ldr r1, [r0] - adds r1, r3 - adds r1, 0xC4 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0801C000 -_0801C01A: - bl sub_8004914 - ldr r0, _0801C038 - ldr r0, [r0] - adds r0, 0xC4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801C034: .4byte gUnknown_80DBD98 -_0801C038: .4byte gUnknown_203B238 - thumb_func_end sub_801BFCC - - thumb_func_start sub_801C03C -sub_801C03C: - push {lr} - sub sp, 0x8 - ldr r1, _0801C058 - ldr r0, [r1] - ldr r0, [r0] - adds r2, r1, 0 - cmp r0, 0x4 - bhi _0801C0C2 - lsls r0, 2 - ldr r1, _0801C05C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801C058: .4byte gUnknown_203B238 -_0801C05C: .4byte _0801C060 - .align 2, 0 -_0801C060: - .4byte _0801C074 - .4byte _0801C084 - .4byte _0801C08C - .4byte _0801C0B8 - .4byte _0801C0C2 -_0801C074: - ldr r0, [r2] - movs r1, 0x4 - ldrsh r0, [r0, r1] - movs r1, 0 - movs r2, 0x8 - bl sub_801C244 - b _0801C0C2 -_0801C084: - movs r0, 0x1 - bl sub_801C3B0 - b _0801C0C2 -_0801C08C: - bl sub_801C4C8 - bl sub_801C0C8 - ldr r0, _0801C0B4 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x74 - adds r1, r2, 0 - adds r1, 0x34 - ldr r2, [r2, 0x30] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _0801C0C2 - .align 2, 0 -_0801C0B4: .4byte gUnknown_203B238 -_0801C0B8: - ldr r0, [r2] - adds r0, 0x28 - ldrb r0, [r0] - bl sub_801C620 -_0801C0C2: - add sp, 0x8 - pop {r0} - bx r0 - thumb_func_end sub_801C03C - - thumb_func_start sub_801C0C8 -sub_801C0C8: - push {r4,r5,lr} - ldr r3, _0801C10C - ldr r1, [r3] - movs r4, 0 - ldr r0, _0801C110 - str r0, [r1, 0x34] - movs r0, 0x2 - str r0, [r1, 0x38] - movs r2, 0x1 - ldr r0, _0801C114 - ldr r0, [r0] - str r0, [r1, 0x3C] - movs r0, 0x3 - str r0, [r1, 0x40] - movs r5, 0x2 - str r4, [r1, 0x44] - str r2, [r1, 0x48] - movs r2, 0 - ldr r4, [r1, 0x30] - adds r1, 0x38 -_0801C0F0: - ldr r0, [r1] - cmp r0, r4 - beq _0801C104 - adds r1, 0x8 - adds r2, 0x1 - cmp r2, r5 - blt _0801C0F0 - ldr r1, [r3] - movs r0, 0x2 - str r0, [r1, 0x30] -_0801C104: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801C10C: .4byte gUnknown_203B238 -_0801C110: .4byte gUnknown_80DBDC8 -_0801C114: .4byte gUnknown_80D4970 - thumb_func_end sub_801C0C8 - - thumb_func_start sub_801C118 -sub_801C118: - push {lr} - movs r0, 0x1 - bl sub_801C308 - cmp r0, 0x4 - bhi _0801C19A - lsls r0, 2 - ldr r1, _0801C130 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801C130: .4byte _0801C134 - .align 2, 0 -_0801C134: - .4byte _0801C19A - .4byte _0801C19A - .4byte _0801C190 - .4byte _0801C148 - .4byte _0801C16C -_0801C148: - bl sub_801C390 - ldr r1, _0801C168 - ldr r2, [r1] - str r0, [r2, 0x24] - adds r1, r2, 0 - adds r1, 0xC - adds r1, r0 - ldrb r0, [r1] - adds r2, 0x28 - strb r0, [r2] - movs r0, 0x2 - bl sub_801BFB4 - b _0801C19A - .align 2, 0 -_0801C168: .4byte gUnknown_203B238 -_0801C16C: - bl sub_801C390 - ldr r1, _0801C18C - ldr r2, [r1] - str r0, [r2, 0x24] - adds r1, r2, 0 - adds r1, 0xC - adds r1, r0 - ldrb r0, [r1] - adds r2, 0x28 - strb r0, [r2] - movs r0, 0x3 - bl sub_801BFB4 - b _0801C19A - .align 2, 0 -_0801C18C: .4byte gUnknown_203B238 -_0801C190: - bl sub_801C3F8 - movs r0, 0x4 - bl sub_801BFB4 -_0801C19A: - pop {r0} - bx r0 - thumb_func_end sub_801C118 - - thumb_func_start sub_801C1A0 -sub_801C1A0: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801C308 - ldr r4, _0801C1E0 - ldr r0, [r4] - adds r0, 0x74 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0801C1D0 - ldr r0, [r4] - adds r0, 0x74 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _0801C1D0 - ldr r0, [r4] - str r1, [r0, 0x30] -_0801C1D0: - ldr r0, [sp] - cmp r0, 0x2 - beq _0801C1EA - cmp r0, 0x2 - bgt _0801C1E4 - cmp r0, 0x1 - beq _0801C218 - b _0801C21E - .align 2, 0 -_0801C1E0: .4byte gUnknown_203B238 -_0801C1E4: - cmp r0, 0x3 - beq _0801C210 - b _0801C21E -_0801C1EA: - ldr r0, _0801C208 - bl sub_8011988 - ldr r0, _0801C20C - ldr r1, [r0] - ldr r0, [r1, 0x8] - adds r0, 0x20 - adds r1, 0x28 - ldrb r1, [r1] - bl sub_808EBF4 - movs r0, 0x1 - bl sub_801BFB4 - b _0801C21E - .align 2, 0 -_0801C208: .4byte 0x00000133 -_0801C20C: .4byte gUnknown_203B238 -_0801C210: - movs r0, 0x3 - bl sub_801BFB4 - b _0801C21E -_0801C218: - movs r0, 0x1 - bl sub_801BFB4 -_0801C21E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801C1A0 - - thumb_func_start sub_801C228 -sub_801C228: - push {lr} - bl sub_801C674 - cmp r0, 0x1 - bls _0801C240 - cmp r0, 0x3 - bhi _0801C240 - bl sub_801C6B4 - movs r0, 0x1 - bl sub_801BFB4 -_0801C240: - pop {r0} - bx r0 - thumb_func_end sub_801C228 - - thumb_func_start sub_801C244 -sub_801C244: - push {r4-r7,lr} - adds r6, r1, 0 - adds r7, r2, 0 - lsls r0, 16 - asrs r0, 16 - adds r4, r0, 0 - bl sub_801C5F0 - lsls r0, 24 - cmp r0, 0 - beq _0801C25E - movs r0, 0 - b _0801C2F6 -_0801C25E: - ldr r5, _0801C2FC - ldr r0, [r5] - cmp r0, 0 - bne _0801C270 - movs r0, 0xC4 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] -_0801C270: - ldr r0, [r5] - strh r4, [r0] - ldr r3, _0801C300 - movs r1, 0x58 - adds r2, r4, 0 - muls r2, r1 - ldr r1, [r3] - adds r1, r2 - str r1, [r0, 0x4] - adds r0, 0x8 - movs r2, 0x14 - ldrsh r1, [r1, r2] - bl sub_808EBA8 - adds r1, r0, 0 - ldr r0, [r5] - str r1, [r0, 0x20] - str r6, [r0, 0x58] - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 3 - adds r1, 0x60 - adds r1, r0, r1 - str r1, [r0, 0x5C] - adds r0, 0x60 - bl sub_8006518 - ldr r1, [r5] - ldr r2, [r1, 0x58] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x60 - ldr r0, _0801C304 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r1, [r5] - ldr r0, [r1, 0x5C] - adds r1, 0xC0 - str r1, [r0, 0x14] - adds r1, r7, 0 - bl sub_8012D08 - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x60 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x24 - ldr r1, [r1, 0x20] - adds r2, r7, 0 - adds r3, r6, 0 - bl sub_8013818 - bl sub_801C440 - bl sub_801C4C8 - movs r0, 0x1 -_0801C2F6: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0801C2FC: .4byte gUnknown_203B23C -_0801C300: .4byte gUnknown_203B45C -_0801C304: .4byte gUnknown_80DBDF0 - thumb_func_end sub_801C244 - - thumb_func_start sub_801C308 -sub_801C308: - push {lr} - lsls r0, 24 - cmp r0, 0 - bne _0801C324 - ldr r0, _0801C320 - ldr r0, [r0] - adds r0, 0x24 - bl sub_8013660 - movs r0, 0 - b _0801C38A - .align 2, 0 -_0801C320: .4byte gUnknown_203B23C -_0801C324: - ldr r0, _0801C33C - ldr r0, [r0] - adds r0, 0x24 - bl GetKeyPress - cmp r0, 0x2 - beq _0801C346 - cmp r0, 0x2 - bgt _0801C340 - cmp r0, 0x1 - beq _0801C350 - b _0801C364 - .align 2, 0 -_0801C33C: .4byte gUnknown_203B23C -_0801C340: - cmp r0, 0x4 - beq _0801C35A - b _0801C364 -_0801C346: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0801C38A -_0801C350: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0801C38A -_0801C35A: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _0801C38A -_0801C364: - ldr r0, _0801C37C - ldr r0, [r0] - adds r0, 0x24 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0801C380 - movs r0, 0 - b _0801C38A - .align 2, 0 -_0801C37C: .4byte gUnknown_203B23C -_0801C380: - bl sub_801C440 - bl sub_801C4C8 - movs r0, 0x1 -_0801C38A: - pop {r1} - bx r1 - thumb_func_end sub_801C308 - - thumb_func_start sub_801C390 -sub_801C390: - ldr r0, _0801C3AC - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x42 - movs r3, 0 - ldrsh r1, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r1 - movs r3, 0x3C - ldrsh r1, [r2, r3] - adds r0, r1 - bx lr - .align 2, 0 -_0801C3AC: .4byte gUnknown_203B23C - thumb_func_end sub_801C390 - - thumb_func_start sub_801C3B0 -sub_801C3B0: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0801C3F4 - ldr r0, [r5] - adds r0, 0x60 - movs r1, 0 - movs r2, 0 - bl sub_800641C - ldr r0, [r5] - ldr r1, [r0, 0x20] - adds r2, r0, 0 - adds r2, 0x46 - strh r1, [r2] - adds r0, 0x24 - bl sub_8013984 - bl sub_801C440 - bl sub_801C4C8 - cmp r4, 0 - beq _0801C3EE - ldr r0, [r5] - adds r0, 0x24 - bl AddMenuCursorSprite -_0801C3EE: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801C3F4: .4byte gUnknown_203B23C - thumb_func_end sub_801C3B0 - - thumb_func_start sub_801C3F8 -sub_801C3F8: - push {r4,r5,lr} - ldr r4, _0801C438 - ldr r2, [r4] - cmp r2, 0 - beq _0801C432 - ldr r0, [r2, 0x58] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x60 - ldr r0, _0801C43C - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801C432: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801C438: .4byte gUnknown_203B23C -_0801C43C: .4byte gUnknown_80DBDD8 - thumb_func_end sub_801C3F8 - - thumb_func_start sub_801C440 -sub_801C440: - push {r4,lr} - ldr r4, _0801C4C4 - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0x44 - ldrh r1, [r1] - adds r0, 0xC0 - movs r2, 0 - strb r1, [r0] - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0x42 - ldrh r1, [r1] - adds r0, 0xC1 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xC2 - movs r1, 0xA - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xC3 - strb r2, [r0] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x3E - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - ldr r2, [r4] - ldr r3, [r2, 0x58] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x6E - lsls r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r3, [r2, 0x58] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r2, r1 - adds r2, 0x70 - strh r0, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801C4C4: .4byte gUnknown_203B23C - thumb_func_end sub_801C440 - - thumb_func_start sub_801C4C8 -sub_801C4C8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - ldr r6, _0801C594 - ldr r0, [r6] - ldr r0, [r0, 0x58] - bl sub_8008C54 - ldr r0, [r6] - ldr r0, [r0, 0x58] - bl sub_80073B8 - ldr r0, [r6] - adds r1, r0, 0 - adds r1, 0x42 - movs r2, 0 - ldrsh r4, [r1, r2] - lsls r4, 3 - adds r5, r4, 0 - adds r5, 0xA - ldr r2, _0801C598 - ldr r3, [r0, 0x58] - movs r0, 0 - str r0, [sp] - adds r0, r5, 0 - movs r1, 0 - bl xxx_call_draw_string - adds r4, 0x4 - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0xC2 - ldrb r0, [r0] - lsls r0, 3 - adds r5, r4, r0 - adds r0, r1, 0 - adds r0, 0x42 - movs r3, 0 - ldrsh r2, [r0, r3] - adds r2, 0x1 - movs r0, 0x7 - str r0, [sp] - ldr r0, [r1, 0x58] - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r1, 0 - movs r3, 0x1 - bl sub_8012BC4 - movs r5, 0 - ldr r0, [r6] - movs r1, 0x3E - ldrsh r0, [r0, r1] - cmp r5, r0 - bge _0801C5CC - ldr r2, _0801C59C - mov r8, r2 -_0801C53C: - ldr r2, [r6] - adds r0, r2, 0 - adds r0, 0x42 - movs r3, 0 - ldrsh r1, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r1, r0 - adds r1, r5 - adds r0, r2, 0 - adds r0, 0x8 - adds r0, r1 - ldrb r4, [r0] - adds r0, r2, 0 - adds r0, 0x24 - adds r1, r5, 0 - bl sub_8013800 - adds r7, r0, 0 - adds r0, r4, 0 - bl sub_808EAB0 - adds r1, r0, 0 - mov r0, r8 - movs r2, 0x50 - bl strncpy - ldr r0, [r6] - ldr r0, [r0, 0x4] - adds r0, 0x20 - movs r1, 0x1 - lsls r1, r4 - bl sub_808ECD0 - lsls r0, 24 - cmp r0, 0 - beq _0801C5A4 - mov r0, r8 - subs r0, 0x50 - ldr r1, _0801C5A0 - bl strcpy - b _0801C5AE - .align 2, 0 -_0801C594: .4byte gUnknown_203B23C -_0801C598: .4byte gUnknown_80DBE08 -_0801C59C: .4byte gUnknown_202DEA8 -_0801C5A0: .4byte gUnknown_80DBE14 -_0801C5A4: - mov r0, r8 - subs r0, 0x50 - ldr r1, _0801C5E4 - bl strcpy -_0801C5AE: - ldr r0, [r6] - ldr r3, [r0, 0x58] - movs r0, 0 - str r0, [sp] - movs r0, 0xC - adds r1, r7, 0 - ldr r2, _0801C5E8 - bl sub_8014FF0 - adds r5, 0x1 - ldr r0, [r6] - movs r1, 0x3E - ldrsh r0, [r0, r1] - cmp r5, r0 - blt _0801C53C -_0801C5CC: - ldr r0, _0801C5EC - ldr r0, [r0] - ldr r0, [r0, 0x58] - bl sub_80073E0 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801C5E4: .4byte gUnknown_80DBE18 -_0801C5E8: .4byte gUnknown_80DBE1C -_0801C5EC: .4byte gUnknown_203B23C - thumb_func_end sub_801C4C8 - - thumb_func_start sub_801C5F0 -sub_801C5F0: - push {lr} - sub sp, 0x18 - lsls r0, 16 - asrs r0, 16 - ldr r2, _0801C614 - movs r1, 0x58 - muls r1, r0 - ldr r0, [r2] - adds r0, r1 - movs r2, 0x14 - ldrsh r1, [r0, r2] - mov r0, sp - bl sub_808EBA8 - cmp r0, 0 - beq _0801C618 - movs r0, 0 - b _0801C61A - .align 2, 0 -_0801C614: .4byte gUnknown_203B45C -_0801C618: - movs r0, 0x1 -_0801C61A: - add sp, 0x18 - pop {r1} - bx r1 - thumb_func_end sub_801C5F0 - - thumb_func_start sub_801C620 -sub_801C620: - push {r4-r6,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - bl sub_8004D8C - ldr r5, _0801C670 - movs r0, 0x94 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r6, 0 - strb r4, [r0, 0x4] - ldr r0, [r5] - adds r0, 0x88 - bl sub_801317C - ldr r0, [r5] - str r6, [r0, 0x24] - adds r0, 0x28 - bl sub_80140B4 - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x28 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0 - bl sub_801C6D0 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0801C670: .4byte gUnknown_203B240 - thumb_func_end sub_801C620 - - thumb_func_start sub_801C674 -sub_801C674: - push {lr} - ldr r0, _0801C68C - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x1 - beq _0801C6A0 - cmp r0, 0x1 - bgt _0801C690 - cmp r0, 0 - beq _0801C69A - b _0801C6AA - .align 2, 0 -_0801C68C: .4byte gUnknown_203B240 -_0801C690: - cmp r0, 0x2 - beq _0801C6AA - cmp r0, 0x3 - beq _0801C6A6 - b _0801C6AA -_0801C69A: - bl sub_801C7D4 - b _0801C6AE -_0801C6A0: - bl sub_801C848 - b _0801C6AE -_0801C6A6: - movs r0, 0x3 - b _0801C6B0 -_0801C6AA: - movs r0, 0x2 - b _0801C6B0 -_0801C6AE: - movs r0, 0 -_0801C6B0: - pop {r1} - bx r1 - thumb_func_end sub_801C674 - - thumb_func_start sub_801C6B4 -sub_801C6B4: - push {r4,lr} - ldr r4, _0801C6CC - ldr r0, [r4] - cmp r0, 0 - beq _0801C6C6 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801C6C6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801C6CC: .4byte gUnknown_203B240 - thumb_func_end sub_801C6B4 - - thumb_func_start sub_801C6D0 -sub_801C6D0: - push {lr} - ldr r1, _0801C6E0 - ldr r1, [r1] - str r0, [r1] - bl sub_801C6E4 - pop {r0} - bx r0 - .align 2, 0 -_0801C6E0: .4byte gUnknown_203B240 - thumb_func_end sub_801C6D0 - - thumb_func_start sub_801C6E4 -sub_801C6E4: - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, _0801C760 - ldr r0, [r5] - ldr r4, [r0] - cmp r4, 0x1 - beq _0801C76C - cmp r4, 0x1 - bgt _0801C7C4 - cmp r4, 0 - bne _0801C7C4 - ldr r0, [r0, 0x24] - bl sub_8008C54 - ldr r0, [r5] - ldr r0, [r0, 0x24] - bl sub_80073B8 - ldr r0, [r5] - ldrb r0, [r0, 0x4] - bl sub_808EAB0 - adds r1, r0, 0 - ldr r0, _0801C764 - bl strcpy - ldr r2, _0801C768 - str r4, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - ldr r0, [r5] - ldrb r0, [r0, 0x4] - bl sub_808EADC - adds r2, r0, 0 - ldr r0, [r5] - ldr r3, [r0, 0x24] - str r4, [sp] - movs r0, 0x8 - movs r1, 0x10 - bl xxx_call_draw_string - ldr r0, [r5] - ldr r0, [r0, 0x24] - bl sub_80073E0 - ldr r0, [r5] - ldrb r0, [r0, 0x4] - bl sub_808EADC - ldr r1, [r5] - adds r1, 0x10 - bl sub_8097DF0 - ldr r1, [r5] - str r0, [r1, 0xC] - str r4, [r1, 0x20] - b _0801C7C4 - .align 2, 0 -_0801C760: .4byte gUnknown_203B240 -_0801C764: .4byte gUnknown_202DE58 -_0801C768: .4byte gUnknown_80DBE2C -_0801C76C: - ldr r0, [r0, 0x24] - bl sub_8008C54 - ldr r0, [r5] - ldr r0, [r0, 0x24] - bl sub_80073B8 - ldr r0, [r5] - ldr r1, [r0, 0x8] - lsls r1, 2 - adds r0, 0x10 - adds r0, r1 - ldr r1, [r0] - ldr r0, _0801C7CC - ldr r1, [r1] - bl strcpy - ldr r2, _0801C7D0 - ldr r0, [r5] - ldr r3, [r0, 0x24] - movs r4, 0 - str r4, [sp] - movs r0, 0x10 - movs r1, 0 - bl sub_8014FF0 - ldr r3, [r5] - ldr r1, [r3, 0x8] - lsls r1, 2 - adds r0, r3, 0 - adds r0, 0x10 - adds r0, r1 - ldr r0, [r0] - ldr r2, [r0, 0x4] - ldr r3, [r3, 0x24] - str r4, [sp] - movs r0, 0x4 - movs r1, 0x10 - bl sub_8014FF0 - ldr r0, [r5] - ldr r0, [r0, 0x24] - bl sub_80073E0 -_0801C7C4: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801C7CC: .4byte gUnknown_202DF98 -_0801C7D0: .4byte gUnknown_80DBE30 - thumb_func_end sub_801C6E4 - - thumb_func_start sub_801C7D4 -sub_801C7D4: - push {r4,lr} - ldr r0, _0801C810 - ldr r2, [r0] - ldr r1, [r2, 0xC] - adds r4, r0, 0 - cmp r1, 0 - beq _0801C7F8 - ldr r0, [r2, 0x20] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0801C7F0 - bl sub_8013F84 -_0801C7F0: - ldr r1, [r4] - ldr r0, [r1, 0x20] - adds r0, 0x1 - str r0, [r1, 0x20] -_0801C7F8: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x88 - ldr r1, [r1, 0x24] - bl sub_8012A64 - cmp r0, 0x1 - beq _0801C814 - cmp r0, 0x2 - beq _0801C836 - b _0801C842 - .align 2, 0 -_0801C810: .4byte gUnknown_203B240 -_0801C814: - movs r0, 0 - bl sub_80119D4 - ldr r1, [r4] - ldr r0, [r1, 0xC] - cmp r0, 0 - beq _0801C82E - movs r0, 0 - str r0, [r1, 0x8] - movs r0, 0x1 - bl sub_801C6D0 - b _0801C842 -_0801C82E: - movs r0, 0x3 - bl sub_801C6D0 - b _0801C842 -_0801C836: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - bl sub_801C6D0 -_0801C842: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801C7D4 - - thumb_func_start sub_801C848 -sub_801C848: - push {r4,lr} - ldr r0, _0801C888 - ldr r3, [r0] - ldr r1, [r3, 0xC] - subs r1, 0x1 - ldr r2, [r3, 0x8] - adds r4, r0, 0 - cmp r2, r1 - bge _0801C870 - ldr r0, [r3, 0x20] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0801C868 - bl sub_8013F84 -_0801C868: - ldr r1, [r4] - ldr r0, [r1, 0x20] - adds r0, 0x1 - str r0, [r1, 0x20] -_0801C870: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x88 - ldr r1, [r1, 0x24] - bl sub_8012A64 - cmp r0, 0x1 - beq _0801C88C - cmp r0, 0x2 - beq _0801C8B0 - b _0801C8BC - .align 2, 0 -_0801C888: .4byte gUnknown_203B240 -_0801C88C: - movs r0, 0 - bl sub_80119D4 - ldr r0, [r4] - ldr r1, [r0, 0x8] - adds r1, 0x1 - str r1, [r0, 0x8] - ldr r0, [r0, 0xC] - cmp r1, r0 - bge _0801C8A8 - movs r0, 0x1 - bl sub_801C6D0 - b _0801C8BC -_0801C8A8: - movs r0, 0 - bl sub_801C6D0 - b _0801C8BC -_0801C8B0: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - bl sub_801C6D0 -_0801C8BC: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801C848 - - thumb_func_start sub_801C8C4 -sub_801C8C4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r4, r0, 0 - adds r6, r1, 0 - mov r9, r2 - mov r10, r3 - bl sub_801CF14 - lsls r0, 24 - cmp r0, 0 - beq _0801C8E4 - movs r0, 0 - b _0801C9D0 -_0801C8E4: - ldr r5, _0801C9E0 - ldr r0, [r5] - cmp r0, 0 - bne _0801C8F6 - ldr r0, _0801C9E4 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] -_0801C8F6: - ldr r0, [r5] - str r4, [r0] - bl sub_801CF94 - ldr r0, [r5] - movs r4, 0x9D - lsls r4, 3 - adds r1, r0, r4 - str r6, [r1] - ldr r1, _0801C9E8 - mov r8, r1 - adds r2, r0, r1 - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 3 - movs r7, 0x9E - lsls r7, 3 - adds r1, r7 - adds r1, r0, r1 - str r1, [r2] - adds r0, r7 - bl sub_8006518 - ldr r1, [r5] - adds r4, r1, r4 - ldr r2, [r4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, r7 - ldr r0, _0801C9EC - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r2, [r5] - mov r1, r8 - adds r0, r2, r1 - ldr r1, [r0] - movs r3, 0xAA - lsls r3, 3 - adds r0, r2, r3 - str r0, [r1, 0x14] - mov r4, r9 - cmp r4, 0 - beq _0801C96C - movs r1, 0x9D - lsls r1, 3 - adds r0, r2, r1 - ldr r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - subs r3, 0x58 - adds r1, r2, r3 - adds r1, r0 - ldr r0, [r4] - str r0, [r1] -_0801C96C: - ldr r0, [r5] - add r0, r8 - ldr r0, [r0] - mov r1, r10 - bl sub_8012D08 - bl sub_8004914 - ldr r0, [r5] - adds r0, r7 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - ldr r0, _0801C9F0 - adds r4, r0 - bl sub_801CE58 - adds r1, r0, 0 - adds r0, r4, 0 - mov r2, r10 - adds r3, r6, 0 - bl sub_8013818 - ldr r0, _0801C9F4 - ldr r4, [r5] - ldr r1, [r0] - ldr r0, [r4] - cmp r1, r0 - bne _0801C9C6 - ldr r0, _0801C9F8 - ldrh r1, [r0] - ldr r2, _0801C9FC - adds r0, r4, r2 - strh r1, [r0] - ldr r0, _0801CA00 - ldrh r1, [r0] - ldr r3, _0801CA04 - adds r0, r4, r3 - strh r1, [r0] - ldr r1, _0801C9F0 - adds r0, r4, r1 - bl sub_8013984 -_0801C9C6: - bl sub_801CC38 - bl sub_801CCD8 - movs r0, 0x1 -_0801C9D0: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0801C9E0: .4byte gUnknown_203B244 -_0801C9E4: .4byte 0x00000554 -_0801C9E8: .4byte 0x000004ec -_0801C9EC: .4byte gUnknown_80DBE54 -_0801C9F0: .4byte 0x000004b4 -_0801C9F4: .4byte gUnknown_203B248 -_0801C9F8: .4byte gUnknown_203B24C -_0801C9FC: .4byte 0x000004cc -_0801CA00: .4byte gUnknown_203B24E -_0801CA04: .4byte 0x000004d2 - thumb_func_end sub_801C8C4 - - thumb_func_start sub_801CA08 -sub_801CA08: - push {r4-r6,lr} - lsls r0, 24 - cmp r0, 0 - bne _0801CA28 - ldr r0, _0801CA20 - ldr r0, [r0] - ldr r1, _0801CA24 - adds r0, r1 - bl sub_8013660 - movs r0, 0 - b _0801CB1E - .align 2, 0 -_0801CA20: .4byte gUnknown_203B244 -_0801CA24: .4byte 0x000004b4 -_0801CA28: - ldr r0, _0801CA44 - ldr r0, [r0] - ldr r1, _0801CA48 - adds r0, r1 - bl GetKeyPress - subs r0, 0x1 - cmp r0, 0x5 - bhi _0801CAF2 - lsls r0, 2 - ldr r1, _0801CA4C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801CA44: .4byte gUnknown_203B244 -_0801CA48: .4byte 0x000004b4 -_0801CA4C: .4byte _0801CA50 - .align 2, 0 -_0801CA50: - .4byte _0801CA72 - .4byte _0801CA68 - .4byte _0801CAF2 - .4byte _0801CAE8 - .4byte _0801CA7C - .4byte _0801CA7C -_0801CA68: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0801CB1E -_0801CA72: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0801CB1E -_0801CA7C: - ldr r0, _0801CAD8 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x1 - bne _0801CAF2 - bl sub_801CB24 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r5, 0 - bl sub_801CFE0 - movs r6, 0 - cmp r0, 0 - bne _0801CAB0 - bl sub_8090A34 - adds r4, r0, 0 - bl sub_801CFB8 - adds r4, r0 - cmp r4, 0x13 - bgt _0801CAAC - movs r6, 0x1 -_0801CAAC: - cmp r6, 0 - beq _0801CAE0 -_0801CAB0: - movs r0, 0x6 - bl sub_80119D4 - ldr r0, _0801CAD8 - ldr r0, [r0] - lsls r1, r5, 2 - adds r2, r0, 0 - adds r2, 0xF4 - adds r2, r1 - ldr r1, [r2] - movs r3, 0x1 - eors r1, r3 - str r1, [r2] - ldr r1, _0801CADC - adds r0, r1 - movs r1, 0 - bl sub_80138B8 - b _0801CB18 - .align 2, 0 -_0801CAD8: .4byte gUnknown_203B244 -_0801CADC: .4byte 0x000004b4 -_0801CAE0: - movs r0, 0x2 - bl sub_80119D4 - b _0801CAF2 -_0801CAE8: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _0801CB1E -_0801CAF2: - ldr r0, _0801CB0C - ldr r0, [r0] - ldr r1, _0801CB10 - adds r0, r1 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0801CB14 - movs r0, 0 - b _0801CB1E - .align 2, 0 -_0801CB0C: .4byte gUnknown_203B244 -_0801CB10: .4byte 0x000004b4 -_0801CB14: - bl sub_801CC38 -_0801CB18: - bl sub_801CCD8 - movs r0, 0x1 -_0801CB1E: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_801CA08 - - thumb_func_start sub_801CB24 -sub_801CB24: - ldr r0, _0801CB50 - ldr r0, [r0] - ldr r2, _0801CB54 - adds r1, r0, r2 - movs r3, 0 - ldrsh r2, [r1, r3] - movs r3, 0x9A - lsls r3, 3 - adds r1, r0, r3 - movs r3, 0 - ldrsh r1, [r1, r3] - muls r2, r1 - ldr r3, _0801CB58 - adds r1, r0, r3 - movs r3, 0 - ldrsh r1, [r1, r3] - adds r2, r1 - adds r0, 0x4 - adds r0, r2 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0801CB50: .4byte gUnknown_203B244 -_0801CB54: .4byte 0x000004d2 -_0801CB58: .4byte 0x000004cc - thumb_func_end sub_801CB24 - - thumb_func_start sub_801CB5C -sub_801CB5C: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0801CBAC - ldr r0, [r5] - movs r1, 0x9E - lsls r1, 3 - adds r0, r1 - movs r1, 0 - movs r2, 0 - bl sub_800641C - bl sub_801CE58 - adds r2, r0, 0 - ldr r0, [r5] - ldr r3, _0801CBB0 - adds r1, r0, r3 - strh r2, [r1] - ldr r1, _0801CBB4 - adds r0, r1 - bl sub_8013984 - bl sub_801CC38 - bl sub_801CCD8 - cmp r4, 0 - beq _0801CBA6 - ldr r0, [r5] - ldr r3, _0801CBB4 - adds r0, r3 - bl AddMenuCursorSprite -_0801CBA6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801CBAC: .4byte gUnknown_203B244 -_0801CBB0: .4byte 0x000004d6 -_0801CBB4: .4byte 0x000004b4 - thumb_func_end sub_801CB5C - - thumb_func_start sub_801CBB8 -sub_801CBB8: - push {r4-r6,lr} - ldr r5, _0801CC1C - ldr r2, [r5] - cmp r2, 0 - beq _0801CC16 - ldr r1, _0801CC20 - ldr r0, [r2] - str r0, [r1] - ldr r1, _0801CC24 - ldr r3, _0801CC28 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, _0801CC2C - ldr r6, _0801CC30 - adds r0, r2, r6 - ldrh r0, [r0] - strh r0, [r1] - movs r1, 0x9D - lsls r1, 3 - adds r0, r2, r1 - ldr r0, [r0] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - movs r4, 0x9E - lsls r4, 3 - adds r1, r4 - ldr r0, _0801CC34 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - bl sub_8004914 - ldr r0, [r5] - adds r0, r4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r5] - bl MemoryFree - movs r0, 0 - str r0, [r5] -_0801CC16: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801CC1C: .4byte gUnknown_203B244 -_0801CC20: .4byte gUnknown_203B248 -_0801CC24: .4byte gUnknown_203B24C -_0801CC28: .4byte 0x000004cc -_0801CC2C: .4byte gUnknown_203B24E -_0801CC30: .4byte 0x000004d2 -_0801CC34: .4byte gUnknown_80DBE3C - thumb_func_end sub_801CBB8 - - thumb_func_start sub_801CC38 -sub_801CC38: - push {r4,r5,lr} - ldr r4, _0801CCC4 - ldr r0, [r4] - movs r1, 0xAA - lsls r1, 3 - adds r0, r1 - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - ldr r1, _0801CCC8 - adds r0, r1 - strb r2, [r0] - ldr r0, [r4] - adds r1, 0x1 - adds r0, r1 - movs r1, 0xC - strb r1, [r0] - ldr r0, [r4] - ldr r1, _0801CCCC - adds r0, r1 - strb r2, [r0] - ldr r0, [r4] - ldr r2, _0801CCD0 - adds r0, r2 - movs r1, 0 - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r3, [r4] - movs r2, 0x9D - lsls r2, 3 - adds r5, r3, r2 - ldr r2, [r5] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r1, r3, r1 - ldr r2, _0801CCD4 - adds r1, r2 - asrs r2, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r5] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r3, r0 - adds r2, 0x2 - movs r0, 0xA0 - lsls r0, 3 - adds r3, r0 - strh r2, [r3] - bl sub_8004914 - ldr r0, [r4] - movs r1, 0x9E - lsls r1, 3 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801CCC4: .4byte gUnknown_203B244 -_0801CCC8: .4byte 0x00000551 -_0801CCCC: .4byte 0x00000553 -_0801CCD0: .4byte 0x000004ce -_0801CCD4: .4byte 0x000004fe - thumb_func_end sub_801CC38 - - thumb_func_start sub_801CCD8 -sub_801CCD8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x58 - ldr r4, _0801CE38 - ldr r0, [r4] - movs r5, 0x9D - lsls r5, 3 - adds r0, r5 - ldr r0, [r0] - bl sub_8008C54 - ldr r0, [r4] - adds r0, r5 - ldr r0, [r0] - bl sub_80073B8 - ldr r2, _0801CE3C - ldr r0, [r4] - adds r0, r5 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r3, [r4] - ldr r1, _0801CE40 - adds r0, r3, r1 - ldrb r0, [r0] - lsls r0, 3 - adds r0, 0x4 - ldr r2, _0801CE44 - adds r1, r3, r2 - movs r6, 0 - ldrsh r2, [r1, r6] - adds r2, 0x1 - movs r1, 0x7 - str r1, [sp] - adds r3, r5 - ldr r1, [r3] - str r1, [sp, 0x4] - movs r1, 0 - movs r3, 0x2 - bl sub_8012BC4 - movs r7, 0 - ldr r0, [r4] - ldr r1, _0801CE48 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r7, r0 - bge _0801CE1A - adds r6, r4, 0 - ldr r3, _0801CE4C - mov r9, r3 - mov r8, r5 -_0801CD50: - ldr r1, [r6] - ldr r4, _0801CE44 - adds r0, r1, r4 - movs r3, 0 - ldrsh r2, [r0, r3] - subs r4, 0x2 - adds r0, r1, r4 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r2 - adds r0, r7 - adds r1, 0x4 - adds r1, r0 - ldrb r5, [r1] - add r0, sp, 0x8 - adds r1, r5, 0 - movs r2, 0 - bl sub_8090DC4 - ldr r0, [r6] - add r0, r9 - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, [r6] - add r0, r8 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - add r2, sp, 0x8 - bl xxx_call_draw_string - ldr r0, [r6] - add r0, r9 - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r4, [r6] - ldr r2, _0801CE50 - adds r0, r4, r2 - ldr r0, [r0] - movs r3, 0xC - ldrsh r0, [r0, r3] - lsls r0, 3 - subs r0, 0x2 - ldr r2, _0801CE54 - ldr r2, [r2] - lsls r3, r5, 1 - adds r2, 0x50 - adds r2, r3 - ldrh r2, [r2] - movs r3, 0x5 - str r3, [sp] - add r4, r8 - ldr r3, [r4] - str r3, [sp, 0x4] - movs r3, 0x3 - bl sub_8012BC4 - adds r0, r5, 0 - bl sub_801CFE0 - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0801CE0A - ldr r0, [r6] - ldr r4, _0801CE4C - adds r0, r4 - adds r1, r7, 0 - bl sub_8013800 - adds r2, r0, 0 - ldr r1, [r6] - movs r3, 0x9D - lsls r3, 3 - adds r0, r1, r3 - ldr r0, [r0] - adds r4, 0x38 - adds r1, r4 - ldr r1, [r1] - movs r4, 0xC - ldrsh r3, [r1, r4] - subs r3, 0x1 - lsls r3, 3 - movs r1, 0xA - str r1, [sp] - movs r1, 0x8 - bl sub_8007B7C -_0801CE0A: - adds r7, 0x1 - ldr r0, [r6] - ldr r1, _0801CE48 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r7, r0 - blt _0801CD50 -_0801CE1A: - ldr r0, _0801CE38 - ldr r0, [r0] - movs r3, 0x9D - lsls r3, 3 - adds r0, r3 - ldr r0, [r0] - bl sub_80073E0 - add sp, 0x58 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801CE38: .4byte gUnknown_203B244 -_0801CE3C: .4byte gUnknown_80DBE6C -_0801CE40: .4byte 0x00000552 -_0801CE44: .4byte 0x000004d2 -_0801CE48: .4byte 0x000004ce -_0801CE4C: .4byte 0x000004b4 -_0801CE50: .4byte 0x000004ec -_0801CE54: .4byte gUnknown_203B460 - thumb_func_end sub_801CCD8 - - thumb_func_start sub_801CE58 -sub_801CE58: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - movs r3, 0 - movs r6, 0x1 - ldr r4, _0801CF0C -_0801CE68: - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0x2 - beq _0801CE92 - ldr r0, _0801CF10 - ldr r0, [r0] - lsls r1, r6, 1 - adds r0, 0x50 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0 - beq _0801CE9C - lsls r0, r6, 24 - lsrs r0, 24 - str r3, [sp] - bl sub_8091524 - lsls r0, 24 - ldr r3, [sp] - cmp r0, 0 - beq _0801CE9C -_0801CE92: - ldr r0, [r4] - adds r0, 0x4 - adds r0, r3 - strb r6, [r0] - adds r3, 0x1 -_0801CE9C: - adds r6, 0x1 - cmp r6, 0xEF - ble _0801CE68 - movs r6, 0 - subs r0, r3, 0x1 - mov r9, r0 - cmp r6, r9 - bge _0801CEFC -_0801CEAC: - adds r0, r6, 0x1 - mov r8, r0 - mov r5, r8 - cmp r8, r3 - bge _0801CEF6 - ldr r7, _0801CF0C -_0801CEB8: - ldr r0, [r7] - adds r0, 0x4 - adds r0, r6 - ldrb r0, [r0] - str r3, [sp] - bl sub_8090D44 - adds r4, r0, 0 - ldr r0, [r7] - adds r0, 0x4 - adds r0, r5 - ldrb r0, [r0] - bl sub_8090D44 - ldr r3, [sp] - cmp r4, r0 - ble _0801CEF0 - ldr r0, [r7] - adds r0, 0x4 - adds r1, r0, r6 - ldrb r2, [r1] - adds r0, r5 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, [r7] - adds r0, 0x4 - adds r0, r5 - strb r2, [r0] -_0801CEF0: - adds r5, 0x1 - cmp r5, r3 - blt _0801CEB8 -_0801CEF6: - mov r6, r8 - cmp r6, r9 - blt _0801CEAC -_0801CEFC: - adds r0, r3, 0 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0801CF0C: .4byte gUnknown_203B244 -_0801CF10: .4byte gUnknown_203B460 - thumb_func_end sub_801CE58 - - thumb_func_start sub_801CF14 -sub_801CF14: - push {r4,lr} - cmp r0, 0x2 - bne _0801CF1E -_0801CF1A: - movs r0, 0 - b _0801CF46 -_0801CF1E: - movs r4, 0x1 -_0801CF20: - ldr r0, _0801CF4C - ldr r0, [r0] - lsls r1, r4, 1 - adds r0, 0x50 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0 - beq _0801CF3E - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - bne _0801CF1A -_0801CF3E: - adds r4, 0x1 - cmp r4, 0xEF - ble _0801CF20 - movs r0, 0x1 -_0801CF46: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0801CF4C: .4byte gUnknown_203B460 - thumb_func_end sub_801CF14 - - thumb_func_start sub_801CF50 -sub_801CF50: - push {r4,r5,lr} - cmp r0, 0x2 - bne _0801CF5A -_0801CF56: - movs r0, 0 - b _0801CF84 -_0801CF5A: - movs r4, 0x1 - ldr r5, _0801CF8C -_0801CF5E: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - beq _0801CF7C - ldr r0, _0801CF90 - ldr r0, [r0] - lsls r1, r4, 1 - adds r0, 0x50 - adds r0, r1 - ldrh r0, [r0] - cmp r0, r5 - bls _0801CF56 -_0801CF7C: - adds r4, 0x1 - cmp r4, 0xEF - ble _0801CF5E - movs r0, 0x1 -_0801CF84: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0801CF8C: .4byte 0x000003e6 -_0801CF90: .4byte gUnknown_203B460 - thumb_func_end sub_801CF50 - - thumb_func_start sub_801CF94 -sub_801CF94: - push {r4,lr} - movs r2, 0 - ldr r4, _0801CFB4 - movs r3, 0 -_0801CF9C: - ldr r0, [r4] - lsls r1, r2, 2 - adds r0, 0xF4 - adds r0, r1 - str r3, [r0] - adds r2, 0x1 - cmp r2, 0xEF - ble _0801CF9C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801CFB4: .4byte gUnknown_203B244 - thumb_func_end sub_801CF94 - - thumb_func_start sub_801CFB8 -sub_801CFB8: - push {lr} - movs r3, 0 - ldr r0, _0801CFDC - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0xF4 - movs r2, 0xEF -_0801CFC6: - ldr r0, [r1] - cmp r0, 0 - beq _0801CFCE - adds r3, 0x1 -_0801CFCE: - adds r1, 0x4 - subs r2, 0x1 - cmp r2, 0 - bge _0801CFC6 - adds r0, r3, 0 - pop {r1} - bx r1 - .align 2, 0 -_0801CFDC: .4byte gUnknown_203B244 - thumb_func_end sub_801CFB8 - - thumb_func_start sub_801CFE0 -sub_801CFE0: - lsls r0, 24 - ldr r1, _0801CFF0 - ldr r1, [r1] - lsrs r0, 22 - adds r1, 0xF4 - adds r1, r0 - ldr r0, [r1] - bx lr - .align 2, 0 -_0801CFF0: .4byte gUnknown_203B244 - thumb_func_end sub_801CFE0 - - thumb_func_start sub_801CFF4 -sub_801CFF4: - lsls r0, 24 - ldr r2, _0801D004 - ldr r2, [r2] - lsrs r0, 22 - adds r2, 0xF4 - adds r2, r0 - str r1, [r2] - bx lr - .align 2, 0 -_0801D004: .4byte gUnknown_203B244 - thumb_func_end sub_801CFF4 - - thumb_func_start sub_801D008 -sub_801D008: - ldr r0, _0801D010 - ldr r0, [r0] - bx lr - .align 2, 0 -_0801D010: .4byte gUnknown_203B244 - thumb_func_end sub_801D008 - - thumb_func_start sub_801D014 -sub_801D014: - push {r4,r5,lr} - adds r5, r0, 0 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _0801D054 - movs r0, 0x8C - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - adds r2, r0, 0 - str r2, [r4] - ldr r0, _0801D058 - ldr r0, [r0] - str r0, [r2, 0x14] - str r5, [r2] - cmp r5, 0 - beq _0801D088 - movs r3, 0 - ldr r0, _0801D05C - ldr r1, [r0] - adds r4, r0, 0 - cmp r5, r1 - bne _0801D060 - strh r3, [r2, 0x4] - b _0801D08C - .align 2, 0 -_0801D054: .4byte gUnknown_203B250 -_0801D058: .4byte gUnknown_203B254 -_0801D05C: .4byte gUnknown_203B45C -_0801D060: - adds r3, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r3, r0 - bgt _0801D08C - ldr r0, _0801D084 - ldr r2, [r0] - lsls r0, r3, 16 - asrs r0, 16 - movs r1, 0x58 - muls r1, r0 - ldr r0, [r4] - adds r0, r1 - ldr r1, [r2] - cmp r1, r0 - bne _0801D060 - strh r3, [r2, 0x4] - b _0801D08C - .align 2, 0 -_0801D084: .4byte gUnknown_203B250 -_0801D088: - ldr r0, _0801D0C4 - strh r0, [r2, 0x4] -_0801D08C: - bl sub_80A5728 - lsls r0, 16 - asrs r0, 16 - bl sub_8002658 - ldr r4, _0801D0C8 - ldr r1, [r4] - movs r5, 0 - strb r0, [r1, 0x6] - ldr r0, [r4] - strb r5, [r0, 0x8] - ldr r0, [r4] - strb r5, [r0, 0x9] - bl sub_808D33C - ldr r1, [r4] - str r0, [r1, 0xC] - strb r5, [r1, 0x7] - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0 - beq _0801D0CC - movs r0, 0x5 - bl sub_801D208 - b _0801D0D2 - .align 2, 0 -_0801D0C4: .4byte 0x0000019d -_0801D0C8: .4byte gUnknown_203B250 -_0801D0CC: - movs r0, 0 - bl sub_801D208 -_0801D0D2: - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_801D014 - - thumb_func_start sub_801D0DC -sub_801D0DC: - push {lr} - ldr r0, _0801D0F4 - ldr r0, [r0] - ldr r0, [r0, 0x10] - cmp r0, 0xC - bhi _0801D16C - lsls r0, 2 - ldr r1, _0801D0F8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801D0F4: .4byte gUnknown_203B250 -_0801D0F8: .4byte _0801D0FC - .align 2, 0 -_0801D0FC: - .4byte _0801D130 - .4byte _0801D130 - .4byte _0801D16C - .4byte _0801D136 - .4byte _0801D13C - .4byte _0801D142 - .4byte _0801D148 - .4byte _0801D148 - .4byte _0801D14E - .4byte _0801D154 - .4byte _0801D15A - .4byte _0801D160 - .4byte _0801D166 -_0801D130: - bl sub_801D680 - b _0801D170 -_0801D136: - bl sub_801D760 - b _0801D170 -_0801D13C: - bl sub_801D77C - b _0801D170 -_0801D142: - bl sub_801D798 - b _0801D170 -_0801D148: - bl sub_801D7CC - b _0801D170 -_0801D14E: - bl sub_801D808 - b _0801D170 -_0801D154: - bl sub_801D824 - b _0801D170 -_0801D15A: - bl sub_801D840 - b _0801D170 -_0801D160: - bl sub_801D85C - b _0801D170 -_0801D166: - bl sub_801D878 - b _0801D170 -_0801D16C: - movs r0, 0x3 - b _0801D172 -_0801D170: - movs r0, 0 -_0801D172: - pop {r1} - bx r1 - thumb_func_end sub_801D0DC - - thumb_func_start sub_801D178 -sub_801D178: - push {r4,lr} - ldr r0, _0801D188 - ldr r4, [r0] - ldrb r0, [r4, 0x9] - cmp r0, 0 - beq _0801D18C - movs r0, 0x2 - b _0801D1CC - .align 2, 0 -_0801D188: .4byte gUnknown_203B250 -_0801D18C: - ldrb r0, [r4, 0x7] - cmp r0, 0 - beq _0801D196 - movs r0, 0x3 - b _0801D1CC -_0801D196: - ldrb r0, [r4, 0x8] - cmp r0, 0 - beq _0801D1A0 - movs r0, 0x1 - b _0801D1CC -_0801D1A0: - bl sub_808D33C - ldr r1, [r4, 0xC] - cmp r1, r0 - bne _0801D1C6 - movs r0, 0x7 - bl sub_80A7AE8 - lsls r0, 16 - cmp r0, 0 - blt _0801D1CA - bl sub_808D3F8 - ldrh r0, [r0] - lsrs r0, 1 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0801D1CA -_0801D1C6: - movs r0, 0x4 - b _0801D1CC -_0801D1CA: - movs r0, 0 -_0801D1CC: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_801D178 - - thumb_func_start sub_801D1D4 -sub_801D1D4: - ldr r0, _0801D1DC - ldr r0, [r0] - ldrb r0, [r0, 0x7] - bx lr - .align 2, 0 -_0801D1DC: .4byte gUnknown_203B250 - thumb_func_end sub_801D1D4 - - thumb_func_start sub_801D1E0 -sub_801D1E0: - push {r4,lr} - ldr r4, _0801D200 - ldr r2, [r4] - cmp r2, 0 - beq _0801D1FA - ldr r0, _0801D204 - ldr r1, [r2, 0x14] - str r1, [r0] - adds r0, r2, 0 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801D1FA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801D200: .4byte gUnknown_203B250 -_0801D204: .4byte gUnknown_203B254 - thumb_func_end sub_801D1E0 - - thumb_func_start sub_801D208 -sub_801D208: - push {lr} - ldr r1, _0801D21C - ldr r1, [r1] - str r0, [r1, 0x10] - bl sub_801D220 - bl sub_801D3A8 - pop {r0} - bx r0 - .align 2, 0 -_0801D21C: .4byte gUnknown_203B250 - thumb_func_end sub_801D208 - - thumb_func_start sub_801D220 -sub_801D220: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r4, _0801D248 - ldr r0, [r4] - adds r0, 0xB8 - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0, 0x10] - cmp r0, 0 - beq _0801D250 - cmp r0, 0x1 - beq _0801D2C0 - movs r2, 0 - adds r7, r4, 0 - ldr r3, _0801D24C - b _0801D368 - .align 2, 0 -_0801D248: .4byte gUnknown_203B250 -_0801D24C: .4byte gUnknown_80DBE7C -_0801D250: - bl sub_801D4C0 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0 - beq _0801D290 - adds r7, r4, 0 - ldr r0, _0801D288 - mov r9, r0 - mov r12, r7 - ldr r2, _0801D28C - mov r8, r2 - movs r3, 0 - movs r2, 0x3 -_0801D26C: - mov r4, r12 - ldr r1, [r4] - adds r1, r3 - adds r1, 0xB8 - mov r0, r8 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0801D26C - b _0801D2F6 - .align 2, 0 -_0801D288: .4byte gUnknown_80DBE98 -_0801D28C: .4byte gUnknown_80DBE7C -_0801D290: - adds r7, r4, 0 - mov r8, r7 - ldr r6, _0801D2BC - mov r9, r6 - movs r3, 0 - movs r2, 0x3 -_0801D29C: - mov r0, r8 - ldr r1, [r0] - adds r1, r3 - adds r1, 0xB8 - mov r0, r9 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - movs r0, 0x18 - add r9, r0 - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0801D29C - b _0801D34E - .align 2, 0 -_0801D2BC: .4byte gUnknown_80DBEB0 -_0801D2C0: - bl sub_801D4C0 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0 - beq _0801D324 - adds r7, r4, 0 - ldr r2, _0801D31C - mov r9, r2 - mov r8, r7 - ldr r3, _0801D320 - mov r12, r3 - movs r3, 0 - movs r2, 0x3 -_0801D2DC: - mov r4, r8 - ldr r1, [r4] - adds r1, r3 - adds r1, 0xB8 - mov r0, r12 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0801D2DC -_0801D2F6: - ldr r1, [r7] - adds r1, 0xB8 - mov r0, r9 - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - ldr r1, [r7] - adds r0, r1, 0 - adds r0, 0xB8 - adds r1, 0x68 - bl sub_8012CAC - ldr r0, [r7] - adds r0, 0xC4 - movs r1, 0x9 - strh r1, [r0] - b _0801D384 - .align 2, 0 -_0801D31C: .4byte gUnknown_80DBE98 -_0801D320: .4byte gUnknown_80DBE7C -_0801D324: - adds r7, r4, 0 - mov r8, r7 - ldr r6, _0801D364 - mov r9, r6 - movs r3, 0 - movs r2, 0x3 -_0801D330: - mov r0, r8 - ldr r1, [r0] - adds r1, r3 - adds r1, 0xB8 - mov r0, r9 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - movs r0, 0x18 - add r9, r0 - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0801D330 -_0801D34E: - ldr r1, [r7] - adds r0, r1, 0 - adds r0, 0xB8 - adds r1, 0x68 - bl sub_8012CAC - ldr r0, [r7] - adds r0, 0xC4 - movs r1, 0x8 - strh r1, [r0] - b _0801D384 - .align 2, 0 -_0801D364: .4byte gUnknown_80DBEB0 -_0801D368: - ldr r0, [r7] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r0, r1 - adds r0, 0xB8 - adds r1, r3, 0 - ldm r1!, {r4-r6} - stm r0!, {r4-r6} - ldm r1!, {r4-r6} - stm r0!, {r4-r6} - adds r2, 0x1 - cmp r2, 0x3 - ble _0801D368 -_0801D384: - bl sub_8004914 - ldr r0, _0801D3A4 - ldr r0, [r0] - adds r0, 0xB8 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801D3A4: .4byte gUnknown_203B250 - thumb_func_end sub_801D220 - - thumb_func_start sub_801D3A8 -sub_801D3A8: - push {r4-r6,lr} - sub sp, 0x8 - ldr r1, _0801D3C4 - ldr r0, [r1] - ldr r0, [r0, 0x10] - adds r6, r1, 0 - cmp r0, 0xC - bls _0801D3BA - b _0801D4B6 -_0801D3BA: - lsls r0, 2 - ldr r1, _0801D3C8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801D3C4: .4byte gUnknown_203B250 -_0801D3C8: .4byte _0801D3CC - .align 2, 0 -_0801D3CC: - .4byte _0801D400 - .4byte _0801D400 - .4byte _0801D4B6 - .4byte _0801D458 - .4byte _0801D462 - .4byte _0801D468 - .4byte _0801D472 - .4byte _0801D47A - .4byte _0801D482 - .4byte _0801D490 - .4byte _0801D49C - .4byte _0801D4AA - .4byte _0801D4B2 -_0801D400: - ldr r0, [r6] - ldr r5, [r0] - cmp r5, 0 - beq _0801D438 - ldr r4, _0801D434 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x7 - bl sub_808D9AC - ldr r2, [r6] - str r4, [r2, 0x18] - adds r0, r2, 0 - adds r0, 0x18 - adds r1, r2, 0 - adds r1, 0x68 - adds r3, r2, 0 - adds r3, 0xA8 - ldr r2, [r2, 0x14] - str r2, [sp] - movs r2, 0 - str r2, [sp, 0x4] - bl sub_8012D60 - b _0801D4B6 - .align 2, 0 -_0801D434: .4byte gUnknown_202DF98 -_0801D438: - bl sub_801D894 - ldr r2, [r6] - adds r0, r2, 0 - adds r0, 0x18 - adds r1, r2, 0 - adds r1, 0x68 - adds r3, r2, 0 - adds r3, 0xA8 - ldr r2, [r2, 0x14] - str r2, [sp] - str r5, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _0801D4B6 -_0801D458: - ldr r0, [r6] - ldr r0, [r0] - bl sub_80227B8 - b _0801D4B6 -_0801D462: - bl sub_8027074 - b _0801D4B6 -_0801D468: - ldr r0, [r6] - ldr r0, [r0] - bl sub_8025EF4 - b _0801D4B6 -_0801D472: - movs r0, 0 - bl sub_80252F0 - b _0801D4B6 -_0801D47A: - movs r0, 0x1 - bl sub_80252F0 - b _0801D4B6 -_0801D482: - ldr r0, [r6] - movs r1, 0x4 - ldrsh r0, [r0, r1] - movs r1, 0x2 - bl sub_8024458 - b _0801D4B6 -_0801D490: - ldr r0, [r6] - movs r1, 0x4 - ldrsh r0, [r0, r1] - bl sub_801BEEC - b _0801D4B6 -_0801D49C: - ldr r0, [r6] - ldrb r0, [r0, 0x6] - movs r1, 0x1 - movs r2, 0x2 - bl sub_8021774 - b _0801D4B6 -_0801D4AA: - movs r0, 0 - bl sub_802C860 - b _0801D4B6 -_0801D4B2: - bl sub_801DCC4 -_0801D4B6: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_801D3A8 - - thumb_func_start sub_801D4C0 -sub_801D4C0: - push {r4-r7,lr} - movs r6, 0 - ldr r4, _0801D554 - ldr r0, [r4] - adds r0, 0xA8 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r0, [r4] - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _0801D568 - bl sub_8096E2C - lsls r0, 24 - cmp r0, 0 - beq _0801D534 - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x6C] - ldr r0, _0801D558 - str r0, [r1, 0x68] - bl sub_8090A34 - cmp r0, 0 - bne _0801D4FE - ldr r0, [r4] - adds r0, 0xA8 - movs r1, 0x1 - strh r1, [r0] -_0801D4FE: - ldr r1, [r4] - ldr r0, _0801D55C - str r0, [r1, 0x70] - movs r0, 0x4 - str r0, [r1, 0x74] - movs r6, 0x2 - movs r0, 0x2 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _0801D534 - ldr r1, [r4] - ldr r0, _0801D560 - str r0, [r1, 0x78] - movs r0, 0x9 - str r0, [r1, 0x7C] - bl sub_802C83C - lsls r0, 24 - cmp r0, 0 - beq _0801D532 - ldr r0, [r4] - adds r0, 0xAC - movs r1, 0x1 - strh r1, [r0] -_0801D532: - movs r6, 0x3 -_0801D534: - ldr r4, _0801D554 - ldr r2, [r4] - lsls r3, r6, 3 - adds r0, r2, 0 - adds r0, 0x68 - adds r0, r3 - ldr r1, _0801D564 - str r1, [r0] - adds r2, 0x6C - adds r2, r3 - movs r0, 0xB - str r0, [r2] - adds r6, 0x1 - adds r7, r4, 0 - b _0801D5E6 - .align 2, 0 -_0801D554: .4byte gUnknown_203B250 -_0801D558: .4byte gUnknown_80DBF10 -_0801D55C: .4byte gUnknown_80DBF18 -_0801D560: .4byte gUnknown_80DBF20 -_0801D564: .4byte gUnknown_80DBF2C -_0801D568: - ldr r0, _0801D63C - ldr r1, _0801D640 - bl strcpy - bl sub_8096E2C - lsls r0, 24 - cmp r0, 0 - beq _0801D5B6 - ldr r1, [r4] - ldr r0, _0801D644 - ldr r0, [r0] - str r0, [r1, 0x68] - movs r0, 0x5 - str r0, [r1, 0x6C] - movs r0, 0x4 - bl sub_8024108 - lsls r0, 24 - cmp r0, 0 - beq _0801D59A - ldr r0, [r4] - adds r0, 0xA8 - movs r1, 0x1 - strh r1, [r0] -_0801D59A: - movs r6, 0x1 - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x74] - ldr r0, _0801D648 - str r0, [r1, 0x70] - bl sub_8090A34 - cmp r0, 0 - bne _0801D5B4 - ldr r0, [r4] - adds r0, 0xAA - strh r6, [r0] -_0801D5B4: - movs r6, 0x2 -_0801D5B6: - ldr r5, _0801D64C - ldr r1, [r5] - lsls r2, r6, 3 - adds r3, r1, 0 - adds r3, 0x68 - adds r4, r3, r2 - ldr r0, _0801D650 - ldr r0, [r0] - str r0, [r4] - adds r1, 0x6C - adds r2, r1, r2 - movs r0, 0x8 - str r0, [r2] - adds r6, 0x1 - lsls r2, r6, 3 - adds r3, r2 - ldr r0, _0801D654 - ldr r0, [r0] - str r0, [r3] - adds r1, r2 - movs r0, 0xA - str r0, [r1] - adds r6, 0x1 - adds r7, r5, 0 -_0801D5E6: - ldr r4, [r7] - lsls r2, r6, 3 - adds r0, r4, 0 - adds r0, 0x68 - adds r0, r2 - movs r1, 0 - str r1, [r0] - adds r1, r4, 0 - adds r1, 0x6C - adds r2, r1, r2 - movs r0, 0x1 - str r0, [r2] - movs r3, 0 - cmp r3, r6 - bge _0801D622 - adds r5, r4, 0 - adds r4, 0xA8 - adds r2, r1, 0 -_0801D60A: - ldrh r0, [r4] - cmp r0, 0 - bne _0801D618 - ldr r1, [r2] - ldr r0, [r5, 0x14] - cmp r1, r0 - beq _0801D67A -_0801D618: - adds r4, 0x2 - adds r2, 0x8 - adds r3, 0x1 - cmp r3, r6 - blt _0801D60A -_0801D622: - movs r3, 0 - cmp r3, r6 - bge _0801D67A - ldr r1, [r7] - adds r0, r1, 0 - adds r0, 0xA8 - ldrh r0, [r0] - cmp r0, 0 - bne _0801D658 - ldr r0, [r1, 0x6C] - str r0, [r1, 0x14] - b _0801D67A - .align 2, 0 -_0801D63C: .4byte gUnknown_202DF98 -_0801D640: .4byte gUnknown_80DBF34 -_0801D644: .4byte gUnknown_80D49A8 -_0801D648: .4byte gUnknown_80DBF10 -_0801D64C: .4byte gUnknown_203B250 -_0801D650: .4byte gUnknown_80D4970 -_0801D654: .4byte gUnknown_80D49B4 -_0801D658: - adds r3, 0x1 - cmp r3, r6 - bge _0801D67A - ldr r2, [r7] - lsls r0, r3, 1 - adds r1, r2, 0 - adds r1, 0xA8 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _0801D658 - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0x6C - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x14] -_0801D67A: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_801D4C0 - - thumb_func_start sub_801D680 -sub_801D680: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - ldr r4, _0801D6C0 - ldr r0, [r4] - adds r0, 0x18 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0801D6AC - ldr r0, [r4] - adds r0, 0x18 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _0801D6AC - ldr r0, [r4] - str r1, [r0, 0x14] -_0801D6AC: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0xA - bhi _0801D756 - lsls r0, 2 - ldr r1, _0801D6C4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801D6C0: .4byte gUnknown_203B250 -_0801D6C4: .4byte _0801D6C8 - .align 2, 0 -_0801D6C8: - .4byte _0801D750 - .4byte _0801D6F4 - .4byte _0801D704 - .4byte _0801D6FC - .4byte _0801D70C - .4byte _0801D714 - .4byte _0801D71C - .4byte _0801D724 - .4byte _0801D72C - .4byte _0801D734 - .4byte _0801D748 -_0801D6F4: - movs r0, 0x3 - bl sub_801D208 - b _0801D756 -_0801D6FC: - movs r0, 0x6 - bl sub_801D208 - b _0801D756 -_0801D704: - movs r0, 0x4 - bl sub_801D208 - b _0801D756 -_0801D70C: - movs r0, 0x7 - bl sub_801D208 - b _0801D756 -_0801D714: - movs r0, 0x8 - bl sub_801D208 - b _0801D756 -_0801D71C: - movs r0, 0x9 - bl sub_801D208 - b _0801D756 -_0801D724: - movs r0, 0xA - bl sub_801D208 - b _0801D756 -_0801D72C: - movs r0, 0xB - bl sub_801D208 - b _0801D756 -_0801D734: - ldr r0, _0801D744 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x9] - movs r0, 0x2 - bl sub_801D208 - b _0801D756 - .align 2, 0 -_0801D744: .4byte gUnknown_203B250 -_0801D748: - movs r0, 0xC - bl sub_801D208 - b _0801D756 -_0801D750: - movs r0, 0x2 - bl sub_801D208 -_0801D756: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801D680 - - thumb_func_start sub_801D760 -sub_801D760: - push {lr} - bl sub_8022860 - cmp r0, 0x1 - bls _0801D778 - cmp r0, 0x3 - bhi _0801D778 - bl sub_8022908 - movs r0, 0x1 - bl sub_801D208 -_0801D778: - pop {r0} - bx r0 - thumb_func_end sub_801D760 - - thumb_func_start sub_801D77C -sub_801D77C: - push {lr} - bl sub_80270A4 - cmp r0, 0x1 - bls _0801D794 - cmp r0, 0x3 - bhi _0801D794 - bl sub_8027168 - movs r0, 0x1 - bl sub_801D208 -_0801D794: - pop {r0} - bx r0 - thumb_func_end sub_801D77C - - thumb_func_start sub_801D798 -sub_801D798: - push {lr} - bl sub_8025F68 - cmp r0, 0x1 - bls _0801D7C2 - cmp r0, 0x3 - bhi _0801D7C2 - bl sub_802604C - lsls r0, 24 - cmp r0, 0 - beq _0801D7B8 - ldr r0, _0801D7C8 - ldr r1, [r0] - ldrb r0, [r1, 0x6] - strb r0, [r1, 0x7] -_0801D7B8: - bl sub_8026058 - movs r0, 0x2 - bl sub_801D208 -_0801D7C2: - pop {r0} - bx r0 - .align 2, 0 -_0801D7C8: .4byte gUnknown_203B250 - thumb_func_end sub_801D798 - - thumb_func_start sub_801D7CC -sub_801D7CC: - push {r4,lr} - bl sub_8025354 - cmp r0, 0x1 - bls _0801D802 - cmp r0, 0x3 - bhi _0801D802 - bl sub_802540C - ldr r4, _0801D7F8 - ldr r1, [r4] - strb r0, [r1, 0x7] - bl sub_8025418 - ldr r0, [r4] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0801D7FC - movs r0, 0x2 - bl sub_801D208 - b _0801D802 - .align 2, 0 -_0801D7F8: .4byte gUnknown_203B250 -_0801D7FC: - movs r0, 0x1 - bl sub_801D208 -_0801D802: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801D7CC - - thumb_func_start sub_801D808 -sub_801D808: - push {lr} - bl sub_80244E4 - cmp r0, 0x1 - bls _0801D820 - cmp r0, 0x3 - bhi _0801D820 - bl sub_802453C - movs r0, 0x1 - bl sub_801D208 -_0801D820: - pop {r0} - bx r0 - thumb_func_end sub_801D808 - - thumb_func_start sub_801D824 -sub_801D824: - push {lr} - bl sub_801BF48 - cmp r0, 0x1 - bls _0801D83C - cmp r0, 0x3 - bhi _0801D83C - bl sub_801BF98 - movs r0, 0x1 - bl sub_801D208 -_0801D83C: - pop {r0} - bx r0 - thumb_func_end sub_801D824 - - thumb_func_start sub_801D840 -sub_801D840: - push {lr} - bl sub_80217EC - cmp r0, 0x1 - bls _0801D858 - cmp r0, 0x3 - bhi _0801D858 - bl sub_8021830 - movs r0, 0x1 - bl sub_801D208 -_0801D858: - pop {r0} - bx r0 - thumb_func_end sub_801D840 - - thumb_func_start sub_801D85C -sub_801D85C: - push {lr} - bl sub_802C898 - cmp r0, 0x1 - bls _0801D874 - cmp r0, 0x3 - bhi _0801D874 - bl sub_802C8F4 - movs r0, 0x1 - bl sub_801D208 -_0801D874: - pop {r0} - bx r0 - thumb_func_end sub_801D85C - - thumb_func_start sub_801D878 -sub_801D878: - push {lr} - bl sub_801DCE8 - cmp r0, 0x1 - bls _0801D890 - cmp r0, 0x3 - bhi _0801D890 - bl sub_801DD50 - movs r0, 0x1 - bl sub_801D208 -_0801D890: - pop {r0} - bx r0 - thumb_func_end sub_801D878 - - thumb_func_start sub_801D894 -sub_801D894: - push {r4-r6,lr} - sub sp, 0x68 - ldr r0, _0801D8A8 - ldr r1, [r0] - ldrb r0, [r1, 0x6] - cmp r0, 0 - bne _0801D8AC - bl sub_8098FB4 - b _0801D8B2 - .align 2, 0 -_0801D8A8: .4byte gUnknown_203B250 -_0801D8AC: - ldrb r0, [r1, 0x6] - bl sub_8092524 -_0801D8B2: - add r2, sp, 0x68 - add r1, sp, 0x4 - movs r3, 0 - bl xxx_format_string - add r0, sp, 0x4 - bl sub_8008ED0 - movs r4, 0x80 - subs r4, r0 - lsrs r0, r4, 31 - adds r4, r0 - asrs r4, 1 - movs r0, 0x1 - bl sub_8008C54 - movs r0, 0x1 - bl sub_80073B8 - movs r6, 0 - str r6, [sp] - adds r0, r4, 0 - movs r1, 0x4 - add r2, sp, 0x4 - movs r3, 0x1 - bl xxx_call_draw_string - movs r0, 0x1 - bl sub_80073E0 - movs r0, 0x2 - bl sub_8008C54 - movs r0, 0x2 - bl sub_80073B8 - movs r0, 0x2 - movs r1, 0x8 - movs r2, 0x6 - bl sub_801D970 - ldr r5, _0801D964 - bl sub_8092178 - lsls r0, 24 - lsrs r0, 24 - bl sub_80921A8 - adds r4, r0, 0 - bl sub_8092110 - adds r3, r0, 0 - add r0, sp, 0x4 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_800D158 - str r6, [sp] - movs r0, 0x20 - movs r1, 0x4 - add r2, sp, 0x4 - movs r3, 0x2 - bl xxx_call_draw_string - ldr r1, _0801D968 - ldr r0, _0801D96C - ldr r0, [r0] - movs r2, 0x98 - lsls r2, 2 - adds r0, r2 - ldr r2, [r0] - add r0, sp, 0x4 - bl sub_800D158 - str r6, [sp] - movs r0, 0x20 - movs r1, 0x12 - add r2, sp, 0x4 - movs r3, 0x2 - bl xxx_call_draw_string - movs r0, 0x2 - bl sub_80073E0 - add sp, 0x68 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801D964: .4byte gUnknown_80DBF3C -_0801D968: .4byte gUnknown_80DBF4C -_0801D96C: .4byte gUnknown_203B460 - thumb_func_end sub_801D894 - - thumb_func_start sub_801D970 -sub_801D970: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - mov r8, r0 - mov r9, r1 - mov r10, r2 - ldr r0, _0801D9DC - ldr r1, _0801D9E0 - bl OpenFileAndGetFileDataPtr - adds r7, r0, 0 - ldr r0, [r7, 0x4] - ldr r6, [r0] - ldr r5, [r0, 0x4] - movs r4, 0 -_0801D994: - adds r0, r4, 0 - adds r0, 0xE0 - adds r1, r5, 0 - bl SetBGPaletteBufferColorArray - adds r5, 0x4 - adds r4, 0x1 - cmp r4, 0xF - ble _0801D994 - bl sub_8092178 - lsls r0, 24 - lsrs r0, 17 - adds r6, r0 - movs r0, 0x10 - str r0, [sp] - str r6, [sp, 0x4] - movs r0, 0xE - str r0, [sp, 0x8] - mov r0, r8 - mov r1, r9 - mov r2, r10 - movs r3, 0x10 - bl sub_8007E20 - adds r0, r7, 0 - bl CloseFile - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801D9DC: .4byte gUnknown_80DBF60 -_0801D9E0: .4byte gUnknown_8380000 - thumb_func_end sub_801D970 - - thumb_func_start sub_801D9E4 -sub_801D9E4: - push {r4,r5,lr} - ldr r4, _0801DA50 - movs r0, 0xA0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r1, 0x3 - str r1, [r0, 0x34] - adds r1, r0, 0 - adds r1, 0x84 - str r1, [r0, 0x38] - adds r0, 0x3C - bl sub_8006518 - ldr r1, [r4] - ldr r2, [r1, 0x34] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x3C - ldr r0, _0801DA54 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldr r0, [r4] - ldr r1, [r0, 0x38] - adds r0, 0x9C - str r0, [r1, 0x14] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - ldr r3, [r0, 0x34] - movs r1, 0xE5 - movs r2, 0xA - bl sub_8013818 - bl sub_801DB54 - bl sub_801DBD4 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0801DA50: .4byte gUnknown_203B258 -_0801DA54: .4byte gUnknown_80DBF88 - thumb_func_end sub_801D9E4 - - thumb_func_start sub_801DA58 -sub_801DA58: - push {lr} - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - ldr r0, _0801DA74 - ldr r0, [r0] - bl sub_8013878 - bl sub_801DB54 - bl sub_801DBD4 - pop {r0} - bx r0 - .align 2, 0 -_0801DA74: .4byte gUnknown_203B258 - thumb_func_end sub_801DA58 - - thumb_func_start sub_801DA78 -sub_801DA78: - push {r4,lr} - ldr r4, _0801DA94 - ldr r0, [r4] - bl GetKeyPress - cmp r0, 0x1 - beq _0801DA98 - cmp r0, 0x2 - bne _0801DA9C - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0801DAB8 - .align 2, 0 -_0801DA94: .4byte gUnknown_203B258 -_0801DA98: - movs r0, 0x3 - b _0801DAB8 -_0801DA9C: - ldr r0, [r4] - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0801DAAE - movs r0, 0 - b _0801DAB8 -_0801DAAE: - bl sub_801DB54 - bl sub_801DBD4 - movs r0, 0x1 -_0801DAB8: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_801DA78 - - thumb_func_start sub_801DAC0 -sub_801DAC0: - ldr r0, _0801DAD8 - ldr r1, [r0] - ldrh r2, [r1, 0x1E] - ldrh r0, [r1, 0x1C] - adds r3, r0, 0 - muls r3, r2 - adds r0, r3, 0 - ldrh r1, [r1, 0x18] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - bx lr - .align 2, 0 -_0801DAD8: .4byte gUnknown_203B258 - thumb_func_end sub_801DAC0 - - thumb_func_start sub_801DADC -sub_801DADC: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _0801DB08 - ldr r0, [r5] - movs r1, 0xE5 - strh r1, [r0, 0x22] - bl sub_8013984 - bl sub_801DB54 - bl sub_801DBD4 - cmp r4, 0 - beq _0801DB02 - ldr r0, [r5] - bl AddMenuCursorSprite -_0801DB02: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801DB08: .4byte gUnknown_203B258 - thumb_func_end sub_801DADC - - thumb_func_start sub_801DB0C -sub_801DB0C: - push {r4,r5,lr} - ldr r4, _0801DB4C - ldr r2, [r4] - cmp r2, 0 - beq _0801DB46 - ldr r0, [r2, 0x34] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x3C - ldr r0, _0801DB50 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801DB46: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801DB4C: .4byte gUnknown_203B258 -_0801DB50: .4byte gUnknown_80DBF70 - thumb_func_end sub_801DB0C - - thumb_func_start sub_801DB54 -sub_801DB54: - push {r4,lr} - ldr r4, _0801DBD0 - ldr r0, [r4] - adds r0, 0x9C - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9D - strb r2, [r0] - ldr r0, [r4] - adds r0, 0x9E - movs r1, 0x8 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9F - strb r2, [r0] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x1A - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x34] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x4A - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x34] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x4C - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801DBD0: .4byte gUnknown_203B258 - thumb_func_end sub_801DB54 - - thumb_func_start sub_801DBD4 -sub_801DBD4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - ldr r5, _0801DCB4 - ldr r0, [r5] - ldr r0, [r0, 0x34] - bl sub_8008C54 - ldr r0, [r5] - ldr r0, [r0, 0x34] - bl sub_80073B8 - ldr r2, _0801DCB8 - ldr r0, [r5] - ldr r3, [r0, 0x34] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x9E - ldrb r4, [r0] - lsls r4, 3 - subs r4, 0x2 - movs r0, 0x1E - ldrsh r2, [r1, r0] - adds r2, 0x1 - movs r0, 0x7 - str r0, [sp] - ldr r0, [r1, 0x34] - str r0, [sp, 0x4] - adds r0, r4, 0 - movs r1, 0 - movs r3, 0x2 - bl sub_8012BC4 - movs r6, 0 - ldr r0, [r5] - movs r1, 0x1A - ldrsh r0, [r0, r1] - cmp r6, r0 - bge _0801DC9C - adds r7, r5, 0 - mov r8, r6 -_0801DC34: - ldr r0, [r7] - ldrh r2, [r0, 0x1E] - ldrh r1, [r0, 0x1C] - adds r3, r2, 0 - muls r3, r1 - adds r1, r3, 0 - adds r1, r6 - lsls r1, 16 - asrs r1, 16 - lsls r5, r1, 1 - adds r5, r1 - lsls r5, 2 - ldr r1, _0801DCBC - adds r5, r1 - movs r2, 0x4 - ldrsh r1, [r5, r2] - lsls r4, r1, 3 - subs r4, r1 - lsls r4, 2 - ldr r1, _0801DCC0 - adds r4, r1 - adds r1, r6, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r2, [r4] - ldr r0, [r7] - ldr r3, [r0, 0x34] - mov r0, r8 - str r0, [sp] - movs r0, 0x8 - bl xxx_call_draw_string - ldr r0, [r7] - adds r1, r6, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r2, [r5, 0x8] - ldr r0, [r7] - ldr r3, [r0, 0x34] - mov r0, r8 - str r0, [sp] - movs r0, 0x3E - bl xxx_call_draw_string - adds r6, 0x1 - ldr r0, [r7] - movs r1, 0x1A - ldrsh r0, [r0, r1] - cmp r6, r0 - blt _0801DC34 -_0801DC9C: - ldr r0, _0801DCB4 - ldr r0, [r0] - ldr r0, [r0, 0x34] - bl sub_80073E0 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801DCB4: .4byte gUnknown_203B258 -_0801DCB8: .4byte gUnknown_80DBFA0 -_0801DCBC: .4byte gUnknown_811BAF4 -_0801DCC0: .4byte gUnknown_81188F0 - thumb_func_end sub_801DBD4 - - thumb_func_start sub_801DCC4 -sub_801DCC4: - push {r4,lr} - ldr r4, _0801DCE4 - movs r0, 0x8E - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r0, 0 - bl sub_801DD6C - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0801DCE4: .4byte gUnknown_203B25C - thumb_func_end sub_801DCC4 - - thumb_func_start sub_801DCE8 -sub_801DCE8: - push {lr} - ldr r0, _0801DD00 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x7 - bhi _0801DD48 - lsls r0, 2 - ldr r1, _0801DD04 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801DD00: .4byte gUnknown_203B25C -_0801DD04: .4byte _0801DD08 - .align 2, 0 -_0801DD08: - .4byte _0801DD2C - .4byte _0801DD2C - .4byte _0801DD28 - .4byte _0801DD32 - .4byte _0801DD32 - .4byte _0801DD38 - .4byte _0801DD3E - .4byte _0801DD44 -_0801DD28: - movs r0, 0x3 - b _0801DD4A -_0801DD2C: - bl sub_801E028 - b _0801DD48 -_0801DD32: - bl sub_801E088 - b _0801DD48 -_0801DD38: - bl sub_801E0E0 - b _0801DD48 -_0801DD3E: - bl sub_801E0FC - b _0801DD48 -_0801DD44: - bl sub_801E138 -_0801DD48: - movs r0, 0 -_0801DD4A: - pop {r1} - bx r1 - thumb_func_end sub_801DCE8 - - thumb_func_start sub_801DD50 -sub_801DD50: - push {r4,lr} - ldr r4, _0801DD68 - ldr r0, [r4] - cmp r0, 0 - beq _0801DD62 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801DD62: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801DD68: .4byte gUnknown_203B25C - thumb_func_end sub_801DD50 - - thumb_func_start sub_801DD6C -sub_801DD6C: - push {lr} - ldr r1, _0801DD80 - ldr r1, [r1] - str r0, [r1] - bl sub_801DD84 - bl sub_801DED0 - pop {r0} - bx r0 - .align 2, 0 -_0801DD80: .4byte gUnknown_203B25C - thumb_func_end sub_801DD6C - - thumb_func_start sub_801DD84 -sub_801DD84: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r4, _0801DDAC - ldr r0, [r4] - adds r0, 0xBC - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0 - beq _0801DDB4 - cmp r0, 0x1 - beq _0801DE38 - movs r3, 0 - adds r7, r4, 0 - ldr r2, _0801DDB0 - b _0801DE90 - .align 2, 0 -_0801DDAC: .4byte gUnknown_203B25C -_0801DDB0: .4byte gUnknown_80DBFB0 -_0801DDB4: - bl sub_801DFA4 - movs r3, 0 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xAC - ldrh r0, [r0] - cmp r0, 0 - bne _0801DDCE - ldr r0, [r1, 0x70] - str r0, [r1, 0x18] - adds r7, r4, 0 - b _0801DDF2 -_0801DDCE: - adds r3, 0x1 - ldr r7, _0801DE2C - cmp r3, 0x7 - bgt _0801DDF2 - ldr r2, [r7] - lsls r0, r3, 1 - adds r1, r2, 0 - adds r1, 0xAC - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _0801DDCE - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0x70 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x18] -_0801DDF2: - ldr r0, _0801DE30 - mov r9, r0 - ldr r2, _0801DE2C - mov r12, r2 - ldr r3, _0801DE34 - mov r8, r3 - movs r2, 0 - movs r3, 0x3 -_0801DE02: - mov r4, r12 - ldr r1, [r4] - adds r1, r2 - adds r1, 0xBC - mov r0, r8 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - adds r2, 0x18 - subs r3, 0x1 - cmp r3, 0 - bge _0801DE02 - ldr r1, [r7] - adds r1, 0xBC - mov r0, r9 - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - b _0801DE70 - .align 2, 0 -_0801DE2C: .4byte gUnknown_203B25C -_0801DE30: .4byte gUnknown_80DBFCC -_0801DE34: .4byte gUnknown_80DBFB0 -_0801DE38: - bl sub_801DFA4 - mov r8, r4 - ldr r6, _0801DE88 - mov r12, r6 - mov r7, r8 - movs r2, 0 - movs r3, 0x3 -_0801DE48: - mov r0, r8 - ldr r1, [r0] - adds r1, r2 - adds r1, 0xBC - mov r0, r12 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - adds r2, 0x18 - subs r3, 0x1 - cmp r3, 0 - bge _0801DE48 - ldr r1, [r7] - adds r1, 0xBC - ldr r0, _0801DE8C - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} -_0801DE70: - ldr r1, [r7] - adds r0, r1, 0 - adds r0, 0xBC - adds r1, 0x6C - bl sub_8012CAC - ldr r0, [r7] - adds r0, 0xC8 - movs r1, 0xA - strh r1, [r0] - b _0801DEAC - .align 2, 0 -_0801DE88: .4byte gUnknown_80DBFB0 -_0801DE8C: .4byte gUnknown_80DBFCC -_0801DE90: - ldr r0, [r7] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r0, r1 - adds r0, 0xBC - adds r1, r2, 0 - ldm r1!, {r4-r6} - stm r0!, {r4-r6} - ldm r1!, {r4-r6} - stm r0!, {r4-r6} - adds r3, 0x1 - cmp r3, 0x3 - ble _0801DE90 -_0801DEAC: - bl sub_8004914 - ldr r0, _0801DECC - ldr r0, [r0] - adds r0, 0xBC - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801DECC: .4byte gUnknown_203B25C - thumb_func_end sub_801DD84 - - thumb_func_start sub_801DED0 -sub_801DED0: - push {r4,r5,lr} - sub sp, 0x14 - ldr r1, _0801DEEC - ldr r0, [r1] - ldr r0, [r0] - adds r3, r1, 0 - cmp r0, 0x7 - bhi _0801DF94 - lsls r0, 2 - ldr r1, _0801DEF0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801DEEC: .4byte gUnknown_203B25C -_0801DEF0: .4byte _0801DEF4 - .align 2, 0 -_0801DEF4: - .4byte _0801DF14 - .4byte _0801DF14 - .4byte _0801DF94 - .4byte _0801DF38 - .4byte _0801DF40 - .4byte _0801DF48 - .4byte _0801DF52 - .4byte _0801DF70 -_0801DF14: - ldr r2, [r3] - ldr r0, _0801DF34 - str r0, [r2, 0x1C] - adds r0, r2, 0 - adds r0, 0x1C - adds r1, r2, 0 - adds r1, 0x6C - adds r3, r2, 0 - adds r3, 0xAC - ldr r2, [r2, 0x18] - str r2, [sp] - movs r2, 0 - str r2, [sp, 0x4] - bl sub_8012D60 - b _0801DF94 - .align 2, 0 -_0801DF34: .4byte gUnknown_80DBFE4 -_0801DF38: - movs r0, 0 - bl sub_801E3F0 - b _0801DF94 -_0801DF40: - movs r0, 0x1 - bl sub_801E510 - b _0801DF94 -_0801DF48: - ldr r0, [r3] - ldr r0, [r0, 0x4] - bl sub_801E658 - b _0801DF94 -_0801DF52: - ldr r1, [r3] - ldr r0, _0801DF6C - adds r1, 0x8 - ldr r0, [r0] - ldm r0!, {r2,r4,r5} - stm r1!, {r2,r4,r5} - ldr r0, [r0] - str r0, [r1] - ldr r0, [r3] - adds r0, 0x8 - bl sub_801E198 - b _0801DF94 - .align 2, 0 -_0801DF6C: .4byte gUnknown_203B46C -_0801DF70: - bl sub_801DFE4 - ldr r0, _0801DF9C - ldr r1, _0801DFA0 - ldr r3, [r1] - adds r3, 0x6C - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r1, 0x20 - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x4 - bl sub_8014248 -_0801DF94: - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801DF9C: .4byte gUnknown_80DBFEC -_0801DFA0: .4byte gUnknown_203B25C - thumb_func_end sub_801DED0 - - thumb_func_start sub_801DFA4 -sub_801DFA4: - push {r4,lr} - ldr r4, _0801DFD8 - ldr r0, [r4] - adds r0, 0xAC - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r0, [r4] - movs r3, 0 - ldr r1, _0801DFDC - str r1, [r0, 0x6C] - movs r1, 0x3 - str r1, [r0, 0x70] - movs r2, 0x1 - ldr r1, _0801DFE0 - str r1, [r0, 0x74] - movs r1, 0x2 - str r1, [r0, 0x78] - str r3, [r0, 0x7C] - adds r0, 0x80 - str r2, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801DFD8: .4byte gUnknown_203B25C -_0801DFDC: .4byte gUnknown_80DC000 -_0801DFE0: .4byte gUnknown_80DC010 - thumb_func_end sub_801DFA4 - - thumb_func_start sub_801DFE4 -sub_801DFE4: - push {r4,lr} - ldr r4, _0801E01C - ldr r0, [r4] - adds r0, 0xAC - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - movs r3, 0 - ldr r0, _0801E020 - ldr r0, [r0] - str r0, [r1, 0x6C] - movs r0, 0x4 - str r0, [r1, 0x70] - movs r2, 0x1 - ldr r0, _0801E024 - ldr r0, [r0] - str r0, [r1, 0x74] - movs r0, 0x5 - str r0, [r1, 0x78] - str r3, [r1, 0x7C] - adds r1, 0x80 - str r2, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801E01C: .4byte gUnknown_203B25C -_0801E020: .4byte gUnknown_80D4920 -_0801E024: .4byte gUnknown_80D4928 - thumb_func_end sub_801DFE4 - - thumb_func_start sub_801E028 -sub_801E028: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - ldr r4, _0801E060 - ldr r0, [r4] - adds r0, 0x1C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0801E050 - ldr r0, [r4] - adds r0, 0x1C - mov r1, sp - bl sub_8013114 - ldr r1, [r4] - ldr r0, [sp] - str r0, [r1, 0x18] -_0801E050: - ldr r0, [sp] - cmp r0, 0x2 - beq _0801E06A - cmp r0, 0x2 - bgt _0801E064 - cmp r0, 0x1 - beq _0801E07A - b _0801E080 - .align 2, 0 -_0801E060: .4byte gUnknown_203B25C -_0801E064: - cmp r0, 0x3 - beq _0801E072 - b _0801E080 -_0801E06A: - movs r0, 0x3 - bl sub_801DD6C - b _0801E080 -_0801E072: - movs r0, 0x6 - bl sub_801DD6C - b _0801E080 -_0801E07A: - movs r0, 0x2 - bl sub_801DD6C -_0801E080: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801E028 - - thumb_func_start sub_801E088 -sub_801E088: - push {lr} - movs r0, 0x1 - bl sub_801E474 - cmp r0, 0x4 - bhi _0801E0DA - lsls r0, 2 - ldr r1, _0801E0A0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801E0A0: .4byte _0801E0A4 - .align 2, 0 -_0801E0A4: - .4byte _0801E0DA - .4byte _0801E0DA - .4byte _0801E0D0 - .4byte _0801E0B8 - .4byte _0801E0B8 -_0801E0B8: - bl sub_801E4F4 - ldr r1, _0801E0CC - ldr r1, [r1] - str r0, [r1, 0x4] - movs r0, 0x5 - bl sub_801DD6C - b _0801E0DA - .align 2, 0 -_0801E0CC: .4byte gUnknown_203B25C -_0801E0D0: - bl sub_801E54C - movs r0, 0x1 - bl sub_801DD6C -_0801E0DA: - pop {r0} - bx r0 - thumb_func_end sub_801E088 - - thumb_func_start sub_801E0E0 -sub_801E0E0: - push {lr} - bl sub_801E6CC - cmp r0, 0x1 - bls _0801E0F8 - cmp r0, 0x3 - bhi _0801E0F8 - bl sub_801E724 - movs r0, 0x4 - bl sub_801DD6C -_0801E0F8: - pop {r0} - bx r0 - thumb_func_end sub_801E0E0 - - thumb_func_start sub_801E0FC -sub_801E0FC: - push {lr} - bl sub_801E218 - cmp r0, 0x1 - bls _0801E132 - cmp r0, 0x3 - bhi _0801E132 - bl sub_801E2C4 - ldr r0, _0801E128 - ldr r0, [r0] - adds r0, 0x8 - bl sub_80949DC - lsls r0, 24 - cmp r0, 0 - beq _0801E12C - movs r0, 0x1 - bl sub_801DD6C - b _0801E132 - .align 2, 0 -_0801E128: .4byte gUnknown_203B25C -_0801E12C: - movs r0, 0x7 - bl sub_801DD6C -_0801E132: - pop {r0} - bx r0 - thumb_func_end sub_801E0FC - - thumb_func_start sub_801E138 -sub_801E138: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0801E18E - ldr r0, [sp] - cmp r0, 0x4 - beq _0801E15C - cmp r0, 0x4 - bgt _0801E156 - cmp r0, 0x1 - beq _0801E188 - b _0801E18E -_0801E156: - cmp r0, 0x5 - beq _0801E188 - b _0801E18E -_0801E15C: - ldr r1, _0801E180 - ldr r0, _0801E184 - ldr r0, [r0] - ldr r1, [r1] - adds r0, 0x8 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r0] - str r0, [r1] - bl sub_8094C14 - movs r0, 0 - bl sub_8099690 - movs r0, 0x1 - bl sub_801DD6C - b _0801E18E - .align 2, 0 -_0801E180: .4byte gUnknown_203B46C -_0801E184: .4byte gUnknown_203B25C -_0801E188: - movs r0, 0x1 - bl sub_801DD6C -_0801E18E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801E138 - - thumb_func_start sub_801E198 -sub_801E198: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _0801E210 - movs r0, 0xAC - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - stm r0!, {r5} - bl sub_801317C - ldr r1, [r4] - movs r0, 0 - str r0, [r1, 0x44] - adds r0, r1, 0 - adds r0, 0x4C - str r0, [r1, 0x48] - bl sub_8006518 - ldr r1, [r4] - ldr r2, [r1, 0x44] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x4C - ldr r0, _0801E214 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldr r0, [r4] - ldr r0, [r0, 0x48] - movs r1, 0x1 - bl sub_8012D08 - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x4C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x10 - ldr r3, [r1, 0x44] - movs r1, 0x1 - movs r2, 0x1 - bl sub_8013818 - bl nullsub_38 - bl sub_801E310 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0801E210: .4byte gUnknown_203B260 -_0801E214: .4byte gUnknown_80DC03C - thumb_func_end sub_801E198 - - thumb_func_start sub_801E218 -sub_801E218: - push {r4,lr} - movs r4, 0 - bl sub_8012AE8 - cmp r0, 0x2 - beq _0801E238 - cmp r0, 0x2 - bgt _0801E22E - cmp r0, 0x1 - beq _0801E242 - b _0801E294 -_0801E22E: - cmp r0, 0x9 - beq _0801E24C - cmp r0, 0xA - beq _0801E26C - b _0801E294 -_0801E238: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0801E2BE -_0801E242: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0801E2BE -_0801E24C: - ldr r0, _0801E264 - ldr r1, [r0] - movs r2, 0x28 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _0801E294 - ldr r1, [r1] - ldrb r0, [r1, 0x8] - cmp r0, 0 - bne _0801E268 - movs r0, 0x2 - b _0801E28A - .align 2, 0 -_0801E264: .4byte gUnknown_203B260 -_0801E268: - subs r0, 0x1 - b _0801E28A -_0801E26C: - ldr r0, _0801E284 - ldr r1, [r0] - movs r2, 0x28 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _0801E294 - ldr r1, [r1] - ldrb r0, [r1, 0x8] - cmp r0, 0x1 - bls _0801E288 - strb r4, [r1, 0x8] - b _0801E28C - .align 2, 0 -_0801E284: .4byte gUnknown_203B260 -_0801E288: - adds r0, 0x1 -_0801E28A: - strb r0, [r1, 0x8] -_0801E28C: - movs r0, 0x3 - bl sub_80119D4 - movs r4, 0x1 -_0801E294: - ldr r0, _0801E2B8 - ldr r0, [r0] - adds r0, 0x10 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0801E2AA - cmp r4, 0x1 - bne _0801E2BC -_0801E2AA: - bl nullsub_38 - bl sub_801E310 - movs r0, 0x1 - b _0801E2BE - .align 2, 0 -_0801E2B8: .4byte gUnknown_203B260 -_0801E2BC: - movs r0, 0 -_0801E2BE: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_801E218 - - thumb_func_start sub_801E2C4 -sub_801E2C4: - push {r4,r5,lr} - ldr r4, _0801E304 - ldr r2, [r4] - cmp r2, 0 - beq _0801E2FE - ldr r0, [r2, 0x44] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x4C - ldr r0, _0801E308 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x4C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801E2FE: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801E304: .4byte gUnknown_203B260 -_0801E308: .4byte gUnknown_80DC020 - thumb_func_end sub_801E2C4 - - thumb_func_start nullsub_38 -nullsub_38: - bx lr - thumb_func_end nullsub_38 - - thumb_func_start sub_801E310 -sub_801E310: - push {r4-r6,lr} - sub sp, 0x4 - ldr r5, _0801E368 - ldr r0, [r5] - ldr r0, [r0, 0x44] - bl sub_8008C54 - ldr r0, [r5] - ldr r0, [r0, 0x44] - bl sub_80073B8 - ldr r2, _0801E36C - ldr r0, [r5] - ldr r3, [r0, 0x44] - movs r4, 0 - str r4, [sp] - movs r0, 0x10 - movs r1, 0 - bl xxx_call_draw_string - ldr r0, [r5] - adds r0, 0x10 - movs r1, 0 - bl sub_8013800 - adds r6, r0, 0 - ldr r2, _0801E370 - ldr r0, [r5] - ldr r3, [r0, 0x44] - str r4, [sp] - movs r0, 0x8 - adds r1, r6, 0 - bl xxx_call_draw_string - ldr r0, [r5] - ldr r0, [r0] - ldrb r0, [r0, 0x8] - cmp r0, 0x1 - beq _0801E384 - cmp r0, 0x1 - bgt _0801E374 - cmp r0, 0 - beq _0801E37A - b _0801E3D6 - .align 2, 0 -_0801E368: .4byte gUnknown_203B260 -_0801E36C: .4byte gUnknown_80DC054 -_0801E370: .4byte gUnknown_80DC064 -_0801E374: - cmp r0, 0x2 - beq _0801E3B0 - b _0801E3D6 -_0801E37A: - ldr r0, _0801E380 - b _0801E386 - .align 2, 0 -_0801E380: .4byte gUnknown_80DC084 -_0801E384: - ldr r0, _0801E3AC -_0801E386: - bl sub_8008ED0 - adds r4, r0, 0 - ldr r1, [r5] - ldr r0, [r1, 0x44] - ldr r1, [r1] - ldrb r2, [r1, 0x8] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, 0x50 - adds r2, r6, 0 - adds r2, 0xA - movs r3, 0x7 - str r3, [sp] - adds r3, r4, 0 - bl sub_80078A4 - b _0801E3D6 - .align 2, 0 -_0801E3AC: .4byte gUnknown_80DC08C -_0801E3B0: - ldr r0, _0801E3E8 - bl sub_8008ED0 - adds r4, r0, 0 - ldr r1, [r5] - ldr r0, [r1, 0x44] - ldr r1, [r1] - ldrb r2, [r1, 0x8] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, 0x50 - adds r2, r6, 0 - adds r2, 0xA - movs r3, 0x7 - str r3, [sp] - adds r3, r4, 0 - bl sub_80078A4 -_0801E3D6: - ldr r0, _0801E3EC - ldr r0, [r0] - ldr r0, [r0, 0x44] - bl sub_80073E0 - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801E3E8: .4byte gUnknown_80DC090 -_0801E3EC: .4byte gUnknown_203B260 - thumb_func_end sub_801E310 - - thumb_func_start sub_801E3F0 -sub_801E3F0: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r4, _0801E46C - ldr r0, [r4] - cmp r0, 0 - bne _0801E406 - movs r0, 0x9C - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] -_0801E406: - ldr r0, [r4] - str r5, [r0, 0x34] - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 3 - adds r1, 0x3C - adds r1, r0, r1 - str r1, [r0, 0x38] - adds r0, 0x3C - bl sub_8006518 - ldr r1, [r4] - ldr r2, [r1, 0x34] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x3C - ldr r0, _0801E470 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldr r0, [r4] - ldr r0, [r0, 0x38] - movs r1, 0xA - bl sub_8012D08 - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x5 - movs r2, 0xA - adds r3, r5, 0 - bl sub_8013818 - bl sub_801E594 - bl sub_801E5E8 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0801E46C: .4byte gUnknown_203B264 -_0801E470: .4byte gUnknown_80DC0BC - thumb_func_end sub_801E3F0 - - thumb_func_start sub_801E474 -sub_801E474: - push {lr} - lsls r0, 24 - cmp r0, 0 - bne _0801E48C - ldr r0, _0801E488 - ldr r0, [r0] - bl sub_8013660 - movs r0, 0 - b _0801E4EE - .align 2, 0 -_0801E488: .4byte gUnknown_203B264 -_0801E48C: - ldr r0, _0801E4A4 - ldr r0, [r0] - bl GetKeyPress - cmp r0, 0x2 - beq _0801E4AE - cmp r0, 0x2 - bgt _0801E4A8 - cmp r0, 0x1 - beq _0801E4B8 - b _0801E4CC - .align 2, 0 -_0801E4A4: .4byte gUnknown_203B264 -_0801E4A8: - cmp r0, 0x4 - beq _0801E4C2 - b _0801E4CC -_0801E4AE: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0801E4EE -_0801E4B8: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0801E4EE -_0801E4C2: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _0801E4EE -_0801E4CC: - ldr r0, _0801E4E0 - ldr r0, [r0] - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0801E4E4 - movs r0, 0 - b _0801E4EE - .align 2, 0 -_0801E4E0: .4byte gUnknown_203B264 -_0801E4E4: - bl sub_801E594 - bl sub_801E5E8 - movs r0, 0x1 -_0801E4EE: - pop {r1} - bx r1 - thumb_func_end sub_801E474 - - thumb_func_start sub_801E4F4 -sub_801E4F4: - ldr r0, _0801E50C - ldr r1, [r0] - movs r0, 0x1E - ldrsh r2, [r1, r0] - movs r3, 0x1C - ldrsh r0, [r1, r3] - muls r0, r2 - movs r2, 0x18 - ldrsh r1, [r1, r2] - adds r0, r1 - bx lr - .align 2, 0 -_0801E50C: .4byte gUnknown_203B264 - thumb_func_end sub_801E4F4 - - thumb_func_start sub_801E510 -sub_801E510: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0801E548 - ldr r0, [r5] - adds r0, 0x3C - movs r1, 0 - movs r2, 0 - bl sub_800641C - ldr r0, [r5] - bl sub_8013984 - bl sub_801E594 - bl sub_801E5E8 - cmp r4, 0 - beq _0801E542 - ldr r0, [r5] - bl AddMenuCursorSprite -_0801E542: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801E548: .4byte gUnknown_203B264 - thumb_func_end sub_801E510 - - thumb_func_start sub_801E54C -sub_801E54C: - push {r4,r5,lr} - ldr r4, _0801E58C - ldr r2, [r4] - cmp r2, 0 - beq _0801E586 - ldr r0, [r2, 0x34] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x3C - ldr r0, _0801E590 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801E586: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801E58C: .4byte gUnknown_203B264 -_0801E590: .4byte gUnknown_80DC0A0 - thumb_func_end sub_801E54C - - thumb_func_start sub_801E594 -sub_801E594: - push {r4,lr} - ldr r4, _0801E5E4 - ldr r0, [r4] - movs r1, 0x1A - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x34] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x4A - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x34] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x4C - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801E5E4: .4byte gUnknown_203B264 - thumb_func_end sub_801E594 - - thumb_func_start sub_801E5E8 -sub_801E5E8: - push {r4-r6,lr} - sub sp, 0x4 - ldr r4, _0801E64C - ldr r0, [r4] - ldr r0, [r0, 0x34] - bl sub_8008C54 - ldr r0, [r4] - ldr r0, [r0, 0x34] - bl sub_80073B8 - ldr r2, _0801E650 - ldr r0, [r4] - ldr r3, [r0, 0x34] - movs r0, 0 - str r0, [sp] - movs r0, 0x10 - movs r1, 0 - bl xxx_call_draw_string - movs r5, 0 - adds r6, r4, 0 - ldr r4, _0801E654 -_0801E616: - ldr r0, [r6] - adds r1, r5, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r2, [r4] - ldr r0, [r6] - ldr r3, [r0, 0x34] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - bl xxx_call_draw_string - adds r4, 0x8 - adds r5, 0x1 - cmp r5, 0x4 - ble _0801E616 - ldr r0, _0801E64C - ldr r0, [r0] - ldr r0, [r0, 0x34] - bl sub_80073E0 - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801E64C: .4byte gUnknown_203B264 -_0801E650: .4byte gUnknown_80DC0D4 -_0801E654: .4byte gUnknown_80DAA98 - thumb_func_end sub_801E5E8 - - thumb_func_start sub_801E658 -sub_801E658: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r4, _0801E6C4 - movs r0, 0xA0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r1, 0 - str r1, [r0, 0x34] - adds r1, r0, 0 - adds r1, 0x3C - str r1, [r0, 0x38] - adds r0, r1, 0 - bl sub_8006518 - ldr r1, [r4] - ldr r2, [r1, 0x34] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x3C - ldr r0, _0801E6C8 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldr r0, [r4] - ldr r1, [r0, 0x38] - adds r0, 0x9C - str r0, [r1, 0x14] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - ldr r3, [r0, 0x34] - movs r1, 0x5 - movs r2, 0x1 - bl sub_8013818 - ldr r0, [r4] - strh r5, [r0, 0x1E] - bl sub_801E714 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0801E6C4: .4byte gUnknown_203B268 -_0801E6C8: .4byte gUnknown_80DC0FC - thumb_func_end sub_801E658 - - thumb_func_start sub_801E6CC -sub_801E6CC: - push {r4,lr} - ldr r4, _0801E6E8 - ldr r0, [r4] - bl GetKeyPress - cmp r0, 0x1 - beq _0801E6EC - cmp r0, 0x2 - bne _0801E6F6 - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0801E70C - .align 2, 0 -_0801E6E8: .4byte gUnknown_203B268 -_0801E6EC: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0801E70C -_0801E6F6: - ldr r0, [r4] - bl sub_8013938 - lsls r0, 24 - cmp r0, 0 - bne _0801E706 - movs r0, 0 - b _0801E70C -_0801E706: - bl sub_801E714 - movs r0, 0x1 -_0801E70C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_801E6CC - - thumb_func_start sub_801E714 -sub_801E714: - push {lr} - bl sub_801E76C - bl sub_801E7AC - pop {r0} - bx r0 - thumb_func_end sub_801E714 - - thumb_func_start sub_801E724 -sub_801E724: - push {r4,r5,lr} - ldr r4, _0801E764 - ldr r2, [r4] - cmp r2, 0 - beq _0801E75E - ldr r0, [r2, 0x34] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x3C - ldr r0, _0801E768 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801E75E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801E764: .4byte gUnknown_203B268 -_0801E768: .4byte gUnknown_80DC0E4 - thumb_func_end sub_801E724 - - thumb_func_start sub_801E76C -sub_801E76C: - push {r4,lr} - ldr r4, _0801E7A8 - ldr r0, [r4] - ldrh r1, [r0, 0x20] - adds r0, 0x9C - movs r2, 0 - strb r1, [r0] - ldr r0, [r4] - ldrh r1, [r0, 0x1E] - adds r0, 0x9D - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9E - movs r1, 0xF - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9F - strb r2, [r0] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801E7A8: .4byte gUnknown_203B268 - thumb_func_end sub_801E76C - - thumb_func_start sub_801E7AC -sub_801E7AC: - push {r4-r6,lr} - sub sp, 0x4 - ldr r5, _0801E804 - ldr r0, [r5] - ldr r0, [r0, 0x34] - bl sub_80073B8 - ldr r3, [r5] - movs r0, 0x1E - ldrsh r1, [r3, r0] - lsls r1, 3 - adds r0, r1, 0 - adds r0, 0x10 - ldr r4, _0801E808 - adds r1, r4 - ldr r2, [r1] - ldr r3, [r3, 0x34] - movs r6, 0 - str r6, [sp] - movs r1, 0 - bl xxx_call_draw_string - ldr r1, [r5] - movs r2, 0x1E - ldrsh r0, [r1, r2] - lsls r0, 3 - adds r4, 0x4 - adds r0, r4 - ldr r2, [r0] - ldr r3, [r1, 0x34] - str r6, [sp] - movs r0, 0xA - movs r1, 0x14 - bl xxx_call_draw_string - ldr r0, [r5] - ldr r0, [r0, 0x34] - bl sub_80073E0 - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801E804: .4byte gUnknown_203B268 -_0801E808: .4byte gUnknown_80DAA98 - thumb_func_end sub_801E7AC - - thumb_func_start sub_801E80C -sub_801E80C: - push {r4-r6,lr} - mov r6, r8 - push {r6} - mov r8, r0 - adds r4, r1, 0 - adds r6, r2, 0 - lsls r4, 16 - asrs r4, 16 - ldr r5, _0801E84C - movs r0, 0xC6 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - adds r2, r0, 0 - str r2, [r5] - mov r0, r8 - str r0, [r2] - strh r4, [r2, 0xC] - str r6, [r2, 0x10] - ldrh r0, [r6, 0x22] - strh r0, [r2, 0x1C] - mov r1, r8 - cmp r1, 0 - bne _0801E850 - movs r3, 0x94 - lsls r3, 1 - adds r1, r2, r3 - movs r4, 0x8C - lsls r4, 1 - adds r0, r2, r4 - b _0801E858 - .align 2, 0 -_0801E84C: .4byte gUnknown_203B26C -_0801E850: - movs r0, 0x94 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0 -_0801E858: - str r0, [r1] - ldr r0, _0801E8B4 - bl sub_808DDD0 - ldr r2, _0801E8B8 - ldr r3, [r2] - movs r4, 0x8C - lsls r4, 1 - adds r1, r3, r4 - str r0, [r1] - adds r4, 0x4 - adds r1, r3, r4 - ldr r0, [r0, 0x4] - str r0, [r1] - movs r1, 0x92 - lsls r1, 1 - adds r0, r3, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - ldr r3, _0801E8BC - adds r0, r3 - strb r1, [r0] - ldr r0, [r2] - adds r4, 0xA - adds r0, r4 - strb r1, [r0] - ldr r2, [r2] - movs r0, 0x90 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x2 - strh r0, [r1] - subs r3, 0x3 - adds r1, r2, r3 - movs r0, 0x8 - strh r0, [r1] - movs r0, 0 - bl sub_801E968 - movs r0, 0x1 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0801E8B4: .4byte 0x00000155 -_0801E8B8: .4byte gUnknown_203B26C -_0801E8BC: .4byte 0x00000125 - thumb_func_end sub_801E80C - - thumb_func_start sub_801E8C0 -sub_801E8C0: - push {lr} - ldr r0, _0801E8D8 - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r0, 0x6 - bhi _0801E928 - lsls r0, 2 - ldr r1, _0801E8DC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801E8D8: .4byte gUnknown_203B26C -_0801E8DC: .4byte _0801E8E0 - .align 2, 0 -_0801E8E0: - .4byte _0801E8FC - .4byte _0801E8FC - .4byte _0801E902 - .4byte _0801E908 - .4byte _0801E90E - .4byte _0801E91C - .4byte _0801E924 -_0801E8FC: - bl sub_801ECBC - b _0801E928 -_0801E902: - bl sub_801ED28 - b _0801E928 -_0801E908: - bl sub_801EDA4 - b _0801E928 -_0801E90E: - bl sub_801EDC0 - ldr r0, _0801E920 - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r0, 0x5 - bne _0801E928 -_0801E91C: - movs r0, 0x3 - b _0801E92A - .align 2, 0 -_0801E920: .4byte gUnknown_203B26C -_0801E924: - movs r0, 0x2 - b _0801E92A -_0801E928: - movs r0, 0 -_0801E92A: - pop {r1} - bx r1 - thumb_func_end sub_801E8C0 - - thumb_func_start sub_801E930 -sub_801E930: - ldr r0, _0801E938 - ldr r0, [r0] - ldrb r0, [r0, 0xE] - bx lr - .align 2, 0 -_0801E938: .4byte gUnknown_203B26C - thumb_func_end sub_801E930 - - thumb_func_start sub_801E93C -sub_801E93C: - push {r4,lr} - ldr r4, _0801E964 - ldr r0, [r4] - cmp r0, 0 - beq _0801E95C - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801E95C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801E964: .4byte gUnknown_203B26C - thumb_func_end sub_801E93C - - thumb_func_start sub_801E968 -sub_801E968: - push {lr} - ldr r1, _0801E97C - ldr r1, [r1] - str r0, [r1, 0x4] - bl sub_801E980 - bl sub_801EA28 - pop {r0} - bx r0 - .align 2, 0 -_0801E97C: .4byte gUnknown_203B26C - thumb_func_end sub_801E968 - - thumb_func_start sub_801E980 -sub_801E980: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _0801E9D0 - ldr r0, [r4] - movs r5, 0x96 - lsls r5, 1 - adds r0, r5 - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0, 0x4] - cmp r0, 0x2 - bne _0801E9DC - bl sub_801EBC4 - ldr r1, [r4] - movs r0, 0xA2 - lsls r0, 1 - adds r1, r0 - ldr r0, _0801E9D4 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - ldr r2, [r4] - movs r0, 0xAE - lsls r0, 1 - adds r2, r0 - ldr r1, _0801E9D8 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0x28 - bl sub_8012CAC - b _0801EA00 - .align 2, 0 -_0801E9D0: .4byte gUnknown_203B26C -_0801E9D4: .4byte gUnknown_80DC11C -_0801E9D8: .4byte gUnknown_80DC134 -_0801E9DC: - mov r12, r4 - mov r8, r5 - ldr r4, _0801EA20 - movs r2, 0 - movs r3, 0x3 -_0801E9E6: - mov r6, r12 - ldr r1, [r6] - adds r1, r2 - add r1, r8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r2, 0x18 - subs r3, 0x1 - cmp r3, 0 - bge _0801E9E6 -_0801EA00: - bl sub_8004914 - ldr r0, _0801EA24 - ldr r0, [r0] - movs r7, 0x96 - lsls r7, 1 - adds r0, r7 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801EA20: .4byte gUnknown_80DC11C -_0801EA24: .4byte gUnknown_203B26C - thumb_func_end sub_801E980 - - thumb_func_start sub_801EA28 -sub_801EA28: - push {r4,r5,lr} - sub sp, 0x14 - ldr r1, _0801EA44 - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r4, r1, 0 - cmp r0, 0x4 - bls _0801EA3A - b _0801EBB8 -_0801EA3A: - lsls r0, 2 - ldr r1, _0801EA48 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801EA44: .4byte gUnknown_203B26C -_0801EA48: .4byte _0801EA4C - .align 2, 0 -_0801EA4C: - .4byte _0801EA60 - .4byte _0801EA80 - .4byte _0801EA8A - .4byte _0801EAB4 - .4byte _0801EACA -_0801EA60: - ldr r0, [r4] - movs r2, 0xC - ldrsh r1, [r0, r2] - ldr r2, [r0, 0x10] - ldr r0, _0801EA7C - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - movs r0, 0x2 - movs r3, 0 - bl sub_801EE10 - b _0801EBB8 - .align 2, 0 -_0801EA7C: .4byte gUnknown_80DC164 -_0801EA80: - movs r0, 0x1 - movs r1, 0 - bl sub_801F1B0 - b _0801EBB8 -_0801EA8A: - movs r0, 0 - bl sub_801F280 - ldr r0, _0801EAB0 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x78 - adds r1, r2, 0 - adds r1, 0x28 - adds r3, r2, 0 - adds r3, 0x68 - ldr r2, [r2, 0x24] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _0801EBB8 - .align 2, 0 -_0801EAB0: .4byte gUnknown_203B26C -_0801EAB4: - ldr r2, [r4] - ldr r0, [r2, 0x20] - ldr r1, [r2, 0x10] - adds r2, 0x14 - bl sub_8093560 - ldr r0, [r4] - adds r0, 0x14 - bl sub_801F808 - b _0801EBB8 -_0801EACA: - bl sub_801EC7C - ldr r4, _0801EAF8 - ldr r5, _0801EAFC - ldr r0, [r5] - ldrh r1, [r0, 0x1C] - adds r0, r4, 0 - bl sub_8092C84 - adds r4, 0x50 - ldr r0, [r5] - ldrh r1, [r0, 0x1E] - adds r0, r4, 0 - bl sub_8092C84 - ldr r2, [r5] - ldr r3, [r2] - cmp r3, 0x1 - bls _0801EB00 - cmp r3, 0x2 - beq _0801EB68 - b _0801EBB8 - .align 2, 0 -_0801EAF8: .4byte gUnknown_202DF98 -_0801EAFC: .4byte gUnknown_203B26C -_0801EB00: - ldrb r4, [r2, 0xE] - cmp r4, 0 - beq _0801EB38 - ldr r1, _0801EB34 - movs r0, 0x64 - muls r0, r3 - adds r1, 0x30 - adds r0, r1 - ldr r0, [r0] - adds r3, r2, 0 - adds r3, 0x28 - adds r1, r2, 0 - adds r1, 0x68 - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - movs r4, 0x94 - lsls r4, 1 - adds r1, r2, r4 - ldr r1, [r1] - str r1, [sp, 0xC] - movs r1, 0xC - b _0801EB86 - .align 2, 0 -_0801EB34: .4byte gUnknown_80D8888 -_0801EB38: - ldr r1, _0801EB64 - movs r0, 0x64 - muls r0, r3 - adds r1, 0x2C - adds r0, r1 - ldr r0, [r0] - adds r3, r2, 0 - adds r3, 0x28 - adds r1, r2, 0 - adds r1, 0x68 - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - movs r4, 0x94 - lsls r4, 1 - adds r1, r2, r4 - ldr r1, [r1] - str r1, [sp, 0xC] - movs r1, 0xC - b _0801EB86 - .align 2, 0 -_0801EB64: .4byte gUnknown_80D8888 -_0801EB68: - ldrb r4, [r2, 0xE] - cmp r4, 0 - beq _0801EB98 - ldr r0, _0801EB94 - adds r3, r2, 0 - adds r3, 0x28 - adds r1, r2, 0 - adds r1, 0x68 - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - str r1, [sp, 0xC] - movs r1, 0x20 -_0801EB86: - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x5 - bl sub_8014248 - b _0801EBB8 - .align 2, 0 -_0801EB94: .4byte gUnknown_80DC1A0 -_0801EB98: - ldr r0, _0801EBC0 - adds r3, r2, 0 - adds r3, 0x28 - adds r1, r2, 0 - adds r1, 0x68 - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] - movs r1, 0x20 - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x5 - bl sub_8014248 -_0801EBB8: - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801EBC0: .4byte gUnknown_80DC1FC - thumb_func_end sub_801EA28 - - thumb_func_start sub_801EBC4 -sub_801EBC4: - push {r4,r5,lr} - movs r5, 0 - ldr r4, _0801EC48 - ldr r0, [r4] - adds r0, 0x68 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - ldr r0, _0801EC4C - str r0, [r1, 0x28] - movs r0, 0x2 - str r0, [r1, 0x2C] - ldrh r0, [r1, 0x1E] - ldr r1, [r1, 0x10] - bl sub_80933A0 - lsls r0, 24 - cmp r0, 0 - beq _0801EBF6 - ldr r0, [r4] - ldr r0, [r0, 0x20] - cmp r0, 0x3 - ble _0801EBFE -_0801EBF6: - ldr r0, [r4] - adds r0, 0x68 - movs r1, 0x1 - strh r1, [r0] -_0801EBFE: - adds r5, 0x1 - ldr r4, _0801EC48 - ldr r0, [r4] - mov r12, r0 - lsls r1, r5, 3 - mov r3, r12 - adds r3, 0x28 - adds r2, r3, r1 - ldr r0, _0801EC50 - ldr r0, [r0] - str r0, [r2] - mov r2, r12 - adds r2, 0x2C - adds r1, r2, r1 - movs r0, 0x3 - str r0, [r1] - adds r5, 0x1 - lsls r1, r5, 3 - adds r3, r1 - movs r0, 0 - str r0, [r3] - adds r2, r1 - movs r0, 0x1 - str r0, [r2] - movs r3, 0 - cmp r3, r5 - bge _0801EC76 - mov r0, r12 - adds r0, 0x68 - ldrh r0, [r0] - cmp r0, 0 - bne _0801EC54 - mov r1, r12 - ldr r0, [r1, 0x2C] - str r0, [r1, 0x24] - b _0801EC76 - .align 2, 0 -_0801EC48: .4byte gUnknown_203B26C -_0801EC4C: .4byte gUnknown_80DC230 -_0801EC50: .4byte gUnknown_80D4970 -_0801EC54: - adds r3, 0x1 - cmp r3, r5 - bge _0801EC76 - ldr r2, [r4] - lsls r0, r3, 1 - adds r1, r2, 0 - adds r1, 0x68 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _0801EC54 - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0x2C - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x24] -_0801EC76: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_801EBC4 - - thumb_func_start sub_801EC7C -sub_801EC7C: - push {r4,lr} - ldr r4, _0801ECB0 - ldr r0, [r4] - adds r0, 0x68 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - movs r3, 0 - ldr r0, _0801ECB4 - ldr r0, [r0] - str r0, [r1, 0x28] - movs r0, 0x4 - str r0, [r1, 0x2C] - movs r2, 0x1 - ldr r0, _0801ECB8 - ldr r0, [r0] - str r0, [r1, 0x30] - movs r0, 0x5 - str r0, [r1, 0x34] - str r3, [r1, 0x38] - str r2, [r1, 0x3C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801ECB0: .4byte gUnknown_203B26C -_0801ECB4: .4byte gUnknown_80D4920 -_0801ECB8: .4byte gUnknown_80D4928 - thumb_func_end sub_801EC7C - - thumb_func_start sub_801ECBC -sub_801ECBC: - push {lr} - movs r0, 0x1 - bl sub_801EF38 - cmp r0, 0x3 - beq _0801ECD8 - cmp r0, 0x3 - bhi _0801ECD2 - cmp r0, 0x2 - beq _0801ED18 - b _0801ED22 -_0801ECD2: - cmp r0, 0x4 - beq _0801ECF8 - b _0801ED22 -_0801ECD8: - bl sub_801F194 - ldr r1, _0801ECF4 - ldr r2, [r1] - str r0, [r2, 0x20] - ldr r1, [r2, 0x10] - lsls r0, 3 - adds r1, r0 - ldrh r0, [r1, 0x2] - strh r0, [r2, 0x1E] - movs r0, 0x2 - bl sub_801E968 - b _0801ED22 - .align 2, 0 -_0801ECF4: .4byte gUnknown_203B26C -_0801ECF8: - bl sub_801F194 - ldr r1, _0801ED14 - ldr r2, [r1] - str r0, [r2, 0x20] - ldr r1, [r2, 0x10] - lsls r0, 3 - adds r1, r0 - ldrh r0, [r1, 0x2] - strh r0, [r2, 0x1E] - movs r0, 0x3 - bl sub_801E968 - b _0801ED22 - .align 2, 0 -_0801ED14: .4byte gUnknown_203B26C -_0801ED18: - bl sub_801F214 - movs r0, 0x6 - bl sub_801E968 -_0801ED22: - pop {r0} - bx r0 - thumb_func_end sub_801ECBC - - thumb_func_start sub_801ED28 -sub_801ED28: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801EF38 - ldr r4, _0801ED60 - ldr r0, [r4] - adds r0, 0x78 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0801ED4E - ldr r0, [r4] - adds r0, 0x78 - mov r1, sp - bl sub_8013114 -_0801ED4E: - ldr r0, [sp] - cmp r0, 0x2 - beq _0801ED74 - cmp r0, 0x2 - bgt _0801ED64 - cmp r0, 0x1 - beq _0801ED6C - b _0801ED9A - .align 2, 0 -_0801ED60: .4byte gUnknown_203B26C -_0801ED64: - cmp r0, 0x3 - beq _0801ED94 - cmp r0, 0x5 - bne _0801ED9A -_0801ED6C: - movs r0, 0x1 - bl sub_801E968 - b _0801ED9A -_0801ED74: - ldr r0, _0801ED90 - bl sub_8011988 - ldr r1, [r4] - ldr r0, [r1, 0x20] - ldr r1, [r1, 0x10] - bl sub_80934B0 - ldr r1, [r4] - strb r0, [r1, 0xE] - movs r0, 0x4 - bl sub_801E968 - b _0801ED9A - .align 2, 0 -_0801ED90: .4byte 0x00000133 -_0801ED94: - movs r0, 0x3 - bl sub_801E968 -_0801ED9A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801ED28 - - thumb_func_start sub_801EDA4 -sub_801EDA4: - push {lr} - bl sub_801F890 - cmp r0, 0x1 - bls _0801EDBC - cmp r0, 0x3 - bhi _0801EDBC - bl sub_801F8D0 - movs r0, 0x1 - bl sub_801E968 -_0801EDBC: - pop {r0} - bx r0 - thumb_func_end sub_801EDA4 - - thumb_func_start sub_801EDC0 -sub_801EDC0: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0801EE06 - ldr r0, [sp] - cmp r0, 0x4 - beq _0801EDE4 - cmp r0, 0x4 - bgt _0801EDDE - cmp r0, 0x1 - beq _0801EE00 - b _0801EE06 -_0801EDDE: - cmp r0, 0x5 - beq _0801EE00 - b _0801EE06 -_0801EDE4: - bl sub_801F214 - ldr r4, _0801EDFC - ldr r1, [r4] - ldr r0, [r1, 0x10] - ldr r1, [r1, 0x20] - bl sub_8093CF8 - ldr r1, [r4] - movs r0, 0x5 - str r0, [r1, 0x4] - b _0801EE06 - .align 2, 0 -_0801EDFC: .4byte gUnknown_203B26C -_0801EE00: - movs r0, 0x1 - bl sub_801E968 -_0801EE06: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801EDC0 - - thumb_func_start sub_801EE10 -sub_801EE10: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r6, r0, 0 - mov r9, r2 - adds r4, r3, 0 - ldr r0, [sp, 0x20] - mov r8, r0 - lsls r1, 16 - asrs r7, r1, 16 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _0801EF28 - movs r0, 0xBC - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r2, 0 - strb r4, [r0, 0x4] - ldr r0, [r5] - movs r1, 0x1 - strb r1, [r0, 0x5] - ldr r0, [r5] - strb r1, [r0, 0x6] - ldr r0, [r5] - strb r1, [r0, 0x7] - ldr r0, [r5] - str r6, [r0] - cmp r6, 0x1 - bls _0801EE5E - cmp r6, 0x3 - bhi _0801EE5E - strb r2, [r0, 0x5] - ldr r0, [r5] - strb r2, [r0, 0x6] - ldr r0, [r5] - strb r2, [r0, 0x7] -_0801EE5E: - ldr r4, _0801EF28 - ldr r3, [r4] - ldr r2, _0801EF2C - movs r0, 0x58 - adds r1, r7, 0 - muls r1, r0 - ldr r0, [r2] - adds r0, r1 - str r0, [r3, 0x8] - ldrb r0, [r0, 0x2] - strb r0, [r3, 0xC] - ldr r0, [r4] - mov r1, r9 - str r1, [r0, 0x10] - adds r0, 0xB8 - ldr r1, [sp, 0x1C] - str r1, [r0] - bl sub_801F3F8 - adds r5, r0, 0 - adds r6, r5, 0 - cmp r5, 0x4 - bge _0801EE8E - movs r6, 0x4 -_0801EE8E: - ldr r0, [r4] - adds r0, 0x58 - bl sub_8006518 - ldr r1, [r4] - mov r2, r8 - str r2, [r1, 0x50] - lsls r0, r2, 1 - add r0, r8 - lsls r0, 3 - adds r1, r0 - adds r1, 0x58 - ldr r0, _0801EF30 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r0, [r4] - adds r0, 0xB8 - ldr r0, [r0] - cmp r0, 0 - beq _0801EED8 - mov r0, r8 - bl sub_8006544 - ldr r1, [r4] - str r0, [r1, 0x54] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 3 - adds r1, r2 - adds r1, 0x58 - ldr r0, _0801EF34 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} -_0801EED8: - ldr r0, [r4] - ldr r2, [r0, 0x50] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r1, 0x58 - adds r0, r1 - adds r1, r6, 0 - bl sub_8012D08 - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x58 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, 0x1C - adds r1, r5, 0 - adds r2, r5, 0 - mov r3, r8 - bl sub_8013818 - ldr r0, [r4] - adds r0, 0x1C - movs r1, 0 - bl sub_8013780 - movs r0, 0x1 - bl sub_801F280 - movs r0, 0x1 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0801EF28: .4byte gUnknown_203B270 -_0801EF2C: .4byte gUnknown_203B45C -_0801EF30: .4byte gUnknown_80DC25C -_0801EF34: .4byte gUnknown_80DC274 - thumb_func_end sub_801EE10 - - thumb_func_start sub_801EF38 -sub_801EF38: - push {r4-r7,lr} - lsls r0, 24 - movs r7, 0 - cmp r0, 0 - bne _0801EF54 - ldr r0, _0801EF50 - ldr r0, [r0] - adds r0, 0x1C - bl sub_8013660 - b _0801F18C - .align 2, 0 -_0801EF50: .4byte gUnknown_203B270 -_0801EF54: - ldr r0, _0801EF70 - ldr r0, [r0] - adds r0, 0x1C - bl GetKeyPress - subs r0, 0x1 - cmp r0, 0xC - bls _0801EF66 - b _0801F12E -_0801EF66: - lsls r0, 2 - ldr r1, _0801EF74 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801EF70: .4byte gUnknown_203B270 -_0801EF74: .4byte _0801EF78 - .align 2, 0 -_0801EF78: - .4byte _0801EFB6 - .4byte _0801EFAC - .4byte _0801F0E4 - .4byte _0801EFC0 - .4byte _0801F12E - .4byte _0801F12E - .4byte _0801EFE4 - .4byte _0801EFCA - .4byte _0801F12E - .4byte _0801F12E - .4byte _0801F074 - .4byte _0801F04C - .4byte _0801F018 -_0801EFAC: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0801F18E -_0801EFB6: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0801F18E -_0801EFC0: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _0801F18E -_0801EFCA: - ldr r5, _0801EFE0 - ldr r0, [r5] - movs r1, 0x34 - ldrsh r6, [r0, r1] - adds r4, r0, 0 - adds r4, 0x1C - ldr r0, [r0, 0x10] - adds r1, r6, 0 - bl sub_8092E54 - b _0801EFF8 - .align 2, 0 -_0801EFE0: .4byte gUnknown_203B270 -_0801EFE4: - ldr r5, _0801F014 - ldr r0, [r5] - movs r1, 0x34 - ldrsh r6, [r0, r1] - adds r4, r0, 0 - adds r4, 0x1C - ldr r0, [r0, 0x10] - adds r1, r6, 0 - bl sub_8092EEC -_0801EFF8: - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_8013780 - ldr r0, [r5] - movs r2, 0x34 - ldrsh r0, [r0, r2] - cmp r6, r0 - bne _0801F00C - b _0801F12E -_0801F00C: - movs r0, 0x3 - bl sub_80119D4 - b _0801F12E - .align 2, 0 -_0801F014: .4byte gUnknown_203B270 -_0801F018: - ldr r0, _0801F048 - ldr r2, [r0] - ldrb r1, [r2, 0x5] - adds r5, r0, 0 - cmp r1, 0 - bne _0801F026 - b _0801F12E -_0801F026: - movs r0, 0x34 - ldrsh r4, [r2, r0] - ldr r0, [r2, 0x10] - adds r1, r4, 0 - bl sub_809309C -_0801F032: - ldr r1, [r5] - strh r0, [r1, 0x34] - lsls r0, 16 - asrs r0, 16 - cmp r4, r0 - beq _0801F06C - movs r0, 0x3 - bl sub_80119D4 - b _0801F182 - .align 2, 0 -_0801F048: .4byte gUnknown_203B270 -_0801F04C: - ldr r0, _0801F068 - ldr r2, [r0] - ldrb r1, [r2, 0x5] - adds r5, r0, 0 - cmp r1, 0 - beq _0801F12E - movs r1, 0x34 - ldrsh r4, [r2, r1] - ldr r0, [r2, 0x10] - adds r1, r4, 0 - bl sub_809324C - b _0801F032 - .align 2, 0 -_0801F068: .4byte gUnknown_203B270 -_0801F06C: - movs r0, 0x2 - bl sub_80119D4 - b _0801F182 -_0801F074: - ldr r0, _0801F0C8 - ldr r2, [r0] - ldrb r1, [r2, 0x6] - adds r5, r0, 0 - cmp r1, 0 - beq _0801F12E - ldr r0, _0801F0CC - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x95 - ble _0801F0D0 - movs r1, 0x34 - ldrsh r0, [r2, r1] - ldr r1, [r2, 0x10] - bl sub_8093318 - lsls r0, 24 - cmp r0, 0 - beq _0801F0D0 - ldr r1, [r5] - movs r2, 0x34 - ldrsh r0, [r1, r2] - ldr r1, [r1, 0x10] - bl sub_8093400 - movs r0, 0x6 - bl sub_80119D4 - movs r7, 0x1 - ldr r1, [r5] - ldrb r0, [r1, 0x4] - cmp r0, 0 - bne _0801F12E - strb r7, [r1, 0x4] - movs r0, 0xA6 - lsls r0, 1 - bl sub_8011988 - b _0801F12E - .align 2, 0 -_0801F0C8: .4byte gUnknown_203B270 -_0801F0CC: .4byte gUnknown_203B460 -_0801F0D0: - ldr r0, _0801F0E0 - ldr r1, [r0] - movs r2, 0x34 - ldrsh r0, [r1, r2] - ldr r1, [r1, 0x10] - bl sub_8093468 - b _0801F0FE - .align 2, 0 -_0801F0E0: .4byte gUnknown_203B270 -_0801F0E4: - ldr r0, _0801F10C - ldr r1, [r0] - ldrb r0, [r1, 0x7] - cmp r0, 0 - beq _0801F12E - ldrb r0, [r1, 0xC] - cmp r0, 0 - beq _0801F110 - movs r2, 0x34 - ldrsh r0, [r1, r2] - ldr r1, [r1, 0x10] - bl sub_80934DC -_0801F0FE: - lsls r0, 24 - cmp r0, 0 - bne _0801F120 - movs r0, 0x2 - bl sub_80119D4 - b _0801F12E - .align 2, 0 -_0801F10C: .4byte gUnknown_203B270 -_0801F110: - movs r2, 0x34 - ldrsh r0, [r1, r2] - ldr r1, [r1, 0x10] - bl sub_8093544 - lsls r0, 24 - cmp r0, 0 - beq _0801F128 -_0801F120: - movs r0, 0x6 - bl sub_80119D4 - b _0801F182 -_0801F128: - movs r0, 0x2 - bl sub_80119D4 -_0801F12E: - cmp r7, 0 - bne _0801F182 - movs r3, 0 - ldr r5, _0801F160 - movs r4, 0x1 -_0801F138: - ldr r2, [r5] - lsls r0, r3, 3 - ldr r1, [r2, 0x10] - adds r1, r0 - ldrb r1, [r1] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0801F16C - movs r0, 0x2 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _0801F164 - adds r0, r2, 0 - adds r0, 0x14 - adds r0, r3 - strb r4, [r0] - b _0801F16C - .align 2, 0 -_0801F160: .4byte gUnknown_203B270 -_0801F164: - adds r0, r2, 0 - adds r0, 0x14 - adds r0, r3 - strb r1, [r0] -_0801F16C: - adds r3, 0x1 - cmp r3, 0x7 - ble _0801F138 - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x1C - adds r1, 0x14 - bl AddMenuCursorSprite_ - cmp r7, 0 - beq _0801F18C -_0801F182: - movs r0, 0x1 - bl sub_801F280 - movs r0, 0x1 - b _0801F18E -_0801F18C: - movs r0, 0 -_0801F18E: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_801EF38 - - thumb_func_start sub_801F194 -sub_801F194: - ldr r0, _0801F1A0 - ldr r0, [r0] - movs r1, 0x34 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_0801F1A0: .4byte gUnknown_203B270 - thumb_func_end sub_801F194 - - thumb_func_start sub_801F1A4 -sub_801F1A4: - ldr r0, _0801F1AC - ldr r0, [r0] - ldrb r0, [r0, 0x4] - bx lr - .align 2, 0 -_0801F1AC: .4byte gUnknown_203B270 - thumb_func_end sub_801F1A4 - - thumb_func_start sub_801F1B0 -sub_801F1B0: - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r4, _0801F210 - ldr r2, [r4] - ldrb r0, [r2, 0x4] - cmp r0, 0 - bne _0801F1C6 - strb r1, [r2, 0x4] -_0801F1C6: - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x58 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_801F3F8 - adds r1, r0, 0 - ldr r0, [r4] - strh r1, [r0, 0x3E] - adds r0, 0x1C - bl sub_8013984 - ldr r1, [r4] - ldr r0, [r1, 0x10] - movs r2, 0x34 - ldrsh r1, [r1, r2] - bl sub_8092F4C - ldr r1, [r4] - strh r0, [r1, 0x34] - movs r0, 0x1 - bl sub_801F280 - cmp r5, 0 - beq _0801F208 - ldr r0, [r4] - adds r0, 0x1C - bl AddMenuCursorSprite -_0801F208: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801F210: .4byte gUnknown_203B270 - thumb_func_end sub_801F1B0 - - thumb_func_start sub_801F214 -sub_801F214: - push {r4-r6,lr} - ldr r4, _0801F278 - ldr r2, [r4] - cmp r2, 0 - beq _0801F272 - ldr r0, [r2, 0x50] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - ldr r3, _0801F27C - adds r1, 0x58 - adds r0, r3, 0 - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0xB8 - ldr r0, [r0] - cmp r0, 0 - beq _0801F258 - ldr r0, [r2, 0x54] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x58 - adds r0, r3, 0 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} -_0801F258: - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x58 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801F272: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801F278: .4byte gUnknown_203B270 -_0801F27C: .4byte gUnknown_80DC240 - thumb_func_end sub_801F214 - - thumb_func_start sub_801F280 -sub_801F280: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r4, _0801F30C - ldr r0, [r4] - ldr r0, [r0, 0x50] - bl sub_8008C54 - ldr r0, [r4] - ldr r0, [r0, 0x50] - bl sub_80073B8 - ldr r0, [r4] - ldr r1, [r0, 0x8] - adds r1, 0x4C - add r0, sp, 0x4 - movs r2, 0xA - bl sub_80922B4 - ldr r0, _0801F310 - add r1, sp, 0x4 - bl strcpy - ldr r2, _0801F314 - ldr r0, [r4] - ldr r3, [r0, 0x50] - movs r0, 0 - str r0, [sp] - movs r0, 0xC - movs r1, 0 - bl sub_8014FF0 - movs r7, 0 - ldr r0, [r4] - movs r1, 0x36 - ldrsh r0, [r0, r1] - cmp r7, r0 - bge _0801F394 - add r5, sp, 0x18 - mov r8, r4 - movs r0, 0x1 - mov r9, r0 -_0801F2E0: - adds r0, r5, 0 - movs r1, 0 - movs r2, 0xC - bl memset - movs r0, 0x6A - str r0, [r5, 0x4] - mov r1, r8 - ldr r2, [r1] - lsls r1, r7, 3 - ldr r0, [r2, 0x10] - adds r4, r0, r1 - ldrb r1, [r4] - mov r0, r9 - ands r0, r1 - cmp r0, 0 - beq _0801F386 - ldrb r0, [r2, 0xC] - cmp r0, 0 - beq _0801F318 - movs r0, 0x2 - b _0801F31A - .align 2, 0 -_0801F30C: .4byte gUnknown_203B270 -_0801F310: .4byte gUnknown_202DF98 -_0801F314: .4byte gUnknown_80DC28C -_0801F318: - movs r0, 0x4 -_0801F31A: - str r0, [sp, 0x18] - mov r1, r8 - ldr r0, [r1] - ldrb r0, [r0, 0x6] - cmp r0, 0 - beq _0801F328 - mov r0, r9 -_0801F328: - strb r0, [r5, 0x9] - cmp r7, 0x3 - ble _0801F332 - mov r1, r9 - strb r1, [r5, 0x8] -_0801F332: - ldr r0, _0801F3EC - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_80928A0 - ldr r2, _0801F3F0 - ldr r0, [r2] - adds r0, 0x1C - adds r1, r7, 0 - str r2, [sp, 0x24] - bl sub_8013800 - adds r6, r0, 0 - ldrb r1, [r4] - movs r0, 0x2 - ands r0, r1 - movs r4, 0xD - ldr r2, [sp, 0x24] - cmp r0, 0 - bne _0801F372 - movs r4, 0x8 - cmp r7, 0 - beq _0801F372 - ldr r0, [r2] - ldr r0, [r0, 0x50] - subs r2, r6, 0x2 - movs r1, 0x7 - str r1, [sp] - movs r1, 0xC - movs r3, 0x78 - bl sub_800792C -_0801F372: - mov r1, r8 - ldr r0, [r1] - ldr r3, [r0, 0x50] - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - adds r1, r6, 0 - ldr r2, _0801F3F4 - bl sub_8014FF0 -_0801F386: - adds r7, 0x1 - mov r1, r8 - ldr r0, [r1] - movs r1, 0x36 - ldrsh r0, [r0, r1] - cmp r7, r0 - blt _0801F2E0 -_0801F394: - ldr r4, _0801F3F0 - ldr r0, [r4] - ldr r0, [r0, 0x50] - bl sub_80073E0 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xB8 - ldr r0, [r0] - cmp r0, 0 - beq _0801F3DC - mov r0, r10 - cmp r0, 0 - beq _0801F3DC - ldr r0, [r1, 0x54] - bl sub_8008C54 - ldr r0, [r4] - ldr r0, [r0, 0x54] - bl sub_80073B8 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xB8 - ldr r2, [r0] - ldr r3, [r1, 0x54] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r1, 0 - bl sub_8014FF0 - ldr r0, [r4] - ldr r0, [r0, 0x54] - bl sub_80073E0 -_0801F3DC: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801F3EC: .4byte gUnknown_202DE58 -_0801F3F0: .4byte gUnknown_203B270 -_0801F3F4: .4byte gUnknown_80DC2A0 - thumb_func_end sub_801F280 - - thumb_func_start sub_801F3F8 -sub_801F3F8: - push {r4,r5,lr} - movs r4, 0 - ldr r0, _0801F424 - ldr r0, [r0] - movs r5, 0x1 - ldr r2, [r0, 0x10] - movs r3, 0x7 -_0801F406: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0801F412 - adds r4, 0x1 -_0801F412: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _0801F406 - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0801F424: .4byte gUnknown_203B270 - thumb_func_end sub_801F3F8 - - thumb_func_start sub_801F428 -sub_801F428: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - adds r4, r0, 0 - mov r9, r1 - lsls r4, 16 - asrs r4, 16 - ldr r5, _0801F50C - movs r0, 0xFA - lsls r0, 2 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - ldr r3, _0801F510 - movs r1, 0x58 - adds r2, r4, 0 - muls r2, r1 - ldr r1, [r3] - adds r1, r2 - str r1, [r0] - adds r1, r0, 0 - adds r1, 0x8 - str r1, [r0, 0x4] - movs r4, 0xDF - lsls r4, 2 - adds r1, r0, r4 - mov r2, r9 - str r2, [r1] - movs r6, 0xE0 - lsls r6, 2 - adds r2, r0, r6 - mov r3, r9 - lsls r1, r3, 1 - add r1, r9 - lsls r1, 3 - movs r3, 0xE1 - lsls r3, 2 - mov r8, r3 - add r1, r8 - adds r1, r0, r1 - str r1, [r2] - add r0, r8 - bl sub_8006518 - ldr r1, [r5] - adds r4, r1, r4 - ldr r2, [r4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - add r1, r8 - ldr r0, _0801F514 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r1, [r5] - adds r6, r1, r6 - ldr r0, [r6] - movs r4, 0xF9 - lsls r4, 2 - adds r1, r4 - str r1, [r0, 0x14] - movs r2, 0 - movs r0, 0x1 - strb r0, [r1] - ldr r0, [r5] - ldr r1, _0801F518 - adds r0, r1 - strb r2, [r0] - ldr r0, [r5] - ldr r3, _0801F51C - adds r0, r3 - movs r1, 0xC - strb r1, [r0] - ldr r0, [r5] - adds r4, 0x3 - adds r0, r4 - strb r2, [r0] - bl sub_8004914 - ldr r0, [r5] - add r0, r8 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - movs r0, 0xD2 - lsls r0, 2 - adds r4, r0 - bl sub_801F7E4 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0x4 - mov r3, r9 - bl sub_8013818 - bl sub_801F690 - bl sub_801F700 - movs r0, 0x1 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0801F50C: .4byte gUnknown_203B274 -_0801F510: .4byte gUnknown_203B45C -_0801F514: .4byte gUnknown_80DC2C4 -_0801F518: .4byte 0x000003e5 -_0801F51C: .4byte 0x000003e6 - thumb_func_end sub_801F428 - - thumb_func_start sub_801F520 -sub_801F520: - push {lr} - lsls r0, 24 - cmp r0, 0 - bne _0801F540 - ldr r0, _0801F53C - ldr r0, [r0] - movs r1, 0xD2 - lsls r1, 2 - adds r0, r1 - bl sub_8013660 - movs r0, 0 - b _0801F5AE - .align 2, 0 -_0801F53C: .4byte gUnknown_203B274 -_0801F540: - ldr r0, _0801F55C - ldr r0, [r0] - movs r1, 0xD2 - lsls r1, 2 - adds r0, r1 - bl GetKeyPress - cmp r0, 0x2 - beq _0801F566 - cmp r0, 0x2 - bgt _0801F560 - cmp r0, 0x1 - beq _0801F570 - b _0801F584 - .align 2, 0 -_0801F55C: .4byte gUnknown_203B274 -_0801F560: - cmp r0, 0x4 - beq _0801F57A - b _0801F584 -_0801F566: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0801F5AE -_0801F570: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0801F5AE -_0801F57A: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _0801F5AE -_0801F584: - ldr r0, _0801F5A0 - ldr r0, [r0] - movs r1, 0xD2 - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0801F5A4 - movs r0, 0 - b _0801F5AE - .align 2, 0 -_0801F5A0: .4byte gUnknown_203B274 -_0801F5A4: - bl sub_801F690 - bl sub_801F700 - movs r0, 0x1 -_0801F5AE: - pop {r1} - bx r1 - thumb_func_end sub_801F520 - - thumb_func_start sub_801F5B4 -sub_801F5B4: - push {r4,lr} - ldr r0, _0801F5E8 - ldr r1, [r0] - ldr r2, [r1, 0x4] - ldr r3, _0801F5EC - adds r0, r1, r3 - movs r4, 0 - ldrsh r3, [r0, r4] - movs r4, 0xD9 - lsls r4, 2 - adds r0, r1, r4 - movs r4, 0 - ldrsh r0, [r0, r4] - muls r0, r3 - movs r3, 0xD8 - lsls r3, 2 - adds r1, r3 - movs r4, 0 - ldrsh r1, [r1, r4] - adds r0, r1 - lsls r0, 1 - adds r2, r0 - ldrh r0, [r2] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0801F5E8: .4byte gUnknown_203B274 -_0801F5EC: .4byte 0x00000366 - thumb_func_end sub_801F5B4 - - thumb_func_start sub_801F5F0 -sub_801F5F0: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0801F638 - ldr r0, [r5] - movs r1, 0xE1 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - movs r2, 0 - bl sub_800641C - ldr r0, [r5] - movs r1, 0xD2 - lsls r1, 2 - adds r0, r1 - bl sub_8013984 - bl sub_801F690 - bl sub_801F700 - cmp r4, 0 - beq _0801F632 - ldr r0, [r5] - movs r1, 0xD2 - lsls r1, 2 - adds r0, r1 - bl AddMenuCursorSprite -_0801F632: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801F638: .4byte gUnknown_203B274 - thumb_func_end sub_801F5F0 - - thumb_func_start sub_801F63C -sub_801F63C: - push {r4-r6,lr} - ldr r5, _0801F688 - ldr r2, [r5] - cmp r2, 0 - beq _0801F680 - movs r1, 0xDF - lsls r1, 2 - adds r0, r2, r1 - ldr r0, [r0] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - movs r4, 0xE1 - lsls r4, 2 - adds r1, r4 - ldr r0, _0801F68C - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - bl sub_8004914 - ldr r0, [r5] - adds r0, r4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r5] - bl MemoryFree - movs r0, 0 - str r0, [r5] -_0801F680: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0801F688: .4byte gUnknown_203B274 -_0801F68C: .4byte gUnknown_80DC2AC - thumb_func_end sub_801F63C - - thumb_func_start sub_801F690 -sub_801F690: - push {r4,r5,lr} - ldr r5, _0801F6F4 - ldr r0, [r5] - ldr r1, _0801F6F8 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r3, [r5] - movs r1, 0xDF - lsls r1, 2 - adds r4, r3, r1 - ldr r2, [r4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r1, r3, r1 - ldr r2, _0801F6FC - adds r1, r2 - asrs r2, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r3, r0 - adds r2, 0x2 - movs r0, 0xE5 - lsls r0, 2 - adds r3, r0 - strh r2, [r3] - bl sub_8004914 - ldr r0, [r5] - movs r1, 0xE1 - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801F6F4: .4byte gUnknown_203B274 -_0801F6F8: .4byte 0x00000362 -_0801F6FC: .4byte 0x00000392 - thumb_func_end sub_801F690 - - thumb_func_start sub_801F700 -sub_801F700: - push {r4-r7,lr} - sub sp, 0xB4 - ldr r6, _0801F7D4 - ldr r0, [r6] - movs r4, 0xDF - lsls r4, 2 - adds r0, r4 - ldr r0, [r0] - bl sub_8008C54 - ldr r0, [r6] - adds r0, r4 - ldr r0, [r0] - bl sub_80073B8 - add r5, sp, 0x34 - ldr r1, _0801F7D8 - ldr r0, [r6] - ldr r3, _0801F7DC - adds r2, r0, r3 - movs r7, 0 - ldrsh r2, [r2, r7] - adds r2, 0x1 - adds r3, 0x2 - adds r0, r3 - movs r7, 0 - ldrsh r3, [r0, r7] - adds r0, r5, 0 - bl sub_800D158 - ldr r0, [r6] - adds r0, r4 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x10 - movs r1, 0 - adds r2, r5, 0 - bl xxx_call_draw_string - movs r4, 0 - ldr r0, [r6] - ldr r1, _0801F7E0 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r4, r0 - bge _0801F7BC - adds r5, r6, 0 -_0801F762: - ldr r1, [r5] - ldr r2, [r1, 0x4] - ldr r3, _0801F7DC - adds r0, r1, r3 - movs r6, 0 - ldrsh r3, [r0, r6] - movs r7, 0xD9 - lsls r7, 2 - adds r1, r7 - movs r6, 0 - ldrsh r0, [r1, r6] - muls r0, r3 - adds r0, r4 - lsls r0, 1 - adds r2, r0 - ldrh r1, [r2] - add r0, sp, 0x4 - bl sub_8092C84 - ldr r0, [r5] - subs r7, 0x1C - adds r0, r7 - adds r1, r4, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, [r5] - movs r2, 0xDF - lsls r2, 2 - adds r0, r2 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - add r2, sp, 0x4 - bl xxx_call_draw_string - adds r4, 0x1 - ldr r0, [r5] - ldr r3, _0801F7E0 - adds r0, r3 - movs r6, 0 - ldrsh r0, [r0, r6] - cmp r4, r0 - blt _0801F762 -_0801F7BC: - ldr r0, _0801F7D4 - ldr r0, [r0] - movs r7, 0xDF - lsls r7, 2 - adds r0, r7 - ldr r0, [r0] - bl sub_80073E0 - add sp, 0xB4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801F7D4: .4byte gUnknown_203B274 -_0801F7D8: .4byte gUnknown_80DC2DC -_0801F7DC: .4byte 0x00000366 -_0801F7E0: .4byte 0x00000362 - thumb_func_end sub_801F700 - - thumb_func_start sub_801F7E4 -sub_801F7E4: - push {r4,lr} - ldr r4, _0801F804 - ldr r1, [r4] - ldr r0, [r1, 0x4] - ldr r1, [r1] - bl sub_808E218 - ldr r0, [r4] - ldr r0, [r0, 0x4] - movs r1, 0xCF - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0801F804: .4byte gUnknown_203B274 - thumb_func_end sub_801F7E4 - - thumb_func_start sub_801F808 -sub_801F808: - push {r4,r5,lr} - adds r4, r0, 0 - movs r0, 0x1 - bl sub_8004D8C - ldr r5, _0801F88C - movs r0, 0xD4 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - str r1, [r0, 0x5C] - adds r1, r0, 0 - adds r1, 0x64 - str r1, [r0, 0x60] - adds r0, r1, 0 - bl sub_80140B4 - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x64 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r5] - str r4, [r0, 0x4] - movs r2, 0x4 - ldrh r0, [r4, 0x6] - cmp r0, 0 - bne _0801F862 - adds r3, r5, 0 -_0801F84C: - subs r2, 0x1 - cmp r2, 0x1 - ble _0801F862 - ldr r0, [r3] - ldr r1, [r0, 0x4] - lsls r0, r2, 1 - adds r0, r1 - subs r0, 0x2 - ldrh r0, [r0] - cmp r0, 0 - beq _0801F84C -_0801F862: - ldr r4, _0801F88C - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x28 - ldr r3, [r1, 0x5C] - adds r1, r2, 0 - movs r2, 0x1 - bl sub_8013818 - ldr r0, [r4] - adds r0, 0xC8 - bl sub_801317C - movs r0, 0 - bl sub_801F918 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0801F88C: .4byte gUnknown_203B278 - thumb_func_end sub_801F808 - - thumb_func_start sub_801F890 -sub_801F890: - push {lr} - ldr r0, _0801F8A8 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x1 - beq _0801F8BC - cmp r0, 0x1 - bgt _0801F8AC - cmp r0, 0 - beq _0801F8B6 - b _0801F8C6 - .align 2, 0 -_0801F8A8: .4byte gUnknown_203B278 -_0801F8AC: - cmp r0, 0x2 - beq _0801F8C6 - cmp r0, 0x3 - beq _0801F8C2 - b _0801F8C6 -_0801F8B6: - bl sub_801FA58 - b _0801F8CA -_0801F8BC: - bl sub_801FAD4 - b _0801F8CA -_0801F8C2: - movs r0, 0x3 - b _0801F8CC -_0801F8C6: - movs r0, 0x2 - b _0801F8CC -_0801F8CA: - movs r0, 0 -_0801F8CC: - pop {r1} - bx r1 - thumb_func_end sub_801F890 - - thumb_func_start sub_801F8D0 -sub_801F8D0: - push {r4,r5,lr} - ldr r4, _0801F910 - ldr r2, [r4] - cmp r2, 0 - beq _0801F90A - ldr r0, [r2, 0x5C] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x64 - ldr r0, _0801F914 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x64 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801F90A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801F910: .4byte gUnknown_203B278 -_0801F914: .4byte gUnknown_80DC2F8 - thumb_func_end sub_801F8D0 - - thumb_func_start sub_801F918 -sub_801F918: - push {lr} - ldr r1, _0801F92C - ldr r1, [r1] - str r0, [r1] - bl sub_801F930 - bl sub_801F9A4 - pop {r0} - bx r0 - .align 2, 0 -_0801F92C: .4byte gUnknown_203B278 - thumb_func_end sub_801F918 - - thumb_func_start sub_801F930 -sub_801F930: - push {r4,lr} - ldr r4, _0801F94C - ldr r0, [r4] - adds r0, 0x64 - bl sub_80140B4 - ldr r2, [r4] - ldr r3, [r2] - cmp r3, 0 - beq _0801F950 - cmp r3, 0x1 - beq _0801F98C - b _0801F99C - .align 2, 0 -_0801F94C: .4byte gUnknown_203B278 -_0801F950: - ldr r0, [r2, 0x60] - adds r1, r2, 0 - adds r1, 0xC4 - str r1, [r0, 0x14] - adds r0, r2, 0 - adds r0, 0x48 - ldrh r0, [r0] - strb r0, [r1] - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0x46 - ldrh r1, [r1] - adds r0, 0xC5 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xC6 - movs r1, 0x10 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xC7 - strb r3, [r0] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x64 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - b _0801F99C -_0801F98C: - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x64 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C -_0801F99C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801F930 - - thumb_func_start sub_801F9A4 -sub_801F9A4: - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, _0801F9EC - ldr r0, [r5] - ldr r4, [r0] - cmp r4, 0x1 - beq _0801F9F0 - cmp r4, 0x1 - bgt _0801FA48 - cmp r4, 0 - bne _0801FA48 - ldr r0, [r0, 0x5C] - bl sub_8008C54 - ldr r3, [r5] - adds r2, r3, 0 - adds r2, 0x46 - movs r1, 0 - ldrsh r0, [r2, r1] - ldr r1, [r3, 0x4] - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r3, 0x8] - movs r1, 0 - ldrsh r0, [r2, r1] - ldrh r1, [r3, 0x8] - ldr r2, [r3, 0x5C] - adds r3, 0x14 - bl sub_8093D9C - ldr r1, [r5] - str r0, [r1, 0x10] - str r4, [r1, 0x24] - b _0801FA48 - .align 2, 0 -_0801F9EC: .4byte gUnknown_203B278 -_0801F9F0: - ldr r0, [r0, 0x5C] - bl sub_8008C54 - ldr r0, [r5] - ldr r0, [r0, 0x5C] - bl sub_80073B8 - ldr r0, [r5] - ldr r1, [r0, 0xC] - lsls r1, 2 - adds r0, 0x14 - adds r0, r1 - ldr r1, [r0] - ldr r0, _0801FA50 - ldr r1, [r1] - bl strcpy - ldr r2, _0801FA54 - ldr r0, [r5] - ldr r3, [r0, 0x5C] - movs r4, 0 - str r4, [sp] - movs r0, 0x10 - movs r1, 0 - bl sub_8014FF0 - ldr r3, [r5] - ldr r1, [r3, 0xC] - lsls r1, 2 - adds r0, r3, 0 - adds r0, 0x14 - adds r0, r1 - ldr r0, [r0] - ldr r2, [r0, 0x4] - ldr r3, [r3, 0x5C] - str r4, [sp] - movs r0, 0x4 - movs r1, 0x10 - bl sub_8014FF0 - ldr r0, [r5] - ldr r0, [r0, 0x5C] - bl sub_80073E0 -_0801FA48: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801FA50: .4byte gUnknown_202DF98 -_0801FA54: .4byte gUnknown_80DC310 - thumb_func_end sub_801F9A4 - - thumb_func_start sub_801FA58 -sub_801FA58: - push {r4,lr} - ldr r0, _0801FAA4 - ldr r2, [r0] - ldr r1, [r2, 0x10] - adds r4, r0, 0 - cmp r1, 0 - beq _0801FA7C - ldr r0, [r2, 0x24] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0801FA74 - bl sub_8013F84 -_0801FA74: - ldr r1, [r4] - ldr r0, [r1, 0x24] - adds r0, 0x1 - str r0, [r1, 0x24] -_0801FA7C: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xC8 - ldr r1, [r1, 0x5C] - bl sub_8012A64 - cmp r0, 0x1 - beq _0801FAA8 - cmp r0, 0x2 - beq _0801FAC2 - ldr r0, [r4] - adds r0, 0x28 - bl sub_8013938 - lsls r0, 24 - cmp r0, 0 - beq _0801FACE - movs r0, 0 - b _0801FACA - .align 2, 0 -_0801FAA4: .4byte gUnknown_203B278 -_0801FAA8: - movs r0, 0 - bl sub_80119D4 - ldr r1, [r4] - ldr r0, [r1, 0x10] - cmp r0, 0 - beq _0801FABE - movs r0, 0 - str r0, [r1, 0xC] - movs r0, 0x1 - b _0801FACA -_0801FABE: - movs r0, 0x3 - b _0801FACA -_0801FAC2: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 -_0801FACA: - bl sub_801F918 -_0801FACE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801FA58 - - thumb_func_start sub_801FAD4 -sub_801FAD4: - push {r4,lr} - ldr r0, _0801FB14 - ldr r3, [r0] - ldr r1, [r3, 0x10] - subs r1, 0x1 - ldr r2, [r3, 0xC] - adds r4, r0, 0 - cmp r2, r1 - bge _0801FAFC - ldr r0, [r3, 0x24] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0801FAF4 - bl sub_8013F84 -_0801FAF4: - ldr r1, [r4] - ldr r0, [r1, 0x24] - adds r0, 0x1 - str r0, [r1, 0x24] -_0801FAFC: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xC8 - ldr r1, [r1, 0x5C] - bl sub_8012A64 - cmp r0, 0x1 - beq _0801FB18 - cmp r0, 0x2 - beq _0801FB3C - b _0801FB48 - .align 2, 0 -_0801FB14: .4byte gUnknown_203B278 -_0801FB18: - movs r0, 0 - bl sub_80119D4 - ldr r0, [r4] - ldr r1, [r0, 0xC] - adds r1, 0x1 - str r1, [r0, 0xC] - ldr r0, [r0, 0x10] - cmp r1, r0 - bge _0801FB34 - movs r0, 0x1 - bl sub_801F918 - b _0801FB48 -_0801FB34: - movs r0, 0 - bl sub_801F918 - b _0801FB48 -_0801FB3C: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - bl sub_801F918 -_0801FB48: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801FAD4 - - thumb_func_start sub_801FB50 -sub_801FB50: - push {r4-r7,lr} - adds r4, r0, 0 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r6, _0801FBC0 - movs r0, 0xF0 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r6] - movs r7, 0 - str r7, [r0, 0x70] - str r7, [r0, 0x74] - str r7, [r0, 0x78] - str r4, [r0] - strb r7, [r0, 0x15] - ldr r0, _0801FBC4 - ldr r4, _0801FBC8 - adds r1, r4, 0 - bl sub_808D8E0 - ldr r5, _0801FBCC - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_808D8E0 - adds r0, r4, 0 - bl sub_808D994 - adds r1, r0, 0 - adds r0, r5, 0 - subs r0, 0x50 - bl strcpy - subs r5, 0xF0 - bl sub_808D33C - adds r1, r0, 0 - adds r0, r5, 0 - bl sub_808DA34 - ldr r2, [r6] - ldr r0, [r2] - cmp r0, 0x1 - bne _0801FBD0 - movs r1, 0xBE - lsls r1, 1 - adds r0, r2, r1 - str r7, [r0] - b _0801FBDE - .align 2, 0 -_0801FBC0: .4byte gUnknown_203B27C -_0801FBC4: .4byte gUnknown_202E5D8 -_0801FBC8: .4byte 0x00000155 -_0801FBCC: .4byte gUnknown_202E1C8 -_0801FBD0: - movs r3, 0xBE - lsls r3, 1 - adds r1, r2, r3 - movs r4, 0xB6 - lsls r4, 1 - adds r0, r2, r4 - str r0, [r1] -_0801FBDE: - ldr r0, _0801FC34 - bl sub_808DDD0 - ldr r2, _0801FC38 - ldr r3, [r2] - movs r4, 0xB6 - lsls r4, 1 - adds r1, r3, r4 - str r0, [r1] - adds r4, 0x4 - adds r1, r3, r4 - ldr r0, [r0, 0x4] - str r0, [r1] - movs r1, 0xBC - lsls r1, 1 - adds r0, r3, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - ldr r3, _0801FC3C - adds r0, r3 - strb r1, [r0] - ldr r0, [r2] - adds r4, 0xA - adds r0, r4 - strb r1, [r0] - ldr r2, [r2] - movs r0, 0xBA - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x2 - strh r0, [r1] - subs r3, 0x3 - adds r1, r2, r3 - movs r0, 0x8 - strh r0, [r1] - movs r0, 0 - bl sub_801FDA8 - movs r0, 0x1 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0801FC34: .4byte 0x00000155 -_0801FC38: .4byte gUnknown_203B27C -_0801FC3C: .4byte 0x00000179 - thumb_func_end sub_801FB50 - - thumb_func_start sub_801FC40 -sub_801FC40: - push {lr} - ldr r1, _0801FC5C - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r2, r1, 0 - cmp r0, 0x22 - bls _0801FC50 - b _0801FD70 -_0801FC50: - lsls r0, 2 - ldr r1, _0801FC60 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801FC5C: .4byte gUnknown_203B27C -_0801FC60: .4byte _0801FC64 - .align 2, 0 -_0801FC64: - .4byte _0801FCF0 - .4byte _0801FCF0 - .4byte _0801FCF6 - .4byte _0801FD70 - .4byte _0801FD70 - .4byte _0801FD70 - .4byte _0801FD70 - .4byte _0801FCFC - .4byte _0801FD02 - .4byte _0801FD70 - .4byte _0801FD70 - .4byte _0801FD70 - .4byte _0801FD70 - .4byte _0801FD50 - .4byte _0801FD70 - .4byte _0801FD08 - .4byte _0801FD08 - .4byte _0801FD0E - .4byte _0801FD14 - .4byte _0801FD1A - .4byte _0801FD70 - .4byte _0801FD20 - .4byte _0801FD20 - .4byte _0801FD26 - .4byte _0801FD2C - .4byte _0801FD70 - .4byte _0801FD70 - .4byte _0801FD70 - .4byte _0801FD70 - .4byte _0801FD32 - .4byte _0801FD38 - .4byte _0801FD38 - .4byte _0801FD3E - .4byte _0801FD44 - .4byte _0801FD4A -_0801FCF0: - bl sub_8021154 - b _0801FD74 -_0801FCF6: - bl sub_80209AC - b _0801FD74 -_0801FCFC: - bl sub_80209FC - b _0801FD74 -_0801FD02: - bl sub_8020A34 - b _0801FD74 -_0801FD08: - bl sub_8020A80 - b _0801FD74 -_0801FD0E: - bl sub_8020B38 - b _0801FD74 -_0801FD14: - bl sub_8020C2C - b _0801FD74 -_0801FD1A: - bl sub_8020C48 - b _0801FD74 -_0801FD20: - bl sub_8020C64 - b _0801FD74 -_0801FD26: - bl sub_8020CC0 - b _0801FD74 -_0801FD2C: - bl sub_8020D74 - b _0801FD74 -_0801FD32: - bl sub_8020D90 - b _0801FD74 -_0801FD38: - bl sub_8020DCC - b _0801FD74 -_0801FD3E: - bl sub_8020EB4 - b _0801FD74 -_0801FD44: - bl sub_80210C8 - b _0801FD74 -_0801FD4A: - bl sub_80210E4 - b _0801FD74 -_0801FD50: - ldr r0, [r2] - ldrb r0, [r0, 0x15] - cmp r0, 0x1 - bne _0801FD68 - ldr r0, _0801FD6C - ldr r1, [r0] - movs r0, 0x98 - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - subs r0, 0x96 - str r0, [r1] -_0801FD68: - movs r0, 0x3 - b _0801FD76 - .align 2, 0 -_0801FD6C: .4byte gUnknown_203B460 -_0801FD70: - bl sub_8021130 -_0801FD74: - movs r0, 0 -_0801FD76: - pop {r1} - bx r1 - thumb_func_end sub_801FC40 - - thumb_func_start sub_801FD7C -sub_801FD7C: - push {r4,lr} - ldr r4, _0801FDA4 - ldr r0, [r4] - cmp r0, 0 - beq _0801FD9C - movs r1, 0xB6 - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801FD9C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801FDA4: .4byte gUnknown_203B27C - thumb_func_end sub_801FD7C - - thumb_func_start sub_801FDA8 -sub_801FDA8: - push {lr} - ldr r1, _0801FDBC - ldr r1, [r1] - str r0, [r1, 0x4] - bl sub_801FDC0 - bl sub_801FF28 - pop {r0} - bx r0 - .align 2, 0 -_0801FDBC: .4byte gUnknown_203B27C - thumb_func_end sub_801FDA8 - - thumb_func_start sub_801FDC0 -sub_801FDC0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _0801FDE8 - ldr r0, [r4] - movs r5, 0xC0 - lsls r5, 1 - adds r0, r5 - bl sub_8006518 - ldr r0, [r4] - ldr r1, [r0, 0x4] - cmp r1, 0x11 - beq _0801FE38 - cmp r1, 0x11 - bgt _0801FDEC - cmp r1, 0x2 - beq _0801FDF6 - b _0801FED4 - .align 2, 0 -_0801FDE8: .4byte gUnknown_203B27C -_0801FDEC: - cmp r1, 0x17 - beq _0801FE6C - cmp r1, 0x20 - beq _0801FE88 - b _0801FED4 -_0801FDF6: - adds r0, r5 - movs r1, 0x80 - strb r1, [r0] - ldr r0, [r4] - movs r2, 0xCC - lsls r2, 1 - adds r0, r2 - strb r1, [r0] - ldr r0, [r4] - movs r3, 0xD8 - lsls r3, 1 - adds r0, r3 - strb r1, [r0] - ldr r1, [r4] - movs r6, 0xE4 - lsls r6, 1 - adds r1, r6 - ldr r0, _0801FE34 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - bl sub_8004914 - ldr r0, [r4] - adds r0, r5 - movs r1, 0x1 - movs r2, 0 - bl sub_800641C - b _0801FF14 - .align 2, 0 -_0801FE34: .4byte gUnknown_80DC37C -_0801FE38: - bl sub_80205D0 - ldr r2, [r4] - movs r0, 0xD8 - lsls r0, 1 - adds r2, r0 - ldr r1, _0801FE68 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0x7C - bl sub_8012CAC - bl sub_8004914 - ldr r0, [r4] - movs r6, 0xC0 - lsls r6, 1 - adds r0, r6 - b _0801FEC2 - .align 2, 0 -_0801FE68: .4byte gUnknown_80DC334 -_0801FE6C: - bl sub_802069C - ldr r2, [r4] - movs r0, 0xD8 - lsls r0, 1 - adds r2, r0 - ldr r1, _0801FE84 - ldm r1!, {r3,r6,r7} - stm r2!, {r3,r6,r7} - ldm r1!, {r3,r6,r7} - stm r2!, {r3,r6,r7} - b _0801FEB0 - .align 2, 0 -_0801FE84: .4byte gUnknown_80DC334 -_0801FE88: - bl sub_802074C - ldr r1, [r4] - movs r7, 0xCC - lsls r7, 1 - adds r1, r7 - ldr r0, _0801FECC - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r2, [r4] - movs r0, 0xD8 - lsls r0, 1 - adds r2, r0 - ldr r1, _0801FED0 - ldm r1!, {r3,r6,r7} - stm r2!, {r3,r6,r7} - ldm r1!, {r3,r6,r7} - stm r2!, {r3,r6,r7} -_0801FEB0: - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0x7C - bl sub_8012CAC - bl sub_8004914 - ldr r0, [r4] - adds r0, r5 -_0801FEC2: - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - b _0801FF14 - .align 2, 0 -_0801FECC: .4byte gUnknown_80DC31C -_0801FED0: .4byte gUnknown_80DC34C -_0801FED4: - ldr r5, _0801FF20 - mov r12, r5 - movs r6, 0xC0 - lsls r6, 1 - mov r8, r6 - ldr r4, _0801FF24 - movs r3, 0 - movs r2, 0x3 -_0801FEE4: - mov r7, r12 - ldr r1, [r7] - adds r1, r3 - add r1, r8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0801FEE4 - bl sub_8004914 - ldr r0, _0801FF20 - ldr r0, [r0] - movs r1, 0xC0 - lsls r1, 1 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C -_0801FF14: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801FF20: .4byte gUnknown_203B27C -_0801FF24: .4byte gUnknown_80DC31C - thumb_func_end sub_801FDC0 - - thumb_func_start sub_801FF28 -sub_801FF28: - push {r4,r5,lr} - sub sp, 0x14 - ldr r1, _0801FF44 - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r5, r1, 0 - cmp r0, 0x23 - bls _0801FF3A - b _08020562 -_0801FF3A: - lsls r0, 2 - ldr r1, _0801FF48 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801FF44: .4byte gUnknown_203B27C -_0801FF48: .4byte _0801FF4C - .align 2, 0 -_0801FF4C: - .4byte _0801FFDC - .4byte _08020018 - .4byte _08020064 - .4byte _0802006C - .4byte _08020090 - .4byte _080200B4 - .4byte _080200D8 - .4byte _080200FC - .4byte _08020144 - .4byte _0802018C - .4byte _080201B0 - .4byte _080201D4 - .4byte _080201F8 - .4byte _08020562 - .4byte _0802021C - .4byte _08020240 - .4byte _0802024E - .4byte _08020256 - .4byte _08020274 - .4byte _08020282 - .4byte _0802028E - .4byte _080202B0 - .4byte _080202BE - .4byte _080202C6 - .4byte _080202E4 - .4byte _08020304 - .4byte _08020344 - .4byte _080203B0 - .4byte _080203D4 - .4byte _0802038C - .4byte _080203F8 - .4byte _08020428 - .4byte _08020434 - .4byte _08020460 - .4byte _08020478 - .4byte _08020500 -_0801FFDC: - ldr r0, [r5] - movs r4, 0x2 - str r4, [r0, 0x6C] - bl sub_8020574 - ldr r5, [r5] - str r4, [r5, 0x8] - ldr r2, _08020014 - ldr r1, [r5] - movs r0, 0x64 - muls r0, r1 - adds r0, r2 - ldr r0, [r0] - ldr r2, [r5, 0x6C] - adds r3, r5, 0 - adds r3, 0x7C - adds r1, r5, 0 - adds r1, 0xBC - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - movs r4, 0xBE - lsls r4, 1 - adds r1, r5, r4 - b _0802004C - .align 2, 0 -_08020014: .4byte gUnknown_80D8888 -_08020018: - bl sub_8020574 - ldr r0, _0802005C - ldr r4, [r0] - movs r0, 0x2 - str r0, [r4, 0x8] - ldr r1, _08020060 - ldr r2, [r4] - movs r0, 0x64 - muls r0, r2 - adds r1, 0x4 - adds r0, r1 - ldr r0, [r0] - ldr r2, [r4, 0x6C] - adds r3, r4, 0 - adds r3, 0x7C - adds r1, r4, 0 - adds r1, 0xBC - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - movs r5, 0xBE - lsls r5, 1 - adds r1, r4, r5 -_0802004C: - ldr r1, [r1] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _08020562 - .align 2, 0 -_0802005C: .4byte gUnknown_203B27C -_08020060: .4byte gUnknown_80D8888 -_08020064: - movs r0, 0x3 - bl sub_8016C40 - b _08020562 -_0802006C: - ldr r2, [r5] - movs r0, 0x1F - str r0, [r2, 0x8] - ldr r1, _0802008C - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x8 - adds r0, r1 - ldr r0, [r0] - movs r1, 0xBE - lsls r1, 1 - adds r2, r1 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_0802008C: .4byte gUnknown_80D8888 -_08020090: - ldr r2, [r5] - movs r0, 0x1F - str r0, [r2, 0x8] - ldr r1, _080200B0 - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0xC - adds r0, r1 - ldr r0, [r0] - movs r4, 0xBE - lsls r4, 1 - adds r2, r4 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_080200B0: .4byte gUnknown_80D8888 -_080200B4: - ldr r2, [r5] - movs r0, 0x1F - str r0, [r2, 0x8] - ldr r1, _080200D4 - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x10 - adds r0, r1 - ldr r0, [r0] - movs r5, 0xBE - lsls r5, 1 - adds r2, r5 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_080200D4: .4byte gUnknown_80D8888 -_080200D8: - ldr r2, [r5] - movs r0, 0x1F - str r0, [r2, 0x8] - ldr r1, _080200F8 - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x14 - adds r0, r1 - ldr r0, [r0] - movs r1, 0xBE - lsls r1, 1 - adds r2, r1 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_080200F8: .4byte gUnknown_80D8888 -_080200FC: - bl sub_8020900 - ldr r1, _0802013C - ldr r0, _08020140 - ldr r4, [r0] - ldr r2, [r4] - movs r0, 0x64 - muls r0, r2 - adds r1, 0x18 - adds r0, r1 - ldr r0, [r0] - adds r3, r4, 0 - adds r3, 0x7C - adds r1, r4, 0 - adds r1, 0xBC - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - movs r2, 0xBE - lsls r2, 1 - adds r1, r4, r2 - ldr r1, [r1] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x10 - bl sub_8014248 - b _08020562 - .align 2, 0 -_0802013C: .4byte gUnknown_80D8888 -_08020140: .4byte gUnknown_203B27C -_08020144: - bl sub_8020950 - ldr r1, _08020184 - ldr r0, _08020188 - ldr r4, [r0] - ldr r2, [r4] - movs r0, 0x64 - muls r0, r2 - adds r1, 0x54 - adds r0, r1 - ldr r0, [r0] - adds r3, r4, 0 - adds r3, 0x7C - adds r1, r4, 0 - adds r1, 0xBC - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - movs r5, 0xBE - lsls r5, 1 - adds r1, r4, r5 - ldr r1, [r1] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0xD - bl sub_8014248 - b _08020562 - .align 2, 0 -_08020184: .4byte gUnknown_80D8888 -_08020188: .4byte gUnknown_203B27C -_0802018C: - ldr r2, [r5] - movs r0, 0x1 - str r0, [r2, 0x8] - ldr r1, _080201AC - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x58 - adds r0, r1 - ldr r0, [r0] - movs r1, 0xBE - lsls r1, 1 - adds r2, r1 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_080201AC: .4byte gUnknown_80D8888 -_080201B0: - ldr r2, [r5] - movs r0, 0x1 - str r0, [r2, 0x8] - ldr r1, _080201D0 - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x5C - adds r0, r1 - ldr r0, [r0] - movs r4, 0xBE - lsls r4, 1 - adds r2, r4 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_080201D0: .4byte gUnknown_80D8888 -_080201D4: - ldr r2, [r5] - movs r0, 0x1 - str r0, [r2, 0x8] - ldr r1, _080201F4 - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x60 - adds r0, r1 - ldr r0, [r0] - movs r5, 0xBE - lsls r5, 1 - adds r2, r5 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_080201F4: .4byte gUnknown_80D8888 -_080201F8: - ldr r2, [r5] - movs r0, 0xD - str r0, [r2, 0x8] - ldr r1, _08020218 - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x1C - adds r0, r1 - ldr r0, [r0] - movs r1, 0xBE - lsls r1, 1 - adds r2, r1 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_08020218: .4byte gUnknown_80D8888 -_0802021C: - ldr r2, [r5] - movs r0, 0xF - str r0, [r2, 0x8] - ldr r1, _0802023C - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x20 - adds r0, r1 - ldr r0, [r0] - movs r4, 0xBE - lsls r4, 1 - adds r2, r4 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_0802023C: .4byte gUnknown_80D8888 -_08020240: - movs r0, 0x2 - movs r1, 0 - movs r2, 0 - movs r3, 0xA - bl sub_8023868 - b _08020562 -_0802024E: - movs r0, 0x1 - bl sub_8023B7C - b _08020562 -_08020256: - bl sub_8023DA4 - ldr r0, _08020270 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0xCC - adds r1, r2, 0 - adds r1, 0x7C - adds r3, r2, 0 - adds r3, 0xBC - ldr r2, [r2, 0x70] - b _0802044C - .align 2, 0 -_08020270: .4byte gUnknown_203B27C -_08020274: - ldr r0, [r5] - movs r5, 0xC - ldrsh r0, [r0, r5] - movs r1, 0x2 - bl sub_8024458 - b _08020562 -_08020282: - ldr r0, [r5] - movs r1, 0xC - ldrsh r0, [r0, r1] - bl sub_801BEEC - b _08020562 -_0802028E: - ldr r2, [r5] - movs r0, 0x15 - str r0, [r2, 0x8] - ldr r1, _080202AC - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x24 - adds r0, r1 - ldr r0, [r0] - movs r4, 0xBE - lsls r4, 1 - adds r2, r4 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_080202AC: .4byte gUnknown_80D8888 -_080202B0: - ldr r0, [r5] - movs r5, 0xC - ldrsh r0, [r0, r5] - movs r1, 0 - bl sub_801F428 - b _08020562 -_080202BE: - movs r0, 0x1 - bl sub_801F5F0 - b _08020562 -_080202C6: - bl sub_801F700 - ldr r0, _080202E0 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0xCC - adds r1, r2, 0 - adds r1, 0x7C - adds r3, r2, 0 - adds r3, 0xBC - ldr r2, [r2, 0x74] - b _0802044C - .align 2, 0 -_080202E0: .4byte gUnknown_203B27C -_080202E4: - ldr r0, [r5] - ldrh r1, [r0, 0x1C] - adds r0, 0x64 - strh r1, [r0] - movs r2, 0x1 - adds r4, r5, 0 - movs r3, 0 -_080202F2: - ldr r0, [r4] - lsls r1, r2, 1 - adds r0, 0x64 - adds r0, r1 - strh r3, [r0] - adds r2, 0x1 - cmp r2, 0x3 - ble _080202F2 - b _0802046E -_08020304: - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x24 - ldr r1, [r1, 0x10] - adds r1, 0x2C - bl sub_8094060 - ldr r1, [r5] - movs r0, 0x10 - str r0, [r1, 0x8] - ldr r0, _0802033C - ldrh r1, [r1, 0x1E] - bl sub_8092C84 - ldr r1, _08020340 - ldr r2, [r5] - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x28 - adds r0, r1 - ldr r0, [r0] - movs r1, 0xBE - lsls r1, 1 - adds r2, r1 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_0802033C: .4byte gUnknown_202DF98 -_08020340: .4byte gUnknown_80D8888 -_08020344: - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x24 - ldr r1, [r1, 0x10] - adds r1, 0x2C - bl sub_8094060 - ldr r3, [r5] - movs r0, 0x10 - str r0, [r3, 0x8] - ldrb r0, [r3, 0x14] - cmp r0, 0 - beq _08020370 - ldr r1, _0802036C - ldr r2, [r3] - movs r0, 0x64 - muls r0, r2 - adds r1, 0x38 - b _08020520 - .align 2, 0 -_0802036C: .4byte gUnknown_80D8888 -_08020370: - ldr r1, _08020388 - ldr r2, [r3] - movs r0, 0x64 - muls r0, r2 - adds r1, 0x34 - adds r0, r1 - ldr r0, [r0] - movs r4, 0xBE - lsls r4, 1 - adds r1, r3, r4 - b _0802052A - .align 2, 0 -_08020388: .4byte gUnknown_80D8888 -_0802038C: - ldr r2, [r5] - ldr r0, [r2] - cmp r0, 0 - bne _080203A2 - movs r5, 0xC - ldrsh r1, [r2, r5] - adds r2, 0x24 - movs r0, 0 - bl sub_801E80C - b _08020562 -_080203A2: - movs r0, 0xC - ldrsh r1, [r2, r0] - adds r2, 0x24 - movs r0, 0x1 - bl sub_801E80C - b _08020562 -_080203B0: - ldr r2, [r5] - movs r0, 0x10 - str r0, [r2, 0x8] - ldr r1, _080203D0 - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x3C - adds r0, r1 - ldr r0, [r0] - movs r1, 0xBE - lsls r1, 1 - adds r2, r1 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_080203D0: .4byte gUnknown_80D8888 -_080203D4: - ldr r2, [r5] - movs r0, 0x10 - str r0, [r2, 0x8] - ldr r1, _080203F4 - ldr r3, [r2] - movs r0, 0x64 - muls r0, r3 - adds r1, 0x40 - adds r0, r1 - ldr r0, [r0] - movs r4, 0xBE - lsls r4, 1 - adds r2, r4 - ldr r2, [r2] - b _0802052C - .align 2, 0 -_080203F4: .4byte gUnknown_80D8888 -_080203F8: - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x24 - ldr r1, [r1, 0x10] - adds r1, 0x2C - bl sub_809401C - ldr r0, [r5] - movs r5, 0xC - ldrsh r1, [r0, r5] - adds r2, r0, 0 - adds r2, 0x24 - ldrb r3, [r0, 0x15] - ldr r0, _08020424 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - movs r0, 0x1 - bl sub_801EE10 - b _08020562 - .align 2, 0 -_08020424: .4byte gUnknown_80DC394 -_08020428: - ldr r0, [r5] - ldrb r1, [r0, 0x15] - movs r0, 0x1 - bl sub_801F1B0 - b _08020562 -_08020434: - movs r0, 0 - bl sub_801F280 - ldr r0, _0802045C - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0xCC - adds r1, r2, 0 - adds r1, 0x7C - adds r3, r2, 0 - adds r3, 0xBC - ldr r2, [r2, 0x78] -_0802044C: - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _08020562 - .align 2, 0 -_0802045C: .4byte gUnknown_203B27C -_08020460: - ldr r2, [r5] - ldr r0, [r2, 0x18] - adds r1, r2, 0 - adds r1, 0x24 - adds r2, 0x64 - bl sub_8093560 -_0802046E: - ldr r0, [r5] - adds r0, 0x64 - bl sub_801F808 - b _08020562 -_08020478: - bl sub_80208B0 - ldr r0, _080204B8 - ldr r4, _080204BC - ldr r1, [r4] - ldrh r1, [r1, 0x20] - bl sub_8092C84 - ldr r4, [r4] - ldrb r5, [r4, 0x14] - cmp r5, 0 - beq _080204C4 - ldr r1, _080204C0 - ldr r2, [r4] - movs r0, 0x64 - muls r0, r2 - adds r1, 0x48 - adds r0, r1 - ldr r0, [r0] - adds r3, r4, 0 - adds r3, 0x7C - adds r1, r4, 0 - adds r1, 0xBC - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - movs r2, 0xBE - lsls r2, 1 - adds r1, r4, r2 - b _080204E8 - .align 2, 0 -_080204B8: .4byte gUnknown_202DFE8 -_080204BC: .4byte gUnknown_203B27C -_080204C0: .4byte gUnknown_80D8888 -_080204C4: - ldr r1, _080204FC - ldr r2, [r4] - movs r0, 0x64 - muls r0, r2 - adds r1, 0x44 - adds r0, r1 - ldr r0, [r0] - adds r3, r4, 0 - adds r3, 0x7C - adds r1, r4, 0 - adds r1, 0xBC - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r5, [sp, 0x8] - movs r5, 0xBE - lsls r5, 1 - adds r1, r4, r5 -_080204E8: - ldr r1, [r1] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x11 - bl sub_8014248 - b _08020562 - .align 2, 0 -_080204FC: .4byte gUnknown_80D8888 -_08020500: - ldr r1, [r5] - movs r0, 0x1F - str r0, [r1, 0x8] - ldr r0, _08020538 - ldrh r1, [r1, 0x20] - bl sub_8092C84 - ldr r3, [r5] - ldrb r0, [r3, 0x14] - cmp r0, 0 - beq _08020544 - ldr r1, _0802053C - ldr r2, [r3] - movs r0, 0x64 - muls r0, r2 - adds r1, 0x50 -_08020520: - adds r0, r1 - ldr r0, [r0] - movs r2, 0xBE - lsls r2, 1 - adds r1, r3, r2 -_0802052A: - ldr r2, [r1] -_0802052C: - ldr r3, _08020540 - movs r1, 0 - bl sub_80141B4 - b _08020562 - .align 2, 0 -_08020538: .4byte gUnknown_202DFE8 -_0802053C: .4byte gUnknown_80D8888 -_08020540: .4byte 0x0000010d -_08020544: - ldr r1, _0802056C - ldr r2, [r3] - movs r0, 0x64 - muls r0, r2 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r4, 0xBE - lsls r4, 1 - adds r1, r3, r4 - ldr r2, [r1] - ldr r3, _08020570 - movs r1, 0 - bl sub_80141B4 -_08020562: - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802056C: .4byte gUnknown_80D8888 -_08020570: .4byte 0x0000010d - thumb_func_end sub_801FF28 - - thumb_func_start sub_8020574 -sub_8020574: - push {r4,lr} - ldr r4, _080205C0 - ldr r0, [r4] - adds r0, 0xBC - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r4, [r4] - movs r3, 0 - ldr r0, _080205C4 - str r0, [r4, 0x7C] - adds r1, r4, 0 - adds r1, 0x80 - movs r0, 0x2 - str r0, [r1] - movs r2, 0x1 - adds r1, 0x4 - ldr r0, _080205C8 - str r0, [r1] - adds r1, 0x4 - movs r0, 0xB - str r0, [r1] - adds r1, 0x4 - ldr r0, _080205CC - ldr r0, [r0] - str r0, [r1] - adds r0, r4, 0 - adds r0, 0x90 - str r2, [r0] - adds r0, 0x4 - str r3, [r0] - adds r0, 0x4 - str r2, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080205C0: .4byte gUnknown_203B27C -_080205C4: .4byte gUnknown_80DC3C4 -_080205C8: .4byte gUnknown_80DC3CC -_080205CC: .4byte gUnknown_80D4934 - thumb_func_end sub_8020574 - - thumb_func_start sub_80205D0 -sub_80205D0: - push {r4-r7,lr} - ldr r4, _08020660 - ldr r0, [r4] - adds r0, 0xBC - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r0, [r4] - mov r12, r0 - movs r5, 0 - ldr r0, _08020664 - mov r1, r12 - str r0, [r1, 0x7C] - mov r2, r12 - adds r2, 0x80 - movs r0, 0x4 - str r0, [r2] - movs r3, 0x1 - adds r1, 0x84 - ldr r0, _08020668 - str r0, [r1] - adds r1, 0x4 - movs r0, 0xB - str r0, [r1] - adds r1, 0x4 - ldr r0, _0802066C - str r0, [r1] - adds r1, 0x4 - movs r0, 0xC - str r0, [r1] - movs r6, 0x3 - adds r1, 0x4 - ldr r0, _08020670 - str r0, [r1] - mov r0, r12 - adds r0, 0x98 - str r6, [r0] - movs r6, 0x4 - adds r0, 0x4 - str r5, [r0] - adds r0, 0x4 - str r3, [r0] - mov r3, r12 - adds r3, 0xBC -_0802062A: - ldrh r0, [r3] - cmp r0, 0 - bne _0802063A - ldr r1, [r2] - mov r7, r12 - ldr r0, [r7, 0x70] - cmp r1, r0 - beq _08020696 -_0802063A: - adds r2, 0x8 - adds r3, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _0802062A - movs r5, 0 - cmp r5, r6 - bge _08020696 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xBC - ldrh r0, [r0] - cmp r0, 0 - bne _08020674 - adds r0, r1, 0 - adds r0, 0x80 - ldr r0, [r0] - str r0, [r1, 0x70] - b _08020696 - .align 2, 0 -_08020660: .4byte gUnknown_203B27C -_08020664: .4byte gUnknown_80DC3D8 -_08020668: .4byte gUnknown_80DC3E0 -_0802066C: .4byte gUnknown_80DC3E8 -_08020670: .4byte gUnknown_80DC3F4 -_08020674: - adds r5, 0x1 - cmp r5, r6 - bge _08020696 - ldr r2, [r4] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0xBC - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08020674 - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x80 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x70] -_08020696: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80205D0 - - thumb_func_start sub_802069C -sub_802069C: - push {r4-r7,lr} - ldr r4, _08020718 - ldr r0, [r4] - adds r0, 0xBC - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r0, [r4] - mov r12, r0 - movs r5, 0 - ldr r0, _0802071C - mov r1, r12 - str r0, [r1, 0x7C] - mov r3, r12 - adds r3, 0x80 - movs r0, 0x3 - str r0, [r3] - movs r2, 0x1 - adds r1, 0x84 - ldr r0, _08020720 - ldr r0, [r0] - str r0, [r1] - adds r1, 0x4 - movs r0, 0xB - str r0, [r1] - movs r6, 0x2 - mov r0, r12 - adds r0, 0x8C - str r5, [r0] - adds r0, 0x4 - str r2, [r0] - mov r2, r12 - adds r2, 0xBC -_080206E0: - ldrh r0, [r2] - cmp r0, 0 - bne _080206F0 - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x74] - cmp r1, r0 - beq _08020746 -_080206F0: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _080206E0 - movs r5, 0 - cmp r5, r6 - bge _08020746 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xBC - ldrh r0, [r0] - cmp r0, 0 - bne _08020724 - adds r0, r1, 0 - adds r0, 0x80 - ldr r0, [r0] - str r0, [r1, 0x74] - b _08020746 - .align 2, 0 -_08020718: .4byte gUnknown_203B27C -_0802071C: .4byte gUnknown_80DC3F4 -_08020720: .4byte gUnknown_80D4970 -_08020724: - adds r5, 0x1 - cmp r5, r6 - bge _08020746 - ldr r2, [r4] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0xBC - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08020724 - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x80 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x74] -_08020746: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_802069C - - thumb_func_start sub_802074C -sub_802074C: - push {r4-r7,lr} - movs r7, 0 - ldr r4, _08020780 - ldr r0, [r4] - adds r0, 0xBC - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - ldrb r0, [r1, 0x16] - cmp r0, 0 - beq _0802079C - ldr r0, [r1, 0x18] - adds r1, 0x24 - bl sub_80932E0 - lsls r0, 24 - cmp r0, 0 - beq _08020788 - ldr r0, [r4] - ldr r1, _08020784 - str r1, [r0, 0x7C] - adds r0, 0x80 - movs r1, 0x6 - b _08020792 - .align 2, 0 -_08020780: .4byte gUnknown_203B27C -_08020784: .4byte gUnknown_80DC400 -_08020788: - ldr r0, [r4] - ldr r1, _08020798 - str r1, [r0, 0x7C] - adds r0, 0x80 - movs r1, 0x5 -_08020792: - str r1, [r0] - mov r12, r4 - b _080207CA - .align 2, 0 -_08020798: .4byte gUnknown_80DC40C -_0802079C: - ldr r0, [r1, 0x18] - adds r1, 0x24 - bl sub_80932FC - lsls r0, 24 - cmp r0, 0 - beq _080207B4 - ldr r1, [r4] - ldr r0, _080207B0 - b _080207B8 - .align 2, 0 -_080207B0: .4byte gUnknown_80DC400 -_080207B4: - ldr r1, [r4] - ldr r0, _0802086C -_080207B8: - str r0, [r1, 0x7C] - ldr r2, _08020870 - ldr r0, [r2] - lsls r1, r7, 3 - adds r0, 0x80 - adds r0, r1 - movs r1, 0x7 - str r1, [r0] - mov r12, r2 -_080207CA: - adds r7, 0x1 - mov r0, r12 - ldr r4, [r0] - lsls r1, r7, 3 - adds r3, r4, 0 - adds r3, 0x7C - adds r2, r3, r1 - ldr r0, _08020874 - str r0, [r2] - adds r6, r4, 0 - adds r6, 0x80 - adds r1, r6, r1 - movs r0, 0x8 - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r2, r3, r1 - ldr r0, _08020878 - str r0, [r2] - adds r1, r6, r1 - movs r0, 0x9 - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r2, r3, r1 - ldr r0, _0802087C - str r0, [r2] - adds r1, r6, r1 - movs r0, 0xA - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r2, r3, r1 - ldr r0, _08020880 - ldr r0, [r0] - str r0, [r2] - adds r1, r6, r1 - movs r0, 0xB - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r3, r1 - movs r0, 0 - str r0, [r3] - adds r1, r6, r1 - movs r0, 0x1 - str r0, [r1] - movs r3, 0 - cmp r3, r7 - bge _0802084C - adds r5, r4, 0 - adds r4, 0xBC - adds r2, r6, 0 -_08020834: - ldrh r0, [r4] - cmp r0, 0 - bne _08020842 - ldr r1, [r2] - ldr r0, [r5, 0x78] - cmp r1, r0 - beq _080208A8 -_08020842: - adds r4, 0x2 - adds r2, 0x8 - adds r3, 0x1 - cmp r3, r7 - blt _08020834 -_0802084C: - movs r3, 0 - cmp r3, r7 - bge _080208A8 - mov r0, r12 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0xBC - ldrh r0, [r0] - cmp r0, 0 - bne _08020884 - adds r0, r1, 0 - adds r0, 0x80 - ldr r0, [r0] - str r0, [r1, 0x78] - b _080208A8 - .align 2, 0 -_0802086C: .4byte gUnknown_80DC40C -_08020870: .4byte gUnknown_203B27C -_08020874: .4byte gUnknown_80DC410 -_08020878: .4byte gUnknown_80DC418 -_0802087C: .4byte gUnknown_80DC420 -_08020880: .4byte gUnknown_80D4970 -_08020884: - adds r3, 0x1 - cmp r3, r7 - bge _080208A8 - mov r0, r12 - ldr r2, [r0] - lsls r0, r3, 1 - adds r1, r2, 0 - adds r1, 0xBC - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08020884 - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0x80 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x78] -_080208A8: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_802074C - - thumb_func_start sub_80208B0 -sub_80208B0: - push {r4,lr} - ldr r4, _080208F4 - ldr r0, [r4] - adds r0, 0xBC - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r4, [r4] - movs r3, 0 - ldr r0, _080208F8 - ldr r0, [r0] - str r0, [r4, 0x7C] - adds r1, r4, 0 - adds r1, 0x80 - movs r0, 0x10 - str r0, [r1] - movs r2, 0x1 - adds r1, 0x4 - ldr r0, _080208FC - ldr r0, [r0] - str r0, [r1] - adds r1, 0x4 - movs r0, 0x11 - str r0, [r1] - adds r0, r4, 0 - adds r0, 0x8C - str r3, [r0] - adds r0, 0x4 - str r2, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080208F4: .4byte gUnknown_203B27C -_080208F8: .4byte gUnknown_80D4920 -_080208FC: .4byte gUnknown_80D4928 - thumb_func_end sub_80208B0 - - thumb_func_start sub_8020900 -sub_8020900: - push {r4,lr} - ldr r4, _08020944 - ldr r0, [r4] - adds r0, 0xBC - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _08020948 - ldr r0, [r0] - str r0, [r3, 0x7C] - adds r1, r3, 0 - adds r1, 0x80 - movs r0, 0x10 - str r0, [r1] - adds r1, 0x4 - ldr r0, _0802094C - ldr r0, [r0] - str r0, [r1] - adds r1, 0x4 - movs r0, 0x11 - str r0, [r1] - adds r0, r3, 0 - adds r0, 0x8C - str r2, [r0] - adds r1, 0x8 - movs r0, 0x1 - negs r0, r0 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08020944: .4byte gUnknown_203B27C -_08020948: .4byte gUnknown_80D4920 -_0802094C: .4byte gUnknown_80D4928 - thumb_func_end sub_8020900 - - thumb_func_start sub_8020950 -sub_8020950: - push {r4,lr} - ldr r4, _0802099C - ldr r0, [r4] - adds r0, 0xBC - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r4, [r4] - movs r3, 0 - ldr r0, _080209A0 - str r0, [r4, 0x7C] - adds r1, r4, 0 - adds r1, 0x80 - movs r0, 0xD - str r0, [r1] - movs r2, 0x1 - adds r1, 0x4 - ldr r0, _080209A4 - str r0, [r1] - adds r1, 0x4 - movs r0, 0xE - str r0, [r1] - adds r1, 0x4 - ldr r0, _080209A8 - str r0, [r1] - adds r1, 0x4 - movs r0, 0xF - str r0, [r1] - adds r0, r4, 0 - adds r0, 0x94 - str r3, [r0] - adds r0, 0x4 - str r2, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802099C: .4byte gUnknown_203B27C -_080209A0: .4byte gUnknown_80DC428 -_080209A4: .4byte gUnknown_80DC438 -_080209A8: .4byte gUnknown_80DC448 - thumb_func_end sub_8020950 - - thumb_func_start sub_80209AC -sub_80209AC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080209F4 - ldr r0, _080209D4 - ldr r1, [r0] - ldr r0, [sp] - str r0, [r1, 0x6C] - ldr r0, [sp] - cmp r0, 0x2 - beq _080209DE - cmp r0, 0x2 - bgt _080209D8 - cmp r0, 0x1 - beq _080209EE - b _080209F4 - .align 2, 0 -_080209D4: .4byte gUnknown_203B27C -_080209D8: - cmp r0, 0xB - beq _080209E6 - b _080209F4 -_080209DE: - movs r0, 0xE - bl sub_801FDA8 - b _080209F4 -_080209E6: - movs r0, 0x8 - bl sub_801FDA8 - b _080209F4 -_080209EE: - movs r0, 0xC - bl sub_801FDA8 -_080209F4: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80209AC - - thumb_func_start sub_80209FC -sub_80209FC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08020A2E - ldr r0, [sp] - cmp r0, 0x10 - beq _08020A20 - cmp r0, 0x10 - bgt _08020A1A - cmp r0, 0x1 - beq _08020A28 - b _08020A2E -_08020A1A: - cmp r0, 0x11 - beq _08020A28 - b _08020A2E -_08020A20: - movs r0, 0xE - bl sub_801FDA8 - b _08020A2E -_08020A28: - movs r0, 0xC - bl sub_801FDA8 -_08020A2E: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80209FC - - thumb_func_start sub_8020A34 -sub_8020A34: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08020A7A - ldr r0, [sp] - cmp r0, 0xD - beq _08020A5C - cmp r0, 0xD - bgt _08020A52 - cmp r0, 0x1 - beq _08020A74 - b _08020A7A -_08020A52: - cmp r0, 0xE - beq _08020A64 - cmp r0, 0xF - beq _08020A6C - b _08020A7A -_08020A5C: - movs r0, 0x9 - bl sub_801FDA8 - b _08020A7A -_08020A64: - movs r0, 0xA - bl sub_801FDA8 - b _08020A7A -_08020A6C: - movs r0, 0xB - bl sub_801FDA8 - b _08020A7A -_08020A74: - movs r0, 0x1 - bl sub_801FDA8 -_08020A7A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8020A34 - - thumb_func_start sub_8020A80 -sub_8020A80: - push {r4,lr} - movs r0, 0x1 - bl sub_8023A94 - cmp r0, 0x4 - bhi _08020B32 - lsls r0, 2 - ldr r1, _08020A98 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08020A98: .4byte _08020A9C - .align 2, 0 -_08020A9C: - .4byte _08020B32 - .4byte _08020B32 - .4byte _08020B28 - .4byte _08020AB0 - .4byte _08020AEC -_08020AB0: - bl sub_8023B44 - ldr r4, _08020AE0 - ldr r1, [r4] - strh r0, [r1, 0xC] - ldr r3, _08020AE4 - movs r0, 0xC - ldrsh r2, [r1, r0] - movs r0, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - str r0, [r1, 0x10] - ldrb r0, [r0, 0x2] - strb r0, [r1, 0x16] - ldr r0, _08020AE8 - ldr r1, [r4] - ldr r1, [r1, 0x10] - bl sub_808DA34 - movs r0, 0x11 - bl sub_801FDA8 - b _08020B32 - .align 2, 0 -_08020AE0: .4byte gUnknown_203B27C -_08020AE4: .4byte gUnknown_203B45C -_08020AE8: .4byte gUnknown_202E128 -_08020AEC: - bl sub_8023B44 - ldr r4, _08020B1C - ldr r1, [r4] - strh r0, [r1, 0xC] - ldr r3, _08020B20 - movs r0, 0xC - ldrsh r2, [r1, r0] - movs r0, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - str r0, [r1, 0x10] - ldrb r0, [r0, 0x2] - strb r0, [r1, 0x16] - ldr r0, _08020B24 - ldr r1, [r4] - ldr r1, [r1, 0x10] - bl sub_808DA34 - movs r0, 0x12 - bl sub_801FDA8 - b _08020B32 - .align 2, 0 -_08020B1C: .4byte gUnknown_203B27C -_08020B20: .4byte gUnknown_203B45C -_08020B24: .4byte gUnknown_202E128 -_08020B28: - bl sub_8023C60 - movs r0, 0x7 - bl sub_801FDA8 -_08020B32: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8020A80 - - thumb_func_start sub_8020B38 -sub_8020B38: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_8023A94 - ldr r4, _08020B7C - ldr r0, [r4] - adds r0, 0xCC - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08020B68 - ldr r0, [r4] - adds r0, 0xCC - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08020B68 - ldr r0, [r4] - str r1, [r0, 0x70] -_08020B68: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0x10 - bhi _08020C24 - lsls r0, 2 - ldr r1, _08020B80 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08020B7C: .4byte gUnknown_203B27C -_08020B80: .4byte _08020B84 - .align 2, 0 -_08020B84: - .4byte _08020BC8 - .4byte _08020C24 - .4byte _08020BD0 - .4byte _08020C0E - .4byte _08020C24 - .4byte _08020C24 - .4byte _08020C24 - .4byte _08020C24 - .4byte _08020C24 - .4byte _08020C24 - .4byte _08020C16 - .4byte _08020C1E - .4byte _08020C24 - .4byte _08020C24 - .4byte _08020C24 - .4byte _08020C24 - .4byte _08020BC8 -_08020BC8: - movs r0, 0x10 - bl sub_801FDA8 - b _08020C24 -_08020BD0: - ldr r0, _08020BF0 - ldr r0, [r0] - ldr r0, [r0, 0x10] - movs r1, 0x8 - ldrsh r0, [r0, r1] - bl sub_808E858 - lsls r0, 16 - movs r1, 0xCF - lsls r1, 17 - cmp r0, r1 - bne _08020BF4 - movs r0, 0x1C - bl sub_801FDA8 - b _08020C24 - .align 2, 0 -_08020BF0: .4byte gUnknown_203B27C -_08020BF4: - bl sub_8021178 - lsls r0, 24 - cmp r0, 0 - beq _08020C06 - movs r0, 0x1B - bl sub_801FDA8 - b _08020C24 -_08020C06: - movs r0, 0x14 - bl sub_801FDA8 - b _08020C24 -_08020C0E: - movs r0, 0x1E - bl sub_801FDA8 - b _08020C24 -_08020C16: - movs r0, 0x12 - bl sub_801FDA8 - b _08020C24 -_08020C1E: - movs r0, 0x13 - bl sub_801FDA8 -_08020C24: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8020B38 - - thumb_func_start sub_8020C2C -sub_8020C2C: - push {lr} - bl sub_80244E4 - cmp r0, 0x1 - bls _08020C44 - cmp r0, 0x3 - bhi _08020C44 - bl sub_802453C - movs r0, 0x10 - bl sub_801FDA8 -_08020C44: - pop {r0} - bx r0 - thumb_func_end sub_8020C2C - - thumb_func_start sub_8020C48 -sub_8020C48: - push {lr} - bl sub_801BF48 - cmp r0, 0x1 - bls _08020C60 - cmp r0, 0x3 - bhi _08020C60 - bl sub_801BF98 - movs r0, 0x10 - bl sub_801FDA8 -_08020C60: - pop {r0} - bx r0 - thumb_func_end sub_8020C48 - - thumb_func_start sub_8020C64 -sub_8020C64: - push {lr} - movs r0, 0x1 - bl sub_801F520 - cmp r0, 0x3 - beq _08020C80 - cmp r0, 0x3 - bhi _08020C7A - cmp r0, 0x2 - beq _08020CB0 - b _08020CBA -_08020C7A: - cmp r0, 0x4 - beq _08020C98 - b _08020CBA -_08020C80: - bl sub_801F5B4 - ldr r1, _08020C94 - ldr r1, [r1] - strh r0, [r1, 0x1C] - strh r0, [r1, 0x1E] - movs r0, 0x17 - bl sub_801FDA8 - b _08020CBA - .align 2, 0 -_08020C94: .4byte gUnknown_203B27C -_08020C98: - bl sub_801F5B4 - ldr r1, _08020CAC - ldr r1, [r1] - strh r0, [r1, 0x1C] - strh r0, [r1, 0x1E] - movs r0, 0x18 - bl sub_801FDA8 - b _08020CBA - .align 2, 0 -_08020CAC: .4byte gUnknown_203B27C -_08020CB0: - bl sub_801F63C - movs r0, 0x10 - bl sub_801FDA8 -_08020CBA: - pop {r0} - bx r0 - thumb_func_end sub_8020C64 - - thumb_func_start sub_8020CC0 -sub_8020CC0: - push {r4-r6,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801F520 - ldr r4, _08020D00 - ldr r0, [r4] - adds r0, 0xCC - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08020CF0 - ldr r0, [r4] - adds r0, 0xCC - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08020CF0 - ldr r0, [r4] - str r1, [r0, 0x74] -_08020CF0: - ldr r0, [sp] - cmp r0, 0x3 - beq _08020D14 - cmp r0, 0x3 - bgt _08020D04 - cmp r0, 0x1 - beq _08020D0C - b _08020D6C - .align 2, 0 -_08020D00: .4byte gUnknown_203B27C -_08020D04: - cmp r0, 0xB - beq _08020D66 - cmp r0, 0x11 - bne _08020D6C -_08020D0C: - movs r0, 0x16 - bl sub_801FDA8 - b _08020D6C -_08020D14: - bl sub_801F63C - ldr r4, _08020D30 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x24 - ldr r1, [r1, 0x10] - adds r1, 0x2C - bl sub_809401C - movs r5, 0 - adds r6, r4, 0 - movs r4, 0x24 - b _08020D38 - .align 2, 0 -_08020D30: .4byte gUnknown_203B27C -_08020D34: - adds r4, 0x8 - adds r5, 0x1 -_08020D38: - cmp r5, 0x7 - bgt _08020D52 - ldr r3, [r6] - adds r2, r3, r4 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08020D34 - ldrh r1, [r3, 0x1E] - adds r0, r2, 0 - bl sub_8092AD4 -_08020D52: - cmp r5, 0x3 - ble _08020D5E - movs r0, 0x1D - bl sub_801FDA8 - b _08020D6C -_08020D5E: - movs r0, 0x19 - bl sub_801FDA8 - b _08020D6C -_08020D66: - movs r0, 0x18 - bl sub_801FDA8 -_08020D6C: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8020CC0 - - thumb_func_start sub_8020D74 -sub_8020D74: - push {lr} - bl sub_801F890 - cmp r0, 0x1 - bls _08020D8C - cmp r0, 0x3 - bhi _08020D8C - bl sub_801F8D0 - movs r0, 0x16 - bl sub_801FDA8 -_08020D8C: - pop {r0} - bx r0 - thumb_func_end sub_8020D74 - - thumb_func_start sub_8020D90 -sub_8020D90: - push {lr} - bl sub_801E8C0 - cmp r0, 0x2 - beq _08020DBC - cmp r0, 0x2 - bcc _08020DC6 - cmp r0, 0x3 - bne _08020DC6 - bl sub_801E930 - ldr r1, _08020DB8 - ldr r1, [r1] - strb r0, [r1, 0x14] - bl sub_801E93C - movs r0, 0x1A - bl sub_801FDA8 - b _08020DC6 - .align 2, 0 -_08020DB8: .4byte gUnknown_203B27C -_08020DBC: - bl sub_801E93C - movs r0, 0x10 - bl sub_801FDA8 -_08020DC6: - pop {r0} - bx r0 - thumb_func_end sub_8020D90 - - thumb_func_start sub_8020DCC -sub_8020DCC: - push {lr} - movs r0, 0x1 - bl sub_801EF38 - cmp r0, 0x4 - bhi _08020EAA - lsls r0, 2 - ldr r1, _08020DE4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08020DE4: .4byte _08020DE8 - .align 2, 0 -_08020DE8: - .4byte _08020EAA - .4byte _08020E98 - .4byte _08020E64 - .4byte _08020DFC - .4byte _08020E30 -_08020DFC: - bl sub_801F1A4 - lsls r0, 24 - cmp r0, 0 - beq _08020E0E - ldr r0, _08020E2C - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x15] -_08020E0E: - bl sub_801F194 - ldr r1, _08020E2C - ldr r2, [r1] - str r0, [r2, 0x18] - lsls r0, 3 - adds r0, r2, r0 - ldrh r1, [r0, 0x26] - strh r1, [r2, 0x1C] - ldrh r0, [r0, 0x26] - strh r0, [r2, 0x20] - movs r0, 0x20 - bl sub_801FDA8 - b _08020EAA - .align 2, 0 -_08020E2C: .4byte gUnknown_203B27C -_08020E30: - bl sub_801F1A4 - lsls r0, 24 - cmp r0, 0 - beq _08020E42 - ldr r0, _08020E60 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x15] -_08020E42: - bl sub_801F194 - ldr r1, _08020E60 - ldr r2, [r1] - str r0, [r2, 0x18] - lsls r0, 3 - adds r0, r2, r0 - ldrh r1, [r0, 0x26] - strh r1, [r2, 0x1C] - ldrh r0, [r0, 0x26] - strh r0, [r2, 0x20] - movs r0, 0x21 - bl sub_801FDA8 - b _08020EAA - .align 2, 0 -_08020E60: .4byte gUnknown_203B27C -_08020E64: - bl sub_801F1A4 - lsls r0, 24 - cmp r0, 0 - beq _08020E76 - ldr r0, _08020E94 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x15] -_08020E76: - bl sub_801F214 - ldr r0, _08020E94 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x24 - ldr r1, [r1, 0x10] - adds r1, 0x2C - bl sub_8094060 - movs r0, 0x10 - bl sub_801FDA8 - b _08020EAA - .align 2, 0 -_08020E94: .4byte gUnknown_203B27C -_08020E98: - bl sub_801F1A4 - lsls r0, 24 - cmp r0, 0 - beq _08020EAA - ldr r0, _08020EB0 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x15] -_08020EAA: - pop {r0} - bx r0 - .align 2, 0 -_08020EB0: .4byte gUnknown_203B27C - thumb_func_end sub_8020DCC - - thumb_func_start sub_8020EB4 -sub_8020EB4: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801EF38 - ldr r4, _08020EF8 - ldr r0, [r4] - adds r0, 0xCC - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08020EE4 - ldr r0, [r4] - adds r0, 0xCC - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08020EE4 - ldr r0, [r4] - str r1, [r0, 0x78] -_08020EE4: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0x10 - bls _08020EEE - b _080210BE -_08020EEE: - lsls r0, 2 - ldr r1, _08020EFC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08020EF8: .4byte gUnknown_203B27C -_08020EFC: .4byte _08020F00 - .align 2, 0 -_08020F00: - .4byte _08021068 - .4byte _080210BE - .4byte _080210BE - .4byte _080210BE - .4byte _08020F44 - .4byte _08020F70 - .4byte _08020F8C - .4byte _08020FB8 - .4byte _08021034 - .4byte _08021074 - .4byte _080210B8 - .4byte _080210BE - .4byte _080210BE - .4byte _080210BE - .4byte _080210BE - .4byte _080210BE - .4byte _08021068 -_08020F44: - ldr r0, _08020F60 - ldr r1, [r0] - ldr r0, [r1, 0x18] - adds r1, 0x24 - bl sub_80934DC - lsls r0, 24 - cmp r0, 0 - beq _08020F68 - ldr r0, _08020F64 - bl sub_8011988 - b _08021068 - .align 2, 0 -_08020F60: .4byte gUnknown_203B27C -_08020F64: .4byte 0x00000133 -_08020F68: - movs r0, 0x2 - bl sub_80119D4 - b _08021068 -_08020F70: - ldr r0, _08020F84 - bl sub_8011988 - ldr r0, _08020F88 - ldr r1, [r0] - ldr r0, [r1, 0x18] - adds r1, 0x24 - bl sub_809352C - b _08021068 - .align 2, 0 -_08020F84: .4byte 0x00000133 -_08020F88: .4byte gUnknown_203B27C -_08020F8C: - ldr r0, _08020FA8 - ldr r1, [r0] - ldr r0, [r1, 0x18] - adds r1, 0x24 - bl sub_8093544 - lsls r0, 24 - cmp r0, 0 - beq _08020FB0 - ldr r0, _08020FAC - bl sub_8011988 - b _08021068 - .align 2, 0 -_08020FA8: .4byte gUnknown_203B27C -_08020FAC: .4byte 0x00000133 -_08020FB0: - movs r0, 0x2 - bl sub_80119D4 - b _08021068 -_08020FB8: - ldr r0, _08020FD8 - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x95 - bgt _08020FDC - movs r0, 0x2 - bl sub_80119D4 - movs r0, 0x3 - bl sub_801FDA8 - b _080210BE - .align 2, 0 -_08020FD8: .4byte gUnknown_203B460 -_08020FDC: - ldr r4, _08020FFC - ldr r1, [r4] - ldr r0, [r1, 0x18] - adds r1, 0x24 - bl sub_8093318 - lsls r0, 24 - cmp r0, 0 - bne _08021000 - movs r0, 0x2 - bl sub_80119D4 - movs r0, 0x4 - bl sub_801FDA8 - b _080210BE - .align 2, 0 -_08020FFC: .4byte gUnknown_203B27C -_08021000: - ldr r1, [r4] - ldrb r0, [r1, 0x15] - cmp r0, 0 - bne _08021016 - movs r0, 0x1 - strb r0, [r1, 0x15] - movs r0, 0xA6 - lsls r0, 1 - bl sub_8011988 - b _0802101C -_08021016: - ldr r0, _0802102C - bl sub_8011988 -_0802101C: - ldr r0, _08021030 - ldr r1, [r0] - ldr r0, [r1, 0x18] - adds r1, 0x24 - bl sub_8093400 - b _08021068 - .align 2, 0 -_0802102C: .4byte 0x00000133 -_08021030: .4byte gUnknown_203B27C -_08021034: - ldr r4, _08021054 - ldr r1, [r4] - ldr r0, [r1, 0x18] - adds r1, 0x24 - bl sub_809333C - lsls r0, 24 - cmp r0, 0 - bne _08021058 - movs r0, 0x2 - bl sub_80119D4 - movs r0, 0x5 - bl sub_801FDA8 - b _080210BE - .align 2, 0 -_08021054: .4byte gUnknown_203B27C -_08021058: - ldr r0, _08021070 - bl sub_8011988 - ldr r1, [r4] - ldr r0, [r1, 0x18] - adds r1, 0x24 - bl sub_8093468 -_08021068: - movs r0, 0x1F - bl sub_801FDA8 - b _080210BE - .align 2, 0 -_08021070: .4byte 0x00000133 -_08021074: - ldr r4, _08021094 - ldr r1, [r4] - ldr r0, [r1, 0x18] - adds r1, 0x24 - bl sub_80933A0 - lsls r0, 24 - cmp r0, 0 - bne _08021098 - movs r0, 0x2 - bl sub_80119D4 - movs r0, 0x6 - bl sub_801FDA8 - b _080210BE - .align 2, 0 -_08021094: .4byte gUnknown_203B27C -_08021098: - ldr r0, _080210B4 - bl sub_8011988 - ldr r1, [r4] - ldr r0, [r1, 0x18] - adds r1, 0x24 - bl sub_80934B0 - ldr r1, [r4] - strb r0, [r1, 0x14] - movs r0, 0x22 - bl sub_801FDA8 - b _080210BE - .align 2, 0 -_080210B4: .4byte 0x00000133 -_080210B8: - movs r0, 0x21 - bl sub_801FDA8 -_080210BE: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8020EB4 - - thumb_func_start sub_80210C8 -sub_80210C8: - push {lr} - bl sub_801F890 - cmp r0, 0x1 - bls _080210E0 - cmp r0, 0x3 - bhi _080210E0 - bl sub_801F8D0 - movs r0, 0x1F - bl sub_801FDA8 -_080210E0: - pop {r0} - bx r0 - thumb_func_end sub_80210C8 - - thumb_func_start sub_80210E4 -sub_80210E4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802112A - ldr r0, [sp] - cmp r0, 0x10 - beq _08021108 - cmp r0, 0x10 - bgt _08021102 - cmp r0, 0x1 - beq _08021124 - b _0802112A -_08021102: - cmp r0, 0x11 - beq _08021124 - b _0802112A -_08021108: - ldr r0, _08021120 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x24 - ldr r1, [r1, 0x18] - bl sub_8093CF8 - movs r0, 0x23 - bl sub_801FDA8 - b _0802112A - .align 2, 0 -_08021120: .4byte gUnknown_203B27C -_08021124: - movs r0, 0x1F - bl sub_801FDA8 -_0802112A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80210E4 - - thumb_func_start sub_8021130 -sub_8021130: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08021148 - ldr r0, _08021150 - ldr r0, [r0] - ldr r0, [r0, 0x8] - bl sub_801FDA8 -_08021148: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08021150: .4byte gUnknown_203B27C - thumb_func_end sub_8021130 - - thumb_func_start sub_8021154 -sub_8021154: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0x4 - bne _0802116C - ldr r0, _08021174 - ldr r0, [r0] - ldr r0, [r0, 0x8] - bl sub_801FDA8 -_0802116C: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08021174: .4byte gUnknown_203B27C - thumb_func_end sub_8021154 - - thumb_func_start sub_8021178 -sub_8021178: - push {lr} - mov r12, r4 - ldr r4, _08021198 - add sp, r4 - mov r4, r12 - ldr r0, _0802119C - ldr r0, [r0] - ldr r1, [r0, 0x10] - mov r0, sp - bl sub_808E218 - cmp r0, 0 - beq _080211A0 - movs r0, 0 - b _080211A2 - .align 2, 0 -_08021198: .4byte 0xfffffcc0 -_0802119C: .4byte gUnknown_203B27C -_080211A0: - movs r0, 0x1 -_080211A2: - movs r3, 0xD0 - lsls r3, 2 - add sp, r3 - pop {r1} - bx r1 - thumb_func_end sub_8021178 - - thumb_func_start sub_80211AC -sub_80211AC: - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r1, 0 - bl sub_8021700 - lsls r0, 24 - cmp r0, 0 - beq _080211C0 - movs r0, 0 - b _08021258 -_080211C0: - ldr r5, _08021260 - movs r0, 0xE0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - str r4, [r0, 0x3C] - str r6, [r0, 0x74] - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 3 - adds r1, 0x7C - adds r1, r0, r1 - str r1, [r0, 0x78] - adds r0, 0x7C - bl sub_8006518 - ldr r1, [r5] - ldr r2, [r1, 0x74] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x7C - ldr r0, _08021264 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r5] - ldr r1, [r0, 0x78] - adds r0, 0xDC - str r0, [r1, 0x14] - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x7C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - adds r4, 0x40 - bl sub_8021664 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0xA - adds r3, r6, 0 - bl sub_8013818 - ldr r0, _08021268 - ldr r2, [r5] - ldr r1, [r0] - ldr r0, [r2, 0x3C] - cmp r1, r0 - bne _0802124E - ldr r0, _0802126C - ldrh r1, [r0] - adds r0, r2, 0 - adds r0, 0x58 - strh r1, [r0] - ldr r0, _08021270 - ldrh r0, [r0] - adds r1, r2, 0 - adds r1, 0x5E - strh r0, [r1] - adds r0, r2, 0 - adds r0, 0x40 - bl sub_8013984 -_0802124E: - bl sub_8021410 - bl sub_8021494 - movs r0, 0x1 -_08021258: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08021260: .4byte gUnknown_203B280 -_08021264: .4byte gUnknown_80DC47C -_08021268: .4byte gUnknown_203B284 -_0802126C: .4byte gUnknown_203B288 -_08021270: .4byte gUnknown_203B28A - thumb_func_end sub_80211AC - - thumb_func_start sub_8021274 -sub_8021274: - push {r4,lr} - lsls r0, 24 - cmp r0, 0 - bne _08021290 - ldr r0, _0802128C - ldr r0, [r0] - adds r0, 0x40 - bl sub_8013660 - movs r0, 0 - b _08021326 - .align 2, 0 -_0802128C: .4byte gUnknown_203B280 -_08021290: - ldr r4, _080212A8 - ldr r0, [r4] - adds r0, 0x40 - bl GetKeyPress - cmp r0, 0x2 - beq _080212B2 - cmp r0, 0x2 - bgt _080212AC - cmp r0, 0x1 - beq _080212BC - b _08021300 - .align 2, 0 -_080212A8: .4byte gUnknown_203B280 -_080212AC: - cmp r0, 0x4 - beq _080212F6 - b _08021300 -_080212B2: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _08021326 -_080212BC: - ldr r0, [r4] - ldr r0, [r0, 0x3C] - cmp r0, 0x2 - bne _080212EC - bl sub_802132C - lsls r0, 24 - lsrs r0, 24 - bl sub_8092544 - ldr r1, _080212E8 - ldr r1, [r1] - movs r2, 0x98 - lsls r2, 2 - adds r1, r2 - ldr r1, [r1] - cmp r0, r1 - ble _080212EC - movs r0, 0x2 - bl sub_80119D4 - b _080212F2 - .align 2, 0 -_080212E8: .4byte gUnknown_203B460 -_080212EC: - movs r0, 0 - bl sub_80119D4 -_080212F2: - movs r0, 0x3 - b _08021326 -_080212F6: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _08021326 -_08021300: - ldr r0, _08021318 - ldr r0, [r0] - adds r0, 0x40 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0802131C - movs r0, 0 - b _08021326 - .align 2, 0 -_08021318: .4byte gUnknown_203B280 -_0802131C: - bl sub_8021410 - bl sub_8021494 - movs r0, 0x1 -_08021326: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8021274 - - thumb_func_start sub_802132C -sub_802132C: - ldr r0, _08021350 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x5E - movs r3, 0 - ldrsh r1, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r1 - adds r1, r2, 0 - adds r1, 0x58 - movs r3, 0 - ldrsh r1, [r1, r3] - adds r0, r1 - adds r0, r2, r0 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08021350: .4byte gUnknown_203B280 - thumb_func_end sub_802132C - - thumb_func_start sub_8021354 -sub_8021354: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0802139C - ldr r0, [r5] - adds r0, 0x7C - movs r1, 0 - movs r2, 0 - bl sub_800641C - bl sub_8021664 - adds r1, r0, 0 - ldr r0, [r5] - adds r2, r0, 0 - adds r2, 0x62 - strh r1, [r2] - adds r0, 0x40 - bl sub_8013984 - bl sub_8021410 - bl sub_8021494 - cmp r4, 0 - beq _08021396 - ldr r0, [r5] - adds r0, 0x40 - bl AddMenuCursorSprite -_08021396: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802139C: .4byte gUnknown_203B280 - thumb_func_end sub_8021354 - - thumb_func_start sub_80213A0 -sub_80213A0: - push {r4,r5,lr} - ldr r4, _080213FC - ldr r2, [r4] - cmp r2, 0 - beq _080213F4 - ldr r1, _08021400 - ldr r0, [r2, 0x3C] - str r0, [r1] - ldr r1, _08021404 - adds r0, r2, 0 - adds r0, 0x58 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, _08021408 - adds r0, r2, 0 - adds r0, 0x5E - ldrh r0, [r0] - strh r0, [r1] - ldr r0, [r2, 0x74] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x7C - ldr r0, _0802140C - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x7C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080213F4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080213FC: .4byte gUnknown_203B280 -_08021400: .4byte gUnknown_203B284 -_08021404: .4byte gUnknown_203B288 -_08021408: .4byte gUnknown_203B28A -_0802140C: .4byte gUnknown_80DC464 - thumb_func_end sub_80213A0 - - thumb_func_start sub_8021410 -sub_8021410: - push {r4,lr} - ldr r4, _08021490 - ldr r0, [r4] - adds r0, 0xDC - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xDD - strb r2, [r0] - ldr r0, [r4] - adds r0, 0xDE - movs r1, 0xC - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xDF - strb r2, [r0] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x7C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, 0x5A - movs r1, 0 - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x74] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x8A - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x74] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x8C - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x7C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08021490: .4byte gUnknown_203B280 - thumb_func_end sub_8021410 - - thumb_func_start sub_8021494 -sub_8021494: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xA8 - ldr r4, _08021568 - ldr r0, [r4] - ldr r0, [r0, 0x74] - bl sub_8008C54 - ldr r0, [r4] - ldr r0, [r0, 0x74] - bl sub_80073B8 - ldr r2, _0802156C - ldr r0, [r4] - ldr r3, [r0, 0x74] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r3, [r4] - adds r0, r3, 0 - adds r0, 0xDE - ldrb r0, [r0] - lsls r0, 3 - adds r0, 0x4 - adds r1, r3, 0 - adds r1, 0x5E - movs r5, 0 - ldrsh r2, [r1, r5] - adds r2, 0x1 - movs r1, 0x7 - str r1, [sp] - ldr r1, [r3, 0x74] - str r1, [sp, 0x4] - movs r1, 0 - movs r3, 0x1 - bl sub_8012BC4 - movs r0, 0 - mov r9, r0 - ldr r0, [r4] - adds r0, 0x5A - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r9, r0 - blt _080214FC - b _08021646 -_080214FC: - mov r8, r4 - add r2, sp, 0x58 - mov r10, r2 -_08021502: - mov r3, r8 - ldr r2, [r3] - adds r0, r2, 0 - adds r0, 0x5E - movs r5, 0 - ldrsh r1, [r0, r5] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r1 - add r0, r9 - adds r0, r2, r0 - ldrb r5, [r0] - adds r7, r5, 0 - ldr r6, [r2, 0x3C] - cmp r6, 0x2 - bne _0802159C - add r0, sp, 0x8 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_8092578 - adds r0, r5, 0 - bl sub_8092544 - ldr r1, _08021570 - ldr r1, [r1] - movs r5, 0x98 - lsls r5, 2 - adds r1, r5 - ldr r1, [r1] - cmp r0, r1 - bgt _08021574 - mov r1, r8 - ldr r0, [r1] - adds r0, 0x40 - mov r1, r9 - bl sub_8013800 - adds r1, r0, 0 - mov r2, r8 - ldr r0, [r2] - ldr r3, [r0, 0x74] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - add r2, sp, 0x8 - bl xxx_call_draw_string - b _08021632 - .align 2, 0 -_08021568: .4byte gUnknown_203B280 -_0802156C: .4byte gUnknown_80DC494 -_08021570: .4byte gUnknown_203B460 -_08021574: - mov r0, r10 - ldr r1, _08021598 - add r2, sp, 0x8 - bl sub_800D158 - mov r3, r8 - ldr r0, [r3] - adds r0, 0x40 - mov r1, r9 - bl sub_8013800 - adds r1, r0, 0 - mov r5, r8 - ldr r0, [r5] - ldr r3, [r0, 0x74] - movs r0, 0 - str r0, [sp] - b _080215FE - .align 2, 0 -_08021598: .4byte gUnknown_80DC4A4 -_0802159C: - cmp r6, 0 - bne _0802160C - ldr r0, _080215D4 - ldr r0, [r0] - adds r0, r5 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080215D8 - adds r0, r2, 0 - adds r0, 0x40 - mov r1, r9 - bl sub_8013800 - adds r4, r0, 0 - adds r0, r5, 0 - bl sub_8092524 - adds r2, r0, 0 - mov r1, r8 - ldr r0, [r1] - ldr r3, [r0, 0x74] - str r6, [sp] - movs r0, 0x8 - adds r1, r4, 0 - bl xxx_call_draw_string - b _08021632 - .align 2, 0 -_080215D4: .4byte gUnknown_203B468 -_080215D8: - adds r0, r5, 0 - bl sub_8092524 - adds r2, r0, 0 - mov r0, r10 - ldr r1, _08021608 - bl sub_800D158 - mov r2, r8 - ldr r0, [r2] - adds r0, 0x40 - mov r1, r9 - bl sub_8013800 - adds r1, r0, 0 - mov r3, r8 - ldr r0, [r3] - ldr r3, [r0, 0x74] - str r6, [sp] -_080215FE: - movs r0, 0x8 - mov r2, r10 - bl xxx_call_draw_string - b _08021632 - .align 2, 0 -_08021608: .4byte gUnknown_80DC4AC -_0802160C: - adds r0, r2, 0 - adds r0, 0x40 - mov r1, r9 - bl sub_8013800 - adds r4, r0, 0 - adds r0, r7, 0 - bl sub_8092524 - adds r2, r0, 0 - mov r5, r8 - ldr r0, [r5] - ldr r3, [r0, 0x74] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - adds r1, r4, 0 - bl xxx_call_draw_string -_08021632: - movs r0, 0x1 - add r9, r0 - mov r1, r8 - ldr r0, [r1] - adds r0, 0x5A - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r9, r0 - bge _08021646 - b _08021502 -_08021646: - ldr r0, _08021660 - ldr r0, [r0] - ldr r0, [r0, 0x74] - bl sub_80073E0 - add sp, 0xA8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08021660: .4byte gUnknown_203B280 - thumb_func_end sub_8021494 - - thumb_func_start sub_8021664 -sub_8021664: - push {r4-r6,lr} - movs r5, 0 - ldr r1, _0802167C - ldr r0, [r1] - ldr r0, [r0, 0x3C] - cmp r0, 0x1 - beq _08021692 - cmp r0, 0x1 - bcc _08021680 - cmp r0, 0x2 - beq _080216B4 - b _080216F2 - .align 2, 0 -_0802167C: .4byte gUnknown_203B280 -_08021680: - movs r4, 0x1 -_08021682: - ldr r0, [r1] - adds r0, r5 - strb r4, [r0] - adds r5, 0x1 - adds r4, 0x1 - cmp r4, 0x39 - ble _08021682 - b _080216F2 -_08021692: - movs r4, 0x1 - ldr r2, _080216B0 -_08021696: - ldr r0, [r2] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _080216A8 - ldr r0, [r1] - adds r0, r5 - strb r4, [r0] - adds r5, 0x1 -_080216A8: - adds r4, 0x1 - cmp r4, 0x39 - ble _08021696 - b _080216F2 - .align 2, 0 -_080216B0: .4byte gUnknown_203B468 -_080216B4: - movs r4, 0x1 - adds r6, r1, 0 -_080216B8: - ldr r0, _080216FC - ldr r0, [r0] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _080216EC - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8092534 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _080216E4 - cmp r0, 0x1 - bne _080216EC - movs r0, 0x6 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080216EC -_080216E4: - ldr r0, [r6] - adds r0, r5 - strb r4, [r0] - adds r5, 0x1 -_080216EC: - adds r4, 0x1 - cmp r4, 0x39 - ble _080216B8 -_080216F2: - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080216FC: .4byte gUnknown_203B468 - thumb_func_end sub_8021664 - - thumb_func_start sub_8021700 -sub_8021700: - push {r4,lr} - cmp r0, 0x1 - beq _08021710 - cmp r0, 0x1 - bcc _08021754 - cmp r0, 0x2 - beq _0802172C - b _0802176A -_08021710: - movs r4, 0x1 - ldr r0, _08021728 - ldr r1, [r0] -_08021716: - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _08021754 - adds r4, 0x1 - cmp r4, 0x39 - ble _08021716 - b _0802176A - .align 2, 0 -_08021728: .4byte gUnknown_203B468 -_0802172C: - movs r4, 0x1 -_0802172E: - ldr r0, _08021750 - ldr r0, [r0] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _08021764 - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8092534 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08021754 - cmp r0, 0x1 - beq _08021758 - b _08021764 - .align 2, 0 -_08021750: .4byte gUnknown_203B468 -_08021754: - movs r0, 0 - b _0802176C -_08021758: - movs r0, 0x6 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _08021754 -_08021764: - adds r4, 0x1 - cmp r4, 0x39 - ble _0802172E -_0802176A: - movs r0, 0x1 -_0802176C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8021700 - - thumb_func_start sub_8021774 -sub_8021774: - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r4, r0, 0 - adds r5, r1, 0 - mov r8, r2 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - ldr r6, _080217E4 - movs r0, 0xE0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r6] - strb r4, [r0, 0xC] - ldr r0, [r6] - strb r5, [r0, 0xD] - ldr r0, [r6] - bl sub_801317C - bl sub_8021A60 - ldr r0, [r6] - mov r1, r8 - str r1, [r0, 0x74] - lsls r1, 1 - add r1, r8 - lsls r1, 3 - adds r1, 0x7C - adds r1, r0, r1 - str r1, [r0, 0x78] - adds r0, 0x7C - bl sub_8006518 - ldr r1, [r6] - ldr r2, [r1, 0x74] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x7C - ldr r0, _080217E8 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - bl sub_8021820 - movs r0, 0x1 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080217E4: .4byte gUnknown_203B28C -_080217E8: .4byte gUnknown_80DC4D8 - thumb_func_end sub_8021774 - - thumb_func_start sub_80217EC -sub_80217EC: - push {lr} - ldr r0, _0802180C - ldr r0, [r0] - ldr r1, [r0, 0x74] - bl sub_8012A64 - cmp r0, 0x1 - beq _08021810 - cmp r0, 0x2 - bne _0802181A - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0802181C - .align 2, 0 -_0802180C: .4byte gUnknown_203B28C -_08021810: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0802181C -_0802181A: - movs r0, 0 -_0802181C: - pop {r1} - bx r1 - thumb_func_end sub_80217EC - - thumb_func_start sub_8021820 -sub_8021820: - push {lr} - bl sub_8021878 - bl sub_8021894 - pop {r0} - bx r0 - thumb_func_end sub_8021820 - - thumb_func_start sub_8021830 -sub_8021830: - push {r4,r5,lr} - ldr r4, _08021870 - ldr r2, [r4] - cmp r2, 0 - beq _0802186A - ldr r0, [r2, 0x74] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x7C - ldr r0, _08021874 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x7C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802186A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08021870: .4byte gUnknown_203B28C -_08021874: .4byte gUnknown_80DC4BC - thumb_func_end sub_8021830 - - thumb_func_start sub_8021878 -sub_8021878: - push {lr} - bl sub_8004914 - ldr r0, _08021890 - ldr r0, [r0] - adds r0, 0x7C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r0} - bx r0 - .align 2, 0 -_08021890: .4byte gUnknown_203B28C - thumb_func_end sub_8021878 - - thumb_func_start sub_8021894 -sub_8021894: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x168 - ldr r4, _080218F8 - ldr r0, [r4] - ldr r0, [r0, 0x74] - bl sub_80073B8 - ldr r0, [r4] - ldrb r1, [r0, 0xC] - add r0, sp, 0x4 - movs r2, 0 - bl sub_8092578 - ldr r0, [r4] - ldr r3, [r0, 0x74] - movs r5, 0 - str r5, [sp] - movs r0, 0x14 - movs r1, 0 - add r2, sp, 0x4 - bl xxx_call_draw_string - ldr r0, [r4] - ldrb r0, [r0, 0xC] - bl sub_80925DC - adds r2, r0, 0 - ldr r0, [r4] - ldr r3, [r0, 0x74] - str r5, [sp] - movs r0, 0xA - movs r1, 0x14 - bl xxx_call_draw_string - ldr r4, [r4] - ldrb r0, [r4, 0xD] - cmp r0, 0 - beq _08021900 - ldr r2, _080218FC - ldr r3, [r4, 0x74] - str r5, [sp] - movs r0, 0x20 - movs r1, 0x3C - bl xxx_call_draw_string - b _0802190E - .align 2, 0 -_080218F8: .4byte gUnknown_203B28C -_080218FC: .4byte gUnknown_80DC4F0 -_08021900: - ldr r2, _0802193C - ldr r3, [r4, 0x74] - str r0, [sp] - movs r0, 0x20 - movs r1, 0x3C - bl xxx_call_draw_string -_0802190E: - ldr r4, _08021940 - ldr r0, [r4] - ldr r0, [r0, 0x74] - movs r5, 0x4 - str r5, [sp] - movs r1, 0x4 - movs r2, 0x40 - movs r3, 0x14 - bl sub_800792C - ldr r4, [r4] - ldrb r0, [r4, 0xD] - cmp r0, 0 - beq _08021944 - ldr r0, [r4, 0x74] - str r5, [sp] - movs r1, 0xB8 - movs r2, 0x40 - movs r3, 0x14 - bl sub_800792C - b _08021952 - .align 2, 0 -_0802193C: .4byte gUnknown_80DC518 -_08021940: .4byte gUnknown_203B28C -_08021944: - ldr r0, [r4, 0x74] - str r5, [sp] - movs r1, 0x5E - movs r2, 0x40 - movs r3, 0x6E - bl sub_800792C -_08021952: - ldr r5, _080219E8 - ldr r0, [r5] - ldr r0, [r0, 0x74] - movs r4, 0x4 - str r4, [sp] - movs r1, 0x4 - movs r2, 0x82 - movs r3, 0xC8 - bl sub_800792C - ldr r0, [r5] - ldr r0, [r0, 0x74] - str r4, [sp] - movs r1, 0x3 - movs r2, 0x40 - movs r3, 0x43 - bl sub_8007A78 - ldr r0, [r5] - ldr r0, [r0, 0x74] - str r4, [sp] - movs r1, 0xCC - movs r2, 0x40 - movs r3, 0x43 - bl sub_8007A78 - movs r6, 0 - ldr r0, [r5] - ldr r0, [r0, 0x70] - cmp r6, r0 - bge _08021A40 - add r7, sp, 0x104 - mov r8, r5 - mov r9, r6 -_08021996: - adds r0, r6, 0 - movs r1, 0x3 - bl __modsi3 - lsls r1, r0, 6 - subs r1, r0 - adds r5, r1, 0x7 - adds r0, r6, 0 - movs r1, 0x3 - bl __divsi3 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r4, r1, 0 - adds r4, 0x47 - mov r1, r8 - ldr r0, [r1] - lsls r1, r6, 1 - adds r0, 0xE - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r7, 0 - bl sub_808D930 - mov r0, r8 - ldr r3, [r0] - lsls r1, r6, 2 - adds r0, r3, 0 - adds r0, 0x30 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x1 - beq _08021A04 - cmp r0, 0x1 - bcc _080219EC - cmp r0, 0x2 - beq _08021A16 - b _08021A34 - .align 2, 0 -_080219E8: .4byte gUnknown_203B28C -_080219EC: - ldr r0, _08021A00 - ldr r2, [r0] - ldr r3, [r3, 0x74] - mov r1, r9 - str r1, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - bl xxx_call_draw_string - b _08021A34 - .align 2, 0 -_08021A00: .4byte gUnknown_80D49BC -_08021A04: - ldr r3, [r3, 0x74] - mov r2, r9 - str r2, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - adds r2, r7, 0 - bl xxx_call_draw_string - b _08021A34 -_08021A16: - add r0, sp, 0x4 - ldr r1, _08021A58 - adds r2, r7, 0 - bl sub_800D158 - mov r1, r8 - ldr r0, [r1] - ldr r3, [r0, 0x74] - mov r2, r9 - str r2, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - add r2, sp, 0x4 - bl xxx_call_draw_string -_08021A34: - adds r6, 0x1 - mov r1, r8 - ldr r0, [r1] - ldr r0, [r0, 0x70] - cmp r6, r0 - blt _08021996 -_08021A40: - ldr r0, _08021A5C - ldr r0, [r0] - ldr r0, [r0, 0x74] - bl sub_80073E0 - add sp, 0x168 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08021A58: .4byte gUnknown_80DC524 -_08021A5C: .4byte gUnknown_203B28C - thumb_func_end sub_8021894 - - thumb_func_start sub_8021A60 -sub_8021A60: - push {r4-r7,lr} - ldr r2, _08021B4C - ldr r1, [r2] - movs r0, 0 - str r0, [r1, 0x70] - movs r6, 0 - adds r4, r2, 0 - movs r3, 0 -_08021A70: - ldr r1, [r4] - lsls r2, r6, 1 - adds r0, r1, 0 - adds r0, 0xE - adds r0, r2 - strh r3, [r0] - lsls r0, r6, 2 - adds r1, 0x30 - adds r1, r0 - str r3, [r1] - adds r6, 0x1 - cmp r6, 0xF - ble _08021A70 - movs r6, 0 - ldr r7, _08021B4C -_08021A8E: - lsls r0, r6, 16 - asrs r5, r0, 16 - ldr r4, [r7] - adds r0, r5, 0 - bl sub_808DBA8 - ldrb r1, [r4, 0xC] - lsls r0, 24 - lsrs r0, 24 - cmp r1, r0 - bne _08021AC4 - adds r0, r5, 0 - bl sub_808E858 - lsls r0, 16 - asrs r0, 16 - cmp r5, r0 - bne _08021AC4 - ldr r3, [r7] - ldr r1, [r3, 0x70] - lsls r2, r1, 1 - adds r0, r3, 0 - adds r0, 0xE - adds r0, r2 - strh r5, [r0] - adds r1, 0x1 - str r1, [r3, 0x70] -_08021AC4: - adds r6, 0x1 - ldr r0, _08021B50 - cmp r6, r0 - ble _08021A8E - movs r6, 0 -_08021ACE: - lsls r0, r6, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_8098134 - lsls r0, 24 - cmp r0, 0 - beq _08021AFC - adds r0, r4, 0 - bl sub_8021B58 - adds r2, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _08021AFC - ldr r0, _08021B4C - ldr r1, [r0] - lsls r0, r2, 2 - adds r1, 0x30 - adds r1, r0 - movs r0, 0x1 - str r0, [r1] -_08021AFC: - adds r6, 0x1 - ldr r0, _08021B50 - cmp r6, r0 - ble _08021ACE - movs r6, 0 - ldr r4, _08021B54 -_08021B08: - movs r0, 0x58 - adds r1, r6, 0 - muls r1, r0 - ldr r0, [r4] - adds r2, r0, r1 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08021B3C - movs r1, 0x8 - ldrsh r0, [r2, r1] - bl sub_8021B58 - adds r2, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _08021B3C - ldr r0, _08021B4C - ldr r1, [r0] - lsls r0, r2, 2 - adds r1, 0x30 - adds r1, r0 - movs r0, 0x2 - str r0, [r1] -_08021B3C: - adds r6, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r6, r0 - ble _08021B08 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08021B4C: .4byte gUnknown_203B28C -_08021B50: .4byte 0x000001a7 -_08021B54: .4byte gUnknown_203B45C - thumb_func_end sub_8021A60 - - thumb_func_start sub_8021B58 -sub_8021B58: - push {r4,r5,lr} - lsls r0, 16 - asrs r0, 16 - bl sub_808E858 - lsls r0, 16 - asrs r4, r0, 16 - movs r2, 0 - ldr r0, _08021B84 - ldr r0, [r0] - ldr r1, [r0, 0x70] - cmp r2, r1 - bge _08021B90 - adds r3, r1, 0 - adds r1, r0, 0 - adds r1, 0xE -_08021B78: - movs r5, 0 - ldrsh r0, [r1, r5] - cmp r4, r0 - bne _08021B88 - adds r0, r2, 0 - b _08021B94 - .align 2, 0 -_08021B84: .4byte gUnknown_203B28C -_08021B88: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, r3 - blt _08021B78 -_08021B90: - movs r0, 0x1 - negs r0, r0 -_08021B94: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8021B58 - - thumb_func_start sub_8021B9C -sub_8021B9C: - push {r4-r6,lr} - adds r4, r0, 0 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _08021BF8 - movs r0, 0x9C - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r6, 0 - str r6, [r0, 0x14] - str r6, [r0, 0x18] - str r4, [r0] - ldr r0, _08021BFC - movs r1, 0x28 - bl sub_808D8E0 - ldr r4, _08021C00 - adds r0, r4, 0 - movs r1, 0x28 - bl sub_808D8E0 - movs r0, 0x28 - bl sub_808D994 - adds r1, r0, 0 - subs r4, 0x50 - adds r0, r4, 0 - bl strcpy - ldr r5, [r5] - ldr r0, [r5] - cmp r0, 0x1 - bne _08021C04 - adds r0, r5, 0 - adds r0, 0xCC - str r6, [r0] - b _08021C0E - .align 2, 0 -_08021BF8: .4byte gUnknown_203B290 -_08021BFC: .4byte gUnknown_202E5D8 -_08021C00: .4byte gUnknown_202E1C8 -_08021C04: - adds r1, r5, 0 - adds r1, 0xCC - adds r0, r5, 0 - adds r0, 0xBC - str r0, [r1] -_08021C0E: - movs r0, 0x28 - bl sub_808DDD0 - ldr r2, _08021C58 - ldr r3, [r2] - adds r1, r3, 0 - adds r1, 0xBC - str r0, [r1] - adds r1, 0x4 - ldr r0, [r0, 0x4] - str r0, [r1] - adds r0, r3, 0 - adds r0, 0xC8 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xC9 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xCA - strb r1, [r0] - ldr r1, [r2] - adds r2, r1, 0 - adds r2, 0xC4 - movs r0, 0x2 - strh r0, [r2] - adds r1, 0xC6 - movs r0, 0x8 - strh r0, [r1] - movs r0, 0 - bl sub_8021D44 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08021C58: .4byte gUnknown_203B290 - thumb_func_end sub_8021B9C - - thumb_func_start sub_8021C5C -sub_8021C5C: - push {lr} - ldr r0, _08021C74 - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r0, 0x17 - bhi _08021D10 - lsls r0, 2 - ldr r1, _08021C78 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08021C74: .4byte gUnknown_203B290 -_08021C78: .4byte _08021C7C - .align 2, 0 -_08021C7C: - .4byte _08021CDC - .4byte _08021CDC - .4byte _08021D10 - .4byte _08021D10 - .4byte _08021D0C - .4byte _08021D10 - .4byte _08021D10 - .4byte _08021D10 - .4byte _08021D10 - .4byte _08021CE2 - .4byte _08021CE2 - .4byte _08021CE8 - .4byte _08021D10 - .4byte _08021CF4 - .4byte _08021CFA - .4byte _08021D10 - .4byte _08021D00 - .4byte _08021CEE - .4byte _08021D10 - .4byte _08021D10 - .4byte _08021D10 - .4byte _08021D10 - .4byte _08021D06 - .4byte _08021D06 -_08021CDC: - bl sub_8022460 - b _08021D14 -_08021CE2: - bl sub_8022538 - b _08021D14 -_08021CE8: - bl sub_80225C8 - b _08021D14 -_08021CEE: - bl sub_80224D4 - b _08021D14 -_08021CF4: - bl sub_80226F0 - b _08021D14 -_08021CFA: - bl sub_8022790 - b _08021D14 -_08021D00: - bl sub_8022668 - b _08021D14 -_08021D06: - bl sub_8022684 - b _08021D14 -_08021D0C: - movs r0, 0x3 - b _08021D16 -_08021D10: - bl sub_80226CC -_08021D14: - movs r0, 0 -_08021D16: - pop {r1} - bx r1 - thumb_func_end sub_8021C5C - - thumb_func_start sub_8021D1C -sub_8021D1C: - push {r4,lr} - ldr r4, _08021D40 - ldr r0, [r4] - cmp r0, 0 - beq _08021D38 - adds r0, 0xBC - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08021D38: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08021D40: .4byte gUnknown_203B290 - thumb_func_end sub_8021D1C - - thumb_func_start sub_8021D44 -sub_8021D44: - push {lr} - ldr r1, _08021D58 - ldr r1, [r1] - str r0, [r1, 0x4] - bl sub_8021D5C - bl sub_8021E0C - pop {r0} - bx r0 - .align 2, 0 -_08021D58: .4byte gUnknown_203B290 - thumb_func_end sub_8021D44 - - thumb_func_start sub_8021D5C -sub_8021D5C: - push {r4-r7,lr} - ldr r4, _08021D7C - ldr r0, [r4] - adds r0, 0xD0 - bl sub_8006518 - ldr r1, [r4] - ldr r0, [r1, 0x4] - cmp r0, 0x9 - blt _08021DC8 - cmp r0, 0xA - ble _08021D80 - cmp r0, 0xB - beq _08021DB0 - b _08021DC8 - .align 2, 0 -_08021D7C: .4byte gUnknown_203B290 -_08021D80: - ldr r2, _08021DA8 - adds r1, 0xD0 - adds r0, r2, 0 - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r3,r5,r7} - stm r1!, {r3,r5,r7} - ldr r0, [r4] - movs r6, 0x80 - lsls r6, 1 - adds r0, r6 - ldm r2!, {r1,r3,r7} - stm r0!, {r1,r3,r7} - ldm r2!, {r5-r7} - stm r0!, {r5-r7} - ldr r1, [r4] - adds r1, 0xE8 - ldr r0, _08021DAC - b _08021DB8 - .align 2, 0 -_08021DA8: .4byte gUnknown_80DC534 -_08021DAC: .4byte gUnknown_80DC564 -_08021DB0: - movs r0, 0x80 - lsls r0, 1 - adds r1, r0 - ldr r0, _08021DC4 -_08021DB8: - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - b _08021DEC - .align 2, 0 -_08021DC4: .4byte gUnknown_80DC54C -_08021DC8: - ldr r0, _08021E04 - mov r12, r0 - ldr r4, _08021E08 - movs r3, 0 - movs r2, 0x3 -_08021DD2: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - adds r1, 0xD0 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _08021DD2 -_08021DEC: - bl sub_8004914 - ldr r0, _08021E04 - ldr r0, [r0] - adds r0, 0xD0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08021E04: .4byte gUnknown_203B290 -_08021E08: .4byte gUnknown_80DC534 - thumb_func_end sub_8021D5C - - thumb_func_start sub_8021E0C -sub_8021E0C: - push {r4,lr} - sub sp, 0x20 - ldr r1, _08021E28 - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r4, r1, 0 - cmp r0, 0x1C - bls _08021E1E - b _080222B6 -_08021E1E: - lsls r0, 2 - ldr r1, _08021E2C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08021E28: .4byte gUnknown_203B290 -_08021E2C: .4byte _08021E30 - .align 2, 0 -_08021E30: - .4byte _08021EA4 - .4byte _08021EC0 - .4byte _08021F38 - .4byte _08021F50 - .4byte _080222B6 - .4byte _08021F78 - .4byte _08021F90 - .4byte _08021F08 - .4byte _08021F20 - .4byte _08021FD8 - .4byte _08021FE2 - .4byte _08021FF0 - .4byte _0802208E - .4byte _080220B8 - .4byte _080220D8 - .4byte _080220EA - .4byte _08022080 - .4byte _08022024 - .4byte _08021FA8 - .4byte _08021FC0 - .4byte _08022138 - .4byte _08022150 - .4byte _08022168 - .4byte _08022176 - .4byte _0802217E - .4byte _08022238 - .4byte _08022250 - .4byte _08022268 - .4byte _08022294 -_08021EA4: - bl sub_80222C8 - ldr r2, _08021EB8 - ldr r0, _08021EBC - ldr r4, [r0] - ldr r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - b _08021ED4 - .align 2, 0 -_08021EB8: .4byte gUnknown_80D79A4 -_08021EBC: .4byte gUnknown_203B290 -_08021EC0: - bl sub_80222C8 - ldr r2, _08021F00 - ldr r0, _08021F04 - ldr r4, [r0] - ldr r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x4 -_08021ED4: - adds r0, r2 - ldr r0, [r0] - ldr r2, [r4, 0x14] - adds r3, r4, 0 - adds r3, 0x1C - adds r1, r4, 0 - adds r1, 0x5C - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - adds r1, r4, 0 - adds r1, 0xCC - ldr r1, [r1] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _080222B6 - .align 2, 0 -_08021F00: .4byte gUnknown_80D79A4 -_08021F04: .4byte gUnknown_203B290 -_08021F08: - ldr r3, [r4] - movs r0, 0x9 - str r0, [r3, 0x8] - ldr r2, _08021F1C - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0xC - b _0802227A - .align 2, 0 -_08021F1C: .4byte gUnknown_80D79A4 -_08021F20: - ldr r3, [r4] - movs r0, 0xA - str r0, [r3, 0x8] - ldr r2, _08021F34 - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x10 - b _0802227A - .align 2, 0 -_08021F34: .4byte gUnknown_80D79A4 -_08021F38: - ldr r3, [r4] - movs r0, 0x1 - str r0, [r3, 0x8] - ldr r2, _08021F4C - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x4C - b _0802227A - .align 2, 0 -_08021F4C: .4byte gUnknown_80D79A4 -_08021F50: - ldr r3, [r4] - movs r0, 0x4 - str r0, [r3, 0x8] - ldr r2, _08021F70 - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x8 - adds r0, r2 - ldr r0, [r0] - adds r3, 0xCC - ldr r2, [r3] - ldr r3, _08021F74 - b _08022284 - .align 2, 0 -_08021F70: .4byte gUnknown_80D79A4 -_08021F74: .4byte 0x0000030d -_08021F78: - ldr r3, [r4] - movs r0, 0x3 - str r0, [r3, 0x8] - ldr r2, _08021F8C - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x20 - b _0802227A - .align 2, 0 -_08021F8C: .4byte gUnknown_80D79A4 -_08021F90: - ldr r3, [r4] - movs r0, 0xA - str r0, [r3, 0x8] - ldr r2, _08021FA4 - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x24 - b _0802227A - .align 2, 0 -_08021FA4: .4byte gUnknown_80D79A4 -_08021FA8: - ldr r3, [r4] - movs r0, 0x3 - str r0, [r3, 0x8] - ldr r2, _08021FBC - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x28 - b _0802227A - .align 2, 0 -_08021FBC: .4byte gUnknown_80D79A4 -_08021FC0: - ldr r3, [r4] - movs r0, 0xA - str r0, [r3, 0x8] - ldr r2, _08021FD4 - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x2C - b _0802227A - .align 2, 0 -_08021FD4: .4byte gUnknown_80D79A4 -_08021FD8: - movs r0, 0x2 - movs r1, 0x3 - bl sub_80211AC - b _08021FE8 -_08021FE2: - movs r0, 0x1 - bl sub_8021354 -_08021FE8: - movs r0, 0x1 - bl sub_8016C40 - b _080222B6 -_08021FF0: - bl sub_8021494 - movs r0, 0x1 - bl sub_8016C40 - bl sub_8022380 - ldr r0, _08022020 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x6C - adds r1, r2, 0 - adds r1, 0x1C - adds r3, r2, 0 - adds r3, 0x5C - ldr r2, [r2, 0x18] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _080222B6 - .align 2, 0 -_08022020: .4byte gUnknown_203B290 -_08022024: - bl sub_8022420 - ldr r0, _08022070 - ldr r4, _08022074 - ldr r1, [r4] - ldrb r1, [r1, 0x10] - movs r2, 0 - bl sub_8092578 - ldr r1, _08022078 - ldr r4, [r4] - ldr r0, [r4, 0xC] - str r0, [r1] - ldr r2, _0802207C - ldr r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x14 - adds r0, r2 - ldr r0, [r0] - adds r3, r4, 0 - adds r3, 0x1C - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - adds r4, 0xCC - ldr r1, [r4] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x5 - bl sub_8014248 - b _080222B6 - .align 2, 0 -_08022070: .4byte gUnknown_202E628 -_08022074: .4byte gUnknown_203B290 -_08022078: .4byte gUnknown_202DE30 -_0802207C: .4byte gUnknown_80D79A4 -_08022080: - ldr r0, [r4] - ldrb r0, [r0, 0x10] - movs r1, 0 - movs r2, 0x2 - bl sub_8021774 - b _080222B6 -_0802208E: - ldr r1, [r4] - movs r0, 0xD - str r0, [r1, 0x8] - ldr r0, _080220B0 - ldrb r1, [r1, 0x10] - movs r2, 0 - bl sub_8092578 - ldr r2, _080220B4 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x18 - b _0802227A - .align 2, 0 -_080220B0: .4byte gUnknown_202E628 -_080220B4: .4byte gUnknown_80D79A4 -_080220B8: - ldr r1, [r4] - movs r0, 0xE - str r0, [r1, 0x8] - ldr r0, _080220D4 - bl sub_8011988 - ldr r0, [r4] - movs r1, 0x98 - lsls r1, 1 - adds r0, r1 - movs r1, 0x1 - str r1, [r0] - b _080222B6 - .align 2, 0 -_080220D4: .4byte 0x0000025b -_080220D8: - ldr r0, [r4] - movs r1, 0xF - str r1, [r0, 0x8] - movs r1, 0x9A - lsls r1, 1 - adds r0, r1 - movs r1, 0x1E - str r1, [r0] - b _080222B6 -_080220EA: - movs r0, 0x2 - bl sub_8021700 - lsls r0, 24 - cmp r0, 0 - beq _08022108 - bl sub_80213A0 - ldr r0, _08022104 - ldr r1, [r0] - movs r0, 0x12 - b _0802210E - .align 2, 0 -_08022104: .4byte gUnknown_203B290 -_08022108: - ldr r0, _08022130 - ldr r1, [r0] - movs r0, 0x8 -_0802210E: - str r0, [r1, 0x8] - movs r0, 0xCE - bl sub_8011988 - ldr r3, _08022134 - ldr r0, _08022130 - ldr r2, [r0] - ldr r1, [r2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r3, 0x1C - adds r0, r3 - ldr r0, [r0] - adds r2, 0xCC - ldr r2, [r2] - b _08022282 - .align 2, 0 -_08022130: .4byte gUnknown_203B290 -_08022134: .4byte gUnknown_80D79A4 -_08022138: - ldr r3, [r4] - movs r0, 0x16 - str r0, [r3, 0x8] - ldr r2, _0802214C - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x30 - b _0802227A - .align 2, 0 -_0802214C: .4byte gUnknown_80D79A4 -_08022150: - ldr r3, [r4] - movs r0, 0x17 - str r0, [r3, 0x8] - ldr r2, _08022164 - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x34 - b _0802227A - .align 2, 0 -_08022164: .4byte gUnknown_80D79A4 -_08022168: - movs r0, 0 - movs r1, 0x3 - movs r2, 0 - movs r3, 0xA - bl sub_8023144 - b _080222B6 -_08022176: - movs r0, 0x1 - bl sub_8023354 - b _080222B6 -_0802217E: - ldr r4, _080221A0 - ldr r0, [r4] - ldrb r0, [r0, 0x10] - add r1, sp, 0x14 - movs r2, 0 - movs r3, 0 - bl sub_8092638 - add r0, sp, 0x14 - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _080221A4 - ldr r1, [r4] - movs r0, 0x19 - str r0, [r1, 0x8] - b _080221FA - .align 2, 0 -_080221A0: .4byte gUnknown_203B290 -_080221A4: - ldr r0, [r4] - ldrb r0, [r0, 0x10] - bl sub_8092534 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _080221E0 - cmp r0, 0x2 - bgt _080221BE - cmp r0, 0x1 - beq _080221C4 - b _080221F0 -_080221BE: - cmp r0, 0x3 - beq _080221E8 - b _080221F0 -_080221C4: - movs r0, 0x6 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080221D8 - ldr r1, [r4] - movs r0, 0x15 - str r0, [r1, 0x8] - b _080221FA -_080221D8: - ldr r1, [r4] - movs r0, 0x1A - str r0, [r1, 0x8] - b _080221FA -_080221E0: - ldr r1, [r4] - movs r0, 0x1B - str r0, [r1, 0x8] - b _080221FA -_080221E8: - ldr r1, [r4] - movs r0, 0x1C - str r0, [r1, 0x8] - b _080221FA -_080221F0: - ldr r2, _08022228 - ldr r1, [r2] - movs r0, 0x15 - str r0, [r1, 0x8] - adds r4, r2, 0 -_080221FA: - ldr r0, [r4] - movs r1, 0x12 - ldrsh r0, [r0, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _0802222C - bl strcpy - ldr r0, _08022230 - ldr r1, [r4] - ldrb r1, [r1, 0x10] - movs r2, 0 - bl sub_8092578 - ldr r2, _08022234 - ldr r3, [r4] - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x38 - b _0802227A - .align 2, 0 -_08022228: .4byte gUnknown_203B290 -_0802222C: .4byte gUnknown_202DF98 -_08022230: .4byte gUnknown_202E628 -_08022234: .4byte gUnknown_80D79A4 -_08022238: - ldr r3, [r4] - movs r0, 0x15 - str r0, [r3, 0x8] - ldr r2, _0802224C - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x3C - b _0802227A - .align 2, 0 -_0802224C: .4byte gUnknown_80D79A4 -_08022250: - ldr r3, [r4] - movs r0, 0x15 - str r0, [r3, 0x8] - ldr r2, _08022264 - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x40 - b _0802227A - .align 2, 0 -_08022264: .4byte gUnknown_80D79A4 -_08022268: - ldr r3, [r4] - movs r0, 0x15 - str r0, [r3, 0x8] - ldr r2, _0802228C - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x44 -_0802227A: - adds r0, r2 - ldr r0, [r0] - adds r3, 0xCC - ldr r2, [r3] -_08022282: - ldr r3, _08022290 -_08022284: - movs r1, 0 - bl sub_80141B4 - b _080222B6 - .align 2, 0 -_0802228C: .4byte gUnknown_80D79A4 -_08022290: .4byte 0x0000010d -_08022294: - ldr r3, [r4] - movs r0, 0x15 - str r0, [r3, 0x8] - ldr r2, _080222C0 - ldr r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r2, 0x48 - adds r0, r2 - ldr r0, [r0] - adds r3, 0xCC - ldr r2, [r3] - ldr r3, _080222C4 - movs r1, 0 - bl sub_80141B4 -_080222B6: - add sp, 0x20 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080222C0: .4byte gUnknown_80D79A4 -_080222C4: .4byte 0x0000010d - thumb_func_end sub_8021E0C - - thumb_func_start sub_80222C8 -sub_80222C8: - push {r4-r7,lr} - ldr r4, _08022344 - ldr r0, [r4] - adds r0, 0x5C - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - movs r5, 0 - ldr r0, _08022348 - ldr r0, [r0] - str r0, [r1, 0x1C] - adds r3, r1, 0 - adds r3, 0x20 - movs r0, 0x2 - str r0, [r1, 0x20] - movs r2, 0x1 - ldr r0, _0802234C - ldr r0, [r0] - str r0, [r1, 0x24] - movs r0, 0x3 - str r0, [r1, 0x28] - ldr r0, _08022350 - ldr r0, [r0] - str r0, [r1, 0x2C] - movs r0, 0x4 - str r0, [r1, 0x30] - ldr r0, _08022354 - ldr r0, [r0] - str r0, [r1, 0x34] - str r2, [r1, 0x38] - movs r7, 0x4 - str r5, [r1, 0x3C] - str r2, [r3, 0x20] - adds r6, r1, 0 - adds r2, r6, 0 - adds r2, 0x5C -_08022314: - ldrh r0, [r2] - cmp r0, 0 - bne _08022322 - ldr r1, [r3] - ldr r0, [r6, 0x14] - cmp r1, r0 - beq _0802237A -_08022322: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r7 - blt _08022314 - movs r5, 0 - cmp r5, r7 - bge _0802237A - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x5C - ldrh r0, [r0] - cmp r0, 0 - bne _08022358 - ldr r0, [r1, 0x20] - str r0, [r1, 0x14] - b _0802237A - .align 2, 0 -_08022344: .4byte gUnknown_203B290 -_08022348: .4byte gUnknown_80D4978 -_0802234C: .4byte gUnknown_80D499C -_08022350: .4byte gUnknown_80D4970 -_08022354: .4byte gUnknown_80D4934 -_08022358: - adds r5, 0x1 - cmp r5, r7 - bge _0802237A - ldr r2, [r4] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0x5C - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08022358 - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x20 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x14] -_0802237A: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80222C8 - - thumb_func_start sub_8022380 -sub_8022380: - push {r4-r7,lr} - ldr r4, _080223EC - ldr r0, [r4] - adds r0, 0x5C - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _080223F0 - ldr r0, [r0] - str r0, [r3, 0x1C] - movs r0, 0x2 - str r0, [r3, 0x20] - movs r1, 0x1 - ldr r0, _080223F4 - ldr r0, [r0] - str r0, [r3, 0x24] - movs r0, 0x4 - str r0, [r3, 0x28] - movs r6, 0x2 - str r2, [r3, 0x2C] - str r1, [r3, 0x30] - movs r5, 0 - mov r12, r3 - adds r3, 0x20 - mov r2, r12 - adds r2, 0x5C -_080223BA: - ldrh r0, [r2] - cmp r0, 0 - bne _080223CA - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x18] - cmp r1, r0 - beq _0802241A -_080223CA: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _080223BA - movs r5, 0 - cmp r5, r6 - bge _0802241A - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x5C - ldrh r0, [r0] - cmp r0, 0 - bne _080223F8 - ldr r0, [r1, 0x20] - str r0, [r1, 0x18] - b _0802241A - .align 2, 0 -_080223EC: .4byte gUnknown_203B290 -_080223F0: .4byte gUnknown_80D4978 -_080223F4: .4byte gUnknown_80D4970 -_080223F8: - adds r5, 0x1 - cmp r5, r6 - bge _0802241A - ldr r2, [r4] - lsls r0, r5, 1 - adds r1, r2, 0 - adds r1, 0x5C - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _080223F8 - lsls r0, r5, 3 - adds r1, r2, 0 - adds r1, 0x20 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x18] -_0802241A: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8022380 - - thumb_func_start sub_8022420 -sub_8022420: - push {r4,lr} - ldr r4, _08022454 - ldr r0, [r4] - adds r0, 0x5C - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - movs r3, 0 - ldr r0, _08022458 - ldr r0, [r0] - str r0, [r1, 0x1C] - movs r0, 0x5 - str r0, [r1, 0x20] - movs r2, 0x1 - ldr r0, _0802245C - ldr r0, [r0] - str r0, [r1, 0x24] - movs r0, 0x6 - str r0, [r1, 0x28] - str r3, [r1, 0x2C] - str r2, [r1, 0x30] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08022454: .4byte gUnknown_203B290 -_08022458: .4byte gUnknown_80D4920 -_0802245C: .4byte gUnknown_80D4928 - thumb_func_end sub_8022420 - - thumb_func_start sub_8022460 -sub_8022460: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080224CC - ldr r1, [sp] - cmp r1, 0x1 - beq _0802247A - ldr r0, _0802248C - ldr r0, [r0] - str r1, [r0, 0x14] -_0802247A: - ldr r0, [sp] - cmp r0, 0x2 - beq _0802249A - cmp r0, 0x2 - bgt _08022490 - cmp r0, 0x1 - beq _080224C6 - b _080224CC - .align 2, 0 -_0802248C: .4byte gUnknown_203B290 -_08022490: - cmp r0, 0x3 - beq _080224B6 - cmp r0, 0x4 - beq _080224BE - b _080224CC -_0802249A: - movs r0, 0x2 - bl sub_8021700 - lsls r0, 24 - cmp r0, 0 - beq _080224AE - movs r0, 0x5 - bl sub_8021D44 - b _080224CC -_080224AE: - movs r0, 0x7 - bl sub_8021D44 - b _080224CC -_080224B6: - movs r0, 0x14 - bl sub_8021D44 - b _080224CC -_080224BE: - movs r0, 0x2 - bl sub_8021D44 - b _080224CC -_080224C6: - movs r0, 0x3 - bl sub_8021D44 -_080224CC: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8022460 - - thumb_func_start sub_80224D4 -sub_80224D4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08022532 - ldr r0, [sp] - cmp r0, 0x5 - beq _080224F8 - cmp r0, 0x5 - bgt _080224F2 - cmp r0, 0x1 - beq _0802252C - b _08022532 -_080224F2: - cmp r0, 0x6 - beq _0802252C - b _08022532 -_080224F8: - ldr r0, _08022524 - ldr r2, [r0] - movs r0, 0x98 - lsls r0, 2 - adds r2, r0 - ldr r0, _08022528 - ldr r3, [r0] - ldr r0, [r2] - ldr r1, [r3, 0xC] - subs r0, r1 - str r0, [r2] - ldrb r0, [r3, 0x10] - bl sub_80925EC - movs r0, 0xA6 - lsls r0, 1 - bl sub_8011988 - movs r0, 0xC - bl sub_8021D44 - b _08022532 - .align 2, 0 -_08022524: .4byte gUnknown_203B460 -_08022528: .4byte gUnknown_203B290 -_0802252C: - movs r0, 0xA - bl sub_8021D44 -_08022532: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80224D4 - - thumb_func_start sub_8022538 -sub_8022538: - push {r4,lr} - movs r0, 0x1 - bl sub_8021274 - cmp r0, 0x4 - bhi _080225BC - lsls r0, 2 - ldr r1, _08022550 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08022550: .4byte _08022554 - .align 2, 0 -_08022554: - .4byte _080225C2 - .4byte _080225BC - .4byte _080225B0 - .4byte _08022568 - .4byte _0802258C -_08022568: - bl sub_802132C - ldr r4, _08022588 - ldr r1, [r4] - strb r0, [r1, 0x10] - ldr r0, [r4] - ldrb r0, [r0, 0x10] - bl sub_8092544 - ldr r1, [r4] - str r0, [r1, 0xC] - movs r0, 0xB - bl sub_8021D44 - b _080225C2 - .align 2, 0 -_08022588: .4byte gUnknown_203B290 -_0802258C: - bl sub_802132C - ldr r4, _080225AC - ldr r1, [r4] - strb r0, [r1, 0x10] - ldr r0, [r4] - ldrb r0, [r0, 0x10] - bl sub_8092544 - ldr r1, [r4] - str r0, [r1, 0xC] - movs r0, 0x10 - bl sub_8021D44 - b _080225C2 - .align 2, 0 -_080225AC: .4byte gUnknown_203B290 -_080225B0: - bl sub_80213A0 - movs r0, 0x1 - bl sub_8021D44 - b _080225C2 -_080225BC: - movs r0, 0x1 - bl sub_8016C40 -_080225C2: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8022538 - - thumb_func_start sub_80225C8 -sub_80225C8: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_8021274 - ldr r4, _08022608 - ldr r0, [r4] - adds r0, 0x6C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080225F8 - ldr r0, [r4] - adds r0, 0x6C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _080225F8 - ldr r0, [r4] - str r1, [r0, 0x18] -_080225F8: - ldr r0, [sp] - cmp r0, 0x2 - beq _08022612 - cmp r0, 0x2 - bgt _0802260C - cmp r0, 0x1 - beq _08022658 - b _0802265E - .align 2, 0 -_08022608: .4byte gUnknown_203B290 -_0802260C: - cmp r0, 0x4 - beq _08022650 - b _0802265E -_08022612: - ldr r0, _0802262C - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r1, [r0] - cmp r1, 0 - bne _08022630 - movs r0, 0x6 - bl sub_8021D44 - b _0802265E - .align 2, 0 -_0802262C: .4byte gUnknown_203B460 -_08022630: - ldr r0, _08022644 - ldr r0, [r0] - ldr r0, [r0, 0xC] - cmp r0, r1 - ble _08022648 - movs r0, 0x13 - bl sub_8021D44 - b _0802265E - .align 2, 0 -_08022644: .4byte gUnknown_203B290 -_08022648: - movs r0, 0x11 - bl sub_8021D44 - b _0802265E -_08022650: - movs r0, 0x10 - bl sub_8021D44 - b _0802265E -_08022658: - movs r0, 0xA - bl sub_8021D44 -_0802265E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80225C8 - - thumb_func_start sub_8022668 -sub_8022668: - push {lr} - bl sub_80217EC - cmp r0, 0x1 - bls _08022680 - cmp r0, 0x3 - bhi _08022680 - bl sub_8021830 - movs r0, 0xA - bl sub_8021D44 -_08022680: - pop {r0} - bx r0 - thumb_func_end sub_8022668 - - thumb_func_start sub_8022684 -sub_8022684: - push {r4,lr} - movs r0, 0x1 - bl sub_8023278 - cmp r0, 0x2 - beq _080226BC - cmp r0, 0x2 - bcc _080226C6 - cmp r0, 0x3 - bne _080226C6 - bl sub_802331C - ldr r4, _080226B8 - ldr r1, [r4] - strh r0, [r1, 0x12] - movs r2, 0x12 - ldrsh r0, [r1, r2] - bl sub_808DBA8 - ldr r1, [r4] - strb r0, [r1, 0x10] - movs r0, 0x18 - bl sub_8021D44 - b _080226C6 - .align 2, 0 -_080226B8: .4byte gUnknown_203B290 -_080226BC: - bl sub_80233A0 - movs r0, 0x1 - bl sub_8021D44 -_080226C6: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8022684 - - thumb_func_start sub_80226CC -sub_80226CC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080226E4 - ldr r0, _080226EC - ldr r0, [r0] - ldr r0, [r0, 0x8] - bl sub_8021D44 -_080226E4: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080226EC: .4byte gUnknown_203B290 - thumb_func_end sub_80226CC - - thumb_func_start sub_80226F0 -sub_80226F0: - push {r4,lr} - sub sp, 0x4 - mov r1, sp - movs r2, 0 - movs r0, 0x80 - strb r0, [r1] - strb r0, [r1, 0x1] - movs r0, 0x10 - strb r0, [r1, 0x2] - strb r2, [r1, 0x3] - bl sub_8099B94 - lsls r0, 24 - cmp r0, 0 - bne _08022782 - ldr r0, _08022728 - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x4 - bhi _0802275C - lsls r0, 2 - ldr r1, _0802272C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08022728: .4byte gUnknown_203B290 -_0802272C: .4byte _08022730 - .align 2, 0 -_08022730: - .4byte _0802275C - .4byte _08022744 - .4byte _08022750 - .4byte _08022744 - .4byte _08022750 -_08022744: - movs r0, 0x5 - movs r1, 0x2 - ldr r2, [sp] - bl sub_8099AFC - b _08022772 -_08022750: - movs r0, 0x5 - movs r1, 0x2 - ldr r2, [sp] - bl sub_8099A5C - b _08022772 -_0802275C: - ldr r4, _0802278C - ldr r0, [r4] - ldr r0, [r0, 0x8] - bl sub_8021D44 - ldr r0, [r4] - movs r1, 0x98 - lsls r1, 1 - adds r0, r1 - movs r1, 0 - str r1, [r0] -_08022772: - ldr r0, _0802278C - ldr r1, [r0] - movs r0, 0x98 - lsls r0, 1 - adds r1, r0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_08022782: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802278C: .4byte gUnknown_203B290 - thumb_func_end sub_80226F0 - - thumb_func_start sub_8022790 -sub_8022790: - push {lr} - ldr r0, _080227A8 - ldr r2, [r0] - movs r0, 0x9A - lsls r0, 1 - adds r1, r2, r0 - ldr r0, [r1] - cmp r0, 0 - beq _080227AC - subs r0, 0x1 - str r0, [r1] - b _080227B2 - .align 2, 0 -_080227A8: .4byte gUnknown_203B290 -_080227AC: - ldr r0, [r2, 0x8] - bl sub_8021D44 -_080227B2: - pop {r0} - bx r0 - thumb_func_end sub_8022790 - - thumb_func_start sub_80227B8 -sub_80227B8: - push {r4,r5,lr} - adds r5, r0, 0 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _08022810 - movs r0, 0xD4 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - adds r2, r0, 0 - adds r2, 0xF4 - movs r1, 0 - str r1, [r2] - str r5, [r0, 0x48] - cmp r5, 0 - beq _08022820 - ldr r4, _08022814 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x7 - bl sub_808D9AC - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x6 - bl sub_808D9AC - bl sub_809177C - lsls r0, 24 - cmp r0, 0 - beq _08022818 - movs r0, 0 - bl sub_8022924 - b _08022856 - .align 2, 0 -_08022810: .4byte gUnknown_203B294 -_08022814: .4byte gUnknown_202DF98 -_08022818: - movs r0, 0x11 - bl sub_8022924 - b _08022856 -_08022820: - ldr r4, _08022848 - ldr r5, _0802284C - adds r0, r4, 0 - adds r1, r5, 0 - bl strcpy - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r5, 0 - bl strcpy - bl sub_8090A34 - cmp r0, 0 - bne _08022850 - movs r0, 0x12 - bl sub_8022924 - b _08022856 - .align 2, 0 -_08022848: .4byte gUnknown_202DF98 -_0802284C: .4byte gUnknown_80DC5EC -_08022850: - movs r0, 0 - bl sub_8022924 -_08022856: - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80227B8 - - thumb_func_start sub_8022860 -sub_8022860: - push {lr} - ldr r0, _08022878 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x16 - bhi _080228FE - lsls r0, 2 - ldr r1, _0802287C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08022878: .4byte gUnknown_203B294 -_0802287C: .4byte _08022880 - .align 2, 0 -_08022880: - .4byte _080228DC - .4byte _080228DC - .4byte _080228E2 - .4byte _080228E8 - .4byte _080228EE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228FE - .4byte _080228F4 - .4byte _080228FA -_080228DC: - bl sub_8022E78 - b _08022902 -_080228E2: - bl sub_8022EF4 - b _08022902 -_080228E8: - bl sub_8023068 - b _08022902 -_080228EE: - bl sub_80230E8 - b _08022902 -_080228F4: - bl sub_8023104 - b _08022902 -_080228FA: - movs r0, 0x3 - b _08022904 -_080228FE: - bl sub_8023120 -_08022902: - movs r0, 0 -_08022904: - pop {r1} - bx r1 - thumb_func_end sub_8022860 - - thumb_func_start sub_8022908 -sub_8022908: - push {r4,lr} - ldr r4, _08022920 - ldr r0, [r4] - cmp r0, 0 - beq _0802291A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802291A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08022920: .4byte gUnknown_203B294 - thumb_func_end sub_8022908 - - thumb_func_start sub_8022924 -sub_8022924: - push {lr} - ldr r1, _08022938 - ldr r1, [r1] - str r0, [r1] - bl sub_802293C - bl sub_8022A10 - pop {r0} - bx r0 - .align 2, 0 -_08022938: .4byte gUnknown_203B294 - thumb_func_end sub_8022924 - - thumb_func_start sub_802293C -sub_802293C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _08022964 - ldr r0, [r4] - movs r1, 0xA4 - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - ldr r1, [r4] - ldr r0, [r1] - cmp r0, 0x3 - beq _080229A4 - cmp r0, 0x3 - bgt _08022968 - cmp r0, 0x2 - beq _08022972 - b _080229BC - .align 2, 0 -_08022964: .4byte gUnknown_203B294 -_08022968: - cmp r0, 0x10 - bgt _080229BC - cmp r0, 0xA - blt _080229BC - b _080229E6 -_08022972: - bl sub_8022D2C - ldr r2, [r4] - movs r0, 0xBC - lsls r0, 1 - adds r2, r0 - ldr r1, _080229A0 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0xF8 - bl sub_8012CAC - ldr r0, [r4] - movs r6, 0xC2 - lsls r6, 1 - adds r0, r6 - movs r1, 0x6 - strh r1, [r0] - b _080229E6 - .align 2, 0 -_080229A0: .4byte gUnknown_80DC5BC -_080229A4: - movs r7, 0xB0 - lsls r7, 1 - adds r1, r7 - ldr r0, _080229B8 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - b _080229E6 - .align 2, 0 -_080229B8: .4byte gUnknown_80DC5D4 -_080229BC: - ldr r0, _08022A08 - mov r12, r0 - movs r1, 0xA4 - lsls r1, 1 - mov r8, r1 - ldr r4, _08022A0C - movs r3, 0 - movs r2, 0x3 -_080229CC: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - add r1, r8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _080229CC -_080229E6: - bl sub_8004914 - ldr r0, _08022A08 - ldr r0, [r0] - movs r6, 0xA4 - lsls r6, 1 - adds r0, r6 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08022A08: .4byte gUnknown_203B294 -_08022A0C: .4byte gUnknown_80DC5A4 - thumb_func_end sub_802293C - - thumb_func_start sub_8022A10 -sub_8022A10: - push {r4-r7,lr} - sub sp, 0x8 - ldr r1, _08022A2C - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0x16 - bls _08022A22 - b _08022D1E -_08022A22: - lsls r0, 2 - ldr r1, _08022A30 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08022A2C: .4byte gUnknown_203B294 -_08022A30: .4byte _08022A34 - .align 2, 0 -_08022A34: - .4byte _08022A90 - .4byte _08022AAA - .4byte _08022AB2 - .4byte _08022AE0 - .4byte _08022B10 - .4byte _08022B1A - .4byte _08022B24 - .4byte _08022B34 - .4byte _08022B44 - .4byte _08022B54 - .4byte _08022B64 - .4byte _08022C28 - .4byte _08022CA0 - .4byte _08022CA8 - .4byte _08022CB0 - .4byte _08022CB8 - .4byte _08022CC0 - .4byte _08022CC8 - .4byte _08022CD8 - .4byte _08022CE8 - .4byte _08022CF8 - .4byte _08022D14 - .4byte _08022D1E -_08022A90: - ldr r0, [r4] - ldr r0, [r0, 0x48] - cmp r0, 0 - beq _08022A9C - movs r0, 0x5 - b _08022A9E -_08022A9C: - movs r0, 0x1 -_08022A9E: - movs r1, 0x3 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - b _08022D22 -_08022AAA: - movs r0, 0x1 - bl sub_801A8D0 - b _08022D22 -_08022AB2: - bl sub_801A9E0 - ldr r0, _08022ADC - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x54 - adds r1, r2, 0 - adds r1, 0xF8 - movs r4, 0x9C - lsls r4, 1 - adds r3, r2, r4 - adds r2, 0xF4 - ldr r2, [r2] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _08022D22 - .align 2, 0 -_08022ADC: .4byte gUnknown_203B294 -_08022AE0: - bl sub_801A9E0 - ldr r4, _08022B08 - ldr r0, [r4] - adds r0, 0x54 - movs r1, 0 - bl sub_8012EA4 - ldr r0, [r4] - adds r0, 0xA4 - ldr r1, _08022B0C - movs r2, 0x3 - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _08022D22 - .align 2, 0 -_08022B08: .4byte gUnknown_203B294 -_08022B0C: .4byte gUnknown_80DC584 -_08022B10: - ldr r0, [r4] - adds r0, 0x50 - bl sub_801B3C0 - b _08022D22 -_08022B1A: - ldr r0, _08022B20 - b _08022D00 - .align 2, 0 -_08022B20: .4byte gUnknown_80DC5F4 -_08022B24: - ldr r0, _08022B2C - ldr r3, _08022B30 - b _08022D02 - .align 2, 0 -_08022B2C: .4byte gUnknown_80DC618 -_08022B30: .4byte 0x00000101 -_08022B34: - ldr r0, _08022B3C - ldr r3, _08022B40 - b _08022D02 - .align 2, 0 -_08022B3C: .4byte gUnknown_80DC674 -_08022B40: .4byte 0x00000101 -_08022B44: - ldr r0, _08022B4C - ldr r3, _08022B50 - b _08022D02 - .align 2, 0 -_08022B4C: .4byte gUnknown_80DC6CC -_08022B50: .4byte 0x00000101 -_08022B54: - ldr r0, _08022B5C - ldr r3, _08022B60 - b _08022D02 - .align 2, 0 -_08022B5C: .4byte gUnknown_80DC728 -_08022B60: .4byte 0x00000101 -_08022B64: - ldr r7, _08022B68 - b _08022B78 - .align 2, 0 -_08022B68: .4byte gUnknown_203B294 -_08022B6C: - ldr r1, [r4] - ldr r0, [r1, 0x40] - adds r0, 0x1 - str r0, [r1, 0x40] - cmp r0, 0x17 - bgt _08022C10 -_08022B78: - movs r5, 0 - movs r6, 0 - movs r3, 0 - ldr r2, [r4] - ldr r0, [r2, 0x38] - cmp r5, r0 - bge _08022BA4 - ldrb r1, [r2, 0x8] - b _08022B9C -_08022B8A: - adds r3, 0x1 - ldr r2, [r4] - ldr r0, [r2, 0x38] - cmp r3, r0 - bge _08022BA4 - adds r0, r2, 0 - adds r0, 0x8 - adds r0, r3 - ldrb r1, [r0] -_08022B9C: - ldr r0, [r2, 0x40] - cmp r1, r0 - bne _08022B8A - movs r5, 0x1 -_08022BA4: - movs r3, 0 - ldr r2, [r4] - ldr r0, [r2, 0x3C] - cmp r3, r0 - bge _08022BCE - adds r0, r2, 0 - adds r0, 0x20 - b _08022BC4 -_08022BB4: - adds r3, 0x1 - ldr r2, [r4] - ldr r0, [r2, 0x3C] - cmp r3, r0 - bge _08022BCE - adds r0, r2, 0 - adds r0, 0x20 - adds r0, r3 -_08022BC4: - ldrb r1, [r0] - ldr r0, [r2, 0x40] - cmp r1, r0 - bne _08022BB4 - movs r6, 0x1 -_08022BCE: - cmp r5, r6 - beq _08022B6C - ldr r1, [r7] - movs r0, 0xA - str r0, [r1, 0x4] - ldr r0, [r1, 0x40] - lsls r0, 24 - lsrs r0, 24 - bl sub_808EAB0 - adds r1, r0, 0 - ldr r0, _08022C18 - bl strcpy - movs r0, 0xCB - bl sub_8011988 - ldr r0, _08022C1C - movs r1, 0 - movs r2, 0 - ldr r3, _08022C20 - bl sub_80141B4 - ldr r1, [r7] - ldr r0, [r1, 0x40] - adds r0, 0x1 - str r0, [r1, 0x40] - ldr r0, _08022C24 - ldr r0, [r0] - ldr r0, [r0, 0x40] - cmp r0, 0x17 - bgt _08022C10 - b _08022D22 -_08022C10: - movs r0, 0xB - bl sub_8022924 - b _08022D22 - .align 2, 0 -_08022C18: .4byte gUnknown_202DEA8 -_08022C1C: .4byte gUnknown_80DC788 -_08022C20: .4byte 0x00000101 -_08022C24: .4byte gUnknown_203B294 -_08022C28: - ldr r1, [r4] - movs r0, 0x16 - str r0, [r1, 0x4] - bl nullsub_104 - ldr r0, [r4] - adds r0, 0x46 - ldrh r0, [r0] - cmp r0, 0x8 - bhi _08022C98 - lsls r0, 2 - ldr r1, _08022C48 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08022C48: .4byte _08022C4C - .align 2, 0 -_08022C4C: - .4byte _08022C70 - .4byte _08022C78 - .4byte _08022C80 - .4byte _08022C98 - .4byte _08022C88 - .4byte _08022C98 - .4byte _08022C98 - .4byte _08022C98 - .4byte _08022C90 -_08022C70: - movs r0, 0x16 - bl sub_8022924 - b _08022D22 -_08022C78: - movs r0, 0xD - bl sub_8022924 - b _08022D22 -_08022C80: - movs r0, 0xE - bl sub_8022924 - b _08022D22 -_08022C88: - movs r0, 0xF - bl sub_8022924 - b _08022D22 -_08022C90: - movs r0, 0x10 - bl sub_8022924 - b _08022D22 -_08022C98: - movs r0, 0xC - bl sub_8022924 - b _08022D22 -_08022CA0: - ldr r0, _08022CA4 - b _08022D00 - .align 2, 0 -_08022CA4: .4byte gUnknown_80DC7B4 -_08022CA8: - ldr r0, _08022CAC - b _08022D00 - .align 2, 0 -_08022CAC: .4byte gUnknown_80DC7FC -_08022CB0: - ldr r0, _08022CB4 - b _08022D00 - .align 2, 0 -_08022CB4: .4byte gUnknown_80DC81C -_08022CB8: - ldr r0, _08022CBC - b _08022D00 - .align 2, 0 -_08022CBC: .4byte gUnknown_80DC844 -_08022CC0: - ldr r0, _08022CC4 - b _08022D00 - .align 2, 0 -_08022CC4: .4byte gUnknown_80DC864 -_08022CC8: - ldr r1, [r4] - movs r0, 0x16 - str r0, [r1, 0x4] - ldr r0, _08022CD4 - b _08022D00 - .align 2, 0 -_08022CD4: .4byte gUnknown_80DC88C -_08022CD8: - ldr r1, [r4] - movs r0, 0x16 - str r0, [r1, 0x4] - ldr r0, _08022CE4 - b _08022D00 - .align 2, 0 -_08022CE4: .4byte gUnknown_80DC8AC -_08022CE8: - ldr r1, [r4] - movs r0, 0x16 - str r0, [r1, 0x4] - ldr r0, _08022CF4 - b _08022D00 - .align 2, 0 -_08022CF4: .4byte gUnknown_80DC8C8 -_08022CF8: - ldr r1, [r4] - movs r0, 0x16 - str r0, [r1, 0x4] - ldr r0, _08022D0C -_08022D00: - ldr r3, _08022D10 -_08022D02: - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _08022D22 - .align 2, 0 -_08022D0C: .4byte gUnknown_80DC8DC -_08022D10: .4byte 0x00000301 -_08022D14: - ldr r0, [r4] - ldr r0, [r0, 0x4C] - bl sub_801AFA4 - b _08022D22 -_08022D1E: - bl sub_801A928 -_08022D22: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8022A10 - - thumb_func_start sub_8022D2C -sub_8022D2C: - push {r4-r7,lr} - movs r6, 0 - ldr r4, _08022D78 - ldr r0, [r4] - movs r1, 0x9C - lsls r1, 1 - adds r0, r1 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r2, [r4] - ldr r0, [r2, 0x48] - cmp r0, 0 - beq _08022D80 - adds r1, r2, 0 - adds r1, 0xF8 - ldr r0, _08022D7C - str r0, [r1] - adds r1, 0x4 - movs r0, 0x5 - str r0, [r1] - adds r0, r2, 0 - adds r0, 0x52 - ldrb r0, [r0] - bl sub_8091764 - lsls r0, 24 - cmp r0, 0 - bne _08022D74 - ldr r0, [r4] - movs r2, 0x9C - lsls r2, 1 - adds r0, r2 - movs r1, 0x1 - strh r1, [r0] -_08022D74: - movs r6, 0x1 - b _08022DBE - .align 2, 0 -_08022D78: .4byte gUnknown_203B294 -_08022D7C: .4byte gUnknown_80DC8F0 -_08022D80: - adds r0, r2, 0 - adds r0, 0x52 - ldrb r0, [r0] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _08022DA4 - ldr r1, [r4] - adds r2, r1, 0 - adds r2, 0xF8 - ldr r0, _08022E38 - str r0, [r2] - adds r1, 0xFC - movs r0, 0x6 - str r0, [r1] - movs r6, 0x1 -_08022DA4: - ldr r2, [r4] - lsls r3, r6, 3 - adds r0, r2, 0 - adds r0, 0xF8 - adds r0, r3 - ldr r1, _08022E3C - ldr r1, [r1] - str r1, [r0] - adds r2, 0xFC - adds r2, r3 - movs r0, 0x4 - str r0, [r2] - adds r6, 0x1 -_08022DBE: - ldr r4, _08022E40 - ldr r0, [r4] - mov r12, r0 - lsls r1, r6, 3 - mov r2, r12 - adds r2, 0xF8 - adds r3, r2, r1 - ldr r0, _08022E44 - ldr r0, [r0] - str r0, [r3] - mov r3, r12 - adds r3, 0xFC - adds r1, r3, r1 - movs r0, 0x7 - str r0, [r1] - adds r6, 0x1 - lsls r1, r6, 3 - adds r2, r1 - movs r0, 0 - str r0, [r2] - adds r1, r3, r1 - movs r0, 0x1 - str r0, [r1] - movs r5, 0 - adds r7, r4, 0 - cmp r5, r6 - bge _08022E16 - mov r4, r12 - adds r4, 0xF4 - movs r2, 0x9C - lsls r2, 1 - add r2, r12 -_08022DFE: - ldrh r0, [r2] - cmp r0, 0 - bne _08022E0C - ldr r1, [r3] - ldr r0, [r4] - cmp r1, r0 - beq _08022E70 -_08022E0C: - adds r2, 0x2 - adds r3, 0x8 - adds r5, 0x1 - cmp r5, r6 - blt _08022DFE -_08022E16: - movs r5, 0 - cmp r5, r6 - bge _08022E70 - ldr r1, [r7] - movs r2, 0x9C - lsls r2, 1 - adds r0, r1, r2 - ldrh r0, [r0] - cmp r0, 0 - bne _08022E48 - adds r0, r1, 0 - adds r0, 0xF4 - adds r1, 0xFC - ldr r1, [r1] - str r1, [r0] - b _08022E70 - .align 2, 0 -_08022E38: .4byte gUnknown_80DC8F8 -_08022E3C: .4byte gUnknown_80D4940 -_08022E40: .4byte gUnknown_203B294 -_08022E44: .4byte gUnknown_80D4970 -_08022E48: - adds r5, 0x1 - cmp r5, r6 - bge _08022E70 - ldr r3, [r7] - lsls r0, r5, 1 - movs r2, 0x9C - lsls r2, 1 - adds r1, r3, r2 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08022E48 - adds r2, r3, 0 - adds r2, 0xF4 - lsls r1, r5, 3 - adds r0, r3, 0 - adds r0, 0xFC - adds r0, r1 - ldr r0, [r0] - str r0, [r2] -_08022E70: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8022D2C - - thumb_func_start sub_8022E78 -sub_8022E78: - push {lr} - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x3 - beq _08022E94 - cmp r0, 0x3 - bhi _08022E8E - cmp r0, 0x2 - beq _08022EE8 - b _08022EEE -_08022E8E: - cmp r0, 0x4 - beq _08022EBC - b _08022EEE -_08022E94: - bl sub_801A8AC - ldr r1, _08022EB4 - ldr r2, [r1] - str r0, [r2, 0x4C] - ldr r1, _08022EB8 - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x50] - movs r0, 0x2 - bl sub_8022924 - b _08022EEE - .align 2, 0 -_08022EB4: .4byte gUnknown_203B294 -_08022EB8: .4byte gUnknown_203B460 -_08022EBC: - bl sub_801A8AC - ldr r1, _08022EE0 - ldr r2, [r1] - str r0, [r2, 0x4C] - ldr r1, _08022EE4 - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x50] - movs r0, 0 - bl sub_8099690 - movs r0, 0x4 - bl sub_8022924 - b _08022EEE - .align 2, 0 -_08022EE0: .4byte gUnknown_203B294 -_08022EE4: .4byte gUnknown_203B460 -_08022EE8: - movs r0, 0x16 - bl sub_8022924 -_08022EEE: - pop {r0} - bx r0 - thumb_func_end sub_8022E78 - - thumb_func_start sub_8022EF4 -sub_8022EF4: - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801A6E8 - ldr r4, _08022F3C - ldr r0, [r4] - adds r0, 0x54 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08022F26 - ldr r0, [r4] - adds r0, 0x54 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08022F26 - ldr r0, [r4] - adds r0, 0xF4 - str r1, [r0] -_08022F26: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0x6 - bls _08022F30 - b _08023060 -_08022F30: - lsls r0, 2 - ldr r1, _08022F40 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08022F3C: .4byte gUnknown_203B294 -_08022F40: .4byte _08022F44 - .align 2, 0 -_08022F44: - .4byte _08022F60 - .4byte _08023060 - .4byte _08023060 - .4byte _0802304C - .4byte _08022F68 - .4byte _08023044 - .4byte _08023054 -_08022F60: - movs r0, 0x1 - bl sub_8022924 - b _08023060 -_08022F68: - ldr r4, _08022FEC - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x8 - ldr r1, [r1, 0x48] - movs r2, 0x14 - ldrsh r1, [r1, r2] - bl sub_808EBA8 - ldr r3, [r4] - str r0, [r3, 0x38] - ldr r0, [r3, 0x48] - adds r1, r3, 0 - adds r1, 0x52 - ldrb r1, [r1] - adds r3, 0x44 - movs r2, 0 - bl sub_80915F4 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x20 - ldr r1, [r1, 0x48] - movs r2, 0x14 - ldrsh r1, [r1, r2] - bl sub_808EBA8 - ldr r1, [r4] - str r0, [r1, 0x3C] - movs r0, 0x1 - str r0, [r1, 0x40] - adds r0, r1, 0 - adds r0, 0x44 - movs r2, 0 - ldrsh r5, [r0, r2] - ldr r0, _08022FF0 - ldr r3, _08022FF4 - ldr r2, [r1, 0x4C] - lsls r2, 2 - ldr r1, [r3] - adds r1, r2 - movs r2, 0 - bl sub_8090E14 - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - beq _08022FD0 - ldr r0, [r4] - ldr r0, [r0, 0x4C] - bl sub_80911F8 -_08022FD0: - movs r0, 0 - bl sub_8099690 - ldr r1, [r4] - movs r0, 0xA - str r0, [r1, 0x4] - adds r0, r5, 0x1 - cmp r0, 0x4 - bhi _08023030 - lsls r0, 2 - ldr r1, _08022FF8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08022FEC: .4byte gUnknown_203B294 -_08022FF0: .4byte gUnknown_202DE58 -_08022FF4: .4byte gUnknown_203B460 -_08022FF8: .4byte _08022FFC - .align 2, 0 -_08022FFC: - .4byte _08023030 - .4byte _08023010 - .4byte _08023018 - .4byte _08023020 - .4byte _08023028 -_08023010: - movs r0, 0x6 - bl sub_8022924 - b _08023060 -_08023018: - movs r0, 0x7 - bl sub_8022924 - b _08023060 -_08023020: - movs r0, 0x8 - bl sub_8022924 - b _08023060 -_08023028: - movs r0, 0x9 - bl sub_8022924 - b _08023060 -_08023030: - ldr r0, _08023040 - ldr r1, [r0] - movs r0, 0x16 - str r0, [r1, 0x4] - movs r0, 0x5 - bl sub_8022924 - b _08023060 - .align 2, 0 -_08023040: .4byte gUnknown_203B294 -_08023044: - movs r0, 0x15 - bl sub_8022924 - b _08023060 -_0802304C: - movs r0, 0x3 - bl sub_8022924 - b _08023060 -_08023054: - movs r0, 0 - bl sub_8099690 - movs r0, 0x4 - bl sub_8022924 -_08023060: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8022EF4 - - thumb_func_start sub_8023068 -sub_8023068: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801A6E8 - ldr r4, _080230A8 - ldr r0, [r4] - adds r0, 0x54 - bl sub_8012FD8 - ldr r0, [r4] - adds r0, 0xA4 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08023096 - ldr r0, [r4] - adds r0, 0xA4 - mov r1, sp - bl sub_8013114 -_08023096: - ldr r0, [sp] - cmp r0, 0x2 - beq _080230B8 - cmp r0, 0x2 - bgt _080230AC - cmp r0, 0x1 - beq _080230B0 - b _080230E0 - .align 2, 0 -_080230A8: .4byte gUnknown_203B294 -_080230AC: - cmp r0, 0x3 - bne _080230E0 -_080230B0: - movs r0, 0x1 - bl sub_8022924 - b _080230E0 -_080230B8: - ldr r0, [r4] - ldr r0, [r0, 0x4C] - bl sub_80911F8 - bl sub_8090A34 - cmp r0, 0 - bne _080230DA - movs r0, 0 - bl sub_8099690 - bl sub_801A928 - movs r0, 0x14 - bl sub_8022924 - b _080230E0 -_080230DA: - movs r0, 0x1 - bl sub_8022924 -_080230E0: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8023068 - - thumb_func_start sub_80230E8 -sub_80230E8: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _08023100 - cmp r0, 0x3 - bhi _08023100 - bl sub_801B450 - movs r0, 0x1 - bl sub_8022924 -_08023100: - pop {r0} - bx r0 - thumb_func_end sub_80230E8 - - thumb_func_start sub_8023104 -sub_8023104: - push {lr} - bl sub_801B00C - cmp r0, 0x1 - bls _0802311C - cmp r0, 0x3 - bhi _0802311C - bl sub_801B048 - movs r0, 0x1 - bl sub_8022924 -_0802311C: - pop {r0} - bx r0 - thumb_func_end sub_8023104 - - thumb_func_start sub_8023120 -sub_8023120: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08023138 - ldr r0, _08023140 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_8022924 -_08023138: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08023140: .4byte gUnknown_203B294 - thumb_func_end sub_8023120 - - thumb_func_start sub_8023144 -sub_8023144: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r7, r1, 0 - mov r9, r2 - mov r10, r3 - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - bl sub_8023704 - lsls r0, 24 - cmp r0, 0 - beq _08023168 - movs r0, 0 - b _08023252 -_08023168: - ldr r6, _08023260 - ldr r0, [r6] - cmp r0, 0 - bne _0802317C - movs r0, 0xFF - lsls r0, 2 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r6] -_0802317C: - ldr r0, [r6] - strb r4, [r0] - ldr r0, [r6] - ldr r1, _08023264 - ldr r1, [r1] - str r1, [r0, 0x4] - movs r4, 0xE4 - lsls r4, 2 - adds r1, r0, r4 - str r7, [r1] - movs r1, 0xE5 - lsls r1, 2 - mov r8, r1 - adds r2, r0, r1 - lsls r1, r7, 1 - adds r1, r7 - lsls r1, 3 - movs r5, 0xE6 - lsls r5, 2 - adds r1, r5 - adds r1, r0, r1 - str r1, [r2] - adds r0, r5 - bl sub_8006518 - ldr r1, [r6] - adds r4, r1, r4 - ldr r2, [r4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, r5 - ldr r0, _08023268 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r2, [r6] - mov r1, r8 - adds r0, r2, r1 - ldr r1, [r0] - movs r3, 0xFE - lsls r3, 2 - adds r0, r2, r3 - str r0, [r1, 0x14] - mov r4, r9 - cmp r4, 0 - beq _080231F6 - movs r1, 0xE4 - lsls r1, 2 - adds r0, r2, r1 - ldr r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - subs r3, 0x58 - adds r1, r2, r3 - adds r1, r0 - ldr r0, [r4] - str r0, [r1] -_080231F6: - ldr r0, [r6] - add r0, r8 - ldr r0, [r0] - mov r1, r10 - bl sub_8012D08 - bl sub_8004914 - ldr r0, [r6] - adds r0, r5 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r6] - movs r5, 0xD7 - lsls r5, 2 - adds r4, r5 - bl sub_80236A4 - adds r1, r0, 0 - adds r0, r4, 0 - mov r2, r10 - adds r3, r7, 0 - bl sub_8013818 - ldr r0, [r6] - ldr r1, _0802326C - ldrh r2, [r1] - movs r4, 0xDD - lsls r4, 2 - adds r1, r0, r4 - strh r2, [r1] - ldr r1, _08023270 - ldrh r2, [r1] - ldr r3, _08023274 - adds r1, r0, r3 - strh r2, [r1] - adds r0, r5 - bl sub_8013984 - bl sub_8023420 - bl sub_80234BC - movs r0, 0x1 -_08023252: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08023260: .4byte gUnknown_3001B5C -_08023264: .4byte gUnknown_203B298 -_08023268: .4byte gUnknown_80DC91C -_0802326C: .4byte gUnknown_203B29C -_08023270: .4byte gUnknown_203B29E -_08023274: .4byte 0x0000037a - thumb_func_end sub_8023144 - - thumb_func_start sub_8023278 -sub_8023278: - push {r4,lr} - lsls r0, 24 - cmp r0, 0 - bne _08023298 - ldr r0, _08023294 - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - bl sub_8013660 - movs r0, 0 - b _08023316 - .align 2, 0 -_08023294: .4byte gUnknown_3001B5C -_08023298: - ldr r4, _080232B4 - ldr r0, [r4] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - bl GetKeyPress - cmp r0, 0x2 - beq _080232BE - cmp r0, 0x2 - bgt _080232B8 - cmp r0, 0x1 - beq _080232C8 - b _080232EC - .align 2, 0 -_080232B4: .4byte gUnknown_3001B5C -_080232B8: - cmp r0, 0x3 - beq _080232D2 - b _080232EC -_080232BE: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _08023316 -_080232C8: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _08023316 -_080232D2: - movs r0, 0x5 - bl sub_80119D4 - ldr r0, [r4] - ldr r1, [r0, 0x4] - movs r2, 0x1 - cmp r1, 0x1 - bhi _080232E4 - adds r2, r1, 0x1 -_080232E4: - str r2, [r0, 0x4] - bl sub_80236A4 - b _0802330C -_080232EC: - ldr r0, _08023308 - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0802330C - movs r0, 0 - b _08023316 - .align 2, 0 -_08023308: .4byte gUnknown_3001B5C -_0802330C: - bl sub_8023420 - bl sub_80234BC - movs r0, 0x1 -_08023316: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8023278 - - thumb_func_start sub_802331C -sub_802331C: - ldr r0, _0802334C - ldr r0, [r0] - ldr r2, _08023350 - adds r1, r0, r2 - movs r3, 0 - ldrsh r2, [r1, r3] - movs r3, 0xDE - lsls r3, 2 - adds r1, r0, r3 - movs r3, 0 - ldrsh r1, [r1, r3] - muls r1, r2 - movs r3, 0xDD - lsls r3, 2 - adds r2, r0, r3 - movs r3, 0 - ldrsh r2, [r2, r3] - adds r1, r2 - lsls r1, 1 - adds r0, 0xC - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_0802334C: .4byte gUnknown_3001B5C -_08023350: .4byte 0x0000037a - thumb_func_end sub_802331C - - thumb_func_start sub_8023354 -sub_8023354: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0802339C - ldr r0, [r5] - movs r1, 0xE6 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - movs r2, 0 - bl sub_800641C - ldr r0, [r5] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - bl sub_8013984 - bl sub_8023420 - bl sub_80234BC - cmp r4, 0 - beq _08023396 - ldr r0, [r5] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - bl AddMenuCursorSprite -_08023396: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802339C: .4byte gUnknown_3001B5C - thumb_func_end sub_8023354 - - thumb_func_start sub_80233A0 -sub_80233A0: - push {r4-r6,lr} - ldr r5, _08023408 - ldr r2, [r5] - cmp r2, 0 - beq _08023400 - ldr r1, _0802340C - ldr r0, [r2, 0x4] - str r0, [r1] - ldr r1, _08023410 - movs r3, 0xDD - lsls r3, 2 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, _08023414 - ldr r6, _08023418 - adds r0, r2, r6 - ldrh r0, [r0] - strh r0, [r1] - movs r1, 0xE4 - lsls r1, 2 - adds r0, r2, r1 - ldr r0, [r0] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - movs r4, 0xE6 - lsls r4, 2 - adds r1, r4 - ldr r0, _0802341C - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - bl sub_8004914 - ldr r0, [r5] - adds r0, r4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r5] - bl MemoryFree - movs r0, 0 - str r0, [r5] -_08023400: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08023408: .4byte gUnknown_3001B5C -_0802340C: .4byte gUnknown_203B298 -_08023410: .4byte gUnknown_203B29C -_08023414: .4byte gUnknown_203B29E -_08023418: .4byte 0x0000037a -_0802341C: .4byte gUnknown_80DC904 - thumb_func_end sub_80233A0 - - thumb_func_start sub_8023420 -sub_8023420: - push {r4,r5,lr} - ldr r4, _080234A8 - ldr r0, [r4] - movs r1, 0xFE - lsls r1, 2 - adds r0, r1 - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - ldr r1, _080234AC - adds r0, r1 - strb r2, [r0] - ldr r0, [r4] - adds r1, 0x1 - adds r0, r1 - movs r1, 0xC - strb r1, [r0] - ldr r0, [r4] - ldr r1, _080234B0 - adds r0, r1 - strb r2, [r0] - ldr r0, [r4] - ldr r2, _080234B4 - adds r0, r2 - movs r1, 0 - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - ldr r3, [r4] - movs r2, 0xE4 - lsls r2, 2 - adds r5, r3, r2 - ldr r2, [r5] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r1, r3, r1 - ldr r2, _080234B8 - adds r1, r2 - lsls r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r2, [r5] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r3, r1 - movs r1, 0xEA - lsls r1, 2 - adds r3, r1 - strh r0, [r3] - bl sub_8004914 - ldr r0, [r4] - movs r2, 0xE6 - lsls r2, 2 - adds r0, r2 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080234A8: .4byte gUnknown_3001B5C -_080234AC: .4byte 0x000003f9 -_080234B0: .4byte 0x000003fb -_080234B4: .4byte 0x00000376 -_080234B8: .4byte 0x000003a6 - thumb_func_end sub_8023420 - - thumb_func_start sub_80234BC -sub_80234BC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x178 - ldr r5, _0802368C - ldr r0, [r5] - movs r4, 0xE4 - lsls r4, 2 - adds r0, r4 - ldr r0, [r0] - bl sub_8008C54 - ldr r0, [r5] - adds r0, r4 - ldr r0, [r0] - bl sub_80073B8 - ldr r2, _08023690 - ldr r0, [r5] - adds r0, r4 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r3, [r5] - ldr r1, _08023694 - adds r0, r3, r1 - ldrb r0, [r0] - lsls r0, 3 - adds r0, 0x4 - ldr r2, _08023698 - adds r1, r3, r2 - movs r6, 0 - ldrsh r2, [r1, r6] - adds r2, 0x1 - movs r1, 0x7 - str r1, [sp] - adds r3, r4 - ldr r1, [r3] - str r1, [sp, 0x4] - movs r1, 0 - movs r3, 0x2 - bl sub_8012BC4 - movs r0, 0 - mov r10, r0 - ldr r0, [r5] - ldr r1, _0802369C - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r10, r0 - blt _08023532 - b _0802366C -_08023532: - ldr r3, _0802368C - ldr r0, [r3] - movs r6, 0xD7 - lsls r6, 2 - adds r0, r6 - mov r1, r10 - bl sub_8013800 - mov r8, r0 - ldr r0, _0802368C - ldr r1, [r0] - ldr r2, _08023698 - adds r0, r1, r2 - movs r3, 0 - ldrsh r2, [r0, r3] - adds r6, 0x1C - adds r0, r1, r6 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r2 - add r0, r10 - lsls r0, 1 - adds r1, 0xC - adds r1, r0 - movs r6, 0 - ldrsh r5, [r1, r6] - adds r0, r5, 0 - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - add r4, sp, 0x16C - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_8092638 - movs r7, 0x7 - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _08023594 - adds r0, r5, 0 - bl sub_808E734 - lsls r0, 24 - movs r7, 0x4 - cmp r0, 0 - beq _08023594 - movs r7, 0x5 -_08023594: - adds r0, r5, 0 - movs r1, 0 - bl sub_808DCA0 - lsls r0, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - movs r1, 0xA - bl __modsi3 - adds r2, r0, 0 - adds r2, 0x30 - lsls r2, 24 - lsrs r2, 24 - ldr r6, _0802368C - ldr r0, [r6] - movs r1, 0xE4 - lsls r1, 2 - mov r9, r1 - add r0, r9 - ldr r0, [r0] - str r0, [sp] - movs r0, 0x14 - mov r1, r8 - adds r3, r7, 0 - bl sub_8012C60 - cmp r4, 0x9 - ble _08023628 - adds r0, r4, 0 - movs r1, 0xA - bl __divsi3 - adds r4, r0, 0 - movs r1, 0xA - bl __modsi3 - adds r2, r0, 0 - adds r2, 0x30 - lsls r2, 24 - lsrs r2, 24 - ldr r0, [r6] - movs r3, 0xE4 - lsls r3, 2 - adds r0, r3 - ldr r0, [r0] - str r0, [sp] - movs r0, 0xD - mov r1, r8 - adds r3, r7, 0 - bl sub_8012C60 - cmp r4, 0x9 - ble _08023628 - adds r0, r4, 0 - movs r1, 0xA - bl __divsi3 - movs r1, 0xA - bl __modsi3 - adds r2, r0, 0 - adds r2, 0x30 - lsls r2, 24 - lsrs r2, 24 - ldr r0, [r6] - add r0, r9 - ldr r0, [r0] - str r0, [sp] - movs r0, 0x6 - mov r1, r8 - adds r3, r7, 0 - bl sub_8012C60 -_08023628: - add r4, sp, 0x108 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_808D930 - add r0, sp, 0x8 - ldr r1, _080236A0 - adds r2, r7, 0 - adds r3, r4, 0 - bl sub_800D158 - ldr r6, _0802368C - ldr r0, [r6] - movs r1, 0xE4 - lsls r1, 2 - adds r0, r1 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x24 - mov r1, r8 - add r2, sp, 0x8 - bl xxx_call_draw_string - movs r2, 0x1 - add r10, r2 - ldr r0, [r6] - ldr r3, _0802369C - adds r0, r3 - movs r6, 0 - ldrsh r0, [r0, r6] - cmp r10, r0 - bge _0802366C - b _08023532 -_0802366C: - ldr r0, _0802368C - ldr r0, [r0] - movs r1, 0xE4 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - bl sub_80073E0 - add sp, 0x178 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802368C: .4byte gUnknown_3001B5C -_08023690: .4byte gUnknown_80DC934 -_08023694: .4byte 0x000003fa -_08023698: .4byte 0x0000037a -_0802369C: .4byte 0x00000376 -_080236A0: .4byte gUnknown_80DC93C - thumb_func_end sub_80234BC - - thumb_func_start sub_80236A4 -sub_80236A4: - push {r4,r5,lr} - ldr r0, _080236FC - ldr r1, [r0] - movs r0, 0 - str r0, [r1, 0x8] - movs r5, 0 -_080236B0: - lsls r0, r5, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_8098134 - lsls r0, 24 - cmp r0, 0 - beq _080236E2 - adds r0, r4, 0 - bl sub_808E858 - lsls r0, 16 - asrs r0, 16 - cmp r4, r0 - bne _080236E2 - ldr r0, _080236FC - ldr r3, [r0] - ldr r1, [r3, 0x8] - lsls r2, r1, 1 - adds r0, r3, 0 - adds r0, 0xC - adds r0, r2 - strh r5, [r0] - adds r1, 0x1 - str r1, [r3, 0x8] -_080236E2: - adds r5, 0x1 - ldr r0, _08023700 - cmp r5, r0 - ble _080236B0 - bl sub_8023730 - ldr r0, _080236FC - ldr r0, [r0] - ldr r0, [r0, 0x8] - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080236FC: .4byte gUnknown_3001B5C -_08023700: .4byte 0x000001a7 - thumb_func_end sub_80236A4 - - thumb_func_start sub_8023704 -sub_8023704: - push {r4,lr} - movs r4, 0 -_08023708: - lsls r0, r4, 16 - asrs r0, 16 - bl sub_8098134 - lsls r0, 24 - cmp r0, 0 - beq _0802371A - movs r0, 0 - b _08023724 -_0802371A: - adds r4, 0x1 - ldr r0, _0802372C - cmp r4, r0 - ble _08023708 - movs r0, 0x1 -_08023724: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0802372C: .4byte 0x000001a7 - thumb_func_end sub_8023704 - - thumb_func_start sub_8023730 -sub_8023730: - push {lr} - ldr r0, _08023744 - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r0, 0x1 - beq _08023748 - cmp r0, 0x2 - beq _0802374E - b _08023752 - .align 2, 0 -_08023744: .4byte gUnknown_3001B5C -_08023748: - bl sub_8023758 - b _08023752 -_0802374E: - bl sub_80237E0 -_08023752: - pop {r0} - bx r0 - thumb_func_end sub_8023730 - - thumb_func_start sub_8023758 -sub_8023758: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - ldr r3, _080237DC - ldr r2, [r3] - ldr r1, [r2, 0x8] - lsls r0, r1, 1 - adds r0, 0xA - adds r2, r0 - mov r9, r2 - movs r2, 0 - subs r1, 0x1 - cmp r2, r1 - bge _080237CC -_08023778: - mov r5, r9 - ldr r0, [r3] - ldr r0, [r0, 0x8] - subs r7, r0, 0x1 - adds r0, r2, 0x1 - mov r8, r0 - cmp r7, r2 - ble _080237BE -_08023788: - subs r6, r5, 0x2 - movs r1, 0 - ldrsh r0, [r6, r1] - movs r1, 0x1 - str r2, [sp] - bl sub_808DCDC - adds r4, r0, 0 - movs r1, 0 - ldrsh r0, [r5, r1] - movs r1, 0x1 - bl sub_808DCDC - lsls r4, 16 - lsls r0, 16 - ldr r2, [sp] - cmp r4, r0 - ble _080237B6 - movs r0, 0 - ldrsh r1, [r5, r0] - ldrh r0, [r6] - strh r0, [r5] - strh r1, [r6] -_080237B6: - adds r5, r6, 0 - subs r7, 0x1 - cmp r7, r2 - bgt _08023788 -_080237BE: - mov r2, r8 - ldr r3, _080237DC - ldr r0, [r3] - ldr r0, [r0, 0x8] - subs r0, 0x1 - cmp r2, r0 - blt _08023778 -_080237CC: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080237DC: .4byte gUnknown_3001B5C - thumb_func_end sub_8023758 - - thumb_func_start sub_80237E0 -sub_80237E0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - ldr r3, _08023864 - ldr r2, [r3] - ldr r1, [r2, 0x8] - lsls r0, r1, 1 - adds r0, 0xA - adds r2, r0 - mov r9, r2 - movs r2, 0 - subs r1, 0x1 - cmp r2, r1 - bge _08023854 -_08023800: - mov r5, r9 - ldr r0, [r3] - ldr r0, [r0, 0x8] - subs r7, r0, 0x1 - adds r0, r2, 0x1 - mov r8, r0 - cmp r7, r2 - ble _08023846 -_08023810: - subs r6, r5, 0x2 - movs r1, 0 - ldrsh r0, [r6, r1] - movs r1, 0 - str r2, [sp] - bl sub_808DCDC - adds r4, r0, 0 - movs r1, 0 - ldrsh r0, [r5, r1] - movs r1, 0 - bl sub_808DCDC - lsls r4, 16 - lsls r0, 16 - ldr r2, [sp] - cmp r4, r0 - ble _0802383E - movs r0, 0 - ldrsh r1, [r5, r0] - ldrh r0, [r6] - strh r0, [r5] - strh r1, [r6] -_0802383E: - adds r5, r6, 0 - subs r7, 0x1 - cmp r7, r2 - bgt _08023810 -_08023846: - mov r2, r8 - ldr r3, _08023864 - ldr r0, [r3] - ldr r0, [r0, 0x8] - subs r0, 0x1 - cmp r2, r0 - blt _08023800 -_08023854: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08023864: .4byte gUnknown_3001B5C - thumb_func_end sub_80237E0 - - thumb_func_start sub_8023868 -sub_8023868: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r5, r0, 0 - mov r8, r1 - mov r9, r2 - mov r10, r3 - bl sub_8024108 - lsls r0, 24 - cmp r0, 0 - beq _08023888 - movs r0, 0 - b _08023A6E -_08023888: - ldr r4, _080238AC - ldr r0, [r4] - cmp r0, 0 - bne _0802389C - movs r0, 0xFE - lsls r0, 2 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] -_0802389C: - ldr r1, [r4] - str r5, [r1] - ldr r0, _080238B0 - ldr r0, [r0] - cmp r0, r5 - beq _080238B4 - movs r0, 0x1 - b _080238B8 - .align 2, 0 -_080238AC: .4byte gUnknown_3001B60 -_080238B0: .4byte gUnknown_203B2A0 -_080238B4: - ldr r0, _080238E4 - ldr r0, [r0] -_080238B8: - str r0, [r1, 0x4] - ldr r2, _080238E8 - ldr r0, [r2] - movs r1, 0 - strb r1, [r0, 0x14] - ldr r0, [r2] - strb r1, [r0, 0x15] - ldr r0, [r2] - strb r1, [r0, 0x16] - ldr r0, [r2] - strb r1, [r0, 0x17] - ldr r0, [r2] - strb r1, [r0, 0x18] - ldr r0, [r2] - ldr r0, [r0] - cmp r0, 0x4 - bhi _08023980 - lsls r0, 2 - ldr r1, _080238EC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080238E4: .4byte gUnknown_203B2A4 -_080238E8: .4byte gUnknown_3001B60 -_080238EC: .4byte _080238F0 - .align 2, 0 -_080238F0: - .4byte _08023958 - .4byte _08023904 - .4byte _08023914 - .4byte _08023924 - .4byte _0802393C -_08023904: - ldr r0, _08023910 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x18] - b _08023958 - .align 2, 0 -_08023910: .4byte gUnknown_3001B60 -_08023914: - ldr r0, _08023920 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x14] - b _08023958 - .align 2, 0 -_08023920: .4byte gUnknown_3001B60 -_08023924: - ldr r2, _08023938 - ldr r0, [r2] - movs r1, 0x1 - strb r1, [r0, 0x17] - ldr r0, [r2] - strb r1, [r0, 0x15] - ldr r0, [r2] - strb r1, [r0, 0x16] - b _08023958 - .align 2, 0 -_08023938: .4byte gUnknown_3001B60 -_0802393C: - ldr r5, _0802397C - ldr r0, [r5] - movs r4, 0x1 - strb r4, [r0, 0x18] - ldr r0, [r5] - strb r4, [r0, 0x15] - movs r0, 0x9 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _08023958 - ldr r0, [r5] - strb r4, [r0, 0x16] -_08023958: - ldr r4, _0802397C - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0x4 - bne _08023980 - bl sub_80A5728 - lsls r0, 16 - asrs r0, 16 - bl sub_8002658 - ldr r1, [r4] - movs r2, 0xD5 - lsls r2, 2 - adds r1, r2 - strb r0, [r1] - b _0802398E - .align 2, 0 -_0802397C: .4byte gUnknown_3001B60 -_08023980: - ldr r0, _08023A7C - ldr r0, [r0] - movs r3, 0xD5 - lsls r3, 2 - adds r0, r3 - movs r1, 0 - strb r1, [r0] -_0802398E: - ldr r5, _08023A7C - ldr r0, [r5] - movs r4, 0xE3 - lsls r4, 2 - adds r1, r0, r4 - mov r2, r8 - str r2, [r1] - movs r7, 0xE4 - lsls r7, 2 - adds r2, r0, r7 - mov r3, r8 - lsls r1, r3, 1 - add r1, r8 - lsls r1, 3 - movs r6, 0xE5 - lsls r6, 2 - adds r1, r6 - adds r1, r0, r1 - str r1, [r2] - adds r0, r6 - bl sub_8006518 - ldr r1, [r5] - adds r4, r1, r4 - ldr r2, [r4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, r6 - ldr r0, _08023A80 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r2, [r5] - adds r0, r2, r7 - ldr r1, [r0] - movs r4, 0xFD - lsls r4, 2 - adds r0, r2, r4 - str r0, [r1, 0x14] - mov r0, r9 - cmp r0, 0 - beq _08023A04 - movs r1, 0xE3 - lsls r1, 2 - adds r0, r2, r1 - ldr r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - movs r3, 0xE7 - lsls r3, 2 - adds r1, r2, r3 - adds r1, r0 - mov r4, r9 - ldr r0, [r4] - str r0, [r1] -_08023A04: - ldr r0, [r5] - adds r0, r7 - ldr r0, [r0] - mov r1, r10 - bl sub_8012D08 - bl sub_8004914 - ldr r0, [r5] - adds r0, r6 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - movs r0, 0xD6 - lsls r0, 2 - adds r4, r0 - bl sub_8023F8C - adds r1, r0, 0 - adds r0, r4, 0 - mov r2, r10 - mov r3, r8 - bl sub_8013818 - ldr r0, _08023A84 - ldr r4, [r5] - ldr r1, [r0] - ldr r0, [r4] - cmp r1, r0 - bne _08023A64 - ldr r0, _08023A88 - ldrh r1, [r0] - movs r2, 0xDC - lsls r2, 2 - adds r0, r4, r2 - strh r1, [r0] - ldr r0, _08023A8C - ldrh r1, [r0] - ldr r3, _08023A90 - adds r0, r4, r3 - strh r1, [r0] - movs r1, 0xD6 - lsls r1, 2 - adds r0, r4, r1 - bl sub_8013984 -_08023A64: - bl sub_8023CF4 - bl sub_8023DA4 - movs r0, 0x1 -_08023A6E: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08023A7C: .4byte gUnknown_3001B60 -_08023A80: .4byte gUnknown_80DC968 -_08023A84: .4byte gUnknown_203B2A0 -_08023A88: .4byte gUnknown_203B2A8 -_08023A8C: .4byte gUnknown_203B2AA -_08023A90: .4byte 0x00000376 - thumb_func_end sub_8023868 - - thumb_func_start sub_8023A94 -sub_8023A94: - push {r4,lr} - lsls r0, 24 - cmp r0, 0 - bne _08023AB4 - ldr r0, _08023AB0 - ldr r0, [r0] - movs r1, 0xD6 - lsls r1, 2 - adds r0, r1 - bl sub_8013660 - movs r0, 0 - b _08023B3E - .align 2, 0 -_08023AB0: .4byte gUnknown_3001B60 -_08023AB4: - ldr r4, _08023AD0 - ldr r0, [r4] - movs r1, 0xD6 - lsls r1, 2 - adds r0, r1 - bl GetKeyPress - cmp r0, 0x2 - beq _08023ADE - cmp r0, 0x2 - bgt _08023AD4 - cmp r0, 0x1 - beq _08023AF2 - b _08023B16 - .align 2, 0 -_08023AD0: .4byte gUnknown_3001B60 -_08023AD4: - cmp r0, 0x3 - beq _08023AFC - cmp r0, 0x4 - beq _08023AE8 - b _08023B16 -_08023ADE: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _08023B3E -_08023AE8: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _08023B3E -_08023AF2: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _08023B3E -_08023AFC: - movs r0, 0x5 - bl sub_80119D4 - ldr r0, [r4] - ldr r1, [r0, 0x4] - movs r2, 0x1 - cmp r1, 0x2 - bhi _08023B0E - adds r2, r1, 0x1 -_08023B0E: - str r2, [r0, 0x4] - bl sub_8023F8C - b _08023B34 -_08023B16: - ldr r0, _08023B30 - ldr r0, [r0] - movs r1, 0xD6 - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _08023B34 - movs r0, 0 - b _08023B3E - .align 2, 0 -_08023B30: .4byte gUnknown_3001B60 -_08023B34: - bl sub_8023CF4 - bl sub_8023DA4 - movs r0, 0x1 -_08023B3E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8023A94 - - thumb_func_start sub_8023B44 -sub_8023B44: - ldr r0, _08023B74 - ldr r0, [r0] - ldr r2, _08023B78 - adds r1, r0, r2 - movs r3, 0 - ldrsh r2, [r1, r3] - movs r3, 0xDD - lsls r3, 2 - adds r1, r0, r3 - movs r3, 0 - ldrsh r1, [r1, r3] - muls r1, r2 - movs r3, 0xDC - lsls r3, 2 - adds r2, r0, r3 - movs r3, 0 - ldrsh r2, [r2, r3] - adds r1, r2 - lsls r1, 1 - adds r0, 0x1A - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_08023B74: .4byte gUnknown_3001B60 -_08023B78: .4byte 0x00000376 - thumb_func_end sub_8023B44 - - thumb_func_start sub_8023B7C -sub_8023B7C: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _08023BD0 - ldr r0, [r5] - movs r1, 0xE5 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - movs r2, 0 - bl sub_800641C - bl sub_8023BD8 - adds r2, r0, 0 - ldr r0, [r5] - ldr r3, _08023BD4 - adds r1, r0, r3 - strh r2, [r1] - movs r1, 0xD6 - lsls r1, 2 - adds r0, r1 - bl sub_8013984 - bl sub_8023CF4 - bl sub_8023DA4 - cmp r4, 0 - beq _08023BCA - ldr r0, [r5] - movs r3, 0xD6 - lsls r3, 2 - adds r0, r3 - bl AddMenuCursorSprite -_08023BCA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08023BD0: .4byte gUnknown_3001B60 -_08023BD4: .4byte 0x0000037a - thumb_func_end sub_8023B7C - - thumb_func_start sub_8023BD8 -sub_8023BD8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r3, 0 - ldr r1, _08023C58 - ldr r0, [r1] - ldr r0, [r0, 0x8] - adds r7, r1, 0 - cmp r3, r0 - bge _08023C4A - ldr r0, _08023C5C - mov r8, r0 - mov r12, r7 -_08023BF2: - ldr r2, [r1] - lsls r4, r3, 1 - adds r0, r2, 0 - adds r0, 0x1A - adds r0, r4 - movs r5, 0 - ldrsh r1, [r0, r5] - movs r0, 0x58 - muls r0, r1 - mov r5, r8 - ldr r1, [r5] - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - adds r6, r3, 0x1 - cmp r0, 0 - bne _08023C3E - ldr r0, [r2, 0x8] - subs r0, 0x1 - str r0, [r2, 0x8] - cmp r3, r0 - bge _08023C3E - mov r5, r12 - adds r4, 0x2 -_08023C24: - ldr r2, [r5] - lsls r1, r3, 1 - adds r0, r2, 0 - adds r0, 0x1A - adds r1, r0, r1 - adds r0, r4 - ldrh r0, [r0] - strh r0, [r1] - adds r4, 0x2 - adds r3, 0x1 - ldr r0, [r2, 0x8] - cmp r3, r0 - blt _08023C24 -_08023C3E: - adds r3, r6, 0 - adds r1, r7, 0 - ldr r0, [r7] - ldr r0, [r0, 0x8] - cmp r3, r0 - blt _08023BF2 -_08023C4A: - ldr r0, [r7] - ldr r0, [r0, 0x8] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08023C58: .4byte gUnknown_3001B60 -_08023C5C: .4byte gUnknown_203B45C - thumb_func_end sub_8023BD8 - - thumb_func_start sub_8023C60 -sub_8023C60: - push {r4-r6,lr} - ldr r5, _08023CCC - ldr r2, [r5] - cmp r2, 0 - beq _08023CC6 - ldr r1, _08023CD0 - ldr r0, [r2] - str r0, [r1] - ldr r1, _08023CD4 - ldr r0, [r2, 0x4] - str r0, [r1] - ldr r1, _08023CD8 - movs r3, 0xDC - lsls r3, 2 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, _08023CDC - ldr r6, _08023CE0 - adds r0, r2, r6 - ldrh r0, [r0] - strh r0, [r1] - movs r1, 0xE3 - lsls r1, 2 - adds r0, r2, r1 - ldr r0, [r0] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - movs r4, 0xE5 - lsls r4, 2 - adds r1, r4 - ldr r0, _08023CE4 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - bl sub_8004914 - ldr r0, [r5] - adds r0, r4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r5] - bl MemoryFree - movs r0, 0 - str r0, [r5] -_08023CC6: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08023CCC: .4byte gUnknown_3001B60 -_08023CD0: .4byte gUnknown_203B2A0 -_08023CD4: .4byte gUnknown_203B2A4 -_08023CD8: .4byte gUnknown_203B2A8 -_08023CDC: .4byte gUnknown_203B2AA -_08023CE0: .4byte 0x00000376 -_08023CE4: .4byte gUnknown_80DC950 - thumb_func_end sub_8023C60 - - thumb_func_start sub_8023CE8 -sub_8023CE8: - ldr r0, _08023CF0 - ldr r0, [r0] - bx lr - .align 2, 0 -_08023CF0: .4byte gUnknown_3001B60 - thumb_func_end sub_8023CE8 - - thumb_func_start sub_8023CF4 -sub_8023CF4: - push {r4,r5,lr} - ldr r2, _08023D28 - ldr r0, [r2] - movs r1, 0xFD - lsls r1, 2 - adds r0, r1 - movs r3, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r2] - ldr r1, _08023D2C - adds r0, r1 - strb r3, [r0] - ldr r0, [r2] - adds r1, 0x2 - adds r0, r1 - strb r3, [r0] - ldr r1, [r2] - ldr r0, [r1] - adds r5, r2, 0 - cmp r0, 0x2 - bne _08023D34 - ldr r0, _08023D30 - adds r1, r0 - b _08023D38 - .align 2, 0 -_08023D28: .4byte gUnknown_3001B60 -_08023D2C: .4byte 0x000003f5 -_08023D30: .4byte 0x000003f6 -_08023D34: - ldr r2, _08023D98 - adds r1, r2 -_08023D38: - movs r0, 0xC - strb r0, [r1] - ldr r0, [r5] - ldr r1, _08023D9C - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - ldr r3, [r5] - movs r1, 0xE3 - lsls r1, 2 - adds r4, r3, r1 - ldr r2, [r4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r1, r3, r1 - ldr r2, _08023DA0 - adds r1, r2 - lsls r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r2, [r4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r3, r1 - movs r1, 0xE9 - lsls r1, 2 - adds r3, r1 - strh r0, [r3] - bl sub_8004914 - ldr r0, [r5] - movs r2, 0xE5 - lsls r2, 2 - adds r0, r2 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08023D98: .4byte 0x000003f6 -_08023D9C: .4byte 0x00000372 -_08023DA0: .4byte 0x000003a2 - thumb_func_end sub_8023CF4 - - thumb_func_start sub_8023DA4 -sub_8023DA4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x58 - ldr r4, _08023DD8 - ldr r0, [r4] - movs r5, 0xE3 - lsls r5, 2 - adds r0, r5 - ldr r0, [r0] - bl sub_8008C54 - ldr r0, [r4] - adds r0, r5 - ldr r0, [r0] - bl sub_80073B8 - ldr r0, [r4] - ldr r1, [r0] - cmp r1, 0x2 - beq _08023DE0 - cmp r1, 0x4 - beq _08023E00 - ldr r2, _08023DDC - b _08023E02 - .align 2, 0 -_08023DD8: .4byte gUnknown_3001B60 -_08023DDC: .4byte gUnknown_80DC988 -_08023DE0: - add r0, sp, 0x8 - bl sub_80920D8 - ldr r0, [r4] - movs r1, 0xE3 - lsls r1, 2 - adds r0, r1 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - movs r1, 0 - add r2, sp, 0x8 - bl xxx_call_draw_string - b _08023E3C -_08023E00: - ldr r2, _08023EBC -_08023E02: - adds r0, r5 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r1, [r4] - ldr r2, _08023EC0 - adds r0, r1, r2 - ldrb r0, [r0] - lsls r0, 3 - adds r3, r0, 0x4 - ldr r4, _08023EC4 - adds r0, r1, r4 - movs r4, 0 - ldrsh r2, [r0, r4] - adds r2, 0x1 - movs r0, 0x7 - str r0, [sp] - adds r1, r5 - ldr r0, [r1] - str r0, [sp, 0x4] - adds r0, r3, 0 - movs r1, 0 - movs r3, 0x2 - bl sub_8012BC4 -_08023E3C: - movs r7, 0 - ldr r1, _08023EC8 - ldr r0, [r1] - ldr r2, _08023ECC - adds r0, r2 - movs r4, 0 - ldrsh r0, [r0, r4] - cmp r7, r0 - blt _08023E50 - b _08023F62 -_08023E50: - mov r8, r1 - add r0, sp, 0x30 - mov r9, r0 -_08023E56: - ldr r3, [r1] - ldr r1, _08023EC4 - adds r0, r3, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r4, 0xDD - lsls r4, 2 - adds r0, r3, r4 - movs r2, 0 - ldrsh r0, [r0, r2] - muls r1, r0 - adds r1, r7 - lsls r1, 1 - adds r0, r3, 0 - adds r0, 0x1A - adds r0, r1 - movs r4, 0 - ldrsh r5, [r0, r4] - ldr r2, _08023ED0 - movs r0, 0x58 - adds r1, r5, 0 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - movs r6, 0x7 - ldrh r0, [r4] - lsrs r0, 1 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08023ED4 - movs r0, 0 - ldrb r1, [r4, 0x4] - cmp r1, 0x41 - bne _08023E9E - movs r0, 0x1 -_08023E9E: - cmp r0, 0 - beq _08023EA4 - movs r6, 0x6 -_08023EA4: - movs r0, 0 - cmp r1, 0x40 - bne _08023EAC - movs r0, 0x1 -_08023EAC: - cmp r0, 0 - beq _08023EB2 - movs r6, 0x6 -_08023EB2: - ldrb r0, [r4, 0x2] - cmp r0, 0 - beq _08023EEA - movs r6, 0x5 - b _08023EEA - .align 2, 0 -_08023EBC: .4byte gUnknown_80DC980 -_08023EC0: .4byte 0x000003f6 -_08023EC4: .4byte 0x00000376 -_08023EC8: .4byte gUnknown_3001B60 -_08023ECC: .4byte 0x00000372 -_08023ED0: .4byte gUnknown_203B45C -_08023ED4: - ldrb r0, [r3, 0x18] - cmp r0, 0 - beq _08023EEA - adds r0, r5, 0 - bl sub_808D750 - lsls r0, 24 - movs r6, 0x2 - cmp r0, 0 - beq _08023EEA - movs r6, 0x4 -_08023EEA: - mov r0, r8 - ldr r1, [r0] - ldr r0, [r1] - cmp r0, 0x4 - bne _08023F02 - movs r2, 0xD5 - lsls r2, 2 - adds r0, r1, r2 - ldrb r1, [r0] - adds r0, r4, 0 - bl sub_8024184 -_08023F02: - adds r1, r4, 0 - adds r1, 0x4C - mov r0, r9 - movs r2, 0xA - bl sub_80922B4 - movs r0, 0x8 - ldrsh r1, [r4, r0] - add r0, sp, 0x44 - bl sub_808D930 - add r0, sp, 0x8 - ldr r1, _08023F80 - adds r2, r6, 0 - mov r3, r9 - bl sub_800D158 - mov r1, r8 - ldr r0, [r1] - movs r2, 0xD6 - lsls r2, 2 - adds r0, r2 - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - mov r4, r8 - ldr r0, [r4] - movs r2, 0xE3 - lsls r2, 2 - adds r0, r2 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - add r2, sp, 0x8 - bl xxx_call_draw_string - adds r7, 0x1 - mov r1, r8 - ldr r0, [r4] - ldr r4, _08023F84 - adds r0, r4 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r7, r0 - bge _08023F62 - b _08023E56 -_08023F62: - ldr r0, _08023F88 - ldr r0, [r0] - movs r4, 0xE3 - lsls r4, 2 - adds r0, r4 - ldr r0, [r0] - bl sub_80073E0 - add sp, 0x58 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08023F80: .4byte gUnknown_80DC998 -_08023F84: .4byte 0x00000372 -_08023F88: .4byte gUnknown_3001B60 - thumb_func_end sub_8023DA4 - - thumb_func_start sub_8023F8C -sub_8023F8C: - push {r4-r7,lr} - ldr r2, _08023FD0 - ldr r1, [r2] - movs r0, 0 - str r0, [r1, 0x8] - ldrb r0, [r1, 0x15] - adds r6, r2, 0 - cmp r0, 0 - bne _08023FE2 - movs r4, 0 - ldr r2, _08023FD4 -_08023FA2: - movs r0, 0x58 - adds r1, r4, 0 - muls r1, r0 - ldr r0, [r2] - adds r1, r0, r1 - ldrb r0, [r1, 0x2] - cmp r0, 0 - beq _08023FD8 - ldrb r1, [r1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08023FD8 - ldr r3, [r6] - ldr r1, [r3, 0x8] - lsls r2, r1, 1 - adds r0, r3, 0 - adds r0, 0x1A - adds r0, r2 - strh r4, [r0] - adds r1, 0x1 - str r1, [r3, 0x8] - b _08023FE2 - .align 2, 0 -_08023FD0: .4byte gUnknown_3001B60 -_08023FD4: .4byte gUnknown_203B45C -_08023FD8: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _08023FA2 -_08023FE2: - ldr r0, [r6] - ldrb r0, [r0, 0x16] - cmp r0, 0 - bne _08024042 - movs r4, 0 - ldr r3, _08024034 -_08023FEE: - movs r0, 0x58 - adds r1, r4, 0 - muls r1, r0 - ldr r0, [r3] - adds r1, r0, r1 - movs r2, 0 - ldrb r0, [r1, 0x4] - cmp r0, 0x41 - bne _08024002 - movs r2, 0x1 -_08024002: - cmp r2, 0 - beq _08024038 - ldrb r0, [r1, 0x2] - cmp r0, 0 - bne _08024038 - ldrh r1, [r1] - lsrs r0, r1, 1 - movs r2, 0x1 - ands r0, r2 - cmp r0, 0 - beq _08024038 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _08024038 - ldr r3, [r6] - ldr r1, [r3, 0x8] - lsls r2, r1, 1 - adds r0, r3, 0 - adds r0, 0x1A - adds r0, r2 - strh r4, [r0] - adds r1, 0x1 - str r1, [r3, 0x8] - b _08024042 - .align 2, 0 -_08024034: .4byte gUnknown_203B45C -_08024038: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _08023FEE -_08024042: - ldr r0, [r6] - ldr r1, [r0, 0x8] - str r1, [r0, 0xC] - ldrb r0, [r0, 0x17] - cmp r0, 0 - bne _080240A4 - movs r4, 0 - ldr r7, _08024100 - movs r5, 0x1 -_08024054: - movs r0, 0x58 - adds r1, r4, 0 - muls r1, r0 - ldr r0, [r7] - adds r1, r0, r1 - ldrh r2, [r1] - lsrs r0, r2, 1 - ands r0, r5 - cmp r0, 0 - beq _0802409A - adds r0, r5, 0 - ands r0, r2 - cmp r0, 0 - beq _0802409A - ldrb r0, [r1, 0x2] - cmp r0, 0 - bne _0802409A - movs r2, 0 - ldrb r0, [r1, 0x4] - cmp r0, 0x41 - bne _08024080 - movs r2, 0x1 -_08024080: - cmp r2, 0 - bne _0802409A - ldr r3, [r6] - ldr r1, [r3, 0x8] - lsls r2, r1, 1 - adds r0, r3, 0 - adds r0, 0x1A - adds r0, r2 - strh r4, [r0] - adds r1, 0x1 - str r1, [r3, 0x8] - cmp r1, 0x3 - bgt _080240A4 -_0802409A: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _08024054 -_080240A4: - ldr r0, [r6] - ldr r1, [r0, 0x8] - str r1, [r0, 0x10] - ldrb r0, [r0, 0x14] - cmp r0, 0 - bne _080240EE - movs r4, 0 - ldr r7, _08024100 - movs r5, 0x1 -_080240B6: - movs r0, 0x58 - adds r1, r4, 0 - muls r1, r0 - ldr r0, [r7] - adds r1, r0, r1 - ldrh r1, [r1] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _080240E4 - lsrs r0, r1, 1 - ands r0, r5 - cmp r0, 0 - bne _080240E4 - ldr r3, [r6] - ldr r1, [r3, 0x8] - lsls r2, r1, 1 - adds r0, r3, 0 - adds r0, 0x1A - adds r0, r2 - strh r4, [r0] - adds r1, 0x1 - str r1, [r3, 0x8] -_080240E4: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _080240B6 -_080240EE: - bl sub_80241A8 - ldr r0, _08024104 - ldr r0, [r0] - ldr r0, [r0, 0x8] - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08024100: .4byte gUnknown_203B45C -_08024104: .4byte gUnknown_3001B60 - thumb_func_end sub_8023F8C - - thumb_func_start sub_8024108 -sub_8024108: - push {r4-r7,lr} - adds r5, r0, 0 - movs r7, 0 - movs r6, 0x1 -_08024110: - ldr r2, _08024134 - movs r0, 0x58 - adds r1, r7, 0 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - ldrh r1, [r4] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08024172 - cmp r5, 0x2 - bne _08024138 - lsrs r0, r1, 1 - ands r0, r6 - cmp r0, 0 - beq _08024172 - b _0802416E - .align 2, 0 -_08024134: .4byte gUnknown_203B45C -_08024138: - cmp r5, 0x3 - bne _08024140 - lsrs r0, r1, 1 - b _08024168 -_08024140: - cmp r5, 0x4 - bne _0802416E - ldrb r0, [r4, 0x2] - cmp r0, 0 - bne _08024172 - movs r0, 0x9 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _0802416E - movs r1, 0 - ldrb r0, [r4, 0x4] - cmp r0, 0x41 - bne _08024160 - movs r1, 0x1 -_08024160: - cmp r1, 0 - beq _0802416E - ldrh r0, [r4] - lsrs r0, 1 -_08024168: - ands r0, r6 - cmp r0, 0 - bne _08024172 -_0802416E: - movs r0, 0 - b _0802417E -_08024172: - adds r7, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r7, r0 - ble _08024110 - movs r0, 0x1 -_0802417E: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8024108 - - thumb_func_start sub_8024184 -sub_8024184: - push {r4,lr} - lsls r4, r1, 24 - lsrs r4, 24 - movs r1, 0x8 - ldrsh r0, [r0, r1] - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - beq _0802419E - movs r0, 0 - b _080241A0 -_0802419E: - movs r0, 0x1 -_080241A0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8024184 - - thumb_func_start sub_80241A8 -sub_80241A8: - push {r4,lr} - ldr r4, _080241C0 - ldr r1, [r4] - ldr r0, [r1, 0x4] - cmp r0, 0x2 - beq _080241CA - cmp r0, 0x2 - bhi _080241C4 - cmp r0, 0x1 - beq _08024206 - b _08024222 - .align 2, 0 -_080241C0: .4byte gUnknown_3001B60 -_080241C4: - cmp r0, 0x3 - beq _080241E8 - b _08024222 -_080241CA: - ldr r0, [r1, 0xC] - ldr r1, [r1, 0x10] - cmp r0, r1 - beq _080241D6 - bl sub_80242D0 -_080241D6: - ldr r0, [r4] - ldr r2, [r0, 0x10] - ldr r1, [r0, 0x8] - cmp r2, r1 - beq _08024222 - adds r0, r2, 0 - bl sub_80242D0 - b _08024222 -_080241E8: - ldr r0, [r1, 0xC] - ldr r1, [r1, 0x10] - cmp r0, r1 - beq _080241F4 - bl sub_802437C -_080241F4: - ldr r0, [r4] - ldr r2, [r0, 0x10] - ldr r1, [r0, 0x8] - cmp r2, r1 - beq _08024222 - adds r0, r2, 0 - bl sub_802437C - b _08024222 -_08024206: - ldr r0, [r1, 0xC] - ldr r1, [r1, 0x10] - cmp r0, r1 - beq _08024212 - bl sub_8024228 -_08024212: - ldr r0, [r4] - ldr r2, [r0, 0x10] - ldr r1, [r0, 0x8] - cmp r2, r1 - beq _08024222 - adds r0, r2, 0 - bl sub_8024228 -_08024222: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80241A8 - - thumb_func_start sub_8024228 -sub_8024228: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - ldr r3, _080242C8 - lsls r2, r1, 1 - adds r2, 0x18 - ldr r3, [r3] - adds r3, r2 - str r3, [sp] - adds r2, r0, 0 - subs r1, 0x1 - cmp r2, r1 - bge _080242B8 - str r1, [sp, 0x4] -_0802424A: - ldr r5, [sp] - adds r7, r1, 0 - adds r0, r2, 0x1 - mov r10, r0 - cmp r7, r2 - ble _080242B0 - ldr r3, _080242CC - mov r9, r3 - movs r0, 0x58 - mov r8, r0 -_0802425E: - mov r3, r9 - ldr r1, [r3] - subs r6, r5, 0x2 - movs r3, 0 - ldrsh r0, [r6, r3] - mov r3, r8 - muls r3, r0 - adds r0, r3, 0 - adds r1, r0 - movs r3, 0x8 - ldrsh r0, [r1, r3] - str r2, [sp, 0x8] - bl sub_808DCFC - adds r4, r0, 0 - mov r0, r9 - ldr r1, [r0] - movs r3, 0 - ldrsh r0, [r5, r3] - mov r3, r8 - muls r3, r0 - adds r0, r3, 0 - adds r1, r0 - movs r3, 0x8 - ldrsh r0, [r1, r3] - bl sub_808DCFC - lsls r4, 16 - lsls r0, 16 - ldr r2, [sp, 0x8] - cmp r4, r0 - ble _080242A8 - movs r0, 0 - ldrsh r1, [r5, r0] - ldrh r0, [r6] - strh r0, [r5] - strh r1, [r6] -_080242A8: - adds r5, r6, 0 - subs r7, 0x1 - cmp r7, r2 - bgt _0802425E -_080242B0: - mov r2, r10 - ldr r1, [sp, 0x4] - cmp r2, r1 - blt _0802424A -_080242B8: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080242C8: .4byte gUnknown_3001B60 -_080242CC: .4byte gUnknown_203B45C - thumb_func_end sub_8024228 - - thumb_func_start sub_80242D0 -sub_80242D0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - ldr r3, _08024374 - lsls r2, r1, 1 - adds r2, 0x18 - ldr r3, [r3] - adds r3, r2 - str r3, [sp] - adds r2, r0, 0 - subs r1, 0x1 - cmp r2, r1 - bge _08024364 - str r1, [sp, 0x4] -_080242F2: - ldr r5, [sp] - adds r7, r1, 0 - adds r0, r2, 0x1 - mov r10, r0 - cmp r7, r2 - ble _0802435C - ldr r3, _08024378 - mov r9, r3 - movs r0, 0x58 - mov r8, r0 -_08024306: - mov r3, r9 - ldr r1, [r3] - subs r6, r5, 0x2 - movs r3, 0 - ldrsh r0, [r6, r3] - mov r3, r8 - muls r3, r0 - adds r0, r3, 0 - adds r1, r0 - movs r3, 0x8 - ldrsh r0, [r1, r3] - movs r1, 0 - str r2, [sp, 0x8] - bl sub_808DCDC - adds r4, r0, 0 - mov r0, r9 - ldr r1, [r0] - movs r3, 0 - ldrsh r0, [r5, r3] - mov r3, r8 - muls r3, r0 - adds r0, r3, 0 - adds r1, r0 - movs r3, 0x8 - ldrsh r0, [r1, r3] - movs r1, 0 - bl sub_808DCDC - lsls r4, 16 - lsls r0, 16 - ldr r2, [sp, 0x8] - cmp r4, r0 - ble _08024354 - movs r0, 0 - ldrsh r1, [r5, r0] - ldrh r0, [r6] - strh r0, [r5] - strh r1, [r6] -_08024354: - adds r5, r6, 0 - subs r7, 0x1 - cmp r7, r2 - bgt _08024306 -_0802435C: - mov r2, r10 - ldr r1, [sp, 0x4] - cmp r2, r1 - blt _080242F2 -_08024364: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08024374: .4byte gUnknown_3001B60 -_08024378: .4byte gUnknown_203B45C - thumb_func_end sub_80242D0 - - thumb_func_start sub_802437C -sub_802437C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r3, _080243E4 - lsls r2, r1, 1 - adds r2, 0x18 - ldr r3, [r3] - adds r3, r2 - mov r10, r3 - adds r7, r0, 0 - subs r1, 0x1 - cmp r7, r1 - bge _080243D6 - mov r9, r1 -_0802439C: - mov r4, r10 - adds r6, r1, 0 - adds r0, r7, 0x1 - mov r8, r0 - cmp r6, r7 - ble _080243CE -_080243A8: - subs r5, r4, 0x2 - movs r1, 0 - ldrsh r0, [r5, r1] - movs r2, 0 - ldrsh r1, [r4, r2] - bl sub_808D864 - lsls r0, 24 - cmp r0, 0 - beq _080243C6 - movs r0, 0 - ldrsh r1, [r4, r0] - ldrh r0, [r5] - strh r0, [r4] - strh r1, [r5] -_080243C6: - adds r4, r5, 0 - subs r6, 0x1 - cmp r6, r7 - bgt _080243A8 -_080243CE: - mov r7, r8 - mov r1, r9 - cmp r7, r1 - blt _0802439C -_080243D6: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080243E4: .4byte gUnknown_3001B60 - thumb_func_end sub_802437C - - thumb_func_start sub_80243E8 -sub_80243E8: - push {r4,r5,lr} - sub sp, 0x3C - ldr r3, _08024448 - ldr r0, _0802444C - ldr r0, [r0] - ldr r2, _08024450 - adds r1, r0, r2 - movs r4, 0 - ldrsh r2, [r1, r4] - movs r4, 0xDD - lsls r4, 2 - adds r1, r0, r4 - movs r4, 0 - ldrsh r1, [r1, r4] - muls r1, r2 - movs r4, 0xDC - lsls r4, 2 - adds r2, r0, r4 - movs r4, 0 - ldrsh r2, [r2, r4] - adds r1, r2 - lsls r1, 1 - adds r0, 0x1A - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0x58 - muls r0, r1 - ldr r4, [r3] - adds r4, r0 - add r5, sp, 0x28 - adds r1, r4, 0 - adds r1, 0x4C - adds r0, r5, 0 - movs r2, 0xA - bl sub_80922B4 - ldr r1, _08024454 - mov r0, sp - adds r2, r5, 0 - bl sub_800D158 - adds r0, r4, 0 - add sp, 0x3C - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08024448: .4byte gUnknown_203B45C -_0802444C: .4byte gUnknown_3001B60 -_08024450: .4byte 0x00000376 -_08024454: .4byte gUnknown_80DC9A4 - thumb_func_end sub_80243E8 - - thumb_func_start sub_8024458 -sub_8024458: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r4, 16 - asrs r4, 16 - ldr r6, _080244DC - movs r0, 0xA6 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r6] - adds r1, r0, 0 - adds r1, 0x48 - strh r4, [r1] - adds r1, 0x98 - str r5, [r1] - adds r2, r0, 0 - adds r2, 0xE4 - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 3 - adds r1, 0xE8 - adds r1, r0, r1 - str r1, [r2] - adds r0, 0xE8 - bl sub_8006518 - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0xE0 - ldr r2, [r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0xE8 - ldr r0, _080244E0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r2, [r6] - adds r0, r2, 0 - adds r0, 0xE4 - ldr r1, [r0] - movs r3, 0xA4 - lsls r3, 1 - adds r0, r2, r3 - str r0, [r1, 0x14] - movs r4, 0xA5 - lsls r4, 1 - adds r1, r2, r4 - movs r0, 0xA - strb r0, [r1] - bl sub_8024604 - bl sub_802452C - ldr r0, [r6] - bl sub_8013984 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080244DC: .4byte gUnknown_203B2AC -_080244E0: .4byte gUnknown_80DC9C8 - thumb_func_end sub_8024458 - - thumb_func_start sub_80244E4 -sub_80244E4: - push {r4,lr} - ldr r4, _08024500 - ldr r0, [r4] - bl GetKeyPress - cmp r0, 0x1 - beq _08024504 - cmp r0, 0x2 - bne _0802450E - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _08024524 - .align 2, 0 -_08024500: .4byte gUnknown_203B2AC -_08024504: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _08024524 -_0802450E: - ldr r0, [r4] - bl sub_8013938 - lsls r0, 24 - cmp r0, 0 - bne _0802451E - movs r0, 0 - b _08024524 -_0802451E: - bl sub_802452C - movs r0, 0x1 -_08024524: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80244E4 - - thumb_func_start sub_802452C -sub_802452C: - push {lr} - bl sub_8024588 - bl sub_80245D0 - pop {r0} - bx r0 - thumb_func_end sub_802452C - - thumb_func_start sub_802453C -sub_802453C: - push {r4,r5,lr} - ldr r4, _08024580 - ldr r2, [r4] - cmp r2, 0 - beq _0802457A - adds r0, r2, 0 - adds r0, 0xE0 - ldr r0, [r0] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0xE8 - ldr r0, _08024584 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0xE8 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802457A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08024580: .4byte gUnknown_203B2AC -_08024584: .4byte gUnknown_80DC9B0 - thumb_func_end sub_802453C - - thumb_func_start sub_8024588 -sub_8024588: - push {r4,lr} - ldr r4, _080245C4 - ldr r0, [r4] - ldrh r1, [r0, 0x20] - movs r2, 0xA4 - lsls r2, 1 - adds r0, r2 - movs r2, 0 - strb r1, [r0] - ldr r0, [r4] - ldrh r1, [r0, 0x1E] - ldr r3, _080245C8 - adds r0, r3 - strb r1, [r0] - ldr r0, [r4] - ldr r1, _080245CC - adds r0, r1 - strb r2, [r0] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0xE8 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080245C4: .4byte gUnknown_203B2AC -_080245C8: .4byte 0x00000149 -_080245CC: .4byte 0x0000014b - thumb_func_end sub_8024588 - - thumb_func_start sub_80245D0 -sub_80245D0: - push {r4,lr} - sub sp, 0x4 - ldr r0, _08024600 - ldr r4, [r0] - movs r0, 0x1E - ldrsh r1, [r4, r0] - lsls r2, r1, 2 - adds r0, r4, 0 - adds r0, 0x34 - adds r0, r2 - ldr r0, [r0] - adds r2, r4, 0 - adds r2, 0x4C - adds r3, r4, 0 - adds r3, 0xB0 - adds r4, 0xE0 - ldr r4, [r4] - str r4, [sp] - bl sub_808F844 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08024600: .4byte gUnknown_203B2AC - thumb_func_end sub_80245D0 - - thumb_func_start sub_8024604 -sub_8024604: - push {r4,r5,lr} - ldr r4, _08024654 - ldr r0, [r4] - movs r1, 0x2 - str r1, [r0, 0x34] - movs r1, 0x3 - str r1, [r0, 0x38] - movs r1, 0x5 - str r1, [r0, 0x3C] - adds r1, r0, 0 - adds r1, 0xE0 - ldr r3, [r1] - movs r1, 0x3 - movs r2, 0x1 - bl sub_8013818 - ldr r0, [r4] - adds r5, r0, 0 - adds r5, 0x4C - ldr r2, _08024658 - adds r0, 0x48 - movs r3, 0 - ldrsh r1, [r0, r3] - movs r0, 0x58 - muls r0, r1 - ldr r4, [r2] - adds r4, r0 - movs r0, 0x7 - bl sub_80023E4 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_808FF20 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08024654: .4byte gUnknown_203B2AC -_08024658: .4byte gUnknown_203B45C - thumb_func_end sub_8024604 - - thumb_func_start sub_802465C -sub_802465C: - push {r4,r5,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _080246E8 - movs r0, 0xBA - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r4, 0 - str r4, [r0, 0x28] - str r4, [r0, 0x2C] - str r4, [r0, 0x30] - bl sub_808D33C - ldr r1, [r5] - str r0, [r1, 0xC] - bl sub_808D824 - ldr r1, [r5] - strb r0, [r1, 0x10] - ldr r0, [r5] - strb r4, [r0] - ldr r0, _080246EC - bl sub_808DDD0 - ldr r2, [r5] - movs r3, 0x82 - lsls r3, 1 - adds r1, r2, r3 - str r0, [r1] - adds r3, 0x4 - adds r1, r2, r3 - ldr r0, [r0, 0x4] - str r0, [r1] - movs r1, 0x88 - lsls r1, 1 - adds r0, r2, r1 - strb r4, [r0] - ldr r0, [r5] - adds r3, 0x9 - adds r0, r3 - strb r4, [r0] - ldr r0, [r5] - adds r1, 0x2 - adds r0, r1 - strb r4, [r0] - ldr r2, [r5] - subs r3, 0x5 - adds r1, r2, r3 - movs r0, 0x2 - strh r0, [r1] - movs r0, 0x87 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x8 - strh r0, [r1] - movs r0, 0 - bl sub_80247EC - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080246E8: .4byte gUnknown_203B2B0 -_080246EC: .4byte 0x00000155 - thumb_func_end sub_802465C - - thumb_func_start sub_80246F0 -sub_80246F0: - push {lr} - ldr r0, _08024708 - ldr r0, [r0] - ldr r0, [r0, 0x20] - cmp r0, 0x15 - bhi _080247A8 - lsls r0, 2 - ldr r1, _0802470C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08024708: .4byte gUnknown_203B2B0 -_0802470C: .4byte _08024710 - .align 2, 0 -_08024710: - .4byte _08024768 - .4byte _08024768 - .4byte _080247A8 - .4byte _080247A8 - .4byte _080247A4 - .4byte _0802476E - .4byte _08024774 - .4byte _08024774 - .4byte _0802477A - .4byte _08024780 - .4byte _08024786 - .4byte _0802478C - .4byte _0802478C - .4byte _08024792 - .4byte _08024798 - .4byte _080247A8 - .4byte _080247A8 - .4byte _080247A8 - .4byte _080247A8 - .4byte _080247A8 - .4byte _080247A8 - .4byte _0802479E -_08024768: - bl sub_8024E9C - b _080247AC -_0802476E: - bl sub_8024F00 - b _080247AC -_08024774: - bl sub_8024FD4 - b _080247AC -_0802477A: - bl sub_80250EC - b _080247AC -_08024780: - bl sub_80251CC - b _080247AC -_08024786: - bl sub_8024F70 - b _080247AC -_0802478C: - bl sub_8025058 - b _080247AC -_08024792: - bl sub_802515C - b _080247AC -_08024798: - bl sub_80251E8 - b _080247AC -_0802479E: - bl sub_8025204 - b _080247AC -_080247A4: - movs r0, 0x3 - b _080247AE -_080247A8: - bl sub_8025230 -_080247AC: - movs r0, 0 -_080247AE: - pop {r1} - bx r1 - thumb_func_end sub_80246F0 - - thumb_func_start sub_80247B4 -sub_80247B4: - ldr r0, _080247BC - ldr r0, [r0] - ldrb r0, [r0] - bx lr - .align 2, 0 -_080247BC: .4byte gUnknown_203B2B0 - thumb_func_end sub_80247B4 - - thumb_func_start sub_80247C0 -sub_80247C0: - push {r4,lr} - ldr r4, _080247E8 - ldr r0, [r4] - cmp r0, 0 - beq _080247E0 - movs r1, 0x82 - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080247E0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080247E8: .4byte gUnknown_203B2B0 - thumb_func_end sub_80247C0 - - thumb_func_start sub_80247EC -sub_80247EC: - push {lr} - ldr r1, _08024800 - ldr r1, [r1] - str r0, [r1, 0x20] - bl sub_8024804 - bl sub_80248FC - pop {r0} - bx r0 - .align 2, 0 -_08024800: .4byte gUnknown_203B2B0 - thumb_func_end sub_80247EC - - thumb_func_start sub_8024804 -sub_8024804: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _0802482C - ldr r0, [r4] - movs r1, 0x8A - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0, 0x20] - subs r0, 0x8 - cmp r0, 0x14 - bhi _080248A8 - lsls r0, 2 - ldr r1, _08024830 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802482C: .4byte gUnknown_203B2B0 -_08024830: .4byte _08024834 - .align 2, 0 -_08024834: - .4byte _08024888 - .4byte _080248A8 - .4byte _080248A8 - .4byte _080248A8 - .4byte _080248A8 - .4byte _08024888 - .4byte _080248A8 - .4byte _080248A8 - .4byte _080248A8 - .4byte _080248D2 - .4byte _080248D2 - .4byte _080248D2 - .4byte _080248A8 - .4byte _080248A8 - .4byte _080248D2 - .4byte _080248D2 - .4byte _080248D2 - .4byte _080248D2 - .4byte _080248D2 - .4byte _080248D2 - .4byte _080248D2 -_08024888: - ldr r0, _080248A0 - ldr r1, [r0] - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r0, _080248A4 - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - b _080248D2 - .align 2, 0 -_080248A0: .4byte gUnknown_203B2B0 -_080248A4: .4byte gUnknown_80DCA00 -_080248A8: - ldr r3, _080248F4 - mov r12, r3 - movs r4, 0x8A - lsls r4, 1 - mov r8, r4 - ldr r4, _080248F8 - movs r3, 0 - movs r2, 0x3 -_080248B8: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - add r1, r8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _080248B8 -_080248D2: - bl sub_8004914 - ldr r0, _080248F4 - ldr r0, [r0] - movs r6, 0x8A - lsls r6, 1 - adds r0, r6 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080248F4: .4byte gUnknown_203B2B0 -_080248F8: .4byte gUnknown_80DC9E8 - thumb_func_end sub_8024804 - - thumb_func_start sub_80248FC -sub_80248FC: - push {r4,r5,lr} - sub sp, 0x14 - ldr r1, _08024918 - ldr r0, [r1] - ldr r0, [r0, 0x20] - adds r5, r1, 0 - cmp r0, 0x1D - bls _0802490E - b _08024CF4 -_0802490E: - lsls r0, 2 - ldr r1, _0802491C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08024918: .4byte gUnknown_203B2B0 -_0802491C: .4byte _08024920 - .align 2, 0 -_08024920: - .4byte _08024998 - .4byte _080249D0 - .4byte _080249E8 - .4byte _080249F8 - .4byte _08024CF4 - .4byte _08024A14 - .4byte _08024A20 - .4byte _08024A2E - .4byte _08024A94 - .4byte _08024AC0 - .4byte _08024A36 - .4byte _08024A68 - .4byte _08024A76 - .4byte _08024A94 - .4byte _08024AC0 - .4byte _08024ACA - .4byte _08024AD8 - .4byte _08024AE8 - .4byte _08024B4C - .4byte _08024B74 - .4byte _08024C9C - .4byte _08024CC8 - .4byte _08024C1C - .4byte _08024C2C - .4byte _08024C3C - .4byte _08024C4C - .4byte _08024C5C - .4byte _08024C6C - .4byte _08024C7C - .4byte _08024C8C -_08024998: - bl sub_80252B8 - lsls r0, 24 - cmp r0, 0 - beq _080249B0 - ldr r0, _080249AC - ldr r1, [r0] - movs r0, 0x3 - b _080249B6 - .align 2, 0 -_080249AC: .4byte gUnknown_203B2B0 -_080249B0: - ldr r0, _080249C8 - ldr r1, [r0] - movs r0, 0x1 -_080249B6: - str r0, [r1, 0x28] - bl sub_8024CFC - ldr r0, _080249CC - ldr r1, _080249C8 - ldr r1, [r1] - ldr r2, [r1, 0x28] - b _08024A42 - .align 2, 0 -_080249C8: .4byte gUnknown_203B2B0 -_080249CC: .4byte gUnknown_80DCA34 -_080249D0: - bl sub_8024CFC - ldr r0, _080249E0 - ldr r1, _080249E4 - ldr r1, [r1] - ldr r2, [r1, 0x28] - b _08024A42 - .align 2, 0 -_080249E0: .4byte gUnknown_80DCAB8 -_080249E4: .4byte gUnknown_203B2B0 -_080249E8: - ldr r1, [r5] - movs r0, 0x1 - str r0, [r1, 0x24] - ldr r0, _080249F4 - b _08024CAE - .align 2, 0 -_080249F4: .4byte gUnknown_80DCAD0 -_080249F8: - ldr r1, [r5] - movs r0, 0x4 - str r0, [r1, 0x24] - movs r0, 0x8 - movs r1, 0x3C - bl sub_8011900 - ldr r0, _08024A0C - ldr r3, _08024A10 - b _08024CB0 - .align 2, 0 -_08024A0C: .4byte gUnknown_80DCD5C -_08024A10: .4byte 0x00000305 -_08024A14: - bl sub_8024D48 - ldr r0, _08024A1C - b _08024A3C - .align 2, 0 -_08024A1C: .4byte gUnknown_80DCD90 -_08024A20: - movs r0, 0x2 - movs r1, 0x3 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - b _08024CF4 -_08024A2E: - movs r0, 0x1 - bl sub_801A8D0 - b _08024CF4 -_08024A36: - bl sub_8024DBC - ldr r0, _08024A60 -_08024A3C: - ldr r1, _08024A64 - ldr r1, [r1] - ldr r2, [r1, 0x2C] -_08024A42: - adds r3, r1, 0 - adds r3, 0x34 - adds r1, 0x74 - str r1, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - str r1, [sp, 0xC] - movs r1, 0x5 - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _08024CF4 - .align 2, 0 -_08024A60: .4byte gUnknown_80DCDB8 -_08024A64: .4byte gUnknown_203B2B0 -_08024A68: - movs r0, 0x2 - movs r1, 0x3 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - b _08024A7C -_08024A76: - movs r0, 0x1 - bl sub_801A8D0 -_08024A7C: - ldr r0, _08024A90 - ldr r0, [r0] - ldr r0, [r0, 0x14] - movs r1, 0x1 - bl sub_801AEE4 - bl sub_801A9E0 - b _08024CF4 - .align 2, 0 -_08024A90: .4byte gUnknown_203B2B0 -_08024A94: - bl sub_801A9E0 - bl sub_8024E30 - ldr r0, _08024ABC - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x84 - adds r1, r2, 0 - adds r1, 0x34 - adds r3, r2, 0 - adds r3, 0x74 - ldr r2, [r2, 0x30] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _08024CF4 - .align 2, 0 -_08024ABC: .4byte gUnknown_203B2B0 -_08024AC0: - ldr r0, [r5] - adds r0, 0x1C - bl sub_801B3C0 - b _08024CF4 -_08024ACA: - ldr r1, [r5] - movs r0, 0x5 - str r0, [r1, 0x24] - ldr r0, _08024AD4 - b _08024CAE - .align 2, 0 -_08024AD4: .4byte gUnknown_80DCDDC -_08024AD8: - ldr r1, [r5] - movs r0, 0xA - str r0, [r1, 0x24] - ldr r0, _08024AE4 - b _08024CAE - .align 2, 0 -_08024AE4: .4byte gUnknown_80DCE18 -_08024AE8: - bl sub_8025254 - ldr r0, _08024B00 - ldr r1, [r0] - ldrh r2, [r1, 0x8] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _08024B04 - movs r0, 0x12 - b _08024B3A - .align 2, 0 -_08024B00: .4byte gUnknown_203B2B0 -_08024B04: - lsls r0, r2, 16 - lsrs r0, 16 - cmp r0, 0x4 - bne _08024B10 - movs r0, 0x18 - b _08024B3A -_08024B10: - cmp r0, 0x2 - bne _08024B18 - movs r0, 0x17 - b _08024B3A -_08024B18: - cmp r0, 0x10 - bne _08024B20 - movs r0, 0x1B - b _08024B3A -_08024B20: - cmp r0, 0x20 - bne _08024B28 - movs r0, 0x19 - b _08024B3A -_08024B28: - cmp r0, 0x40 - bne _08024B30 - movs r0, 0x1A - b _08024B3A -_08024B30: - cmp r0, 0x8 - bne _08024B38 - movs r0, 0x1C - b _08024B3A -_08024B38: - movs r0, 0x1D -_08024B3A: - str r0, [r1, 0x24] - movs r0, 0x3C - bl sub_8011930 - ldr r0, _08024B48 - b _08024CAE - .align 2, 0 -_08024B48: .4byte gUnknown_80DCE38 -_08024B4C: - ldr r0, _08024B68 - ldr r1, [r5] - ldr r1, [r1, 0xC] - movs r2, 0x5 - bl sub_808D9AC - ldr r0, _08024B6C - bl sub_8011988 - ldr r1, [r5] - movs r0, 0x13 - str r0, [r1, 0x24] - ldr r0, _08024B70 - b _08024CAE - .align 2, 0 -_08024B68: .4byte gUnknown_202E2B8 -_08024B6C: .4byte 0x000001ff -_08024B70: .4byte gUnknown_80DCE68 -_08024B74: - ldr r0, [r5] - ldr r0, [r0, 0xC] - movs r1, 0x8 - ldrsh r0, [r0, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r4, _08024C10 - adds r0, r4, 0 - bl strcpy - ldr r0, [r5] - movs r2, 0xA - ldrsh r0, [r0, r2] - bl sub_808D994 - adds r1, r0, 0 - adds r4, 0x50 - adds r0, r4, 0 - bl strcpy - ldr r1, [r5] - movs r0, 0x1 - strb r0, [r1] - bl sub_80977D0 - ldr r1, [r5] - ldr r0, [r1, 0xC] - movs r2, 0xA - ldrsh r1, [r1, r2] - bl sub_808F734 - bl nullsub_104 - bl sub_808D33C - ldr r1, [r5] - str r0, [r1, 0xC] - ldr r0, [r1, 0x14] - cmp r0, 0x14 - beq _08024BCA - bl sub_8091234 -_08024BCA: - ldr r0, [r5] - ldr r0, [r0, 0x18] - cmp r0, 0x14 - beq _08024BD6 - bl sub_8091234 -_08024BD6: - bl sub_80910B4 - ldr r0, _08024C14 - bl sub_801199C - movs r0, 0xD2 - bl sub_8011988 - ldr r1, [r5] - ldrb r0, [r1, 0x10] - cmp r0, 0 - beq _08024C06 - ldr r0, [r1, 0xC] - adds r4, r0, 0 - adds r4, 0x4C - movs r1, 0x8 - ldrsh r0, [r0, r1] - bl sub_808D994 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0xA - bl sub_8092310 -_08024C06: - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1, 0x24] - ldr r0, _08024C18 - b _08024CAE - .align 2, 0 -_08024C10: .4byte gUnknown_202DF98 -_08024C14: .4byte 0x000001ff -_08024C18: .4byte gUnknown_80DCEB0 -_08024C1C: - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1, 0x24] - ldr r0, _08024C28 - b _08024CAE - .align 2, 0 -_08024C28: .4byte gUnknown_80DCEDC -_08024C2C: - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1, 0x24] - ldr r0, _08024C38 - b _08024CAE - .align 2, 0 -_08024C38: .4byte gUnknown_80DCF44 -_08024C3C: - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1, 0x24] - ldr r0, _08024C48 - b _08024CAE - .align 2, 0 -_08024C48: .4byte gUnknown_80DCF88 -_08024C4C: - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1, 0x24] - ldr r0, _08024C58 - b _08024CAE - .align 2, 0 -_08024C58: .4byte gUnknown_80DCFAC -_08024C5C: - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1, 0x24] - ldr r0, _08024C68 - b _08024CAE - .align 2, 0 -_08024C68: .4byte gUnknown_80DCFF4 -_08024C6C: - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1, 0x24] - ldr r0, _08024C78 - b _08024CAE - .align 2, 0 -_08024C78: .4byte gUnknown_80DD054 -_08024C7C: - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1, 0x24] - ldr r0, _08024C88 - b _08024CAE - .align 2, 0 -_08024C88: .4byte gUnknown_80DD098 -_08024C8C: - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1, 0x24] - ldr r0, _08024C98 - b _08024CAE - .align 2, 0 -_08024C98: .4byte gUnknown_80DD0E0 -_08024C9C: - movs r0, 0x8 - movs r1, 0x3C - bl sub_8011900 - ldr r0, _08024CBC - ldr r1, [r0] - movs r0, 0x15 - str r0, [r1, 0x24] - ldr r0, _08024CC0 -_08024CAE: - ldr r3, _08024CC4 -_08024CB0: - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _08024CF4 - .align 2, 0 -_08024CBC: .4byte gUnknown_203B2B0 -_08024CC0: .4byte gUnknown_80DD104 -_08024CC4: .4byte 0x00000105 -_08024CC8: - ldr r1, [r5] - ldrb r0, [r1, 0x10] - cmp r0, 0 - beq _08024CE8 - ldr r0, [r1, 0xC] - adds r4, r0, 0 - adds r4, 0x4C - movs r2, 0x8 - ldrsh r0, [r0, r2] - bl sub_808D994 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0xA - bl sub_8092310 -_08024CE8: - ldr r0, [r5] - ldr r1, [r0, 0xC] - adds r1, 0x4C - movs r0, 0 - bl sub_801602C -_08024CF4: - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80248FC - - thumb_func_start sub_8024CFC -sub_8024CFC: - push {r4,lr} - ldr r4, _08024D38 - ldr r0, [r4] - adds r0, 0x74 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - movs r3, 0 - ldr r0, _08024D3C - str r0, [r1, 0x34] - movs r0, 0x3 - str r0, [r1, 0x38] - movs r2, 0x1 - ldr r0, _08024D40 - ldr r0, [r0] - str r0, [r1, 0x3C] - movs r0, 0x2 - str r0, [r1, 0x40] - ldr r0, _08024D44 - ldr r0, [r0] - str r0, [r1, 0x44] - str r2, [r1, 0x48] - str r3, [r1, 0x4C] - str r2, [r1, 0x50] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08024D38: .4byte gUnknown_203B2B0 -_08024D3C: .4byte gUnknown_80DCA18 -_08024D40: .4byte gUnknown_80D4970 -_08024D44: .4byte gUnknown_80D4934 - thumb_func_end sub_8024CFC - - thumb_func_start sub_8024D48 -sub_8024D48: - push {r4-r7,lr} - ldr r4, _08024DAC - ldr r0, [r4] - adds r0, 0x74 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _08024DB0 - str r0, [r3, 0x34] - movs r0, 0x4 - str r0, [r3, 0x38] - movs r1, 0x1 - ldr r0, _08024DB4 - str r0, [r3, 0x3C] - movs r0, 0x5 - str r0, [r3, 0x40] - ldr r0, _08024DB8 - ldr r0, [r0] - str r0, [r3, 0x44] - str r1, [r3, 0x48] - movs r6, 0x3 - str r2, [r3, 0x4C] - str r1, [r3, 0x50] - movs r5, 0 - mov r12, r3 - adds r3, 0x38 - mov r2, r12 - adds r2, 0x74 -_08024D86: - ldrh r0, [r2] - cmp r0, 0 - bne _08024D96 - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x2C] - cmp r1, r0 - beq _08024DA6 -_08024D96: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _08024D86 - ldr r1, [r4] - movs r0, 0x4 - str r0, [r1, 0x2C] -_08024DA6: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08024DAC: .4byte gUnknown_203B2B0 -_08024DB0: .4byte gUnknown_80DCA24 -_08024DB4: .4byte gUnknown_80DCA2C -_08024DB8: .4byte gUnknown_80D4934 - thumb_func_end sub_8024D48 - - thumb_func_start sub_8024DBC -sub_8024DBC: - push {r4-r7,lr} - ldr r4, _08024E20 - ldr r0, [r4] - adds r0, 0x74 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _08024E24 - str r0, [r3, 0x34] - movs r0, 0x4 - str r0, [r3, 0x38] - movs r1, 0x1 - ldr r0, _08024E28 - str r0, [r3, 0x3C] - movs r0, 0x5 - str r0, [r3, 0x40] - ldr r0, _08024E2C - ldr r0, [r0] - str r0, [r3, 0x44] - str r1, [r3, 0x48] - movs r6, 0x3 - str r2, [r3, 0x4C] - str r1, [r3, 0x50] - movs r5, 0 - mov r12, r3 - adds r3, 0x38 - mov r2, r12 - adds r2, 0x74 -_08024DFA: - ldrh r0, [r2] - cmp r0, 0 - bne _08024E0A - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x2C] - cmp r1, r0 - beq _08024E1A -_08024E0A: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _08024DFA - ldr r1, [r4] - movs r0, 0x4 - str r0, [r1, 0x2C] -_08024E1A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08024E20: .4byte gUnknown_203B2B0 -_08024E24: .4byte gUnknown_80DCA24 -_08024E28: .4byte gUnknown_80DCA2C -_08024E2C: .4byte gUnknown_80D4934 - thumb_func_end sub_8024DBC - - thumb_func_start sub_8024E30 -sub_8024E30: - push {r4-r7,lr} - ldr r4, _08024E90 - ldr r0, [r4] - adds r0, 0x74 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r3, [r4] - movs r2, 0 - ldr r0, _08024E94 - str r0, [r3, 0x34] - movs r0, 0x5 - str r0, [r3, 0x38] - movs r1, 0x1 - ldr r0, _08024E98 - ldr r0, [r0] - str r0, [r3, 0x3C] - movs r0, 0x2 - str r0, [r3, 0x40] - movs r6, 0x2 - str r2, [r3, 0x44] - str r1, [r3, 0x48] - movs r5, 0 - mov r12, r3 - adds r3, 0x38 - mov r2, r12 - adds r2, 0x74 -_08024E68: - ldrh r0, [r2] - cmp r0, 0 - bne _08024E78 - ldr r1, [r3] - mov r7, r12 - ldr r0, [r7, 0x30] - cmp r1, r0 - beq _08024E88 -_08024E78: - adds r3, 0x8 - adds r2, 0x2 - adds r5, 0x1 - cmp r5, r6 - blt _08024E68 - ldr r1, [r4] - movs r0, 0x5 - str r0, [r1, 0x30] -_08024E88: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08024E90: .4byte gUnknown_203B2B0 -_08024E94: .4byte gUnknown_80DCA2C -_08024E98: .4byte gUnknown_80D4970 - thumb_func_end sub_8024E30 - - thumb_func_start sub_8024E9C -sub_8024E9C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08024EF8 - ldr r1, [sp] - cmp r1, 0x1 - beq _08024EB6 - ldr r0, _08024EC8 - ldr r0, [r0] - str r1, [r0, 0x28] -_08024EB6: - ldr r0, [sp] - cmp r0, 0x2 - beq _08024EEA - cmp r0, 0x2 - bgt _08024ECC - cmp r0, 0x1 - beq _08024EF2 - b _08024EF8 - .align 2, 0 -_08024EC8: .4byte gUnknown_203B2B0 -_08024ECC: - cmp r0, 0x3 - bne _08024EF8 - bl sub_80252B8 - lsls r0, 24 - cmp r0, 0 - beq _08024EE2 - movs r0, 0x5 - bl sub_80247EC - b _08024EF8 -_08024EE2: - movs r0, 0x16 - bl sub_80247EC - b _08024EF8 -_08024EEA: - movs r0, 0x2 - bl sub_80247EC - b _08024EF8 -_08024EF2: - movs r0, 0x3 - bl sub_80247EC -_08024EF8: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8024E9C - - thumb_func_start sub_8024F00 -sub_8024F00: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08024F6A - ldr r1, [sp] - cmp r1, 0x1 - beq _08024F1A - ldr r0, _08024F2C - ldr r0, [r0] - str r1, [r0, 0x2C] -_08024F1A: - ldr r0, [sp] - cmp r0, 0x4 - beq _08024F36 - cmp r0, 0x4 - bgt _08024F30 - cmp r0, 0x1 - beq _08024F64 - b _08024F6A - .align 2, 0 -_08024F2C: .4byte gUnknown_203B2B0 -_08024F30: - cmp r0, 0x5 - beq _08024F4C - b _08024F6A -_08024F36: - ldr r0, _08024F48 - ldr r1, [r0] - movs r0, 0x14 - str r0, [r1, 0x14] - str r0, [r1, 0x18] - movs r0, 0x11 - bl sub_80247EC - b _08024F6A - .align 2, 0 -_08024F48: .4byte gUnknown_203B2B0 -_08024F4C: - bl sub_8090A34 - cmp r0, 0 - bne _08024F5C - movs r0, 0xF - bl sub_80247EC - b _08024F6A -_08024F5C: - movs r0, 0x6 - bl sub_80247EC - b _08024F6A -_08024F64: - movs r0, 0x1 - bl sub_80247EC -_08024F6A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8024F00 - - thumb_func_start sub_8024F70 -sub_8024F70: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08024FCC - ldr r1, [sp] - cmp r1, 0x1 - beq _08024F8A - ldr r0, _08024F9C - ldr r0, [r0] - str r1, [r0, 0x2C] -_08024F8A: - ldr r0, [sp] - cmp r0, 0x4 - beq _08024FA6 - cmp r0, 0x4 - bgt _08024FA0 - cmp r0, 0x1 - beq _08024FC6 - b _08024FCC - .align 2, 0 -_08024F9C: .4byte gUnknown_203B2B0 -_08024FA0: - cmp r0, 0x5 - beq _08024FAE - b _08024FCC -_08024FA6: - movs r0, 0x11 - bl sub_80247EC - b _08024FCC -_08024FAE: - bl sub_8090A34 - cmp r0, 0x1 - bgt _08024FBE - movs r0, 0x10 - bl sub_80247EC - b _08024FCC -_08024FBE: - movs r0, 0xB - bl sub_80247EC - b _08024FCC -_08024FC6: - movs r0, 0x1 - bl sub_80247EC -_08024FCC: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8024F70 - - thumb_func_start sub_8024FD4 -sub_8024FD4: - push {lr} - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x3 - beq _08024FF0 - cmp r0, 0x3 - bhi _08024FEA - cmp r0, 0x2 - beq _08025048 - b _08025052 -_08024FEA: - cmp r0, 0x4 - beq _0802501C - b _08025052 -_08024FF0: - bl sub_801A8AC - ldr r1, _08025014 - ldr r2, [r1] - str r0, [r2, 0x14] - movs r1, 0x14 - str r1, [r2, 0x18] - ldr r1, _08025018 - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x1C] - movs r0, 0x8 - bl sub_80247EC - b _08025052 - .align 2, 0 -_08025014: .4byte gUnknown_203B2B0 -_08025018: .4byte gUnknown_203B460 -_0802501C: - bl sub_801A8AC - ldr r1, _08025040 - ldr r2, [r1] - ldr r1, _08025044 - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x1C] - movs r0, 0 - bl sub_8099690 - movs r0, 0x9 - bl sub_80247EC - b _08025052 - .align 2, 0 -_08025040: .4byte gUnknown_203B2B0 -_08025044: .4byte gUnknown_203B460 -_08025048: - bl sub_801A928 - movs r0, 0x5 - bl sub_80247EC -_08025052: - pop {r0} - bx r0 - thumb_func_end sub_8024FD4 - - thumb_func_start sub_8025058 -sub_8025058: - push {r4,r5,lr} - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x3 - beq _08025074 - cmp r0, 0x3 - bhi _0802506E - cmp r0, 0x2 - beq _080250DC - b _080250E6 -_0802506E: - cmp r0, 0x4 - beq _080250B0 - b _080250E6 -_08025074: - ldr r5, _080250A0 - ldr r4, [r5] - bl sub_801A8AC - ldr r1, [r4, 0x14] - cmp r1, r0 - beq _080250A8 - bl sub_801A8AC - ldr r2, [r5] - str r0, [r2, 0x18] - ldr r1, _080250A4 - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x1C] - movs r0, 0xD - bl sub_80247EC - b _080250E6 - .align 2, 0 -_080250A0: .4byte gUnknown_203B2B0 -_080250A4: .4byte gUnknown_203B460 -_080250A8: - movs r0, 0x2 - bl sub_80119D4 - b _080250E6 -_080250B0: - bl sub_801A8AC - ldr r1, _080250D4 - ldr r2, [r1] - ldr r1, _080250D8 - ldr r1, [r1] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x1C] - movs r0, 0 - bl sub_8099690 - movs r0, 0xE - bl sub_80247EC - b _080250E6 - .align 2, 0 -_080250D4: .4byte gUnknown_203B2B0 -_080250D8: .4byte gUnknown_203B460 -_080250DC: - bl sub_801A928 - movs r0, 0xA - bl sub_80247EC -_080250E6: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8025058 - - thumb_func_start sub_80250EC -sub_80250EC: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801A6E8 - ldr r4, _0802512C - ldr r0, [r4] - adds r0, 0x84 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802511C - ldr r0, [r4] - adds r0, 0x84 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _0802511C - ldr r0, [r4] - str r1, [r0, 0x30] -_0802511C: - ldr r0, [sp] - cmp r0, 0x2 - beq _08025140 - cmp r0, 0x2 - bgt _08025130 - cmp r0, 0x1 - beq _0802514E - b _08025154 - .align 2, 0 -_0802512C: .4byte gUnknown_203B2B0 -_08025130: - cmp r0, 0x5 - bne _08025154 - bl sub_801A928 - movs r0, 0xA - bl sub_80247EC - b _08025154 -_08025140: - movs r0, 0 - bl sub_8099690 - movs r0, 0x9 - bl sub_80247EC - b _08025154 -_0802514E: - movs r0, 0x7 - bl sub_80247EC -_08025154: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80250EC - - thumb_func_start sub_802515C -sub_802515C: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801A6E8 - ldr r4, _0802519C - ldr r0, [r4] - adds r0, 0x84 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802518C - ldr r0, [r4] - adds r0, 0x84 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _0802518C - ldr r0, [r4] - str r1, [r0, 0x30] -_0802518C: - ldr r0, [sp] - cmp r0, 0x2 - beq _080251B0 - cmp r0, 0x2 - bgt _080251A0 - cmp r0, 0x1 - beq _080251BE - b _080251C4 - .align 2, 0 -_0802519C: .4byte gUnknown_203B2B0 -_080251A0: - cmp r0, 0x5 - bne _080251C4 - bl sub_801A928 - movs r0, 0x11 - bl sub_80247EC - b _080251C4 -_080251B0: - movs r0, 0 - bl sub_8099690 - movs r0, 0xE - bl sub_80247EC - b _080251C4 -_080251BE: - movs r0, 0xC - bl sub_80247EC -_080251C4: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802515C - - thumb_func_start sub_80251CC -sub_80251CC: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _080251E4 - cmp r0, 0x3 - bhi _080251E4 - bl sub_801B450 - movs r0, 0x7 - bl sub_80247EC -_080251E4: - pop {r0} - bx r0 - thumb_func_end sub_80251CC - - thumb_func_start sub_80251E8 -sub_80251E8: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _08025200 - cmp r0, 0x3 - bhi _08025200 - bl sub_801B450 - movs r0, 0xC - bl sub_80247EC -_08025200: - pop {r0} - bx r0 - thumb_func_end sub_80251E8 - - thumb_func_start sub_8025204 -sub_8025204: - push {r4,lr} - bl sub_8016080 - cmp r0, 0x3 - bne _08025226 - bl sub_80160D8 - ldr r4, _0802522C - ldr r0, [r4] - ldr r0, [r0, 0xC] - bl sub_808D824 - ldr r1, [r4] - strb r0, [r1, 0x10] - movs r0, 0x3 - bl sub_80247EC -_08025226: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802522C: .4byte gUnknown_203B2B0 - thumb_func_end sub_8025204 - - thumb_func_start sub_8025230 -sub_8025230: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08025248 - ldr r0, _08025250 - ldr r0, [r0] - ldr r0, [r0, 0x24] - bl sub_80247EC -_08025248: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08025250: .4byte gUnknown_203B2B0 - thumb_func_end sub_8025230 - - thumb_func_start sub_8025254 -sub_8025254: - push {lr} - ldr r0, _08025268 - ldr r2, [r0] - ldr r1, [r2, 0x14] - adds r3, r0, 0 - cmp r1, 0x14 - bne _0802526C - movs r0, 0 - b _08025276 - .align 2, 0 -_08025268: .4byte gUnknown_203B2B0 -_0802526C: - ldr r0, _08025284 - ldr r0, [r0] - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0, 0x2] -_08025276: - strb r0, [r2, 0x4] - ldr r2, [r3] - ldr r1, [r2, 0x18] - cmp r1, 0x14 - bne _08025288 - movs r0, 0 - b _08025292 - .align 2, 0 -_08025284: .4byte gUnknown_203B460 -_08025288: - ldr r0, _080252B0 - ldr r0, [r0] - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0, 0x2] -_08025292: - strb r0, [r2, 0x5] - movs r0, 0xFF - bl RandomCapped - ldr r2, _080252B4 - ldr r1, [r2] - strb r0, [r1, 0x6] - ldr r1, [r2] - ldr r0, [r1, 0xC] - adds r1, 0x4 - movs r2, 0x1 - bl sub_808F468 - pop {r0} - bx r0 - .align 2, 0 -_080252B0: .4byte gUnknown_203B460 -_080252B4: .4byte gUnknown_203B2B0 - thumb_func_end sub_8025254 - - thumb_func_start sub_80252B8 -sub_80252B8: - push {r4,lr} - ldr r0, _080252E0 - ldr r1, [r0] - movs r3, 0 - movs r4, 0x1 - ldr r2, _080252E4 -_080252C4: - ldrh r0, [r1] - lsrs r0, 1 - ands r0, r4 - cmp r0, 0 - beq _080252D0 - adds r3, 0x1 -_080252D0: - subs r2, 0x1 - adds r1, 0x58 - cmp r2, 0 - bne _080252C4 - cmp r3, 0x1 - beq _080252E8 - movs r0, 0 - b _080252EA - .align 2, 0 -_080252E0: .4byte gUnknown_203B45C -_080252E4: .4byte 0x0000019d -_080252E8: - movs r0, 0x1 -_080252EA: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80252B8 - - thumb_func_start sub_80252F0 -sub_80252F0: - push {r4-r6,lr} - adds r6, r0, 0 - cmp r6, 0x2 - bne _08025308 - movs r0, 0x4 - bl sub_8024108 - lsls r0, 24 - cmp r0, 0 - beq _08025308 - movs r0, 0 - b _0802534C -_08025308: - ldr r4, _08025340 - movs r0, 0xBC - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r5, 0 - str r5, [r0, 0x70] - str r6, [r0] - bl sub_80A5728 - lsls r0, 16 - asrs r0, 16 - bl sub_8002658 - ldr r1, [r4] - strb r0, [r1, 0xC] - ldr r0, [r4] - strb r5, [r0, 0xD] - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0x2 - bne _08025344 - movs r0, 0 - bl sub_8025434 - b _0802534A - .align 2, 0 -_08025340: .4byte gUnknown_203B2B4 -_08025344: - movs r0, 0x1 - bl sub_8025434 -_0802534A: - movs r0, 0x1 -_0802534C: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80252F0 - - thumb_func_start sub_8025354 -sub_8025354: - push {lr} - ldr r0, _0802536C - ldr r0, [r0] - ldr r0, [r0, 0x4] - subs r0, 0x1 - cmp r0, 0x12 - bhi _08025400 - lsls r0, 2 - ldr r1, _08025370 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802536C: .4byte gUnknown_203B2B4 -_08025370: .4byte _08025374 - .align 2, 0 -_08025374: - .4byte _080253C4 - .4byte _080253C4 - .4byte _080253CA - .4byte _080253D0 - .4byte _080253D6 - .4byte _08025400 - .4byte _08025400 - .4byte _08025400 - .4byte _08025400 - .4byte _08025400 - .4byte _080253DC - .4byte _080253DC - .4byte _080253E2 - .4byte _080253E8 - .4byte _080253EE - .4byte _080253EE - .4byte _080253F4 - .4byte _080253FA - .4byte _080253C0 -_080253C0: - movs r0, 0x3 - b _08025406 -_080253C4: - bl sub_80259F0 - b _08025404 -_080253CA: - bl sub_8025A84 - b _08025404 -_080253D0: - bl sub_8025BCC - b _08025404 -_080253D6: - bl sub_8025BE8 - b _08025404 -_080253DC: - bl sub_8025C04 - b _08025404 -_080253E2: - bl sub_8025CB4 - b _08025404 -_080253E8: - bl sub_8025D90 - b _08025404 -_080253EE: - bl sub_8025DAC - b _08025404 -_080253F4: - bl sub_8025E08 - b _08025404 -_080253FA: - bl sub_8025E24 - b _08025404 -_08025400: - bl sub_8025E44 -_08025404: - movs r0, 0 -_08025406: - pop {r1} - bx r1 - thumb_func_end sub_8025354 - - thumb_func_start sub_802540C -sub_802540C: - ldr r0, _08025414 - ldr r0, [r0] - ldrb r0, [r0, 0xD] - bx lr - .align 2, 0 -_08025414: .4byte gUnknown_203B2B4 - thumb_func_end sub_802540C - - thumb_func_start sub_8025418 -sub_8025418: - push {r4,lr} - ldr r4, _08025430 - ldr r0, [r4] - cmp r0, 0 - beq _0802542A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802542A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08025430: .4byte gUnknown_203B2B4 - thumb_func_end sub_8025418 - - thumb_func_start sub_8025434 -sub_8025434: - push {lr} - ldr r1, _08025448 - ldr r1, [r1] - str r0, [r1, 0x4] - bl sub_802544C - bl sub_8025518 - pop {r0} - bx r0 - .align 2, 0 -_08025448: .4byte gUnknown_203B2B4 - thumb_func_end sub_8025434 - - thumb_func_start sub_802544C -sub_802544C: - push {r4-r7,lr} - ldr r4, _08025470 - ldr r0, [r4] - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - ldr r1, [r4] - ldr r0, [r1, 0x4] - cmp r0, 0x3 - beq _08025478 - cmp r0, 0xD - beq _080254B0 - movs r2, 0 - ldr r3, _08025474 - b _080254D8 - .align 2, 0 -_08025470: .4byte gUnknown_203B2B4 -_08025474: .4byte gUnknown_80DD148 -_08025478: - ldr r0, [r1] - cmp r0, 0 - bne _0802548E - movs r2, 0xB0 - lsls r2, 1 - adds r1, r2 - ldr r0, _080254A8 - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} -_0802548E: - bl sub_8025728 - ldr r2, [r4] - movs r0, 0xA4 - lsls r0, 1 - adds r2, r0 - ldr r1, _080254AC - ldm r1!, {r5-r7} - stm r2!, {r5-r7} - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - b _080254C6 - .align 2, 0 -_080254A8: .4byte gUnknown_80DD190 -_080254AC: .4byte gUnknown_80DD160 -_080254B0: - bl sub_802591C - ldr r2, [r4] - movs r0, 0xA4 - lsls r0, 1 - adds r2, r0 - ldr r1, _080254D4 - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldm r1!, {r3,r6,r7} - stm r2!, {r3,r6,r7} -_080254C6: - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0xC8 - bl sub_8012CAC - b _080254F8 - .align 2, 0 -_080254D4: .4byte gUnknown_80DD178 -_080254D8: - ldr r0, [r4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r0, r1 - movs r5, 0x8C - lsls r5, 1 - adds r0, r5 - adds r1, r3, 0 - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - adds r2, 0x1 - cmp r2, 0x3 - ble _080254D8 -_080254F8: - bl sub_8004914 - ldr r0, _08025514 - ldr r0, [r0] - movs r6, 0x8C - lsls r6, 1 - adds r0, r6 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08025514: .4byte gUnknown_203B2B4 - thumb_func_end sub_802544C - - thumb_func_start sub_8025518 -sub_8025518: - push {r4,r5,lr} - sub sp, 0xC - ldr r1, _08025534 - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r5, r1, 0 - cmp r0, 0x13 - bls _0802552A - b _08025720 -_0802552A: - lsls r0, 2 - ldr r1, _08025538 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08025534: .4byte gUnknown_203B2B4 -_08025538: .4byte _0802553C - .align 2, 0 -_0802553C: - .4byte _0802558C - .4byte _080255A0 - .4byte _080255BA - .4byte _080255C2 - .4byte _0802560C - .4byte _0802561A - .4byte _08025720 - .4byte _080256A8 - .4byte _0802567A - .4byte _08025688 - .4byte _08025698 - .4byte _08025626 - .4byte _08025634 - .4byte _0802563C - .4byte _08025668 - .4byte _080256CC - .4byte _080256F2 - .4byte _080256FC - .4byte _08025714 - .4byte _08025720 -_0802558C: - ldr r1, [r5] - movs r0, 0x1 - str r0, [r1, 0x8] - ldr r0, _08025598 - ldr r3, _0802559C - b _080256B8 - .align 2, 0 -_08025598: .4byte gUnknown_80DD1A8 -_0802559C: .4byte 0x00000301 -_080255A0: - movs r1, 0x4 - ldr r0, [r5] - ldr r0, [r0] - cmp r0, 0 - bne _080255AC - movs r1, 0x2 -_080255AC: - adds r0, r1, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0xA - bl sub_8023868 - b _08025720 -_080255BA: - movs r0, 0x1 - bl sub_8023B7C - b _08025720 -_080255C2: - ldr r1, [r5] - ldr r0, [r1] - cmp r0, 0 - bne _080255D2 - adds r1, 0x18 - movs r0, 0x3 - bl sub_8025E68 -_080255D2: - bl sub_8023DA4 - ldr r4, _08025608 - ldr r0, [r5] - ldr r1, [r0, 0x1C] - adds r0, r4, 0 - movs r2, 0x7 - bl sub_808D9AC - adds r4, 0x50 - ldr r0, [r5] - ldr r1, [r0, 0x1C] - adds r0, r4, 0 - movs r2, 0x6 - bl sub_808D9AC - ldr r2, [r5] - adds r0, r2, 0 - adds r0, 0x78 - adds r1, r2, 0 - adds r1, 0xC8 - movs r4, 0x84 - lsls r4, 1 - adds r3, r2, r4 - ldr r2, [r2, 0x70] - b _08025654 - .align 2, 0 -_08025608: .4byte gUnknown_202DF98 -_0802560C: - ldr r0, [r5] - movs r1, 0xE - ldrsh r0, [r0, r1] - movs r1, 0x2 - bl sub_8024458 - b _08025720 -_0802561A: - ldr r0, [r5] - movs r4, 0xE - ldrsh r0, [r0, r4] - bl sub_801BEEC - b _08025720 -_08025626: - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - b _08025720 -_08025634: - movs r0, 0x1 - bl sub_801A8D0 - b _08025720 -_0802563C: - bl sub_801A9E0 - ldr r0, _08025664 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x78 - adds r1, r2, 0 - adds r1, 0xC8 - movs r4, 0x84 - lsls r4, 1 - adds r3, r2, r4 - ldr r2, [r2, 0x74] -_08025654: - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _08025720 - .align 2, 0 -_08025664: .4byte gUnknown_203B2B4 -_08025668: - ldr r1, [r5] - adds r1, 0x14 - add r0, sp, 0x8 - bl sub_8090B64 - add r0, sp, 0x8 - bl sub_801B3C0 - b _08025720 -_0802567A: - ldr r1, [r5] - movs r0, 0x2 - str r0, [r1, 0x8] - ldr r0, _08025684 - b _080256B6 - .align 2, 0 -_08025684: .4byte gUnknown_80DD1C8 -_08025688: - ldr r1, [r5] - movs r0, 0x2 - str r0, [r1, 0x8] - ldr r0, _08025694 - b _080256B6 - .align 2, 0 -_08025694: .4byte gUnknown_80DD1EC -_08025698: - ldr r1, [r5] - movs r0, 0x2 - str r0, [r1, 0x8] - ldr r0, _080256A4 - b _080256B6 - .align 2, 0 -_080256A4: .4byte gUnknown_80DD240 -_080256A8: - ldr r1, [r5] - movs r0, 0x1 - str r0, [r1, 0x8] - movs r0, 0xCF - bl sub_8011988 - ldr r0, _080256C4 -_080256B6: - ldr r3, _080256C8 -_080256B8: - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _08025720 - .align 2, 0 -_080256C4: .4byte gUnknown_80DD270 -_080256C8: .4byte 0x00000101 -_080256CC: - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x28 - ldr r1, [r1, 0x1C] - adds r1, 0x2C - bl sub_809401C - ldr r2, [r5] - movs r0, 0xE - ldrsh r1, [r2, r0] - adds r2, 0x28 - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - movs r0, 0x3 - movs r3, 0 - bl sub_801EE10 - b _08025720 -_080256F2: - movs r0, 0x1 - movs r1, 0 - bl sub_801F1B0 - b _08025720 -_080256FC: - ldr r2, [r5] - ldr r0, [r2, 0x20] - adds r1, r2, 0 - adds r1, 0x28 - adds r2, 0x68 - bl sub_8093560 - ldr r0, [r5] - adds r0, 0x68 - bl sub_801F808 - b _08025720 -_08025714: - ldr r0, [r5] - ldr r1, [r0, 0x1C] - adds r1, 0x4C - movs r0, 0x2 - bl sub_801602C -_08025720: - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8025518 - - thumb_func_start sub_8025728 -sub_8025728: - push {r4-r7,lr} - ldr r3, _080257CC - ldr r5, _080257D0 - ldr r0, [r5] - movs r1, 0xE - ldrsh r2, [r0, r1] - movs r1, 0x58 - muls r2, r1 - ldr r1, [r3] - adds r7, r1, r2 - movs r2, 0x84 - lsls r2, 1 - adds r0, r2 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r4, [r5] - ldr r0, [r4] - cmp r0, 0 - bne _080257E0 - adds r1, r4, 0 - adds r1, 0xC8 - ldr r0, _080257D4 - str r0, [r1] - adds r1, 0x4 - movs r0, 0xA - str r0, [r1] - bl sub_8090A34 - cmp r0, 0 - bne _08025774 - ldr r0, [r5] - movs r4, 0x84 - lsls r4, 1 - adds r0, r4 - movs r1, 0x1 - strh r1, [r0] -_08025774: - movs r6, 0x1 - ldr r1, [r5] - adds r2, r1, 0 - adds r2, 0xD0 - ldr r0, _080257D8 - str r0, [r2] - adds r1, 0xD4 - movs r0, 0xB - str r0, [r1] - bl sub_8090A34 - cmp r0, 0x13 - bgt _08025796 - ldr r0, [r5] - ldrb r0, [r0, 0x18] - cmp r0, 0 - bne _080257A0 -_08025796: - ldr r0, [r5] - movs r1, 0x85 - lsls r1, 1 - adds r0, r1 - strh r6, [r0] -_080257A0: - adds r6, 0x1 - adds r0, r7, 0 - bl sub_8025EC4 - lsls r0, 24 - cmp r0, 0 - beq _08025810 - ldr r0, _080257D0 - ldr r2, [r0] - lsls r3, r6, 3 - adds r0, r2, 0 - adds r0, 0xC8 - adds r0, r3 - ldr r1, _080257DC - str r1, [r0] - adds r2, 0xCC - adds r2, r3 - movs r0, 0x9 - str r0, [r2] - adds r6, 0x1 - b _08025810 - .align 2, 0 -_080257CC: .4byte gUnknown_203B45C -_080257D0: .4byte gUnknown_203B2B4 -_080257D4: .4byte gUnknown_80DD2B0 -_080257D8: .4byte gUnknown_80DD2B8 -_080257DC: .4byte gUnknown_80DD2C0 -_080257E0: - adds r1, r4, 0 - adds r1, 0xC8 - ldr r0, _080258D4 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x7 - str r0, [r1] - ldr r0, [r4, 0x1C] - movs r2, 0x8 - ldrsh r0, [r0, r2] - bl sub_808DBA8 - ldrb r1, [r4, 0xC] - lsls r0, 24 - lsrs r0, 24 - cmp r1, r0 - bne _0802580E - ldr r0, [r5] - movs r4, 0x84 - lsls r4, 1 - adds r0, r4 - movs r1, 0x1 - strh r1, [r0] -_0802580E: - movs r6, 0x1 -_08025810: - movs r0, 0x8 - ldrsh r1, [r7, r0] - ldr r0, _080258D8 - cmp r1, r0 - bne _08025840 - adds r0, r7, 0 - bl sub_808D824 - lsls r0, 24 - cmp r0, 0 - beq _08025840 - ldr r0, _080258DC - ldr r2, [r0] - lsls r3, r6, 3 - adds r0, r2, 0 - adds r0, 0xC8 - adds r0, r3 - ldr r1, _080258E0 - str r1, [r0] - adds r2, 0xCC - adds r2, r3 - movs r0, 0x8 - str r0, [r2] - adds r6, 0x1 -_08025840: - ldr r4, _080258DC - ldr r5, [r4] - lsls r1, r6, 3 - adds r3, r5, 0 - adds r3, 0xC8 - adds r2, r3, r1 - ldr r0, _080258E4 - str r0, [r2] - adds r7, r5, 0 - adds r7, 0xCC - adds r1, r7, r1 - movs r0, 0x4 - str r0, [r1] - adds r6, 0x1 - lsls r1, r6, 3 - adds r2, r3, r1 - ldr r0, _080258E8 - str r0, [r2] - adds r1, r7, r1 - movs r0, 0x6 - str r0, [r1] - adds r6, 0x1 - lsls r1, r6, 3 - adds r2, r3, r1 - ldr r0, _080258EC - str r0, [r2] - adds r1, r7, r1 - movs r0, 0x5 - str r0, [r1] - adds r6, 0x1 - lsls r1, r6, 3 - adds r3, r1 - movs r0, 0 - str r0, [r3] - adds r1, r7, r1 - movs r0, 0x1 - str r0, [r1] - movs r3, 0 - mov r12, r4 - cmp r3, r6 - bge _080258B2 - movs r1, 0x84 - lsls r1, 1 - adds r4, r5, r1 - adds r2, r7, 0 -_0802589A: - ldrh r0, [r4] - cmp r0, 0 - bne _080258A8 - ldr r1, [r2] - ldr r0, [r5, 0x70] - cmp r1, r0 - beq _08025916 -_080258A8: - adds r4, 0x2 - adds r2, 0x8 - adds r3, 0x1 - cmp r3, r6 - blt _0802589A -_080258B2: - movs r3, 0 - cmp r3, r6 - bge _08025916 - mov r2, r12 - ldr r1, [r2] - movs r4, 0x84 - lsls r4, 1 - adds r0, r1, r4 - ldrh r0, [r0] - cmp r0, 0 - bne _080258F0 - adds r0, r1, 0 - adds r0, 0xCC - ldr r0, [r0] - str r0, [r1, 0x70] - b _08025916 - .align 2, 0 -_080258D4: .4byte gUnknown_80DD2CC -_080258D8: .4byte 0x0000013d -_080258DC: .4byte gUnknown_203B2B4 -_080258E0: .4byte gUnknown_80DD2D4 -_080258E4: .4byte gUnknown_80DD2DC -_080258E8: .4byte gUnknown_80DD2E4 -_080258EC: .4byte gUnknown_80DD2EC -_080258F0: - adds r3, 0x1 - cmp r3, r6 - bge _08025916 - mov r0, r12 - ldr r2, [r0] - lsls r0, r3, 1 - movs r4, 0x84 - lsls r4, 1 - adds r1, r2, r4 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _080258F0 - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0xCC - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x70] -_08025916: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8025728 - - thumb_func_start sub_802591C -sub_802591C: - push {r4-r7,lr} - ldr r5, _080259B8 - ldr r0, [r5] - movs r7, 0x84 - lsls r7, 1 - adds r0, r7 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r5] - adds r2, r1, 0 - adds r2, 0xC8 - ldr r0, _080259BC - str r0, [r2] - adds r1, 0xCC - movs r0, 0xA - str r0, [r1] - bl sub_8090A34 - cmp r0, 0 - bne _08025952 - ldr r0, [r5] - adds r1, r7, 0 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] -_08025952: - ldr r4, [r5] - movs r2, 0x1 - adds r1, r4, 0 - adds r1, 0xD0 - ldr r0, _080259C0 - ldr r0, [r0] - str r0, [r1] - adds r1, 0x4 - movs r0, 0x4 - str r0, [r1] - movs r6, 0x2 - adds r1, 0x4 - movs r0, 0 - str r0, [r1] - adds r0, r4, 0 - adds r0, 0xDC - str r2, [r0] - movs r3, 0 - mov r12, r4 - adds r4, r7 - mov r2, r12 - adds r2, 0xCC -_0802597E: - ldrh r0, [r4] - cmp r0, 0 - bne _0802598E - ldr r1, [r2] - mov r7, r12 - ldr r0, [r7, 0x74] - cmp r1, r0 - beq _080259E8 -_0802598E: - adds r4, 0x2 - adds r2, 0x8 - adds r3, 0x1 - cmp r3, r6 - blt _0802597E - movs r3, 0 - cmp r3, r6 - bge _080259E8 - ldr r1, [r5] - movs r2, 0x84 - lsls r2, 1 - adds r0, r1, r2 - ldrh r0, [r0] - cmp r0, 0 - bne _080259C4 - adds r0, r1, 0 - adds r0, 0xCC - ldr r0, [r0] - str r0, [r1, 0x74] - b _080259E8 - .align 2, 0 -_080259B8: .4byte gUnknown_203B2B4 -_080259BC: .4byte gUnknown_80DD2B0 -_080259C0: .4byte gUnknown_80D4970 -_080259C4: - adds r3, 0x1 - cmp r3, r6 - bge _080259E8 - ldr r2, [r5] - lsls r0, r3, 1 - movs r4, 0x84 - lsls r4, 1 - adds r1, r2, r4 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _080259C4 - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0xCC - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x74] -_080259E8: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_802591C - - thumb_func_start sub_80259F0 -sub_80259F0: - push {lr} - movs r0, 0x1 - bl sub_8023A94 - cmp r0, 0x3 - beq _08025A0C - cmp r0, 0x3 - bhi _08025A06 - cmp r0, 0x2 - beq _08025A74 - b _08025A7E -_08025A06: - cmp r0, 0x4 - beq _08025A40 - b _08025A7E -_08025A0C: - bl sub_8023B44 - ldr r1, _08025A38 - ldr r1, [r1] - strh r0, [r1, 0xE] - ldr r3, _08025A3C - movs r0, 0xE - ldrsh r2, [r1, r0] - movs r0, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - str r0, [r1, 0x1C] - movs r2, 0xE - ldrsh r0, [r1, r2] - adds r1, 0x18 - bl sub_808D7DC - movs r0, 0x3 - bl sub_8025434 - b _08025A7E - .align 2, 0 -_08025A38: .4byte gUnknown_203B2B4 -_08025A3C: .4byte gUnknown_203B45C -_08025A40: - bl sub_8023B44 - ldr r1, _08025A6C - ldr r1, [r1] - strh r0, [r1, 0xE] - ldr r3, _08025A70 - movs r0, 0xE - ldrsh r2, [r1, r0] - movs r0, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - str r0, [r1, 0x1C] - movs r2, 0xE - ldrsh r0, [r1, r2] - adds r1, 0x18 - bl sub_808D7DC - movs r0, 0x4 - bl sub_8025434 - b _08025A7E - .align 2, 0 -_08025A6C: .4byte gUnknown_203B2B4 -_08025A70: .4byte gUnknown_203B45C -_08025A74: - bl sub_8023C60 - movs r0, 0x13 - bl sub_8025434 -_08025A7E: - pop {r0} - bx r0 - thumb_func_end sub_80259F0 - - thumb_func_start sub_8025A84 -sub_8025A84: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_8023A94 - ldr r4, _08025AC8 - ldr r0, [r4] - adds r0, 0x78 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08025AB4 - ldr r0, [r4] - adds r0, 0x78 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08025AB4 - ldr r0, [r4] - str r1, [r0, 0x70] -_08025AB4: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0xA - bls _08025ABE - b _08025BC2 -_08025ABE: - lsls r0, 2 - ldr r1, _08025ACC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08025AC8: .4byte gUnknown_203B2B4 -_08025ACC: .4byte _08025AD0 - .align 2, 0 -_08025AD0: - .4byte _08025BBC - .4byte _08025BC2 - .4byte _08025BC2 - .4byte _08025BAC - .4byte _08025BB4 - .4byte _08025B9C - .4byte _08025AFC - .4byte _08025BA4 - .4byte _08025B70 - .4byte _08025B20 - .4byte _08025B28 -_08025AFC: - ldr r4, _08025B1C - ldr r0, [r4] - ldr r0, [r0, 0x1C] - movs r1, 0x8 - ldrsh r0, [r0, r1] - bl sub_808DBA8 - ldr r1, [r4] - strb r0, [r1, 0xD] - bl sub_8023C60 - movs r0, 0x13 - bl sub_8025434 - b _08025BC2 - .align 2, 0 -_08025B1C: .4byte gUnknown_203B2B4 -_08025B20: - movs r0, 0xB - bl sub_8025434 - b _08025BC2 -_08025B28: - ldr r0, _08025B68 - bl sub_8011988 - ldr r4, _08025B6C - ldr r1, [r4] - ldrb r0, [r1, 0x18] - cmp r0, 0 - beq _08025B40 - adds r0, r1, 0 - adds r0, 0x18 - bl sub_8091274 -_08025B40: - bl sub_80910B4 - ldr r0, [r4] - movs r1, 0 - strb r1, [r0, 0x18] - ldr r0, [r4] - strb r1, [r0, 0x19] - ldr r1, [r4] - movs r2, 0xE - ldrsh r0, [r1, r2] - adds r1, 0x18 - bl sub_808D800 - bl nullsub_104 - movs r0, 0xA - bl sub_8025434 - b _08025BC2 - .align 2, 0 -_08025B68: .4byte 0x0000014d -_08025B6C: .4byte gUnknown_203B2B4 -_08025B70: - ldr r0, _08025B94 - ldr r0, [r0] - ldr r2, [r0, 0x1C] - ldrh r1, [r2] - ldr r0, _08025B98 - ands r0, r1 - strh r0, [r2] - bl nullsub_104 - bl sub_808ED00 - bl sub_8023C60 - movs r0, 0x7 - bl sub_8025434 - b _08025BC2 - .align 2, 0 -_08025B94: .4byte gUnknown_203B2B4 -_08025B98: .4byte 0x0000fffd -_08025B9C: - movs r0, 0xF - bl sub_8025434 - b _08025BC2 -_08025BA4: - movs r0, 0x12 - bl sub_8025434 - b _08025BC2 -_08025BAC: - movs r0, 0x4 - bl sub_8025434 - b _08025BC2 -_08025BB4: - movs r0, 0x5 - bl sub_8025434 - b _08025BC2 -_08025BBC: - movs r0, 0x2 - bl sub_8025434 -_08025BC2: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8025A84 - - thumb_func_start sub_8025BCC -sub_8025BCC: - push {lr} - bl sub_80244E4 - cmp r0, 0x1 - bls _08025BE4 - cmp r0, 0x3 - bhi _08025BE4 - bl sub_802453C - movs r0, 0x2 - bl sub_8025434 -_08025BE4: - pop {r0} - bx r0 - thumb_func_end sub_8025BCC - - thumb_func_start sub_8025BE8 -sub_8025BE8: - push {lr} - bl sub_801BF48 - cmp r0, 0x1 - bls _08025C00 - cmp r0, 0x3 - bhi _08025C00 - bl sub_801BF98 - movs r0, 0x2 - bl sub_8025434 -_08025C00: - pop {r0} - bx r0 - thumb_func_end sub_8025BE8 - - thumb_func_start sub_8025C04 -sub_8025C04: - push {r4,lr} - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x4 - bhi _08025CAE - lsls r0, 2 - ldr r1, _08025C1C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08025C1C: .4byte _08025C20 - .align 2, 0 -_08025C20: - .4byte _08025CAE - .4byte _08025CAE - .4byte _08025CA4 - .4byte _08025C34 - .4byte _08025C68 -_08025C34: - bl sub_801A8AC - ldr r4, _08025C60 - ldr r2, [r4] - str r0, [r2, 0x10] - ldr r3, _08025C64 - ldr r1, [r3] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x2] - strb r0, [r2, 0x14] - ldr r2, [r4] - ldr r1, [r3] - ldr r0, [r2, 0x10] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - strb r0, [r2, 0x15] - movs r0, 0xD - bl sub_8025434 - b _08025CAE - .align 2, 0 -_08025C60: .4byte gUnknown_203B2B4 -_08025C64: .4byte gUnknown_203B460 -_08025C68: - bl sub_801A8AC - ldr r4, _08025C9C - ldr r2, [r4] - str r0, [r2, 0x10] - ldr r3, _08025CA0 - ldr r1, [r3] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x2] - strb r0, [r2, 0x14] - ldr r2, [r4] - ldr r1, [r3] - ldr r0, [r2, 0x10] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - strb r0, [r2, 0x15] - movs r0, 0 - bl sub_8099690 - movs r0, 0xE - bl sub_8025434 - b _08025CAE - .align 2, 0 -_08025C9C: .4byte gUnknown_203B2B4 -_08025CA0: .4byte gUnknown_203B460 -_08025CA4: - bl sub_801A928 - movs r0, 0x2 - bl sub_8025434 -_08025CAE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8025C04 - - thumb_func_start sub_8025CB4 -sub_8025CB4: - push {r4-r6,lr} - sub sp, 0x14 - movs r0, 0 - str r0, [sp, 0xC] - bl sub_801A6E8 - ldr r4, _08025CF4 - ldr r0, [r4] - adds r0, 0x78 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08025CE4 - ldr r0, [r4] - adds r0, 0x78 - add r1, sp, 0xC - bl sub_8013114 - ldr r1, [sp, 0xC] - cmp r1, 0x1 - beq _08025CE4 - ldr r0, [r4] - str r1, [r0, 0x74] -_08025CE4: - ldr r0, [sp, 0xC] - cmp r0, 0x4 - beq _08025D74 - cmp r0, 0x4 - bgt _08025CF8 - cmp r0, 0x1 - beq _08025D82 - b _08025D88 - .align 2, 0 -_08025CF4: .4byte gUnknown_203B2B4 -_08025CF8: - cmp r0, 0xA - bne _08025D88 - movs r6, 0x8 - ldr r0, _08025D68 - bl sub_8011988 - ldr r5, _08025D6C - ldr r0, [r5] - ldr r0, [r0, 0x10] - bl sub_80911F8 - bl sub_80910B4 - ldr r1, [r5] - ldrb r0, [r1, 0x18] - cmp r0, 0 - beq _08025D24 - adds r0, r1, 0 - adds r0, 0x18 - bl sub_8091274 - movs r6, 0x9 -_08025D24: - add r4, sp, 0x10 - ldr r1, [r5] - adds r1, 0x14 - adds r0, r4, 0 - bl sub_8090B64 - movs r1, 0 - str r1, [sp] - mov r0, sp - strb r1, [r0, 0x4] - mov r1, sp - movs r0, 0x1 - strb r0, [r1, 0x8] - strb r0, [r4] - ldr r0, _08025D70 - adds r1, r4, 0 - mov r2, sp - bl sub_8090E14 - ldr r1, [r5] - movs r2, 0xE - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D800 - bl sub_801A928 - bl nullsub_104 - adds r0, r6, 0 - bl sub_8025434 - b _08025D88 - .align 2, 0 -_08025D68: .4byte 0x0000014d -_08025D6C: .4byte gUnknown_203B2B4 -_08025D70: .4byte gUnknown_202DEA8 -_08025D74: - movs r0, 0 - bl sub_8099690 - movs r0, 0xE - bl sub_8025434 - b _08025D88 -_08025D82: - movs r0, 0xC - bl sub_8025434 -_08025D88: - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8025CB4 - - thumb_func_start sub_8025D90 -sub_8025D90: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _08025DA8 - cmp r0, 0x3 - bhi _08025DA8 - bl sub_801B450 - movs r0, 0xC - bl sub_8025434 -_08025DA8: - pop {r0} - bx r0 - thumb_func_end sub_8025D90 - - thumb_func_start sub_8025DAC -sub_8025DAC: - push {lr} - movs r0, 0x1 - bl sub_801EF38 - cmp r0, 0x3 - beq _08025DC6 - cmp r0, 0x3 - bhi _08025DC2 - cmp r0, 0x2 - beq _08025DE4 - b _08025DFE -_08025DC2: - cmp r0, 0x4 - bne _08025DFE -_08025DC6: - bl sub_801F194 - ldr r1, _08025DE0 - ldr r1, [r1] - str r0, [r1, 0x20] - lsls r0, 3 - adds r0, r1, r0 - ldrh r0, [r0, 0x2A] - strh r0, [r1, 0x24] - movs r0, 0x11 - bl sub_8025434 - b _08025DFE - .align 2, 0 -_08025DE0: .4byte gUnknown_203B2B4 -_08025DE4: - bl sub_801F214 - ldr r0, _08025E04 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x28 - ldr r1, [r1, 0x1C] - adds r1, 0x2C - bl sub_8094060 - movs r0, 0x2 - bl sub_8025434 -_08025DFE: - pop {r0} - bx r0 - .align 2, 0 -_08025E04: .4byte gUnknown_203B2B4 - thumb_func_end sub_8025DAC - - thumb_func_start sub_8025E08 -sub_8025E08: - push {lr} - bl sub_801F890 - cmp r0, 0x1 - bls _08025E20 - cmp r0, 0x3 - bhi _08025E20 - bl sub_801F8D0 - movs r0, 0x10 - bl sub_8025434 -_08025E20: - pop {r0} - bx r0 - thumb_func_end sub_8025E08 - - thumb_func_start sub_8025E24 -sub_8025E24: - push {lr} - bl sub_8016080 - cmp r0, 0x3 - bhi _08025E40 - cmp r0, 0x2 - bcc _08025E40 - bl sub_80160D8 - bl nullsub_104 - movs r0, 0x2 - bl sub_8025434 -_08025E40: - pop {r0} - bx r0 - thumb_func_end sub_8025E24 - - thumb_func_start sub_8025E44 -sub_8025E44: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08025E5C - ldr r0, _08025E64 - ldr r0, [r0] - ldr r0, [r0, 0x8] - bl sub_8025434 -_08025E5C: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08025E64: .4byte gUnknown_203B2B4 - thumb_func_end sub_8025E44 - - thumb_func_start sub_8025E68 -sub_8025E68: - push {r4-r6,lr} - sub sp, 0x14 - adds r6, r0, 0 - adds r5, r1, 0 - bl sub_8008C54 - adds r0, r6, 0 - bl sub_80073B8 - add r4, sp, 0x10 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8090B64 - movs r5, 0 - str r5, [sp, 0x4] - add r0, sp, 0x4 - strb r5, [r0, 0x4] - adds r1, r0, 0 - movs r0, 0x1 - strb r0, [r1, 0x8] - strb r0, [r4] - ldr r0, _08025EBC - adds r1, r4, 0 - add r2, sp, 0x4 - bl sub_8090E14 - ldr r2, _08025EC0 - str r5, [sp] - movs r0, 0x4 - movs r1, 0x3 - adds r3, r6, 0 - bl sub_8014FF0 - adds r0, r6, 0 - bl sub_80073E0 - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08025EBC: .4byte gUnknown_202DE58 -_08025EC0: .4byte gUnknown_80DD2F8 - thumb_func_end sub_8025E68 - - thumb_func_start sub_8025EC4 -sub_8025EC4: - push {lr} - adds r1, r0, 0 - ldrb r0, [r1, 0x2] - cmp r0, 0 - bne _08025EE8 - movs r2, 0 - ldrb r0, [r1, 0x4] - cmp r0, 0x41 - bne _08025ED8 - movs r2, 0x1 -_08025ED8: - cmp r2, 0 - beq _08025EEC - movs r0, 0x8 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _08025EEC -_08025EE8: - movs r0, 0 - b _08025EEE -_08025EEC: - movs r0, 0x1 -_08025EEE: - pop {r1} - bx r1 - thumb_func_end sub_8025EC4 - - thumb_func_start sub_8025EF4 -sub_8025EF4: - push {r4-r6,lr} - adds r4, r0, 0 - ldr r6, _08025F1C - movs r0, 0xA0 - lsls r0, 2 - movs r1, 0x8 - bl MemoryAlloc - adds r1, r0, 0 - str r1, [r6] - str r4, [r1, 0x18] - movs r5, 0 - ldr r0, _08025F20 - ldr r0, [r0] - cmp r4, r0 - bne _08025F24 - strh r5, [r1, 0xA] - adds r4, r6, 0 - b _08025F48 - .align 2, 0 -_08025F1C: .4byte gUnknown_203B2B8 -_08025F20: .4byte gUnknown_203B45C -_08025F24: - adds r5, 0x1 - movs r0, 0xCE - lsls r0, 1 - ldr r4, _08025F60 - cmp r5, r0 - bgt _08025F48 - ldr r3, [r4] - ldr r2, _08025F64 - lsls r0, r5, 16 - asrs r0, 16 - movs r1, 0x58 - muls r1, r0 - ldr r0, [r2] - adds r0, r1 - ldr r1, [r3, 0x18] - cmp r1, r0 - bne _08025F24 - strh r5, [r3, 0xA] -_08025F48: - ldr r1, [r4] - movs r0, 0 - str r0, [r1, 0x70] - str r0, [r1, 0x74] - str r0, [r1, 0x78] - strb r0, [r1, 0x8] - bl sub_8026074 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08025F60: .4byte gUnknown_203B2B8 -_08025F64: .4byte gUnknown_203B45C - thumb_func_end sub_8025EF4 - - thumb_func_start sub_8025F68 -sub_8025F68: - push {lr} - ldr r0, _08025F80 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x19 - bhi _0802603A - lsls r0, 2 - ldr r1, _08025F84 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08025F80: .4byte gUnknown_203B2B8 -_08025F84: .4byte _08025F88 - .align 2, 0 -_08025F88: - .4byte _08025FF0 - .4byte _08025FF8 - .4byte _08025FF8 - .4byte _08025FFE - .4byte _08026004 - .4byte _0802603A - .4byte _0802603A - .4byte _0802603A - .4byte _0802603A - .4byte _0802603A - .4byte _0802603A - .4byte _0802603A - .4byte _0802600A - .4byte _08026010 - .4byte _08026016 - .4byte _0802603A - .4byte _0802603A - .4byte _0802603A - .4byte _0802601C - .4byte _0802601C - .4byte _08026022 - .4byte _08026028 - .4byte _0802602E - .4byte _0802602E - .4byte _08026034 - .4byte _08026040 -_08025FF0: - movs r0, 0x1 - bl sub_8026074 - b _08026044 -_08025FF8: - bl sub_80268CC - b _08026044 -_08025FFE: - bl sub_8026A78 - b _08026044 -_08026004: - bl sub_8026A94 - b _08026044 -_0802600A: - bl sub_8026AB0 - b _08026044 -_08026010: - bl sub_8026B10 - b _08026044 -_08026016: - bl sub_8026B48 - b _08026044 -_0802601C: - bl sub_8026B64 - b _08026044 -_08026022: - bl sub_8026C14 - b _08026044 -_08026028: - bl sub_8026CF0 - b _08026044 -_0802602E: - bl sub_8026D0C - b _08026044 -_08026034: - bl sub_8026D6C - b _08026044 -_0802603A: - bl sub_8026D88 - b _08026044 -_08026040: - movs r0, 0x3 - b _08026046 -_08026044: - movs r0, 0 -_08026046: - pop {r1} - bx r1 - thumb_func_end sub_8025F68 - - thumb_func_start sub_802604C -sub_802604C: - ldr r0, _08026054 - ldr r0, [r0] - ldrb r0, [r0, 0x8] - bx lr - .align 2, 0 -_08026054: .4byte gUnknown_203B2B8 - thumb_func_end sub_802604C - - thumb_func_start sub_8026058 -sub_8026058: - push {r4,lr} - ldr r4, _08026070 - ldr r0, [r4] - cmp r0, 0 - beq _0802606A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802606A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08026070: .4byte gUnknown_203B2B8 - thumb_func_end sub_8026058 - - thumb_func_start sub_8026074 -sub_8026074: - push {lr} - ldr r1, _08026088 - ldr r1, [r1] - str r0, [r1] - bl sub_802608C - bl sub_80261D0 - pop {r0} - bx r0 - .align 2, 0 -_08026088: .4byte gUnknown_203B2B8 - thumb_func_end sub_8026074 - - thumb_func_start sub_802608C -sub_802608C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _080260B8 - ldr r0, [r4] - movs r5, 0x88 - lsls r5, 2 - adds r0, r5 - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0x1 - blt _08026178 - cmp r0, 0x2 - ble _080260BC - cmp r0, 0x14 - beq _0802614C - b _08026178 - .align 2, 0 -_080260B8: .4byte gUnknown_203B2B8 -_080260BC: - ldr r0, _0802613C - mov r12, r0 - ldr r1, _08026140 - mov r8, r1 - mov r9, r4 - mov r10, r5 - movs r3, 0 - movs r2, 0x3 -_080260CC: - mov r5, r9 - ldr r1, [r5] - adds r1, r3 - add r1, r10 - ldr r0, _08026144 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _080260CC - ldr r1, [r4] - movs r6, 0x88 - lsls r6, 2 - adds r1, r6 - mov r0, r12 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldr r1, [r4] - movs r0, 0x9A - lsls r0, 2 - adds r1, r0 - mov r0, r8 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - bl sub_80264CC - ldr r2, [r4] - movs r0, 0x94 - lsls r0, 2 - adds r2, r0 - ldr r1, _08026148 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - movs r6, 0xB6 - lsls r6, 1 - adds r1, r6 - bl sub_8012CAC - ldr r0, [r4] - movs r7, 0x97 - lsls r7, 2 - adds r0, r7 - movs r1, 0x9 - strh r1, [r0] - b _080261A2 - .align 2, 0 -_0802613C: .4byte gUnknown_80DD358 -_08026140: .4byte gUnknown_80DD370 -_08026144: .4byte gUnknown_80DD310 -_08026148: .4byte gUnknown_80DD328 -_0802614C: - bl sub_802678C - ldr r2, [r4] - movs r0, 0x94 - lsls r0, 2 - adds r2, r0 - ldr r1, _08026174 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - movs r6, 0xB6 - lsls r6, 1 - adds r1, r6 - bl sub_8012CAC - b _080261A2 - .align 2, 0 -_08026174: .4byte gUnknown_80DD340 -_08026178: - ldr r7, _080261C8 - mov r8, r7 - movs r0, 0x88 - lsls r0, 2 - mov r9, r0 - ldr r4, _080261CC - movs r3, 0 - movs r2, 0x3 -_08026188: - mov r5, r8 - ldr r1, [r5] - adds r1, r3 - add r1, r9 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _08026188 -_080261A2: - bl sub_8004914 - ldr r0, _080261C8 - ldr r0, [r0] - movs r6, 0x88 - lsls r6, 2 - adds r0, r6 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080261C8: .4byte gUnknown_203B2B8 -_080261CC: .4byte gUnknown_80DD310 - thumb_func_end sub_802608C - - thumb_func_start sub_80261D0 -sub_80261D0: - push {r4,r5,lr} - sub sp, 0x18 - ldr r1, _080261EC - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0x19 - bls _080261E2 - b _080264BA -_080261E2: - lsls r0, 2 - ldr r1, _080261F0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080261EC: .4byte gUnknown_203B2B8 -_080261F0: .4byte _080261F4 - .align 2, 0 -_080261F4: - .4byte _080264BA - .4byte _0802625C - .4byte _080262A8 - .4byte _080262EC - .4byte _080262FA - .4byte _080263F8 - .4byte _0802640C - .4byte _08026420 - .4byte _08026434 - .4byte _08026448 - .4byte _0802648A - .4byte _080264A8 - .4byte _08026392 - .4byte _080263AC - .4byte _08026306 - .4byte _08026464 - .4byte _08026474 - .4byte _08026484 - .4byte _08026310 - .4byte _0802631E - .4byte _08026326 - .4byte _08026350 - .4byte _08026362 - .4byte _08026388 - .4byte _080263E0 - .4byte _080264BA -_0802625C: - movs r0, 0x3 - bl sub_8026E08 - ldr r5, _080262A0 - ldr r1, [r5] - adds r1, 0x14 - movs r0, 0 - bl sub_8026DAC - ldr r4, _080262A4 - ldr r0, [r5] - ldr r1, [r0, 0x18] - adds r0, r4, 0 - movs r2, 0x7 - bl sub_808D9AC - adds r4, 0x50 - ldr r0, [r5] - ldr r1, [r0, 0x18] - adds r0, r4, 0 - movs r2, 0x6 - bl sub_808D9AC - ldr r2, [r5] - adds r0, r2, 0 - adds r0, 0x7C - movs r3, 0xB6 - lsls r3, 1 - adds r1, r2, r3 - movs r4, 0x83 - lsls r4, 2 - adds r3, r2, r4 - ldr r2, [r2, 0x70] - b _0802633E - .align 2, 0 -_080262A0: .4byte gUnknown_203B2B8 -_080262A4: .4byte gUnknown_202DF98 -_080262A8: - movs r0, 0x3 - bl sub_8026E08 - ldr r5, _080262E4 - ldr r1, [r5] - adds r1, 0x14 - movs r0, 0 - bl sub_8026DAC - ldr r4, _080262E8 - ldr r0, [r5] - ldr r1, [r0, 0x18] - adds r0, r4, 0 - movs r2, 0x7 - bl sub_808D9AC - adds r4, 0x50 - ldr r0, [r5] - ldr r1, [r0, 0x18] - adds r0, r4, 0 - movs r2, 0x6 - bl sub_808D9AC - ldr r0, [r5] - adds r0, 0x7C - movs r1, 0x1 - bl sub_8012EA4 - b _080264BA - .align 2, 0 -_080262E4: .4byte gUnknown_203B2B8 -_080262E8: .4byte gUnknown_202DF98 -_080262EC: - ldr r0, [r4] - movs r1, 0xA - ldrsh r0, [r0, r1] - movs r1, 0x2 - bl sub_8024458 - b _080264BA -_080262FA: - ldr r0, [r4] - movs r3, 0xA - ldrsh r0, [r0, r3] - bl sub_801BEEC - b _080264BA -_08026306: - ldr r0, [r4] - ldr r0, [r0, 0x18] - bl sub_80227B8 - b _080264BA -_08026310: - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - b _080264BA -_0802631E: - movs r0, 0x1 - bl sub_801A8D0 - b _080264BA -_08026326: - bl sub_801A9E0 - ldr r0, _0802634C - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0xCC - movs r4, 0xB6 - lsls r4, 1 - adds r1, r2, r4 - adds r4, 0xA0 - adds r3, r2, r4 - ldr r2, [r2, 0x74] -_0802633E: - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _080264BA - .align 2, 0 -_0802634C: .4byte gUnknown_203B2B8 -_08026350: - ldr r1, [r4] - adds r1, 0x10 - add r0, sp, 0x14 - bl sub_8090B64 - add r0, sp, 0x14 - bl sub_801B3C0 - b _080264BA -_08026362: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x28 - ldr r1, [r1, 0x18] - adds r1, 0x2C - bl sub_809401C - ldr r2, [r4] - movs r0, 0xA - ldrsh r1, [r2, r0] - adds r2, 0x28 - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - movs r0, 0x3 - movs r3, 0 - bl sub_801EE10 - b _080264BA -_08026388: - movs r0, 0x1 - movs r1, 0 - bl sub_801F1B0 - b _080264BA -_08026392: - bl sub_8026878 - ldr r0, _080263A4 - ldr r1, _080263A8 - ldr r3, [r1] - movs r1, 0xDE - lsls r1, 1 - adds r3, r1 - b _080263BC - .align 2, 0 -_080263A4: .4byte gUnknown_80DD388 -_080263A8: .4byte gUnknown_203B2B8 -_080263AC: - bl sub_8026878 - ldr r0, _080263D8 - ldr r1, _080263DC - ldr r3, [r1] - movs r4, 0xDE - lsls r4, 1 - adds r3, r4 -_080263BC: - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x3 - bl sub_8014248 - b _080264BA - .align 2, 0 -_080263D8: .4byte gUnknown_80DD420 -_080263DC: .4byte gUnknown_203B2B8 -_080263E0: - ldr r2, [r4] - ldr r0, [r2, 0x20] - adds r1, r2, 0 - adds r1, 0x28 - adds r2, 0x68 - bl sub_8093560 - ldr r0, [r4] - adds r0, 0x68 - bl sub_801F808 - b _080264BA -_080263F8: - ldr r1, [r4] - movs r0, 0x19 - str r0, [r1, 0x4] - movs r0, 0xCF - bl sub_8011988 - ldr r0, _08026408 - b _08026492 - .align 2, 0 -_08026408: .4byte gUnknown_80DD4C4 -_0802640C: - ldr r1, [r4] - movs r0, 0x19 - str r0, [r1, 0x4] - movs r0, 0xCF - bl sub_8011988 - ldr r0, _0802641C - b _08026492 - .align 2, 0 -_0802641C: .4byte gUnknown_80DD4F4 -_08026420: - ldr r1, [r4] - movs r0, 0x19 - str r0, [r1, 0x4] - movs r0, 0xCC - bl sub_8011988 - ldr r0, _08026430 - b _08026492 - .align 2, 0 -_08026430: .4byte gUnknown_80DD534 -_08026434: - ldr r1, [r4] - movs r0, 0x9 - str r0, [r1, 0x4] - movs r0, 0xCA - bl sub_8011988 - ldr r0, _08026444 - b _08026492 - .align 2, 0 -_08026444: .4byte gUnknown_80DD564 -_08026448: - bl sub_8026FA4 - ldr r4, _08026460 - ldr r0, [r4] - ldr r0, [r0, 0x18] - bl sub_808D31C - ldr r1, [r4] - movs r0, 0x1 - strb r0, [r1, 0x8] - b _080264BA - .align 2, 0 -_08026460: .4byte gUnknown_203B2B8 -_08026464: - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x4] - ldr r0, _08026470 - b _08026492 - .align 2, 0 -_08026470: .4byte gUnknown_80DD594 -_08026474: - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x4] - ldr r0, _08026480 - b _08026492 - .align 2, 0 -_08026480: .4byte gUnknown_80DD5B8 -_08026484: - ldr r1, [r4] - movs r0, 0x2 - b _0802648E -_0802648A: - ldr r1, [r4] - movs r0, 0x19 -_0802648E: - str r0, [r1, 0x4] - ldr r0, _080264A0 -_08026492: - ldr r3, _080264A4 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _080264BA - .align 2, 0 -_080264A0: .4byte gUnknown_80DD60C -_080264A4: .4byte 0x00000101 -_080264A8: - ldr r1, [r4] - movs r0, 0x19 - str r0, [r1, 0x4] - ldr r0, _080264C4 - ldr r3, _080264C8 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_080264BA: - add sp, 0x18 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080264C4: .4byte gUnknown_80DD63C -_080264C8: .4byte 0x00000101 - thumb_func_end sub_80261D0 - - thumb_func_start sub_80264CC -sub_80264CC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r3, _08026574 - ldr r4, _08026578 - ldr r0, [r4] - movs r1, 0xA - ldrsh r2, [r0, r1] - movs r1, 0x58 - muls r2, r1 - ldr r1, [r3] - adds r1, r2 - mov r8, r1 - movs r2, 0x83 - lsls r2, 2 - adds r0, r2 - movs r1, 0 - movs r2, 0x14 - bl MemoryFill16 - ldr r1, [r4] - ldr r0, [r1, 0x18] - ldrb r0, [r0, 0x2] - strb r0, [r1, 0x1C] - ldr r1, [r4] - movs r3, 0xA - ldrsh r0, [r1, r3] - adds r1, 0x14 - bl sub_808D7DC - mov r1, r8 - ldrh r0, [r1] - lsrs r0, 1 - movs r5, 0x1 - ands r0, r5 - cmp r0, 0 - beq _08026584 - ldr r2, [r4] - movs r3, 0xB6 - lsls r3, 1 - adds r1, r2, r3 - ldr r0, _0802657C - str r0, [r1] - movs r0, 0xB8 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x7 - str r0, [r1] - mov r0, r8 - bl sub_8026E88 - lsls r0, 24 - cmp r0, 0 - bne _08026542 - ldr r0, [r4] - movs r1, 0x83 - lsls r1, 2 - adds r0, r1 - strh r5, [r0] -_08026542: - movs r6, 0x1 - movs r0, 0x8 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080265B4 - mov r2, r8 - ldrb r0, [r2, 0x2] - cmp r0, 0 - bne _080265B4 - ldr r3, [r4] - movs r2, 0x8 - movs r4, 0xBA - lsls r4, 1 - adds r1, r3, r4 - ldr r0, _08026580 - str r0, [r1] - movs r1, 0xBC - lsls r1, 1 - adds r0, r3, r1 - str r2, [r0] - movs r6, 0x2 - b _080265B4 - .align 2, 0 -_08026574: .4byte gUnknown_203B45C -_08026578: .4byte gUnknown_203B2B8 -_0802657C: .4byte gUnknown_80DD664 -_08026580: .4byte gUnknown_80DD670 -_08026584: - ldr r2, [r4] - movs r3, 0xB6 - lsls r3, 1 - adds r1, r2, r3 - ldr r0, _08026734 - str r0, [r1] - movs r0, 0xB8 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x6 - str r0, [r1] - movs r1, 0xA - ldrsh r0, [r2, r1] - bl sub_808D750 - lsls r0, 24 - cmp r0, 0 - bne _080265B2 - ldr r0, [r4] - movs r2, 0x83 - lsls r2, 2 - adds r0, r2 - strh r5, [r0] -_080265B2: - movs r6, 0x1 -_080265B4: - ldr r4, _08026738 - ldr r2, [r4] - lsls r3, r6, 3 - movs r7, 0xB6 - lsls r7, 1 - adds r0, r2, r7 - adds r0, r3 - ldr r1, _0802673C - str r1, [r0] - movs r5, 0xB8 - lsls r5, 1 - adds r2, r5 - adds r2, r3 - movs r0, 0xA - str r0, [r2] - bl sub_809177C - lsls r0, 24 - cmp r0, 0 - bne _080265EC - ldr r0, [r4] - lsls r1, r6, 1 - movs r3, 0x83 - lsls r3, 2 - adds r0, r3 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] -_080265EC: - adds r6, 0x1 - ldr r2, [r4] - lsls r3, r6, 3 - adds r0, r2, r7 - adds r0, r3 - ldr r1, _08026740 - str r1, [r0] - adds r2, r5 - adds r2, r3 - movs r0, 0xB - str r0, [r2] - bl sub_8090A34 - cmp r0, 0 - bne _0802661A - ldr r0, [r4] - lsls r1, r6, 1 - movs r2, 0x83 - lsls r2, 2 - adds r0, r2 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] -_0802661A: - adds r6, 0x1 - ldr r2, [r4] - lsls r3, r6, 3 - adds r0, r2, r7 - adds r0, r3 - ldr r1, _08026744 - str r1, [r0] - adds r2, r5 - adds r2, r3 - movs r0, 0xC - str r0, [r2] - bl sub_8090A34 - cmp r0, 0x13 - bgt _08026640 - ldr r0, [r4] - ldrb r0, [r0, 0x14] - cmp r0, 0 - bne _08026650 -_08026640: - ldr r0, [r4] - lsls r1, r6, 1 - movs r3, 0x83 - lsls r3, 2 - adds r0, r3 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] -_08026650: - adds r6, 0x1 - mov r4, r8 - ldrh r0, [r4] - lsrs r0, 1 - movs r5, 0x1 - ands r0, r5 - cmp r0, 0 - bne _0802669A - ldr r4, _08026738 - ldr r3, [r4] - lsls r2, r6, 3 - movs r1, 0xB6 - lsls r1, 1 - adds r0, r3, r1 - adds r0, r2 - ldr r1, _08026748 - str r1, [r0] - movs r1, 0xB8 - lsls r1, 1 - adds r0, r3, r1 - adds r0, r2 - movs r1, 0x9 - str r1, [r0] - mov r0, r8 - bl sub_8026EB8 - lsls r0, 24 - cmp r0, 0 - bne _08026698 - ldr r0, [r4] - lsls r1, r6, 1 - movs r2, 0x83 - lsls r2, 2 - adds r0, r2 - adds r0, r1 - strh r5, [r0] -_08026698: - adds r6, 0x1 -_0802669A: - ldr r4, _08026738 - ldr r5, [r4] - lsls r1, r6, 3 - movs r0, 0xB6 - lsls r0, 1 - adds r3, r5, r0 - adds r2, r3, r1 - ldr r0, _0802674C - str r0, [r2] - movs r2, 0xB8 - lsls r2, 1 - adds r7, r5, r2 - adds r1, r7, r1 - movs r0, 0x4 - str r0, [r1] - adds r6, 0x1 - lsls r1, r6, 3 - adds r2, r3, r1 - ldr r0, _08026750 - str r0, [r2] - adds r1, r7, r1 - movs r0, 0xD - str r0, [r1] - adds r6, 0x1 - lsls r1, r6, 3 - adds r2, r3, r1 - ldr r0, _08026754 - str r0, [r2] - adds r1, r7, r1 - movs r0, 0x5 - str r0, [r1] - adds r6, 0x1 - lsls r1, r6, 3 - adds r3, r1 - movs r0, 0 - str r0, [r3] - adds r1, r7, r1 - movs r0, 0x1 - str r0, [r1] - movs r3, 0 - mov r12, r4 - cmp r3, r6 - bge _08026710 - adds r4, r7, 0 - movs r0, 0x83 - lsls r0, 2 - adds r2, r5, r0 -_080266F8: - ldrh r0, [r2] - cmp r0, 0 - bne _08026706 - ldr r1, [r4] - ldr r0, [r5, 0x70] - cmp r1, r0 - beq _08026780 -_08026706: - adds r4, 0x8 - adds r2, 0x2 - adds r3, 0x1 - cmp r3, r6 - blt _080266F8 -_08026710: - movs r3, 0 - cmp r3, r6 - bge _08026780 - mov r2, r12 - ldr r1, [r2] - movs r4, 0x83 - lsls r4, 2 - adds r0, r1, r4 - ldrh r0, [r0] - cmp r0, 0 - bne _08026758 - movs r2, 0xB8 - lsls r2, 1 - adds r0, r1, r2 - ldr r0, [r0] - str r0, [r1, 0x70] - b _08026780 - .align 2, 0 -_08026734: .4byte gUnknown_80DD67C -_08026738: .4byte gUnknown_203B2B8 -_0802673C: .4byte gUnknown_80DD688 -_08026740: .4byte gUnknown_80DD694 -_08026744: .4byte gUnknown_80DD69C -_08026748: .4byte gUnknown_80DD6A4 -_0802674C: .4byte gUnknown_80DD6B4 -_08026750: .4byte gUnknown_80DD6BC -_08026754: .4byte gUnknown_80DD6C4 -_08026758: - adds r3, 0x1 - cmp r3, r6 - bge _08026780 - mov r4, r12 - ldr r2, [r4] - lsls r0, r3, 1 - movs r4, 0x83 - lsls r4, 2 - adds r1, r2, r4 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08026758 - lsls r0, r3, 3 - movs r3, 0xB8 - lsls r3, 1 - adds r1, r2, r3 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x70] -_08026780: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80264CC - - thumb_func_start sub_802678C -sub_802678C: - push {r4-r7,lr} - ldr r5, _08026840 - ldr r0, [r5] - movs r7, 0x83 - lsls r7, 2 - adds r0, r7 - movs r1, 0 - movs r2, 0x14 - bl MemoryFill16 - ldr r2, [r5] - movs r0, 0xB6 - lsls r0, 1 - adds r1, r2, r0 - ldr r0, _08026844 - str r0, [r1] - movs r3, 0xB8 - lsls r3, 1 - adds r1, r2, r3 - movs r0, 0xB - str r0, [r1] - bl sub_8090A34 - cmp r0, 0 - bne _080267C8 - ldr r0, [r5] - adds r4, r7, 0 - adds r0, r4 - movs r1, 0x1 - strh r1, [r0] -_080267C8: - ldr r4, [r5] - movs r2, 0x1 - movs r0, 0xBA - lsls r0, 1 - adds r1, r4, r0 - ldr r0, _08026848 - ldr r0, [r0] - str r0, [r1] - movs r3, 0xBC - lsls r3, 1 - adds r1, r4, r3 - movs r0, 0x4 - str r0, [r1] - movs r6, 0x2 - movs r0, 0xBE - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0 - str r0, [r1] - movs r1, 0xC0 - lsls r1, 1 - adds r0, r4, r1 - str r2, [r0] - movs r3, 0 - mov r12, r4 - movs r4, 0xB8 - lsls r4, 1 - add r4, r12 - mov r0, r12 - adds r2, r0, r7 -_08026804: - ldrh r0, [r2] - cmp r0, 0 - bne _08026814 - ldr r1, [r4] - mov r7, r12 - ldr r0, [r7, 0x74] - cmp r1, r0 - beq _08026872 -_08026814: - adds r4, 0x8 - adds r2, 0x2 - adds r3, 0x1 - cmp r3, r6 - blt _08026804 - movs r3, 0 - cmp r3, r6 - bge _08026872 - ldr r1, [r5] - movs r2, 0x83 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - cmp r0, 0 - bne _0802684C - movs r3, 0xB8 - lsls r3, 1 - adds r0, r1, r3 - ldr r0, [r0] - str r0, [r1, 0x74] - b _08026872 - .align 2, 0 -_08026840: .4byte gUnknown_203B2B8 -_08026844: .4byte gUnknown_80DD694 -_08026848: .4byte gUnknown_80D4970 -_0802684C: - adds r3, 0x1 - cmp r3, r6 - bge _08026872 - ldr r2, [r5] - lsls r0, r3, 1 - movs r4, 0x83 - lsls r4, 2 - adds r1, r2, r4 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _0802684C - lsls r0, r3, 3 - movs r7, 0xB8 - lsls r7, 1 - adds r1, r2, r7 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x74] -_08026872: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_802678C - - thumb_func_start sub_8026878 -sub_8026878: - ldr r0, _080268C0 - ldr r0, [r0] - mov r12, r0 - movs r3, 0 - movs r1, 0xDE - lsls r1, 1 - add r1, r12 - ldr r0, _080268C4 - ldr r0, [r0] - str r0, [r1] - movs r1, 0xE0 - lsls r1, 1 - add r1, r12 - movs r0, 0x2 - str r0, [r1] - movs r2, 0x1 - movs r1, 0xE2 - lsls r1, 1 - add r1, r12 - ldr r0, _080268C8 - ldr r0, [r0] - str r0, [r1] - movs r1, 0xE4 - lsls r1, 1 - add r1, r12 - movs r0, 0x3 - str r0, [r1] - movs r0, 0xE6 - lsls r0, 1 - add r0, r12 - str r3, [r0] - movs r0, 0xE8 - lsls r0, 1 - add r0, r12 - str r2, [r0] - bx lr - .align 2, 0 -_080268C0: .4byte gUnknown_203B2B8 -_080268C4: .4byte gUnknown_80D4920 -_080268C8: .4byte gUnknown_80D4928 - thumb_func_end sub_8026878 - - thumb_func_start sub_80268CC -sub_80268CC: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - ldr r4, _0802690C - ldr r0, [r4] - adds r0, 0x7C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080268F8 - ldr r0, [r4] - adds r0, 0x7C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _080268F8 - ldr r0, [r4] - str r1, [r0, 0x70] -_080268F8: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0xC - bls _08026902 - b _08026A6E -_08026902: - lsls r0, 2 - ldr r1, _08026910 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802690C: .4byte gUnknown_203B2B8 -_08026910: .4byte _08026914 - .align 2, 0 -_08026914: - .4byte _08026A68 - .4byte _08026A6E - .4byte _08026A6E - .4byte _08026A58 - .4byte _08026A60 - .4byte _08026948 - .4byte _0802698C - .4byte _080269B4 - .4byte _080269F0 - .4byte _08026A00 - .4byte _08026A08 - .4byte _08026A10 - .4byte _080269F8 -_08026948: - ldr r4, _08026984 - ldr r0, [r4] - movs r1, 0xA - ldrsh r0, [r0, r1] - bl sub_808D750 - lsls r0, 24 - cmp r0, 0 - beq _08026976 - ldr r0, [r4] - movs r2, 0xA - ldrsh r1, [r0, r2] - movs r0, 0x58 - muls r1, r0 - ldr r0, _08026988 - ldr r0, [r0] - adds r1, r0 - ldrh r2, [r1] - movs r0, 0x2 - orrs r0, r2 - strh r0, [r1] - bl nullsub_104 -_08026976: - bl sub_808ED00 - movs r0, 0x5 - bl sub_8026074 - b _08026A6E - .align 2, 0 -_08026984: .4byte gUnknown_203B2B8 -_08026988: .4byte gUnknown_203B45C -_0802698C: - ldr r0, _080269AC - ldr r0, [r0] - ldr r2, [r0, 0x18] - ldrh r1, [r2] - ldr r0, _080269B0 - ands r0, r1 - strh r0, [r2] - bl nullsub_104 - bl sub_808ED00 - movs r0, 0x6 - bl sub_8026074 - b _08026A6E - .align 2, 0 -_080269AC: .4byte gUnknown_203B2B8 -_080269B0: .4byte 0x0000fffd -_080269B4: - ldr r2, _080269E8 - ldr r0, _080269EC - ldr r0, [r0] - movs r3, 0xA - ldrsh r1, [r0, r3] - movs r0, 0x58 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - bl sub_808D33C - ldrb r1, [r4, 0x2] - cmp r1, 0 - bne _080269DA - strb r1, [r0, 0x2] - movs r0, 0x1 - strb r0, [r4, 0x2] - bl nullsub_104 -_080269DA: - bl sub_808ED00 - movs r0, 0x7 - bl sub_8026074 - b _08026A6E - .align 2, 0 -_080269E8: .4byte gUnknown_203B45C -_080269EC: .4byte gUnknown_203B2B8 -_080269F0: - movs r0, 0xC - bl sub_8026074 - b _08026A6E -_080269F8: - movs r0, 0x16 - bl sub_8026074 - b _08026A6E -_08026A00: - movs r0, 0xE - bl sub_8026074 - b _08026A6E -_08026A08: - movs r0, 0x12 - bl sub_8026074 - b _08026A6E -_08026A10: - ldr r0, _08026A50 - bl sub_8011988 - ldr r4, _08026A54 - ldr r1, [r4] - ldrb r0, [r1, 0x14] - cmp r0, 0 - beq _08026A28 - adds r0, r1, 0 - adds r0, 0x14 - bl sub_8091274 -_08026A28: - bl sub_80910B4 - ldr r0, [r4] - movs r1, 0 - strb r1, [r0, 0x14] - ldr r0, [r4] - strb r1, [r0, 0x15] - ldr r1, [r4] - movs r2, 0xA - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D800 - bl nullsub_104 - movs r0, 0x11 - bl sub_8026074 - b _08026A6E - .align 2, 0 -_08026A50: .4byte 0x0000014d -_08026A54: .4byte gUnknown_203B2B8 -_08026A58: - movs r0, 0x3 - bl sub_8026074 - b _08026A6E -_08026A60: - movs r0, 0x4 - bl sub_8026074 - b _08026A6E -_08026A68: - movs r0, 0x19 - bl sub_8026074 -_08026A6E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80268CC - - thumb_func_start sub_8026A78 -sub_8026A78: - push {lr} - bl sub_80244E4 - cmp r0, 0x1 - bls _08026A90 - cmp r0, 0x3 - bhi _08026A90 - bl sub_802453C - movs r0, 0x2 - bl sub_8026074 -_08026A90: - pop {r0} - bx r0 - thumb_func_end sub_8026A78 - - thumb_func_start sub_8026A94 -sub_8026A94: - push {lr} - bl sub_801BF48 - cmp r0, 0x1 - bls _08026AAC - cmp r0, 0x3 - bhi _08026AAC - bl sub_801BF98 - movs r0, 0x2 - bl sub_8026074 -_08026AAC: - pop {r0} - bx r0 - thumb_func_end sub_8026A94 - - thumb_func_start sub_8026AB0 -sub_8026AB0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08026B08 - ldr r0, [sp] - cmp r0, 0x2 - beq _08026ADA - cmp r0, 0x2 - bgt _08026ACE - cmp r0, 0x1 - beq _08026AD2 - b _08026B08 -_08026ACE: - cmp r0, 0x3 - bne _08026B08 -_08026AD2: - movs r0, 0x2 - bl sub_8026074 - b _08026B08 -_08026ADA: - ldr r0, _08026AF0 - ldr r0, [r0] - ldr r0, [r0, 0x18] - ldrb r0, [r0, 0x4] - subs r0, 0x44 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08026AF4 - movs r0, 0x1 - b _08026AF6 - .align 2, 0 -_08026AF0: .4byte gUnknown_203B2B8 -_08026AF4: - movs r0, 0 -_08026AF6: - cmp r0, 0 - beq _08026B02 - movs r0, 0xD - bl sub_8026074 - b _08026B08 -_08026B02: - movs r0, 0x8 - bl sub_8026074 -_08026B08: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8026AB0 - - thumb_func_start sub_8026B10 -sub_8026B10: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08026B40 - ldr r0, [sp] - cmp r0, 0x2 - beq _08026B3A - cmp r0, 0x2 - bgt _08026B2E - cmp r0, 0x1 - beq _08026B32 - b _08026B40 -_08026B2E: - cmp r0, 0x3 - bne _08026B40 -_08026B32: - movs r0, 0x2 - bl sub_8026074 - b _08026B40 -_08026B3A: - movs r0, 0x8 - bl sub_8026074 -_08026B40: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8026B10 - - thumb_func_start sub_8026B48 -sub_8026B48: - push {lr} - bl sub_8022860 - cmp r0, 0x1 - bls _08026B60 - cmp r0, 0x3 - bhi _08026B60 - bl sub_8022908 - movs r0, 0x2 - bl sub_8026074 -_08026B60: - pop {r0} - bx r0 - thumb_func_end sub_8026B48 - - thumb_func_start sub_8026B64 -sub_8026B64: - push {r4,lr} - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x4 - bhi _08026C0E - lsls r0, 2 - ldr r1, _08026B7C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08026B7C: .4byte _08026B80 - .align 2, 0 -_08026B80: - .4byte _08026C0E - .4byte _08026C0E - .4byte _08026C04 - .4byte _08026B94 - .4byte _08026BC8 -_08026B94: - bl sub_801A8AC - ldr r4, _08026BC0 - ldr r2, [r4] - str r0, [r2, 0xC] - ldr r3, _08026BC4 - ldr r1, [r3] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x2] - strb r0, [r2, 0x10] - ldr r2, [r4] - ldr r1, [r3] - ldr r0, [r2, 0xC] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - strb r0, [r2, 0x11] - movs r0, 0x14 - bl sub_8026074 - b _08026C0E - .align 2, 0 -_08026BC0: .4byte gUnknown_203B2B8 -_08026BC4: .4byte gUnknown_203B460 -_08026BC8: - bl sub_801A8AC - ldr r4, _08026BFC - ldr r2, [r4] - str r0, [r2, 0xC] - ldr r3, _08026C00 - ldr r1, [r3] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x2] - strb r0, [r2, 0x10] - ldr r2, [r4] - ldr r1, [r3] - ldr r0, [r2, 0xC] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - strb r0, [r2, 0x11] - movs r0, 0 - bl sub_8099690 - movs r0, 0x15 - bl sub_8026074 - b _08026C0E - .align 2, 0 -_08026BFC: .4byte gUnknown_203B2B8 -_08026C00: .4byte gUnknown_203B460 -_08026C04: - bl sub_801A928 - movs r0, 0x2 - bl sub_8026074 -_08026C0E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8026B64 - - thumb_func_start sub_8026C14 -sub_8026C14: - push {r4-r6,lr} - sub sp, 0x14 - movs r0, 0 - str r0, [sp, 0xC] - bl sub_801A6E8 - ldr r4, _08026C54 - ldr r0, [r4] - adds r0, 0xCC - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08026C44 - ldr r0, [r4] - adds r0, 0xCC - add r1, sp, 0xC - bl sub_8013114 - ldr r1, [sp, 0xC] - cmp r1, 0x1 - beq _08026C44 - ldr r0, [r4] - str r1, [r0, 0x74] -_08026C44: - ldr r0, [sp, 0xC] - cmp r0, 0x4 - beq _08026CD4 - cmp r0, 0x4 - bgt _08026C58 - cmp r0, 0x1 - beq _08026CE2 - b _08026CE8 - .align 2, 0 -_08026C54: .4byte gUnknown_203B2B8 -_08026C58: - cmp r0, 0xB - bne _08026CE8 - movs r6, 0xF - ldr r0, _08026CC8 - bl sub_8011988 - ldr r5, _08026CCC - ldr r0, [r5] - ldr r0, [r0, 0xC] - bl sub_80911F8 - bl sub_80910B4 - ldr r1, [r5] - ldrb r0, [r1, 0x14] - cmp r0, 0 - beq _08026C84 - adds r0, r1, 0 - adds r0, 0x14 - bl sub_8091274 - movs r6, 0x10 -_08026C84: - add r4, sp, 0x10 - ldr r1, [r5] - adds r1, 0x10 - adds r0, r4, 0 - bl sub_8090B64 - movs r1, 0 - str r1, [sp] - mov r0, sp - strb r1, [r0, 0x4] - mov r1, sp - movs r0, 0x1 - strb r0, [r1, 0x8] - strb r0, [r4] - ldr r0, _08026CD0 - adds r1, r4, 0 - mov r2, sp - bl sub_8090E14 - ldr r1, [r5] - movs r2, 0xA - ldrsh r0, [r1, r2] - adds r1, 0x10 - bl sub_808D800 - bl sub_801A928 - bl nullsub_104 - adds r0, r6, 0 - bl sub_8026074 - b _08026CE8 - .align 2, 0 -_08026CC8: .4byte 0x0000014d -_08026CCC: .4byte gUnknown_203B2B8 -_08026CD0: .4byte gUnknown_202DEA8 -_08026CD4: - movs r0, 0 - bl sub_8099690 - movs r0, 0x15 - bl sub_8026074 - b _08026CE8 -_08026CE2: - movs r0, 0x13 - bl sub_8026074 -_08026CE8: - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8026C14 - - thumb_func_start sub_8026CF0 -sub_8026CF0: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _08026D08 - cmp r0, 0x3 - bhi _08026D08 - bl sub_801B450 - movs r0, 0x13 - bl sub_8026074 -_08026D08: - pop {r0} - bx r0 - thumb_func_end sub_8026CF0 - - thumb_func_start sub_8026D0C -sub_8026D0C: - push {lr} - movs r0, 0x1 - bl sub_801EF38 - cmp r0, 0x4 - bhi _08026D66 - lsls r0, 2 - ldr r1, _08026D24 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08026D24: .4byte _08026D28 - .align 2, 0 -_08026D28: - .4byte _08026D66 - .4byte _08026D66 - .4byte _08026D5C - .4byte _08026D3C - .4byte _08026D3C -_08026D3C: - bl sub_801F194 - ldr r1, _08026D58 - ldr r1, [r1] - str r0, [r1, 0x20] - lsls r0, 3 - adds r0, r1, r0 - ldrh r0, [r0, 0x2A] - strh r0, [r1, 0x24] - movs r0, 0x18 - bl sub_8026074 - b _08026D66 - .align 2, 0 -_08026D58: .4byte gUnknown_203B2B8 -_08026D5C: - bl sub_801F214 - movs r0, 0x2 - bl sub_8026074 -_08026D66: - pop {r0} - bx r0 - thumb_func_end sub_8026D0C - - thumb_func_start sub_8026D6C -sub_8026D6C: - push {lr} - bl sub_801F890 - cmp r0, 0x1 - bls _08026D84 - cmp r0, 0x3 - bhi _08026D84 - bl sub_801F8D0 - movs r0, 0x17 - bl sub_8026074 -_08026D84: - pop {r0} - bx r0 - thumb_func_end sub_8026D6C - - thumb_func_start sub_8026D88 -sub_8026D88: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08026DA0 - ldr r0, _08026DA8 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_8026074 -_08026DA0: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08026DA8: .4byte gUnknown_203B2B8 - thumb_func_end sub_8026D88 - - thumb_func_start sub_8026DAC -sub_8026DAC: - push {r4-r6,lr} - sub sp, 0x14 - adds r6, r0, 0 - adds r5, r1, 0 - bl sub_8008C54 - adds r0, r6, 0 - bl sub_80073B8 - add r4, sp, 0x10 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8090B64 - movs r5, 0 - str r5, [sp, 0x4] - add r0, sp, 0x4 - strb r5, [r0, 0x4] - adds r1, r0, 0 - movs r0, 0x1 - strb r0, [r1, 0x8] - strb r0, [r4] - ldr r0, _08026E00 - adds r1, r4, 0 - add r2, sp, 0x4 - bl sub_8090E14 - ldr r2, _08026E04 - str r5, [sp] - movs r0, 0x4 - movs r1, 0x3 - adds r3, r6, 0 - bl sub_8014FF0 - adds r0, r6, 0 - bl sub_80073E0 - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08026E00: .4byte gUnknown_202DE58 -_08026E04: .4byte gUnknown_80DD6D0 - thumb_func_end sub_8026DAC - - thumb_func_start sub_8026E08 -sub_8026E08: - push {r4-r6,lr} - sub sp, 0x40 - adds r5, r0, 0 - bl sub_8008C54 - adds r0, r5, 0 - bl sub_80073B8 - ldr r6, _08026E78 - ldr r4, _08026E7C - ldr r0, [r4] - ldr r1, [r0, 0x18] - adds r1, 0x4C - adds r0, r6, 0 - movs r2, 0xA - bl sub_80922B4 - add r0, sp, 0x2C - ldr r1, [r4] - ldr r1, [r1, 0x18] - movs r2, 0x8 - ldrsh r1, [r1, r2] - bl sub_808D930 - ldr r1, _08026E80 - add r0, sp, 0x4 - adds r2, r6, 0 - bl sub_800D158 - add r0, sp, 0x4 - bl sub_8008ED0 - adds r1, r0, 0 - ldr r0, _08026E84 - movs r2, 0xC - ldrsh r0, [r0, r2] - lsls r0, 3 - subs r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - movs r1, 0 - str r1, [sp] - movs r1, 0x3 - add r2, sp, 0x4 - adds r3, r5, 0 - bl xxx_call_draw_string - adds r0, r5, 0 - bl sub_80073E0 - add sp, 0x40 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08026E78: .4byte gUnknown_202DF98 -_08026E7C: .4byte gUnknown_203B2B8 -_08026E80: .4byte gUnknown_80DD6E0 -_08026E84: .4byte gUnknown_80DD370 - thumb_func_end sub_8026E08 - - thumb_func_start sub_8026E88 -sub_8026E88: - push {lr} - adds r1, r0, 0 - ldrb r0, [r1, 0x2] - cmp r0, 0 - bne _08026EAC - movs r2, 0 - ldrb r0, [r1, 0x4] - cmp r0, 0x41 - bne _08026E9C - movs r2, 0x1 -_08026E9C: - cmp r2, 0 - beq _08026EB0 - movs r0, 0x8 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _08026EB0 -_08026EAC: - movs r0, 0 - b _08026EB2 -_08026EB0: - movs r0, 0x1 -_08026EB2: - pop {r1} - bx r1 - thumb_func_end sub_8026E88 - - thumb_func_start sub_8026EB8 -sub_8026EB8: - push {r4,lr} - adds r4, r0, 0 - bl sub_808D3BC - cmp r0, r4 - beq _08026EFA - bl sub_808D3F8 - cmp r0, r4 - beq _08026EFA - ldrb r0, [r4, 0x2] - cmp r0, 0 - bne _08026EFA - movs r1, 0 - ldrb r0, [r4, 0x4] - cmp r0, 0x41 - bne _08026EDC - movs r1, 0x1 -_08026EDC: - cmp r1, 0 - beq _08026EEC - movs r0, 0x8 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _08026EFA -_08026EEC: - adds r0, r4, 0 - bl sub_8026F04 - cmp r0, 0x3 - beq _08026EFA - movs r0, 0x1 - b _08026EFC -_08026EFA: - movs r0, 0 -_08026EFC: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8026EB8 - - thumb_func_start sub_8026F04 -sub_8026F04: - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x28 - ldrb r0, [r0] - cmp r0, 0 - bne _08026F14 - movs r0, 0 - b _08026F32 -_08026F14: - bl sub_8090A34 - cmp r0, 0x13 - bgt _08026F20 - movs r0, 0x1 - b _08026F32 -_08026F20: - adds r0, r4, 0 - bl sub_8026F38 - lsls r0, 24 - cmp r0, 0 - bne _08026F30 - movs r0, 0x3 - b _08026F32 -_08026F30: - movs r0, 0x2 -_08026F32: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8026F04 - - thumb_func_start sub_8026F38 -sub_8026F38: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r5, 0 - adds r4, 0x28 - ldrb r0, [r4] - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - beq _08026F74 - ldrb r0, [r4] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _08026F80 - ldr r0, _08026F78 - ldr r1, [r0] - ldrb r0, [r4] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r1, [r1] - adds r0, r5, 0 - adds r0, 0x29 - ldrb r0, [r0] - adds r1, r0 - ldr r0, _08026F7C - cmp r1, r0 - ble _08026F94 -_08026F74: - movs r0, 0 - b _08026F96 - .align 2, 0 -_08026F78: .4byte gUnknown_203B460 -_08026F7C: .4byte 0x000003e7 -_08026F80: - ldr r0, _08026F9C - ldr r1, [r0] - ldrb r0, [r4] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r1, [r1] - ldr r0, _08026FA0 - cmp r1, r0 - bhi _08026F74 -_08026F94: - movs r0, 0x1 -_08026F96: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08026F9C: .4byte gUnknown_203B460 -_08026FA0: .4byte 0x000003e6 - thumb_func_end sub_8026F38 - - thumb_func_start sub_8026FA4 -sub_8026FA4: - push {r4,lr} - ldr r4, _08026FC0 - ldr r0, [r4] - ldr r0, [r0, 0x18] - bl sub_8026F04 - cmp r0, 0x1 - beq _08026FC4 - cmp r0, 0x1 - bcc _08027068 - cmp r0, 0x2 - beq _08026FF8 - b _08027068 - .align 2, 0 -_08026FC0: .4byte gUnknown_203B2B8 -_08026FC4: - ldr r0, _08026FF4 - bl sub_8011988 - ldr r0, [r4] - adds r0, 0x14 - bl sub_8091274 - bl sub_80910B4 - ldr r0, [r4] - movs r1, 0 - strb r1, [r0, 0x14] - ldr r0, [r4] - strb r1, [r0, 0x15] - ldr r1, [r4] - movs r2, 0xA - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D800 - movs r0, 0xA - bl sub_8026074 - b _0802706E - .align 2, 0 -_08026FF4: .4byte 0x0000014d -_08026FF8: - ldr r0, _08027024 - bl sub_8011988 - ldr r0, [r4] - ldrb r0, [r0, 0x14] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _0802702C - ldr r0, _08027028 - ldr r1, [r0] - ldr r2, [r4] - ldrb r0, [r2, 0x14] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r0, [r1] - ldrb r2, [r2, 0x15] - adds r0, r2 - b _0802703E - .align 2, 0 -_08027024: .4byte 0x0000014d -_08027028: .4byte gUnknown_203B460 -_0802702C: - ldr r0, _08027060 - ldr r1, [r0] - ldr r0, [r4] - ldrb r0, [r0, 0x14] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 -_0802703E: - strh r0, [r1] - ldr r1, _08027064 - ldr r0, [r1] - movs r2, 0 - strb r2, [r0, 0x14] - ldr r0, [r1] - strb r2, [r0, 0x15] - ldr r1, [r1] - movs r2, 0xA - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D800 - movs r0, 0xB - bl sub_8026074 - b _0802706E - .align 2, 0 -_08027060: .4byte gUnknown_203B460 -_08027064: .4byte gUnknown_203B2B8 -_08027068: - movs r0, 0x19 - bl sub_8026074 -_0802706E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8026FA4 - - thumb_func_start sub_8027074 -sub_8027074: - push {r4,lr} - movs r0, 0 - bl sub_8004D8C - ldr r4, _080270A0 - movs r0, 0xF0 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r1, 0 - str r1, [r0, 0x70] - str r1, [r0, 0x74] - str r1, [r0, 0x78] - movs r0, 0 - bl sub_8027184 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080270A0: .4byte gUnknown_203B2BC - thumb_func_end sub_8027074 - - thumb_func_start sub_80270A4 -sub_80270A4: - push {lr} - ldr r0, _080270BC - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x11 - bhi _08027156 - lsls r0, 2 - ldr r1, _080270C0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080270BC: .4byte gUnknown_203B2BC -_080270C0: .4byte _080270C4 - .align 2, 0 -_080270C4: - .4byte _0802710C - .4byte _08027114 - .4byte _08027114 - .4byte _0802711A - .4byte _08027120 - .4byte _08027126 - .4byte _08027156 - .4byte _08027156 - .4byte _0802712C - .4byte _08027132 - .4byte _08027138 - .4byte _08027138 - .4byte _0802713E - .4byte _08027144 - .4byte _0802714A - .4byte _0802714A - .4byte _08027150 - .4byte _0802715C -_0802710C: - movs r0, 0x1 - bl sub_8027184 - b _08027160 -_08027114: - bl sub_80277FC - b _08027160 -_0802711A: - bl sub_80278B4 - b _08027160 -_08027120: - bl sub_8027A40 - b _08027160 -_08027126: - bl sub_8027A5C - b _08027160 -_0802712C: - bl sub_8027A78 - b _08027160 -_08027132: - bl sub_8027AE4 - b _08027160 -_08027138: - bl sub_8027B28 - b _08027160 -_0802713E: - bl sub_8027BD8 - b _08027160 -_08027144: - bl sub_8027C84 - b _08027160 -_0802714A: - bl sub_8027CA0 - b _08027160 -_08027150: - bl sub_8027D00 - b _08027160 -_08027156: - bl sub_8027D1C - b _08027160 -_0802715C: - movs r0, 0x3 - b _08027162 -_08027160: - movs r0, 0 -_08027162: - pop {r1} - bx r1 - thumb_func_end sub_80270A4 - - thumb_func_start sub_8027168 -sub_8027168: - push {r4,lr} - ldr r4, _08027180 - ldr r0, [r4] - cmp r0, 0 - beq _0802717A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802717A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08027180: .4byte gUnknown_203B2BC - thumb_func_end sub_8027168 - - thumb_func_start sub_8027184 -sub_8027184: - push {lr} - ldr r1, _08027198 - ldr r1, [r1] - str r0, [r1] - bl sub_802719C - bl sub_8027274 - pop {r0} - bx r0 - .align 2, 0 -_08027198: .4byte gUnknown_203B2BC - thumb_func_end sub_8027184 - - thumb_func_start sub_802719C -sub_802719C: - push {r4-r7,lr} - ldr r4, _080271C0 - ldr r0, [r4] - movs r1, 0xC0 - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - ldr r1, [r4] - ldr r0, [r1] - cmp r0, 0x3 - beq _080271C8 - cmp r0, 0xC - beq _08027208 - movs r2, 0 - ldr r3, _080271C4 - b _08027234 - .align 2, 0 -_080271C0: .4byte gUnknown_203B2BC -_080271C4: .4byte gUnknown_80DD6EC -_080271C8: - movs r2, 0xE4 - lsls r2, 1 - adds r1, r2 - ldr r0, _08027200 - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - bl sub_802745C - ldr r2, [r4] - movs r0, 0xD8 - lsls r0, 1 - adds r2, r0 - ldr r1, _08027204 - ldm r1!, {r5-r7} - stm r2!, {r5-r7} - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldr r1, [r4] - adds r0, r1, r0 - movs r7, 0x8E - lsls r7, 1 - adds r1, r7 - bl sub_8012CAC - b _08027254 - .align 2, 0 -_08027200: .4byte gUnknown_80DD74C -_08027204: .4byte gUnknown_80DD704 -_08027208: - bl sub_80276A8 - ldr r2, [r4] - movs r0, 0xD8 - lsls r0, 1 - adds r2, r0 - ldr r1, _08027230 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - movs r6, 0x8E - lsls r6, 1 - adds r1, r6 - bl sub_8012CAC - b _08027254 - .align 2, 0 -_08027230: .4byte gUnknown_80DD71C -_08027234: - ldr r0, [r4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r0, r1 - movs r7, 0xC0 - lsls r7, 1 - adds r0, r7 - adds r1, r3, 0 - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - adds r2, 0x1 - cmp r2, 0x3 - ble _08027234 -_08027254: - bl sub_8004914 - ldr r0, _08027270 - ldr r0, [r0] - movs r1, 0xC0 - lsls r1, 1 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08027270: .4byte gUnknown_203B2BC - thumb_func_end sub_802719C - - thumb_func_start sub_8027274 -sub_8027274: - push {r4,lr} - sub sp, 0x18 - ldr r1, _08027290 - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0x11 - bls _08027286 - b _0802744A -_08027286: - lsls r0, 2 - ldr r1, _08027294 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08027290: .4byte gUnknown_203B2BC -_08027294: .4byte _08027298 - .align 2, 0 -_08027298: - .4byte _0802744A - .4byte _080272E0 - .4byte _080272EE - .4byte _080272F6 - .4byte _0802731A - .4byte _08027328 - .4byte _0802741C - .4byte _08027438 - .4byte _080273B6 - .4byte _080273D0 - .4byte _08027334 - .4byte _08027342 - .4byte _0802734A - .4byte _08027374 - .4byte _08027386 - .4byte _080273AC - .4byte _08027404 - .4byte _0802744A -_080272E0: - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0x7 - bl sub_8023868 - b _0802744A -_080272EE: - movs r0, 0x1 - bl sub_8023B7C - b _0802744A -_080272F6: - ldr r1, [r4] - adds r1, 0x14 - movs r0, 0x3 - bl sub_8027D40 - bl sub_8023DA4 - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x7C - movs r3, 0x8E - lsls r3, 1 - adds r1, r2, r3 - movs r4, 0xB6 - lsls r4, 1 - adds r3, r2, r4 - ldr r2, [r2, 0x70] - b _08027362 -_0802731A: - ldr r0, [r4] - movs r1, 0x8 - ldrsh r0, [r0, r1] - movs r1, 0x2 - bl sub_8024458 - b _0802744A -_08027328: - ldr r0, [r4] - movs r3, 0x8 - ldrsh r0, [r0, r3] - bl sub_801BEEC - b _0802744A -_08027334: - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - b _0802744A -_08027342: - movs r0, 0x1 - bl sub_801A8D0 - b _0802744A -_0802734A: - bl sub_801A9E0 - ldr r0, _08027370 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x7C - movs r4, 0x8E - lsls r4, 1 - adds r1, r2, r4 - adds r4, 0x50 - adds r3, r2, r4 - ldr r2, [r2, 0x74] -_08027362: - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _0802744A - .align 2, 0 -_08027370: .4byte gUnknown_203B2BC -_08027374: - ldr r1, [r4] - adds r1, 0x10 - add r0, sp, 0x14 - bl sub_8090B64 - add r0, sp, 0x14 - bl sub_801B3C0 - b _0802744A -_08027386: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x28 - ldr r1, [r1, 0x18] - adds r1, 0x2C - bl sub_809401C - ldr r2, [r4] - movs r0, 0x8 - ldrsh r1, [r2, r0] - adds r2, 0x28 - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - movs r0, 0x3 - movs r3, 0 - bl sub_801EE10 - b _0802744A -_080273AC: - movs r0, 0x1 - movs r1, 0 - bl sub_801F1B0 - b _0802744A -_080273B6: - bl sub_8027794 - ldr r0, _080273C8 - ldr r1, _080273CC - ldr r3, [r1] - movs r1, 0x8E - lsls r1, 1 - adds r3, r1 - b _080273E0 - .align 2, 0 -_080273C8: .4byte gUnknown_80DD764 -_080273CC: .4byte gUnknown_203B2BC -_080273D0: - bl sub_8027794 - ldr r0, _080273FC - ldr r1, _08027400 - ldr r3, [r1] - movs r4, 0x8E - lsls r4, 1 - adds r3, r4 -_080273E0: - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x3 - bl sub_8014248 - b _0802744A - .align 2, 0 -_080273FC: .4byte gUnknown_80DD7FC -_08027400: .4byte gUnknown_203B2BC -_08027404: - ldr r2, [r4] - ldr r0, [r2, 0x20] - adds r1, r2, 0 - adds r1, 0x28 - adds r2, 0x68 - bl sub_8093560 - ldr r0, [r4] - adds r0, 0x68 - bl sub_801F808 - b _0802744A -_0802741C: - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x4] - ldr r0, _08027430 - ldr r3, _08027434 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _0802744A - .align 2, 0 -_08027430: .4byte gUnknown_80DD8A0 -_08027434: .4byte 0x00000101 -_08027438: - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x4] - ldr r0, _08027454 - ldr r3, _08027458 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_0802744A: - add sp, 0x18 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08027454: .4byte gUnknown_80DD8D0 -_08027458: .4byte 0x00000101 - thumb_func_end sub_8027274 - - thumb_func_start sub_802745C -sub_802745C: - push {r4-r7,lr} - ldr r3, _080274E4 - ldr r4, _080274E8 - ldr r0, [r4] - movs r1, 0x8 - ldrsh r2, [r0, r1] - movs r1, 0x58 - muls r2, r1 - ldr r1, [r3] - adds r5, r1, r2 - movs r2, 0xB6 - lsls r2, 1 - adds r0, r2 - movs r1, 0 - movs r2, 0x14 - bl MemoryFill16 - ldrh r0, [r5] - lsrs r0, 1 - movs r6, 0x1 - ands r0, r6 - cmp r0, 0 - beq _080274F4 - ldr r2, [r4] - movs r3, 0x8E - lsls r3, 1 - adds r1, r2, r3 - ldr r0, _080274EC - str r0, [r1] - movs r0, 0x90 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x7 - str r0, [r1] - adds r0, r5, 0 - bl sub_8027D9C - lsls r0, 24 - cmp r0, 0 - bne _080274B6 - ldr r0, [r4] - movs r1, 0xB6 - lsls r1, 1 - adds r0, r1 - strh r6, [r0] -_080274B6: - movs r7, 0x1 - movs r0, 0x8 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _08027552 - ldrb r0, [r5, 0x2] - cmp r0, 0 - bne _08027552 - ldr r3, [r4] - movs r2, 0x8 - movs r4, 0x92 - lsls r4, 1 - adds r1, r3, r4 - ldr r0, _080274F0 - str r0, [r1] - movs r1, 0x94 - lsls r1, 1 - adds r0, r3, r1 - str r2, [r0] - b _08027550 - .align 2, 0 -_080274E4: .4byte gUnknown_203B45C -_080274E8: .4byte gUnknown_203B2BC -_080274EC: .4byte gUnknown_80DD8F8 -_080274F0: .4byte gUnknown_80DD904 -_080274F4: - ldr r2, [r4] - movs r3, 0x8E - lsls r3, 1 - adds r1, r2, r3 - ldr r0, _08027658 - str r0, [r1] - movs r0, 0x90 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x6 - str r0, [r1] - movs r1, 0x8 - ldrsh r0, [r2, r1] - bl sub_808D750 - lsls r0, 24 - cmp r0, 0 - bne _08027522 - ldr r0, [r4] - movs r2, 0xB6 - lsls r2, 1 - adds r0, r2 - strh r6, [r0] -_08027522: - movs r7, 0x1 - ldr r2, [r4] - movs r3, 0x92 - lsls r3, 1 - adds r1, r2, r3 - ldr r0, _0802765C - str r0, [r1] - movs r0, 0x94 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x9 - str r0, [r1] - adds r0, r5, 0 - bl sub_8027DCC - lsls r0, 24 - cmp r0, 0 - bne _08027550 - ldr r0, [r4] - movs r1, 0xB7 - lsls r1, 1 - adds r0, r1 - strh r7, [r0] -_08027550: - movs r7, 0x2 -_08027552: - ldr r4, _08027660 - ldr r2, [r4] - lsls r3, r7, 3 - movs r6, 0x8E - lsls r6, 1 - adds r0, r2, r6 - adds r0, r3 - ldr r1, _08027664 - str r1, [r0] - movs r5, 0x90 - lsls r5, 1 - adds r2, r5 - adds r2, r3 - movs r0, 0xA - str r0, [r2] - bl sub_8090A34 - cmp r0, 0 - bne _08027588 - ldr r0, [r4] - lsls r1, r7, 1 - movs r2, 0xB6 - lsls r2, 1 - adds r0, r2 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] -_08027588: - adds r7, 0x1 - ldr r2, [r4] - lsls r3, r7, 3 - adds r0, r2, r6 - adds r0, r3 - ldr r1, _08027668 - str r1, [r0] - adds r2, r5 - adds r2, r3 - movs r0, 0xB - str r0, [r2] - bl sub_8090A34 - cmp r0, 0x13 - bgt _080275AE - ldr r0, [r4] - ldrb r0, [r0, 0x14] - cmp r0, 0 - bne _080275BE -_080275AE: - ldr r0, [r4] - lsls r1, r7, 1 - movs r3, 0xB6 - lsls r3, 1 - adds r0, r3 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] -_080275BE: - adds r7, 0x1 - ldr r4, _08027660 - ldr r5, [r4] - lsls r1, r7, 3 - movs r0, 0x8E - lsls r0, 1 - adds r3, r5, r0 - adds r2, r3, r1 - ldr r0, _0802766C - str r0, [r2] - movs r2, 0x90 - lsls r2, 1 - adds r6, r5, r2 - adds r1, r6, r1 - movs r0, 0x4 - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r2, r3, r1 - ldr r0, _08027670 - str r0, [r2] - adds r1, r6, r1 - movs r0, 0xC - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r2, r3, r1 - ldr r0, _08027674 - str r0, [r2] - adds r1, r6, r1 - movs r0, 0x5 - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r3, r1 - movs r0, 0 - str r0, [r3] - adds r1, r6, r1 - movs r0, 0x1 - str r0, [r1] - movs r3, 0 - mov r12, r4 - cmp r3, r7 - bge _08027636 - adds r4, r6, 0 - movs r0, 0xB6 - lsls r0, 1 - adds r2, r5, r0 -_0802761E: - ldrh r0, [r2] - cmp r0, 0 - bne _0802762C - ldr r1, [r4] - ldr r0, [r5, 0x70] - cmp r1, r0 - beq _080276A0 -_0802762C: - adds r4, 0x8 - adds r2, 0x2 - adds r3, 0x1 - cmp r3, r7 - blt _0802761E -_08027636: - movs r3, 0 - cmp r3, r7 - bge _080276A0 - mov r2, r12 - ldr r1, [r2] - movs r4, 0xB6 - lsls r4, 1 - adds r0, r1, r4 - ldrh r0, [r0] - cmp r0, 0 - bne _08027678 - movs r2, 0x90 - lsls r2, 1 - adds r0, r1, r2 - ldr r0, [r0] - str r0, [r1, 0x70] - b _080276A0 - .align 2, 0 -_08027658: .4byte gUnknown_80DD910 -_0802765C: .4byte gUnknown_80DD91C -_08027660: .4byte gUnknown_203B2BC -_08027664: .4byte gUnknown_80DD92C -_08027668: .4byte gUnknown_80DD934 -_0802766C: .4byte gUnknown_80DD93C -_08027670: .4byte gUnknown_80DD944 -_08027674: .4byte gUnknown_80DD94C -_08027678: - adds r3, 0x1 - cmp r3, r7 - bge _080276A0 - mov r4, r12 - ldr r2, [r4] - lsls r0, r3, 1 - movs r4, 0xB6 - lsls r4, 1 - adds r1, r2, r4 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08027678 - lsls r0, r3, 3 - movs r3, 0x90 - lsls r3, 1 - adds r1, r2, r3 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x70] -_080276A0: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_802745C - - thumb_func_start sub_80276A8 -sub_80276A8: - push {r4-r7,lr} - ldr r5, _0802775C - ldr r0, [r5] - movs r7, 0xB6 - lsls r7, 1 - adds r0, r7 - movs r1, 0 - movs r2, 0x14 - bl MemoryFill16 - ldr r2, [r5] - movs r0, 0x8E - lsls r0, 1 - adds r1, r2, r0 - ldr r0, _08027760 - str r0, [r1] - movs r3, 0x90 - lsls r3, 1 - adds r1, r2, r3 - movs r0, 0xA - str r0, [r1] - bl sub_8090A34 - cmp r0, 0 - bne _080276E4 - ldr r0, [r5] - adds r4, r7, 0 - adds r0, r4 - movs r1, 0x1 - strh r1, [r0] -_080276E4: - ldr r4, [r5] - movs r2, 0x1 - movs r0, 0x92 - lsls r0, 1 - adds r1, r4, r0 - ldr r0, _08027764 - ldr r0, [r0] - str r0, [r1] - movs r3, 0x94 - lsls r3, 1 - adds r1, r4, r3 - movs r0, 0x4 - str r0, [r1] - movs r6, 0x2 - movs r0, 0x96 - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0 - str r0, [r1] - movs r1, 0x98 - lsls r1, 1 - adds r0, r4, r1 - str r2, [r0] - movs r3, 0 - mov r12, r4 - movs r4, 0x90 - lsls r4, 1 - add r4, r12 - mov r0, r12 - adds r2, r0, r7 -_08027720: - ldrh r0, [r2] - cmp r0, 0 - bne _08027730 - ldr r1, [r4] - mov r7, r12 - ldr r0, [r7, 0x74] - cmp r1, r0 - beq _0802778E -_08027730: - adds r4, 0x8 - adds r2, 0x2 - adds r3, 0x1 - cmp r3, r6 - blt _08027720 - movs r3, 0 - cmp r3, r6 - bge _0802778E - ldr r1, [r5] - movs r2, 0xB6 - lsls r2, 1 - adds r0, r1, r2 - ldrh r0, [r0] - cmp r0, 0 - bne _08027768 - movs r3, 0x90 - lsls r3, 1 - adds r0, r1, r3 - ldr r0, [r0] - str r0, [r1, 0x74] - b _0802778E - .align 2, 0 -_0802775C: .4byte gUnknown_203B2BC -_08027760: .4byte gUnknown_80DD92C -_08027764: .4byte gUnknown_80D4970 -_08027768: - adds r3, 0x1 - cmp r3, r6 - bge _0802778E - ldr r2, [r5] - lsls r0, r3, 1 - movs r4, 0xB6 - lsls r4, 1 - adds r1, r2, r4 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08027768 - lsls r0, r3, 3 - movs r7, 0x90 - lsls r7, 1 - adds r1, r2, r7 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x74] -_0802778E: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80276A8 - - thumb_func_start sub_8027794 -sub_8027794: - push {r4,lr} - ldr r4, _080277F0 - ldr r0, [r4] - movs r1, 0xB6 - lsls r1, 1 - adds r0, r1 - movs r1, 0 - movs r2, 0x14 - bl MemoryFill16 - ldr r4, [r4] - movs r3, 0 - movs r0, 0x8E - lsls r0, 1 - adds r1, r4, r0 - ldr r0, _080277F4 - ldr r0, [r0] - str r0, [r1] - movs r0, 0x90 - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0x2 - str r0, [r1] - movs r2, 0x1 - movs r0, 0x92 - lsls r0, 1 - adds r1, r4, r0 - ldr r0, _080277F8 - ldr r0, [r0] - str r0, [r1] - movs r0, 0x94 - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0x3 - str r0, [r1] - movs r1, 0x96 - lsls r1, 1 - adds r0, r4, r1 - str r3, [r0] - adds r1, 0x4 - adds r0, r4, r1 - str r2, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080277F0: .4byte gUnknown_203B2BC -_080277F4: .4byte gUnknown_80D4920 -_080277F8: .4byte gUnknown_80D4928 - thumb_func_end sub_8027794 - - thumb_func_start sub_80277FC -sub_80277FC: - push {r4,lr} - movs r0, 0x1 - bl sub_8023A94 - cmp r0, 0x4 - bhi _080278AE - lsls r0, 2 - ldr r1, _08027814 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08027814: .4byte _08027818 - .align 2, 0 -_08027818: - .4byte _080278AE - .4byte _080278AE - .4byte _080278A4 - .4byte _0802782C - .4byte _08027868 -_0802782C: - bl sub_8023B44 - ldr r4, _08027860 - ldr r1, [r4] - strh r0, [r1, 0x8] - ldr r3, _08027864 - movs r0, 0x8 - ldrsh r2, [r1, r0] - movs r0, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - str r0, [r1, 0x18] - ldrb r0, [r0, 0x2] - strb r0, [r1, 0x1C] - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D7DC - movs r0, 0x3 - bl sub_8027184 - b _080278AE - .align 2, 0 -_08027860: .4byte gUnknown_203B2BC -_08027864: .4byte gUnknown_203B45C -_08027868: - bl sub_8023B44 - ldr r4, _0802789C - ldr r1, [r4] - strh r0, [r1, 0x8] - ldr r3, _080278A0 - movs r0, 0x8 - ldrsh r2, [r1, r0] - movs r0, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - str r0, [r1, 0x18] - ldrb r0, [r0, 0x2] - strb r0, [r1, 0x1C] - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D7DC - movs r0, 0x4 - bl sub_8027184 - b _080278AE - .align 2, 0 -_0802789C: .4byte gUnknown_203B2BC -_080278A0: .4byte gUnknown_203B45C -_080278A4: - bl sub_8023C60 - movs r0, 0x11 - bl sub_8027184 -_080278AE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80277FC - - thumb_func_start sub_80278B4 -sub_80278B4: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_8023A94 - ldr r4, _080278F8 - ldr r0, [r4] - adds r0, 0x7C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080278E4 - ldr r0, [r4] - adds r0, 0x7C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _080278E4 - ldr r0, [r4] - str r1, [r0, 0x70] -_080278E4: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0xB - bls _080278EE - b _08027A36 -_080278EE: - lsls r0, 2 - ldr r1, _080278FC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080278F8: .4byte gUnknown_203B2BC -_080278FC: .4byte _08027900 - .align 2, 0 -_08027900: - .4byte _08027A30 - .4byte _08027A36 - .4byte _08027A36 - .4byte _08027A20 - .4byte _08027A28 - .4byte _08027930 - .4byte _0802796C - .4byte _0802798C - .4byte _080279C0 - .4byte _080279D0 - .4byte _080279D8 - .4byte _080279C8 -_08027930: - ldr r4, _08027964 - ldr r0, [r4] - movs r1, 0x8 - ldrsh r0, [r0, r1] - bl sub_808D750 - lsls r0, 24 - cmp r0, 0 - beq _0802795E - ldr r0, [r4] - movs r2, 0x8 - ldrsh r1, [r0, r2] - movs r0, 0x58 - muls r1, r0 - ldr r0, _08027968 - ldr r0, [r0] - adds r1, r0 - ldrh r2, [r1] - movs r0, 0x2 - orrs r0, r2 - strh r0, [r1] - bl nullsub_104 -_0802795E: - bl sub_808ED00 - b _08027A0E - .align 2, 0 -_08027964: .4byte gUnknown_203B2BC -_08027968: .4byte gUnknown_203B45C -_0802796C: - ldr r0, _08027984 - ldr r0, [r0] - ldr r2, [r0, 0x18] - ldrh r1, [r2] - ldr r0, _08027988 - ands r0, r1 - strh r0, [r2] - bl nullsub_104 - bl sub_808ED00 - b _08027A0E - .align 2, 0 -_08027984: .4byte gUnknown_203B2BC -_08027988: .4byte 0x0000fffd -_0802798C: - ldr r2, _080279B8 - ldr r0, _080279BC - ldr r0, [r0] - movs r3, 0x8 - ldrsh r1, [r0, r3] - movs r0, 0x58 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - bl sub_808D33C - ldrb r1, [r4, 0x2] - cmp r1, 0 - bne _080279B2 - strb r1, [r0, 0x2] - movs r0, 0x1 - strb r0, [r4, 0x2] - bl nullsub_104 -_080279B2: - bl sub_808ED00 - b _08027A0E - .align 2, 0 -_080279B8: .4byte gUnknown_203B45C -_080279BC: .4byte gUnknown_203B2BC -_080279C0: - movs r0, 0x8 - bl sub_8027184 - b _08027A36 -_080279C8: - movs r0, 0xE - bl sub_8027184 - b _08027A36 -_080279D0: - movs r0, 0xA - bl sub_8027184 - b _08027A36 -_080279D8: - ldr r0, _08027A18 - bl sub_8011988 - ldr r4, _08027A1C - ldr r1, [r4] - ldrb r0, [r1, 0x14] - cmp r0, 0 - beq _080279F0 - adds r0, r1, 0 - adds r0, 0x14 - bl sub_8091274 -_080279F0: - bl sub_80910B4 - ldr r0, [r4] - movs r1, 0 - strb r1, [r0, 0x14] - ldr r0, [r4] - strb r1, [r0, 0x15] - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D800 - bl nullsub_104 -_08027A0E: - movs r0, 0x2 - bl sub_8027184 - b _08027A36 - .align 2, 0 -_08027A18: .4byte 0x0000014d -_08027A1C: .4byte gUnknown_203B2BC -_08027A20: - movs r0, 0x4 - bl sub_8027184 - b _08027A36 -_08027A28: - movs r0, 0x5 - bl sub_8027184 - b _08027A36 -_08027A30: - movs r0, 0x2 - bl sub_8027184 -_08027A36: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80278B4 - - thumb_func_start sub_8027A40 -sub_8027A40: - push {lr} - bl sub_80244E4 - cmp r0, 0x1 - bls _08027A58 - cmp r0, 0x3 - bhi _08027A58 - bl sub_802453C - movs r0, 0x2 - bl sub_8027184 -_08027A58: - pop {r0} - bx r0 - thumb_func_end sub_8027A40 - - thumb_func_start sub_8027A5C -sub_8027A5C: - push {lr} - bl sub_801BF48 - cmp r0, 0x1 - bls _08027A74 - cmp r0, 0x3 - bhi _08027A74 - bl sub_801BF98 - movs r0, 0x2 - bl sub_8027184 -_08027A74: - pop {r0} - bx r0 - thumb_func_end sub_8027A5C - - thumb_func_start sub_8027A78 -sub_8027A78: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08027AD8 - ldr r0, [sp] - cmp r0, 0x2 - beq _08027AA2 - cmp r0, 0x2 - bgt _08027A96 - cmp r0, 0x1 - beq _08027A9A - b _08027AD8 -_08027A96: - cmp r0, 0x3 - bne _08027AD8 -_08027A9A: - movs r0, 0x2 - bl sub_8027184 - b _08027AD8 -_08027AA2: - ldr r0, _08027AB8 - ldr r0, [r0] - ldr r0, [r0, 0x18] - ldrb r0, [r0, 0x4] - subs r0, 0x44 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08027ABC - movs r0, 0x1 - b _08027ABE - .align 2, 0 -_08027AB8: .4byte gUnknown_203B2BC -_08027ABC: - movs r0, 0 -_08027ABE: - cmp r0, 0 - beq _08027ACA - movs r0, 0x9 - bl sub_8027184 - b _08027AD8 -_08027ACA: - bl sub_8027EB8 - ldr r0, _08027AE0 - ldr r0, [r0] - ldr r0, [r0, 0x18] - bl sub_808D31C -_08027AD8: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08027AE0: .4byte gUnknown_203B2BC - thumb_func_end sub_8027A78 - - thumb_func_start sub_8027AE4 -sub_8027AE4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08027B1C - ldr r0, [sp] - cmp r0, 0x2 - beq _08027B0E - cmp r0, 0x2 - bgt _08027B02 - cmp r0, 0x1 - beq _08027B06 - b _08027B1C -_08027B02: - cmp r0, 0x3 - bne _08027B1C -_08027B06: - movs r0, 0x2 - bl sub_8027184 - b _08027B1C -_08027B0E: - bl sub_8027EB8 - ldr r0, _08027B24 - ldr r0, [r0] - ldr r0, [r0, 0x18] - bl sub_808D31C -_08027B1C: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08027B24: .4byte gUnknown_203B2BC - thumb_func_end sub_8027AE4 - - thumb_func_start sub_8027B28 -sub_8027B28: - push {r4,lr} - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x4 - bhi _08027BD2 - lsls r0, 2 - ldr r1, _08027B40 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08027B40: .4byte _08027B44 - .align 2, 0 -_08027B44: - .4byte _08027BD2 - .4byte _08027BD2 - .4byte _08027BC8 - .4byte _08027B58 - .4byte _08027B8C -_08027B58: - bl sub_801A8AC - ldr r4, _08027B84 - ldr r2, [r4] - str r0, [r2, 0xC] - ldr r3, _08027B88 - ldr r1, [r3] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x2] - strb r0, [r2, 0x10] - ldr r2, [r4] - ldr r1, [r3] - ldr r0, [r2, 0xC] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - strb r0, [r2, 0x11] - movs r0, 0xC - bl sub_8027184 - b _08027BD2 - .align 2, 0 -_08027B84: .4byte gUnknown_203B2BC -_08027B88: .4byte gUnknown_203B460 -_08027B8C: - bl sub_801A8AC - ldr r4, _08027BC0 - ldr r2, [r4] - str r0, [r2, 0xC] - ldr r3, _08027BC4 - ldr r1, [r3] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x2] - strb r0, [r2, 0x10] - ldr r2, [r4] - ldr r1, [r3] - ldr r0, [r2, 0xC] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - strb r0, [r2, 0x11] - movs r0, 0 - bl sub_8099690 - movs r0, 0xD - bl sub_8027184 - b _08027BD2 - .align 2, 0 -_08027BC0: .4byte gUnknown_203B2BC -_08027BC4: .4byte gUnknown_203B460 -_08027BC8: - bl sub_801A928 - movs r0, 0x2 - bl sub_8027184 -_08027BD2: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8027B28 - - thumb_func_start sub_8027BD8 -sub_8027BD8: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801A6E8 - ldr r4, _08027C18 - ldr r0, [r4] - adds r0, 0x7C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08027C08 - ldr r0, [r4] - adds r0, 0x7C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08027C08 - ldr r0, [r4] - str r1, [r0, 0x74] -_08027C08: - ldr r0, [sp] - cmp r0, 0x4 - beq _08027C68 - cmp r0, 0x4 - bgt _08027C1C - cmp r0, 0x1 - beq _08027C76 - b _08027C7C - .align 2, 0 -_08027C18: .4byte gUnknown_203B2BC -_08027C1C: - cmp r0, 0xA - bne _08027C7C - ldr r0, _08027C60 - bl sub_8011988 - ldr r4, _08027C64 - ldr r0, [r4] - ldr r0, [r0, 0xC] - bl sub_80911F8 - bl sub_80910B4 - ldr r1, [r4] - ldrb r0, [r1, 0x14] - cmp r0, 0 - beq _08027C44 - adds r0, r1, 0 - adds r0, 0x14 - bl sub_8091274 -_08027C44: - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x10 - bl sub_808D800 - bl sub_801A928 - bl nullsub_104 - movs r0, 0x2 - bl sub_8027184 - b _08027C7C - .align 2, 0 -_08027C60: .4byte 0x0000014d -_08027C64: .4byte gUnknown_203B2BC -_08027C68: - movs r0, 0 - bl sub_8099690 - movs r0, 0xD - bl sub_8027184 - b _08027C7C -_08027C76: - movs r0, 0xB - bl sub_8027184 -_08027C7C: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8027BD8 - - thumb_func_start sub_8027C84 -sub_8027C84: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _08027C9C - cmp r0, 0x3 - bhi _08027C9C - bl sub_801B450 - movs r0, 0xB - bl sub_8027184 -_08027C9C: - pop {r0} - bx r0 - thumb_func_end sub_8027C84 - - thumb_func_start sub_8027CA0 -sub_8027CA0: - push {lr} - movs r0, 0x1 - bl sub_801EF38 - cmp r0, 0x4 - bhi _08027CFA - lsls r0, 2 - ldr r1, _08027CB8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08027CB8: .4byte _08027CBC - .align 2, 0 -_08027CBC: - .4byte _08027CFA - .4byte _08027CFA - .4byte _08027CF0 - .4byte _08027CD0 - .4byte _08027CD0 -_08027CD0: - bl sub_801F194 - ldr r1, _08027CEC - ldr r1, [r1] - str r0, [r1, 0x20] - lsls r0, 3 - adds r0, r1, r0 - ldrh r0, [r0, 0x2A] - strh r0, [r1, 0x24] - movs r0, 0x10 - bl sub_8027184 - b _08027CFA - .align 2, 0 -_08027CEC: .4byte gUnknown_203B2BC -_08027CF0: - bl sub_801F214 - movs r0, 0x2 - bl sub_8027184 -_08027CFA: - pop {r0} - bx r0 - thumb_func_end sub_8027CA0 - - thumb_func_start sub_8027D00 -sub_8027D00: - push {lr} - bl sub_801F890 - cmp r0, 0x1 - bls _08027D18 - cmp r0, 0x3 - bhi _08027D18 - bl sub_801F8D0 - movs r0, 0xF - bl sub_8027184 -_08027D18: - pop {r0} - bx r0 - thumb_func_end sub_8027D00 - - thumb_func_start sub_8027D1C -sub_8027D1C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08027D34 - ldr r0, _08027D3C - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_8027184 -_08027D34: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08027D3C: .4byte gUnknown_203B2BC - thumb_func_end sub_8027D1C - - thumb_func_start sub_8027D40 -sub_8027D40: - push {r4-r6,lr} - sub sp, 0x14 - adds r6, r0, 0 - adds r5, r1, 0 - bl sub_8008C54 - adds r0, r6, 0 - bl sub_80073B8 - add r4, sp, 0x10 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8090B64 - movs r5, 0 - str r5, [sp, 0x4] - add r0, sp, 0x4 - strb r5, [r0, 0x4] - adds r1, r0, 0 - movs r0, 0x1 - strb r0, [r1, 0x8] - strb r0, [r4] - ldr r0, _08027D94 - adds r1, r4, 0 - add r2, sp, 0x4 - bl sub_8090E14 - ldr r2, _08027D98 - str r5, [sp] - movs r0, 0x4 - movs r1, 0x3 - adds r3, r6, 0 - bl sub_8014FF0 - adds r0, r6, 0 - bl sub_80073E0 - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08027D94: .4byte gUnknown_202DE58 -_08027D98: .4byte gUnknown_80DD958 - thumb_func_end sub_8027D40 - - thumb_func_start sub_8027D9C -sub_8027D9C: - push {lr} - adds r1, r0, 0 - ldrb r0, [r1, 0x2] - cmp r0, 0 - bne _08027DC0 - movs r2, 0 - ldrb r0, [r1, 0x4] - cmp r0, 0x41 - bne _08027DB0 - movs r2, 0x1 -_08027DB0: - cmp r2, 0 - beq _08027DC4 - movs r0, 0x8 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _08027DC4 -_08027DC0: - movs r0, 0 - b _08027DC6 -_08027DC4: - movs r0, 0x1 -_08027DC6: - pop {r1} - bx r1 - thumb_func_end sub_8027D9C - - thumb_func_start sub_8027DCC -sub_8027DCC: - push {r4,lr} - adds r4, r0, 0 - bl sub_808D3BC - cmp r0, r4 - beq _08027E0E - bl sub_808D3F8 - cmp r0, r4 - beq _08027E0E - ldrb r0, [r4, 0x2] - cmp r0, 0 - bne _08027E0E - movs r1, 0 - ldrb r0, [r4, 0x4] - cmp r0, 0x41 - bne _08027DF0 - movs r1, 0x1 -_08027DF0: - cmp r1, 0 - beq _08027E00 - movs r0, 0x8 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _08027E0E -_08027E00: - adds r0, r4, 0 - bl sub_8027E18 - cmp r0, 0x3 - beq _08027E0E - movs r0, 0x1 - b _08027E10 -_08027E0E: - movs r0, 0 -_08027E10: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8027DCC - - thumb_func_start sub_8027E18 -sub_8027E18: - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x28 - ldrb r0, [r0] - cmp r0, 0 - bne _08027E28 - movs r0, 0 - b _08027E46 -_08027E28: - bl sub_8090A34 - cmp r0, 0x13 - bgt _08027E34 - movs r0, 0x1 - b _08027E46 -_08027E34: - adds r0, r4, 0 - bl sub_8027E4C - lsls r0, 24 - cmp r0, 0 - bne _08027E44 - movs r0, 0x3 - b _08027E46 -_08027E44: - movs r0, 0x2 -_08027E46: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8027E18 - - thumb_func_start sub_8027E4C -sub_8027E4C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r5, 0 - adds r4, 0x28 - ldrb r0, [r4] - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - beq _08027E88 - ldrb r0, [r4] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _08027E94 - ldr r0, _08027E8C - ldr r1, [r0] - ldrb r0, [r4] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r1, [r1] - adds r0, r5, 0 - adds r0, 0x29 - ldrb r0, [r0] - adds r1, r0 - ldr r0, _08027E90 - cmp r1, r0 - ble _08027EA8 -_08027E88: - movs r0, 0 - b _08027EAA - .align 2, 0 -_08027E8C: .4byte gUnknown_203B460 -_08027E90: .4byte 0x000003e7 -_08027E94: - ldr r0, _08027EB0 - ldr r1, [r0] - ldrb r0, [r4] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r1, [r1] - ldr r0, _08027EB4 - cmp r1, r0 - bhi _08027E88 -_08027EA8: - movs r0, 0x1 -_08027EAA: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08027EB0: .4byte gUnknown_203B460 -_08027EB4: .4byte 0x000003e6 - thumb_func_end sub_8027E4C - - thumb_func_start sub_8027EB8 -sub_8027EB8: - push {r4,lr} - ldr r4, _08027ED4 - ldr r0, [r4] - ldr r0, [r0, 0x18] - bl sub_8027E18 - cmp r0, 0x1 - beq _08027ED8 - cmp r0, 0x1 - bcc _08027F7C - cmp r0, 0x2 - beq _08027F0C - b _08027F7C - .align 2, 0 -_08027ED4: .4byte gUnknown_203B2BC -_08027ED8: - ldr r0, _08027F08 - bl sub_8011988 - ldr r0, [r4] - adds r0, 0x14 - bl sub_8091274 - bl sub_80910B4 - ldr r0, [r4] - movs r1, 0 - strb r1, [r0, 0x14] - ldr r0, [r4] - strb r1, [r0, 0x15] - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D800 - movs r0, 0x6 - bl sub_8027184 - b _08027F82 - .align 2, 0 -_08027F08: .4byte 0x0000014d -_08027F0C: - ldr r0, _08027F38 - bl sub_8011988 - ldr r0, [r4] - ldrb r0, [r0, 0x14] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _08027F40 - ldr r0, _08027F3C - ldr r1, [r0] - ldr r2, [r4] - ldrb r0, [r2, 0x14] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r0, [r1] - ldrb r2, [r2, 0x15] - adds r0, r2 - b _08027F52 - .align 2, 0 -_08027F38: .4byte 0x0000014d -_08027F3C: .4byte gUnknown_203B460 -_08027F40: - ldr r0, _08027F74 - ldr r1, [r0] - ldr r0, [r4] - ldrb r0, [r0, 0x14] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 -_08027F52: - strh r0, [r1] - ldr r1, _08027F78 - ldr r0, [r1] - movs r2, 0 - strb r2, [r0, 0x14] - ldr r0, [r1] - strb r2, [r0, 0x15] - ldr r1, [r1] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D800 - movs r0, 0x7 - bl sub_8027184 - b _08027F82 - .align 2, 0 -_08027F74: .4byte gUnknown_203B460 -_08027F78: .4byte gUnknown_203B2BC -_08027F7C: - movs r0, 0x2 - bl sub_8027184 -_08027F82: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8027EB8 - - thumb_func_start sub_8027F88 -sub_8027F88: - push {r4-r6,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _08028050 - movs r4, 0xA9 - lsls r4, 3 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 - ldr r1, [r5] - ldr r2, _08028054 - adds r0, r1, r2 - movs r6, 0 - str r6, [r0] - movs r3, 0x86 - lsls r3, 2 - adds r1, r3 - movs r0, 0xFF - strb r0, [r1] - ldr r0, [r5] - ldr r1, _08028058 - adds r0, r1 - ldr r1, _0802805C - strh r1, [r0] - ldr r0, _08028060 - movs r4, 0x98 - lsls r4, 1 - adds r1, r4, 0 - bl sub_808D8E0 - adds r0, r4, 0 - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _08028064 - bl strcpy - adds r0, r4, 0 - bl sub_808DDD0 - ldr r2, [r5] - movs r3, 0x84 - lsls r3, 3 - adds r1, r2, r3 - str r0, [r1] - adds r3, 0x4 - adds r1, r2, r3 - ldr r0, [r0, 0x4] - str r0, [r1] - ldr r0, _08028068 - adds r2, r0 - strb r6, [r2] - ldr r0, [r5] - ldr r1, _0802806C - adds r0, r1 - strb r6, [r0] - ldr r0, [r5] - ldr r2, _08028070 - adds r0, r2 - strb r6, [r0] - ldr r1, [r5] - adds r3, 0x4 - adds r2, r1, r3 - movs r0, 0x2 - strh r0, [r2] - ldr r0, _08028074 - adds r1, r0 - movs r0, 0x8 - strh r0, [r1] - movs r2, 0 - movs r3, 0 - adds r1, r5, 0 -_0802802E: - ldr r0, [r5] - adds r0, 0x8 - adds r0, r2 - strb r3, [r0] - adds r2, 0x1 - cmp r2, 0x35 - ble _0802802E - ldr r1, [r1] - movs r0, 0x3D - str r0, [r1] - movs r0, 0 - bl sub_8028B04 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08028050: .4byte gUnknown_203B2C0 -_08028054: .4byte 0x0000053c -_08028058: .4byte 0x00000544 -_0802805C: .4byte 0x0000ffff -_08028060: .4byte gUnknown_202E5D8 -_08028064: .4byte gUnknown_202DF98 -_08028068: .4byte 0x0000042c -_0802806C: .4byte 0x0000042d -_08028070: .4byte 0x0000042e -_08028074: .4byte 0x0000042a - thumb_func_end sub_8027F88 - - thumb_func_start sub_8028078 -sub_8028078: - push {lr} - ldr r0, _08028090 - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r0, 0x3C - bls _08028086 - b _080282D4 -_08028086: - lsls r0, 2 - ldr r1, _08028094 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08028090: .4byte gUnknown_203B2C0 -_08028094: .4byte _08028098 - .align 2, 0 -_08028098: - .4byte _080282C4 - .4byte _080282C4 - .4byte _080282CA - .4byte _080282D0 - .4byte _08028222 - .4byte _08028234 - .4byte _08028228 - .4byte _0802822E - .4byte _0802823A - .4byte _080281FE - .4byte _08028272 - .4byte _08028278 - .4byte _0802828C - .4byte _0802827E - .4byte _0802828C - .4byte _0802827E - .4byte _0802828C - .4byte _08028286 - .4byte _08028294 - .4byte _0802829A - .4byte _080282B2 - .4byte _080282B8 - .4byte _080282BE - .4byte _080282A0 - .4byte _080282A6 - .4byte _080282AC - .4byte _08028240 - .4byte _08028248 - .4byte _0802824E - .4byte _0802824E - .4byte _0802825A - .4byte _0802826C - .4byte _08028260 - .4byte _08028266 - .4byte _08028254 - .4byte _08028204 - .4byte _0802820A - .4byte _080282CA - .4byte _08028210 - .4byte _08028216 - .4byte _0802821C - .4byte _080281E0 - .4byte _080281F2 - .4byte _080281E6 - .4byte _080281EC - .4byte _080281DA - .4byte _080281D4 - .4byte _080281F8 - .4byte _080281CE - .4byte _080281C2 - .4byte _080281AA - .4byte _080281B0 - .4byte _080281B6 - .4byte _080281BC - .4byte _080281C8 - .4byte _080281A4 - .4byte _0802819E - .4byte _080282CA - .4byte _08028192 - .4byte _08028198 - .4byte _0802818C -_0802818C: - bl sub_8029B34 - b _080282D4 -_08028192: - bl sub_8029AD8 - b _080282D4 -_08028198: - bl sub_8029AF4 - b _080282D4 -_0802819E: - bl sub_8029A88 - b _080282D4 -_080281A4: - bl sub_8029AB0 - b _080282D4 -_080281AA: - bl sub_80297B8 - b _080282D4 -_080281B0: - bl sub_80297D4 - b _080282D4 -_080281B6: - bl sub_8029884 - b _080282D4 -_080281BC: - bl sub_8029944 - b _080282D4 -_080281C2: - bl sub_80299AC - b _080282D4 -_080281C8: - bl sub_80299D8 - b _080282D4 -_080281CE: - bl sub_8029A6C - b _080282D4 -_080281D4: - bl sub_8029A18 - b _080282D4 -_080281DA: - bl sub_80295A8 - b _080282D4 -_080281E0: - bl sub_8029668 - b _080282D4 -_080281E6: - bl sub_8029684 - b _080282D4 -_080281EC: - bl sub_8029740 - b _080282D4 -_080281F2: - bl sub_80295D8 - b _080282D4 -_080281F8: - bl sub_802979C - b _080282D4 -_080281FE: - bl sub_8029358 - b _080282D4 -_08028204: - bl sub_8029374 - b _080282D4 -_0802820A: - bl sub_802939C - b _080282D4 -_08028210: - bl sub_80293D8 - b _080282D4 -_08028216: - bl sub_80293F4 - b _080282D4 -_0802821C: - bl sub_802955C - b _080282D4 -_08028222: - bl sub_80292A4 - b _080282D4 -_08028228: - bl sub_80292EC - b _080282D4 -_0802822E: - bl sub_802933C - b _080282D4 -_08028234: - bl sub_802958C - b _080282D4 -_0802823A: - bl sub_8029208 - b _080282D4 -_08028240: - movs r0, 0x1 - bl sub_8028DE8 - b _080282D4 -_08028248: - bl sub_8028F80 - b _080282D4 -_0802824E: - bl sub_8028FC0 - b _080282D4 -_08028254: - bl sub_8028FDC - b _080282D4 -_0802825A: - bl sub_80290D4 - b _080282D4 -_08028260: - bl sub_80290F0 - b _080282D4 -_08028266: - bl sub_80291AC - b _080282D4 -_0802826C: - bl sub_8029044 - b _080282D4 -_08028272: - bl sub_8028CFC - b _080282D4 -_08028278: - bl sub_8028D4C - b _080282D4 -_0802827E: - movs r0, 0xA - bl sub_8028DE8 - b _080282D4 -_08028286: - bl sub_8028E08 - b _080282D4 -_0802828C: - movs r0, 0x19 - bl sub_8028DE8 - b _080282D4 -_08028294: - bl sub_8028E24 - b _080282D4 -_0802829A: - bl sub_8028E54 - b _080282D4 -_080282A0: - bl sub_8028E84 - b _080282D4 -_080282A6: - bl sub_8028EAC - b _080282D4 -_080282AC: - bl sub_8028ED4 - b _080282D4 -_080282B2: - bl sub_8028F04 - b _080282D4 -_080282B8: - bl sub_8028F30 - b _080282D4 -_080282BE: - bl sub_8028F58 - b _080282D4 -_080282C4: - bl sub_8028BF0 - b _080282D4 -_080282CA: - bl sub_8028CE0 - b _080282D4 -_080282D0: - movs r0, 0x3 - b _080282D6 -_080282D4: - movs r0, 0 -_080282D6: - pop {r1} - bx r1 - thumb_func_end sub_8028078 - - thumb_func_start sub_80282DC -sub_80282DC: - ldr r1, _080282F4 - ldr r1, [r1] - movs r3, 0x86 - lsls r3, 2 - adds r2, r1, r3 - ldrb r2, [r2] - strb r2, [r0] - ldr r0, _080282F8 - adds r1, r0 - ldr r0, [r1] - bx lr - .align 2, 0 -_080282F4: .4byte gUnknown_203B2C0 -_080282F8: .4byte 0x0000053c - thumb_func_end sub_80282DC - - thumb_func_start sub_80282FC -sub_80282FC: - push {r4,lr} - ldr r4, _08028340 - ldr r0, [r4] - cmp r0, 0 - beq _08028338 - movs r1, 0x84 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - bl sub_8031E10 - bl sub_8023C60 - bl sub_803084C - bl sub_80155F0 - bl sub_80310B4 - bl sub_8030DE4 - bl sub_802453C -_08028338: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08028340: .4byte gUnknown_203B2C0 - thumb_func_end sub_80282FC - - thumb_func_start nullsub_130 -nullsub_130: - bx lr - thumb_func_end nullsub_130 - - thumb_func_start sub_8028348 -sub_8028348: - push {r4-r6,lr} - sub sp, 0x14 - ldr r1, _08028368 - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r6, r1, 0 - cmp r0, 0x3C - bls _0802835C - bl _08028AF2 -_0802835C: - lsls r0, 2 - ldr r1, _0802836C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08028368: .4byte gUnknown_203B2C0 -_0802836C: .4byte _08028370 - .align 2, 0 -_08028370: - .4byte _08028A84 - .4byte _08028AB4 - .4byte _08028AE0 - .4byte _08028AF2 - .4byte _08028650 - .4byte _08028660 - .4byte _08028678 - .4byte _08028AF2 - .4byte _08028802 - .4byte _08028640 - .4byte _0802890C - .4byte _08028948 - .4byte _08028988 - .4byte _08028978 - .4byte _080289A0 - .4byte _08028990 - .4byte _080289B8 - .4byte _080289B0 - .4byte _080289C8 - .4byte _080289E8 - .4byte _08028A48 - .4byte _08028A58 - .4byte _08028A68 - .4byte _080289F8 - .4byte _08028A08 - .4byte _08028A18 - .4byte _08028850 - .4byte _08028860 - .4byte _08028868 - .4byte _08028878 - .4byte _08028890 - .4byte _080288A0 - .4byte _080288C6 - .4byte _08028AF2 - .4byte _08028888 - .4byte _08028790 - .4byte _08028AF2 - .4byte _080287C4 - .4byte _080287D4 - .4byte _080287DC - .4byte _08028AF2 - .4byte _080285CC - .4byte _080285DC - .4byte _080288C6 - .4byte _08028AF2 - .4byte _080285AC - .4byte _08028610 - .4byte _080285F8 - .4byte _08028600 - .4byte _0802856C - .4byte _080284F4 - .4byte _0802850C - .4byte _08028532 - .4byte _08028AF2 - .4byte _0802859C - .4byte _080284B8 - .4byte _080284A8 - .4byte _080284EC - .4byte _080284A0 - .4byte _08028464 - .4byte _08028490 -_08028464: - ldr r0, [r6] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r6] - movs r2, 0x86 - lsls r2, 2 - adds r0, r2 - ldrb r0, [r0] - movs r1, 0 - bl sub_8031D70 - b _08028AF2 -_08028490: - ldr r0, _0802849C - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _08028A72 - .align 2, 0 -_0802849C: .4byte gUnknown_80DDBA8 -_080284A0: - ldr r0, _080284A4 - b _08028A6A - .align 2, 0 -_080284A4: .4byte gUnknown_80DDBFC -_080284A8: - ldr r0, _080284B4 - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _08028A72 - .align 2, 0 -_080284B4: .4byte gUnknown_80DDC30 -_080284B8: - ldr r0, [r6] - ldr r2, _080284D0 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0xE - bne _080284C6 - b _08028AF2 -_080284C6: - cmp r0, 0xE - bhi _080284D4 - cmp r0, 0xD - beq _080284DA - b _08028AF2 - .align 2, 0 -_080284D0: .4byte 0x00000534 -_080284D4: - cmp r0, 0x10 - bls _080284DA - b _08028AF2 -_080284DA: - ldr r0, _080284E8 - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _08028A72 - .align 2, 0 -_080284E8: .4byte gUnknown_80DDC70 -_080284EC: - ldr r0, _080284F0 - b _08028A6A - .align 2, 0 -_080284F0: .4byte gUnknown_80DDC30 -_080284F4: - ldr r0, _08028504 - ldr r3, _08028508 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _08028AF2 - .align 2, 0 -_08028504: .4byte gUnknown_80DDCBC -_08028508: .4byte 0x00000101 -_0802850C: - bl sub_8023CE8 - cmp r0, 0 - beq _08028516 - b _08028AF2 -_08028516: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - movs r3, 0x9 - bl sub_8023868 - b _08028AF2 -_08028532: - ldr r0, [r6] - movs r4, 0xD7 - lsls r4, 2 - adds r0, r4 - bl sub_8006518 - ldr r1, [r6] - movs r5, 0x87 - lsls r5, 2 - adds r0, r1, r5 - adds r1, r4 - ldr r3, _08028564 - ldr r2, _08028568 - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0 - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r2, 0x3 - bl SetMenuItems - bl sub_8023DA4 - b _080288F6 - .align 2, 0 -_08028564: .4byte gUnknown_80DDAE4 -_08028568: .4byte gUnknown_80DDAFC -_0802856C: - ldr r0, _08028594 - ldr r3, _08028598 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0xA - bl sub_8014248 - b _08028AF2 - .align 2, 0 -_08028594: .4byte gUnknown_80DDD2C -_08028598: .4byte gUnknown_80DDAA0 -_0802859C: - ldr r0, _080285A4 - ldr r3, _080285A8 - b _08028A1C - .align 2, 0 -_080285A4: .4byte gUnknown_80DDD88 -_080285A8: .4byte gUnknown_80DDA80 -_080285AC: - ldr r0, _080285C4 - ldr r3, _080285C8 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 - b _08028A2E - .align 2, 0 -_080285C4: .4byte gUnknown_80DDDBC -_080285C8: .4byte gUnknown_80DDA64 -_080285CC: - ldr r0, _080285D8 - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _08028A72 - .align 2, 0 -_080285D8: .4byte gUnknown_80DDDD8 -_080285DC: - bl sub_8030894 - cmp r0, 0 - beq _080285E6 - b _08028AF2 -_080285E6: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x4 - b _080288BA -_080285F8: - ldr r0, _080285FC - b _08028A6A - .align 2, 0 -_080285FC: .4byte gUnknown_80DDE20 -_08028600: - ldr r0, _0802860C - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _08028A72 - .align 2, 0 -_0802860C: .4byte gUnknown_80DDE58 -_08028610: - ldr r0, _08028638 - ldr r3, _0802863C - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x11 - bl sub_8014248 - b _08028AF2 - .align 2, 0 -_08028638: .4byte gUnknown_80DDEC0 -_0802863C: .4byte gUnknown_80DDB60 -_08028640: - ldr r0, _0802864C - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _08028A72 - .align 2, 0 -_0802864C: .4byte gUnknown_80DDF2C -_08028650: - ldr r0, _08028658 - ldr r3, _0802865C - b _08028A1C - .align 2, 0 -_08028658: .4byte gUnknown_80DDFB8 -_0802865C: .4byte gUnknown_80DDA48 -_08028660: - movs r0, 0 - bl nullsub_23 - ldr r0, _08028674 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_80141B4 - b _08028AF2 - .align 2, 0 -_08028674: .4byte gUnknown_80DE01C -_08028678: - ldr r1, [r6] - movs r0, 0 - str r0, [r1, 0x44] - bl sub_8011830 - ldr r0, [r6] - ldr r0, [r0, 0x40] - bl sub_8037B28 - adds r4, r0, 0 - ldr r0, [r6] - str r4, [r0, 0x44] - cmp r4, 0 - bne _0802878A - ldr r1, [r0, 0x40] - cmp r1, 0x3 - beq _080286A0 - cmp r1, 0x4 - beq _080286C2 - b _08028748 -_080286A0: - adds r0, 0x48 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - adds r0, 0x78 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r2, [r6] - ldr r0, [r2, 0x40] - adds r1, r2, 0 - adds r1, 0x48 - adds r2, 0x78 - b _08028740 -_080286C2: - adds r0, 0xA8 - movs r1, 0 - movs r2, 0x88 - bl MemoryFill8 - ldr r0, [r6] - movs r5, 0x98 - lsls r5, 1 - adds r0, r5 - movs r1, 0 - movs r2, 0x88 - bl MemoryFill8 - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0xE0 - strh r4, [r0] - movs r2, 0xB4 - lsls r2, 1 - adds r0, r1, r2 - strh r4, [r0] - movs r3, 0x86 - lsls r3, 2 - adds r0, r1, r3 - ldrb r0, [r0] - bl sub_8095228 - ldr r1, [r6] - adds r1, 0xA8 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r2, [r6] - ldr r4, _08028760 - adds r3, r2, r4 - movs r0, 0 - ldrsh r1, [r3, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08028736 - adds r0, r2, 0 - adds r0, 0xD8 - ldr r1, _08028764 - ldr r1, [r1] - movs r2, 0 - ldrsh r3, [r3, r2] - movs r2, 0x58 - muls r2, r3 - adds r1, r2 - movs r2, 0x58 - bl memcpy -_08028736: - ldr r2, [r6] - ldr r0, [r2, 0x40] - adds r1, r2, 0 - adds r1, 0xA8 - adds r2, r5 -_08028740: - bl sub_8037D64 - ldr r1, [r6] - str r0, [r1, 0x44] -_08028748: - ldr r4, _08028768 - ldr r2, [r4] - ldr r0, [r2, 0x44] - cmp r0, 0 - bne _0802878A - ldr r0, [r2, 0x40] - cmp r0, 0x3 - beq _0802876C - cmp r0, 0x4 - beq _08028776 - b _0802878A - .align 2, 0 -_08028760: .4byte 0x00000544 -_08028764: .4byte gUnknown_203B45C -_08028768: .4byte gUnknown_203B2C0 -_0802876C: - adds r1, r2, 0 - adds r1, 0x48 - adds r2, 0x78 - movs r0, 0x3 - b _08028782 -_08028776: - adds r1, r2, 0 - adds r1, 0xA8 - movs r3, 0x98 - lsls r3, 1 - adds r2, r3 - movs r0, 0x4 -_08028782: - bl sub_80381F4 - ldr r1, [r4] - str r0, [r1, 0x44] -_0802878A: - bl sub_8011854 - b _08028AF2 -_08028790: - ldr r0, [r6] - ldr r4, _080287A8 - adds r0, r4 - ldr r0, [r0] - cmp r0, 0xE - bne _0802879E - b _08028AF2 -_0802879E: - cmp r0, 0xE - bhi _080287AC - cmp r0, 0xD - beq _080287B2 - b _08028AF2 - .align 2, 0 -_080287A8: .4byte 0x00000534 -_080287AC: - cmp r0, 0x10 - bls _080287B2 - b _08028AF2 -_080287B2: - ldr r0, _080287C0 - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _08028A72 - .align 2, 0 -_080287C0: .4byte gUnknown_80DE06C -_080287C4: - ldr r0, _080287D0 - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _08028A72 - .align 2, 0 -_080287D0: .4byte gUnknown_80DE0C0 -_080287D4: - ldr r0, _080287D8 - b _08028A6A - .align 2, 0 -_080287D8: .4byte gUnknown_80DE124 -_080287DC: - ldr r0, [r6] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, [r6] - adds r1, 0x8 - movs r0, 0x4 - bl sub_80151C0 - b _08028AF2 -_08028802: - ldr r4, [r6] - movs r2, 0xA7 - lsls r2, 3 - adds r0, r4, r2 - ldr r2, [r0] - cmp r2, 0 - beq _08028816 - cmp r2, 0x2 - beq _08028824 - b _08028AF2 -_08028816: - ldr r0, _0802881C - ldr r3, _08028820 - b _0802882A - .align 2, 0 -_0802881C: .4byte gUnknown_80DE178 -_08028820: .4byte gUnknown_80DDB24 -_08028824: - ldr r0, _08028848 - ldr r3, _0802884C - movs r2, 0 -_0802882A: - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - movs r2, 0x84 - lsls r2, 3 - adds r1, r4, r2 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0xD - bl sub_8014248 - b _08028AF2 - .align 2, 0 -_08028848: .4byte gUnknown_80DE1B4 -_0802884C: .4byte gUnknown_80DDB24 -_08028850: - ldr r0, _0802885C - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _08028A72 - .align 2, 0 -_0802885C: .4byte gUnknown_80DE1E4 -_08028860: - ldr r0, _08028864 - b _08028A6A - .align 2, 0 -_08028864: .4byte gUnknown_80DE280 -_08028868: - ldr r0, _08028874 - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _08028A72 - .align 2, 0 -_08028874: .4byte gUnknown_80DE2B0 -_08028878: - ldr r0, _08028884 - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _08028A72 - .align 2, 0 -_08028884: .4byte gUnknown_80DE368 -_08028888: - ldr r0, _0802888C - b _08028A1A - .align 2, 0 -_0802888C: .4byte gUnknown_80DDDBC -_08028890: - ldr r0, _0802889C - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _08028A72 - .align 2, 0 -_0802889C: .4byte gUnknown_80DE430 -_080288A0: - bl sub_8030894 - cmp r0, 0 - beq _080288AA - b _08028AF2 -_080288AA: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x2 -_080288BA: - movs r1, 0 - movs r2, 0 - movs r3, 0x6 - bl sub_80306A8 - b _08028AF2 -_080288C6: - ldr r0, [r6] - movs r4, 0xD7 - lsls r4, 2 - adds r0, r4 - bl sub_8006518 - ldr r1, [r6] - movs r5, 0x87 - lsls r5, 2 - adds r0, r1, r5 - adds r1, r4 - ldr r3, _08028904 - ldr r2, _08028908 - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0 - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r2, 0x3 - bl SetMenuItems - bl sub_803092C -_080288F6: - ldr r0, [r6] - adds r0, r5 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - b _08028AF2 - .align 2, 0 -_08028904: .4byte gUnknown_80DDACC -_08028908: .4byte gUnknown_80DDAFC -_0802890C: - bl sub_8095350 - ldr r1, _0802893C - ldr r1, [r1] - movs r3, 0xA8 - lsls r3, 3 - adds r2, r1, r3 - str r0, [r2] - movs r4, 0xA7 - lsls r4, 3 - adds r1, r4 - ldr r1, [r1] - cmp r1, 0x6 - beq _08028940 - cmp r1, 0x6 - bls _0802892E - b _08028AF2 -_0802892E: - cmp r1, 0x5 - beq _08028934 - b _08028AF2 -_08028934: - movs r0, 0x2 - bl sub_8030F58 - b _08028AF2 - .align 2, 0 -_0802893C: .4byte gUnknown_203B2C0 -_08028940: - movs r0, 0x4 - bl sub_8030F58 - b _08028AF2 -_08028948: - ldr r0, _08028970 - ldr r3, _08028974 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x5 - bl sub_8014248 - b _08028AF2 - .align 2, 0 -_08028970: .4byte gUnknown_80DE48C -_08028974: .4byte gUnknown_80DD9EC -_08028978: - ldr r0, _08028984 - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _08028A72 - .align 2, 0 -_08028984: .4byte gUnknown_80DE4B8 -_08028988: - ldr r0, _0802898C - b _08028A6A - .align 2, 0 -_0802898C: .4byte gUnknown_80DE4F0 -_08028990: - ldr r0, _0802899C - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _08028A72 - .align 2, 0 -_0802899C: .4byte gUnknown_80DE524 -_080289A0: - ldr r0, _080289AC - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _08028A72 - .align 2, 0 -_080289AC: .4byte gUnknown_80DE614 -_080289B0: - ldr r0, _080289B4 - b _08028A6A - .align 2, 0 -_080289B4: .4byte gUnknown_80DE648 -_080289B8: - ldr r0, _080289C4 - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _08028A72 - .align 2, 0 -_080289C4: .4byte gUnknown_80DE694 -_080289C8: - ldr r0, _080289E0 - ldr r3, _080289E4 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 - b _08028A2E - .align 2, 0 -_080289E0: .4byte gUnknown_80DE6D4 -_080289E4: .4byte gUnknown_80DDA48 -_080289E8: - ldr r0, _080289F0 - ldr r3, _080289F4 - b _08028A1C - .align 2, 0 -_080289F0: .4byte gUnknown_80DE754 -_080289F4: .4byte gUnknown_80DDA48 -_080289F8: - ldr r0, _08028A04 - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _08028A72 - .align 2, 0 -_08028A04: .4byte gUnknown_80DE7B8 -_08028A08: - ldr r0, _08028A14 - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _08028A72 - .align 2, 0 -_08028A14: .4byte gUnknown_80DE7E8 -_08028A18: - ldr r0, _08028A40 -_08028A1A: - ldr r3, _08028A44 -_08028A1C: - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r4, 0x84 - lsls r4, 3 - adds r1, r4 -_08028A2E: - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x8 - bl sub_8014248 - b _08028AF2 - .align 2, 0 -_08028A40: .4byte gUnknown_80DE808 -_08028A44: .4byte gUnknown_80DDA64 -_08028A48: - ldr r0, _08028A54 - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _08028A72 - .align 2, 0 -_08028A54: .4byte gUnknown_80DE830 -_08028A58: - ldr r0, _08028A64 - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _08028A72 - .align 2, 0 -_08028A64: .4byte gUnknown_80DE864 -_08028A68: - ldr r0, _08028A7C -_08028A6A: - ldr r2, [r6] - movs r4, 0x84 - lsls r4, 3 - adds r2, r4 -_08028A72: - ldr r3, _08028A80 - movs r1, 0 - bl sub_80141B4 - b _08028AF2 - .align 2, 0 -_08028A7C: .4byte gUnknown_80DE7E8 -_08028A80: .4byte 0x0000010d -_08028A84: - ldr r0, _08028AAC - ldr r3, _08028AB0 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0 - bl sub_8014248 - b _08028AF2 - .align 2, 0 -_08028AAC: .4byte gUnknown_80DE8B4 -_08028AB0: .4byte gUnknown_80DD970 -_08028AB4: - ldr r0, _08028AD8 - ldr r3, _08028ADC - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r4, 0x84 - lsls r4, 3 - adds r1, r4 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _08028AF2 - .align 2, 0 -_08028AD8: .4byte gUnknown_80DE918 -_08028ADC: .4byte gUnknown_80DD970 -_08028AE0: - ldr r0, _08028AFC - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - ldr r3, _08028B00 - movs r1, 0 - bl sub_80141B4 -_08028AF2: - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08028AFC: .4byte gUnknown_80DE93C -_08028B00: .4byte 0x0000010d - thumb_func_end sub_8028348 - - thumb_func_start sub_8028B04 -sub_8028B04: - push {lr} - ldr r1, _08028B18 - ldr r1, [r1] - str r0, [r1, 0x4] - bl nullsub_130 - bl sub_8028348 - pop {r0} - bx r0 - .align 2, 0 -_08028B18: .4byte gUnknown_203B2C0 - thumb_func_end sub_8028B04 - - thumb_func_start sub_8028B1C -sub_8028B1C: - push {lr} - cmp r0, 0xF - bhi _08028BE0 - lsls r0, 2 - ldr r1, _08028B2C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08028B2C: .4byte _08028B30 - .align 2, 0 -_08028B30: - .4byte _08028BE0 - .4byte _08028BA8 - .4byte _08028BA8 - .4byte _08028B70 - .4byte _08028B78 - .4byte _08028BA8 - .4byte _08028B80 - .4byte _08028B88 - .4byte _08028BE0 - .4byte _08028B90 - .4byte _08028BE0 - .4byte _08028B98 - .4byte _08028BE0 - .4byte _08028BA0 - .4byte _08028BA8 - .4byte _08028BCC -_08028B70: - ldr r0, _08028B74 - b _08028BAA - .align 2, 0 -_08028B74: .4byte gUnknown_80DE98C -_08028B78: - ldr r0, _08028B7C - b _08028BAA - .align 2, 0 -_08028B7C: .4byte gUnknown_80DE9F0 -_08028B80: - ldr r0, _08028B84 - b _08028BAA - .align 2, 0 -_08028B84: .4byte gUnknown_80DEA58 -_08028B88: - ldr r0, _08028B8C - b _08028BAA - .align 2, 0 -_08028B8C: .4byte gUnknown_80DEAB4 -_08028B90: - ldr r0, _08028B94 - b _08028BAA - .align 2, 0 -_08028B94: .4byte gUnknown_80DEB18 -_08028B98: - ldr r0, _08028B9C - b _08028BAA - .align 2, 0 -_08028B9C: .4byte gUnknown_80DEB18 -_08028BA0: - ldr r0, _08028BA4 - b _08028BAA - .align 2, 0 -_08028BA4: .4byte gUnknown_80DEB54 -_08028BA8: - ldr r0, _08028BC0 -_08028BAA: - ldr r1, _08028BC4 - ldr r2, [r1] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - ldr r3, _08028BC8 - movs r1, 0 - bl sub_80141B4 - b _08028BE0 - .align 2, 0 -_08028BC0: .4byte gUnknown_80DE954 -_08028BC4: .4byte gUnknown_203B2C0 -_08028BC8: .4byte 0x0000010d -_08028BCC: - ldr r0, _08028BE4 - ldr r1, _08028BE8 - ldr r2, [r1] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - ldr r3, _08028BEC - movs r1, 0 - bl sub_80141B4 -_08028BE0: - pop {r0} - bx r0 - .align 2, 0 -_08028BE4: .4byte gUnknown_80DEC00 -_08028BE8: .4byte gUnknown_203B2C0 -_08028BEC: .4byte 0x0000010d - thumb_func_end sub_8028B1C - - thumb_func_start sub_8028BF0 -sub_8028BF0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028CDA - ldr r2, _08028C20 - ldr r0, [r2] - movs r1, 0x8 - str r1, [r0, 0x40] - ldr r1, _08028C24 - adds r0, r1 - ldr r1, _08028C28 - strh r1, [r0] - ldr r0, [sp] - cmp r0, 0xA - bhi _08028CDA - lsls r0, 2 - ldr r1, _08028C2C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08028C20: .4byte gUnknown_203B2C0 -_08028C24: .4byte 0x00000544 -_08028C28: .4byte 0x0000ffff -_08028C2C: .4byte _08028C30 - .align 2, 0 -_08028C30: - .4byte _08028C5C - .4byte _08028C88 - .4byte _08028CA2 - .4byte _08028CCC - .4byte _08028CDA - .4byte _08028CDA - .4byte _08028CDA - .4byte _08028CDA - .4byte _08028CDA - .4byte _08028CDA - .4byte _08028CD4 -_08028C5C: - ldr r0, [r2] - movs r1, 0x3 - str r1, [r0, 0x40] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - movs r1, 0 - str r1, [r0] - bl sub_8095190 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _08028C80 - movs r0, 0x8 - bl sub_8028B04 - b _08028CDA -_08028C80: - movs r0, 0x9 - bl sub_8028B04 - b _08028CDA -_08028C88: - movs r0, 0x2 - bl sub_8095324 - cmp r0, 0 - beq _08028C9A - movs r0, 0x1E - bl sub_8028B04 - b _08028CDA -_08028C9A: - movs r0, 0x1A - bl sub_8028B04 - b _08028CDA -_08028CA2: - ldr r0, [r2] - movs r1, 0x4 - str r1, [r0, 0x40] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - movs r1, 0x2 - str r1, [r0] - movs r0, 0x4 - bl sub_8095324 - cmp r0, 0 - beq _08028CC4 - movs r0, 0x29 - bl sub_8028B04 - b _08028CDA -_08028CC4: - movs r0, 0x2F - bl sub_8028B04 - b _08028CDA -_08028CCC: - movs r0, 0xB - bl sub_8028B04 - b _08028CDA -_08028CD4: - movs r0, 0x2 - bl sub_8028B04 -_08028CDA: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028BF0 - - thumb_func_start sub_8028CE0 -sub_8028CE0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028CF4 - movs r0, 0x3 - bl sub_8028B04 -_08028CF4: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028CE0 - - thumb_func_start sub_8028CFC -sub_8028CFC: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028D42 - bl sub_8031050 - cmp r0, 0x3 - bhi _08028D42 - cmp r0, 0x2 - bcc _08028D42 - bl sub_8095350 - adds r4, r0, 0 - bl sub_80310B4 - ldr r0, _08028D38 - ldr r0, [r0] - movs r1, 0xA8 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r4, r0 - beq _08028D3C - movs r0, 0x17 - bl sub_8028B04 - b _08028D42 - .align 2, 0 -_08028D38: .4byte gUnknown_203B2C0 -_08028D3C: - movs r0, 0x19 - bl sub_8028B04 -_08028D42: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8028CFC - - thumb_func_start sub_8028D4C -sub_8028D4C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028DE0 - ldr r0, _08028D78 - ldr r0, [r0] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - ldr r1, [sp] - str r1, [r0] - cmp r1, 0x6 - beq _08028DA2 - cmp r1, 0x6 - bgt _08028D7C - cmp r1, 0x5 - beq _08028D86 - b _08028DE0 - .align 2, 0 -_08028D78: .4byte gUnknown_203B2C0 -_08028D7C: - cmp r1, 0x7 - beq _08028DBE - cmp r1, 0xA - beq _08028DDA - b _08028DE0 -_08028D86: - movs r0, 0x2 - bl sub_8030C20 - lsls r0, 24 - cmp r0, 0 - beq _08028D9A - movs r0, 0xC - bl sub_8028B04 - b _08028DE0 -_08028D9A: - movs r0, 0xD - bl sub_8028B04 - b _08028DE0 -_08028DA2: - movs r0, 0x4 - bl sub_8030C20 - lsls r0, 24 - cmp r0, 0 - beq _08028DB6 - movs r0, 0xE - bl sub_8028B04 - b _08028DE0 -_08028DB6: - movs r0, 0xF - bl sub_8028B04 - b _08028DE0 -_08028DBE: - movs r0, 0 - bl sub_8030C20 - lsls r0, 24 - cmp r0, 0 - beq _08028DD2 - movs r0, 0x10 - bl sub_8028B04 - b _08028DE0 -_08028DD2: - movs r0, 0x11 - bl sub_8028B04 - b _08028DE0 -_08028DDA: - movs r0, 0x1 - bl sub_8028B04 -_08028DE0: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028D4C - - thumb_func_start sub_8028DE8 -sub_8028DE8: - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028DFE - adds r0, r4, 0 - bl sub_8028B04 -_08028DFE: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8028DE8 - - thumb_func_start sub_8028E08 -sub_8028E08: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028E1C - movs r0, 0x12 - bl sub_8028B04 -_08028E1C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028E08 - - thumb_func_start sub_8028E24 -sub_8028E24: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028E4C - ldr r0, [sp] - cmp r0, 0x8 - beq _08028E3E - cmp r0, 0xA - beq _08028E46 - b _08028E4C -_08028E3E: - movs r0, 0x13 - bl sub_8028B04 - b _08028E4C -_08028E46: - movs r0, 0x1 - bl sub_8028B04 -_08028E4C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028E24 - - thumb_func_start sub_8028E54 -sub_8028E54: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028E7C - ldr r0, [sp] - cmp r0, 0x8 - beq _08028E6E - cmp r0, 0xA - beq _08028E76 - b _08028E7C -_08028E6E: - movs r0, 0x14 - bl sub_8028B04 - b _08028E7C -_08028E76: - movs r0, 0x1 - bl sub_8028B04 -_08028E7C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028E54 - - thumb_func_start sub_8028E84 -sub_8028E84: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028EA4 - movs r0, 0x18 - bl sub_8028B04 - movs r0, 0x1 - bl sub_8011C28 - movs r0, 0 - bl sub_8012574 -_08028EA4: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028E84 - - thumb_func_start sub_8028EAC -sub_8028EAC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028ECE - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08028ECE - bl sub_8012750 - movs r0, 0x19 - bl sub_8028B04 -_08028ECE: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028EAC - - thumb_func_start sub_8028ED4 -sub_8028ED4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028EFE - ldr r0, [sp] - cmp r0, 0x8 - bne _08028EF0 - movs r0, 0xB - bl sub_8028B04 - b _08028EFE -_08028EF0: - cmp r0, 0x8 - blt _08028EFE - cmp r0, 0xA - bgt _08028EFE - movs r0, 0x2 - bl sub_8028B04 -_08028EFE: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028ED4 - - thumb_func_start sub_8028F04 -sub_8028F04: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028F28 - movs r4, 0 -_08028F14: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8095240 - adds r4, 0x1 - cmp r4, 0x1F - ble _08028F14 - movs r0, 0x15 - bl sub_8028B04 -_08028F28: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8028F04 - - thumb_func_start sub_8028F30 -sub_8028F30: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028F50 - movs r0, 0x16 - bl sub_8028B04 - movs r0, 0x1 - bl sub_8011C28 - movs r0, 0 - bl sub_8012574 -_08028F50: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028F30 - - thumb_func_start sub_8028F58 -sub_8028F58: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028F7A - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08028F7A - bl sub_8012750 - movs r0, 0x2 - bl sub_8028B04 -_08028F7A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028F58 - - thumb_func_start sub_8028F80 -sub_8028F80: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028FAE - ldr r4, _08028FB8 - ldr r0, [r4] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - bl sub_809927C - ldr r0, [r4] - ldr r1, _08028FBC - adds r0, r1 - movs r1, 0x1 - str r1, [r0] - movs r0, 0x3 - bl sub_8028B04 -_08028FAE: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08028FB8: .4byte gUnknown_203B2C0 -_08028FBC: .4byte 0x0000053c - thumb_func_end sub_8028F80 - - thumb_func_start sub_8028FC0 -sub_8028FC0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08028FD4 - movs r0, 0x1 - bl sub_8028B04 -_08028FD4: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8028FC0 - - thumb_func_start sub_8028FDC -sub_8028FDC: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802903C - ldr r0, [sp] - cmp r0, 0x8 - beq _08028FFC - cmp r0, 0x8 - blt _0802903C - cmp r0, 0xA - bgt _0802903C - movs r0, 0x1 - b _08029038 -_08028FFC: - ldr r0, _08029020 - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - bl sub_8095228 - adds r4, r0, 0 - ldrb r0, [r4, 0x4] - bl sub_80A2824 - lsls r0, 24 - cmp r0, 0 - bne _08029024 - movs r0, 0x1C - b _08029038 - .align 2, 0 -_08029020: .4byte gUnknown_203B2C0 -_08029024: - adds r0, r4, 0 - adds r0, 0x2C - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - bgt _08029036 - movs r0, 0x1D - b _08029038 -_08029036: - movs r0, 0x1B -_08029038: - bl sub_8028B04 -_0802903C: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8028FDC - - thumb_func_start sub_8029044 -sub_8029044: - push {r4,r5,lr} - movs r0, 0x1 - bl sub_8030768 - cmp r0, 0x3 - beq _0802906C - cmp r0, 0x3 - bhi _0802905A - cmp r0, 0x2 - beq _08029060 - b _080290CA -_0802905A: - cmp r0, 0x4 - beq _08029088 - b _080290CA -_08029060: - bl sub_803084C - movs r0, 0x1 - bl sub_8028B04 - b _080290CA -_0802906C: - bl sub_80307EC - ldr r1, _08029084 - ldr r1, [r1] - movs r2, 0x86 - lsls r2, 2 - adds r1, r2 - strb r0, [r1] - movs r0, 0x20 - bl sub_8028B04 - b _080290CA - .align 2, 0 -_08029084: .4byte gUnknown_203B2C0 -_08029088: - ldr r4, _080290D0 - ldr r1, [r4] - movs r0, 0x1F - str r0, [r1] - bl sub_80307EC - ldr r1, [r4] - movs r5, 0x86 - lsls r5, 2 - adds r1, r5 - strb r0, [r1] - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x21 - bl sub_8028B04 -_080290CA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080290D0: .4byte gUnknown_203B2C0 - thumb_func_end sub_8029044 - - thumb_func_start sub_80290D4 -sub_80290D4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080290E8 - movs r0, 0x1F - bl sub_8028B04 -_080290E8: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80290D4 - - thumb_func_start sub_80290F0 -sub_80290F0: - push {r4,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r0, 0 - bl sub_8030768 - ldr r4, _08029134 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08029122 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - mov r1, sp - bl sub_8013114 -_08029122: - ldr r0, [sp] - cmp r0, 0xA - beq _08029184 - cmp r0, 0xA - bgt _08029138 - cmp r0, 0x4 - beq _08029184 - b _080291A0 - .align 2, 0 -_08029134: .4byte gUnknown_203B2C0 -_08029138: - cmp r0, 0xB - beq _08029142 - cmp r0, 0xC - beq _0802914E - b _080291A0 -_08029142: - bl sub_803084C - movs r0, 0x22 - bl sub_8028B04 - b _080291A0 -_0802914E: - ldr r0, [r4] - movs r1, 0x3D - str r1, [r0] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x21 - bl sub_8028B04 - b _080291A0 -_08029184: - ldr r0, _080291A8 - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - movs r1, 0x2 - bl sub_8035CC0 - movs r0, 0x1 - bl sub_8030810 - movs r0, 0x1F - bl sub_8028B04 -_080291A0: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080291A8: .4byte gUnknown_203B2C0 - thumb_func_end sub_80290F0 - - thumb_func_start sub_80291AC -sub_80291AC: - push {r4,lr} - bl sub_8030DA0 - cmp r0, 0x3 - bhi _08029200 - cmp r0, 0x2 - bcc _08029200 - bl sub_8030DE4 - bl sub_8004914 - ldr r4, _080291F8 - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_803092C - ldr r4, [r4] - ldr r0, [r4] - cmp r0, 0x3D - bne _080291FC - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, r1 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x20 - bl sub_8028B04 - b _08029200 - .align 2, 0 -_080291F8: .4byte gUnknown_203B2C0 -_080291FC: - bl sub_8028B04 -_08029200: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80291AC - - thumb_func_start sub_8029208 -sub_8029208: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802929E - ldr r2, [sp] - cmp r2, 0xE - bgt _08029226 - cmp r2, 0xD - bge _0802922C - cmp r2, 0xA - beq _08029298 - b _0802929E -_08029226: - cmp r2, 0xF - beq _08029264 - b _0802929E -_0802922C: - ldr r0, _0802924C - ldr r0, [r0] - ldr r1, _08029250 - adds r2, r0, r1 - movs r1, 0xD - str r1, [r2] - movs r3, 0xA7 - lsls r3, 3 - adds r0, r3 - ldr r0, [r0] - cmp r0, 0 - beq _08029254 - cmp r0, 0x2 - beq _0802925C - b _0802929E - .align 2, 0 -_0802924C: .4byte gUnknown_203B2C0 -_08029250: .4byte 0x00000534 -_08029254: - movs r0, 0x4 - bl sub_8028B04 - b _0802929E -_0802925C: - movs r0, 0x30 - bl sub_8028B04 - b _0802929E -_08029264: - ldr r0, _08029280 - ldr r0, [r0] - ldr r3, _08029284 - adds r1, r0, r3 - str r2, [r1] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - beq _08029288 - cmp r0, 0x2 - beq _08029290 - b _0802929E - .align 2, 0 -_08029280: .4byte gUnknown_203B2C0 -_08029284: .4byte 0x00000534 -_08029288: - movs r0, 0x26 - bl sub_8028B04 - b _0802929E -_08029290: - movs r0, 0x3A - bl sub_8028B04 - b _0802929E -_08029298: - movs r0, 0x1 - bl sub_8028B04 -_0802929E: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8029208 - - thumb_func_start sub_80292A4 -sub_80292A4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080292E6 - ldr r0, [sp] - cmp r0, 0x8 - beq _080292BE - cmp r0, 0xA - beq _080292E0 - b _080292E6 -_080292BE: - ldr r0, _080292DC - ldr r0, [r0] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - beq _080292D2 - cmp r0, 0x2 - bne _080292E6 -_080292D2: - movs r0, 0x5 - bl sub_8028B04 - b _080292E6 - .align 2, 0 -_080292DC: .4byte gUnknown_203B2C0 -_080292E0: - movs r0, 0x1 - bl sub_8028B04 -_080292E6: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80292A4 - - thumb_func_start sub_80292EC -sub_80292EC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029336 - ldr r0, _08029318 - ldr r1, [r0] - ldr r0, [r1, 0x44] - cmp r0, 0 - bne _0802932C - movs r2, 0xA7 - lsls r2, 3 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, 0 - beq _0802931C - cmp r0, 0x2 - beq _08029324 - b _08029336 - .align 2, 0 -_08029318: .4byte gUnknown_203B2C0 -_0802931C: - movs r0, 0x23 - bl sub_8028B04 - b _08029336 -_08029324: - movs r0, 0x37 - bl sub_8028B04 - b _08029336 -_0802932C: - bl sub_8028B1C - movs r0, 0x7 - bl sub_8028B04 -_08029336: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80292EC - - thumb_func_start sub_802933C -sub_802933C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029350 - movs r0, 0x1 - bl sub_8028B04 -_08029350: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802933C - - thumb_func_start sub_8029358 -sub_8029358: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802936C - movs r0, 0x1 - bl sub_8028B04 -_0802936C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8029358 - - thumb_func_start sub_8029374 -sub_8029374: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029394 - movs r0, 0x24 - bl sub_8028B04 - movs r0, 0x1 - bl sub_8011C28 - movs r0, 0 - bl sub_8012574 -_08029394: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8029374 - - thumb_func_start sub_802939C -sub_802939C: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080293D0 - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _080293D0 - bl sub_8012744 - adds r4, r0, 0 - bl sub_8012750 - cmp r4, 0 - bne _080293CA - movs r0, 0x25 - bl sub_8028B04 - b _080293D0 -_080293CA: - movs r0, 0x2 - bl sub_8028B04 -_080293D0: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802939C - - thumb_func_start sub_80293D8 -sub_80293D8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080293EC - movs r0, 0x27 - bl sub_8028B04 -_080293EC: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80293D8 - - thumb_func_start sub_80293F4 -sub_80293F4: - push {r4,lr} - sub sp, 0x44 - bl sub_80154F0 - adds r4, r0, 0 - add r0, sp, 0x14 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - cmp r4, 0x2 - bne _0802940E - b _08029530 -_0802940E: - cmp r4, 0x3 - beq _08029414 - b _08029550 -_08029414: - ldr r0, _08029434 - ldr r1, [r0] - adds r1, 0x8 - movs r0, 0x1C - add r2, sp, 0x14 - bl sub_8039068 - subs r0, 0x7 - cmp r0, 0x11 - bls _0802942A - b _0802951C -_0802942A: - lsls r0, 2 - ldr r1, _08029438 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08029434: .4byte gUnknown_203B2C0 -_08029438: .4byte _0802943C - .align 2, 0 -_0802943C: - .4byte _080294C8 - .4byte _0802951C - .4byte _0802951C - .4byte _0802951C - .4byte _0802951C - .4byte _0802951C - .4byte _0802951C - .4byte _0802951C - .4byte _0802951C - .4byte _0802951C - .4byte _08029484 - .4byte _080294C0 - .4byte _0802951C - .4byte _0802951C - .4byte _0802951C - .4byte _080294F0 - .4byte _0802951C - .4byte _0802951C -_08029484: - ldr r0, _080294B4 - ldr r3, _080294B8 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, _080294BC - ldr r1, [r1] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x8 - bl sub_8014248 - movs r0, 0x28 - bl sub_8028B04 - b _0802951C - .align 2, 0 -_080294B4: .4byte gUnknown_80DEC70 -_080294B8: .4byte gUnknown_80DDA48 -_080294BC: .4byte gUnknown_203B2C0 -_080294C0: - ldr r0, _080294C4 - b _080294CA - .align 2, 0 -_080294C4: .4byte gUnknown_80DECC0 -_080294C8: - ldr r0, _080294E4 -_080294CA: - ldr r1, _080294E8 - ldr r2, [r1] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - ldr r3, _080294EC - movs r1, 0 - bl sub_80141B4 - movs r0, 0x7 - bl sub_8028B04 - b _0802951C - .align 2, 0 -_080294E4: .4byte gUnknown_80DEAB4 -_080294E8: .4byte gUnknown_203B2C0 -_080294EC: .4byte 0x0000010d -_080294F0: - ldr r0, [sp, 0x24] - bl sub_8095274 - add r1, sp, 0x14 - movs r0, 0x2 - strb r0, [r1] - adds r0, r1, 0 - bl sub_80951BC - ldr r0, _08029524 - ldr r1, _08029528 - ldr r2, [r1] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - ldr r3, _0802952C - movs r1, 0 - bl sub_80141B4 - movs r0, 0x23 - bl sub_8028B04 -_0802951C: - bl sub_80155F0 - b _08029550 - .align 2, 0 -_08029524: .4byte gUnknown_80DECFC -_08029528: .4byte gUnknown_203B2C0 -_0802952C: .4byte 0x00000101 -_08029530: - bl sub_80155F0 - bl sub_8004914 - ldr r0, _08029558 - ldr r0, [r0] - movs r2, 0xEF - lsls r2, 2 - adds r0, r2 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - bl sub_8028B04 -_08029550: - add sp, 0x44 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08029558: .4byte gUnknown_203B2C0 - thumb_func_end sub_80293F4 - - thumb_func_start sub_802955C -sub_802955C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029584 - ldr r0, [sp] - cmp r0, 0x8 - beq _08029576 - cmp r0, 0xA - beq _0802957E - b _08029584 -_08029576: - movs r0, 0x26 - bl sub_8028B04 - b _08029584 -_0802957E: - movs r0, 0x1 - bl sub_8028B04 -_08029584: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802955C - - thumb_func_start sub_802958C -sub_802958C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080295A0 - movs r0, 0x6 - bl sub_8028B04 -_080295A0: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802958C - - thumb_func_start sub_80295A8 -sub_80295A8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080295D2 - ldr r0, [sp] - cmp r0, 0x8 - bne _080295C4 - movs r0, 0x8 - bl sub_8028B04 - b _080295D2 -_080295C4: - cmp r0, 0x8 - blt _080295D2 - cmp r0, 0xA - bgt _080295D2 - movs r0, 0x1 - bl sub_8028B04 -_080295D2: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80295A8 - - thumb_func_start sub_80295D8 -sub_80295D8: - push {r4,r5,lr} - movs r0, 0x1 - bl sub_8030768 - cmp r0, 0x3 - beq _08029600 - cmp r0, 0x3 - bhi _080295EE - cmp r0, 0x2 - beq _080295F4 - b _0802965E -_080295EE: - cmp r0, 0x4 - beq _0802961C - b _0802965E -_080295F4: - bl sub_803084C - movs r0, 0x1 - bl sub_8028B04 - b _0802965E -_08029600: - bl sub_80307EC - ldr r1, _08029618 - ldr r1, [r1] - movs r2, 0x86 - lsls r2, 2 - adds r1, r2 - strb r0, [r1] - movs r0, 0x2B - bl sub_8028B04 - b _0802965E - .align 2, 0 -_08029618: .4byte gUnknown_203B2C0 -_0802961C: - ldr r4, _08029664 - ldr r1, [r4] - movs r0, 0x2A - str r0, [r1] - bl sub_80307EC - ldr r1, [r4] - movs r5, 0x86 - lsls r5, 2 - adds r1, r5 - strb r0, [r1] - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x2C - bl sub_8028B04 -_0802965E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08029664: .4byte gUnknown_203B2C0 - thumb_func_end sub_80295D8 - - thumb_func_start sub_8029668 -sub_8029668: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802967C - movs r0, 0x2A - bl sub_8028B04 -_0802967C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8029668 - - thumb_func_start sub_8029684 -sub_8029684: - push {r4,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r0, 0 - bl sub_8030768 - ldr r4, _080296C8 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080296B6 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - mov r1, sp - bl sub_8013114 -_080296B6: - ldr r0, [sp] - cmp r0, 0xA - beq _08029718 - cmp r0, 0xA - bgt _080296CC - cmp r0, 0x4 - beq _08029718 - b _08029734 - .align 2, 0 -_080296C8: .4byte gUnknown_203B2C0 -_080296CC: - cmp r0, 0xB - beq _080296D6 - cmp r0, 0xC - beq _080296E2 - b _08029734 -_080296D6: - bl sub_803084C - movs r0, 0x2D - bl sub_8028B04 - b _08029734 -_080296E2: - ldr r0, [r4] - movs r1, 0x3D - str r1, [r0] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x2C - bl sub_8028B04 - b _08029734 -_08029718: - ldr r0, _0802973C - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - movs r1, 0x2 - bl sub_8035CC0 - movs r0, 0x1 - bl sub_8030810 - movs r0, 0x2A - bl sub_8028B04 -_08029734: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802973C: .4byte gUnknown_203B2C0 - thumb_func_end sub_8029684 - - thumb_func_start sub_8029740 -sub_8029740: - push {r4,lr} - bl sub_8030DA0 - cmp r0, 0x3 - bhi _08029794 - cmp r0, 0x2 - bcc _08029794 - bl sub_8030DE4 - bl sub_8004914 - ldr r4, _0802978C - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_803092C - ldr r4, [r4] - ldr r0, [r4] - cmp r0, 0x3D - bne _08029790 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, r1 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x2B - bl sub_8028B04 - b _08029794 - .align 2, 0 -_0802978C: .4byte gUnknown_203B2C0 -_08029790: - bl sub_8028B04 -_08029794: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8029740 - - thumb_func_start sub_802979C -sub_802979C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080297B0 - movs r0, 0x1 - bl sub_8028B04 -_080297B0: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802979C - - thumb_func_start sub_80297B8 -sub_80297B8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080297CC - movs r0, 0x33 - bl sub_8028B04 -_080297CC: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80297B8 - - thumb_func_start sub_80297D4 -sub_80297D4: - push {r4,r5,lr} - movs r0, 0x1 - bl sub_8023A94 - cmp r0, 0x3 - beq _08029814 - cmp r0, 0x3 - bhi _080297EA - cmp r0, 0x2 - beq _080297F0 - b _08029876 -_080297EA: - cmp r0, 0x4 - beq _08029834 - b _08029876 -_080297F0: - bl sub_8023C60 - movs r0, 0x1 - bl sub_8028B04 - ldr r0, _08029808 - ldr r0, [r0] - ldr r1, _0802980C - adds r0, r1 - ldr r1, _08029810 - strh r1, [r0] - b _08029876 - .align 2, 0 -_08029808: .4byte gUnknown_203B2C0 -_0802980C: .4byte 0x00000544 -_08029810: .4byte 0x0000ffff -_08029814: - bl sub_8023B44 - ldr r1, _0802982C - ldr r1, [r1] - ldr r2, _08029830 - adds r1, r2 - strh r0, [r1] - movs r0, 0x34 - bl sub_8028B04 - b _08029876 - .align 2, 0 -_0802982C: .4byte gUnknown_203B2C0 -_08029830: .4byte 0x00000544 -_08029834: - ldr r4, _0802987C - ldr r1, [r4] - movs r0, 0x33 - str r0, [r1] - bl sub_8023B44 - adds r2, r0, 0 - ldr r0, [r4] - ldr r5, _08029880 - adds r1, r0, r5 - strh r2, [r1] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, r5 - movs r2, 0 - ldrsh r0, [r0, r2] - movs r1, 0 - bl sub_8024458 - movs r0, 0x35 - bl sub_8028B04 -_08029876: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802987C: .4byte gUnknown_203B2C0 -_08029880: .4byte 0x00000544 - thumb_func_end sub_80297D4 - - thumb_func_start sub_8029884 -sub_8029884: - push {r4,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r0, 0 - bl sub_8023A94 - ldr r4, _080298C8 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080298B6 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - mov r1, sp - bl sub_8013114 -_080298B6: - ldr r0, [sp] - cmp r0, 0xA - beq _0802991C - cmp r0, 0xA - bgt _080298CC - cmp r0, 0x4 - beq _0802991C - b _08029938 - .align 2, 0 -_080298C8: .4byte gUnknown_203B2C0 -_080298CC: - cmp r0, 0xB - beq _080298D6 - cmp r0, 0xC - beq _080298E2 - b _08029938 -_080298D6: - bl sub_8023C60 - movs r0, 0x4 - bl sub_8028B04 - b _08029938 -_080298E2: - ldr r0, [r4] - movs r1, 0x3D - str r1, [r0] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - ldr r1, _08029918 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - movs r1, 0 - bl sub_8024458 - movs r0, 0x35 - bl sub_8028B04 - b _08029938 - .align 2, 0 -_08029918: .4byte 0x00000544 -_0802991C: - ldr r0, _08029940 - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - movs r1, 0x3 - bl sub_8035CC0 - movs r0, 0x1 - bl sub_8023B7C - movs r0, 0x33 - bl sub_8028B04 -_08029938: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08029940: .4byte gUnknown_203B2C0 - thumb_func_end sub_8029884 - - thumb_func_start sub_8029944 -sub_8029944: - push {r4,lr} - bl sub_80244E4 - cmp r0, 0x1 - bne _08029954 - bl sub_802452C - b _080299A4 -_08029954: - cmp r0, 0x1 - bcc _080299A4 - cmp r0, 0x3 - bhi _080299A4 - bl sub_802453C - bl sub_8004914 - ldr r4, _0802999C - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - bl sub_8023B7C - ldr r4, [r4] - ldr r0, [r4] - cmp r0, 0x3D - bne _080299A0 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, r1 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x34 - bl sub_8028B04 - b _080299A4 - .align 2, 0 -_0802999C: .4byte gUnknown_203B2C0 -_080299A0: - bl sub_8028B04 -_080299A4: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8029944 - - thumb_func_start sub_80299AC -sub_80299AC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080299D2 - ldr r0, [sp] - cmp r0, 0xA - beq _080299CC - cmp r0, 0x12 - bne _080299D2 - movs r0, 0x4 - bl sub_8028B04 - b _080299D2 -_080299CC: - movs r0, 0x1 - bl sub_8028B04 -_080299D2: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80299AC - - thumb_func_start sub_80299D8 -sub_80299D8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029A12 - ldr r0, [sp] - cmp r0, 0x9 - beq _08029A04 - cmp r0, 0x9 - bgt _080299F6 - cmp r0, 0x8 - beq _080299FC - b _08029A12 -_080299F6: - cmp r0, 0xA - beq _08029A0C - b _08029A12 -_080299FC: - movs r0, 0x4 - bl sub_8028B04 - b _08029A12 -_08029A04: - movs r0, 0x32 - bl sub_8028B04 - b _08029A12 -_08029A0C: - movs r0, 0x1 - bl sub_8028B04 -_08029A12: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80299D8 - - thumb_func_start sub_8029A18 -sub_8029A18: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029A66 - ldr r0, [sp] - cmp r0, 0x11 - beq _08029A3C - cmp r0, 0x11 - bgt _08029A36 - cmp r0, 0xA - beq _08029A60 - b _08029A66 -_08029A36: - cmp r0, 0x12 - beq _08029A58 - b _08029A66 -_08029A3C: - movs r0, 0x3 - bl sub_8024108 - lsls r0, 24 - cmp r0, 0 - beq _08029A50 - movs r0, 0x31 - bl sub_8028B04 - b _08029A66 -_08029A50: - movs r0, 0x32 - bl sub_8028B04 - b _08029A66 -_08029A58: - movs r0, 0x4 - bl sub_8028B04 - b _08029A66 -_08029A60: - movs r0, 0x1 - bl sub_8028B04 -_08029A66: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8029A18 - - thumb_func_start sub_8029A6C -sub_8029A6C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029A80 - movs r0, 0x2E - bl sub_8028B04 -_08029A80: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8029A6C - - thumb_func_start sub_8029A88 -sub_8029A88: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029AAA - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08029AAA - bl sub_8012750 - movs r0, 0x39 - bl sub_8028B04 -_08029AAA: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8029A88 - - thumb_func_start sub_8029AB0 -sub_8029AB0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029AD0 - movs r0, 0x38 - bl sub_8028B04 - movs r0, 0x1 - bl sub_8011C28 - movs r0, 0 - bl sub_8012574 -_08029AD0: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8029AB0 - - thumb_func_start sub_8029AD8 -sub_8029AD8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029AEC - movs r0, 0x3B - bl sub_8028B04 -_08029AEC: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8029AD8 - - thumb_func_start sub_8029AF4 -sub_8029AF4: - push {lr} - bl sub_8031DCC - cmp r0, 0x1 - beq _08029B2C - cmp r0, 0x1 - bcc _08029B30 - cmp r0, 0x3 - bhi _08029B30 - bl sub_8031E10 - bl sub_8004914 - ldr r0, _08029B28 - ldr r0, [r0] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x3C - bl sub_8028B04 - b _08029B30 - .align 2, 0 -_08029B28: .4byte gUnknown_203B2C0 -_08029B2C: - bl sub_8031E00 -_08029B30: - pop {r0} - bx r0 - thumb_func_end sub_8029AF4 - - thumb_func_start sub_8029B34 -sub_8029B34: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029B48 - movs r0, 0x3 - bl sub_8028B04 -_08029B48: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8029B34 - - thumb_func_start sub_8029B50 -sub_8029B50: - push {r4,r5,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _08029C3C - ldr r4, _08029C40 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 - ldr r0, _08029C44 - movs r4, 0x98 - lsls r4, 1 - adds r1, r4, 0 - bl sub_808D8E0 - adds r0, r4, 0 - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _08029C48 - bl strcpy - adds r0, r4, 0 - bl sub_808DDD0 - ldr r2, [r5] - movs r3, 0x84 - lsls r3, 3 - adds r1, r2, r3 - str r0, [r1] - adds r3, 0x4 - adds r1, r2, r3 - ldr r0, [r0, 0x4] - str r0, [r1] - ldr r0, _08029C4C - adds r2, r0 - movs r1, 0 - strb r1, [r2] - ldr r0, [r5] - ldr r2, _08029C50 - adds r0, r2 - strb r1, [r0] - ldr r0, [r5] - adds r3, 0xA - adds r0, r3 - strb r1, [r0] - ldr r1, [r5] - movs r0, 0x85 - lsls r0, 3 - adds r2, r1, r0 - movs r0, 0x2 - strh r0, [r2] - ldr r2, _08029C54 - adds r1, r2 - movs r0, 0x8 - strh r0, [r1] - movs r1, 0 - movs r2, 0 -_08029BD8: - ldr r0, [r5] - adds r0, 0x8 - adds r0, r1 - strb r2, [r0] - adds r1, 0x1 - cmp r1, 0x35 - ble _08029BD8 - ldr r5, _08029C3C - ldr r1, [r5] - ldr r3, _08029C58 - adds r2, r1, r3 - movs r0, 0x3 - str r0, [r2] - movs r0, 0xA7 - lsls r0, 3 - adds r1, r0 - movs r0, 0x1 - str r0, [r1] - movs r0, 0x6 - bl sub_80953D4 - adds r4, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - beq _08029C60 - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8095228 - ldr r1, [r5] - ldr r2, _08029C5C - adds r3, r1, r2 - ldr r2, [r0, 0x20] - str r2, [r3] - movs r3, 0x86 - lsls r3, 2 - adds r1, r3 - strb r4, [r1] - ldr r1, [r5] - movs r2, 0x86 - lsls r2, 3 - adds r1, r2 - ldr r0, [r0, 0x10] - str r0, [r1] - movs r0, 0x5 - bl sub_802B2BC - b _08029C7C - .align 2, 0 -_08029C3C: .4byte gUnknown_203B2C4 -_08029C40: .4byte 0x00000564 -_08029C44: .4byte gUnknown_202E5D8 -_08029C48: .4byte gUnknown_202DF98 -_08029C4C: .4byte 0x0000042c -_08029C50: .4byte 0x0000042d -_08029C54: .4byte 0x0000042a -_08029C58: .4byte 0x00000534 -_08029C5C: .4byte 0x0000041c -_08029C60: - ldr r1, [r5] - ldr r3, _08029C8C - adds r2, r1, r3 - ldr r0, _08029C90 - ldr r0, [r0] - str r0, [r2] - movs r0, 0x86 - lsls r0, 2 - adds r1, r0 - movs r0, 0xFF - strb r0, [r1] - movs r0, 0 - bl sub_802B2BC -_08029C7C: - ldr r0, _08029C94 - ldr r1, [r0] - movs r0, 0x2B - str r0, [r1, 0x4] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08029C8C: .4byte 0x0000041c -_08029C90: .4byte gUnknown_80DED44 -_08029C94: .4byte gUnknown_203B2C4 - thumb_func_end sub_8029B50 - - thumb_func_start sub_8029C98 -sub_8029C98: - push {lr} - ldr r0, _08029CB0 - ldr r0, [r0] - ldrb r0, [r0] - cmp r0, 0x2A - bls _08029CA6 - b _08029E58 -_08029CA6: - lsls r0, 2 - ldr r1, _08029CB4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08029CB0: .4byte gUnknown_203B2C4 -_08029CB4: .4byte _08029CB8 - .align 2, 0 -_08029CB8: - .4byte _08029E48 - .4byte _08029E48 - .4byte _08029E4E - .4byte _08029E54 - .4byte _08029E42 - .4byte _08029D64 - .4byte _08029E3C - .4byte _08029E30 - .4byte _08029E36 - .4byte _08029E2A - .4byte _08029E24 - .4byte _08029E1E - .4byte _08029E0C - .4byte _08029E06 - .4byte _08029D76 - .4byte _08029D7C - .4byte _08029D8E - .4byte _08029D82 - .4byte _08029D88 - .4byte _08029D94 - .4byte _08029D9A - .4byte _08029DA0 - .4byte _08029DE8 - .4byte _08029DF4 - .4byte _08029DEE - .4byte _08029DB2 - .4byte _08029DB8 - .4byte _08029DAC - .4byte _08029DA6 - .4byte _08029DFA - .4byte _08029D6A - .4byte _08029D70 - .4byte _08029E00 - .4byte _08029DDC - .4byte _08029DE2 - .4byte _08029E58 - .4byte _08029DD6 - .4byte _08029DD0 - .4byte _08029DC4 - .4byte _08029DCA - .4byte _08029DBE - .4byte _08029E12 - .4byte _08029E18 -_08029D64: - bl sub_802AB7C - b _08029E58 -_08029D6A: - bl sub_8029F98 - b _08029E58 -_08029D70: - bl sub_8029EA8 - b _08029E58 -_08029D76: - bl sub_802A090 - b _08029E58 -_08029D7C: - bl sub_802A158 - b _08029E58 -_08029D82: - bl sub_802A174 - b _08029E58 -_08029D88: - bl sub_802A230 - b _08029E58 -_08029D8E: - bl sub_802A0C8 - b _08029E58 -_08029D94: - bl sub_802A28C - b _08029E58 -_08029D9A: - bl sub_802A39C - b _08029E58 -_08029DA0: - bl sub_802A33C - b _08029E58 -_08029DA6: - bl sub_802A458 - b _08029E58 -_08029DAC: - bl sub_802A4AC - b _08029E58 -_08029DB2: - bl sub_802A4D4 - b _08029E58 -_08029DB8: - bl sub_802A050 - b _08029E58 -_08029DBE: - bl sub_802A9FC - b _08029E58 -_08029DC4: - bl sub_802A4F0 - b _08029E58 -_08029DCA: - bl sub_802A50C - b _08029E58 -_08029DD0: - bl sub_802A6B4 - b _08029E58 -_08029DD6: - bl sub_802A718 - b _08029E58 -_08029DDC: - bl sub_802AB60 - b _08029E58 -_08029DE2: - bl sub_802AB98 - b _08029E58 -_08029DE8: - bl sub_802A740 - b _08029E58 -_08029DEE: - bl sub_802A68C - b _08029E58 -_08029DF4: - bl sub_802A6F0 - b _08029E58 -_08029DFA: - bl sub_802A75C - b _08029E58 -_08029E00: - bl sub_802A490 - b _08029E58 -_08029E06: - bl sub_802A474 - b _08029E58 -_08029E0C: - bl sub_802A798 - b _08029E58 -_08029E12: - bl sub_802A828 - b _08029E58 -_08029E18: - bl sub_802A850 - b _08029E58 -_08029E1E: - bl sub_802A8A0 - b _08029E58 -_08029E24: - bl sub_802A8BC - b _08029E58 -_08029E2A: - bl sub_802A910 - b _08029E58 -_08029E30: - bl sub_802A98C - b _08029E58 -_08029E36: - bl sub_802A9A8 - b _08029E58 -_08029E3C: - bl sub_802AA28 - b _08029E58 -_08029E42: - bl sub_802AAAC - b _08029E58 -_08029E48: - bl sub_802AAE4 - b _08029E58 -_08029E4E: - bl sub_802AAC8 - b _08029E58 -_08029E54: - movs r0, 0x3 - b _08029E5A -_08029E58: - movs r0, 0 -_08029E5A: - pop {r1} - bx r1 - thumb_func_end sub_8029C98 - - thumb_func_start sub_8029E60 -sub_8029E60: - push {r4,lr} - ldr r4, _08029EA4 - ldr r0, [r4] - cmp r0, 0 - beq _08029E9C - movs r1, 0x84 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - bl sub_8030DE4 - bl sub_801B450 - bl sub_803084C - bl sub_801CBB8 - bl sub_80155F0 - bl sub_8031E10 - bl sub_802F2C0 -_08029E9C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08029EA4: .4byte gUnknown_203B2C4 - thumb_func_end sub_8029E60 - - thumb_func_start sub_8029EA8 -sub_8029EA8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08029EBC - movs r0, 0x1 - bl sub_802B2BC -_08029EBC: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8029EA8 - - thumb_func_start sub_8029EC4 -sub_8029EC4: - push {lr} - cmp r0, 0xF - bhi _08029F88 - lsls r0, 2 - ldr r1, _08029ED4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08029ED4: .4byte _08029ED8 - .align 2, 0 -_08029ED8: - .4byte _08029F88 - .4byte _08029F50 - .4byte _08029F50 - .4byte _08029F18 - .4byte _08029F20 - .4byte _08029F50 - .4byte _08029F28 - .4byte _08029F30 - .4byte _08029F88 - .4byte _08029F38 - .4byte _08029F88 - .4byte _08029F40 - .4byte _08029F88 - .4byte _08029F48 - .4byte _08029F50 - .4byte _08029F74 -_08029F18: - ldr r0, _08029F1C - b _08029F52 - .align 2, 0 -_08029F1C: .4byte gUnknown_80DEF28 -_08029F20: - ldr r0, _08029F24 - b _08029F52 - .align 2, 0 -_08029F24: .4byte gUnknown_80DEF80 -_08029F28: - ldr r0, _08029F2C - b _08029F52 - .align 2, 0 -_08029F2C: .4byte gUnknown_80DEFDC -_08029F30: - ldr r0, _08029F34 - b _08029F52 - .align 2, 0 -_08029F34: .4byte gUnknown_80DF044 -_08029F38: - ldr r0, _08029F3C - b _08029F52 - .align 2, 0 -_08029F3C: .4byte gUnknown_80DF0A0 -_08029F40: - ldr r0, _08029F44 - b _08029F52 - .align 2, 0 -_08029F44: .4byte gUnknown_80DF0A0 -_08029F48: - ldr r0, _08029F4C - b _08029F52 - .align 2, 0 -_08029F4C: .4byte gUnknown_80DF0E0 -_08029F50: - ldr r0, _08029F68 -_08029F52: - ldr r1, _08029F6C - ldr r2, [r1] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - ldr r3, _08029F70 - movs r1, 0 - bl sub_80141B4 - b _08029F88 - .align 2, 0 -_08029F68: .4byte gUnknown_80DEF04 -_08029F6C: .4byte gUnknown_203B2C4 -_08029F70: .4byte 0x0000010d -_08029F74: - ldr r0, _08029F8C - ldr r1, _08029F90 - ldr r2, [r1] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - ldr r3, _08029F94 - movs r1, 0 - bl sub_80141B4 -_08029F88: - pop {r0} - bx r0 - .align 2, 0 -_08029F8C: .4byte gUnknown_80DF138 -_08029F90: .4byte gUnknown_203B2C4 -_08029F94: .4byte 0x0000010d - thumb_func_end sub_8029EC4 - - thumb_func_start sub_8029F98 -sub_8029F98: - push {r4-r6,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - adds r6, r0, 0 - cmp r6, 0 - bne _0802A048 - ldr r4, _08029FE4 - ldr r0, [r4] - ldr r5, _08029FE8 - adds r0, r5 - movs r1, 0 - movs r2, 0x4 - bl MemoryFill8 - ldr r0, [r4] - ldr r1, _08029FEC - adds r0, r1 - strb r6, [r0] - ldr r0, [r4] - subs r1, 0x1 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - adds r0, r5 - strb r6, [r0] - ldr r0, [r4] - ldr r1, [r0, 0x44] - cmp r1, 0 - bne _0802A03C - ldr r1, [r0, 0x40] - cmp r1, 0x6 - beq _08029FF0 - cmp r1, 0x7 - beq _0802A034 - b _0802A048 - .align 2, 0 -_08029FE4: .4byte gUnknown_203B2C4 -_08029FE8: .4byte 0x0000041c -_08029FEC: .4byte 0x0000041e -_08029FF0: - ldr r1, _0802A004 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x4 - beq _0802A020 - cmp r0, 0x4 - bgt _0802A008 - cmp r0, 0x3 - beq _0802A00C - b _0802A020 - .align 2, 0 -_0802A004: .4byte 0x00000534 -_0802A008: - cmp r0, 0x6 - bgt _0802A020 -_0802A00C: - ldr r0, _0802A028 - ldr r1, _0802A02C - ldr r2, [r1] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - ldr r3, _0802A030 - movs r1, 0 - bl sub_80141B4 -_0802A020: - movs r0, 0xD - bl sub_802B2BC - b _0802A048 - .align 2, 0 -_0802A028: .4byte gUnknown_80DF194 -_0802A02C: .4byte gUnknown_203B2C4 -_0802A030: .4byte 0x0000010d -_0802A034: - movs r0, 0x21 - bl sub_802B2BC - b _0802A048 -_0802A03C: - adds r0, r1, 0 - bl sub_8029EC4 - movs r0, 0x1F - bl sub_802B2BC -_0802A048: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8029F98 - - thumb_func_start sub_802A050 -sub_802A050: - push {lr} - bl sub_8031DCC - cmp r0, 0x1 - beq _0802A088 - cmp r0, 0x1 - bcc _0802A08C - cmp r0, 0x3 - bhi _0802A08C - bl sub_8031E10 - bl sub_8004914 - ldr r0, _0802A084 - ldr r0, [r0] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1B - bl sub_802B2BC - b _0802A08C - .align 2, 0 -_0802A084: .4byte gUnknown_203B2C4 -_0802A088: - bl sub_8031E00 -_0802A08C: - pop {r0} - bx r0 - thumb_func_end sub_802A050 - - thumb_func_start sub_802A090 -sub_802A090: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A0C2 - ldr r0, [sp] - cmp r0, 0x7 - beq _0802A0B4 - cmp r0, 0x7 - bgt _0802A0AE - cmp r0, 0 - beq _0802A0BC - b _0802A0C2 -_0802A0AE: - cmp r0, 0x8 - beq _0802A0BC - b _0802A0C2 -_0802A0B4: - movs r0, 0x6 - bl sub_802B2BC - b _0802A0C2 -_0802A0BC: - movs r0, 0x1 - bl sub_802B2BC -_0802A0C2: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A090 - - thumb_func_start sub_802A0C8 -sub_802A0C8: - push {r4,r5,lr} - movs r0, 0x1 - bl sub_8030768 - cmp r0, 0x3 - beq _0802A0F0 - cmp r0, 0x3 - bhi _0802A0DE - cmp r0, 0x2 - beq _0802A0E4 - b _0802A14E -_0802A0DE: - cmp r0, 0x4 - beq _0802A10C - b _0802A14E -_0802A0E4: - bl sub_803084C - movs r0, 0x1 - bl sub_802B2BC - b _0802A14E -_0802A0F0: - bl sub_80307EC - ldr r1, _0802A108 - ldr r1, [r1] - movs r2, 0x86 - lsls r2, 2 - adds r1, r2 - strb r0, [r1] - movs r0, 0x11 - bl sub_802B2BC - b _0802A14E - .align 2, 0 -_0802A108: .4byte gUnknown_203B2C4 -_0802A10C: - ldr r4, _0802A154 - ldr r1, [r4] - movs r0, 0x10 - str r0, [r1, 0x4] - bl sub_80307EC - ldr r1, [r4] - movs r5, 0x86 - lsls r5, 2 - adds r1, r5 - strb r0, [r1] - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x12 - bl sub_802B2BC -_0802A14E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802A154: .4byte gUnknown_203B2C4 - thumb_func_end sub_802A0C8 - - thumb_func_start sub_802A158 -sub_802A158: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A16C - movs r0, 0x10 - bl sub_802B2BC -_0802A16C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A158 - - thumb_func_start sub_802A174 -sub_802A174: - push {r4,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r0, 0 - bl sub_8030768 - ldr r4, _0802A1B8 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802A1A6 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - mov r1, sp - bl sub_8013114 -_0802A1A6: - ldr r0, [sp] - cmp r0, 0xB - beq _0802A1C6 - cmp r0, 0xB - bgt _0802A1BC - cmp r0, 0 - beq _0802A208 - b _0802A224 - .align 2, 0 -_0802A1B8: .4byte gUnknown_203B2C4 -_0802A1BC: - cmp r0, 0xC - beq _0802A1D2 - cmp r0, 0xD - beq _0802A208 - b _0802A224 -_0802A1C6: - bl sub_803084C - movs r0, 0xE - bl sub_802B2BC - b _0802A224 -_0802A1D2: - ldr r0, [r4] - movs r1, 0x2B - str r1, [r0, 0x4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x12 - bl sub_802B2BC - b _0802A224 -_0802A208: - ldr r0, _0802A22C - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - movs r1, 0x2 - bl sub_8035CC0 - movs r0, 0x1 - bl sub_8030810 - movs r0, 0x10 - bl sub_802B2BC -_0802A224: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802A22C: .4byte gUnknown_203B2C4 - thumb_func_end sub_802A174 - - thumb_func_start sub_802A230 -sub_802A230: - push {r4,lr} - bl sub_8030DA0 - cmp r0, 0x3 - bhi _0802A284 - cmp r0, 0x2 - bcc _0802A284 - bl sub_8030DE4 - bl sub_8004914 - ldr r4, _0802A27C - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_803092C - ldr r4, [r4] - ldr r0, [r4, 0x4] - cmp r0, 0x2B - bne _0802A280 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, r1 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x11 - bl sub_802B2BC - b _0802A284 - .align 2, 0 -_0802A27C: .4byte gUnknown_203B2C4 -_0802A280: - bl sub_802B2BC -_0802A284: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802A230 - - thumb_func_start sub_802A28C -sub_802A28C: - push {r4-r6,lr} - ldr r4, _0802A2C0 - ldr r0, [r4] - ldr r5, _0802A2C4 - adds r0, r5 - movs r2, 0 - strb r2, [r0] - ldr r0, [r4] - ldr r1, _0802A2C8 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - ldr r6, _0802A2CC - adds r0, r6 - strb r2, [r0] - movs r0, 0x1 - bl sub_801CA08 - cmp r0, 0x3 - beq _0802A2E2 - cmp r0, 0x3 - bhi _0802A2D0 - cmp r0, 0x2 - beq _0802A2D6 - b _0802A334 - .align 2, 0 -_0802A2C0: .4byte gUnknown_203B2C4 -_0802A2C4: .4byte 0x0000041e -_0802A2C8: .4byte 0x0000041d -_0802A2CC: .4byte 0x0000041c -_0802A2D0: - cmp r0, 0x4 - beq _0802A2FC - b _0802A334 -_0802A2D6: - bl sub_801CBB8 - movs r0, 0x1 - bl sub_802B2BC - b _0802A334 -_0802A2E2: - bl sub_801CB24 - ldr r1, [r4] - ldr r2, _0802A2F8 - adds r1, r2 - strb r0, [r1] - movs r0, 0x14 - bl sub_802B2BC - b _0802A334 - .align 2, 0 -_0802A2F8: .4byte 0x0000041e -_0802A2FC: - ldr r1, [r4] - movs r0, 0x13 - str r0, [r1, 0x4] - bl sub_801CB24 - ldr r1, [r4] - adds r1, r5 - strb r0, [r1] - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, r6 - bl sub_801B3C0 - movs r0, 0x15 - bl sub_802B2BC -_0802A334: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_802A28C - - thumb_func_start sub_802A33C -sub_802A33C: - push {r4,lr} - bl sub_801B410 - cmp r0, 0x1 - beq _0802A394 - cmp r0, 0x1 - bcc _0802A394 - cmp r0, 0x3 - bhi _0802A394 - bl sub_801B450 - bl sub_8004914 - ldr r4, _0802A38C - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - bl sub_801CB5C - ldr r4, [r4] - ldr r0, [r4, 0x4] - cmp r0, 0x2B - bne _0802A390 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, r1 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x14 - bl sub_802B2BC - b _0802A394 - .align 2, 0 -_0802A38C: .4byte gUnknown_203B2C4 -_0802A390: - bl sub_802B2BC -_0802A394: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802A33C - - thumb_func_start sub_802A39C -sub_802A39C: - push {r4,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r0, 0 - bl sub_801CA08 - ldr r4, _0802A3E0 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802A3CE - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - mov r1, sp - bl sub_8013114 -_0802A3CE: - ldr r0, [sp] - cmp r0, 0xB - beq _0802A3EE - cmp r0, 0xB - bgt _0802A3E4 - cmp r0, 0 - beq _0802A430 - b _0802A44A - .align 2, 0 -_0802A3E0: .4byte gUnknown_203B2C4 -_0802A3E4: - cmp r0, 0xC - beq _0802A3FA - cmp r0, 0xD - beq _0802A430 - b _0802A44A -_0802A3EE: - bl sub_801CBB8 - movs r0, 0xC - bl sub_802B2BC - b _0802A44A -_0802A3FA: - ldr r0, [r4] - movs r1, 0x2B - str r1, [r0, 0x4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - ldr r1, _0802A42C - adds r0, r1 - bl sub_801B3C0 - movs r0, 0x15 - bl sub_802B2BC - b _0802A44A - .align 2, 0 -_0802A42C: .4byte 0x0000041c -_0802A430: - ldr r0, _0802A454 - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - movs r1, 0x3 - bl sub_8035CC0 - bl sub_801CCD8 - movs r0, 0x13 - bl sub_802B2BC -_0802A44A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802A454: .4byte gUnknown_203B2C4 - thumb_func_end sub_802A39C - - thumb_func_start sub_802A458 -sub_802A458: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A46C - movs r0, 0xD - bl sub_802B2BC -_0802A46C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A458 - - thumb_func_start sub_802A474 -sub_802A474: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A488 - movs r0, 0x3 - bl sub_802B2BC -_0802A488: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A474 - - thumb_func_start sub_802A490 -sub_802A490: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A4A4 - movs r0, 0x3 - bl sub_802B2BC -_0802A4A4: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A490 - - thumb_func_start sub_802A4AC -sub_802A4AC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A4CC - movs r0, 0x18 - bl sub_802B2BC - movs r0, 0x1 - bl sub_8011C28 - movs r0, 0 - bl sub_8012574 -_0802A4CC: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A4AC - - thumb_func_start sub_802A4D4 -sub_802A4D4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A4E8 - movs r0, 0x1A - bl sub_802B2BC -_0802A4E8: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A4D4 - - thumb_func_start sub_802A4F0 -sub_802A4F0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A504 - movs r0, 0x27 - bl sub_802B2BC -_0802A504: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A4F0 - - thumb_func_start sub_802A50C -sub_802A50C: - push {r4,r5,lr} - sub sp, 0x44 - bl sub_80154F0 - adds r4, r0, 0 - add r0, sp, 0x14 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - cmp r4, 0x2 - bne _0802A526 - b _0802A660 -_0802A526: - cmp r4, 0x3 - beq _0802A52C - b _0802A680 -_0802A52C: - ldr r0, _0802A54C - ldr r1, [r0] - adds r1, 0x8 - movs r0, 0x20 - add r2, sp, 0x14 - bl sub_8039068 - subs r0, 0x7 - cmp r0, 0x11 - bls _0802A542 - b _0802A654 -_0802A542: - lsls r0, 2 - ldr r1, _0802A550 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802A54C: .4byte gUnknown_203B2C4 -_0802A550: .4byte _0802A554 - .align 2, 0 -_0802A554: - .4byte _0802A654 - .4byte _0802A654 - .4byte _0802A654 - .4byte _0802A654 - .4byte _0802A5F0 - .4byte _0802A654 - .4byte _0802A654 - .4byte _0802A654 - .4byte _0802A654 - .4byte _0802A654 - .4byte _0802A59C - .4byte _0802A654 - .4byte _0802A654 - .4byte _0802A5D8 - .4byte _0802A654 - .4byte _0802A654 - .4byte _0802A654 - .4byte _0802A618 -_0802A59C: - ldr r0, _0802A5CC - ldr r3, _0802A5D0 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, _0802A5D4 - ldr r1, [r1] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x7 - bl sub_8014248 - movs r0, 0x28 - bl sub_802B2BC - b _0802A654 - .align 2, 0 -_0802A5CC: .4byte gUnknown_80DF1C0 -_0802A5D0: .4byte gUnknown_80DEE44 -_0802A5D4: .4byte gUnknown_203B2C4 -_0802A5D8: - ldr r0, _0802A5E8 - ldr r1, _0802A5EC - ldr r2, [r1] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - b _0802A5FC - .align 2, 0 -_0802A5E8: .4byte gUnknown_80DF208 -_0802A5EC: .4byte gUnknown_203B2C4 -_0802A5F0: - ldr r0, _0802A60C - ldr r1, _0802A610 - ldr r2, [r1] - movs r4, 0x84 - lsls r4, 3 - adds r2, r4 -_0802A5FC: - ldr r3, _0802A614 - movs r1, 0 - bl sub_80141B4 - movs r0, 0x1F - bl sub_802B2BC - b _0802A654 - .align 2, 0 -_0802A60C: .4byte gUnknown_80DF0A0 -_0802A610: .4byte gUnknown_203B2C4 -_0802A614: .4byte 0x0000010d -_0802A618: - ldr r1, [sp, 0x24] - movs r0, 0x4 - bl sub_809539C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - adds r2, r0, 0 - add r1, sp, 0x14 - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - movs r1, 0x6 - strb r1, [r0] - ldr r0, _0802A65C - ldr r0, [r0] - movs r5, 0x86 - lsls r5, 3 - adds r0, r5 - ldr r1, [sp, 0x24] - str r1, [r0] - movs r0, 0x21 - bl sub_802B2BC -_0802A654: - bl sub_80155F0 - b _0802A680 - .align 2, 0 -_0802A65C: .4byte gUnknown_203B2C4 -_0802A660: - bl sub_80155F0 - bl sub_8004914 - ldr r0, _0802A688 - ldr r0, [r0] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - bl sub_802B2BC -_0802A680: - add sp, 0x44 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802A688: .4byte gUnknown_203B2C4 - thumb_func_end sub_802A50C - - thumb_func_start sub_802A68C -sub_802A68C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A6AE - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _0802A6AE - bl sub_8012750 - movs r0, 0xD - bl sub_802B2BC -_0802A6AE: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A68C - - thumb_func_start sub_802A6B4 -sub_802A6B4: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A6E8 - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _0802A6E8 - bl sub_8012744 - adds r4, r0, 0 - bl sub_8012750 - cmp r4, 0 - bne _0802A6E2 - movs r0, 0x20 - bl sub_802B2BC - b _0802A6E8 -_0802A6E2: - movs r0, 0x3 - bl sub_802B2BC -_0802A6E8: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802A6B4 - - thumb_func_start sub_802A6F0 -sub_802A6F0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A710 - movs r0, 0x18 - bl sub_802B2BC - movs r0, 0x1 - bl sub_8011C28 - movs r0, 0 - bl sub_8012574 -_0802A710: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A6F0 - - thumb_func_start sub_802A718 -sub_802A718: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A738 - movs r0, 0x25 - bl sub_802B2BC - movs r0, 0x1 - bl sub_8011C28 - movs r0, 0 - bl sub_8012574 -_0802A738: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A718 - - thumb_func_start sub_802A740 -sub_802A740: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A754 - movs r0, 0x1E - bl sub_802B2BC -_0802A754: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A740 - - thumb_func_start sub_802A75C -sub_802A75C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A792 - ldr r0, [sp] - cmp r0, 0 - beq _0802A78C - cmp r0, 0x7 - bne _0802A792 - ldr r0, _0802A788 - ldr r0, [r0] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - movs r0, 0x16 - bl sub_802B2BC - b _0802A792 - .align 2, 0 -_0802A788: .4byte gUnknown_203B2C4 -_0802A78C: - movs r0, 0x1 - bl sub_802B2BC -_0802A792: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A75C - - thumb_func_start sub_802A798 -sub_802A798: - push {r4,r5,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A81E - ldr r0, [sp] - cmp r0, 0x7 - beq _0802A7BC - cmp r0, 0x7 - bgt _0802A7B6 - cmp r0, 0 - beq _0802A818 - b _0802A81E -_0802A7B6: - cmp r0, 0x8 - beq _0802A810 - b _0802A81E -_0802A7BC: - ldr r4, _0802A800 - ldr r0, [r4] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - bl sub_8095228 - adds r2, r0, 0 - ldr r1, [r4] - ldr r3, _0802A804 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0802A7E2 - ldr r5, _0802A808 - adds r0, r1, r5 - ldr r0, [r0] - str r0, [r2, 0x20] -_0802A7E2: - ldr r0, _0802A80C - ldr r1, [r0] - ldr r0, [r4] - adds r0, r3 - ldrb r0, [r0] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - movs r0, 0x29 - bl sub_802B2BC - b _0802A81E - .align 2, 0 -_0802A800: .4byte gUnknown_203B2C4 -_0802A804: .4byte 0x0000041e -_0802A808: .4byte 0x0000041c -_0802A80C: .4byte gUnknown_203B460 -_0802A810: - movs r0, 0xB - bl sub_802B2BC - b _0802A81E -_0802A818: - movs r0, 0x1 - bl sub_802B2BC -_0802A81E: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_802A798 - - thumb_func_start sub_802A828 -sub_802A828: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A848 - movs r0, 0x2A - bl sub_802B2BC - movs r0, 0x1 - bl sub_8011C28 - movs r0, 0 - bl sub_8012574 -_0802A848: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A828 - - thumb_func_start sub_802A850 -sub_802A850: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A89A - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _0802A89A - bl sub_8012750 - ldr r0, _0802A884 - ldr r0, [r0] - ldr r1, _0802A888 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x3 - blt _0802A89A - cmp r0, 0x4 - ble _0802A88C - cmp r0, 0x5 - beq _0802A894 - b _0802A89A - .align 2, 0 -_0802A884: .4byte gUnknown_203B2C4 -_0802A888: .4byte 0x00000534 -_0802A88C: - movs r0, 0x1D - bl sub_802B2BC - b _0802A89A -_0802A894: - movs r0, 0x19 - bl sub_802B2BC -_0802A89A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A850 - - thumb_func_start sub_802A8A0 -sub_802A8A0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A8B4 - movs r0, 0x13 - bl sub_802B2BC -_0802A8B4: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A8A0 - - thumb_func_start sub_802A8BC -sub_802A8BC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A90A - ldr r0, [sp] - cmp r0, 0 - beq _0802A904 - cmp r0, 0xA - bne _0802A90A - ldr r0, _0802A8EC - ldr r0, [r0] - ldr r1, _0802A8F0 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x3 - blt _0802A90A - cmp r0, 0x4 - ble _0802A8F4 - cmp r0, 0x5 - beq _0802A8FC - b _0802A90A - .align 2, 0 -_0802A8EC: .4byte gUnknown_203B2C4 -_0802A8F0: .4byte 0x00000534 -_0802A8F4: - movs r0, 0x1D - bl sub_802B2BC - b _0802A90A -_0802A8FC: - movs r0, 0x19 - bl sub_802B2BC - b _0802A90A -_0802A904: - movs r0, 0x1 - bl sub_802B2BC -_0802A90A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A8BC - - thumb_func_start sub_802A910 -sub_802A910: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A986 - ldr r0, [sp] - cmp r0, 0x9 - beq _0802A934 - cmp r0, 0x9 - bgt _0802A92E - cmp r0, 0 - beq _0802A980 - b _0802A986 -_0802A92E: - cmp r0, 0xA - beq _0802A950 - b _0802A986 -_0802A934: - movs r0, 0 - bl sub_801CF14 - lsls r0, 24 - cmp r0, 0 - beq _0802A948 - movs r0, 0xA - bl sub_802B2BC - b _0802A986 -_0802A948: - movs r0, 0xB - bl sub_802B2BC - b _0802A986 -_0802A950: - ldr r0, _0802A968 - ldr r0, [r0] - ldr r1, _0802A96C - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x3 - blt _0802A986 - cmp r0, 0x4 - ble _0802A970 - cmp r0, 0x5 - beq _0802A978 - b _0802A986 - .align 2, 0 -_0802A968: .4byte gUnknown_203B2C4 -_0802A96C: .4byte 0x00000534 -_0802A970: - movs r0, 0x1D - bl sub_802B2BC - b _0802A986 -_0802A978: - movs r0, 0x19 - bl sub_802B2BC - b _0802A986 -_0802A980: - movs r0, 0x1 - bl sub_802B2BC -_0802A986: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A910 - - thumb_func_start sub_802A98C -sub_802A98C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A9A0 - movs r0, 0x8 - bl sub_802B2BC -_0802A9A0: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A98C - - thumb_func_start sub_802A9A8 -sub_802A9A8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802A9F6 - ldr r0, [sp] - cmp r0, 0 - beq _0802A9F0 - cmp r0, 0x7 - bne _0802A9F6 - ldr r0, _0802A9D8 - ldr r0, [r0] - ldr r1, _0802A9DC - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x3 - blt _0802A9F6 - cmp r0, 0x4 - ble _0802A9E0 - cmp r0, 0x5 - beq _0802A9E8 - b _0802A9F6 - .align 2, 0 -_0802A9D8: .4byte gUnknown_203B2C4 -_0802A9DC: .4byte 0x00000534 -_0802A9E0: - movs r0, 0x1D - bl sub_802B2BC - b _0802A9F6 -_0802A9E8: - movs r0, 0x19 - bl sub_802B2BC - b _0802A9F6 -_0802A9F0: - movs r0, 0x1 - bl sub_802B2BC -_0802A9F6: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A9A8 - - thumb_func_start sub_802A9FC -sub_802A9FC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802AA22 - ldr r0, [sp] - cmp r0, 0 - beq _0802AA1C - cmp r0, 0x7 - bne _0802AA22 - movs r0, 0x26 - bl sub_802B2BC - b _0802AA22 -_0802AA1C: - movs r0, 0x1 - bl sub_802B2BC -_0802AA22: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802A9FC - - thumb_func_start sub_802AA28 -sub_802AA28: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802AAA6 - ldr r2, [sp] - cmp r2, 0 - beq _0802AAA0 - cmp r2, 0 - blt _0802AAA6 - cmp r2, 0x5 - bgt _0802AAA6 - cmp r2, 0x3 - blt _0802AAA6 - ldr r0, _0802AA7C - ldr r0, [r0] - ldr r3, _0802AA80 - adds r1, r0, r3 - str r2, [r1] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x1 - bne _0802AA8C - movs r0, 0x5 - bl sub_80953D4 - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0 - beq _0802AA84 - movs r0, 0x7 - bl sub_802B2BC - b _0802AAA6 - .align 2, 0 -_0802AA7C: .4byte gUnknown_203B2C4 -_0802AA80: .4byte 0x00000534 -_0802AA84: - movs r0, 0x9 - bl sub_802B2BC - b _0802AAA6 -_0802AA8C: - cmp r2, 0x5 - bne _0802AA98 - movs r0, 0x26 - bl sub_802B2BC - b _0802AAA6 -_0802AA98: - movs r0, 0x1D - bl sub_802B2BC - b _0802AAA6 -_0802AAA0: - movs r0, 0x1 - bl sub_802B2BC -_0802AAA6: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802AA28 - - thumb_func_start sub_802AAAC -sub_802AAAC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802AAC0 - movs r0, 0x1 - bl sub_802B2BC -_0802AAC0: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802AAAC - - thumb_func_start sub_802AAC8 -sub_802AAC8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802AADC - movs r0, 0x3 - bl sub_802B2BC -_0802AADC: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802AAC8 - - thumb_func_start sub_802AAE4 -sub_802AAE4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802AB5A - ldr r2, [sp] - cmp r2, 0x1 - beq _0802AB08 - cmp r2, 0x1 - bgt _0802AB02 - cmp r2, 0 - beq _0802AB54 - b _0802AB5A -_0802AB02: - cmp r2, 0x2 - beq _0802AB38 - b _0802AB5A -_0802AB08: - ldr r0, _0802AB2C - ldr r0, [r0] - movs r1, 0x6 - str r1, [r0, 0x40] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - str r2, [r0] - movs r0, 0x5 - bl sub_8095324 - cmp r0, 0 - bne _0802AB30 - movs r0, 0x4 - bl sub_802B2BC - b _0802AB5A - .align 2, 0 -_0802AB2C: .4byte gUnknown_203B2C4 -_0802AB30: - movs r0, 0xF - bl sub_802B2BC - b _0802AB5A -_0802AB38: - ldr r0, _0802AB50 - ldr r0, [r0] - movs r1, 0x7 - str r1, [r0, 0x40] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - str r2, [r0] - movs r0, 0x6 - bl sub_802B2BC - b _0802AB5A - .align 2, 0 -_0802AB50: .4byte gUnknown_203B2C4 -_0802AB54: - movs r0, 0x2 - bl sub_802B2BC -_0802AB5A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802AAE4 - - thumb_func_start sub_802AB60 -sub_802AB60: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802AB74 - movs r0, 0x22 - bl sub_802B2BC -_0802AB74: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802AB60 - - thumb_func_start sub_802AB7C -sub_802AB7C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802AB90 - movs r0, 0x22 - bl sub_802B2BC -_0802AB90: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802AB7C - - thumb_func_start sub_802AB98 -sub_802AB98: - push {r4,lr} - bl sub_802F298 - cmp r0, 0x3 - bne _0802ABE0 - bl sub_802F2C0 - ldr r0, _0802ABE8 - movs r4, 0x98 - lsls r4, 1 - adds r1, r4, 0 - bl sub_808D8E0 - adds r0, r4, 0 - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _0802ABEC - bl strcpy - ldr r0, _0802ABF0 - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - ldr r1, [r0] - movs r0, 0x6 - bl sub_809539C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095240 - movs r0, 0x24 - bl sub_802B2BC -_0802ABE0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802ABE8: .4byte gUnknown_202E5D8 -_0802ABEC: .4byte gUnknown_202DF98 -_0802ABF0: .4byte gUnknown_203B2C4 - thumb_func_end sub_802AB98 - - thumb_func_start nullsub_131 -nullsub_131: - bx lr - thumb_func_end nullsub_131 - - thumb_func_start sub_802ABF8 -sub_802ABF8: - push {r4-r6,lr} - sub sp, 0xB8 - ldr r1, _0802AC14 - ldr r0, [r1] - ldrb r0, [r0] - adds r6, r1, 0 - cmp r0, 0x2A - bls _0802AC0A - b _0802B2AA -_0802AC0A: - lsls r0, 2 - ldr r1, _0802AC18 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802AC14: .4byte gUnknown_203B2C4 -_0802AC18: .4byte _0802AC1C - .align 2, 0 -_0802AC1C: - .4byte _0802B1DC - .4byte _0802B1FC - .4byte _0802B22C - .4byte _0802B2AA - .4byte _0802B1D4 - .4byte _0802ACC8 - .4byte _0802B248 - .4byte _0802B194 - .4byte _0802B1A4 - .4byte _0802B168 - .4byte _0802B138 - .4byte _0802B128 - .4byte _0802B0F0 - .4byte _0802B0AC - .4byte _0802AD08 - .4byte _0802AD18 - .4byte _0802AD20 - .4byte _0802AD46 - .4byte _0802B2AA - .4byte _0802AD80 - .4byte _0802ADB0 - .4byte _0802B2AA - .4byte _0802B07C - .4byte _0802B094 - .4byte _0802B2AA - .4byte _0802AF50 - .4byte _0802AF1A - .4byte _0802AF46 - .4byte _0802B2AA - .4byte _0802B0A4 - .4byte _0802ADF8 - .4byte _0802B2AA - .4byte _0802AF70 - .4byte _0802AF78 - .4byte _0802AFAC - .4byte _0802B2AA - .4byte _0802AF60 - .4byte _0802B2AA - .4byte _0802AEEC - .4byte _0802AEF4 - .4byte _0802B2AA - .4byte _0802B110 - .4byte _0802B120 -_0802ACC8: - bl sub_808D33C - adds r1, r0, 0 - adds r1, 0x4C - add r0, sp, 0x14 - movs r2, 0xA - bl sub_80922B4 - ldr r5, _0802ACF8 - ldr r0, [r5] - ldr r4, _0802ACFC - adds r0, r4 - ldr r1, _0802AD00 - add r2, sp, 0x14 - bl sub_800D158 - ldr r2, [r5] - adds r4, r2, r4 - movs r0, 0x84 - lsls r0, 3 - adds r2, r0 - ldr r3, _0802AD04 - adds r0, r4, 0 - b _0802B238 - .align 2, 0 -_0802ACF8: .4byte gUnknown_203B2C4 -_0802ACFC: .4byte 0x00000434 -_0802AD00: .4byte gUnknown_80DF250 -_0802AD04: .4byte 0x0000010d -_0802AD08: - ldr r0, _0802AD10 - ldr r3, _0802AD14 - b _0802B1A8 - .align 2, 0 -_0802AD10: .4byte gUnknown_80DF304 -_0802AD14: .4byte gUnknown_80DEE60 -_0802AD18: - ldr r0, _0802AD1C - b _0802B22E - .align 2, 0 -_0802AD1C: .4byte gUnknown_80DF330 -_0802AD20: - bl sub_8030894 - cmp r0, 0 - beq _0802AD2A - b _0802B2AA -_0802AD2A: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x5 - movs r1, 0 - movs r2, 0 - movs r3, 0x6 - bl sub_80306A8 - b _0802B2AA -_0802AD46: - ldr r0, [r6] - movs r4, 0xD7 - lsls r4, 2 - adds r0, r4 - bl sub_8006518 - ldr r1, [r6] - movs r5, 0x87 - lsls r5, 2 - adds r0, r1, r5 - adds r1, r4 - ldr r3, _0802AD78 - ldr r2, _0802AD7C - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0 - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r2, 0x3 - bl SetMenuItems - bl sub_803092C - b _0802ADE0 - .align 2, 0 -_0802AD78: .4byte gUnknown_80DED60 -_0802AD7C: .4byte gUnknown_80DED78 -_0802AD80: - bl sub_801D008 - cmp r0, 0 - beq _0802AD8A - b _0802B2AA -_0802AD8A: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - add r2, sp, 0xB4 - ldr r0, _0802ADAC - str r0, [r2] - movs r0, 0 - movs r1, 0x1 - movs r3, 0x9 - bl sub_801C8C4 - b _0802B2AA - .align 2, 0 -_0802ADAC: .4byte 0x00020003 -_0802ADB0: - ldr r0, [r6] - movs r4, 0xD7 - lsls r4, 2 - adds r0, r4 - bl sub_8006518 - ldr r1, [r6] - movs r5, 0x87 - lsls r5, 2 - adds r0, r1, r5 - adds r1, r4 - ldr r3, _0802ADF0 - ldr r2, _0802ADF4 - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0 - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r2, 0x3 - bl SetMenuItems - bl sub_801CCD8 -_0802ADE0: - ldr r0, [r6] - adds r0, r5 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - b _0802B2AA - .align 2, 0 -_0802ADF0: .4byte gUnknown_80DED48 -_0802ADF4: .4byte gUnknown_80DED78 -_0802ADF8: - ldr r1, [r6] - movs r0, 0 - str r0, [r1, 0x44] - bl sub_8011830 - ldr r0, [r6] - ldr r0, [r0, 0x40] - bl sub_8037B28 - ldr r1, [r6] - str r0, [r1, 0x44] - cmp r0, 0 - bne _0802AEE6 - ldr r0, [r1, 0x40] - cmp r0, 0x6 - beq _0802AE1E - cmp r0, 0x7 - beq _0802AE5C - b _0802AE8C -_0802AE1E: - movs r4, 0xDC - lsls r4, 1 - adds r0, r1, r4 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - movs r5, 0x86 - lsls r5, 2 - adds r0, r5 - ldrb r0, [r0] - bl sub_8095228 - ldr r1, [r6] - adds r1, r4 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldr r2, [r6] - ldr r0, [r2, 0x40] - adds r4, r2, r4 - movs r1, 0xF4 - lsls r1, 1 - adds r2, r1 - b _0802AE82 -_0802AE5C: - movs r4, 0xDC - lsls r4, 1 - adds r0, r1, r4 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - movs r5, 0xF4 - lsls r5, 1 - adds r0, r5 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r2, [r6] - ldr r0, [r2, 0x40] - adds r4, r2, r4 - adds r2, r5 -_0802AE82: - adds r1, r4, 0 - bl sub_8037D64 - ldr r1, [r6] - str r0, [r1, 0x44] -_0802AE8C: - ldr r4, _0802AED0 - ldr r2, [r4] - ldr r0, [r2, 0x44] - cmp r0, 0 - bne _0802AEE6 - ldr r0, [r2, 0x40] - cmp r0, 0x7 - bhi _0802AEE6 - cmp r0, 0x6 - bcc _0802AEE6 - movs r3, 0xDC - lsls r3, 1 - adds r1, r2, r3 - movs r5, 0xF4 - lsls r5, 1 - adds r2, r5 - bl sub_80381F4 - ldr r1, [r4] - str r0, [r1, 0x44] - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - beq _0802AED4 - ldr r0, [r4] - movs r2, 0x86 - lsls r2, 3 - adds r1, r0, r2 - movs r3, 0xFC - lsls r3, 1 - adds r0, r3 - b _0802AEE2 - .align 2, 0 -_0802AED0: .4byte gUnknown_203B2C4 -_0802AED4: - ldr r0, [r4] - movs r5, 0x86 - lsls r5, 3 - adds r1, r0, r5 - movs r2, 0xE4 - lsls r2, 1 - adds r0, r2 -_0802AEE2: - ldr r0, [r0] - str r0, [r1] -_0802AEE6: - bl sub_8011854 - b _0802B2AA -_0802AEEC: - ldr r0, _0802AEF0 - b _0802B22E - .align 2, 0 -_0802AEF0: .4byte gUnknown_80DF380 -_0802AEF4: - ldr r0, [r6] - movs r5, 0xEF - lsls r5, 2 - adds r0, r5 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, [r6] - adds r1, 0x8 - movs r0, 0x4 - bl sub_80151C0 - b _0802B2AA -_0802AF1A: - ldr r0, [r6] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r6] - movs r2, 0x86 - lsls r2, 2 - adds r0, r2 - ldrb r0, [r0] - movs r1, 0 - bl sub_8031D70 - b _0802B2AA -_0802AF46: - ldr r0, _0802AF4C - b _0802B22E - .align 2, 0 -_0802AF4C: .4byte gUnknown_80DF3B4 -_0802AF50: - ldr r0, _0802AF5C - ldr r2, [r6] - movs r5, 0x84 - lsls r5, 3 - adds r2, r5 - b _0802B236 - .align 2, 0 -_0802AF5C: .4byte gUnknown_80DF418 -_0802AF60: - ldr r0, _0802AF6C - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _0802B236 - .align 2, 0 -_0802AF6C: .4byte gUnknown_80DF44C -_0802AF70: - ldr r0, _0802AF74 - b _0802B22E - .align 2, 0 -_0802AF74: .4byte gUnknown_80DF46C -_0802AF78: - ldr r0, [r6] - ldr r5, _0802AF90 - adds r0, r5 - ldr r0, [r0] - cmp r0, 0x4 - bne _0802AF86 - b _0802B2AA -_0802AF86: - cmp r0, 0x4 - bgt _0802AF94 - cmp r0, 0x3 - beq _0802AF9A - b _0802B2AA - .align 2, 0 -_0802AF90: .4byte 0x00000534 -_0802AF94: - cmp r0, 0x6 - ble _0802AF9A - b _0802B2AA -_0802AF9A: - ldr r0, _0802AFA8 - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _0802B236 - .align 2, 0 -_0802AFA8: .4byte gUnknown_80DF4F4 -_0802AFAC: - movs r4, 0x98 - lsls r4, 1 - adds r0, r4, 0 - bl sub_808D994 - adds r1, r0, 0 - ldr r5, _0802B00C - ldr r0, [r5] - ldr r2, _0802B010 - adds r0, r2 - bl strcpy - ldr r1, [r5] - movs r3, 0xAA - lsls r3, 3 - adds r0, r1, r3 - movs r2, 0 - strh r4, [r0] - ldr r0, _0802B014 - adds r1, r0 - movs r0, 0x2 - strb r0, [r1] - ldr r0, [r5] - adds r3, 0x4 - adds r1, r0, r3 - str r2, [r1] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - ldr r1, [r0] - movs r0, 0x6 - bl sub_809539C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - adds r2, r0, 0 - adds r0, 0x22 - ldrb r1, [r0] - cmp r1, 0 - beq _0802B018 - ldr r0, [r5] - movs r3, 0xAB - lsls r3, 3 - adds r0, r3 - b _0802B022 - .align 2, 0 -_0802B00C: .4byte gUnknown_203B2C4 -_0802B010: .4byte 0x0000053c -_0802B014: .4byte 0x00000552 -_0802B018: - ldr r0, [r5] - movs r5, 0xAB - lsls r5, 3 - adds r0, r5 - movs r1, 0 -_0802B022: - strb r1, [r0] - ldr r4, _0802B068 - ldr r0, [r4] - ldr r1, _0802B06C - adds r0, r1 - movs r5, 0 - movs r1, 0x1 - strb r1, [r0] - adds r0, r2, 0x4 - movs r1, 0 - bl sub_803C200 - ldr r1, [r4] - movs r3, 0xAC - lsls r3, 3 - adds r2, r1, r3 - str r0, [r2] - ldr r0, _0802B070 - adds r1, r0 - strb r5, [r1] - ldr r0, [r4] - ldr r1, _0802B074 - adds r0, r1 - strb r5, [r0] - ldr r0, [r4] - ldr r2, _0802B078 - adds r0, r2 - strb r5, [r0] - ldr r0, [r4] - subs r3, 0x24 - adds r0, r3 - movs r1, 0 - bl sub_802F204 - b _0802B2AA - .align 2, 0 -_0802B068: .4byte gUnknown_203B2C4 -_0802B06C: .4byte 0x0000055b -_0802B070: .4byte 0x00000559 -_0802B074: .4byte 0x0000055a -_0802B078: .4byte 0x0000055c -_0802B07C: - movs r0, 0 - bl nullsub_23 - ldr r0, _0802B090 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_80141B4 - b _0802B2AA - .align 2, 0 -_0802B090: .4byte gUnknown_80DF544 -_0802B094: - ldr r0, _0802B0A0 - ldr r2, [r6] - movs r5, 0x84 - lsls r5, 3 - adds r2, r5 - b _0802B236 - .align 2, 0 -_0802B0A0: .4byte gUnknown_80DF594 -_0802B0A4: - ldr r0, _0802B0A8 - b _0802B1A6 - .align 2, 0 -_0802B0A8: .4byte gUnknown_80DF5E4 -_0802B0AC: - bl sub_808D33C - adds r1, r0, 0 - add r6, sp, 0x64 - adds r1, 0x4C - adds r0, r6, 0 - movs r2, 0xA - bl sub_80922B4 - ldr r5, _0802B0E0 - ldr r0, [r5] - ldr r4, _0802B0E4 - adds r0, r4 - ldr r1, _0802B0E8 - adds r2, r6, 0 - bl sub_800D158 - ldr r2, [r5] - adds r4, r2, r4 - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 - ldr r3, _0802B0EC - adds r0, r4, 0 - b _0802B238 - .align 2, 0 -_0802B0E0: .4byte gUnknown_203B2C4 -_0802B0E4: .4byte 0x00000434 -_0802B0E8: .4byte gUnknown_80DF63C -_0802B0EC: .4byte 0x0000010d -_0802B0F0: - ldr r0, _0802B108 - ldr r3, _0802B10C - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r5, 0x84 - lsls r5, 3 - adds r1, r5 - b _0802B1BA - .align 2, 0 -_0802B108: .4byte gUnknown_80DF694 -_0802B10C: .4byte gUnknown_80DEEE4 -_0802B110: - ldr r0, _0802B11C - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _0802B236 - .align 2, 0 -_0802B11C: .4byte gUnknown_80DF44C -_0802B120: - ldr r0, _0802B124 - b _0802B22E - .align 2, 0 -_0802B124: .4byte gUnknown_80DF6F0 -_0802B128: - ldr r0, _0802B134 - ldr r2, [r6] - movs r5, 0x84 - lsls r5, 3 - adds r2, r5 - b _0802B236 - .align 2, 0 -_0802B134: .4byte gUnknown_80DF710 -_0802B138: - ldr r0, _0802B160 - ldr r3, _0802B164 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0 - bl sub_8014248 - b _0802B2AA - .align 2, 0 -_0802B160: .4byte gUnknown_80DF73C -_0802B164: .4byte gUnknown_80DEEBC -_0802B168: - ldr r0, _0802B18C - ldr r3, _0802B190 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r5, 0x84 - lsls r5, 3 - adds r1, r5 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _0802B2AA - .align 2, 0 -_0802B18C: .4byte gUnknown_80DF77C -_0802B190: .4byte gUnknown_80DEE7C -_0802B194: - ldr r0, _0802B1A0 - ldr r2, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r2, r1 - b _0802B236 - .align 2, 0 -_0802B1A0: .4byte gUnknown_80DF7D4 -_0802B1A4: - ldr r0, _0802B1CC -_0802B1A6: - ldr r3, _0802B1D0 -_0802B1A8: - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 -_0802B1BA: - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x7 - bl sub_8014248 - b _0802B2AA - .align 2, 0 -_0802B1CC: .4byte gUnknown_80DF870 -_0802B1D0: .4byte gUnknown_80DEE44 -_0802B1D4: - ldr r0, _0802B1D8 - b _0802B22E - .align 2, 0 -_0802B1D8: .4byte gUnknown_80DF8B4 -_0802B1DC: - ldr r0, _0802B1F4 - ldr r3, _0802B1F8 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r5, 0x84 - lsls r5, 3 - adds r1, r5 - b _0802B212 - .align 2, 0 -_0802B1F4: .4byte gUnknown_80DF8EC -_0802B1F8: .4byte gUnknown_80DEDB8 -_0802B1FC: - ldr r0, _0802B224 - ldr r3, _0802B228 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - ldr r1, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 -_0802B212: - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x1 - bl sub_8014248 - b _0802B2AA - .align 2, 0 -_0802B224: .4byte gUnknown_80DF928 -_0802B228: .4byte gUnknown_80DEDB8 -_0802B22C: - ldr r0, _0802B240 -_0802B22E: - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r2, r3 -_0802B236: - ldr r3, _0802B244 -_0802B238: - movs r1, 0 - bl sub_80141B4 - b _0802B2AA - .align 2, 0 -_0802B240: .4byte gUnknown_80DF94C -_0802B244: .4byte 0x0000010d -_0802B248: - ldr r4, [r6] - movs r5, 0xA7 - lsls r5, 3 - adds r0, r4, r5 - ldr r0, [r0] - cmp r0, 0x1 - beq _0802B25C - cmp r0, 0x2 - beq _0802B288 - b _0802B2AA -_0802B25C: - ldr r0, _0802B280 - ldr r3, _0802B284 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - movs r2, 0x84 - lsls r2, 3 - adds r1, r4, r2 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x3 - bl sub_8014248 - b _0802B2AA - .align 2, 0 -_0802B280: .4byte gUnknown_80DF96C -_0802B284: .4byte gUnknown_80DEE08 -_0802B288: - ldr r0, _0802B2B4 - ldr r3, _0802B2B8 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - movs r5, 0x84 - lsls r5, 3 - adds r1, r4, r5 - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x3 - bl sub_8014248 -_0802B2AA: - add sp, 0xB8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0802B2B4: .4byte gUnknown_80DF9A4 -_0802B2B8: .4byte gUnknown_80DEE08 - thumb_func_end sub_802ABF8 - - thumb_func_start sub_802B2BC -sub_802B2BC: - push {lr} - ldr r1, _0802B2D0 - ldr r1, [r1] - strb r0, [r1] - bl nullsub_131 - bl sub_802ABF8 - pop {r0} - bx r0 - .align 2, 0 -_0802B2D0: .4byte gUnknown_203B2C4 - thumb_func_end sub_802B2BC - - thumb_func_start sub_802B2D4 -sub_802B2D4: - push {r4,r5,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _0802B348 - movs r4, 0xA0 - lsls r4, 1 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 - ldr r1, [r5] - movs r0, 0xFF - strb r0, [r1, 0x1] - ldr r0, _0802B34C - subs r4, 0x10 - adds r1, r4, 0 - bl sub_808D8E0 - adds r0, r4, 0 - bl sub_808DDD0 - ldr r1, [r5] - str r0, [r1, 0x4] - ldr r0, [r0, 0x4] - str r0, [r1, 0x8] - movs r2, 0 - strb r2, [r1, 0x10] - ldr r0, [r5] - strb r2, [r0, 0x11] - ldr r0, [r5] - strb r2, [r0, 0x12] - ldr r0, [r5] - movs r1, 0x2 - strh r1, [r0, 0xC] - movs r1, 0x8 - strh r1, [r0, 0xE] - adds r0, 0x1 - bl sub_8099394 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0802B350 - movs r0, 0 - bl sub_802B548 - movs r0, 0x1 - b _0802B352 - .align 2, 0 -_0802B348: .4byte gUnknown_203B2C8 -_0802B34C: .4byte gUnknown_202E5D8 -_0802B350: - movs r0, 0 -_0802B352: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_802B2D4 - - thumb_func_start sub_802B358 -sub_802B358: - push {lr} - ldr r0, _0802B370 - ldr r0, [r0] - ldrb r0, [r0] - cmp r0, 0x5 - bhi _0802B3B2 - lsls r0, 2 - ldr r1, _0802B374 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802B370: .4byte gUnknown_203B2C8 -_0802B374: .4byte _0802B378 - .align 2, 0 -_0802B378: - .4byte _0802B390 - .4byte _0802B396 - .4byte _0802B39C - .4byte _0802B3A2 - .4byte _0802B3A8 - .4byte _0802B3AE -_0802B390: - bl sub_802B560 - b _0802B3B2 -_0802B396: - bl sub_802B57C - b _0802B3B2 -_0802B39C: - bl sub_802B5B8 - b _0802B3B2 -_0802B3A2: - bl sub_802B5FC - b _0802B3B2 -_0802B3A8: - bl sub_802B624 - b _0802B3B2 -_0802B3AE: - movs r0, 0x3 - b _0802B3B4 -_0802B3B2: - movs r0, 0 -_0802B3B4: - pop {r1} - bx r1 - thumb_func_end sub_802B358 - - thumb_func_start sub_802B3B8 -sub_802B3B8: - push {r4,lr} - ldr r4, _0802B3D8 - ldr r0, [r4] - cmp r0, 0 - beq _0802B3D2 - ldr r0, [r0, 0x4] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802B3D2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802B3D8: .4byte gUnknown_203B2C8 - thumb_func_end sub_802B3B8 - - thumb_func_start nullsub_132 -nullsub_132: - bx lr - thumb_func_end nullsub_132 - - thumb_func_start sub_802B3E0 -sub_802B3E0: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x28 - ldr r1, _0802B404 - ldr r0, [r1] - ldrb r0, [r0] - adds r2, r1, 0 - cmp r0, 0x5 - bls _0802B3F8 - b _0802B532 -_0802B3F8: - lsls r0, 2 - ldr r1, _0802B408 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802B404: .4byte gUnknown_203B2C8 -_0802B408: .4byte _0802B40C - .align 2, 0 -_0802B40C: - .4byte _0802B424 - .4byte _0802B464 - .4byte _0802B50C - .4byte _0802B532 - .4byte _0802B524 - .4byte _0802B532 -_0802B424: - movs r0, 0 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _0802B438 - mov r0, sp - bl sub_80920D8 - b _0802B440 -_0802B438: - ldr r1, _0802B458 - mov r0, sp - bl strcpy -_0802B440: - ldr r4, _0802B45C - ldr r0, [r4] - adds r0, 0x14 - ldr r1, _0802B460 - mov r2, sp - bl sub_800D158 - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x14 - b _0802B510 - .align 2, 0 -_0802B458: .4byte gUnknown_80DF9F0 -_0802B45C: .4byte gUnknown_203B2C8 -_0802B460: .4byte gUnknown_80DF9F8 -_0802B464: - movs r6, 0x98 - lsls r6, 1 - adds r0, r6, 0 - bl sub_808D994 - adds r1, r0, 0 - ldr r5, _0802B500 - ldr r0, [r5] - movs r2, 0x8A - lsls r2, 1 - mov r9, r2 - add r0, r9 - bl strcpy - ldr r2, [r5] - movs r3, 0x94 - lsls r3, 1 - adds r0, r2, r3 - movs r1, 0 - mov r8, r1 - movs r1, 0 - strh r6, [r0] - adds r3, 0x2 - adds r2, r3 - movs r0, 0x2 - strb r0, [r2] - ldr r0, [r5] - movs r2, 0x96 - lsls r2, 1 - adds r0, r2 - str r1, [r0] - bl sub_8097790 - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl sub_8095228 - adds r4, r0, 0 - adds r4, 0x4 - ldr r2, [r5] - adds r2, r6 - adds r0, r4, 0 - movs r1, 0 - bl sub_803C37C - adds r0, r4, 0 - movs r1, 0 - bl sub_803C200 - ldr r2, [r5] - movs r3, 0x9C - lsls r3, 1 - adds r1, r2, r3 - str r0, [r1] - ldr r1, _0802B504 - adds r0, r2, r1 - mov r2, r8 - strb r2, [r0] - ldr r0, [r5] - subs r3, 0x6 - adds r0, r3 - strb r2, [r0] - ldr r0, [r5] - ldr r2, _0802B508 - adds r1, r0, r2 - movs r0, 0xA - strb r0, [r1] - ldr r0, [r5] - adds r3, 0x2 - adds r0, r3 - mov r1, r8 - strb r1, [r0] - ldr r0, [r5] - add r0, r9 - movs r1, 0 - bl sub_802F204 - b _0802B532 - .align 2, 0 -_0802B500: .4byte gUnknown_203B2C8 -_0802B504: .4byte 0x00000131 -_0802B508: .4byte 0x00000133 -_0802B50C: - ldr r0, _0802B51C - ldr r2, [r2] -_0802B510: - adds r2, 0x4 - ldr r3, _0802B520 - movs r1, 0 - bl sub_80141B4 - b _0802B532 - .align 2, 0 -_0802B51C: .4byte gUnknown_80DFAA8 -_0802B520: .4byte 0x0000010d -_0802B524: - ldr r0, _0802B540 - ldr r2, [r2] - adds r2, 0x4 - ldr r3, _0802B544 - movs r1, 0 - bl sub_80141B4 -_0802B532: - add sp, 0x28 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0802B540: .4byte gUnknown_80DFB14 -_0802B544: .4byte 0x0000010d - thumb_func_end sub_802B3E0 - - thumb_func_start sub_802B548 -sub_802B548: - push {lr} - ldr r1, _0802B55C - ldr r1, [r1] - strb r0, [r1] - bl nullsub_132 - bl sub_802B3E0 - pop {r0} - bx r0 - .align 2, 0 -_0802B55C: .4byte gUnknown_203B2C8 - thumb_func_end sub_802B548 - - thumb_func_start sub_802B560 -sub_802B560: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802B574 - movs r0, 0x1 - bl sub_802B548 -_0802B574: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802B560 - - thumb_func_start sub_802B57C -sub_802B57C: - push {r4,lr} - bl sub_802F298 - cmp r0, 0x3 - bne _0802B5AA - bl sub_802F2C0 - ldr r0, _0802B5B0 - movs r4, 0x98 - lsls r4, 1 - adds r1, r4, 0 - bl sub_808D8E0 - adds r0, r4, 0 - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _0802B5B4 - bl strcpy - movs r0, 0x2 - bl sub_802B548 -_0802B5AA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802B5B0: .4byte gUnknown_202E5D8 -_0802B5B4: .4byte gUnknown_202DF98 - thumb_func_end sub_802B57C - - thumb_func_start sub_802B5B8 -sub_802B5B8: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802B5EE - bl sub_8011C34 - adds r4, r0, 0 - ldr r0, _0802B5F8 - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl sub_8095228 - movs r1, 0x4 - strb r1, [r0] - str r4, [r0, 0x28] - movs r0, 0x3 - bl sub_802B548 - movs r0, 0x1 - bl sub_8011C28 - movs r0, 0 - bl sub_8012574 -_0802B5EE: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802B5F8: .4byte gUnknown_203B2C8 - thumb_func_end sub_802B5B8 - - thumb_func_start sub_802B5FC -sub_802B5FC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802B61E - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _0802B61E - bl sub_8012750 - movs r0, 0x4 - bl sub_802B548 -_0802B61E: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802B5FC - - thumb_func_start sub_802B624 -sub_802B624: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802B638 - movs r0, 0x5 - bl sub_802B548 -_0802B638: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802B624 - - thumb_func_start sub_802B640 -sub_802B640: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - mov r8, r2 - bl sub_802B9D8 - lsls r0, 24 - cmp r0, 0 - beq _0802B65A - movs r0, 0 - b _0802B706 -_0802B65A: - ldr r5, _0802B710 - ldr r0, [r5] - cmp r0, 0 - bne _0802B66C - movs r0, 0xD4 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] -_0802B66C: - ldr r0, [r5] - str r6, [r0, 0x6C] - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 3 - adds r1, 0x74 - adds r1, r0, r1 - str r1, [r0, 0x70] - adds r0, 0x74 - bl sub_8006518 - ldr r1, [r5] - ldr r2, [r1, 0x6C] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x74 - ldr r0, _0802B714 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - cmp r4, 0 - beq _0802B6B0 - ldr r1, [r5] - ldr r2, [r1, 0x6C] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, 0x7C - adds r1, r0 - ldr r0, [r4] - str r0, [r1] -_0802B6B0: - ldr r0, [r5] - ldr r0, [r0, 0x70] - mov r1, r8 - bl sub_8012D08 - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x74 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - adds r4, 0x38 - bl sub_802B9A8 - adds r1, r0, 0 - adds r0, r4, 0 - mov r2, r8 - adds r3, r6, 0 - bl sub_8013818 - ldr r2, [r5] - ldr r0, _0802B718 - ldrh r1, [r0] - adds r0, r2, 0 - adds r0, 0x50 - strh r1, [r0] - ldr r0, _0802B71C - ldrh r0, [r0] - adds r1, r2, 0 - adds r1, 0x56 - strh r0, [r1] - adds r0, r2, 0 - adds r0, 0x38 - bl sub_8013984 - bl sub_802B880 - bl sub_802B8D4 - movs r0, 0x1 -_0802B706: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0802B710: .4byte gUnknown_203B2CC -_0802B714: .4byte gUnknown_80DFBEC -_0802B718: .4byte gUnknown_203B2D0 -_0802B71C: .4byte gUnknown_203B2D2 - thumb_func_end sub_802B640 - - thumb_func_start sub_802B720 -sub_802B720: - push {lr} - lsls r0, 24 - cmp r0, 0 - bne _0802B73C - ldr r0, _0802B738 - ldr r0, [r0] - adds r0, 0x38 - bl sub_8013660 - movs r0, 0 - b _0802B7A2 - .align 2, 0 -_0802B738: .4byte gUnknown_203B2CC -_0802B73C: - ldr r0, _0802B754 - ldr r0, [r0] - adds r0, 0x38 - bl GetKeyPress - cmp r0, 0x2 - beq _0802B75E - cmp r0, 0x2 - bgt _0802B758 - cmp r0, 0x1 - beq _0802B768 - b _0802B77C - .align 2, 0 -_0802B754: .4byte gUnknown_203B2CC -_0802B758: - cmp r0, 0x4 - beq _0802B772 - b _0802B77C -_0802B75E: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0802B7A2 -_0802B768: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0802B7A2 -_0802B772: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _0802B7A2 -_0802B77C: - ldr r0, _0802B794 - ldr r0, [r0] - adds r0, 0x38 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0802B798 - movs r0, 0 - b _0802B7A2 - .align 2, 0 -_0802B794: .4byte gUnknown_203B2CC -_0802B798: - bl sub_802B880 - bl sub_802B8D4 - movs r0, 0x1 -_0802B7A2: - pop {r1} - bx r1 - thumb_func_end sub_802B720 - - thumb_func_start sub_802B7A8 -sub_802B7A8: - ldr r0, _0802B7CC - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x56 - movs r3, 0 - ldrsh r1, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r1 - adds r1, r2, 0 - adds r1, 0x50 - movs r3, 0 - ldrsh r1, [r1, r3] - adds r0, r1 - adds r0, r2, r0 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0802B7CC: .4byte gUnknown_203B2CC - thumb_func_end sub_802B7A8 - - thumb_func_start sub_802B7D0 -sub_802B7D0: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0802B818 - ldr r0, [r5] - adds r0, 0x74 - movs r1, 0 - movs r2, 0 - bl sub_800641C - bl sub_802B9A8 - adds r1, r0, 0 - ldr r0, [r5] - adds r2, r0, 0 - adds r2, 0x5A - strh r1, [r2] - adds r0, 0x38 - bl sub_8013984 - bl sub_802B880 - bl sub_802B8D4 - cmp r4, 0 - beq _0802B812 - ldr r0, [r5] - adds r0, 0x38 - bl AddMenuCursorSprite -_0802B812: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802B818: .4byte gUnknown_203B2CC - thumb_func_end sub_802B7D0 - - thumb_func_start sub_802B81C -sub_802B81C: - push {r4,r5,lr} - ldr r4, _0802B870 - ldr r2, [r4] - cmp r2, 0 - beq _0802B86A - ldr r1, _0802B874 - adds r0, r2, 0 - adds r0, 0x50 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, _0802B878 - adds r0, r2, 0 - adds r0, 0x56 - ldrh r0, [r0] - strh r0, [r1] - ldr r0, [r2, 0x6C] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x74 - ldr r0, _0802B87C - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x74 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802B86A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802B870: .4byte gUnknown_203B2CC -_0802B874: .4byte gUnknown_203B2D0 -_0802B878: .4byte gUnknown_203B2D2 -_0802B87C: .4byte gUnknown_80DFBD0 - thumb_func_end sub_802B81C - - thumb_func_start sub_802B880 -sub_802B880: - push {r4,lr} - ldr r4, _0802B8D0 - ldr r0, [r4] - adds r0, 0x52 - movs r1, 0 - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x6C] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x82 - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x6C] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x84 - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x74 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802B8D0: .4byte gUnknown_203B2CC - thumb_func_end sub_802B880 - - thumb_func_start sub_802B8D4 -sub_802B8D4: - push {r4-r7,lr} - sub sp, 0x8 - ldr r4, _0802B99C - ldr r0, [r4] - ldr r0, [r0, 0x6C] - bl sub_8008C54 - ldr r0, [r4] - ldr r0, [r0, 0x6C] - bl sub_80073B8 - ldr r2, _0802B9A0 - ldr r0, [r4] - ldr r3, [r0, 0x6C] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r0, _0802B9A4 - ldrb r0, [r0, 0x2] - lsls r0, 3 - adds r0, 0x4 - ldr r3, [r4] - adds r1, r3, 0 - adds r1, 0x56 - movs r5, 0 - ldrsh r2, [r1, r5] - adds r2, 0x1 - movs r1, 0x7 - str r1, [sp] - ldr r1, [r3, 0x6C] - str r1, [sp, 0x4] - movs r1, 0 - movs r3, 0x2 - bl sub_8012BC4 - movs r6, 0 - ldr r0, [r4] - adds r0, 0x52 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r6, r0 - bge _0802B98A - adds r7, r4, 0 -_0802B930: - ldr r0, [r7] - adds r0, 0x38 - adds r1, r6, 0 - bl sub_8013800 - adds r5, r0, 0 - ldr r1, [r7] - adds r0, r1, 0 - adds r0, 0x56 - movs r3, 0 - ldrsh r2, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r2 - adds r0, r6 - adds r0, r1, r0 - ldrb r4, [r0] - ldr r3, [r1, 0x6C] - movs r0, 0xA - adds r1, r5, 0 - movs r2, 0x6 - bl sub_803B6B0 - bl sub_802BC7C - adds r0, r4, 0 - bl sub_803C190 - adds r2, r0, 0 - ldr r0, [r7] - ldr r3, [r0, 0x6C] - movs r0, 0 - str r0, [sp] - movs r0, 0x15 - adds r1, r5, 0 - bl sub_8014FF0 - adds r6, 0x1 - ldr r0, [r7] - adds r0, 0x52 - movs r5, 0 - ldrsh r0, [r0, r5] - cmp r6, r0 - blt _0802B930 -_0802B98A: - ldr r0, _0802B99C - ldr r0, [r0] - ldr r0, [r0, 0x6C] - bl sub_80073E0 - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802B99C: .4byte gUnknown_203B2CC -_0802B9A0: .4byte gUnknown_80DFC04 -_0802B9A4: .4byte gUnknown_80DFBE8 - thumb_func_end sub_802B8D4 - - thumb_func_start sub_802B9A8 -sub_802B9A8: - push {r4,r5,lr} - movs r5, 0 - movs r4, 0 -_0802B9AE: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096E14 - lsls r0, 24 - cmp r0, 0 - beq _0802B9C6 - ldr r0, _0802B9D4 - ldr r0, [r0] - adds r0, r5 - strb r4, [r0] - adds r5, 0x1 -_0802B9C6: - adds r4, 0x1 - cmp r4, 0x37 - ble _0802B9AE - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0802B9D4: .4byte gUnknown_203B2CC - thumb_func_end sub_802B9A8 - - thumb_func_start sub_802B9D8 -sub_802B9D8: - push {r4,lr} - movs r4, 0 -_0802B9DC: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096E14 - lsls r0, 24 - cmp r0, 0 - beq _0802B9EE - movs r0, 0 - b _0802B9F6 -_0802B9EE: - adds r4, 0x1 - cmp r4, 0x37 - ble _0802B9DC - movs r0, 0x1 -_0802B9F6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_802B9D8 - - thumb_func_start sub_802B9FC -sub_802B9FC: - push {r4-r7,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _0802BA80 - movs r0, 0x94 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r6, 0 - strb r4, [r0, 0x4] - ldr r0, [r5] - adds r0, 0x88 - bl sub_801317C - ldr r1, [r5] - str r6, [r1, 0x24] - adds r1, 0x28 - ldr r0, _0802BA84 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r1, [r5] - ldr r2, _0802BA88 - adds r1, 0x40 - adds r0, r2, 0 - ldm r0!, {r3,r4,r7} - stm r1!, {r3,r4,r7} - ldm r0!, {r3,r4,r7} - stm r1!, {r3,r4,r7} - ldr r1, [r5] - adds r1, 0x58 - adds r0, r2, 0 - ldm r0!, {r3,r4,r7} - stm r1!, {r3,r4,r7} - ldm r0!, {r3,r4,r7} - stm r1!, {r3,r4,r7} - ldr r0, [r5] - adds r0, 0x70 - ldm r2!, {r1,r4,r7} - stm r0!, {r1,r4,r7} - ldm r2!, {r3,r4,r7} - stm r0!, {r3,r4,r7} - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x28 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r5] - str r6, [r0, 0x8] - bl sub_802BCC4 - bl sub_802BC7C - movs r0, 0 - bl sub_802BB14 - movs r0, 0x1 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0802BA80: .4byte gUnknown_203B2D4 -_0802BA84: .4byte gUnknown_80DFC34 -_0802BA88: .4byte gUnknown_80DFC18 - thumb_func_end sub_802B9FC - - thumb_func_start sub_802BA8C -sub_802BA8C: - push {lr} - ldr r0, _0802BAA4 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x1 - beq _0802BAB8 - cmp r0, 0x1 - bgt _0802BAA8 - cmp r0, 0 - beq _0802BAB2 - b _0802BAC2 - .align 2, 0 -_0802BAA4: .4byte gUnknown_203B2D4 -_0802BAA8: - cmp r0, 0x2 - beq _0802BAC2 - cmp r0, 0x3 - beq _0802BABE - b _0802BAC2 -_0802BAB2: - bl sub_802BB98 - b _0802BAC6 -_0802BAB8: - bl sub_802BC08 - b _0802BAC6 -_0802BABE: - movs r0, 0x3 - b _0802BAC8 -_0802BAC2: - movs r0, 0x2 - b _0802BAC8 -_0802BAC6: - movs r0, 0 -_0802BAC8: - pop {r1} - bx r1 - thumb_func_end sub_802BA8C - - thumb_func_start sub_802BACC -sub_802BACC: - push {r4,r5,lr} - ldr r4, _0802BB0C - ldr r2, [r4] - cmp r2, 0 - beq _0802BB06 - ldr r0, [r2, 0x24] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x28 - ldr r0, _0802BB10 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x28 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802BB06: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802BB0C: .4byte gUnknown_203B2D4 -_0802BB10: .4byte gUnknown_80DFC18 - thumb_func_end sub_802BACC - - thumb_func_start sub_802BB14 -sub_802BB14: - push {lr} - ldr r1, _0802BB24 - ldr r1, [r1] - str r0, [r1] - bl sub_802BB28 - pop {r0} - bx r0 - .align 2, 0 -_0802BB24: .4byte gUnknown_203B2D4 - thumb_func_end sub_802BB14 - - thumb_func_start sub_802BB28 -sub_802BB28: - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, _0802BB94 - ldr r1, [r5] - ldr r0, [r1] - cmp r0, 0 - blt _0802BB8C - cmp r0, 0x1 - bgt _0802BB8C - ldr r0, [r1, 0x24] - bl sub_8008C54 - ldr r0, [r5] - ldr r0, [r0, 0x24] - bl sub_80073B8 - ldr r0, [r5] - ldrb r0, [r0, 0x4] - bl sub_803C190 - adds r2, r0, 0 - ldr r0, [r5] - ldr r3, [r0, 0x24] - movs r4, 0 - str r4, [sp] - movs r0, 0xA - movs r1, 0 - bl sub_8014FF0 - ldr r3, [r5] - ldr r1, [r3, 0x8] - lsls r1, 2 - adds r0, r3, 0 - adds r0, 0x10 - adds r0, r1 - ldr r2, [r0] - ldr r3, [r3, 0x24] - str r4, [sp] - movs r0, 0x6 - movs r1, 0x14 - bl sub_8014FF0 - ldr r0, [r5] - ldr r0, [r0, 0x24] - bl sub_80073E0 - ldr r1, [r5] - ldr r0, [r1, 0x8] - adds r0, 0x1 - str r0, [r1, 0x8] -_0802BB8C: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802BB94: .4byte gUnknown_203B2D4 - thumb_func_end sub_802BB28 - - thumb_func_start sub_802BB98 -sub_802BB98: - push {r4,lr} - ldr r0, _0802BBD4 - ldr r2, [r0] - ldr r1, [r2, 0xC] - adds r4, r0, 0 - cmp r1, 0 - beq _0802BBBC - ldr r0, [r2, 0x20] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0802BBB4 - bl sub_8013E54 -_0802BBB4: - ldr r1, [r4] - ldr r0, [r1, 0x20] - adds r0, 0x1 - str r0, [r1, 0x20] -_0802BBBC: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x88 - ldr r1, [r1, 0x24] - bl sub_8012A64 - cmp r0, 0x1 - beq _0802BBD8 - cmp r0, 0x2 - beq _0802BBF6 - b _0802BC02 - .align 2, 0 -_0802BBD4: .4byte gUnknown_203B2D4 -_0802BBD8: - movs r0, 0 - bl sub_80119D4 - ldr r0, [r4] - ldr r0, [r0, 0xC] - cmp r0, 0 - beq _0802BBEE - movs r0, 0x1 - bl sub_802BB14 - b _0802BC02 -_0802BBEE: - movs r0, 0x3 - bl sub_802BB14 - b _0802BC02 -_0802BBF6: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - bl sub_802BB14 -_0802BC02: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802BB98 - - thumb_func_start sub_802BC08 -sub_802BC08: - push {r4,lr} - ldr r0, _0802BC44 - ldr r3, [r0] - ldr r2, [r3, 0x8] - ldr r1, [r3, 0xC] - adds r4, r0, 0 - cmp r2, r1 - bge _0802BC2E - ldr r0, [r3, 0x20] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0802BC26 - bl sub_8013E54 -_0802BC26: - ldr r1, [r4] - ldr r0, [r1, 0x20] - adds r0, 0x1 - str r0, [r1, 0x20] -_0802BC2E: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x88 - ldr r1, [r1, 0x24] - bl sub_8012A64 - cmp r0, 0x1 - beq _0802BC48 - cmp r0, 0x2 - beq _0802BC68 - b _0802BC74 - .align 2, 0 -_0802BC44: .4byte gUnknown_203B2D4 -_0802BC48: - movs r0, 0 - bl sub_80119D4 - ldr r0, [r4] - ldr r1, [r0, 0x8] - ldr r0, [r0, 0xC] - cmp r1, r0 - bge _0802BC60 - movs r0, 0x1 - bl sub_802BB14 - b _0802BC74 -_0802BC60: - movs r0, 0x3 - bl sub_802BB14 - b _0802BC74 -_0802BC68: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - bl sub_802BB14 -_0802BC74: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802BC08 - - thumb_func_start sub_802BC7C -sub_802BC7C: - push {r4,lr} - ldr r4, _0802BCA4 - bl sub_808D3BC - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_808DA34 - ldr r0, _0802BCA8 - ldr r0, [r0] - ldrb r0, [r0, 0xB] - cmp r0, 0x1 - bne _0802BCB0 - adds r0, r4, 0 - adds r0, 0x50 - ldr r1, _0802BCAC - bl strcpy - b _0802BCBA - .align 2, 0 -_0802BCA4: .4byte gUnknown_202DF98 -_0802BCA8: .4byte gUnknown_203B46C -_0802BCAC: .4byte gUnknown_80DFC4C -_0802BCB0: - adds r0, r4, 0 - adds r0, 0x50 - ldr r1, _0802BCC0 - bl strcpy -_0802BCBA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802BCC0: .4byte gUnknown_80DFC50 - thumb_func_end sub_802BC7C - - thumb_func_start sub_802BCC4 -sub_802BCC4: - push {r4,lr} - ldr r4, _0802BCDC - ldr r0, [r4] - ldrb r0, [r0, 0x4] - bl sub_803C1A0 - adds r3, r0, 0 - ldr r1, [r4] - movs r0, 0 - str r0, [r1, 0xC] - str r3, [r1, 0x10] - b _0802BD08 - .align 2, 0 -_0802BCDC: .4byte gUnknown_203B2D4 -_0802BCE0: - cmp r0, 0x23 - bne _0802BD06 - ldrb r2, [r3, 0x1] - cmp r2, 0x50 - beq _0802BCF0 - adds r1, r3, 0x2 - cmp r2, 0x70 - bne _0802BD02 -_0802BCF0: - ldr r0, [r4] - ldr r1, [r0, 0xC] - adds r1, 0x1 - str r1, [r0, 0xC] - lsls r1, 2 - adds r0, 0x10 - adds r0, r1 - adds r1, r3, 0x2 - str r1, [r0] -_0802BD02: - adds r3, r1, 0 - b _0802BD08 -_0802BD06: - adds r3, 0x1 -_0802BD08: - ldrb r0, [r3] - cmp r0, 0 - bne _0802BCE0 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802BCC4 - - thumb_func_start sub_802BD14 -sub_802BD14: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - mov r8, r2 - bl sub_802C0E8 - lsls r0, 24 - cmp r0, 0 - beq _0802BD2E - movs r0, 0 - b _0802BDD4 -_0802BD2E: - ldr r5, _0802BDE0 - ldr r0, [r5] - cmp r0, 0 - bne _0802BD40 - movs r0, 0xA4 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] -_0802BD40: - ldr r0, [r5] - str r6, [r0, 0x38] - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 3 - adds r1, 0x40 - adds r1, r0, r1 - str r1, [r0, 0x3C] - adds r0, 0x40 - bl sub_8006518 - ldr r1, [r5] - ldr r2, [r1, 0x38] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x40 - ldr r0, _0802BDE4 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r2, [r5] - ldr r1, [r2, 0x3C] - adds r0, r2, 0 - adds r0, 0xA0 - str r0, [r1, 0x14] - cmp r4, 0 - beq _0802BD8E - ldr r1, [r2, 0x38] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r1, r2, 0 - adds r1, 0x48 - adds r1, r0 - ldr r0, [r4] - str r0, [r1] -_0802BD8E: - ldr r0, [r5] - ldr r0, [r0, 0x3C] - mov r1, r8 - bl sub_8012D34 - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x40 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - adds r4, 0x4 - bl sub_802C0B8 - adds r1, r0, 0 - adds r0, r4, 0 - mov r2, r8 - adds r3, r6, 0 - bl sub_8013848 - ldr r0, [r5] - ldr r1, _0802BDE8 - ldrh r1, [r1] - strh r1, [r0, 0x1C] - adds r0, 0x4 - bl sub_8013984 - bl sub_802BF30 - bl sub_802BFA0 - movs r0, 0x1 -_0802BDD4: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0802BDE0: .4byte gUnknown_203B2D8 -_0802BDE4: .4byte gUnknown_80DFC74 -_0802BDE8: .4byte gUnknown_203B2DC - thumb_func_end sub_802BD14 - - thumb_func_start sub_802BDEC -sub_802BDEC: - push {lr} - lsls r0, 24 - cmp r0, 0 - bne _0802BE08 - ldr r0, _0802BE04 - ldr r0, [r0] - adds r0, 0x4 - bl sub_8013660 - movs r0, 0 - b _0802BE6E - .align 2, 0 -_0802BE04: .4byte gUnknown_203B2D8 -_0802BE08: - ldr r0, _0802BE20 - ldr r0, [r0] - adds r0, 0x4 - bl GetKeyPress - cmp r0, 0x2 - beq _0802BE2A - cmp r0, 0x2 - bgt _0802BE24 - cmp r0, 0x1 - beq _0802BE34 - b _0802BE48 - .align 2, 0 -_0802BE20: .4byte gUnknown_203B2D8 -_0802BE24: - cmp r0, 0x4 - beq _0802BE3E - b _0802BE48 -_0802BE2A: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0802BE6E -_0802BE34: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0802BE6E -_0802BE3E: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _0802BE6E -_0802BE48: - ldr r0, _0802BE60 - ldr r0, [r0] - adds r0, 0x4 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0802BE64 - movs r0, 0 - b _0802BE6E - .align 2, 0 -_0802BE60: .4byte gUnknown_203B2D8 -_0802BE64: - bl sub_802BF30 - bl sub_802BFA0 - movs r0, 0x1 -_0802BE6E: - pop {r1} - bx r1 - thumb_func_end sub_802BDEC - - thumb_func_start sub_802BE74 -sub_802BE74: - ldr r0, _0802BE90 - ldr r1, [r0] - movs r0, 0x22 - ldrsh r2, [r1, r0] - movs r3, 0x20 - ldrsh r0, [r1, r3] - muls r0, r2 - movs r3, 0x1C - ldrsh r2, [r1, r3] - adds r0, r2 - adds r1, r0 - ldrb r0, [r1] - bx lr - .align 2, 0 -_0802BE90: .4byte gUnknown_203B2D8 - thumb_func_end sub_802BE74 - - thumb_func_start sub_802BE94 -sub_802BE94: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0802BED8 - ldr r0, [r5] - adds r0, 0x40 - movs r1, 0 - movs r2, 0 - bl sub_800641C - bl sub_802C0B8 - adds r1, r0, 0 - ldr r0, [r5] - strh r1, [r0, 0x26] - adds r0, 0x4 - bl sub_8013984 - bl sub_802BF30 - bl sub_802BFA0 - cmp r4, 0 - beq _0802BED2 - ldr r0, [r5] - adds r0, 0x4 - bl AddMenuCursorSprite -_0802BED2: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802BED8: .4byte gUnknown_203B2D8 - thumb_func_end sub_802BE94 - - thumb_func_start sub_802BEDC -sub_802BEDC: - push {r4,r5,lr} - ldr r4, _0802BF24 - ldr r2, [r4] - cmp r2, 0 - beq _0802BF1C - ldr r1, _0802BF28 - ldrh r0, [r2, 0x1C] - strh r0, [r1] - ldr r0, [r2, 0x38] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x40 - ldr r0, _0802BF2C - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x40 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802BF1C: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802BF24: .4byte gUnknown_203B2D8 -_0802BF28: .4byte gUnknown_203B2DC -_0802BF2C: .4byte gUnknown_80DFC5C - thumb_func_end sub_802BEDC - - thumb_func_start sub_802BF30 -sub_802BF30: - push {r4,lr} - ldr r4, _0802BF9C - ldr r0, [r4] - adds r0, 0xA0 - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xA1 - strb r2, [r0] - ldr r0, [r4] - adds r0, 0xA2 - movs r1, 0xC - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xA3 - strb r2, [r0] - ldr r0, [r4] - movs r1, 0x1E - ldrsh r0, [r0, r1] - movs r1, 0x18 - bl sub_8009614 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x38] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x4E - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x38] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x50 - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x40 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802BF9C: .4byte gUnknown_203B2D8 - thumb_func_end sub_802BF30 - - thumb_func_start sub_802BFA0 -sub_802BFA0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xDC - ldr r4, _0802C060 - ldr r0, [r4] - ldr r0, [r0, 0x38] - bl sub_8008C54 - ldr r0, [r4] - ldr r0, [r0, 0x38] - bl sub_80073B8 - ldr r1, [r4] - movs r2, 0x22 - ldrsh r0, [r1, r2] - lsls r0, 3 - adds r0, 0xA - ldr r2, _0802C064 - ldr r3, [r1, 0x38] - movs r1, 0 - str r1, [sp] - bl xxx_call_draw_string - movs r6, 0 - ldr r0, [r4] - movs r3, 0x1E - ldrsh r0, [r0, r3] - cmp r6, r0 - bge _0802C09A - adds r7, r4, 0 - ldr r0, _0802C068 - mov r9, r0 - add r1, sp, 0x5C - mov r8, r1 -_0802BFE8: - ldr r1, [r7] - movs r3, 0x22 - ldrsh r2, [r1, r3] - movs r3, 0x20 - ldrsh r0, [r1, r3] - muls r0, r2 - adds r0, r6 - adds r1, r0 - ldrb r0, [r1] - bl sub_8095FE8 - adds r5, r0, 0 - ldr r0, [r7] - ldr r1, [r0, 0x38] - str r1, [sp, 0x4] - adds r0, 0x4 - adds r1, r6, 0 - bl sub_8013800 - str r0, [sp, 0x4C] - ldrb r0, [r5] - cmp r0, 0x1 - bne _0802C06C - ldr r0, [r7] - adds r0, 0x4 - adds r1, r6, 0 - bl sub_8013800 - adds r4, r0, 0 - ldr r0, [r7] - ldr r3, [r0, 0x38] - movs r0, 0xA - adds r1, r4, 0 - movs r2, 0x6 - bl sub_803B6B0 - bl sub_808D33C - adds r1, r0, 0 - mov r0, r9 - bl sub_808DA34 - ldrb r0, [r5, 0x5] - bl sub_803C190 - adds r1, r0, 0 - mov r0, r8 - mov r2, r9 - bl sub_800D158 - ldr r0, [r7] - ldr r3, [r0, 0x38] - movs r0, 0 - str r0, [sp] - movs r0, 0x15 - adds r1, r4, 0 - mov r2, r8 - bl xxx_call_draw_string - b _0802C08E - .align 2, 0 -_0802C060: .4byte gUnknown_203B2D8 -_0802C064: .4byte gUnknown_80DFC8C -_0802C068: .4byte gUnknown_202DF98 -_0802C06C: - adds r0, r5, 0 - add r1, sp, 0x4 - bl sub_803B35C - adds r0, r5, 0 - bl sub_80968B0 - lsls r0, 24 - cmp r0, 0 - beq _0802C088 - mov r1, sp - adds r1, 0x47 - movs r0, 0x2 - strb r0, [r1] -_0802C088: - add r0, sp, 0x4 - bl sub_803B6D4 -_0802C08E: - adds r6, 0x1 - ldr r0, [r7] - movs r1, 0x1E - ldrsh r0, [r0, r1] - cmp r6, r0 - blt _0802BFE8 -_0802C09A: - ldr r0, _0802C0B4 - ldr r0, [r0] - ldr r0, [r0, 0x38] - bl sub_80073E0 - add sp, 0xDC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802C0B4: .4byte gUnknown_203B2D8 - thumb_func_end sub_802BFA0 - - thumb_func_start sub_802C0B8 -sub_802C0B8: - push {r4,r5,lr} - movs r5, 0 - movs r4, 0 -_0802C0BE: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096000 - lsls r0, 24 - cmp r0, 0 - bne _0802C0D6 - ldr r0, _0802C0E4 - ldr r0, [r0] - adds r0, r5 - strb r4, [r0] - adds r5, 0x1 -_0802C0D6: - adds r4, 0x1 - cmp r4, 0x3 - ble _0802C0BE - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0802C0E4: .4byte gUnknown_203B2D8 - thumb_func_end sub_802C0B8 - - thumb_func_start sub_802C0E8 -sub_802C0E8: - push {r4,lr} - movs r4, 0 -_0802C0EC: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096000 - lsls r0, 24 - cmp r0, 0 - bne _0802C0FE - movs r0, 0 - b _0802C106 -_0802C0FE: - adds r4, 0x1 - cmp r4, 0x3 - ble _0802C0EC - movs r0, 0x1 -_0802C106: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_802C0E8 - - thumb_func_start sub_802C10C -sub_802C10C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - mov r8, r2 - bl sub_802C4A4 - lsls r0, 24 - cmp r0, 0 - beq _0802C126 - movs r0, 0 - b _0802C1CC -_0802C126: - ldr r5, _0802C1D8 - ldr r0, [r5] - cmp r0, 0 - bne _0802C138 - movs r0, 0xA8 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] -_0802C138: - ldr r0, [r5] - str r6, [r0, 0x3C] - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 3 - adds r1, 0x44 - adds r1, r0, r1 - str r1, [r0, 0x40] - adds r0, 0x44 - bl sub_8006518 - ldr r1, [r5] - ldr r2, [r1, 0x3C] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x44 - ldr r0, _0802C1DC - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r2, [r5] - ldr r1, [r2, 0x40] - adds r0, r2, 0 - adds r0, 0xA4 - str r0, [r1, 0x14] - cmp r4, 0 - beq _0802C186 - ldr r1, [r2, 0x3C] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r1, r2, 0 - adds r1, 0x4C - adds r1, r0 - ldr r0, [r4] - str r0, [r1] -_0802C186: - ldr r0, [r5] - ldr r0, [r0, 0x40] - mov r1, r8 - bl sub_8012D34 - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x44 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - adds r4, 0x8 - bl sub_802C474 - adds r1, r0, 0 - adds r0, r4, 0 - mov r2, r8 - adds r3, r6, 0 - bl sub_8013848 - ldr r0, [r5] - ldr r1, _0802C1E0 - ldrh r1, [r1] - strh r1, [r0, 0x20] - adds r0, 0x8 - bl sub_8013984 - bl sub_802C328 - bl sub_802C39C - movs r0, 0x1 -_0802C1CC: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0802C1D8: .4byte gUnknown_203B2E0 -_0802C1DC: .4byte gUnknown_80DFCB4 -_0802C1E0: .4byte gUnknown_203B2E4 - thumb_func_end sub_802C10C - - thumb_func_start sub_802C1E4 -sub_802C1E4: - push {lr} - lsls r0, 24 - cmp r0, 0 - bne _0802C200 - ldr r0, _0802C1FC - ldr r0, [r0] - adds r0, 0x8 - bl sub_8013660 - movs r0, 0 - b _0802C266 - .align 2, 0 -_0802C1FC: .4byte gUnknown_203B2E0 -_0802C200: - ldr r0, _0802C218 - ldr r0, [r0] - adds r0, 0x8 - bl GetKeyPress - cmp r0, 0x2 - beq _0802C222 - cmp r0, 0x2 - bgt _0802C21C - cmp r0, 0x1 - beq _0802C22C - b _0802C240 - .align 2, 0 -_0802C218: .4byte gUnknown_203B2E0 -_0802C21C: - cmp r0, 0x4 - beq _0802C236 - b _0802C240 -_0802C222: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0802C266 -_0802C22C: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0802C266 -_0802C236: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _0802C266 -_0802C240: - ldr r0, _0802C258 - ldr r0, [r0] - adds r0, 0x8 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0802C25C - movs r0, 0 - b _0802C266 - .align 2, 0 -_0802C258: .4byte gUnknown_203B2E0 -_0802C25C: - bl sub_802C328 - bl sub_802C39C - movs r0, 0x1 -_0802C266: - pop {r1} - bx r1 - thumb_func_end sub_802C1E4 - - thumb_func_start sub_802C26C -sub_802C26C: - ldr r0, _0802C288 - ldr r1, [r0] - movs r0, 0x26 - ldrsh r2, [r1, r0] - movs r3, 0x24 - ldrsh r0, [r1, r3] - muls r0, r2 - movs r3, 0x20 - ldrsh r2, [r1, r3] - adds r0, r2 - adds r1, r0 - ldrb r0, [r1] - bx lr - .align 2, 0 -_0802C288: .4byte gUnknown_203B2E0 - thumb_func_end sub_802C26C - - thumb_func_start sub_802C28C -sub_802C28C: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0802C2D0 - ldr r0, [r5] - adds r0, 0x44 - movs r1, 0 - movs r2, 0 - bl sub_800641C - bl sub_802C474 - adds r1, r0, 0 - ldr r0, [r5] - strh r1, [r0, 0x2A] - adds r0, 0x8 - bl sub_8013984 - bl sub_802C328 - bl sub_802C39C - cmp r4, 0 - beq _0802C2CA - ldr r0, [r5] - adds r0, 0x8 - bl AddMenuCursorSprite -_0802C2CA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802C2D0: .4byte gUnknown_203B2E0 - thumb_func_end sub_802C28C - - thumb_func_start sub_802C2D4 -sub_802C2D4: - push {r4,r5,lr} - ldr r4, _0802C31C - ldr r2, [r4] - cmp r2, 0 - beq _0802C314 - ldr r1, _0802C320 - ldrh r0, [r2, 0x20] - strh r0, [r1] - ldr r0, [r2, 0x3C] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x44 - ldr r0, _0802C324 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x44 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802C314: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802C31C: .4byte gUnknown_203B2E0 -_0802C320: .4byte gUnknown_203B2E4 -_0802C324: .4byte gUnknown_80DFC9C - thumb_func_end sub_802C2D4 - - thumb_func_start sub_802C328 -sub_802C328: - push {r4,lr} - ldr r4, _0802C398 - ldr r0, [r4] - ldrh r1, [r0, 0x28] - adds r0, 0xA4 - movs r2, 0 - strb r1, [r0] - ldr r0, [r4] - ldrh r1, [r0, 0x26] - adds r0, 0xA5 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xA6 - movs r1, 0xC - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xA7 - strb r2, [r0] - ldr r0, [r4] - movs r1, 0x22 - ldrsh r0, [r0, r1] - movs r1, 0x18 - bl sub_8009614 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x3C] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x52 - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x3C] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x54 - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x44 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802C398: .4byte gUnknown_203B2E0 - thumb_func_end sub_802C328 - - thumb_func_start sub_802C39C -sub_802C39C: - push {r4-r7,lr} - sub sp, 0x60 - ldr r7, _0802C3F8 - ldr r0, [r7] - ldr r0, [r0, 0x3C] - bl sub_8008C54 - ldr r0, [r7] - ldr r0, [r0, 0x3C] - bl sub_80073B8 - ldr r0, [r7] - movs r1, 0x26 - ldrsh r4, [r0, r1] - lsls r4, 3 - adds r5, r4, 0 - adds r5, 0xA - ldr r2, _0802C3FC - ldr r3, [r0, 0x3C] - movs r0, 0 - str r0, [sp] - adds r0, r5, 0 - movs r1, 0 - bl xxx_call_draw_string - adds r4, 0x4 - ldr r1, [r7] - adds r0, r1, 0 - adds r0, 0xA6 - ldrb r0, [r0] - lsls r0, 3 - adds r5, r4, r0 - movs r3, 0x26 - ldrsh r2, [r1, r3] - adds r2, 0x1 - movs r0, 0x7 - str r0, [sp] - ldr r0, [r1, 0x3C] - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r1, 0 - movs r3, 0x2 - bl sub_8012BC4 - movs r6, 0 - b _0802C452 - .align 2, 0 -_0802C3F8: .4byte gUnknown_203B2E0 -_0802C3FC: .4byte gUnknown_80DFCCC -_0802C400: - ldr r1, [r7] - movs r3, 0x26 - ldrsh r2, [r1, r3] - movs r3, 0x24 - ldrsh r0, [r1, r3] - muls r0, r2 - adds r0, r6 - adds r1, r0 - ldrb r5, [r1] - adds r0, r5, 0 - bl sub_8096574 - adds r4, r0, 0 - ldr r0, [r7] - ldr r1, [r0, 0x3C] - str r1, [sp, 0x8] - adds r0, 0x8 - adds r1, r6, 0 - bl sub_8013800 - str r0, [sp, 0x50] - adds r0, r4, 0 - add r1, sp, 0x8 - bl sub_803B35C - adds r0, r5, 0 - bl sub_8096574 - bl sub_80968B0 - lsls r0, 24 - cmp r0, 0 - beq _0802C44A - mov r1, sp - adds r1, 0x4B - movs r0, 0x2 - strb r0, [r1] -_0802C44A: - add r0, sp, 0x8 - bl sub_803B6D4 - adds r6, 0x1 -_0802C452: - ldr r0, [r7] - movs r1, 0x22 - ldrsh r0, [r0, r1] - cmp r6, r0 - blt _0802C400 - ldr r0, _0802C470 - ldr r0, [r0] - ldr r0, [r0, 0x3C] - bl sub_80073E0 - add sp, 0x60 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802C470: .4byte gUnknown_203B2E0 - thumb_func_end sub_802C39C - - thumb_func_start sub_802C474 -sub_802C474: - push {r4,r5,lr} - movs r5, 0 - movs r4, 0 -_0802C47A: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_809658C - lsls r0, 24 - cmp r0, 0 - bne _0802C492 - ldr r0, _0802C4A0 - ldr r0, [r0] - adds r0, r5 - strb r4, [r0] - adds r5, 0x1 -_0802C492: - adds r4, 0x1 - cmp r4, 0x7 - ble _0802C47A - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0802C4A0: .4byte gUnknown_203B2E0 - thumb_func_end sub_802C474 - - thumb_func_start sub_802C4A4 -sub_802C4A4: - push {r4,lr} - movs r4, 0 -_0802C4A8: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_809658C - lsls r0, 24 - cmp r0, 0 - bne _0802C4BA - movs r0, 0 - b _0802C4C2 -_0802C4BA: - adds r4, 0x1 - cmp r4, 0x7 - ble _0802C4A8 - movs r0, 0x1 -_0802C4C2: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_802C4A4 - - thumb_func_start sub_802C4C8 -sub_802C4C8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - mov r8, r2 - bl sub_802C83C - lsls r0, 24 - cmp r0, 0 - beq _0802C4E2 - movs r0, 0 - b _0802C580 -_0802C4E2: - ldr r5, _0802C58C - movs r0, 0xA8 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - str r6, [r0, 0x3C] - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 3 - adds r1, 0x44 - adds r1, r0, r1 - str r1, [r0, 0x40] - adds r0, 0x44 - bl sub_8006518 - ldr r1, [r5] - ldr r2, [r1, 0x3C] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x44 - ldr r0, _0802C590 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r2, [r5] - ldr r1, [r2, 0x40] - adds r0, r2, 0 - adds r0, 0xA4 - str r0, [r1, 0x14] - cmp r4, 0 - beq _0802C53A - ldr r1, [r2, 0x3C] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r1, r2, 0 - adds r1, 0x4C - adds r1, r0 - ldr r0, [r4] - str r0, [r1] -_0802C53A: - ldr r0, [r5] - ldr r0, [r0, 0x40] - mov r1, r8 - bl sub_8012D34 - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x44 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - adds r4, 0x8 - bl sub_802C80C - adds r1, r0, 0 - adds r0, r4, 0 - mov r2, r8 - adds r3, r6, 0 - bl sub_8013848 - ldr r0, [r5] - ldr r1, _0802C594 - ldrh r1, [r1] - strh r1, [r0, 0x20] - adds r0, 0x8 - bl sub_8013984 - bl sub_802C6DC - bl sub_802C750 - movs r0, 0x1 -_0802C580: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0802C58C: .4byte gUnknown_203B2E8 -_0802C590: .4byte gUnknown_80DFCFC -_0802C594: .4byte gUnknown_203B2EC - thumb_func_end sub_802C4C8 - - thumb_func_start sub_802C598 -sub_802C598: - push {lr} - lsls r0, 24 - cmp r0, 0 - bne _0802C5B4 - ldr r0, _0802C5B0 - ldr r0, [r0] - adds r0, 0x8 - bl sub_8013660 - movs r0, 0 - b _0802C61A - .align 2, 0 -_0802C5B0: .4byte gUnknown_203B2E8 -_0802C5B4: - ldr r0, _0802C5CC - ldr r0, [r0] - adds r0, 0x8 - bl GetKeyPress - cmp r0, 0x2 - beq _0802C5D6 - cmp r0, 0x2 - bgt _0802C5D0 - cmp r0, 0x1 - beq _0802C5E0 - b _0802C5F4 - .align 2, 0 -_0802C5CC: .4byte gUnknown_203B2E8 -_0802C5D0: - cmp r0, 0x4 - beq _0802C5EA - b _0802C5F4 -_0802C5D6: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0802C61A -_0802C5E0: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0802C61A -_0802C5EA: - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _0802C61A -_0802C5F4: - ldr r0, _0802C60C - ldr r0, [r0] - adds r0, 0x8 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0802C610 - movs r0, 0 - b _0802C61A - .align 2, 0 -_0802C60C: .4byte gUnknown_203B2E8 -_0802C610: - bl sub_802C6DC - bl sub_802C750 - movs r0, 0x1 -_0802C61A: - pop {r1} - bx r1 - thumb_func_end sub_802C598 - - thumb_func_start sub_802C620 -sub_802C620: - ldr r0, _0802C63C - ldr r1, [r0] - movs r0, 0x26 - ldrsh r2, [r1, r0] - movs r3, 0x24 - ldrsh r0, [r1, r3] - muls r0, r2 - movs r3, 0x20 - ldrsh r2, [r1, r3] - adds r0, r2 - adds r1, r0 - ldrb r0, [r1] - bx lr - .align 2, 0 -_0802C63C: .4byte gUnknown_203B2E8 - thumb_func_end sub_802C620 - - thumb_func_start sub_802C640 -sub_802C640: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0802C684 - ldr r0, [r5] - adds r0, 0x44 - movs r1, 0 - movs r2, 0 - bl sub_800641C - bl sub_802C80C - adds r1, r0, 0 - ldr r0, [r5] - strh r1, [r0, 0x2A] - adds r0, 0x8 - bl sub_8013984 - bl sub_802C6DC - bl sub_802C750 - cmp r4, 0 - beq _0802C67E - ldr r0, [r5] - adds r0, 0x8 - bl AddMenuCursorSprite -_0802C67E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802C684: .4byte gUnknown_203B2E8 - thumb_func_end sub_802C640 - - thumb_func_start sub_802C688 -sub_802C688: - push {r4,r5,lr} - ldr r4, _0802C6D0 - ldr r2, [r4] - cmp r2, 0 - beq _0802C6C8 - ldr r1, _0802C6D4 - ldrh r0, [r2, 0x20] - strh r0, [r1] - ldr r0, [r2, 0x3C] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x44 - ldr r0, _0802C6D8 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x44 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802C6C8: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802C6D0: .4byte gUnknown_203B2E8 -_0802C6D4: .4byte gUnknown_203B2EC -_0802C6D8: .4byte gUnknown_80DFCE4 - thumb_func_end sub_802C688 - - thumb_func_start sub_802C6DC -sub_802C6DC: - push {r4,lr} - ldr r4, _0802C74C - ldr r0, [r4] - ldrh r1, [r0, 0x28] - adds r0, 0xA4 - movs r2, 0 - strb r1, [r0] - ldr r0, [r4] - ldrh r1, [r0, 0x26] - adds r0, 0xA5 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xA6 - movs r1, 0xC - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xA7 - strb r2, [r0] - ldr r0, [r4] - movs r1, 0x22 - ldrsh r0, [r0, r1] - movs r1, 0x18 - bl sub_8009614 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x3C] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x52 - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x3C] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x54 - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x44 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802C74C: .4byte gUnknown_203B2E8 - thumb_func_end sub_802C6DC - - thumb_func_start sub_802C750 -sub_802C750: - push {r4-r6,lr} - sub sp, 0x60 - ldr r6, _0802C7AC - ldr r0, [r6] - ldr r0, [r0, 0x3C] - bl sub_8008C54 - ldr r0, [r6] - ldr r0, [r0, 0x3C] - bl sub_80073B8 - ldr r0, [r6] - movs r1, 0x26 - ldrsh r4, [r0, r1] - lsls r4, 3 - adds r5, r4, 0 - adds r5, 0xA - ldr r2, _0802C7B0 - ldr r3, [r0, 0x3C] - movs r0, 0 - str r0, [sp] - adds r0, r5, 0 - movs r1, 0 - bl xxx_call_draw_string - adds r4, 0x4 - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0xA6 - ldrb r0, [r0] - lsls r0, 3 - adds r5, r4, r0 - movs r3, 0x26 - ldrsh r2, [r1, r3] - adds r2, 0x1 - movs r0, 0x7 - str r0, [sp] - ldr r0, [r1, 0x3C] - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r1, 0 - movs r3, 0x2 - bl sub_8012BC4 - movs r5, 0 - b _0802C7EC - .align 2, 0 -_0802C7AC: .4byte gUnknown_203B2E8 -_0802C7B0: .4byte gUnknown_80DFD14 -_0802C7B4: - ldr r1, [r6] - movs r3, 0x26 - ldrsh r2, [r1, r3] - movs r3, 0x24 - ldrsh r0, [r1, r3] - muls r0, r2 - adds r0, r5 - adds r1, r0 - ldrb r0, [r1] - bl sub_8096AB4 - adds r4, r0, 0 - ldr r0, [r6] - ldr r1, [r0, 0x3C] - str r1, [sp, 0x8] - adds r0, 0x8 - adds r1, r5, 0 - bl sub_8013800 - str r0, [sp, 0x50] - adds r0, r4, 0 - add r1, sp, 0x8 - bl sub_803B35C - add r0, sp, 0x8 - bl sub_803B6D4 - adds r5, 0x1 -_0802C7EC: - ldr r0, [r6] - movs r1, 0x22 - ldrsh r0, [r0, r1] - cmp r5, r0 - blt _0802C7B4 - ldr r0, _0802C808 - ldr r0, [r0] - ldr r0, [r0, 0x3C] - bl sub_80073E0 - add sp, 0x60 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0802C808: .4byte gUnknown_203B2E8 - thumb_func_end sub_802C750 - - thumb_func_start sub_802C80C -sub_802C80C: - push {r4,r5,lr} - movs r5, 0 - movs r4, 0 -_0802C812: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096ACC - lsls r0, 24 - cmp r0, 0 - bne _0802C82A - ldr r0, _0802C838 - ldr r0, [r0] - adds r0, r5 - strb r4, [r0] - adds r5, 0x1 -_0802C82A: - adds r4, 0x1 - cmp r4, 0x7 - ble _0802C812 - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0802C838: .4byte gUnknown_203B2E8 - thumb_func_end sub_802C80C - - thumb_func_start sub_802C83C -sub_802C83C: - push {r4,lr} - movs r4, 0 -_0802C840: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096ACC - lsls r0, 24 - cmp r0, 0 - bne _0802C852 - movs r0, 0 - b _0802C85A -_0802C852: - adds r4, 0x1 - cmp r4, 0x7 - ble _0802C840 - movs r0, 0x1 -_0802C85A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_802C83C - - thumb_func_start sub_802C860 -sub_802C860: - push {r4-r6,lr} - adds r6, r0, 0 - bl sub_802C83C - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _0802C890 - ldr r4, _0802C88C - movs r0, 0xFE - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - str r5, [r0, 0x68] - str r6, [r0] - movs r0, 0 - bl sub_802C910 - movs r0, 0x1 - b _0802C892 - .align 2, 0 -_0802C88C: .4byte gUnknown_203B2F0 -_0802C890: - movs r0, 0 -_0802C892: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_802C860 - - thumb_func_start sub_802C898 -sub_802C898: - push {lr} - ldr r0, _0802C8B0 - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r0, 0x5 - bhi _0802C8E8 - lsls r0, 2 - ldr r1, _0802C8B4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802C8B0: .4byte gUnknown_203B2F0 -_0802C8B4: .4byte _0802C8B8 - .align 2, 0 -_0802C8B8: - .4byte _0802C8D0 - .4byte _0802C8D0 - .4byte _0802C8D6 - .4byte _0802C8DC - .4byte _0802C8E2 - .4byte _0802C8E8 -_0802C8D0: - bl sub_802CC00 - b _0802C8EC -_0802C8D6: - bl sub_802CC70 - b _0802C8EC -_0802C8DC: - bl sub_802CD38 - b _0802C8EC -_0802C8E2: - bl sub_802CDB8 - b _0802C8EC -_0802C8E8: - movs r0, 0x3 - b _0802C8EE -_0802C8EC: - movs r0, 0 -_0802C8EE: - pop {r1} - bx r1 - thumb_func_end sub_802C898 - - thumb_func_start sub_802C8F4 -sub_802C8F4: - push {r4,lr} - ldr r4, _0802C90C - ldr r0, [r4] - cmp r0, 0 - beq _0802C906 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802C906: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802C90C: .4byte gUnknown_203B2F0 - thumb_func_end sub_802C8F4 - - thumb_func_start sub_802C910 -sub_802C910: - push {lr} - ldr r1, _0802C924 - ldr r1, [r1] - str r0, [r1, 0x4] - bl sub_802C928 - bl sub_802C9D8 - pop {r0} - bx r0 - .align 2, 0 -_0802C924: .4byte gUnknown_203B2F0 - thumb_func_end sub_802C910 - - thumb_func_start sub_802C928 -sub_802C928: - push {r4-r7,lr} - ldr r4, _0802C94C - ldr r0, [r4] - movs r1, 0xCE - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - ldr r1, [r4] - ldr r0, [r1, 0x4] - cmp r0, 0x2 - beq _0802C954 - cmp r0, 0x3 - beq _0802C980 - movs r2, 0 - ldr r3, _0802C950 - b _0802C998 - .align 2, 0 -_0802C94C: .4byte gUnknown_203B2F0 -_0802C950: .4byte gUnknown_80DFD28 -_0802C954: - bl sub_802CAA4 - ldr r2, [r4] - movs r0, 0xE6 - lsls r0, 1 - adds r2, r0 - ldr r1, _0802C97C - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - movs r6, 0x86 - lsls r6, 1 - adds r1, r6 - bl sub_8012CAC - b _0802C9B8 - .align 2, 0 -_0802C97C: .4byte gUnknown_80DFD40 -_0802C980: - movs r7, 0xF2 - lsls r7, 1 - adds r1, r7 - ldr r0, _0802C994 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - b _0802C9B8 - .align 2, 0 -_0802C994: .4byte gUnknown_80DFD58 -_0802C998: - ldr r0, [r4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r0, r1 - movs r1, 0xCE - lsls r1, 1 - adds r0, r1 - adds r1, r3, 0 - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - adds r2, 0x1 - cmp r2, 0x3 - ble _0802C998 -_0802C9B8: - bl sub_8004914 - ldr r0, _0802C9D4 - ldr r0, [r0] - movs r1, 0xCE - lsls r1, 1 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802C9D4: .4byte gUnknown_203B2F0 - thumb_func_end sub_802C928 - - thumb_func_start sub_802C9D8 -sub_802C9D8: - push {r4,lr} - sub sp, 0x8 - ldr r1, _0802C9F4 - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r4, r1, 0 - cmp r0, 0x5 - bhi _0802CA9C - lsls r0, 2 - ldr r1, _0802C9F8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802C9F4: .4byte gUnknown_203B2F0 -_0802C9F8: .4byte _0802C9FC - .align 2, 0 -_0802C9FC: - .4byte _0802CA14 - .4byte _0802CA20 - .4byte _0802CA28 - .4byte _0802CA48 - .4byte _0802CA80 - .4byte _0802CA9C -_0802CA14: - movs r0, 0 - movs r1, 0 - movs r2, 0x4 - bl sub_802C4C8 - b _0802CA9C -_0802CA20: - movs r0, 0x1 - bl sub_802C640 - b _0802CA9C -_0802CA28: - bl sub_802C750 - ldr r0, _0802CA44 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x6C - movs r3, 0x86 - lsls r3, 1 - adds r1, r2, r3 - ldr r2, [r2, 0x68] - str r2, [sp] - movs r2, 0x2 - b _0802CA6E - .align 2, 0 -_0802CA44: .4byte gUnknown_203B2F0 -_0802CA48: - bl sub_802CBAC - bl sub_802C750 - ldr r4, _0802CA7C - ldr r0, [r4] - adds r0, 0x6C - movs r1, 0 - bl sub_8012EA4 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xBC - movs r2, 0xA6 - lsls r2, 1 - adds r1, r2 - movs r2, 0x6 - str r2, [sp] - movs r2, 0x3 -_0802CA6E: - str r2, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _0802CA9C - .align 2, 0 -_0802CA7C: .4byte gUnknown_203B2F0 -_0802CA80: - ldr r0, [r4] - ldrb r0, [r0, 0xC] - bl sub_8096AB4 - ldr r1, [r4] - adds r1, 0x10 - bl sub_803B35C - ldr r0, [r4] - movs r1, 0x3 - str r1, [r0, 0x10] - adds r0, 0x10 - bl sub_802DE84 -_0802CA9C: - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802C9D8 - - thumb_func_start sub_802CAA4 -sub_802CAA4: - push {r4-r7,lr} - movs r7, 0 - ldr r5, _0802CAC8 - ldr r0, [r5] - ldrb r0, [r0, 0xC] - bl sub_8096AB4 - adds r4, r0, 0 - ldr r2, [r5] - ldr r0, [r2] - cmp r0, 0 - bne _0802CB26 - ldrb r0, [r4] - cmp r0, 0x5 - beq _0802CACC - cmp r0, 0x6 - beq _0802CB10 - b _0802CB26 - .align 2, 0 -_0802CAC8: .4byte gUnknown_203B2F0 -_0802CACC: - movs r0, 0x86 - lsls r0, 1 - adds r1, r2, r0 - ldr r0, _0802CAFC - str r0, [r1] - adds r0, r4, 0 - bl sub_809693C - lsls r0, 24 - cmp r0, 0 - bne _0802CAEE - ldrb r0, [r4, 0x4] - bl sub_80A2824 - lsls r0, 24 - cmp r0, 0 - bne _0802CB00 -_0802CAEE: - ldr r0, [r5] - movs r1, 0x88 - lsls r1, 1 - adds r0, r1 - movs r1, 0x1 - negs r1, r1 - b _0802CB0A - .align 2, 0 -_0802CAFC: .4byte gUnknown_80DFD70 -_0802CB00: - ldr r0, [r5] - movs r1, 0x88 - lsls r1, 1 - adds r0, r1 - movs r1, 0x2 -_0802CB0A: - str r1, [r0] - adds r7, 0x1 - b _0802CB26 -_0802CB10: - movs r0, 0x86 - lsls r0, 1 - adds r1, r2, r0 - ldr r0, _0802CB9C - str r0, [r1] - movs r0, 0x88 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x3 - str r0, [r1] - movs r7, 0x1 -_0802CB26: - ldr r4, _0802CBA0 - ldr r6, [r4] - lsls r1, r7, 3 - movs r0, 0x86 - lsls r0, 1 - adds r3, r6, r0 - adds r2, r3, r1 - ldr r0, _0802CBA4 - ldr r0, [r0] - str r0, [r2] - movs r0, 0x88 - lsls r0, 1 - adds r5, r6, r0 - adds r1, r5, r1 - movs r0, 0x4 - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r2, r3, r1 - ldr r0, _0802CBA8 - ldr r0, [r0] - str r0, [r2] - adds r1, r5, r1 - movs r0, 0x7 - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r3, r1 - movs r0, 0 - str r0, [r3] - adds r1, r5, r1 - movs r0, 0x1 - str r0, [r1] - movs r3, 0 - mov r12, r4 - cmp r3, r7 - bge _0802CB8C - adds r4, r6, 0 - adds r1, r5, 0 - movs r5, 0x1 - negs r5, r5 -_0802CB78: - ldr r2, [r1] - cmp r2, r5 - beq _0802CB84 - ldr r0, [r4, 0x68] - cmp r2, r0 - beq _0802CB94 -_0802CB84: - adds r1, 0x8 - adds r3, 0x1 - cmp r3, r7 - blt _0802CB78 -_0802CB8C: - mov r0, r12 - ldr r1, [r0] - movs r0, 0x7 - str r0, [r1, 0x68] -_0802CB94: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802CB9C: .4byte gUnknown_80DFD7C -_0802CBA0: .4byte gUnknown_203B2F0 -_0802CBA4: .4byte gUnknown_80D494C -_0802CBA8: .4byte gUnknown_80D4970 - thumb_func_end sub_802CAA4 - - thumb_func_start sub_802CBAC -sub_802CBAC: - ldr r0, _0802CBF4 - ldr r0, [r0] - mov r12, r0 - movs r3, 0 - movs r1, 0xA6 - lsls r1, 1 - add r1, r12 - ldr r0, _0802CBF8 - ldr r0, [r0] - str r0, [r1] - movs r1, 0xA8 - lsls r1, 1 - add r1, r12 - movs r0, 0x5 - str r0, [r1] - movs r2, 0x1 - movs r1, 0xAA - lsls r1, 1 - add r1, r12 - ldr r0, _0802CBFC - ldr r0, [r0] - str r0, [r1] - movs r1, 0xAC - lsls r1, 1 - add r1, r12 - movs r0, 0x6 - str r0, [r1] - movs r0, 0xAE - lsls r0, 1 - add r0, r12 - str r3, [r0] - movs r0, 0xB0 - lsls r0, 1 - add r0, r12 - str r2, [r0] - bx lr - .align 2, 0 -_0802CBF4: .4byte gUnknown_203B2F0 -_0802CBF8: .4byte gUnknown_80D4920 -_0802CBFC: .4byte gUnknown_80D4928 - thumb_func_end sub_802CBAC - - thumb_func_start sub_802CC00 -sub_802CC00: - push {lr} - movs r0, 0x1 - bl sub_802C598 - cmp r0, 0x4 - bhi _0802CC6A - lsls r0, 2 - ldr r1, _0802CC18 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802CC18: .4byte _0802CC1C - .align 2, 0 -_0802CC1C: - .4byte _0802CC6A - .4byte _0802CC6A - .4byte _0802CC60 - .4byte _0802CC30 - .4byte _0802CC48 -_0802CC30: - bl sub_802C620 - ldr r1, _0802CC44 - ldr r1, [r1] - strb r0, [r1, 0xC] - movs r0, 0x2 - bl sub_802C910 - b _0802CC6A - .align 2, 0 -_0802CC44: .4byte gUnknown_203B2F0 -_0802CC48: - bl sub_802C620 - ldr r1, _0802CC5C - ldr r1, [r1] - strb r0, [r1, 0xC] - movs r0, 0x4 - bl sub_802C910 - b _0802CC6A - .align 2, 0 -_0802CC5C: .4byte gUnknown_203B2F0 -_0802CC60: - bl sub_802C688 - movs r0, 0x5 - bl sub_802C910 -_0802CC6A: - pop {r0} - bx r0 - thumb_func_end sub_802CC00 - - thumb_func_start sub_802CC70 -sub_802CC70: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_802C598 - ldr r4, _0802CCB4 - ldr r0, [r4] - adds r0, 0x6C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802CCA0 - ldr r0, [r4] - adds r0, 0x6C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _0802CCA0 - ldr r0, [r4] - str r1, [r0, 0x68] -_0802CCA0: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0x6 - bhi _0802CD2E - lsls r0, 2 - ldr r1, _0802CCB8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802CCB4: .4byte gUnknown_203B2F0 -_0802CCB8: .4byte _0802CCBC - .align 2, 0 -_0802CCBC: - .4byte _0802CD28 - .4byte _0802CCD8 - .4byte _0802CCF4 - .4byte _0802CD18 - .4byte _0802CD2E - .4byte _0802CD2E - .4byte _0802CD20 -_0802CCD8: - ldr r0, _0802CCEC - bl sub_8011988 - ldr r0, _0802CCF0 - ldr r0, [r0] - ldrb r0, [r0, 0xC] - bl sub_8096AB4 - movs r1, 0x6 - b _0802CD06 - .align 2, 0 -_0802CCEC: .4byte 0x00000133 -_0802CCF0: .4byte gUnknown_203B2F0 -_0802CCF4: - ldr r0, _0802CD10 - bl sub_8011988 - ldr r0, _0802CD14 - ldr r0, [r0] - ldrb r0, [r0, 0xC] - bl sub_8096AB4 - movs r1, 0x5 -_0802CD06: - strb r1, [r0] - movs r0, 0x1 - bl sub_802C910 - b _0802CD2E - .align 2, 0 -_0802CD10: .4byte 0x00000133 -_0802CD14: .4byte gUnknown_203B2F0 -_0802CD18: - movs r0, 0x3 - bl sub_802C910 - b _0802CD2E -_0802CD20: - movs r0, 0x4 - bl sub_802C910 - b _0802CD2E -_0802CD28: - movs r0, 0x1 - bl sub_802C910 -_0802CD2E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802CC70 - - thumb_func_start sub_802CD38 -sub_802CD38: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_802C598 - ldr r4, _0802CD78 - ldr r0, [r4] - adds r0, 0x6C - bl sub_8012FD8 - ldr r0, [r4] - adds r0, 0xBC - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802CD66 - ldr r0, [r4] - adds r0, 0xBC - mov r1, sp - bl sub_8013114 -_0802CD66: - ldr r0, [sp] - cmp r0, 0x5 - beq _0802CD88 - cmp r0, 0x5 - bgt _0802CD7C - cmp r0, 0x1 - beq _0802CD80 - b _0802CDB0 - .align 2, 0 -_0802CD78: .4byte gUnknown_203B2F0 -_0802CD7C: - cmp r0, 0x6 - bne _0802CDB0 -_0802CD80: - movs r0, 0x1 - bl sub_802C910 - b _0802CDB0 -_0802CD88: - ldr r0, [r4] - ldrb r0, [r0, 0xC] - bl sub_8096C3C - bl sub_8096C80 - bl sub_802C83C - lsls r0, 24 - cmp r0, 0 - beq _0802CDAA - bl sub_802C688 - movs r0, 0x5 - bl sub_802C910 - b _0802CDB0 -_0802CDAA: - movs r0, 0x1 - bl sub_802C910 -_0802CDB0: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802CD38 - - thumb_func_start sub_802CDB8 -sub_802CDB8: - push {lr} - bl sub_802DEE0 - cmp r0, 0x1 - bls _0802CDD0 - cmp r0, 0x3 - bhi _0802CDD0 - bl sub_802DF24 - movs r0, 0x1 - bl sub_802C910 -_0802CDD0: - pop {r0} - bx r0 - thumb_func_end sub_802CDB8 - - thumb_func_start sub_802CDD4 -sub_802CDD4: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r4, _0802CE54 - ldr r0, [r4] - cmp r0, 0 - bne _0802CDEA - movs r0, 0xA0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] -_0802CDEA: - ldr r0, [r4] - str r5, [r0, 0x34] - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 3 - adds r1, 0x3C - adds r1, r0, r1 - str r1, [r0, 0x38] - adds r0, 0x3C - bl sub_8006518 - ldr r1, [r4] - ldr r2, [r1, 0x34] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x3C - ldr r0, _0802CE58 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldr r1, [r4] - ldr r0, [r1, 0x38] - adds r1, 0x9C - str r1, [r0, 0x14] - movs r1, 0x4 - bl sub_8012D34 - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x5 - movs r2, 0x4 - adds r3, r5, 0 - bl sub_8013848 - bl sub_802CF5C - bl sub_802CFD0 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0802CE54: .4byte gUnknown_203B2F4 -_0802CE58: .4byte gUnknown_80DFDA4 - thumb_func_end sub_802CDD4 - - thumb_func_start sub_802CE5C -sub_802CE5C: - push {r4,lr} - lsls r0, 24 - cmp r0, 0 - bne _0802CE74 - ldr r0, _0802CE70 - ldr r0, [r0] - bl sub_8013660 - movs r0, 0 - b _0802CEB4 - .align 2, 0 -_0802CE70: .4byte gUnknown_203B2F4 -_0802CE74: - ldr r4, _0802CE90 - ldr r0, [r4] - bl GetKeyPress - cmp r0, 0x1 - beq _0802CE94 - cmp r0, 0x2 - bne _0802CE98 - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0802CEB4 - .align 2, 0 -_0802CE90: .4byte gUnknown_203B2F4 -_0802CE94: - movs r0, 0x3 - b _0802CEB4 -_0802CE98: - ldr r0, [r4] - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0802CEAA - movs r0, 0 - b _0802CEB4 -_0802CEAA: - bl sub_802CF5C - bl sub_802CFD0 - movs r0, 0x1 -_0802CEB4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_802CE5C - - thumb_func_start sub_802CEBC -sub_802CEBC: - ldr r0, _0802CED4 - ldr r1, [r0] - movs r0, 0x1E - ldrsh r2, [r1, r0] - movs r3, 0x1C - ldrsh r0, [r1, r3] - muls r0, r2 - ldrb r1, [r1, 0x18] - adds r0, r1 - lsls r0, 24 - lsrs r0, 24 - bx lr - .align 2, 0 -_0802CED4: .4byte gUnknown_203B2F4 - thumb_func_end sub_802CEBC - - thumb_func_start sub_802CED8 -sub_802CED8: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8004914 - ldr r5, _0802CF10 - ldr r0, [r5] - adds r0, 0x3C - movs r1, 0 - movs r2, 0 - bl sub_800641C - ldr r0, [r5] - bl sub_8013984 - bl sub_802CF5C - bl sub_802CFD0 - cmp r4, 0 - beq _0802CF0A - ldr r0, [r5] - bl AddMenuCursorSprite -_0802CF0A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802CF10: .4byte gUnknown_203B2F4 - thumb_func_end sub_802CED8 - - thumb_func_start sub_802CF14 -sub_802CF14: - push {r4,r5,lr} - ldr r4, _0802CF54 - ldr r2, [r4] - cmp r2, 0 - beq _0802CF4E - ldr r0, [r2, 0x34] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x3C - ldr r0, _0802CF58 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802CF4E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802CF54: .4byte gUnknown_203B2F4 -_0802CF58: .4byte gUnknown_80DFD8C - thumb_func_end sub_802CF14 - - thumb_func_start sub_802CF5C -sub_802CF5C: - push {r4,lr} - ldr r4, _0802CFCC - ldr r0, [r4] - ldrh r1, [r0, 0x20] - adds r0, 0x9C - movs r2, 0 - strb r1, [r0] - ldr r0, [r4] - ldrh r1, [r0, 0x1E] - adds r0, 0x9D - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9E - movs r1, 0xC - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9F - strb r2, [r0] - ldr r0, [r4] - movs r1, 0x1A - ldrsh r0, [r0, r1] - movs r1, 0x18 - bl sub_8009614 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x34] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x4A - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x34] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x4C - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802CFCC: .4byte gUnknown_203B2F4 - thumb_func_end sub_802CF5C - - thumb_func_start sub_802CFD0 -sub_802CFD0: - push {r4-r6,lr} - sub sp, 0x60 - ldr r6, _0802D02C - ldr r0, [r6] - ldr r0, [r0, 0x34] - bl sub_8008C54 - ldr r0, [r6] - ldr r0, [r0, 0x34] - bl sub_80073B8 - ldr r0, [r6] - movs r1, 0x1E - ldrsh r4, [r0, r1] - lsls r4, 3 - adds r5, r4, 0 - adds r5, 0xA - ldr r2, _0802D030 - ldr r3, [r0, 0x34] - movs r0, 0 - str r0, [sp] - adds r0, r5, 0 - movs r1, 0 - bl xxx_call_draw_string - adds r4, 0x4 - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0x9E - ldrb r0, [r0] - lsls r0, 3 - adds r5, r4, r0 - movs r0, 0x1E - ldrsh r2, [r1, r0] - adds r2, 0x1 - movs r0, 0x7 - str r0, [sp] - ldr r0, [r1, 0x34] - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r1, 0 - movs r3, 0x2 - bl sub_8012BC4 - movs r5, 0 - b _0802D076 - .align 2, 0 -_0802D02C: .4byte gUnknown_203B2F4 -_0802D030: .4byte gUnknown_80DFDBC -_0802D034: - ldr r0, [r6] - movs r2, 0x1E - ldrsh r1, [r0, r2] - movs r2, 0x1C - ldrsh r0, [r0, r2] - muls r0, r1 - adds r0, r5 - lsls r0, 24 - lsrs r0, 24 - bl sub_803B344 - adds r4, r0, 0 - ldr r0, [r6] - ldr r1, [r0, 0x34] - str r1, [sp, 0x8] - adds r1, r5, 0 - bl sub_8013800 - str r0, [sp, 0x50] - adds r0, r4, 0 - add r1, sp, 0x8 - bl sub_803B35C - mov r1, sp - adds r1, 0x4B - movs r0, 0x1 - strb r0, [r1] - ldr r0, [r4, 0x14] - str r0, [sp, 0x54] - add r0, sp, 0x8 - bl sub_803B6D4 - adds r5, 0x1 -_0802D076: - ldr r0, [r6] - movs r1, 0x1A - ldrsh r0, [r0, r1] - cmp r5, r0 - blt _0802D034 - ldr r0, _0802D094 - ldr r0, [r0] - ldr r0, [r0, 0x34] - bl sub_80073E0 - add sp, 0x60 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0802D094: .4byte gUnknown_203B2F4 - thumb_func_end sub_802CFD0 - - thumb_func_start sub_802D098 -sub_802D098: - push {r4-r6,lr} - adds r4, r0, 0 - ldr r6, _0802D0DC - movs r0, 0x82 - lsls r0, 2 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r6] - movs r5, 0 - str r5, [r0, 0x6C] - str r5, [r0, 0x70] - str r5, [r0, 0x74] - str r4, [r0, 0xC] - strb r5, [r0, 0x8] - ldr r0, [r6] - adds r0, 0xA - bl sub_8099328 - ldr r1, [r6] - strb r0, [r1, 0x9] - bl sub_8011C1C - cmp r0, 0x2 - beq _0802D0CE - ldr r0, [r6] - strb r5, [r0, 0x9] -_0802D0CE: - movs r0, 0 - bl sub_802D1A0 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0802D0DC: .4byte gUnknown_203B2F8 - thumb_func_end sub_802D098 - - thumb_func_start sub_802D0E0 -sub_802D0E0: - push {lr} - ldr r0, _0802D0F8 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x10 - bhi _0802D16C - lsls r0, 2 - ldr r1, _0802D0FC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802D0F8: .4byte gUnknown_203B2F8 -_0802D0FC: .4byte _0802D100 - .align 2, 0 -_0802D100: - .4byte _0802D170 - .4byte _0802D144 - .4byte _0802D168 - .4byte _0802D16C - .4byte _0802D16C - .4byte _0802D16C - .4byte _0802D16C - .4byte _0802D16C - .4byte _0802D16C - .4byte _0802D162 - .4byte _0802D16C - .4byte _0802D14A - .4byte _0802D14A - .4byte _0802D150 - .4byte _0802D156 - .4byte _0802D15C - .4byte _0802D15C -_0802D144: - bl sub_802D7D0 - b _0802D170 -_0802D14A: - bl sub_802D8CC - b _0802D170 -_0802D150: - bl sub_802D940 - b _0802D170 -_0802D156: - bl sub_802D9F0 - b _0802D170 -_0802D15C: - bl sub_802DA60 - b _0802D170 -_0802D162: - bl sub_802D82C - b _0802D170 -_0802D168: - movs r0, 0x3 - b _0802D172 -_0802D16C: - bl sub_802DA84 -_0802D170: - movs r0, 0 -_0802D172: - pop {r1} - bx r1 - thumb_func_end sub_802D0E0 - - thumb_func_start sub_802D178 -sub_802D178: - ldr r0, _0802D180 - ldr r0, [r0] - ldrb r0, [r0, 0x8] - bx lr - .align 2, 0 -_0802D180: .4byte gUnknown_203B2F8 - thumb_func_end sub_802D178 - - thumb_func_start sub_802D184 -sub_802D184: - push {r4,lr} - ldr r4, _0802D19C - ldr r0, [r4] - cmp r0, 0 - beq _0802D196 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802D196: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802D19C: .4byte gUnknown_203B2F8 - thumb_func_end sub_802D184 - - thumb_func_start sub_802D1A0 -sub_802D1A0: - push {lr} - ldr r1, _0802D1B4 - ldr r1, [r1] - str r0, [r1] - bl sub_802D1B8 - bl sub_802D2A8 - pop {r0} - bx r0 - .align 2, 0 -_0802D1B4: .4byte gUnknown_203B2F8 - thumb_func_end sub_802D1A0 - - thumb_func_start sub_802D1B8 -sub_802D1B8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _0802D1E0 - ldr r0, [r4] - movs r1, 0xD4 - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0xD - beq _0802D1EA - cmp r0, 0xD - bgt _0802D1E4 - cmp r0, 0x2 - beq _0802D27E - b _0802D254 - .align 2, 0 -_0802D1E0: .4byte gUnknown_203B2F8 -_0802D1E4: - cmp r0, 0xE - beq _0802D21C - b _0802D254 -_0802D1EA: - bl sub_802D5A4 - ldr r2, [r4] - movs r0, 0xEC - lsls r0, 1 - adds r2, r0 - ldr r1, _0802D218 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - movs r6, 0x8C - lsls r6, 1 - adds r1, r6 - bl sub_8012CAC - ldr r0, [r4] - movs r7, 0xF2 - lsls r7, 1 - b _0802D246 - .align 2, 0 -_0802D218: .4byte gUnknown_80DFE04 -_0802D21C: - bl sub_802D63C - ldr r2, [r4] - movs r0, 0xF8 - lsls r0, 1 - adds r2, r0 - ldr r1, _0802D250 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - movs r6, 0xAC - lsls r6, 1 - adds r1, r6 - bl sub_8012CAC - ldr r0, [r4] - movs r7, 0xFE - lsls r7, 1 -_0802D246: - adds r0, r7 - movs r1, 0x6 - strh r1, [r0] - b _0802D27E - .align 2, 0 -_0802D250: .4byte gUnknown_80DFE1C -_0802D254: - ldr r0, _0802D2A0 - mov r12, r0 - movs r1, 0xD4 - lsls r1, 1 - mov r8, r1 - ldr r4, _0802D2A4 - movs r3, 0 - movs r2, 0x3 -_0802D264: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - add r1, r8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0802D264 -_0802D27E: - bl sub_8004914 - ldr r0, _0802D2A0 - ldr r0, [r0] - movs r6, 0xD4 - lsls r6, 1 - adds r0, r6 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802D2A0: .4byte gUnknown_203B2F8 -_0802D2A4: .4byte gUnknown_80DFDD4 - thumb_func_end sub_802D1B8 - - thumb_func_start sub_802D2A8 -sub_802D2A8: - push {r4,lr} - sub sp, 0x14 - ldr r1, _0802D2C4 - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0x10 - bls _0802D2BA - b _0802D59A -_0802D2BA: - lsls r0, 2 - ldr r1, _0802D2C8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802D2C4: .4byte gUnknown_203B2F8 -_0802D2C8: .4byte _0802D2CC - .align 2, 0 -_0802D2CC: - .4byte _0802D310 - .4byte _0802D398 - .4byte _0802D59A - .4byte _0802D3B4 - .4byte _0802D3C4 - .4byte _0802D3D4 - .4byte _0802D3E4 - .4byte _0802D3F4 - .4byte _0802D404 - .4byte _0802D498 - .4byte _0802D4C8 - .4byte _0802D4E4 - .4byte _0802D4F0 - .4byte _0802D4F8 - .4byte _0802D524 - .4byte _0802D558 - .4byte _0802D576 -_0802D310: - ldr r0, [r4] - ldr r0, [r0, 0xC] - bl sub_80968B0 - lsls r0, 24 - cmp r0, 0 - beq _0802D326 - movs r0, 0x3 - bl sub_802D1A0 - b _0802D59A -_0802D326: - ldr r0, [r4] - ldr r0, [r0, 0xC] - bl sub_8096F50 - lsls r0, 24 - cmp r0, 0 - beq _0802D33C - movs r0, 0x4 - bl sub_802D1A0 - b _0802D59A -_0802D33C: - ldr r1, [r4] - ldr r0, [r1, 0xC] - ldrb r0, [r0, 0x2] - cmp r0, 0x4 - bne _0802D36E - adds r0, r1, 0 - adds r0, 0x10 - bl sub_8096C08 - lsls r0, 24 - cmp r0, 0 - beq _0802D36E - bl sub_802DAA8 - lsls r0, 24 - cmp r0, 0 - beq _0802D366 - movs r0, 0x9 - bl sub_802D1A0 - b _0802D59A -_0802D366: - movs r0, 0x5 - bl sub_802D1A0 - b _0802D59A -_0802D36E: - bl sub_80969AC - cmp r0, 0x7 - ble _0802D390 - bl sub_802DADC - lsls r0, 24 - cmp r0, 0 - beq _0802D388 - movs r0, 0xA - bl sub_802D1A0 - b _0802D59A -_0802D388: - movs r0, 0x6 - bl sub_802D1A0 - b _0802D59A -_0802D390: - movs r0, 0x8 - bl sub_802D1A0 - b _0802D59A -_0802D398: - bl sub_802D73C - ldr r0, _0802D3AC - ldr r1, _0802D3B0 - ldr r3, [r1] - ldr r2, [r3, 0x70] - movs r1, 0xAC - lsls r1, 1 - adds r3, r1 - b _0802D4AA - .align 2, 0 -_0802D3AC: .4byte gUnknown_80DFE4C -_0802D3B0: .4byte gUnknown_203B2F8 -_0802D3B4: - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x4] - ldr r0, _0802D3C0 - b _0802D4D0 - .align 2, 0 -_0802D3C0: .4byte gUnknown_80DFE9C -_0802D3C4: - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x4] - ldr r0, _0802D3D0 - b _0802D4D0 - .align 2, 0 -_0802D3D0: .4byte gUnknown_80DFED0 -_0802D3D4: - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x4] - ldr r0, _0802D3E0 - b _0802D4D0 - .align 2, 0 -_0802D3E0: .4byte gUnknown_80DFF2C -_0802D3E4: - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x4] - ldr r0, _0802D3F0 - b _0802D4D0 - .align 2, 0 -_0802D3F0: .4byte gUnknown_80DFFA4 -_0802D3F4: - ldr r1, [r4] - movs r0, 0xC - str r0, [r1, 0x4] - ldr r0, _0802D400 - b _0802D4D0 - .align 2, 0 -_0802D400: .4byte gUnknown_80E0010 -_0802D404: - ldr r4, _0802D45C - ldr r1, [r4] - movs r0, 0x1 - strb r0, [r1, 0x8] - ldr r0, [r4] - ldr r0, [r0, 0xC] - bl sub_8096A78 - bl sub_8096C80 - bl sub_8096D24 - ldr r0, [r4] - ldr r0, [r0, 0xC] - ldrb r0, [r0, 0x2] - cmp r0, 0x4 - bne _0802D446 - bl sub_8096DD8 - ldr r1, [r4] - ldr r1, [r1, 0xC] - ldr r1, [r1, 0x14] - movs r2, 0x28 - bl MemoryCopy8 - bl sub_8096DE8 - ldr r1, [r4] - ldr r1, [r1, 0xC] - ldr r1, [r1, 0x18] - movs r2, 0x78 - bl MemoryCopy8 -_0802D446: - ldr r0, [r4] - ldr r0, [r0, 0xC] - ldrb r0, [r0, 0x4] - cmp r0, 0x2C - beq _0802D46E - cmp r0, 0x2C - bgt _0802D460 - cmp r0, 0x2B - beq _0802D46A - b _0802D484 - .align 2, 0 -_0802D45C: .4byte gUnknown_203B2F8 -_0802D460: - cmp r0, 0x2D - beq _0802D472 - cmp r0, 0x2E - beq _0802D47C - b _0802D484 -_0802D46A: - movs r0, 0x2A - b _0802D474 -_0802D46E: - movs r0, 0x2B - b _0802D474 -_0802D472: - movs r0, 0x2C -_0802D474: - movs r1, 0x1 - bl sub_8097418 - b _0802D484 -_0802D47C: - movs r0, 0x2D - movs r1, 0x1 - bl sub_8097418 -_0802D484: - ldr r0, _0802D490 - ldr r1, [r0] - movs r0, 0x2 - str r0, [r1, 0x4] - ldr r0, _0802D494 - b _0802D4D0 - .align 2, 0 -_0802D490: .4byte gUnknown_203B2F8 -_0802D494: .4byte gUnknown_80E0074 -_0802D498: - bl sub_802D690 - ldr r0, _0802D4C0 - ldr r1, _0802D4C4 - ldr r3, [r1] - ldr r2, [r3, 0x74] - movs r4, 0xAC - lsls r4, 1 - adds r3, r4 -_0802D4AA: - movs r4, 0 - str r4, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] - str r4, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _0802D59A - .align 2, 0 -_0802D4C0: .4byte gUnknown_80E0094 -_0802D4C4: .4byte gUnknown_203B2F8 -_0802D4C8: - ldr r1, [r4] - movs r0, 0xB - str r0, [r1, 0x4] - ldr r0, _0802D4DC -_0802D4D0: - ldr r3, _0802D4E0 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _0802D59A - .align 2, 0 -_0802D4DC: .4byte gUnknown_80E0108 -_0802D4E0: .4byte 0x00000101 -_0802D4E4: - movs r0, 0 - movs r1, 0 - movs r2, 0x4 - bl sub_802C4C8 - b _0802D59A -_0802D4F0: - movs r0, 0x1 - bl sub_802C640 - b _0802D59A -_0802D4F8: - bl sub_802C750 - ldr r0, _0802D520 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x78 - movs r3, 0x8C - lsls r3, 1 - adds r1, r2, r3 - movs r4, 0xCC - lsls r4, 1 - adds r3, r2, r4 - ldr r2, [r2, 0x6C] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _0802D59A - .align 2, 0 -_0802D520: .4byte gUnknown_203B2F8 -_0802D524: - bl sub_802C750 - ldr r4, _0802D554 - ldr r0, [r4] - adds r0, 0x78 - movs r1, 0 - bl sub_8012EA4 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xC8 - movs r2, 0xAC - lsls r2, 1 - adds r1, r2 - movs r2, 0x4 - str r2, [sp] - movs r2, 0x3 - str r2, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _0802D59A - .align 2, 0 -_0802D554: .4byte gUnknown_203B2F8 -_0802D558: - ldr r0, [r4] - ldrb r0, [r0, 0x10] - bl sub_8096AB4 - ldr r1, [r4] - adds r1, 0x14 - bl sub_803B35C - ldr r0, [r4] - movs r1, 0x3 - str r1, [r0, 0x14] - adds r0, 0x14 - bl sub_802DE84 - b _0802D59A -_0802D576: - ldr r1, [r4] - ldr r0, [r1, 0xC] - adds r1, 0x14 - bl sub_803B35C - ldr r0, [r4] - movs r1, 0x3 - str r1, [r0, 0x14] - adds r0, 0x58 - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - ldr r1, [r0, 0xC] - ldr r1, [r1, 0x18] - str r1, [r0, 0x64] - adds r0, 0x14 - bl sub_802DE84 -_0802D59A: - add sp, 0x14 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802D2A8 - - thumb_func_start sub_802D5A4 -sub_802D5A4: - push {r4-r7,lr} - ldr r4, _0802D630 - ldr r0, [r4] - movs r5, 0xCC - lsls r5, 1 - adds r0, r5 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r0, [r4] - mov r12, r0 - movs r3, 0 - movs r1, 0x8C - lsls r1, 1 - add r1, r12 - ldr r0, _0802D634 - ldr r0, [r0] - str r0, [r1] - movs r1, 0x8E - lsls r1, 1 - add r1, r12 - movs r0, 0x2 - str r0, [r1] - movs r2, 0x1 - movs r1, 0x90 - lsls r1, 1 - add r1, r12 - ldr r0, _0802D638 - ldr r0, [r0] - str r0, [r1] - movs r1, 0x92 - lsls r1, 1 - add r1, r12 - movs r0, 0x5 - str r0, [r1] - movs r7, 0x2 - movs r0, 0x94 - lsls r0, 1 - add r0, r12 - str r3, [r0] - movs r0, 0x96 - lsls r0, 1 - add r0, r12 - str r2, [r0] - movs r6, 0 - movs r3, 0x8E - lsls r3, 1 - add r3, r12 - mov r0, r12 - adds r2, r0, r5 -_0802D60A: - ldrh r0, [r2] - cmp r0, 0 - bne _0802D61A - ldr r1, [r3] - mov r5, r12 - ldr r0, [r5, 0x6C] - cmp r1, r0 - beq _0802D62A -_0802D61A: - adds r3, 0x8 - adds r2, 0x2 - adds r6, 0x1 - cmp r6, r7 - blt _0802D60A - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x6C] -_0802D62A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802D630: .4byte gUnknown_203B2F8 -_0802D634: .4byte gUnknown_80D494C -_0802D638: .4byte gUnknown_80D4970 - thumb_func_end sub_802D5A4 - - thumb_func_start sub_802D63C -sub_802D63C: - ldr r0, _0802D684 - ldr r0, [r0] - mov r12, r0 - movs r3, 0 - movs r1, 0xAC - lsls r1, 1 - add r1, r12 - ldr r0, _0802D688 - ldr r0, [r0] - str r0, [r1] - movs r1, 0xAE - lsls r1, 1 - add r1, r12 - movs r0, 0x3 - str r0, [r1] - movs r2, 0x1 - movs r1, 0xB0 - lsls r1, 1 - add r1, r12 - ldr r0, _0802D68C - ldr r0, [r0] - str r0, [r1] - movs r1, 0xB2 - lsls r1, 1 - add r1, r12 - movs r0, 0x4 - str r0, [r1] - movs r0, 0xB4 - lsls r0, 1 - add r0, r12 - str r3, [r0] - movs r0, 0xB6 - lsls r0, 1 - add r0, r12 - str r2, [r0] - bx lr - .align 2, 0 -_0802D684: .4byte gUnknown_203B2F8 -_0802D688: .4byte gUnknown_80D4920 -_0802D68C: .4byte gUnknown_80D4928 - thumb_func_end sub_802D63C - - thumb_func_start sub_802D690 -sub_802D690: - push {r4,r5,lr} - ldr r2, _0802D728 - ldr r0, [r2] - mov r12, r0 - movs r4, 0 - movs r1, 0xAC - lsls r1, 1 - add r1, r12 - ldr r0, _0802D72C - ldr r0, [r0] - str r0, [r1] - movs r1, 0xAE - lsls r1, 1 - add r1, r12 - movs r0, 0x3 - str r0, [r1] - movs r3, 0x1 - movs r1, 0xB0 - lsls r1, 1 - add r1, r12 - ldr r0, _0802D730 - ldr r0, [r0] - str r0, [r1] - movs r1, 0xB2 - lsls r1, 1 - add r1, r12 - movs r0, 0x4 - str r0, [r1] - movs r1, 0xB4 - lsls r1, 1 - add r1, r12 - ldr r0, _0802D734 - str r0, [r1] - movs r1, 0xB6 - lsls r1, 1 - add r1, r12 - movs r0, 0x6 - str r0, [r1] - movs r1, 0xB8 - lsls r1, 1 - add r1, r12 - ldr r0, _0802D738 - str r0, [r1] - movs r1, 0xBA - lsls r1, 1 - add r1, r12 - movs r0, 0x7 - str r0, [r1] - movs r5, 0x4 - movs r0, 0xBC - lsls r0, 1 - add r0, r12 - str r4, [r0] - movs r0, 0xBE - lsls r0, 1 - add r0, r12 - str r3, [r0] - movs r3, 0 - mov r0, r12 - ldr r4, [r0, 0x74] - movs r1, 0xAE - lsls r1, 1 - add r1, r12 -_0802D70E: - ldr r0, [r1] - cmp r0, r4 - beq _0802D722 - adds r1, 0x8 - adds r3, 0x1 - cmp r3, r5 - blt _0802D70E - ldr r1, [r2] - movs r0, 0x4 - str r0, [r1, 0x74] -_0802D722: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802D728: .4byte gUnknown_203B2F8 -_0802D72C: .4byte gUnknown_80D4920 -_0802D730: .4byte gUnknown_80D4928 -_0802D734: .4byte gUnknown_80E014C -_0802D738: .4byte gUnknown_80E0158 - thumb_func_end sub_802D690 - - thumb_func_start sub_802D73C -sub_802D73C: - push {r4,r5,lr} - ldr r3, _0802D7C0 - ldr r0, [r3] - mov r12, r0 - movs r4, 0 - movs r1, 0xAC - lsls r1, 1 - add r1, r12 - ldr r0, _0802D7C4 - ldr r0, [r0] - str r0, [r1] - movs r1, 0xAE - lsls r1, 1 - add r1, r12 - movs r0, 0x3 - str r0, [r1] - movs r2, 0x1 - movs r1, 0xB0 - lsls r1, 1 - add r1, r12 - ldr r0, _0802D7C8 - ldr r0, [r0] - str r0, [r1] - movs r1, 0xB2 - lsls r1, 1 - add r1, r12 - movs r0, 0x4 - str r0, [r1] - movs r1, 0xB4 - lsls r1, 1 - add r1, r12 - ldr r0, _0802D7CC - str r0, [r1] - movs r1, 0xB6 - lsls r1, 1 - add r1, r12 - movs r0, 0x6 - str r0, [r1] - movs r5, 0x3 - movs r0, 0xB8 - lsls r0, 1 - add r0, r12 - str r4, [r0] - movs r0, 0xBA - lsls r0, 1 - add r0, r12 - str r2, [r0] - movs r2, 0 - mov r0, r12 - ldr r4, [r0, 0x70] - movs r1, 0xAE - lsls r1, 1 - add r1, r12 -_0802D7A6: - ldr r0, [r1] - cmp r0, r4 - beq _0802D7BA - adds r1, 0x8 - adds r2, 0x1 - cmp r2, r5 - blt _0802D7A6 - ldr r1, [r3] - movs r0, 0x4 - str r0, [r1, 0x70] -_0802D7BA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802D7C0: .4byte gUnknown_203B2F8 -_0802D7C4: .4byte gUnknown_80D4920 -_0802D7C8: .4byte gUnknown_80D4928 -_0802D7CC: .4byte gUnknown_80E014C - thumb_func_end sub_802D73C - - thumb_func_start sub_802D7D0 -sub_802D7D0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802D826 - ldr r1, [sp] - cmp r1, 0x1 - beq _0802D7EA - ldr r0, _0802D800 - ldr r0, [r0] - str r1, [r0, 0x70] -_0802D7EA: - ldr r0, [sp] - cmp r0, 0x3 - beq _0802D804 - cmp r0, 0x3 - ble _0802D820 - cmp r0, 0x4 - beq _0802D820 - cmp r0, 0x6 - beq _0802D80C - b _0802D820 - .align 2, 0 -_0802D800: .4byte gUnknown_203B2F8 -_0802D804: - movs r0, 0x2 - bl sub_802D1A0 - b _0802D826 -_0802D80C: - ldr r0, _0802D81C - ldr r1, [r0] - movs r0, 0x1 - str r0, [r1, 0x4] - movs r0, 0x10 - bl sub_802D1A0 - b _0802D826 - .align 2, 0 -_0802D81C: .4byte gUnknown_203B2F8 -_0802D820: - movs r0, 0 - bl sub_802D1A0 -_0802D826: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802D7D0 - - thumb_func_start sub_802D82C -sub_802D82C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802D8C6 - ldr r1, [sp] - cmp r1, 0x1 - beq _0802D846 - ldr r0, _0802D858 - ldr r0, [r0] - str r1, [r0, 0x74] -_0802D846: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0x6 - bhi _0802D8C0 - lsls r0, 2 - ldr r1, _0802D85C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802D858: .4byte gUnknown_203B2F8 -_0802D85C: .4byte _0802D860 - .align 2, 0 -_0802D860: - .4byte _0802D8C0 - .4byte _0802D8C0 - .4byte _0802D87C - .4byte _0802D8C0 - .4byte _0802D8C0 - .4byte _0802D898 - .4byte _0802D8AC -_0802D87C: - ldr r0, _0802D894 - ldr r0, [r0] - ldrb r0, [r0, 0x10] - bl sub_8096C3C - bl sub_8096C80 - movs r0, 0x8 - bl sub_802D1A0 - b _0802D8C6 - .align 2, 0 -_0802D894: .4byte gUnknown_203B2F8 -_0802D898: - ldr r0, _0802D8A8 - ldr r1, [r0] - movs r0, 0x9 - str r0, [r1, 0x4] - movs r0, 0x10 - bl sub_802D1A0 - b _0802D8C6 - .align 2, 0 -_0802D8A8: .4byte gUnknown_203B2F8 -_0802D8AC: - ldr r0, _0802D8BC - ldr r1, [r0] - movs r0, 0x9 - str r0, [r1, 0x4] - movs r0, 0xF - bl sub_802D1A0 - b _0802D8C6 - .align 2, 0 -_0802D8BC: .4byte gUnknown_203B2F8 -_0802D8C0: - movs r0, 0x1 - bl sub_802D1A0 -_0802D8C6: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_802D82C - - thumb_func_start sub_802D8CC -sub_802D8CC: - push {lr} - movs r0, 0x1 - bl sub_802C598 - cmp r0, 0x4 - bhi _0802D93A - lsls r0, 2 - ldr r1, _0802D8E4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802D8E4: .4byte _0802D8E8 - .align 2, 0 -_0802D8E8: - .4byte _0802D93A - .4byte _0802D93A - .4byte _0802D930 - .4byte _0802D8FC - .4byte _0802D914 -_0802D8FC: - bl sub_802C620 - ldr r1, _0802D910 - ldr r1, [r1] - strb r0, [r1, 0x10] - movs r0, 0xD - bl sub_802D1A0 - b _0802D93A - .align 2, 0 -_0802D910: .4byte gUnknown_203B2F8 -_0802D914: - bl sub_802C620 - ldr r2, _0802D92C - ldr r1, [r2] - strb r0, [r1, 0x10] - ldr r1, [r2] - movs r0, 0xC - str r0, [r1, 0x4] - movs r0, 0xF - bl sub_802D1A0 - b _0802D93A - .align 2, 0 -_0802D92C: .4byte gUnknown_203B2F8 -_0802D930: - bl sub_802C688 - movs r0, 0x1 - bl sub_802D1A0 -_0802D93A: - pop {r0} - bx r0 - thumb_func_end sub_802D8CC - - thumb_func_start sub_802D940 -sub_802D940: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_802C598 - ldr r4, _0802D980 - ldr r0, [r4] - adds r0, 0x78 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802D970 - ldr r0, [r4] - adds r0, 0x78 - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _0802D970 - ldr r0, [r4] - str r1, [r0, 0x6C] -_0802D970: - ldr r0, [sp] - cmp r0, 0x2 - beq _0802D98A - cmp r0, 0x2 - bgt _0802D984 - cmp r0, 0x1 - beq _0802D9E0 - b _0802D9E6 - .align 2, 0 -_0802D980: .4byte gUnknown_203B2F8 -_0802D984: - cmp r0, 0x5 - beq _0802D9CC - b _0802D9E6 -_0802D98A: - ldr r0, _0802D9BC - ldr r3, [r0] - ldrb r0, [r3, 0x9] - cmp r0, 0 - beq _0802D9C4 - ldr r2, _0802D9C0 - ldrb r1, [r3, 0x10] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, 0xF0 - ldr r1, [r2] - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x5 - bls _0802D9C4 - ldrb r0, [r3, 0xA] - ldrb r1, [r1, 0x4] - cmp r0, r1 - bne _0802D9C4 - movs r0, 0x7 - bl sub_802D1A0 - b _0802D9E6 - .align 2, 0 -_0802D9BC: .4byte gUnknown_203B2F8 -_0802D9C0: .4byte gUnknown_203B490 -_0802D9C4: - movs r0, 0xE - bl sub_802D1A0 - b _0802D9E6 -_0802D9CC: - ldr r0, _0802D9DC - ldr r1, [r0] - movs r0, 0xC - str r0, [r1, 0x4] - movs r0, 0xF - bl sub_802D1A0 - b _0802D9E6 - .align 2, 0 -_0802D9DC: .4byte gUnknown_203B2F8 -_0802D9E0: - movs r0, 0xC - bl sub_802D1A0 -_0802D9E6: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802D940 - - thumb_func_start sub_802D9F0 -sub_802D9F0: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_802C598 - ldr r4, _0802DA30 - ldr r0, [r4] - adds r0, 0x78 - bl sub_8012FD8 - ldr r0, [r4] - adds r0, 0xC8 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802DA1E - ldr r0, [r4] - adds r0, 0xC8 - mov r1, sp - bl sub_8013114 -_0802DA1E: - ldr r0, [sp] - cmp r0, 0x3 - beq _0802DA40 - cmp r0, 0x3 - bgt _0802DA34 - cmp r0, 0x1 - beq _0802DA38 - b _0802DA56 - .align 2, 0 -_0802DA30: .4byte gUnknown_203B2F8 -_0802DA34: - cmp r0, 0x4 - bne _0802DA56 -_0802DA38: - movs r0, 0xC - bl sub_802D1A0 - b _0802DA56 -_0802DA40: - bl sub_802C688 - ldr r0, [r4] - ldrb r0, [r0, 0x10] - bl sub_8096C3C - bl sub_8096C80 - movs r0, 0x8 - bl sub_802D1A0 -_0802DA56: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802D9F0 - - thumb_func_start sub_802DA60 -sub_802DA60: - push {lr} - bl sub_802DEE0 - cmp r0, 0x1 - bls _0802DA7C - cmp r0, 0x3 - bhi _0802DA7C - bl sub_802DF24 - ldr r0, _0802DA80 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_802D1A0 -_0802DA7C: - pop {r0} - bx r0 - .align 2, 0 -_0802DA80: .4byte gUnknown_203B2F8 - thumb_func_end sub_802DA60 - - thumb_func_start sub_802DA84 -sub_802DA84: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802DA9C - ldr r0, _0802DAA4 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_802D1A0 -_0802DA9C: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0802DAA4: .4byte gUnknown_203B2F8 - thumb_func_end sub_802DA84 - - thumb_func_start sub_802DAA8 -sub_802DAA8: - push {r4,lr} - ldr r4, _0802DAD0 - ldr r0, [r4] - ldrb r0, [r0, 0x10] - bl sub_8096AB4 - adds r1, r0, 0 - ldr r4, [r4] - ldrb r0, [r4, 0x9] - cmp r0, 0 - beq _0802DAD4 - ldrb r0, [r1] - cmp r0, 0x5 - beq _0802DAD4 - ldrb r0, [r4, 0xA] - ldrb r1, [r1, 0x4] - cmp r0, r1 - bne _0802DAD4 - movs r0, 0 - b _0802DAD6 - .align 2, 0 -_0802DAD0: .4byte gUnknown_203B2F8 -_0802DAD4: - movs r0, 0x1 -_0802DAD6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_802DAA8 - - thumb_func_start sub_802DADC -sub_802DADC: - push {r4,lr} - ldr r3, _0802DAEC - ldr r0, [r3] - ldrb r0, [r0, 0x9] - cmp r0, 0 - bne _0802DAF0 -_0802DAE8: - movs r0, 0x1 - b _0802DB1C - .align 2, 0 -_0802DAEC: .4byte gUnknown_203B2F8 -_0802DAF0: - ldr r0, _0802DB24 - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0xF0 - movs r2, 0 -_0802DAFA: - ldrb r0, [r1] - cmp r0, 0 - beq _0802DAE8 - cmp r0, 0x5 - beq _0802DAE8 - cmp r0, 0x5 - bls _0802DB12 - ldr r0, [r3] - ldrb r0, [r0, 0xA] - ldrb r4, [r1, 0x4] - cmp r0, r4 - bne _0802DAE8 -_0802DB12: - adds r1, 0x14 - adds r2, 0x1 - cmp r2, 0x7 - ble _0802DAFA - movs r0, 0 -_0802DB1C: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0802DB24: .4byte gUnknown_203B490 - thumb_func_end sub_802DADC - - thumb_func_start sub_802DB28 -sub_802DB28: - push {r4-r6,lr} - sub sp, 0x8 - adds r2, r1, 0 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r2, 24 - lsrs r2, 24 - mov r0, sp - adds r1, r6, 0 - bl sub_8096AF8 - mov r0, sp - ldrb r0, [r0] - cmp r0, 0 - bne _0802DB4A - movs r0, 0 - b _0802DBC6 -_0802DB4A: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _0802DBD0 - movs r0, 0xA8 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - adds r0, 0x30 - movs r5, 0 - strb r6, [r0] - adds r0, r6, 0 - bl sub_8096AB4 - ldr r1, [r4] - str r0, [r1, 0x34] - bl sub_8096EEC - ldr r1, [r4] - ldr r0, [r1, 0x34] - adds r1, 0x8 - bl sub_803C21C - ldr r0, [r4] - ldr r0, [r0, 0x34] - movs r1, 0xC - ldrsh r0, [r0, r1] - bl sub_808DDD0 - ldr r1, [r4] - str r0, [r1, 0x38] - str r5, [r1, 0x3C] - adds r1, 0x44 - strb r5, [r1] - ldr r0, [r4] - adds r0, 0x45 - strb r5, [r0] - ldr r0, [r4] - adds r0, 0x46 - strb r5, [r0] - ldr r2, [r4] - adds r1, r2, 0 - adds r1, 0x40 - movs r0, 0x2 - strh r0, [r1] - adds r1, 0x2 - movs r0, 0x8 - strh r0, [r1] - ldr r0, [r2, 0x38] - cmp r0, 0 - beq _0802DBBE - ldr r0, [r0, 0x4] - str r0, [r2, 0x3C] -_0802DBBE: - movs r0, 0 - bl sub_802DC28 - movs r0, 0x1 -_0802DBC6: - add sp, 0x8 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0802DBD0: .4byte gUnknown_203B2FC - thumb_func_end sub_802DB28 - - thumb_func_start sub_802DBD4 -sub_802DBD4: - push {lr} - ldr r0, _0802DBEC - ldr r0, [r0] - ldr r1, [r0] - cmp r1, 0x6 - beq _0802DBF0 - cmp r1, 0x7 - bne _0802DBF6 - ldr r0, [r0, 0x34] - strb r1, [r0] - movs r0, 0x3 - b _0802DBFC - .align 2, 0 -_0802DBEC: .4byte gUnknown_203B2FC -_0802DBF0: - bl sub_802DE44 - b _0802DBFA -_0802DBF6: - bl sub_802DE60 -_0802DBFA: - movs r0, 0 -_0802DBFC: - pop {r1} - bx r1 - thumb_func_end sub_802DBD4 - - thumb_func_start sub_802DC00 -sub_802DC00: - push {r4,lr} - ldr r4, _0802DC24 - ldr r0, [r4] - cmp r0, 0 - beq _0802DC1E - ldr r0, [r0, 0x38] - cmp r0, 0 - beq _0802DC14 - bl CloseFile -_0802DC14: - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802DC1E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802DC24: .4byte gUnknown_203B2FC - thumb_func_end sub_802DC00 - - thumb_func_start sub_802DC28 -sub_802DC28: - push {lr} - ldr r1, _0802DC3C - ldr r1, [r1] - str r0, [r1] - bl sub_802DC40 - bl sub_802DC9C - pop {r0} - bx r0 - .align 2, 0 -_0802DC3C: .4byte gUnknown_203B2FC - thumb_func_end sub_802DC28 - - thumb_func_start sub_802DC40 -sub_802DC40: - push {r4-r7,lr} - ldr r4, _0802DC94 - ldr r0, [r4] - adds r0, 0x48 - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0 - beq _0802DC58 - cmp r0, 0x7 - bne _0802DC7A -_0802DC58: - mov r12, r4 - ldr r4, _0802DC98 - movs r3, 0 - movs r2, 0x3 -_0802DC60: - mov r0, r12 - ldr r1, [r0] - adds r1, r3 - adds r1, 0x48 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0802DC60 -_0802DC7A: - bl sub_8004914 - ldr r0, _0802DC94 - ldr r0, [r0] - adds r0, 0x48 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802DC94: .4byte gUnknown_203B2FC -_0802DC98: .4byte gUnknown_80E016C - thumb_func_end sub_802DC40 - - thumb_func_start sub_802DC9C -sub_802DC9C: - push {r4,r5,lr} - ldr r1, _0802DCB8 - ldr r0, [r1] - ldr r0, [r0] - adds r5, r1, 0 - cmp r0, 0x7 - bls _0802DCAC - b _0802DE3E -_0802DCAC: - lsls r0, 2 - ldr r1, _0802DCBC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802DCB8: .4byte gUnknown_203B2FC -_0802DCBC: .4byte _0802DCC0 - .align 2, 0 -_0802DCC0: - .4byte _0802DCE0 - .4byte _0802DDDC - .4byte _0802DDE4 - .4byte _0802DDEC - .4byte _0802DDFC - .4byte _0802DDF4 - .4byte _0802DE34 - .4byte _0802DE3E -_0802DCE0: - ldr r0, _0802DD60 - ldr r1, [r5] - ldr r1, [r1, 0x34] - movs r2, 0xC - ldrsh r1, [r1, r2] - bl sub_808D8E0 - ldr r4, _0802DD64 - ldr r0, [r5] - ldr r0, [r0, 0x34] - movs r2, 0xC - ldrsh r1, [r0, r2] - adds r0, r4, 0 - bl sub_808D8E0 - ldr r0, [r5] - ldr r0, [r0, 0x34] - movs r1, 0xC - ldrsh r0, [r0, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r2, _0802DD68 - adds r0, r4, r2 - bl strcpy - ldr r0, [r5] - ldr r0, [r0, 0x34] - movs r1, 0xE - ldrsh r0, [r0, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r2, _0802DD6C - adds r4, r2 - adds r0, r4, 0 - bl strcpy - ldr r0, [r5] - ldr r0, [r0, 0x34] - movs r1, 0xC - ldrsh r0, [r0, r1] - bl sub_8098214 - ldr r0, _0802DD70 - ldr r1, [r5] - ldr r1, [r1, 0x34] - ldrb r1, [r1, 0x10] - movs r2, 0 - bl sub_8090DC4 - ldr r1, [r5] - movs r0, 0x6 - str r0, [r1, 0x4] - ldr r0, [r1, 0x34] - ldrb r0, [r0, 0x1] - cmp r0, 0x4 - bhi _0802DDD4 - lsls r0, 2 - ldr r1, _0802DD74 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802DD60: .4byte gUnknown_202E5D8 -_0802DD64: .4byte gUnknown_202E1C8 -_0802DD68: .4byte 0xfffffdd0 -_0802DD6C: .4byte 0xfffffe20 -_0802DD70: .4byte gUnknown_202DE58 -_0802DD74: .4byte _0802DD78 - .align 2, 0 -_0802DD78: - .4byte _0802DDD4 - .4byte _0802DD9C - .4byte _0802DDB8 - .4byte _0802DD94 - .4byte _0802DD8C -_0802DD8C: - movs r0, 0x5 - bl sub_802DC28 - b _0802DE3E -_0802DD94: - movs r0, 0x4 - bl sub_802DC28 - b _0802DE3E -_0802DD9C: - movs r0, 0x2 - bl sub_802DC28 - ldr r0, _0802DDB4 - ldr r0, [r0] - ldr r0, [r0, 0x34] - movs r2, 0xE - ldrsh r0, [r0, r2] - bl sub_8098214 - b _0802DE3E - .align 2, 0 -_0802DDB4: .4byte gUnknown_203B2FC -_0802DDB8: - movs r0, 0x3 - bl sub_802DC28 - ldr r0, _0802DDD0 - ldr r0, [r0] - ldr r0, [r0, 0x34] - movs r1, 0xE - ldrsh r0, [r0, r1] - bl sub_8098214 - b _0802DE3E - .align 2, 0 -_0802DDD0: .4byte gUnknown_203B2FC -_0802DDD4: - movs r0, 0x1 - bl sub_802DC28 - b _0802DE3E -_0802DDDC: - ldr r0, _0802DDE0 - b _0802DE1C - .align 2, 0 -_0802DDE0: .4byte gUnknown_80E0184 -_0802DDE4: - ldr r0, _0802DDE8 - b _0802DE1C - .align 2, 0 -_0802DDE8: .4byte gUnknown_80E01A0 -_0802DDEC: - ldr r0, _0802DDF0 - b _0802DE1C - .align 2, 0 -_0802DDF0: .4byte gUnknown_80E01C4 -_0802DDF4: - ldr r0, _0802DDF8 - b _0802DE1C - .align 2, 0 -_0802DDF8: .4byte gUnknown_80E01F0 -_0802DDFC: - ldr r0, [r5] - ldr r0, [r0, 0x34] - ldrb r0, [r0, 0x10] - bl sub_8091130 - adds r1, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0802DE1A - adds r0, r1, 0 - bl sub_80911F8 - bl sub_80910B4 -_0802DE1A: - ldr r0, _0802DE2C -_0802DE1C: - ldr r2, [r5] - adds r2, 0x38 - ldr r3, _0802DE30 - movs r1, 0 - bl sub_80141B4 - b _0802DE3E - .align 2, 0 -_0802DE2C: .4byte gUnknown_80E0218 -_0802DE30: .4byte 0x0000010d -_0802DE34: - ldr r0, [r5] - adds r0, 0x8 - movs r1, 0x1 - bl sub_802F204 -_0802DE3E: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_802DC9C - - thumb_func_start sub_802DE44 -sub_802DE44: - push {lr} - bl sub_802F298 - cmp r0, 0x1 - bls _0802DE5C - cmp r0, 0x3 - bhi _0802DE5C - bl sub_802F2C0 - movs r0, 0x7 - bl sub_802DC28 -_0802DE5C: - pop {r0} - bx r0 - thumb_func_end sub_802DE44 - - thumb_func_start sub_802DE60 -sub_802DE60: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802DE78 - ldr r0, _0802DE80 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_802DC28 -_0802DE78: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0802DE80: .4byte gUnknown_203B2FC - thumb_func_end sub_802DE60 - - thumb_func_start sub_802DE84 -sub_802DE84: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _0802DED8 - movs r0, 0x7C - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - str r5, [r0, 0xC] - bl sub_801317C - ldr r0, [r4] - ldr r1, [r0, 0xC] - ldr r2, [r1] - str r2, [r0, 0x10] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r1, 0x18 - adds r1, r0, r1 - str r1, [r0, 0x14] - adds r0, 0x18 - bl sub_8006518 - ldr r1, [r4] - ldr r2, [r1, 0x10] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x18 - ldr r0, _0802DEDC - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - bl sub_802DF14 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0802DED8: .4byte gUnknown_203B300 -_0802DEDC: .4byte gUnknown_80E0264 - thumb_func_end sub_802DE84 - - thumb_func_start sub_802DEE0 -sub_802DEE0: - push {lr} - ldr r0, _0802DF00 - ldr r0, [r0] - ldr r1, [r0, 0x10] - bl sub_8012A64 - cmp r0, 0x1 - beq _0802DF04 - cmp r0, 0x2 - bne _0802DF0E - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0802DF10 - .align 2, 0 -_0802DF00: .4byte gUnknown_203B300 -_0802DF04: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0802DF10 -_0802DF0E: - movs r0, 0 -_0802DF10: - pop {r1} - bx r1 - thumb_func_end sub_802DEE0 - - thumb_func_start sub_802DF14 -sub_802DF14: - push {lr} - bl sub_802DF6C - bl sub_802DF88 - pop {r0} - bx r0 - thumb_func_end sub_802DF14 - - thumb_func_start sub_802DF24 -sub_802DF24: - push {r4,r5,lr} - ldr r4, _0802DF64 - ldr r2, [r4] - cmp r2, 0 - beq _0802DF5E - ldr r0, [r2, 0x10] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x18 - ldr r0, _0802DF68 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x18 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802DF5E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802DF64: .4byte gUnknown_203B300 -_0802DF68: .4byte gUnknown_80E0248 - thumb_func_end sub_802DF24 - - thumb_func_start sub_802DF6C -sub_802DF6C: - push {lr} - bl sub_8004914 - ldr r0, _0802DF84 - ldr r0, [r0] - adds r0, 0x18 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r0} - bx r0 - .align 2, 0 -_0802DF84: .4byte gUnknown_203B300 - thumb_func_end sub_802DF6C - - thumb_func_start sub_802DF88 -sub_802DF88: - push {r4,lr} - ldr r4, _0802DFAC - ldr r0, [r4] - ldr r0, [r0, 0x10] - bl sub_80073B8 - ldr r0, [r4] - ldr r0, [r0, 0xC] - bl sub_803B98C - ldr r0, [r4] - ldr r0, [r0, 0x10] - bl sub_80073E0 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802DFAC: .4byte gUnknown_203B300 - thumb_func_end sub_802DF88 - - thumb_func_start sub_802DFB0 -sub_802DFB0: - push {r4,lr} - ldr r4, _0802DFD4 - movs r0, 0xB6 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r1, 0 - str r1, [r0, 0x64] - str r1, [r0, 0x68] - movs r0, 0 - bl sub_802E088 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0802DFD4: .4byte gUnknown_203B304 - thumb_func_end sub_802DFB0 - - thumb_func_start sub_802DFD8 -sub_802DFD8: - push {lr} - ldr r0, _0802DFF0 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0xB - bhi _0802E060 - lsls r0, 2 - ldr r1, _0802DFF4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802DFF0: .4byte gUnknown_203B304 -_0802DFF4: .4byte _0802DFF8 - .align 2, 0 -_0802DFF8: - .4byte _0802E028 - .4byte _0802E030 - .4byte _0802E036 - .4byte _0802E060 - .4byte _0802E03C - .4byte _0802E03C - .4byte _0802E042 - .4byte _0802E048 - .4byte _0802E04E - .4byte _0802E054 - .4byte _0802E054 - .4byte _0802E05A -_0802E028: - movs r0, 0x1 - bl sub_802E088 - b _0802E064 -_0802E030: - bl sub_802E4B0 - b _0802E064 -_0802E036: - bl nullsub_133 - b _0802E064 -_0802E03C: - bl sub_802E578 - b _0802E064 -_0802E042: - bl sub_802E60C - b _0802E064 -_0802E048: - bl sub_802E73C - b _0802E064 -_0802E04E: - bl sub_802E758 - b _0802E064 -_0802E054: - bl sub_802E774 - b _0802E064 -_0802E05A: - bl sub_802E7D0 - b _0802E064 -_0802E060: - movs r0, 0x3 - b _0802E066 -_0802E064: - movs r0, 0 -_0802E066: - pop {r1} - bx r1 - thumb_func_end sub_802DFD8 - - thumb_func_start sub_802E06C -sub_802E06C: - push {r4,lr} - ldr r4, _0802E084 - ldr r0, [r4] - cmp r0, 0 - beq _0802E07E - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802E07E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802E084: .4byte gUnknown_203B304 - thumb_func_end sub_802E06C - - thumb_func_start sub_802E088 -sub_802E088: - push {lr} - ldr r1, _0802E09C - ldr r1, [r1] - str r0, [r1] - bl sub_802E0A0 - bl sub_802E1AC - pop {r0} - bx r0 - .align 2, 0 -_0802E09C: .4byte gUnknown_203B304 - thumb_func_end sub_802E088 - - thumb_func_start sub_802E0A0 -sub_802E0A0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _0802E0C8 - ldr r0, [r4] - movs r6, 0x86 - lsls r6, 1 - adds r0, r6 - bl sub_8006518 - ldr r0, [r4] - ldr r5, [r0] - cmp r5, 0x1 - beq _0802E0D0 - cmp r5, 0x6 - beq _0802E124 - movs r3, 0 - ldr r2, _0802E0CC - b _0802E168 - .align 2, 0 -_0802E0C8: .4byte gUnknown_203B304 -_0802E0CC: .4byte gUnknown_80E0284 -_0802E0D0: - mov r12, r6 - ldr r0, _0802E118 - mov r8, r0 - movs r2, 0 - movs r3, 0x3 -_0802E0DA: - ldr r1, [r4] - adds r1, r2 - add r1, r12 - mov r0, r8 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r2, 0x18 - subs r3, 0x1 - cmp r3, 0 - bge _0802E0DA - bl sub_802E2B4 - ldr r3, _0802E11C - ldr r2, [r3] - movs r0, 0x9E - lsls r0, 1 - adds r2, r0 - ldr r1, _0802E120 - ldm r1!, {r4-r6} - stm r2!, {r4-r6} - ldm r1!, {r4,r5,r7} - stm r2!, {r4,r5,r7} - ldr r1, [r3] - adds r0, r1, r0 - adds r1, 0xBC - bl sub_8012CAC - b _0802E188 - .align 2, 0 -_0802E118: .4byte gUnknown_80E0284 -_0802E11C: .4byte gUnknown_203B304 -_0802E120: .4byte gUnknown_80E029C -_0802E124: - bl sub_802E3B8 - ldr r2, [r4] - movs r0, 0x9E - lsls r0, 1 - adds r2, r0 - ldr r1, _0802E160 - ldm r1!, {r3,r6,r7} - stm r2!, {r3,r6,r7} - ldm r1!, {r3,r6,r7} - stm r2!, {r3,r6,r7} - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0xBC - bl sub_8012CAC - ldr r1, [r4] - movs r4, 0xA4 - lsls r4, 1 - adds r0, r1, r4 - strh r5, [r0] - movs r5, 0xAA - lsls r5, 1 - adds r1, r5 - ldr r0, _0802E164 - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - b _0802E188 - .align 2, 0 -_0802E160: .4byte gUnknown_80E02B4 -_0802E164: .4byte gUnknown_80E02CC -_0802E168: - ldr r0, [r4] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r0, r1 - movs r6, 0x86 - lsls r6, 1 - adds r0, r6 - adds r1, r2, 0 - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - adds r3, 0x1 - cmp r3, 0x3 - ble _0802E168 -_0802E188: - bl sub_8004914 - ldr r0, _0802E1A8 - ldr r0, [r0] - movs r7, 0x86 - lsls r7, 1 - adds r0, r7 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802E1A8: .4byte gUnknown_203B304 - thumb_func_end sub_802E0A0 - - thumb_func_start sub_802E1AC -sub_802E1AC: - push {r4,lr} - sub sp, 0x8 - ldr r1, _0802E1C8 - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0xB - bhi _0802E2AA - lsls r0, 2 - ldr r1, _0802E1CC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802E1C8: .4byte gUnknown_203B304 -_0802E1CC: .4byte _0802E1D0 - .align 2, 0 -_0802E1D0: - .4byte _0802E2AA - .4byte _0802E200 - .4byte _0802E2AA - .4byte _0802E2AA - .4byte _0802E21E - .4byte _0802E22A - .4byte _0802E232 - .4byte _0802E260 - .4byte _0802E286 - .4byte _0802E28E - .4byte _0802E29A - .4byte _0802E2A2 -_0802E200: - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x6C - adds r1, r2, 0 - adds r1, 0xBC - adds r3, r2, 0 - adds r3, 0xFC - ldr r2, [r2, 0x64] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _0802E2AA -_0802E21E: - movs r0, 0 - movs r1, 0 - movs r2, 0x4 - bl sub_802BD14 - b _0802E2AA -_0802E22A: - movs r0, 0x1 - bl sub_802BE94 - b _0802E2AA -_0802E232: - bl sub_802BFA0 - movs r0, 0x3 - bl sub_802E7F8 - ldr r0, _0802E25C - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x6C - adds r1, r2, 0 - adds r1, 0xBC - ldr r2, [r2, 0x68] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _0802E2AA - .align 2, 0 -_0802E25C: .4byte gUnknown_203B304 -_0802E260: - ldr r0, [r4] - ldrb r0, [r0, 0x8] - bl sub_8095FE8 - ldr r1, [r4] - adds r1, 0xC - bl sub_803B35C - ldr r0, [r4] - movs r1, 0x3 - str r1, [r0, 0xC] - adds r0, 0x50 - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xC - bl sub_802DE84 - b _0802E2AA -_0802E286: - movs r0, 0 - bl sub_802C860 - b _0802E2AA -_0802E28E: - movs r0, 0 - movs r1, 0 - movs r2, 0x8 - bl sub_802B640 - b _0802E2AA -_0802E29A: - movs r0, 0x1 - bl sub_802B7D0 - b _0802E2AA -_0802E2A2: - ldr r0, [r4] - ldrb r0, [r0, 0x9] - bl sub_802B9FC -_0802E2AA: - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802E1AC - - thumb_func_start sub_802E2B4 -sub_802E2B4: - push {r4-r7,lr} - ldr r4, _0802E380 - ldr r0, [r4] - adds r0, 0xFC - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - adds r2, r1, 0 - adds r2, 0xBC - ldr r0, _0802E384 - str r0, [r2] - adds r1, 0xC0 - movs r0, 0x2 - str r0, [r1] - bl sub_802C0E8 - lsls r0, 24 - cmp r0, 0 - beq _0802E2E6 - ldr r0, [r4] - adds r0, 0xFC - movs r1, 0x1 - strh r1, [r0] -_0802E2E6: - movs r5, 0x1 - ldr r1, [r4] - movs r6, 0x1 - adds r2, r1, 0 - adds r2, 0xC4 - ldr r0, _0802E388 - str r0, [r2] - adds r1, 0xC8 - movs r0, 0x3 - str r0, [r1] - bl sub_802C83C - lsls r0, 24 - cmp r0, 0 - beq _0802E30A - ldr r0, [r4] - adds r0, 0xFE - strh r5, [r0] -_0802E30A: - ldr r1, [r4] - adds r2, r1, 0 - adds r2, 0xCC - ldr r0, _0802E38C - str r0, [r2] - adds r1, 0xD0 - movs r0, 0x4 - str r0, [r1] - bl sub_802B9D8 - lsls r0, 24 - cmp r0, 0 - beq _0802E32E - ldr r0, [r4] - movs r1, 0x80 - lsls r1, 1 - adds r0, r1 - strh r6, [r0] -_0802E32E: - movs r5, 0x3 - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0xD4 - movs r1, 0 - str r1, [r0] - adds r0, 0x4 - str r6, [r0] - movs r3, 0 - adds r6, r4, 0 - mov r12, r2 - mov r4, r12 - adds r4, 0xFC - adds r2, 0xC0 -_0802E34A: - ldrh r0, [r4] - cmp r0, 0 - bne _0802E35A - ldr r1, [r2] - mov r7, r12 - ldr r0, [r7, 0x64] - cmp r1, r0 - beq _0802E3B2 -_0802E35A: - adds r4, 0x2 - adds r2, 0x8 - adds r3, 0x1 - cmp r3, r5 - blt _0802E34A - movs r3, 0 - cmp r3, r5 - bge _0802E3B2 - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0xFC - ldrh r0, [r0] - cmp r0, 0 - bne _0802E390 - adds r0, r1, 0 - adds r0, 0xC0 - ldr r0, [r0] - str r0, [r1, 0x64] - b _0802E3B2 - .align 2, 0 -_0802E380: .4byte gUnknown_203B304 -_0802E384: .4byte gUnknown_80E02E4 -_0802E388: .4byte gUnknown_80E02F0 -_0802E38C: .4byte gUnknown_80E02FC -_0802E390: - adds r3, 0x1 - cmp r3, r5 - bge _0802E3B2 - ldr r2, [r6] - lsls r0, r3, 1 - adds r1, r2, 0 - adds r1, 0xFC - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _0802E390 - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0xC0 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x64] -_0802E3B2: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_802E2B4 - - thumb_func_start sub_802E3B8 -sub_802E3B8: - push {r4-r7,lr} - movs r5, 0 - ldr r4, _0802E3F0 - ldr r0, [r4] - ldrb r0, [r0, 0x8] - bl sub_8095FE8 - adds r7, r0, 0 - ldrb r0, [r7] - cmp r0, 0x1 - bne _0802E3FC - ldr r2, [r4] - adds r1, r2, 0 - adds r1, 0xBC - ldr r0, _0802E3F4 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x6 - str r0, [r1] - adds r1, 0x4 - ldr r0, _0802E3F8 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x7 - str r0, [r1] - movs r5, 0x2 - b _0802E44A - .align 2, 0 -_0802E3F0: .4byte gUnknown_203B304 -_0802E3F4: .4byte gUnknown_80E0308 -_0802E3F8: .4byte gUnknown_80E0310 -_0802E3FC: - ldr r1, [r4] - adds r2, r1, 0 - adds r2, 0xBC - ldr r0, _0802E494 - ldr r0, [r0] - str r0, [r2] - adds r1, 0xC0 - movs r0, 0x5 - str r0, [r1] - adds r0, r7, 0 - bl sub_80968B0 - lsls r0, 24 - cmp r0, 0 - bne _0802E422 - bl sub_80969AC - cmp r0, 0x7 - ble _0802E42C -_0802E422: - ldr r0, [r4] - adds r0, 0xC0 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] -_0802E42C: - adds r5, 0x1 - ldr r4, _0802E498 - ldr r2, [r4] - lsls r3, r5, 3 - adds r0, r2, 0 - adds r0, 0xBC - adds r0, r3 - ldr r1, _0802E49C - ldr r1, [r1] - str r1, [r0] - adds r2, 0xC0 - adds r2, r3 - movs r0, 0x8 - str r0, [r2] - adds r5, 0x1 -_0802E44A: - mov r12, r4 - mov r0, r12 - ldr r4, [r0] - lsls r2, r5, 3 - adds r0, r4, 0 - adds r0, 0xBC - adds r0, r2 - movs r1, 0 - str r1, [r0] - adds r1, r4, 0 - adds r1, 0xC0 - adds r2, r1, r2 - movs r0, 0x1 - str r0, [r2] - movs r3, 0 - cmp r3, r5 - bge _0802E486 - movs r6, 0x1 - negs r6, r6 - adds r2, r1, 0 -_0802E472: - ldr r1, [r2] - cmp r1, r6 - beq _0802E47E - ldr r0, [r4, 0x68] - cmp r1, r0 - beq _0802E4A8 -_0802E47E: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, r5 - blt _0802E472 -_0802E486: - ldrb r0, [r7] - cmp r0, 0x1 - bne _0802E4A0 - mov r0, r12 - ldr r1, [r0] - movs r0, 0x7 - b _0802E4A6 - .align 2, 0 -_0802E494: .4byte gUnknown_80D4990 -_0802E498: .4byte gUnknown_203B304 -_0802E49C: .4byte gUnknown_80D4970 -_0802E4A0: - mov r0, r12 - ldr r1, [r0] - movs r0, 0x8 -_0802E4A6: - str r0, [r1, 0x68] -_0802E4A8: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_802E3B8 - - thumb_func_start sub_802E4B0 -sub_802E4B0: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - ldr r4, _0802E4F0 - ldr r0, [r4] - adds r0, 0x6C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802E4DC - ldr r0, [r4] - adds r0, 0x6C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _0802E4DC - ldr r0, [r4] - str r1, [r0, 0x64] -_0802E4DC: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0x7 - bhi _0802E56E - lsls r0, 2 - ldr r1, _0802E4F4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802E4F0: .4byte gUnknown_203B304 -_0802E4F4: .4byte _0802E4F8 - .align 2, 0 -_0802E4F8: - .4byte _0802E568 - .4byte _0802E518 - .4byte _0802E52A - .4byte _0802E53C - .4byte _0802E56E - .4byte _0802E56E - .4byte _0802E56E - .4byte _0802E560 -_0802E518: - bl sub_802C0E8 - lsls r0, 24 - cmp r0, 0 - bne _0802E54E - movs r0, 0x4 - bl sub_802E088 - b _0802E56E -_0802E52A: - bl sub_802C83C - lsls r0, 24 - cmp r0, 0 - bne _0802E54E - movs r0, 0x8 - bl sub_802E088 - b _0802E56E -_0802E53C: - bl sub_802B9D8 - lsls r0, 24 - cmp r0, 0 - bne _0802E54E - movs r0, 0x9 - bl sub_802E088 - b _0802E56E -_0802E54E: - ldr r0, _0802E55C - ldr r0, [r0] - adds r0, 0x6C - movs r1, 0x1 - bl sub_8012EA4 - b _0802E56E - .align 2, 0 -_0802E55C: .4byte gUnknown_203B304 -_0802E560: - movs r0, 0x2 - bl sub_802E088 - b _0802E56E -_0802E568: - movs r0, 0x3 - bl sub_802E088 -_0802E56E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802E4B0 - - thumb_func_start sub_802E578 -sub_802E578: - push {r4,lr} - movs r0, 0x1 - bl sub_802BDEC - cmp r0, 0x4 - bhi _0802E606 - lsls r0, 2 - ldr r1, _0802E590 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802E590: .4byte _0802E594 - .align 2, 0 -_0802E594: - .4byte _0802E606 - .4byte _0802E606 - .4byte _0802E5FC - .4byte _0802E5A8 - .4byte _0802E5C0 -_0802E5A8: - bl sub_802BE74 - ldr r1, _0802E5BC - ldr r1, [r1] - strb r0, [r1, 0x8] - movs r0, 0x6 - bl sub_802E088 - b _0802E606 - .align 2, 0 -_0802E5BC: .4byte gUnknown_203B304 -_0802E5C0: - bl sub_802BE74 - ldr r4, _0802E5F0 - ldr r1, [r4] - strb r0, [r1, 0x8] - ldr r0, [r4] - ldrb r0, [r0, 0x8] - bl sub_8095FE8 - adds r2, r0, 0 - ldrb r0, [r2] - cmp r0, 0x1 - bne _0802E5F4 - ldr r1, [r4] - ldrb r0, [r2, 0x5] - strb r0, [r1, 0x9] - ldr r1, [r4] - movs r0, 0x5 - str r0, [r1, 0x4] - movs r0, 0xB - bl sub_802E088 - b _0802E606 - .align 2, 0 -_0802E5F0: .4byte gUnknown_203B304 -_0802E5F4: - movs r0, 0x7 - bl sub_802E088 - b _0802E606 -_0802E5FC: - bl sub_802BEDC - movs r0, 0x1 - bl sub_802E088 -_0802E606: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802E578 - - thumb_func_start sub_802E60C -sub_802E60C: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_802BDEC - ldr r4, _0802E650 - ldr r0, [r4] - adds r0, 0x6C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802E63C - ldr r0, [r4] - adds r0, 0x6C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _0802E63C - ldr r0, [r4] - str r1, [r0, 0x68] -_0802E63C: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0x7 - bhi _0802E732 - lsls r0, 2 - ldr r1, _0802E654 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802E650: .4byte gUnknown_203B304 -_0802E654: .4byte _0802E658 - .align 2, 0 -_0802E658: - .4byte _0802E72C - .4byte _0802E732 - .4byte _0802E732 - .4byte _0802E732 - .4byte _0802E678 - .4byte _0802E6BC - .4byte _0802E704 - .4byte _0802E6B4 -_0802E678: - ldr r0, _0802E6AC - bl sub_8011988 - ldr r4, _0802E6B0 - ldr r0, [r4] - ldrb r0, [r0, 0x8] - bl sub_8095FE8 - bl sub_8096A78 - bl sub_8096C80 - bl sub_8096D24 - ldr r0, [r4] - ldrb r0, [r0, 0x8] - bl sub_8096040 - bl sub_8096078 - bl sub_802C0E8 - lsls r0, 24 - cmp r0, 0 - bne _0802E6E8 - b _0802E6FC - .align 2, 0 -_0802E6AC: .4byte 0x00000133 -_0802E6B0: .4byte gUnknown_203B304 -_0802E6B4: - movs r0, 0x7 - bl sub_802E088 - b _0802E732 -_0802E6BC: - ldr r0, _0802E6F4 - bl sub_8011988 - ldr r4, _0802E6F8 - ldr r0, [r4] - ldrb r0, [r0, 0x8] - bl sub_8095FE8 - ldrb r0, [r0, 0x5] - bl sub_8096DF8 - ldr r0, [r4] - ldrb r0, [r0, 0x8] - bl sub_8096040 - bl sub_8096078 - bl sub_802C0E8 - lsls r0, 24 - cmp r0, 0 - beq _0802E6FC -_0802E6E8: - bl sub_802BEDC - movs r0, 0x1 - bl sub_802E088 - b _0802E732 - .align 2, 0 -_0802E6F4: .4byte 0x00000133 -_0802E6F8: .4byte gUnknown_203B304 -_0802E6FC: - movs r0, 0x5 - bl sub_802E088 - b _0802E732 -_0802E704: - movs r0, 0 - bl sub_80119D4 - ldr r4, _0802E728 - ldr r0, [r4] - ldrb r0, [r0, 0x8] - bl sub_8095FE8 - ldr r1, [r4] - ldrb r0, [r0, 0x5] - strb r0, [r1, 0x9] - ldr r1, [r4] - movs r0, 0x5 - str r0, [r1, 0x4] - movs r0, 0xB - bl sub_802E088 - b _0802E732 - .align 2, 0 -_0802E728: .4byte gUnknown_203B304 -_0802E72C: - movs r0, 0x5 - bl sub_802E088 -_0802E732: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802E60C - - thumb_func_start sub_802E73C -sub_802E73C: - push {lr} - bl sub_802DEE0 - cmp r0, 0x1 - bls _0802E754 - cmp r0, 0x3 - bhi _0802E754 - bl sub_802DF24 - movs r0, 0x5 - bl sub_802E088 -_0802E754: - pop {r0} - bx r0 - thumb_func_end sub_802E73C - - thumb_func_start sub_802E758 -sub_802E758: - push {lr} - bl sub_802C898 - cmp r0, 0x1 - bls _0802E770 - cmp r0, 0x3 - bhi _0802E770 - bl sub_802C8F4 - movs r0, 0x1 - bl sub_802E088 -_0802E770: - pop {r0} - bx r0 - thumb_func_end sub_802E758 - - thumb_func_start sub_802E774 -sub_802E774: - push {lr} - movs r0, 0x1 - bl sub_802B720 - cmp r0, 0x4 - bhi _0802E7CA - lsls r0, 2 - ldr r1, _0802E78C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802E78C: .4byte _0802E790 - .align 2, 0 -_0802E790: - .4byte _0802E7CA - .4byte _0802E7CA - .4byte _0802E7C0 - .4byte _0802E7A4 - .4byte _0802E7A4 -_0802E7A4: - bl sub_802B7A8 - ldr r2, _0802E7BC - ldr r1, [r2] - strb r0, [r1, 0x9] - ldr r1, [r2] - movs r0, 0xA - str r0, [r1, 0x4] - movs r0, 0xB - bl sub_802E088 - b _0802E7CA - .align 2, 0 -_0802E7BC: .4byte gUnknown_203B304 -_0802E7C0: - bl sub_802B81C - movs r0, 0x1 - bl sub_802E088 -_0802E7CA: - pop {r0} - bx r0 - thumb_func_end sub_802E774 - - thumb_func_start sub_802E7D0 -sub_802E7D0: - push {lr} - bl sub_802BA8C - cmp r0, 0x1 - bls _0802E7EC - cmp r0, 0x3 - bhi _0802E7EC - bl sub_802BACC - ldr r0, _0802E7F0 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_802E088 -_0802E7EC: - pop {r0} - bx r0 - .align 2, 0 -_0802E7F0: .4byte gUnknown_203B304 - thumb_func_end sub_802E7D0 - - thumb_func_start nullsub_133 -nullsub_133: - bx lr - thumb_func_end nullsub_133 - - thumb_func_start sub_802E7F8 -sub_802E7F8: - push {r4-r6,lr} - sub sp, 0x8 - adds r4, r0, 0 - bl sub_8008C54 - adds r0, r4, 0 - bl sub_80073B8 - ldr r2, _0802E85C - movs r6, 0 - str r6, [sp] - movs r0, 0x3 - movs r1, 0 - adds r3, r4, 0 - bl xxx_call_draw_string - bl sub_80969AC - adds r2, r0, 0 - movs r5, 0x7 - str r5, [sp] - str r4, [sp, 0x4] - movs r0, 0x12 - movs r1, 0xD - movs r3, 0x2 - bl sub_8012BC4 - ldr r2, _0802E860 - str r6, [sp] - movs r0, 0x16 - movs r1, 0xD - adds r3, r4, 0 - bl xxx_call_draw_string - str r5, [sp] - str r4, [sp, 0x4] - movs r0, 0x23 - movs r1, 0xD - movs r2, 0x8 - movs r3, 0x2 - bl sub_8012BC4 - adds r0, r4, 0 - bl sub_80073E0 - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0802E85C: .4byte gUnknown_80E0318 -_0802E860: .4byte gUnknown_80E0324 - thumb_func_end sub_802E7F8 - - thumb_func_start sub_802E864 -sub_802E864: - push {r4,lr} - ldr r4, _0802E88C - movs r0, 0xB6 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r1, 0 - str r1, [r0, 0x64] - str r1, [r0, 0x68] - str r1, [r0, 0x4] - movs r0, 0 - bl sub_802E934 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0802E88C: .4byte gUnknown_203B308 - thumb_func_end sub_802E864 - - thumb_func_start sub_802E890 -sub_802E890: - push {lr} - ldr r0, _0802E8A8 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x8 - bhi _0802E900 - lsls r0, 2 - ldr r1, _0802E8AC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802E8A8: .4byte gUnknown_203B308 -_0802E8AC: .4byte _0802E8B0 - .align 2, 0 -_0802E8B0: - .4byte _0802E8D4 - .4byte _0802E8DC - .4byte _0802E8E2 - .4byte _0802E900 - .4byte _0802E8E8 - .4byte _0802E8E8 - .4byte _0802E8EE - .4byte _0802E8F4 - .4byte _0802E8FA -_0802E8D4: - movs r0, 0x1 - bl sub_802E934 - b _0802E904 -_0802E8DC: - bl sub_802ECB4 - b _0802E904 -_0802E8E2: - bl nullsub_134 - b _0802E904 -_0802E8E8: - bl sub_802ED4C - b _0802E904 -_0802E8EE: - bl sub_802EDBC - b _0802E904 -_0802E8F4: - bl sub_802EEA0 - b _0802E904 -_0802E8FA: - bl sub_802EEBC - b _0802E904 -_0802E900: - movs r0, 0x3 - b _0802E906 -_0802E904: - movs r0, 0 -_0802E906: - pop {r1} - bx r1 - thumb_func_end sub_802E890 - - thumb_func_start sub_802E90C -sub_802E90C: - ldr r0, _0802E914 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bx lr - .align 2, 0 -_0802E914: .4byte gUnknown_203B308 - thumb_func_end sub_802E90C - - thumb_func_start sub_802E918 -sub_802E918: - push {r4,lr} - ldr r4, _0802E930 - ldr r0, [r4] - cmp r0, 0 - beq _0802E92A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802E92A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802E930: .4byte gUnknown_203B308 - thumb_func_end sub_802E918 - - thumb_func_start sub_802E934 -sub_802E934: - push {lr} - ldr r1, _0802E948 - ldr r1, [r1] - str r0, [r1] - bl sub_802E94C - bl sub_802EA58 - pop {r0} - bx r0 - .align 2, 0 -_0802E948: .4byte gUnknown_203B308 - thumb_func_end sub_802E934 - - thumb_func_start sub_802E94C -sub_802E94C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _0802E974 - ldr r0, [r4] - movs r6, 0x86 - lsls r6, 1 - adds r0, r6 - bl sub_8006518 - ldr r0, [r4] - ldr r5, [r0] - cmp r5, 0x1 - beq _0802E97C - cmp r5, 0x6 - beq _0802E9D0 - movs r3, 0 - ldr r2, _0802E978 - b _0802EA14 - .align 2, 0 -_0802E974: .4byte gUnknown_203B308 -_0802E978: .4byte gUnknown_80E0330 -_0802E97C: - mov r12, r6 - ldr r0, _0802E9C4 - mov r8, r0 - movs r2, 0 - movs r3, 0x3 -_0802E986: - ldr r1, [r4] - adds r1, r2 - add r1, r12 - mov r0, r8 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r2, 0x18 - subs r3, 0x1 - cmp r3, 0 - bge _0802E986 - bl sub_802EB34 - ldr r3, _0802E9C8 - ldr r2, [r3] - movs r0, 0x9E - lsls r0, 1 - adds r2, r0 - ldr r1, _0802E9CC - ldm r1!, {r4-r6} - stm r2!, {r4-r6} - ldm r1!, {r4,r5,r7} - stm r2!, {r4,r5,r7} - ldr r1, [r3] - adds r0, r1, r0 - adds r1, 0xBC - bl sub_8012CAC - b _0802EA34 - .align 2, 0 -_0802E9C4: .4byte gUnknown_80E0330 -_0802E9C8: .4byte gUnknown_203B308 -_0802E9CC: .4byte gUnknown_80E0348 -_0802E9D0: - bl sub_802EC10 - ldr r2, [r4] - movs r0, 0x9E - lsls r0, 1 - adds r2, r0 - ldr r1, _0802EA0C - ldm r1!, {r3,r6,r7} - stm r2!, {r3,r6,r7} - ldm r1!, {r3,r6,r7} - stm r2!, {r3,r6,r7} - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0xBC - bl sub_8012CAC - ldr r1, [r4] - movs r4, 0xA4 - lsls r4, 1 - adds r0, r1, r4 - strh r5, [r0] - movs r5, 0xAA - lsls r5, 1 - adds r1, r5 - ldr r0, _0802EA10 - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - b _0802EA34 - .align 2, 0 -_0802EA0C: .4byte gUnknown_80E0360 -_0802EA10: .4byte gUnknown_80E0378 -_0802EA14: - ldr r0, [r4] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r0, r1 - movs r6, 0x86 - lsls r6, 1 - adds r0, r6 - adds r1, r2, 0 - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - adds r3, 0x1 - cmp r3, 0x3 - ble _0802EA14 -_0802EA34: - bl sub_8004914 - ldr r0, _0802EA54 - ldr r0, [r0] - movs r7, 0x86 - lsls r7, 1 - adds r0, r7 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802EA54: .4byte gUnknown_203B308 - thumb_func_end sub_802E94C - - thumb_func_start sub_802EA58 -sub_802EA58: - push {r4,lr} - sub sp, 0x8 - ldr r1, _0802EA74 - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0x8 - bhi _0802EB2C - lsls r0, 2 - ldr r1, _0802EA78 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802EA74: .4byte gUnknown_203B308 -_0802EA78: .4byte _0802EA7C - .align 2, 0 -_0802EA7C: - .4byte _0802EB2C - .4byte _0802EAA0 - .4byte _0802EB2C - .4byte _0802EB2C - .4byte _0802EABE - .4byte _0802EACA - .4byte _0802EAD2 - .4byte _0802EB00 - .4byte _0802EB26 -_0802EAA0: - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x6C - adds r1, r2, 0 - adds r1, 0xBC - adds r3, r2, 0 - adds r3, 0xFC - ldr r2, [r2, 0x64] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _0802EB2C -_0802EABE: - movs r0, 0 - movs r1, 0 - movs r2, 0x4 - bl sub_802C10C - b _0802EB2C -_0802EACA: - movs r0, 0x1 - bl sub_802C28C - b _0802EB2C -_0802EAD2: - bl sub_802C39C - movs r0, 0x3 - bl sub_802EEDC - ldr r0, _0802EAFC - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x6C - adds r1, r2, 0 - adds r1, 0xBC - ldr r2, [r2, 0x68] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _0802EB2C - .align 2, 0 -_0802EAFC: .4byte gUnknown_203B308 -_0802EB00: - ldr r0, [r4] - ldrb r0, [r0, 0x8] - bl sub_8096574 - ldr r1, [r4] - adds r1, 0xC - bl sub_803B35C - ldr r0, [r4] - movs r1, 0x3 - str r1, [r0, 0xC] - adds r0, 0x50 - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xC - bl sub_802DE84 - b _0802EB2C -_0802EB26: - movs r0, 0 - bl sub_802C860 -_0802EB2C: - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802EA58 - - thumb_func_start sub_802EB34 -sub_802EB34: - push {r4-r7,lr} - ldr r4, _0802EBDC - ldr r0, [r4] - adds r0, 0xFC - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r1, [r4] - adds r2, r1, 0 - adds r2, 0xBC - ldr r0, _0802EBE0 - str r0, [r2] - adds r1, 0xC0 - movs r0, 0x2 - str r0, [r1] - bl sub_802C4A4 - lsls r0, 24 - cmp r0, 0 - beq _0802EB66 - ldr r0, [r4] - adds r0, 0xFC - movs r1, 0x1 - strh r1, [r0] -_0802EB66: - movs r5, 0x1 - ldr r1, [r4] - adds r2, r1, 0 - adds r2, 0xC4 - ldr r0, _0802EBE4 - str r0, [r2] - adds r1, 0xC8 - movs r0, 0x3 - str r0, [r1] - bl sub_802C83C - lsls r0, 24 - cmp r0, 0 - beq _0802EB88 - ldr r0, [r4] - adds r0, 0xFE - strh r5, [r0] -_0802EB88: - movs r5, 0x2 - ldr r2, [r4] - adds r1, r2, 0 - adds r1, 0xCC - movs r0, 0 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x1 - str r0, [r1] - movs r3, 0 - adds r6, r4, 0 - mov r12, r2 - mov r4, r12 - adds r4, 0xFC - adds r2, 0xC0 -_0802EBA6: - ldrh r0, [r4] - cmp r0, 0 - bne _0802EBB6 - ldr r1, [r2] - mov r7, r12 - ldr r0, [r7, 0x64] - cmp r1, r0 - beq _0802EC0A -_0802EBB6: - adds r4, 0x2 - adds r2, 0x8 - adds r3, 0x1 - cmp r3, r5 - blt _0802EBA6 - movs r3, 0 - cmp r3, r5 - bge _0802EC0A - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0xFC - ldrh r0, [r0] - cmp r0, 0 - bne _0802EBE8 - adds r0, r1, 0 - adds r0, 0xC0 - ldr r0, [r0] - str r0, [r1, 0x64] - b _0802EC0A - .align 2, 0 -_0802EBDC: .4byte gUnknown_203B308 -_0802EBE0: .4byte gUnknown_80E0390 -_0802EBE4: .4byte gUnknown_80E03A0 -_0802EBE8: - adds r3, 0x1 - cmp r3, r5 - bge _0802EC0A - ldr r2, [r6] - lsls r0, r3, 1 - adds r1, r2, 0 - adds r1, 0xFC - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _0802EBE8 - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0xC0 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x64] -_0802EC0A: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_802EB34 - - thumb_func_start sub_802EC10 -sub_802EC10: - push {r4-r7,lr} - movs r6, 0 - ldr r4, _0802ECA8 - ldr r2, [r4] - adds r1, r2, 0 - adds r1, 0xBC - ldr r0, _0802ECAC - ldr r0, [r0] - str r0, [r1] - adds r1, 0x4 - movs r0, 0x4 - str r0, [r1] - ldrb r0, [r2, 0x8] - bl sub_8096574 - bl sub_80968B0 - lsls r0, 24 - cmp r0, 0 - bne _0802EC40 - bl sub_80969AC - cmp r0, 0x7 - ble _0802EC4A -_0802EC40: - ldr r0, [r4] - adds r0, 0xC0 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] -_0802EC4A: - adds r6, 0x1 - ldr r4, _0802ECA8 - ldr r5, [r4] - lsls r1, r6, 3 - adds r2, r5, 0 - adds r2, 0xBC - adds r3, r2, r1 - ldr r0, _0802ECB0 - ldr r0, [r0] - str r0, [r3] - adds r3, r5, 0 - adds r3, 0xC0 - adds r1, r3, r1 - movs r0, 0x5 - str r0, [r1] - adds r6, 0x1 - lsls r1, r6, 3 - adds r2, r1 - movs r0, 0 - str r0, [r2] - adds r1, r3, r1 - movs r0, 0x1 - str r0, [r1] - movs r2, 0 - adds r7, r4, 0 - cmp r2, r6 - bge _0802EC9C - adds r4, r5, 0 - movs r5, 0x1 - negs r5, r5 - adds r1, r3, 0 -_0802EC88: - ldr r3, [r1] - cmp r3, r5 - beq _0802EC94 - ldr r0, [r4, 0x68] - cmp r3, r0 - beq _0802ECA2 -_0802EC94: - adds r1, 0x8 - adds r2, 0x1 - cmp r2, r6 - blt _0802EC88 -_0802EC9C: - ldr r1, [r7] - movs r0, 0x5 - str r0, [r1, 0x68] -_0802ECA2: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802ECA8: .4byte gUnknown_203B308 -_0802ECAC: .4byte gUnknown_80D4990 -_0802ECB0: .4byte gUnknown_80D4970 - thumb_func_end sub_802EC10 - - thumb_func_start sub_802ECB4 -sub_802ECB4: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - ldr r4, _0802ECF0 - ldr r0, [r4] - adds r0, 0x6C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802ECE0 - ldr r0, [r4] - adds r0, 0x6C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _0802ECE0 - ldr r0, [r4] - str r1, [r0, 0x64] -_0802ECE0: - ldr r0, [sp] - cmp r0, 0x2 - beq _0802ECFE - cmp r0, 0x2 - bgt _0802ECF4 - cmp r0, 0x1 - beq _0802ED3C - b _0802ED42 - .align 2, 0 -_0802ECF0: .4byte gUnknown_203B308 -_0802ECF4: - cmp r0, 0x3 - beq _0802ED10 - cmp r0, 0x5 - beq _0802ED34 - b _0802ED42 -_0802ECFE: - bl sub_802C4A4 - lsls r0, 24 - cmp r0, 0 - bne _0802ED22 - movs r0, 0x4 - bl sub_802E934 - b _0802ED42 -_0802ED10: - bl sub_802C83C - lsls r0, 24 - cmp r0, 0 - bne _0802ED22 - movs r0, 0x8 - bl sub_802E934 - b _0802ED42 -_0802ED22: - ldr r0, _0802ED30 - ldr r0, [r0] - adds r0, 0x6C - movs r1, 0x1 - bl sub_8012EA4 - b _0802ED42 - .align 2, 0 -_0802ED30: .4byte gUnknown_203B308 -_0802ED34: - movs r0, 0x2 - bl sub_802E934 - b _0802ED42 -_0802ED3C: - movs r0, 0x3 - bl sub_802E934 -_0802ED42: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802ECB4 - - thumb_func_start sub_802ED4C -sub_802ED4C: - push {lr} - movs r0, 0x1 - bl sub_802C1E4 - cmp r0, 0x4 - bhi _0802EDB6 - lsls r0, 2 - ldr r1, _0802ED64 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802ED64: .4byte _0802ED68 - .align 2, 0 -_0802ED68: - .4byte _0802EDB6 - .4byte _0802EDB6 - .4byte _0802EDAC - .4byte _0802ED7C - .4byte _0802ED94 -_0802ED7C: - bl sub_802C26C - ldr r1, _0802ED90 - ldr r1, [r1] - strb r0, [r1, 0x8] - movs r0, 0x6 - bl sub_802E934 - b _0802EDB6 - .align 2, 0 -_0802ED90: .4byte gUnknown_203B308 -_0802ED94: - bl sub_802C26C - ldr r1, _0802EDA8 - ldr r1, [r1] - strb r0, [r1, 0x8] - movs r0, 0x7 - bl sub_802E934 - b _0802EDB6 - .align 2, 0 -_0802EDA8: .4byte gUnknown_203B308 -_0802EDAC: - bl sub_802C2D4 - movs r0, 0x1 - bl sub_802E934 -_0802EDB6: - pop {r0} - bx r0 - thumb_func_end sub_802ED4C - - thumb_func_start sub_802EDBC -sub_802EDBC: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_802C1E4 - ldr r4, _0802EDFC - ldr r0, [r4] - adds r0, 0x6C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802EDEC - ldr r0, [r4] - adds r0, 0x6C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _0802EDEC - ldr r0, [r4] - str r1, [r0, 0x68] -_0802EDEC: - ldr r0, [sp] - cmp r0, 0x4 - beq _0802EE06 - cmp r0, 0x4 - bgt _0802EE00 - cmp r0, 0x1 - beq _0802EE90 - b _0802EE96 - .align 2, 0 -_0802EDFC: .4byte gUnknown_203B308 -_0802EE00: - cmp r0, 0x5 - beq _0802EE88 - b _0802EE96 -_0802EE06: - ldr r0, _0802EE28 - bl sub_8011988 - ldr r4, _0802EE2C - ldr r0, [r4] - ldrb r0, [r0, 0x8] - bl sub_8096574 - ldrb r1, [r0] - cmp r1, 0x3 - beq _0802EE3C - cmp r1, 0x3 - bgt _0802EE30 - cmp r1, 0x2 - beq _0802EE36 - b _0802EE5E - .align 2, 0 -_0802EE28: .4byte 0x00000133 -_0802EE2C: .4byte gUnknown_203B308 -_0802EE30: - cmp r1, 0x4 - beq _0802EE42 - b _0802EE5E -_0802EE36: - ldr r0, [r4] - movs r1, 0x1 - b _0802EE46 -_0802EE3C: - ldr r0, [r4] - movs r1, 0x2 - b _0802EE46 -_0802EE42: - ldr r0, [r4] - movs r1, 0x3 -_0802EE46: - str r1, [r0, 0x4] - ldrb r0, [r0, 0x8] - bl sub_80965B8 - bl sub_80965F4 - bl sub_802C2D4 - movs r0, 0x3 - bl sub_802E934 - b _0802EE96 -_0802EE5E: - bl sub_8096A78 - bl sub_8096C80 - bl sub_8096D24 - bl sub_802C4A4 - lsls r0, 24 - cmp r0, 0 - beq _0802EE80 - bl sub_802C2D4 - movs r0, 0x1 - bl sub_802E934 - b _0802EE96 -_0802EE80: - movs r0, 0x5 - bl sub_802E934 - b _0802EE96 -_0802EE88: - movs r0, 0x7 - bl sub_802E934 - b _0802EE96 -_0802EE90: - movs r0, 0x5 - bl sub_802E934 -_0802EE96: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802EDBC - - thumb_func_start sub_802EEA0 -sub_802EEA0: - push {lr} - bl sub_802DEE0 - cmp r0, 0x1 - bls _0802EEB8 - cmp r0, 0x3 - bhi _0802EEB8 - bl sub_802DF24 - movs r0, 0x5 - bl sub_802E934 -_0802EEB8: - pop {r0} - bx r0 - thumb_func_end sub_802EEA0 - - thumb_func_start sub_802EEBC -sub_802EEBC: - push {lr} - bl sub_802C898 - cmp r0, 0x1 - bls _0802EED4 - cmp r0, 0x3 - bhi _0802EED4 - bl sub_802C8F4 - movs r0, 0x1 - bl sub_802E934 -_0802EED4: - pop {r0} - bx r0 - thumb_func_end sub_802EEBC - - thumb_func_start nullsub_134 -nullsub_134: - bx lr - thumb_func_end nullsub_134 - - thumb_func_start sub_802EEDC -sub_802EEDC: - push {r4-r6,lr} - sub sp, 0x8 - adds r4, r0, 0 - bl sub_8008C54 - adds r0, r4, 0 - bl sub_80073B8 - ldr r2, _0802EF40 - movs r6, 0 - str r6, [sp] - movs r0, 0x3 - movs r1, 0 - adds r3, r4, 0 - bl xxx_call_draw_string - bl sub_80969AC - adds r2, r0, 0 - movs r5, 0x7 - str r5, [sp] - str r4, [sp, 0x4] - movs r0, 0x12 - movs r1, 0xD - movs r3, 0x2 - bl sub_8012BC4 - ldr r2, _0802EF44 - str r6, [sp] - movs r0, 0x16 - movs r1, 0xD - adds r3, r4, 0 - bl xxx_call_draw_string - str r5, [sp] - str r4, [sp, 0x4] - movs r0, 0x23 - movs r1, 0xD - movs r2, 0x8 - movs r3, 0x2 - bl sub_8012BC4 - adds r0, r4, 0 - bl sub_80073E0 - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0802EF40: .4byte gUnknown_80E03AC -_0802EF44: .4byte gUnknown_80E03B8 - thumb_func_end sub_802EEDC - - thumb_func_start sub_802EF48 -sub_802EF48: - push {r4,lr} - ldr r4, _0802EF68 - movs r0, 0xA8 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r0, 0 - bl sub_802EFEC - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0802EF68: .4byte gUnknown_203B30C - thumb_func_end sub_802EF48 - - thumb_func_start sub_802EF6C -sub_802EF6C: - push {lr} - ldr r0, _0802EF84 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x5 - bhi _0802EFBA - lsls r0, 2 - ldr r1, _0802EF88 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802EF84: .4byte gUnknown_203B30C -_0802EF88: .4byte _0802EF8C - .align 2, 0 -_0802EF8C: - .4byte _0802EFA4 - .4byte _0802EFA4 - .4byte _0802EFAA - .4byte _0802EFB0 - .4byte _0802EFB6 - .4byte _0802EFBA -_0802EFA4: - bl sub_802F148 - b _0802EFBE -_0802EFAA: - bl sub_802F184 - b _0802EFBE -_0802EFB0: - bl sub_802F1E8 - b _0802EFBE -_0802EFB6: - movs r0, 0x3 - b _0802EFC0 -_0802EFBA: - movs r0, 0x2 - b _0802EFC0 -_0802EFBE: - movs r0, 0 -_0802EFC0: - pop {r1} - bx r1 - thumb_func_end sub_802EF6C - - thumb_func_start sub_802EFC4 -sub_802EFC4: - ldr r0, _0802EFCC - ldr r0, [r0] - ldrb r0, [r0, 0x4] - bx lr - .align 2, 0 -_0802EFCC: .4byte gUnknown_203B30C - thumb_func_end sub_802EFC4 - - thumb_func_start sub_802EFD0 -sub_802EFD0: - push {r4,lr} - ldr r4, _0802EFE8 - ldr r0, [r4] - cmp r0, 0 - beq _0802EFE2 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802EFE2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802EFE8: .4byte gUnknown_203B30C - thumb_func_end sub_802EFD0 - - thumb_func_start sub_802EFEC -sub_802EFEC: - push {lr} - ldr r1, _0802F000 - ldr r1, [r1] - str r0, [r1] - bl sub_802F004 - bl sub_802F088 - pop {r0} - bx r0 - .align 2, 0 -_0802F000: .4byte gUnknown_203B30C - thumb_func_end sub_802EFEC - - thumb_func_start sub_802F004 -sub_802F004: - push {r4-r7,lr} - ldr r4, _0802F03C - ldr r0, [r4] - adds r0, 0xF0 - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0x2 - bne _0802F044 - bl sub_802F108 - ldr r2, [r4] - movs r0, 0x90 - lsls r0, 1 - adds r2, r0 - ldr r1, _0802F040 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0xB0 - bl sub_8012CAC - b _0802F066 - .align 2, 0 -_0802F03C: .4byte gUnknown_203B30C -_0802F040: .4byte gUnknown_80E03F4 -_0802F044: - mov r12, r4 - ldr r4, _0802F080 - movs r2, 0 - movs r3, 0x3 -_0802F04C: - mov r6, r12 - ldr r1, [r6] - adds r1, r2 - adds r1, 0xF0 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r2, 0x18 - subs r3, 0x1 - cmp r3, 0 - bge _0802F04C -_0802F066: - bl sub_8004914 - ldr r0, _0802F084 - ldr r0, [r0] - adds r0, 0xF0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802F080: .4byte gUnknown_80E03C4 -_0802F084: .4byte gUnknown_203B30C - thumb_func_end sub_802F004 - - thumb_func_start sub_802F088 -sub_802F088: - push {r4-r6,lr} - sub sp, 0x8 - ldr r6, _0802F0A0 - ldr r0, [r6] - ldr r5, [r0] - cmp r5, 0x1 - beq _0802F0B6 - cmp r5, 0x1 - bgt _0802F0A4 - cmp r5, 0 - beq _0802F0AE - b _0802F100 - .align 2, 0 -_0802F0A0: .4byte gUnknown_203B30C -_0802F0A4: - cmp r5, 0x2 - beq _0802F0BE - cmp r5, 0x3 - beq _0802F0DA - b _0802F100 -_0802F0AE: - movs r0, 0 - bl sub_802CDD4 - b _0802F100 -_0802F0B6: - movs r0, 0x1 - bl sub_802CED8 - b _0802F100 -_0802F0BE: - bl sub_802CFD0 - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0x60 - adds r1, 0xB0 - movs r2, 0x3 - str r2, [sp] - str r5, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _0802F100 -_0802F0DA: - ldrb r0, [r0, 0x4] - bl sub_803B344 - adds r4, r0, 0 - ldr r1, [r6] - adds r1, 0x8 - bl sub_803B35C - ldr r0, [r6] - str r5, [r0, 0x8] - adds r0, 0x4C - movs r1, 0 - strb r1, [r0] - ldr r0, [r6] - ldr r1, [r4, 0x18] - str r1, [r0, 0x58] - adds r0, 0x8 - bl sub_802DE84 -_0802F100: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_802F088 - - thumb_func_start sub_802F108 -sub_802F108: - ldr r0, _0802F13C - ldr r0, [r0] - mov r12, r0 - movs r3, 0 - mov r1, r12 - adds r1, 0xB0 - ldr r0, _0802F140 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x2 - str r0, [r1] - movs r2, 0x1 - adds r1, 0x4 - ldr r0, _0802F144 - ldr r0, [r0] - str r0, [r1] - adds r1, 0x4 - movs r0, 0x3 - str r0, [r1] - mov r0, r12 - adds r0, 0xC0 - str r3, [r0] - adds r0, 0x4 - str r2, [r0] - bx lr - .align 2, 0 -_0802F13C: .4byte gUnknown_203B30C -_0802F140: .4byte gUnknown_80E040C -_0802F144: .4byte gUnknown_80D4970 - thumb_func_end sub_802F108 - - thumb_func_start sub_802F148 -sub_802F148: - push {lr} - movs r0, 0x1 - bl sub_802CE5C - cmp r0, 0x2 - beq _0802F174 - cmp r0, 0x2 - bcc _0802F17E - cmp r0, 0x3 - bne _0802F17E - bl sub_802CEBC - ldr r1, _0802F170 - ldr r1, [r1] - strb r0, [r1, 0x4] - movs r0, 0x2 - bl sub_802EFEC - b _0802F17E - .align 2, 0 -_0802F170: .4byte gUnknown_203B30C -_0802F174: - bl sub_802CF14 - movs r0, 0x5 - bl sub_802EFEC -_0802F17E: - pop {r0} - bx r0 - thumb_func_end sub_802F148 - - thumb_func_start sub_802F184 -sub_802F184: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_802CE5C - ldr r4, _0802F1BC - ldr r0, [r4] - adds r0, 0x60 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0802F1AA - ldr r0, [r4] - adds r0, 0x60 - mov r1, sp - bl sub_8013114 -_0802F1AA: - ldr r0, [sp] - cmp r0, 0x2 - beq _0802F1C6 - cmp r0, 0x2 - bgt _0802F1C0 - cmp r0, 0x1 - beq _0802F1DA - b _0802F1E0 - .align 2, 0 -_0802F1BC: .4byte gUnknown_203B30C -_0802F1C0: - cmp r0, 0x3 - beq _0802F1D2 - b _0802F1E0 -_0802F1C6: - bl sub_802CF14 - movs r0, 0x4 - bl sub_802EFEC - b _0802F1E0 -_0802F1D2: - movs r0, 0x3 - bl sub_802EFEC - b _0802F1E0 -_0802F1DA: - movs r0, 0x1 - bl sub_802EFEC -_0802F1E0: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_802F184 - - thumb_func_start sub_802F1E8 -sub_802F1E8: - push {lr} - bl sub_802DEE0 - cmp r0, 0x1 - bls _0802F200 - cmp r0, 0x3 - bhi _0802F200 - bl sub_802DF24 - movs r0, 0x1 - bl sub_802EFEC -_0802F200: - pop {r0} - bx r0 - thumb_func_end sub_802F1E8 - - thumb_func_start sub_802F204 -sub_802F204: - push {r4-r6,lr} - adds r6, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _0802F28C - movs r0, 0x84 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - str r6, [r0, 0x10] - movs r6, 0 - str r6, [r0, 0xC] - strb r4, [r0, 0x8] - ldr r1, [r5] - ldr r0, _0802F290 - ldr r1, [r1, 0x10] - bl strcpy - ldr r4, _0802F294 - bl sub_808D33C - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_808DA34 - ldr r0, [r5] - ldr r0, [r0, 0x10] - movs r1, 0x14 - ldrsh r0, [r0, r1] - bl sub_808DDD0 - ldr r1, [r5] - str r0, [r1, 0x14] - str r6, [r1, 0x18] - adds r1, 0x20 - strb r6, [r1] - ldr r0, [r5] - adds r0, 0x21 - strb r6, [r0] - ldr r0, [r5] - adds r0, 0x22 - strb r6, [r0] - ldr r5, [r5] - movs r0, 0x2 - strh r0, [r5, 0x1C] - movs r0, 0x8 - strh r0, [r5, 0x1E] - ldr r0, [r5, 0x14] - cmp r0, 0 - beq _0802F27C - ldr r0, [r0, 0x4] - str r0, [r5, 0x18] -_0802F27C: - movs r0, 0 - bl sub_802F2E8 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0802F28C: .4byte gUnknown_203B310 -_0802F290: .4byte gUnknown_202E5D8 -_0802F294: .4byte gUnknown_202DF98 - thumb_func_end sub_802F204 - - thumb_func_start sub_802F298 -sub_802F298: - push {lr} - ldr r0, _0802F2AC - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x5 - beq _0802F2B0 - cmp r0, 0x9 - bne _0802F2B6 - movs r0, 0x3 - b _0802F2BC - .align 2, 0 -_0802F2AC: .4byte gUnknown_203B310 -_0802F2B0: - bl sub_802F6FC - b _0802F2BA -_0802F2B6: - bl sub_802F718 -_0802F2BA: - movs r0, 0 -_0802F2BC: - pop {r1} - bx r1 - thumb_func_end sub_802F298 - - thumb_func_start sub_802F2C0 -sub_802F2C0: - push {r4,lr} - ldr r4, _0802F2E4 - ldr r0, [r4] - cmp r0, 0 - beq _0802F2DE - ldr r0, [r0, 0x14] - cmp r0, 0 - beq _0802F2D4 - bl CloseFile -_0802F2D4: - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802F2DE: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802F2E4: .4byte gUnknown_203B310 - thumb_func_end sub_802F2C0 - - thumb_func_start sub_802F2E8 -sub_802F2E8: - push {lr} - ldr r1, _0802F2FC - ldr r1, [r1] - str r0, [r1] - bl sub_802F300 - bl sub_802F358 - pop {r0} - bx r0 - .align 2, 0 -_0802F2FC: .4byte gUnknown_203B310 - thumb_func_end sub_802F2E8 - - thumb_func_start sub_802F300 -sub_802F300: - push {r4-r7,lr} - ldr r4, _0802F350 - ldr r1, [r4] - ldr r0, [r1] - cmp r0, 0 - bne _0802F348 - adds r0, r1, 0 - adds r0, 0x24 - bl sub_8006518 - mov r12, r4 - ldr r4, _0802F354 - movs r3, 0 - movs r2, 0x3 -_0802F31C: - mov r0, r12 - ldr r1, [r0] - adds r1, r3 - adds r1, 0x24 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0802F31C - bl sub_8004914 - ldr r0, _0802F350 - ldr r0, [r0] - adds r0, 0x24 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C -_0802F348: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802F350: .4byte gUnknown_203B310 -_0802F354: .4byte gUnknown_80E041C - thumb_func_end sub_802F300 - - thumb_func_start sub_802F358 -sub_802F358: - push {r4-r6,lr} - sub sp, 0x10 - ldr r1, _0802F374 - ldr r0, [r1] - ldr r0, [r0] - adds r6, r1, 0 - cmp r0, 0x9 - bls _0802F36A - b _0802F6E4 -_0802F36A: - lsls r0, 2 - ldr r1, _0802F378 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802F374: .4byte gUnknown_203B310 -_0802F378: .4byte _0802F37C - .align 2, 0 -_0802F37C: - .4byte _0802F3A4 - .4byte _0802F3E8 - .4byte _0802F444 - .4byte _0802F494 - .4byte _0802F524 - .4byte _0802F5CC - .4byte _0802F614 - .4byte _0802F630 - .4byte _0802F6A4 - .4byte _0802F6E4 -_0802F3A4: - ldr r2, [r6] - ldr r0, [r2, 0x10] - ldr r1, [r0, 0x18] - cmp r1, 0 - bne _0802F3B6 - movs r0, 0x2 - bl sub_802F2E8 - b _0802F6E4 -_0802F3B6: - ldr r0, _0802F3D4 - str r1, [r0] - ldrb r0, [r2, 0x8] - cmp r0, 0 - beq _0802F3E0 - ldr r0, _0802F3D8 - adds r2, 0x14 - ldr r3, _0802F3DC - movs r1, 0 - bl sub_80141B4 - ldr r1, [r6] - movs r0, 0x1 - str r0, [r1, 0x4] - b _0802F6E4 - .align 2, 0 -_0802F3D4: .4byte gUnknown_202DE30 -_0802F3D8: .4byte gUnknown_80E0434 -_0802F3DC: .4byte 0x0000010d -_0802F3E0: - movs r0, 0x1 - bl sub_802F2E8 - b _0802F6E4 -_0802F3E8: - movs r0, 0xCB - bl sub_8011988 - ldr r0, _0802F414 - ldr r0, [r0] - ldr r0, [r0, 0x10] - ldr r0, [r0, 0x18] - bl sub_80913A0 - movs r0, 0 - bl sub_808D544 - cmp r0, 0x1 - bgt _0802F420 - ldr r0, _0802F418 - ldr r3, _0802F41C - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _0802F42C - .align 2, 0 -_0802F414: .4byte gUnknown_203B310 -_0802F418: .4byte gUnknown_80E045C -_0802F41C: .4byte 0x00000101 -_0802F420: - ldr r0, _0802F438 - ldr r3, _0802F43C - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_0802F42C: - ldr r0, _0802F440 - ldr r1, [r0] - movs r0, 0x2 - str r0, [r1, 0x4] - b _0802F6E4 - .align 2, 0 -_0802F438: .4byte gUnknown_80E0484 -_0802F43C: .4byte 0x00000101 -_0802F440: .4byte gUnknown_203B310 -_0802F444: - ldr r0, [r6] - ldr r0, [r0, 0x10] - adds r1, r0, 0 - adds r1, 0x20 - ldrb r0, [r1] - cmp r0, 0 - bne _0802F45A - movs r0, 0x4 - bl sub_802F2E8 - b _0802F6E4 -_0802F45A: - ldr r0, _0802F480 - ldrb r1, [r1] - movs r2, 0 - bl sub_8092578 - ldr r2, [r6] - ldrb r0, [r2, 0x8] - cmp r0, 0 - beq _0802F48C - ldr r0, _0802F484 - adds r2, 0x14 - ldr r3, _0802F488 - movs r1, 0 - bl sub_80141B4 - ldr r1, [r6] - movs r0, 0x3 - str r0, [r1, 0x4] - b _0802F6E4 - .align 2, 0 -_0802F480: .4byte gUnknown_202E628 -_0802F484: .4byte gUnknown_80E04B4 -_0802F488: .4byte 0x0000010d -_0802F48C: - movs r0, 0x3 - bl sub_802F2E8 - b _0802F6E4 -_0802F494: - ldr r4, _0802F4B4 - ldr r0, [r4] - ldr r0, [r0, 0x10] - adds r0, 0x20 - ldrb r0, [r0] - bl sub_8092600 - lsls r0, 24 - cmp r0, 0 - beq _0802F4BC - movs r0, 0xFA - lsls r0, 2 - bl sub_80913A0 - ldr r0, _0802F4B8 - b _0802F4DA - .align 2, 0 -_0802F4B4: .4byte gUnknown_203B310 -_0802F4B8: .4byte gUnknown_80E04F4 -_0802F4BC: - movs r0, 0 - bl sub_808D544 - cmp r0, 0x1 - bgt _0802F4F0 - ldr r0, [r4] - ldr r0, [r0, 0x10] - adds r0, 0x20 - ldrb r0, [r0] - bl sub_80925EC - movs r0, 0xCE - bl sub_8011988 - ldr r0, _0802F4E8 -_0802F4DA: - ldr r3, _0802F4EC - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _0802F50E - .align 2, 0 -_0802F4E8: .4byte gUnknown_80E05C0 -_0802F4EC: .4byte 0x00000101 -_0802F4F0: - ldr r0, [r4] - ldr r0, [r0, 0x10] - adds r0, 0x20 - ldrb r0, [r0] - bl sub_80925EC - movs r0, 0xCE - bl sub_8011988 - ldr r0, _0802F518 - ldr r3, _0802F51C - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_0802F50E: - ldr r0, _0802F520 - ldr r1, [r0] - movs r0, 0x4 - str r0, [r1, 0x4] - b _0802F6E4 - .align 2, 0 -_0802F518: .4byte gUnknown_80E05FC -_0802F51C: .4byte 0x00000101 -_0802F520: .4byte gUnknown_203B310 -_0802F524: - ldr r0, [r6] - ldr r0, [r0, 0x10] - ldrb r2, [r0, 0x1C] - cmp r2, 0 - beq _0802F628 - ldr r0, [r0, 0x18] - cmp r0, 0 - bne _0802F620 - lsls r2, 16 - ldr r1, _0802F564 - ldr r0, [sp, 0xC] - ands r0, r1 - orrs r0, r2 - str r0, [sp, 0xC] - lsrs r0, 16 - lsls r0, 24 - lsrs r0, 24 - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _0802F56C - ldr r0, [r6] - ldr r0, [r0, 0x10] - ldrb r1, [r0, 0x1F] - lsls r1, 8 - ldr r2, _0802F568 - ldr r0, [sp, 0xC] - ands r0, r2 - orrs r0, r1 - b _0802F572 - .align 2, 0 -_0802F564: .4byte 0xff00ffff -_0802F568: .4byte 0xffff00ff -_0802F56C: - ldr r1, _0802F5B4 - ldr r0, [sp, 0xC] - ands r0, r1 -_0802F572: - str r0, [sp, 0xC] - ldr r1, _0802F5B8 - ldr r0, [sp, 0xC] - ands r0, r1 - movs r2, 0x1 - orrs r0, r2 - str r0, [sp, 0xC] - movs r1, 0 - str r1, [sp] - mov r0, sp - strb r1, [r0, 0x4] - strb r2, [r0, 0x8] - ldr r0, _0802F5BC - add r1, sp, 0xC - mov r2, sp - bl sub_8090E14 - ldr r4, _0802F5C0 - ldr r2, [r4] - ldrb r0, [r2, 0x8] - cmp r0, 0 - beq _0802F620 - ldr r0, _0802F5C4 - adds r2, 0x14 - ldr r3, _0802F5C8 - movs r1, 0 - bl sub_80141B4 - ldr r1, [r4] - movs r0, 0x5 - str r0, [r1, 0x4] - b _0802F6E4 - .align 2, 0 -_0802F5B4: .4byte 0xffff00ff -_0802F5B8: .4byte 0xffffff00 -_0802F5BC: .4byte gUnknown_202DEA8 -_0802F5C0: .4byte gUnknown_203B310 -_0802F5C4: .4byte gUnknown_80E0640 -_0802F5C8: .4byte 0x0000010d -_0802F5CC: - ldr r0, [r6] - ldr r2, [r0, 0x10] - adds r1, r2, 0 - adds r1, 0x1C - ldr r3, [r0, 0xC] - adds r1, r3 - ldrb r0, [r1] - cmp r0, 0 - bne _0802F5E6 - movs r0, 0x6 - bl sub_802F2E8 - b _0802F6E4 -_0802F5E6: - cmp r3, 0 - bne _0802F5FC - ldr r0, [r2, 0x18] - cmp r0, 0 - bne _0802F5FC - ldrb r1, [r2, 0x1C] - ldrb r2, [r2, 0x1F] - movs r0, 0 - bl sub_801B60C - b _0802F6E4 -_0802F5FC: - ldr r1, [r6] - ldr r2, [r1, 0x10] - adds r0, r2, 0 - adds r0, 0x1C - ldr r1, [r1, 0xC] - adds r0, r1 - ldrb r1, [r0] - ldrb r2, [r2, 0x1F] - movs r0, 0x1 - bl sub_801B60C - b _0802F6E4 -_0802F614: - ldr r1, [r6] - ldr r0, [r1, 0xC] - adds r0, 0x1 - str r0, [r1, 0xC] - cmp r0, 0x2 - bgt _0802F628 -_0802F620: - movs r0, 0x5 - bl sub_802F2E8 - b _0802F6E4 -_0802F628: - movs r0, 0x7 - bl sub_802F2E8 - b _0802F6E4 -_0802F630: - adds r5, r6, 0 - ldr r0, [r5] - ldr r0, [r0, 0x10] - ldr r0, [r0, 0x24] - cmp r0, 0 - bne _0802F644 - movs r0, 0x9 - bl sub_802F2E8 - b _0802F6E4 -_0802F644: - bl sub_8092178 - ldr r1, [r5] - strb r0, [r1, 0x9] - ldr r0, [r5] - ldr r0, [r0, 0x10] - ldr r0, [r0, 0x24] - bl sub_8092158 - movs r0, 0xCB - bl sub_8011988 - ldr r4, [r5] - bl sub_8092178 - ldrb r1, [r4, 0x9] - lsls r0, 24 - lsrs r0, 24 - cmp r1, r0 - beq _0802F672 - ldr r1, [r5] - movs r0, 0x8 - b _0802F676 -_0802F672: - ldr r1, [r6] - movs r0, 0x9 -_0802F676: - str r0, [r1, 0x4] - ldr r1, _0802F694 - ldr r0, _0802F698 - ldr r0, [r0] - ldr r0, [r0, 0x10] - ldr r0, [r0, 0x24] - str r0, [r1] - ldr r0, _0802F69C - ldr r3, _0802F6A0 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _0802F6E4 - .align 2, 0 -_0802F694: .4byte gUnknown_202DE30 -_0802F698: .4byte gUnknown_203B310 -_0802F69C: .4byte gUnknown_80E0670 -_0802F6A0: .4byte 0x00000101 -_0802F6A4: - movs r0, 0xC9 - bl sub_8011988 - ldr r0, _0802F6EC - ldr r1, [r0] - movs r0, 0x9 - str r0, [r1, 0x4] - ldrb r0, [r1, 0x9] - bl sub_80921A8 - adds r1, r0, 0 - ldr r4, _0802F6F0 - adds r0, r4, 0 - bl strcpy - bl sub_8092178 - lsls r0, 24 - lsrs r0, 24 - bl sub_80921A8 - adds r1, r0, 0 - adds r4, 0x50 - adds r0, r4, 0 - bl strcpy - ldr r0, _0802F6F4 - ldr r3, _0802F6F8 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_0802F6E4: - add sp, 0x10 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0802F6EC: .4byte gUnknown_203B310 -_0802F6F0: .4byte gUnknown_202E038 -_0802F6F4: .4byte gUnknown_80E06A8 -_0802F6F8: .4byte 0x00000101 - thumb_func_end sub_802F358 - - thumb_func_start sub_802F6FC -sub_802F6FC: - push {lr} - bl sub_801B6AC - cmp r0, 0x1 - bls _0802F714 - cmp r0, 0x3 - bhi _0802F714 - bl sub_801B72C - movs r0, 0x6 - bl sub_802F2E8 -_0802F714: - pop {r0} - bx r0 - thumb_func_end sub_802F6FC - - thumb_func_start sub_802F718 -sub_802F718: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0802F730 - ldr r0, _0802F738 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_802F2E8 -_0802F730: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0802F738: .4byte gUnknown_203B310 - thumb_func_end sub_802F718 - - thumb_func_start sub_802F73C -sub_802F73C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - adds r7, r1, 0 - mov r8, r2 - lsls r3, 24 - lsrs r6, r3, 24 - bl sub_802FCF0 - lsls r0, 24 - cmp r0, 0 - beq _0802F75A - movs r0, 0 - b _0802F836 -_0802F75A: - ldr r4, _0802F7AC - ldr r0, [r4] - cmp r0, 0 - bne _0802F76E - movs r0, 0xAE - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] -_0802F76E: - ldr r0, [r4] - adds r0, 0xB8 - strb r6, [r0] - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0xF0 - str r5, [r1] - adds r2, r0, 0 - adds r2, 0xF4 - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 3 - adds r1, 0xF8 - adds r1, r0, r1 - str r1, [r2] - adds r0, 0xF8 - bl sub_8006518 - cmp r6, 0 - beq _0802F7B4 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xF0 - ldr r2, [r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0xF8 - ldr r0, _0802F7B0 - b _0802F7C8 - .align 2, 0 -_0802F7AC: .4byte gUnknown_203B314 -_0802F7B0: .4byte gUnknown_80E072C -_0802F7B4: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xF0 - ldr r2, [r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0xF8 - ldr r0, _0802F840 -_0802F7C8: - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r4, _0802F844 - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0xF4 - ldr r1, [r0] - movs r3, 0xAC - lsls r3, 1 - adds r0, r2, r3 - str r0, [r1, 0x14] - cmp r7, 0 - beq _0802F7FC - adds r0, r2, 0 - adds r0, 0xF0 - ldr r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - subs r3, 0x58 - adds r1, r2, r3 - adds r1, r0 - ldr r0, [r7] - str r0, [r1] -_0802F7FC: - ldr r0, [r4] - adds r0, 0xF4 - ldr r0, [r0] - mov r1, r8 - bl sub_8012D08 - bl sub_8004914 - ldr r0, [r4] - adds r0, 0xF8 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r4] - adds r4, 0xBC - bl sub_802FBF4 - adds r1, r0, 0 - adds r0, r4, 0 - mov r2, r8 - adds r3, r5, 0 - bl sub_8013818 - bl sub_802F9C0 - bl sub_802FA50 - movs r0, 0x1 -_0802F836: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0802F840: .4byte gUnknown_80E0714 -_0802F844: .4byte gUnknown_203B314 - thumb_func_end sub_802F73C - - thumb_func_start sub_802F848 -sub_802F848: - push {r4,r5,lr} - lsls r0, 16 - asrs r4, r0, 16 - movs r3, 0 - ldr r1, _0802F858 - ldr r0, [r1] - b _0802F884 - .align 2, 0 -_0802F858: .4byte gUnknown_203B314 -_0802F85C: - ldr r2, [r1] - lsls r0, r3, 1 - adds r0, r2, r0 - movs r5, 0 - ldrsh r0, [r0, r5] - cmp r0, r4 - bne _0802F880 - adds r0, r2, 0 - adds r0, 0xBC - adds r1, r3, 0 - bl sub_8013878 - bl sub_802F9C0 - bl sub_802FA50 - movs r0, 0x1 - b _0802F89A -_0802F880: - adds r3, 0x1 - adds r0, r2, 0 -_0802F884: - adds r0, 0xDE - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r3, r0 - blt _0802F85C - ldr r0, [r1] - adds r0, 0xBC - movs r1, 0 - bl sub_8013878 - movs r0, 0 -_0802F89A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_802F848 - - thumb_func_start sub_802F8A0 -sub_802F8A0: - push {r4,lr} - lsls r0, 24 - cmp r0, 0 - bne _0802F8BC - ldr r0, _0802F8B8 - ldr r0, [r0] - adds r0, 0xBC - bl sub_8013660 - movs r0, 0 - b _0802F904 - .align 2, 0 -_0802F8B8: .4byte gUnknown_203B314 -_0802F8BC: - ldr r4, _0802F8D8 - ldr r0, [r4] - adds r0, 0xBC - bl GetKeyPress - cmp r0, 0x1 - beq _0802F8DC - cmp r0, 0x2 - bne _0802F8E6 - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0802F904 - .align 2, 0 -_0802F8D8: .4byte gUnknown_203B314 -_0802F8DC: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _0802F904 -_0802F8E6: - ldr r0, [r4] - adds r0, 0xBC - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0802F8FA - movs r0, 0 - b _0802F904 -_0802F8FA: - bl sub_802F9C0 - bl sub_802FA50 - movs r0, 0x1 -_0802F904: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_802F8A0 - - thumb_func_start sub_802F90C -sub_802F90C: - ldr r0, _0802F934 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0xDA - movs r3, 0 - ldrsh r1, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r1 - adds r1, r2, 0 - adds r1, 0xD4 - movs r3, 0 - ldrsh r1, [r1, r3] - adds r0, r1 - lsls r0, 1 - adds r0, r2, r0 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_0802F934: .4byte gUnknown_203B314 - thumb_func_end sub_802F90C - - thumb_func_start sub_802F938 -sub_802F938: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_802FBF4 - adds r1, r0, 0 - ldr r5, _0802F970 - ldr r0, [r5] - adds r2, r0, 0 - adds r2, 0xDE - strh r1, [r2] - adds r0, 0xBC - bl sub_8013984 - bl sub_802F9C0 - bl sub_802FA50 - cmp r4, 0 - beq _0802F96A - ldr r0, [r5] - adds r0, 0xBC - bl AddMenuCursorSprite -_0802F96A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802F970: .4byte gUnknown_203B314 - thumb_func_end sub_802F938 - - thumb_func_start sub_802F974 -sub_802F974: - push {r4,r5,lr} - ldr r4, _0802F9B8 - ldr r2, [r4] - cmp r2, 0 - beq _0802F9B2 - adds r0, r2, 0 - adds r0, 0xF0 - ldr r0, [r0] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0xF8 - ldr r0, _0802F9BC - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0xF8 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802F9B2: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802F9B8: .4byte gUnknown_203B314 -_0802F9BC: .4byte gUnknown_80E06FC - thumb_func_end sub_802F974 - - thumb_func_start sub_802F9C0 -sub_802F9C0: - push {r4,r5,lr} - ldr r4, _0802FA44 - ldr r0, [r4] - movs r1, 0xAC - lsls r1, 1 - adds r0, r1 - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - ldr r3, _0802FA48 - adds r0, r3 - strb r2, [r0] - ldr r0, [r4] - adds r3, 0x1 - adds r1, r0, r3 - movs r0, 0x8 - strb r0, [r1] - ldr r0, [r4] - ldr r1, _0802FA4C - adds r0, r1 - strb r2, [r0] - ldr r0, [r4] - adds r0, 0xD6 - movs r2, 0 - ldrsh r0, [r0, r2] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r3, [r4] - adds r5, r3, 0 - adds r5, 0xF0 - ldr r2, [r5] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r1, r3, r1 - movs r2, 0x83 - lsls r2, 1 - adds r1, r2 - asrs r2, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r5] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r3, r0 - adds r2, 0x2 - movs r0, 0x84 - lsls r0, 1 - adds r3, r0 - strh r2, [r3] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0xF8 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0802FA44: .4byte gUnknown_203B314 -_0802FA48: .4byte 0x00000159 -_0802FA4C: .4byte 0x0000015b - thumb_func_end sub_802F9C0 - - thumb_func_start sub_802FA50 -sub_802FA50: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - ldr r4, _0802FB1C - ldr r0, [r4] - adds r0, 0xF0 - ldr r0, [r0] - bl sub_8008C54 - ldr r0, [r4] - adds r0, 0xF0 - ldr r0, [r0] - bl sub_80073B8 - ldr r2, _0802FB20 - ldr r0, [r4] - adds r0, 0xF0 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r3, [r4] - movs r1, 0xAD - lsls r1, 1 - adds r0, r3, r1 - ldrb r0, [r0] - lsls r0, 3 - adds r0, 0x4 - adds r1, r3, 0 - adds r1, 0xDA - movs r5, 0 - ldrsh r2, [r1, r5] - adds r2, 0x1 - movs r1, 0x7 - str r1, [sp] - adds r1, r3, 0 - adds r1, 0xF0 - ldr r1, [r1] - str r1, [sp, 0x4] - movs r1, 0 - movs r3, 0x2 - bl sub_8012BC4 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xB8 - ldrb r0, [r0] - cmp r0, 0 - beq _0802FB78 - movs r6, 0 - adds r0, r1, 0 - adds r0, 0xD6 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r6, r0 - blt _0802FACA - b _0802FBD6 -_0802FACA: - mov r8, r4 -_0802FACC: - mov r2, r8 - ldr r0, [r2] - adds r0, 0xBC - adds r1, r6, 0 - bl sub_8013800 - adds r5, r0, 0 - mov r3, r8 - ldr r2, [r3] - adds r0, r2, 0 - adds r0, 0xDA - movs r3, 0 - ldrsh r1, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r1 - adds r1, r0, r6 - lsls r0, r1, 1 - adds r0, r2, r0 - movs r3, 0 - ldrsh r7, [r0, r3] - adds r0, r2, 0 - adds r0, 0x5C - adds r0, r1 - ldrb r4, [r0] - cmp r4, 0 - beq _0802FB28 - adds r0, r2, 0 - adds r0, 0xF0 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - adds r1, r5, 0 - ldr r2, _0802FB24 - bl xxx_call_draw_string - b _0802FB46 - .align 2, 0 -_0802FB1C: .4byte gUnknown_203B314 -_0802FB20: .4byte gUnknown_80E0744 -_0802FB24: .4byte gUnknown_80E0750 -_0802FB28: - adds r0, r2, 0 - adds r0, 0x8A - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0802FB46 - adds r0, r2, 0 - adds r0, 0xF0 - ldr r3, [r0] - str r4, [sp] - movs r0, 0xA - adds r1, r5, 0 - ldr r2, _0802FB74 - bl xxx_call_draw_string -_0802FB46: - adds r0, r7, 0 - bl sub_80974A0 - adds r2, r0, 0 - mov r1, r8 - ldr r0, [r1] - adds r0, 0xF0 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x18 - adds r1, r5, 0 - bl xxx_call_draw_string - adds r6, 0x1 - mov r2, r8 - ldr r0, [r2] - adds r0, 0xD6 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r6, r0 - blt _0802FACC - b _0802FBD6 - .align 2, 0 -_0802FB74: .4byte gUnknown_80E0754 -_0802FB78: - movs r6, 0 - adds r0, r1, 0 - adds r0, 0xD6 - movs r5, 0 - ldrsh r0, [r0, r5] - cmp r6, r0 - bge _0802FBD6 - adds r5, r4, 0 -_0802FB88: - ldr r0, [r5] - adds r0, 0xBC - adds r1, r6, 0 - bl sub_8013800 - adds r4, r0, 0 - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0xDA - movs r3, 0 - ldrsh r2, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r2 - adds r0, r6 - lsls r0, 1 - adds r1, r0 - movs r2, 0 - ldrsh r0, [r1, r2] - bl sub_80974A0 - adds r2, r0, 0 - ldr r0, [r5] - adds r0, 0xF0 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - adds r1, r4, 0 - bl xxx_call_draw_string - adds r6, 0x1 - ldr r0, [r5] - adds r0, 0xD6 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r6, r0 - blt _0802FB88 -_0802FBD6: - ldr r0, _0802FBF0 - ldr r0, [r0] - adds r0, 0xF0 - ldr r0, [r0] - bl sub_80073E0 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802FBF0: .4byte gUnknown_203B314 - thumb_func_end sub_802FA50 - - thumb_func_start sub_802FBF4 -sub_802FBF4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r0, 0 - mov r8, r0 - movs r1, 0 - str r1, [sp] -_0802FC08: - ldr r1, [sp] - lsls r0, r1, 16 - asrs r4, r0, 16 - mov r10, r4 - adds r0, r4, 0 - bl sub_80A27CC - lsls r0, 24 - cmp r0, 0 - beq _0802FCCE - cmp r4, 0x13 - beq _0802FCCE - cmp r4, 0x1D - beq _0802FCCE - ldr r7, _0802FC88 - ldr r1, [r7] - mov r0, r8 - lsls r6, r0, 1 - adds r0, r1, r6 - strh r4, [r0] - adds r1, 0x5C - add r1, r8 - movs r0, 0 - strb r0, [r1] - ldr r0, [r7] - adds r0, 0x8A - add r0, r8 - movs r1, 0 - strb r1, [r0] - ldr r0, [r7] - adds r0, 0xB8 - ldrb r0, [r0] - cmp r0, 0 - beq _0802FCCA - cmp r4, 0xD - beq _0802FCCA - adds r0, r4, 0 - bl sub_80A270C - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r5, 0 - cmp r4, 0x1E - bgt _0802FCA8 - adds r0, r4, 0 - bl sub_8097384 - lsls r0, 24 - cmp r0, 0 - bne _0802FCA6 - cmp r4, 0x6 - bne _0802FC8C - movs r0, 0x13 - bl sub_8097384 - lsls r0, 24 - cmp r0, 0 - beq _0802FCA8 - ldr r0, [r7] - adds r0, r6 - movs r1, 0x13 - b _0802FCA4 - .align 2, 0 -_0802FC88: .4byte gUnknown_203B314 -_0802FC8C: - mov r0, r10 - cmp r0, 0xA - bne _0802FCA8 - movs r0, 0x1D - bl sub_8097384 - lsls r0, 24 - cmp r0, 0 - beq _0802FCA8 - ldr r0, [r7] - adds r0, r6 - movs r1, 0x1D -_0802FCA4: - strh r1, [r0] -_0802FCA6: - movs r5, 0x1 -_0802FCA8: - ldr r4, _0802FCEC - ldr r0, [r4] - adds r0, 0x5C - add r0, r8 - strb r5, [r0] - cmp r5, 0 - bne _0802FCCA - mov r0, r9 - bl sub_80969D0 - cmp r0, 0 - ble _0802FCCA - ldr r0, [r4] - adds r0, 0x8A - add r0, r8 - movs r1, 0x1 - strb r1, [r0] -_0802FCCA: - movs r1, 0x1 - add r8, r1 -_0802FCCE: - ldr r0, [sp] - adds r0, 0x1 - str r0, [sp] - cmp r0, 0x2D - ble _0802FC08 - mov r0, r8 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0802FCEC: .4byte gUnknown_203B314 - thumb_func_end sub_802FBF4 - - thumb_func_start sub_802FCF0 -sub_802FCF0: - push {r4,lr} - movs r4, 0 -_0802FCF4: - lsls r0, r4, 16 - asrs r0, 16 - bl sub_80A27CC - lsls r0, 24 - cmp r0, 0 - beq _0802FD06 - movs r0, 0 - b _0802FD0E -_0802FD06: - adds r4, 0x1 - cmp r4, 0x2D - ble _0802FCF4 - movs r0, 0x1 -_0802FD0E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_802FCF0 - - thumb_func_start sub_802FD14 -sub_802FD14: - push {r4-r6,lr} - adds r5, r0, 0 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _0802FD48 - movs r0, 0xCC - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - ldr r1, _0802FD4C - strh r1, [r0, 0x10] - str r5, [r0] - cmp r5, 0x7 - bhi _0802FDC0 - lsls r0, r5, 2 - ldr r1, _0802FD50 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802FD48: .4byte gUnknown_203B318 -_0802FD4C: .4byte 0x0000ffff -_0802FD50: .4byte _0802FD54 - .align 2, 0 -_0802FD54: - .4byte _0802FD74 - .4byte _0802FD84 - .4byte _0802FD94 - .4byte _0802FDA4 - .4byte _0802FDB4 - .4byte _0802FDB8 - .4byte _0802FDBC - .4byte _0802FDC0 -_0802FD74: - movs r6, 0 - ldr r1, _0802FD80 - ldr r0, [r1] - str r6, [r0, 0x4] - b _0802FDCC - .align 2, 0 -_0802FD80: .4byte gUnknown_203B318 -_0802FD84: - movs r6, 0x7 - ldr r2, _0802FD90 - ldr r1, [r2] - movs r0, 0 - b _0802FDC8 - .align 2, 0 -_0802FD90: .4byte gUnknown_203B318 -_0802FD94: - movs r6, 0x6 - ldr r2, _0802FDA0 - ldr r1, [r2] - movs r0, 0 - b _0802FDC8 - .align 2, 0 -_0802FDA0: .4byte gUnknown_203B318 -_0802FDA4: - movs r6, 0x8 - ldr r2, _0802FDB0 - ldr r1, [r2] - movs r0, 0 - b _0802FDC8 - .align 2, 0 -_0802FDB0: .4byte gUnknown_203B318 -_0802FDB4: - movs r6, 0 - b _0802FDC2 -_0802FDB8: - movs r6, 0x7 - b _0802FDC2 -_0802FDBC: - movs r6, 0x6 - b _0802FDC2 -_0802FDC0: - movs r6, 0x8 -_0802FDC2: - ldr r2, _0802FDD8 - ldr r1, [r2] - movs r0, 0x1 -_0802FDC8: - str r0, [r1, 0x4] - adds r1, r2, 0 -_0802FDCC: - ldr r1, [r1] - ldr r0, [r1, 0x4] - cmp r0, 0x1 - bne _0802FDDC - movs r0, 0 - b _0802FDE0 - .align 2, 0 -_0802FDD8: .4byte gUnknown_203B318 -_0802FDDC: - adds r0, r1, 0 - adds r0, 0x58 -_0802FDE0: - str r0, [r1, 0x68] - ldr r0, _0802FE48 - ldr r5, _0802FE4C - adds r1, r5, 0 - bl sub_808D8E0 - ldr r4, _0802FE50 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_808D8E0 - adds r0, r5, 0 - bl sub_808D994 - adds r1, r0, 0 - subs r4, 0x50 - adds r0, r4, 0 - bl strcpy - adds r0, r5, 0 - bl sub_808DDD0 - ldr r3, _0802FE54 - ldr r1, [r3] - str r0, [r1, 0x58] - ldr r0, [r0, 0x4] - str r0, [r1, 0x5C] - adds r1, 0x64 - movs r2, 0 - strb r2, [r1] - ldr r0, [r3] - adds r0, 0x65 - strb r2, [r0] - ldr r0, [r3] - adds r0, 0x66 - strb r2, [r0] - ldr r1, [r3] - adds r2, r1, 0 - adds r2, 0x60 - movs r0, 0x2 - strh r0, [r2] - adds r1, 0x62 - movs r0, 0x8 - strh r0, [r1] - adds r0, r6, 0 - bl sub_802FF04 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0802FE48: .4byte gUnknown_202E5D8 -_0802FE4C: .4byte 0x00000141 -_0802FE50: .4byte gUnknown_202E1C8 -_0802FE54: .4byte gUnknown_203B318 - thumb_func_end sub_802FD14 - - thumb_func_start sub_802FE58 -sub_802FE58: - push {lr} - ldr r0, _0802FE70 - ldr r0, [r0] - ldr r0, [r0, 0x8] - cmp r0, 0xD - bhi _0802FEC6 - lsls r0, 2 - ldr r1, _0802FE74 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802FE70: .4byte gUnknown_203B318 -_0802FE74: .4byte _0802FE78 - .align 2, 0 -_0802FE78: - .4byte _0802FEB0 - .4byte _0802FEB0 - .4byte _0802FEC6 - .4byte _0802FEC6 - .4byte _0802FEB6 - .4byte _0802FEC6 - .4byte _0802FEC6 - .4byte _0802FEC6 - .4byte _0802FEC6 - .4byte _0802FEC6 - .4byte _0802FEC6 - .4byte _0802FEBC - .4byte _0802FEC6 - .4byte _0802FEC2 -_0802FEB0: - bl sub_8030208 - b _0802FECA -_0802FEB6: - bl sub_8030258 - b _0802FECA -_0802FEBC: - bl sub_80302A8 - b _0802FECA -_0802FEC2: - movs r0, 0x3 - b _0802FECC -_0802FEC6: - bl sub_80302C4 -_0802FECA: - movs r0, 0 -_0802FECC: - pop {r1} - bx r1 - thumb_func_end sub_802FE58 - - thumb_func_start sub_802FED0 -sub_802FED0: - ldr r0, _0802FEDC - ldr r0, [r0] - movs r1, 0x10 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_0802FEDC: .4byte gUnknown_203B318 - thumb_func_end sub_802FED0 - - thumb_func_start sub_802FEE0 -sub_802FEE0: - push {r4,lr} - ldr r4, _0802FF00 - ldr r0, [r4] - cmp r0, 0 - beq _0802FEFA - ldr r0, [r0, 0x58] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802FEFA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0802FF00: .4byte gUnknown_203B318 - thumb_func_end sub_802FEE0 - - thumb_func_start sub_802FF04 -sub_802FF04: - push {lr} - ldr r1, _0802FF18 - ldr r1, [r1] - str r0, [r1, 0x8] - bl sub_802FF1C - bl sub_802FF88 - pop {r0} - bx r0 - .align 2, 0 -_0802FF18: .4byte gUnknown_203B318 - thumb_func_end sub_802FF04 - - thumb_func_start sub_802FF1C -sub_802FF1C: - push {r4-r7,lr} - ldr r4, _0802FF3C - ldr r0, [r4] - adds r0, 0x6C - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0, 0x8] - cmp r0, 0x4 - beq _0802FF44 - cmp r0, 0x4 - bgt _0802FF40 - cmp r0, 0 - beq _0802FF44 - b _0802FF68 - .align 2, 0 -_0802FF3C: .4byte gUnknown_203B318 -_0802FF40: - cmp r0, 0xD - bne _0802FF68 -_0802FF44: - ldr r0, _0802FF80 - mov r12, r0 - ldr r4, _0802FF84 - movs r3, 0 - movs r2, 0x3 -_0802FF4E: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - adds r1, 0x6C - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0802FF4E -_0802FF68: - bl sub_8004914 - ldr r0, _0802FF80 - ldr r0, [r0] - adds r0, 0x6C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0802FF80: .4byte gUnknown_203B318 -_0802FF84: .4byte gUnknown_80E0760 - thumb_func_end sub_802FF1C - - thumb_func_start sub_802FF88 -sub_802FF88: - push {r4,r5,lr} - sub sp, 0x18 - ldr r1, _0802FFA4 - ldr r0, [r1] - ldr r0, [r0, 0x8] - adds r5, r1, 0 - cmp r0, 0xD - bls _0802FF9A - b _080301A0 -_0802FF9A: - lsls r0, 2 - ldr r1, _0802FFA8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0802FFA4: .4byte gUnknown_203B318 -_0802FFA8: .4byte _0802FFAC - .align 2, 0 -_0802FFAC: - .4byte _0802FFE4 - .4byte _08030000 - .4byte _08030038 - .4byte _08030050 - .4byte _08030068 - .4byte _08030074 - .4byte _080300DC - .4byte _080300C4 - .4byte _080300F4 - .4byte _0803010C - .4byte _08030148 - .4byte _08030174 - .4byte _08030180 - .4byte _080301A0 -_0802FFE4: - bl sub_80301B0 - ldr r2, _0802FFF8 - ldr r0, _0802FFFC - ldr r5, [r0] - ldr r1, [r5, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - b _0803000E - .align 2, 0 -_0802FFF8: .4byte gUnknown_80D9FC8 -_0802FFFC: .4byte gUnknown_203B318 -_08030000: - ldr r2, _08030034 - ldr r5, [r5] - ldr r1, [r5, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r2, 0x4 -_0803000E: - adds r0, r2 - ldr r0, [r0] - ldr r2, [r5, 0x14] - adds r3, r5, 0 - adds r3, 0x18 - movs r4, 0 - str r4, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - ldr r1, [r5, 0x68] - str r1, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _080301A0 - .align 2, 0 -_08030034: .4byte gUnknown_80D9FC8 -_08030038: - ldr r3, [r5] - movs r0, 0xD - str r0, [r3, 0xC] - ldr r2, _0803004C - ldr r1, [r3, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r2, 0x8 - b _0803015A - .align 2, 0 -_0803004C: .4byte gUnknown_80D9FC8 -_08030050: - ldr r3, [r5] - movs r0, 0x4 - str r0, [r3, 0xC] - ldr r2, _08030064 - ldr r1, [r3, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r2, 0xC - b _0803015A - .align 2, 0 -_08030064: .4byte gUnknown_80D9FC8 -_08030068: - movs r0, 0x3 - movs r1, 0 - movs r2, 0xA - bl sub_80302E8 - b _080301A0 -_08030074: - ldr r1, [r5] - movs r0, 0xD - str r0, [r1, 0xC] - movs r2, 0x10 - ldrsh r0, [r1, r2] - bl sub_80A2740 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080300B4 - ldr r1, [sp, 0x14] - ands r1, r2 - orrs r1, r0 - ldr r0, _080300B8 - ands r1, r0 - movs r0, 0x80 - lsls r0, 1 - orrs r1, r0 - str r1, [sp, 0x14] - ldr r0, _080300BC - add r1, sp, 0x14 - bl sub_8090208 - ldr r2, _080300C0 - ldr r3, [r5] - ldr r1, [r3, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r2, 0x10 - b _0803015A - .align 2, 0 -_080300B4: .4byte 0xffffff00 -_080300B8: .4byte 0xffff00ff -_080300BC: .4byte gUnknown_202DF98 -_080300C0: .4byte gUnknown_80D9FC8 -_080300C4: - ldr r3, [r5] - movs r0, 0xD - str r0, [r3, 0xC] - ldr r2, _080300D8 - ldr r1, [r3, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r2, 0x18 - b _0803015A - .align 2, 0 -_080300D8: .4byte gUnknown_80D9FC8 -_080300DC: - ldr r3, [r5] - movs r0, 0xD - str r0, [r3, 0xC] - ldr r2, _080300F0 - ldr r1, [r3, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r2, 0x14 - b _0803015A - .align 2, 0 -_080300F0: .4byte gUnknown_80D9FC8 -_080300F4: - ldr r3, [r5] - movs r0, 0x9 - str r0, [r3, 0xC] - ldr r2, _08030108 - ldr r1, [r3, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r2, 0x1C - b _0803015A - .align 2, 0 -_08030108: .4byte gUnknown_80D9FC8 -_0803010C: - ldr r4, _08030138 - bl sub_808D33C - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0x6 - bl sub_808D9AC - ldr r0, _0803013C - ldr r1, [r0] - movs r0, 0xB - str r0, [r1, 0xC] - movs r0, 0xCB - bl sub_8011988 - ldr r0, _08030140 - ldr r3, _08030144 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _080301A0 - .align 2, 0 -_08030138: .4byte gUnknown_202E2B8 -_0803013C: .4byte gUnknown_203B318 -_08030140: .4byte gUnknown_80E0778 -_08030144: .4byte 0x00000101 -_08030148: - ldr r3, [r5] - movs r0, 0xD - str r0, [r3, 0xC] - ldr r2, _0803016C - ldr r1, [r3, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r2, 0x20 -_0803015A: - adds r0, r2 - ldr r0, [r0] - ldr r2, [r3, 0x68] - ldr r3, _08030170 - movs r1, 0 - bl sub_80141B4 - b _080301A0 - .align 2, 0 -_0803016C: .4byte gUnknown_80D9FC8 -_08030170: .4byte 0x0000010d -_08030174: - movs r0, 0x1 - movs r1, 0x49 - movs r2, 0x1 - bl sub_801B60C - b _080301A0 -_08030180: - ldr r3, [r5] - movs r0, 0x1 - str r0, [r3, 0xC] - ldr r2, _080301A8 - ldr r1, [r3, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r2, 0x24 - adds r0, r2 - ldr r0, [r0] - ldr r2, [r3, 0x68] - ldr r3, _080301AC - movs r1, 0 - bl sub_80141B4 -_080301A0: - add sp, 0x18 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080301A8: .4byte gUnknown_80D9FC8 -_080301AC: .4byte 0x0000010d - thumb_func_end sub_802FF88 - - thumb_func_start sub_80301B0 -sub_80301B0: - push {r4,lr} - ldr r4, _080301F8 - ldr r1, [r4] - movs r2, 0x2 - str r2, [r1, 0x14] - ldr r0, _080301FC - str r0, [r1, 0x18] - str r2, [r1, 0x1C] - bl sub_80306A4 - lsls r0, 24 - cmp r0, 0 - beq _080301D6 - ldr r0, [r4] - movs r1, 0x1 - negs r1, r1 - str r1, [r0, 0x1C] - movs r1, 0x1 - str r1, [r0, 0x14] -_080301D6: - ldr r1, [r4] - movs r2, 0x1 - ldr r0, _08030200 - ldr r0, [r0] - str r0, [r1, 0x20] - movs r0, 0x3 - str r0, [r1, 0x24] - ldr r0, _08030204 - ldr r0, [r0] - str r0, [r1, 0x28] - str r2, [r1, 0x2C] - movs r0, 0 - str r0, [r1, 0x30] - str r2, [r1, 0x34] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080301F8: .4byte gUnknown_203B318 -_080301FC: .4byte gUnknown_80E07D8 -_08030200: .4byte gUnknown_80D4970 -_08030204: .4byte gUnknown_80D4934 - thumb_func_end sub_80301B0 - - thumb_func_start sub_8030208 -sub_8030208: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08030250 - ldr r0, _08030230 - ldr r1, [r0] - ldr r0, [sp] - str r0, [r1, 0x14] - ldr r0, [sp] - cmp r0, 0x2 - beq _0803023A - cmp r0, 0x2 - bgt _08030234 - cmp r0, 0x1 - beq _0803024A - b _08030250 - .align 2, 0 -_08030230: .4byte gUnknown_203B318 -_08030234: - cmp r0, 0x3 - beq _08030242 - b _08030250 -_0803023A: - movs r0, 0x3 - bl sub_802FF04 - b _08030250 -_08030242: - movs r0, 0xC - bl sub_802FF04 - b _08030250 -_0803024A: - movs r0, 0x2 - bl sub_802FF04 -_08030250: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8030208 - - thumb_func_start sub_8030258 -sub_8030258: - push {lr} - movs r0, 0x1 - bl sub_80303AC - cmp r0, 0x2 - beq _08030288 - cmp r0, 0x2 - bcc _0803029A - cmp r0, 0x3 - bne _0803029A - bl sub_8030418 - ldr r1, _08030284 - ldr r1, [r1] - strh r0, [r1, 0x10] - bl sub_8030480 - movs r0, 0x5 - bl sub_802FF04 - b _0803029A - .align 2, 0 -_08030284: .4byte gUnknown_203B318 -_08030288: - bl sub_8030480 - ldr r0, _080302A0 - ldr r1, [r0] - ldr r0, _080302A4 - strh r0, [r1, 0x10] - movs r0, 0x1 - bl sub_802FF04 -_0803029A: - pop {r0} - bx r0 - .align 2, 0 -_080302A0: .4byte gUnknown_203B318 -_080302A4: .4byte 0x0000ffff - thumb_func_end sub_8030258 - - thumb_func_start sub_80302A8 -sub_80302A8: - push {lr} - bl sub_801B6AC - cmp r0, 0x1 - bls _080302C0 - cmp r0, 0x3 - bhi _080302C0 - bl sub_801B72C - movs r0, 0xA - bl sub_802FF04 -_080302C0: - pop {r0} - bx r0 - thumb_func_end sub_80302A8 - - thumb_func_start sub_80302C4 -sub_80302C4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080302DC - ldr r0, _080302E4 - ldr r0, [r0] - ldr r0, [r0, 0xC] - bl sub_802FF04 -_080302DC: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080302E4: .4byte gUnknown_203B318 - thumb_func_end sub_80302C4 - - thumb_func_start sub_80302E8 -sub_80302E8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - adds r6, r1, 0 - mov r8, r2 - bl sub_80306A4 - lsls r0, 24 - cmp r0, 0 - beq _08030302 - movs r0, 0 - b _0803039A -_08030302: - ldr r4, _080303A4 - ldr r0, [r4] - cmp r0, 0 - bne _08030314 - movs r0, 0xD0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] -_08030314: - ldr r0, [r4] - str r5, [r0, 0x64] - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 3 - adds r1, 0x6C - adds r1, r0, r1 - str r1, [r0, 0x68] - adds r0, 0x6C - bl sub_8006518 - ldr r1, [r4] - ldr r2, [r1, 0x64] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x6C - ldr r0, _080303A8 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r2, [r4] - ldr r1, [r2, 0x68] - adds r0, r2, 0 - adds r0, 0xCC - str r0, [r1, 0x14] - cmp r6, 0 - beq _08030362 - ldr r1, [r2, 0x64] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r1, r2, 0 - adds r1, 0x74 - adds r1, r0 - ldr r0, [r6] - str r0, [r1] -_08030362: - ldr r0, [r4] - ldr r0, [r0, 0x68] - mov r1, r8 - bl sub_8012D08 - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x6C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r4] - adds r4, 0x30 - bl sub_8030668 - adds r1, r0, 0 - adds r0, r4, 0 - mov r2, r8 - adds r3, r5, 0 - bl sub_8013818 - bl sub_80304C8 - bl sub_803053C - movs r0, 0x1 -_0803039A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080303A4: .4byte gUnknown_203B31C -_080303A8: .4byte gUnknown_80E0804 - thumb_func_end sub_80302E8 - - thumb_func_start sub_80303AC -sub_80303AC: - push {r4,lr} - lsls r0, 24 - cmp r0, 0 - bne _080303C8 - ldr r0, _080303C4 - ldr r0, [r0] - adds r0, 0x30 - bl sub_8013660 - movs r0, 0 - b _08030410 - .align 2, 0 -_080303C4: .4byte gUnknown_203B31C -_080303C8: - ldr r4, _080303E4 - ldr r0, [r4] - adds r0, 0x30 - bl GetKeyPress - cmp r0, 0x1 - beq _080303E8 - cmp r0, 0x2 - bne _080303F2 - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _08030410 - .align 2, 0 -_080303E4: .4byte gUnknown_203B31C -_080303E8: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _08030410 -_080303F2: - ldr r0, [r4] - adds r0, 0x30 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _08030406 - movs r0, 0 - b _08030410 -_08030406: - bl sub_80304C8 - bl sub_803053C - movs r0, 0x1 -_08030410: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80303AC - - thumb_func_start sub_8030418 -sub_8030418: - ldr r0, _08030440 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x4E - movs r3, 0 - ldrsh r1, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r1 - adds r1, r2, 0 - adds r1, 0x48 - movs r3, 0 - ldrsh r1, [r1, r3] - adds r0, r1 - lsls r0, 1 - adds r0, r2, r0 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_08030440: .4byte gUnknown_203B31C - thumb_func_end sub_8030418 - - thumb_func_start sub_8030444 -sub_8030444: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8030668 - adds r1, r0, 0 - ldr r5, _0803047C - ldr r0, [r5] - adds r2, r0, 0 - adds r2, 0x52 - strh r1, [r2] - adds r0, 0x30 - bl sub_8013984 - bl sub_80304C8 - bl sub_803053C - cmp r4, 0 - beq _08030476 - ldr r0, [r5] - adds r0, 0x30 - bl AddMenuCursorSprite -_08030476: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803047C: .4byte gUnknown_203B31C - thumb_func_end sub_8030444 - - thumb_func_start sub_8030480 -sub_8030480: - push {r4,r5,lr} - ldr r4, _080304C0 - ldr r2, [r4] - cmp r2, 0 - beq _080304BA - ldr r0, [r2, 0x64] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x6C - ldr r0, _080304C4 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x6C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080304BA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080304C0: .4byte gUnknown_203B31C -_080304C4: .4byte gUnknown_80E07EC - thumb_func_end sub_8030480 - - thumb_func_start sub_80304C8 -sub_80304C8: - push {r4,lr} - ldr r4, _08030538 - ldr r0, [r4] - adds r0, 0xCC - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xCD - strb r2, [r0] - ldr r0, [r4] - adds r0, 0xCE - movs r1, 0x8 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xCF - strb r2, [r0] - ldr r0, [r4] - adds r0, 0x4A - movs r1, 0 - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x64] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x7A - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x64] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x7C - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x6C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08030538: .4byte gUnknown_203B31C - thumb_func_end sub_80304C8 - - thumb_func_start sub_803053C -sub_803053C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x108 - ldr r4, _08030658 - ldr r0, [r4] - ldr r0, [r0, 0x64] - bl sub_8008C54 - ldr r0, [r4] - ldr r0, [r0, 0x64] - bl sub_80073B8 - ldr r2, _0803065C - ldr r0, [r4] - ldr r3, [r0, 0x64] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r3, [r4] - adds r0, r3, 0 - adds r0, 0xCE - ldrb r0, [r0] - lsls r0, 3 - adds r0, 0x4 - adds r1, r3, 0 - adds r1, 0x4E - movs r5, 0 - ldrsh r2, [r1, r5] - adds r2, 0x1 - movs r1, 0x7 - str r1, [sp] - ldr r1, [r3, 0x64] - str r1, [sp, 0x4] - movs r1, 0 - movs r3, 0x2 - bl sub_8012BC4 - movs r0, 0 - mov r9, r0 - ldr r0, [r4] - adds r0, 0x4A - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r9, r0 - bge _0803063E - mov r8, r4 -_080305A2: - mov r3, r8 - ldr r1, [r3] - adds r0, r1, 0 - adds r0, 0x4E - movs r5, 0 - ldrsh r2, [r0, r5] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r2 - add r0, r9 - lsls r0, 1 - adds r1, r0 - movs r5, 0 - ldrsh r4, [r1, r5] - adds r0, r4, 0 - bl sub_80A2740 - lsls r0, 24 - lsrs r7, r0, 24 - adds r0, r4, 0 - bl sub_80A2668 - adds r4, r0, 0 - lsls r4, 16 - asrs r4, 16 - mov r1, r8 - ldr r0, [r1] - adds r0, 0x30 - mov r1, r9 - bl sub_8013800 - adds r6, r0, 0 - movs r5, 0x7 - adds r0, r4, 0 - bl sub_809758C - lsls r0, 24 - cmp r0, 0 - beq _08030608 - mov r3, r8 - ldr r0, [r3] - ldr r3, [r0, 0x64] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - adds r1, r6, 0 - ldr r2, _08030660 - bl xxx_call_draw_string - movs r5, 0x4 -_08030608: - adds r0, r7, 0 - bl sub_809009C - adds r3, r0, 0 - add r0, sp, 0x8 - ldr r1, _08030664 - adds r2, r5, 0 - bl sub_800D158 - mov r5, r8 - ldr r0, [r5] - ldr r3, [r0, 0x64] - movs r0, 0 - str r0, [sp] - movs r0, 0x10 - adds r1, r6, 0 - add r2, sp, 0x8 - bl xxx_call_draw_string - movs r0, 0x1 - add r9, r0 - ldr r0, [r5] - adds r0, 0x4A - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r9, r0 - blt _080305A2 -_0803063E: - ldr r0, _08030658 - ldr r0, [r0] - ldr r0, [r0, 0x64] - bl sub_80073E0 - add sp, 0x108 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08030658: .4byte gUnknown_203B31C -_0803065C: .4byte gUnknown_80E081C -_08030660: .4byte gUnknown_80E0824 -_08030664: .4byte gUnknown_80E0828 - thumb_func_end sub_803053C - - thumb_func_start sub_8030668 -sub_8030668: - push {r4-r6,lr} - movs r6, 0 - movs r5, 0 -_0803066E: - lsls r0, r5, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_8097504 - lsls r0, 24 - cmp r0, 0 - beq _08030690 - adds r0, r4, 0 - bl sub_80A26CC - ldr r1, _080306A0 - ldr r1, [r1] - lsls r2, r6, 1 - adds r1, r2 - strh r0, [r1] - adds r6, 0x1 -_08030690: - adds r5, 0x1 - cmp r5, 0x16 - ble _0803066E - adds r0, r6, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080306A0: .4byte gUnknown_203B31C - thumb_func_end sub_8030668 - - thumb_func_start sub_80306A4 -sub_80306A4: - movs r0, 0 - bx lr - thumb_func_end sub_80306A4 - - thumb_func_start sub_80306A8 -sub_80306A8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - adds r5, r1, 0 - adds r7, r2, 0 - mov r8, r3 - bl sub_8030C20 - lsls r0, 24 - cmp r0, 0 - beq _080306C4 - movs r0, 0 - b _08030756 -_080306C4: - ldr r6, _08030760 - movs r0, 0xC4 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r6] - str r4, [r0, 0x20] - str r5, [r0, 0x58] - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 3 - adds r1, 0x60 - adds r1, r0, r1 - str r1, [r0, 0x5C] - adds r0, 0x60 - bl sub_8006518 - ldr r1, [r6] - ldr r2, [r1, 0x58] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x60 - ldr r0, _08030764 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r2, [r6] - ldr r1, [r2, 0x5C] - adds r0, r2, 0 - adds r0, 0xC0 - str r0, [r1, 0x14] - cmp r7, 0 - beq _0803071E - ldr r1, [r2, 0x58] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r1, r2, 0 - adds r1, 0x68 - adds r1, r0 - ldr r0, [r7] - str r0, [r1] -_0803071E: - ldr r0, [r6] - ldr r0, [r0, 0x5C] - mov r1, r8 - bl sub_8012D08 - bl sub_8004914 - ldr r0, [r6] - adds r0, 0x60 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r6] - adds r4, 0x24 - bl sub_8030A74 - adds r1, r0, 0 - adds r0, r4, 0 - mov r2, r8 - adds r3, r5, 0 - bl sub_8013818 - bl sub_80308A0 - bl sub_803092C - movs r0, 0x1 -_08030756: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08030760: .4byte gUnknown_203B320 -_08030764: .4byte gUnknown_80E0854 - thumb_func_end sub_80306A8 - - thumb_func_start sub_8030768 -sub_8030768: - push {lr} - lsls r0, 24 - cmp r0, 0 - bne _08030784 - ldr r0, _08030780 - ldr r0, [r0] - adds r0, 0x24 - bl sub_8013660 - movs r0, 0 - b _080307E6 - .align 2, 0 -_08030780: .4byte gUnknown_203B320 -_08030784: - ldr r0, _0803079C - ldr r0, [r0] - adds r0, 0x24 - bl GetKeyPress - cmp r0, 0x2 - beq _080307AE - cmp r0, 0x2 - bgt _080307A0 - cmp r0, 0x1 - beq _080307B8 - b _080307C2 - .align 2, 0 -_0803079C: .4byte gUnknown_203B320 -_080307A0: - cmp r0, 0x4 - bne _080307C2 - movs r0, 0x4 - bl sub_80119D4 - movs r0, 0x4 - b _080307E6 -_080307AE: - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _080307E6 -_080307B8: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _080307E6 -_080307C2: - ldr r0, _080307D8 - ldr r0, [r0] - adds r0, 0x24 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _080307DC - movs r0, 0 - b _080307E6 - .align 2, 0 -_080307D8: .4byte gUnknown_203B320 -_080307DC: - bl sub_80308A0 - bl sub_803092C - movs r0, 0x1 -_080307E6: - pop {r1} - bx r1 - thumb_func_end sub_8030768 - - thumb_func_start sub_80307EC -sub_80307EC: - ldr r0, _0803080C - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x42 - movs r3, 0 - ldrsh r1, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r1 - movs r3, 0x3C - ldrsh r1, [r2, r3] - adds r0, r1 - adds r2, r0 - ldrb r0, [r2] - bx lr - .align 2, 0 -_0803080C: .4byte gUnknown_203B320 - thumb_func_end sub_80307EC - - thumb_func_start sub_8030810 -sub_8030810: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8030A74 - adds r1, r0, 0 - ldr r5, _08030848 - ldr r0, [r5] - adds r2, r0, 0 - adds r2, 0x46 - strh r1, [r2] - adds r0, 0x24 - bl sub_8013984 - bl sub_80308A0 - bl sub_803092C - cmp r4, 0 - beq _08030842 - ldr r0, [r5] - adds r0, 0x24 - bl AddMenuCursorSprite -_08030842: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08030848: .4byte gUnknown_203B320 - thumb_func_end sub_8030810 - - thumb_func_start sub_803084C -sub_803084C: - push {r4,r5,lr} - ldr r4, _0803088C - ldr r2, [r4] - cmp r2, 0 - beq _08030886 - ldr r0, [r2, 0x58] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x60 - ldr r0, _08030890 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08030886: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803088C: .4byte gUnknown_203B320 -_08030890: .4byte gUnknown_80E083C - thumb_func_end sub_803084C - - thumb_func_start sub_8030894 -sub_8030894: - ldr r0, _0803089C - ldr r0, [r0] - bx lr - .align 2, 0 -_0803089C: .4byte gUnknown_203B320 - thumb_func_end sub_8030894 - - thumb_func_start sub_80308A0 -sub_80308A0: - push {r4,lr} - ldr r4, _08030928 - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0x44 - ldrh r1, [r1] - adds r0, 0xC0 - movs r2, 0 - strb r1, [r0] - ldr r0, [r4] - adds r1, r0, 0 - adds r1, 0x42 - ldrh r1, [r1] - adds r0, 0xC1 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xC2 - movs r1, 0xC - strb r1, [r0] - ldr r0, [r4] - adds r0, 0xC3 - strb r2, [r0] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x3E - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x58] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x6E - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x58] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x70 - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x60 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08030928: .4byte gUnknown_203B320 - thumb_func_end sub_80308A0 - - thumb_func_start sub_803092C -sub_803092C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x60 - ldr r7, _08030A24 - ldr r0, [r7] - ldr r0, [r0, 0x58] - bl sub_8008C54 - ldr r0, [r7] - ldr r0, [r0, 0x58] - bl sub_80073B8 - ldr r1, [r7] - adds r0, r1, 0 - adds r0, 0x42 - movs r2, 0 - ldrsh r4, [r0, r2] - lsls r4, 3 - adds r5, r4, 0 - adds r5, 0xA - ldr r2, _08030A28 - ldr r0, [r1, 0x20] - lsls r0, 2 - adds r0, r2 - ldr r2, [r0] - ldr r3, [r1, 0x58] - movs r0, 0 - str r0, [sp] - adds r0, r5, 0 - movs r1, 0 - bl xxx_call_draw_string - adds r4, 0x4 - ldr r3, [r7] - adds r0, r3, 0 - adds r0, 0xC2 - ldrb r0, [r0] - lsls r0, 3 - adds r5, r4, r0 - adds r0, r3, 0 - adds r0, 0x42 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r2, 0x1 - movs r0, 0x7 - str r0, [sp] - ldr r0, [r3, 0x58] - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r1, 0 - movs r3, 0x1 - bl sub_8012BC4 - movs r6, 0 - ldr r0, [r7] - movs r2, 0x3E - ldrsh r0, [r0, r2] - cmp r6, r0 - bge _08030A56 - mov r9, r7 - mov r8, r6 - add r7, sp, 0x8 - mov r5, sp - adds r5, 0x4B -_080309B0: - mov r3, r9 - ldr r1, [r3] - adds r0, r1, 0 - adds r0, 0x42 - movs r3, 0 - ldrsh r2, [r0, r3] - subs r0, 0x2 - movs r3, 0 - ldrsh r0, [r0, r3] - muls r0, r2 - adds r0, r6 - adds r1, r0 - ldrb r0, [r1] - bl sub_8095228 - adds r4, r0, 0 - mov r1, r9 - ldr r0, [r1] - ldr r1, [r0, 0x58] - str r1, [sp, 0x8] - adds r0, 0x24 - adds r1, r6, 0 - bl sub_8013800 - str r0, [sp, 0x50] - add r1, sp, 0x48 - movs r0, 0x7 - strb r0, [r1] - mov r0, sp - adds r0, 0x4A - mov r2, r8 - strb r2, [r0] - add r0, sp, 0x4C - strb r2, [r0] - adds r0, r4, 0x4 - str r0, [sp, 0x10] - adds r0, 0x10 - str r0, [sp, 0x14] - ldrh r0, [r4, 0xC] - strh r0, [r7, 0x10] - ldrh r0, [r4, 0xC] - strh r0, [r7, 0x12] - strb r2, [r7, 0x14] - subs r1, 0x12 - movs r0, 0x5 - strb r0, [r1] - ldrb r0, [r4] - cmp r0, 0x4 - beq _08030A32 - cmp r0, 0x4 - bgt _08030A2C - cmp r0, 0x2 - bgt _08030A3E - cmp r0, 0x1 - blt _08030A3E - movs r0, 0x1 - strb r0, [r5] - b _08030A42 - .align 2, 0 -_08030A24: .4byte gUnknown_203B320 -_08030A28: .4byte gUnknown_80E086C -_08030A2C: - cmp r0, 0x5 - beq _08030A38 - b _08030A3E -_08030A32: - movs r0, 0x3 - strb r0, [r5] - b _08030A42 -_08030A38: - movs r0, 0x4 - strb r0, [r5] - b _08030A42 -_08030A3E: - mov r3, r8 - strb r3, [r5] -_08030A42: - add r0, sp, 0x8 - bl sub_803B6D4 - adds r6, 0x1 - mov r1, r9 - ldr r0, [r1] - movs r2, 0x3E - ldrsh r0, [r0, r2] - cmp r6, r0 - blt _080309B0 -_08030A56: - ldr r0, _08030A70 - ldr r0, [r0] - ldr r0, [r0, 0x58] - bl sub_80073E0 - add sp, 0x60 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08030A70: .4byte gUnknown_203B320 - thumb_func_end sub_803092C - - thumb_func_start sub_8030A74 -sub_8030A74: - push {r4,r5,lr} - movs r2, 0 - ldr r0, _08030A90 - ldr r0, [r0] - ldr r0, [r0, 0x20] - cmp r0, 0x7 - bls _08030A84 - b _08030C0E -_08030A84: - lsls r0, 2 - ldr r1, _08030A94 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08030A90: .4byte gUnknown_203B320 -_08030A94: .4byte _08030A98 - .align 2, 0 -_08030A98: - .4byte _08030AB8 - .4byte _08030B10 - .4byte _08030B3C - .4byte _08030B94 - .4byte _08030B68 - .4byte _08030BC0 - .4byte _08030AE4 - .4byte _08030BEC -_08030AB8: - movs r1, 0 - ldr r5, _08030ADC - ldr r4, _08030AE0 - movs r3, 0 -_08030AC0: - ldr r0, [r5] - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _08030AD2 - ldr r0, [r4] - adds r0, r2 - strb r1, [r0] - adds r2, 0x1 -_08030AD2: - adds r3, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030AC0 - b _08030C0E - .align 2, 0 -_08030ADC: .4byte gUnknown_203B480 -_08030AE0: .4byte gUnknown_203B320 -_08030AE4: - movs r1, 0 - ldr r5, _08030B08 - ldr r4, _08030B0C - movs r3, 0 -_08030AEC: - ldr r0, [r5] - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0x6 - bne _08030AFE - ldr r0, [r4] - adds r0, r2 - strb r1, [r0] - adds r2, 0x1 -_08030AFE: - adds r3, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030AEC - b _08030C0E - .align 2, 0 -_08030B08: .4byte gUnknown_203B480 -_08030B0C: .4byte gUnknown_203B320 -_08030B10: - movs r1, 0 - ldr r5, _08030B34 - ldr r4, _08030B38 - movs r3, 0 -_08030B18: - ldr r0, [r5] - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08030B2A - ldr r0, [r4] - adds r0, r2 - strb r1, [r0] - adds r2, 0x1 -_08030B2A: - adds r3, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030B18 - b _08030C0E - .align 2, 0 -_08030B34: .4byte gUnknown_203B480 -_08030B38: .4byte gUnknown_203B320 -_08030B3C: - movs r1, 0 - ldr r5, _08030B60 - ldr r4, _08030B64 - movs r3, 0 -_08030B44: - ldr r0, [r5] - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0x2 - bne _08030B56 - ldr r0, [r4] - adds r0, r2 - strb r1, [r0] - adds r2, 0x1 -_08030B56: - adds r3, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030B44 - b _08030C0E - .align 2, 0 -_08030B60: .4byte gUnknown_203B480 -_08030B64: .4byte gUnknown_203B320 -_08030B68: - movs r1, 0 - ldr r5, _08030B8C - ldr r4, _08030B90 - movs r3, 0 -_08030B70: - ldr r0, [r5] - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0x4 - bne _08030B82 - ldr r0, [r4] - adds r0, r2 - strb r1, [r0] - adds r2, 0x1 -_08030B82: - adds r3, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030B70 - b _08030C0E - .align 2, 0 -_08030B8C: .4byte gUnknown_203B480 -_08030B90: .4byte gUnknown_203B320 -_08030B94: - movs r1, 0 - ldr r5, _08030BB8 - ldr r4, _08030BBC - movs r3, 0 -_08030B9C: - ldr r0, [r5] - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0x3 - bne _08030BAE - ldr r0, [r4] - adds r0, r2 - strb r1, [r0] - adds r2, 0x1 -_08030BAE: - adds r3, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030B9C - b _08030C0E - .align 2, 0 -_08030BB8: .4byte gUnknown_203B480 -_08030BBC: .4byte gUnknown_203B320 -_08030BC0: - movs r1, 0 - ldr r5, _08030BE4 - ldr r4, _08030BE8 - movs r3, 0 -_08030BC8: - ldr r0, [r5] - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0x5 - bne _08030BDA - ldr r0, [r4] - adds r0, r2 - strb r1, [r0] - adds r2, 0x1 -_08030BDA: - adds r3, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030BC8 - b _08030C0E - .align 2, 0 -_08030BE4: .4byte gUnknown_203B480 -_08030BE8: .4byte gUnknown_203B320 -_08030BEC: - movs r1, 0 - ldr r5, _08030C18 - ldr r4, _08030C1C - movs r3, 0 -_08030BF4: - ldr r0, [r5] - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0x7 - bne _08030C06 - ldr r0, [r4] - adds r0, r2 - strb r1, [r0] - adds r2, 0x1 -_08030C06: - adds r3, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030BF4 -_08030C0E: - adds r0, r2, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08030C18: .4byte gUnknown_203B480 -_08030C1C: .4byte gUnknown_203B320 - thumb_func_end sub_8030A74 - - thumb_func_start sub_8030C20 -sub_8030C20: - push {lr} - cmp r0, 0x7 - bls _08030C28 - b _08030D34 -_08030C28: - lsls r0, 2 - ldr r1, _08030C34 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08030C34: .4byte _08030C38 - .align 2, 0 -_08030C38: - .4byte _08030C58 - .4byte _08030C90 - .4byte _08030CAC - .4byte _08030CE4 - .4byte _08030CC8 - .4byte _08030D00 - .4byte _08030C74 - .4byte _08030D20 -_08030C58: - movs r1, 0 - ldr r0, _08030C70 - ldr r2, [r0] -_08030C5E: - ldrb r0, [r2] - cmp r0, 0 - bne _08030D1C - adds r2, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030C5E - b _08030D34 - .align 2, 0 -_08030C70: .4byte gUnknown_203B480 -_08030C74: - movs r1, 0 - ldr r0, _08030C8C - ldr r2, [r0] -_08030C7A: - ldrb r0, [r2] - cmp r0, 0x6 - beq _08030D1C - adds r2, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030C7A - b _08030D34 - .align 2, 0 -_08030C8C: .4byte gUnknown_203B480 -_08030C90: - movs r1, 0 - ldr r0, _08030CA8 - ldr r2, [r0] -_08030C96: - ldrb r0, [r2] - cmp r0, 0x1 - beq _08030D1C - adds r2, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030C96 - b _08030D34 - .align 2, 0 -_08030CA8: .4byte gUnknown_203B480 -_08030CAC: - movs r1, 0 - ldr r0, _08030CC4 - ldr r2, [r0] -_08030CB2: - ldrb r0, [r2] - cmp r0, 0x2 - beq _08030D1C - adds r2, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030CB2 - b _08030D34 - .align 2, 0 -_08030CC4: .4byte gUnknown_203B480 -_08030CC8: - movs r1, 0 - ldr r0, _08030CE0 - ldr r2, [r0] -_08030CCE: - ldrb r0, [r2] - cmp r0, 0x4 - beq _08030D1C - adds r2, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030CCE - b _08030D34 - .align 2, 0 -_08030CE0: .4byte gUnknown_203B480 -_08030CE4: - movs r1, 0 - ldr r0, _08030CFC - ldr r2, [r0] -_08030CEA: - ldrb r0, [r2] - cmp r0, 0x3 - beq _08030D1C - adds r2, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030CEA - b _08030D34 - .align 2, 0 -_08030CFC: .4byte gUnknown_203B480 -_08030D00: - movs r1, 0 - ldr r0, _08030D18 - ldr r2, [r0] -_08030D06: - ldrb r0, [r2] - cmp r0, 0x5 - beq _08030D1C - adds r2, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030D06 - b _08030D34 - .align 2, 0 -_08030D18: .4byte gUnknown_203B480 -_08030D1C: - movs r0, 0 - b _08030D36 -_08030D20: - movs r1, 0 - ldr r0, _08030D3C - ldr r2, [r0] -_08030D26: - ldrb r0, [r2] - cmp r0, 0x7 - beq _08030D1C - adds r2, 0x30 - adds r1, 0x1 - cmp r1, 0x1F - ble _08030D26 -_08030D34: - movs r0, 0x1 -_08030D36: - pop {r1} - bx r1 - .align 2, 0 -_08030D3C: .4byte gUnknown_203B480 - thumb_func_end sub_8030C20 - - thumb_func_start sub_8030D40 -sub_8030D40: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r6, _08030D98 - movs r0, 0x78 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r6] - strb r4, [r0, 0xC] - ldr r0, [r6] - bl sub_801317C - ldr r0, [r6] - str r5, [r0, 0x10] - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 3 - adds r1, 0x18 - adds r1, r0, r1 - str r1, [r0, 0x14] - adds r0, 0x18 - bl sub_8006518 - ldr r1, [r6] - ldr r2, [r1, 0x10] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x18 - ldr r0, _08030D9C - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - bl sub_8030DD4 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08030D98: .4byte gUnknown_203B324 -_08030D9C: .4byte gUnknown_80E091C - thumb_func_end sub_8030D40 - - thumb_func_start sub_8030DA0 -sub_8030DA0: - push {lr} - ldr r0, _08030DC0 - ldr r0, [r0] - ldr r1, [r0, 0x10] - bl sub_8012A64 - cmp r0, 0x1 - beq _08030DC4 - cmp r0, 0x2 - bne _08030DCE - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _08030DD0 - .align 2, 0 -_08030DC0: .4byte gUnknown_203B324 -_08030DC4: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _08030DD0 -_08030DCE: - movs r0, 0 -_08030DD0: - pop {r1} - bx r1 - thumb_func_end sub_8030DA0 - - thumb_func_start sub_8030DD4 -sub_8030DD4: - push {lr} - bl sub_8030E2C - bl sub_8030E48 - pop {r0} - bx r0 - thumb_func_end sub_8030DD4 - - thumb_func_start sub_8030DE4 -sub_8030DE4: - push {r4,r5,lr} - ldr r4, _08030E24 - ldr r2, [r4] - cmp r2, 0 - beq _08030E1E - ldr r0, [r2, 0x10] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x18 - ldr r0, _08030E28 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x18 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08030E1E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08030E24: .4byte gUnknown_203B324 -_08030E28: .4byte gUnknown_80E0900 - thumb_func_end sub_8030DE4 - - thumb_func_start sub_8030E2C -sub_8030E2C: - push {lr} - bl sub_8004914 - ldr r0, _08030E44 - ldr r0, [r0] - adds r0, 0x18 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r0} - bx r0 - .align 2, 0 -_08030E44: .4byte gUnknown_203B324 - thumb_func_end sub_8030E2C - - thumb_func_start sub_8030E48 -sub_8030E48: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x15C - ldr r3, _08030EA8 - ldr r4, _08030EAC - ldr r2, [r4] - ldrb r1, [r2, 0xC] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 4 - ldr r1, [r3] - adds r5, r1, r0 - ldr r0, [r2, 0x10] - bl sub_80073B8 - ldr r0, [r4] - ldr r0, [r0, 0x10] - str r0, [sp, 0x4] - add r1, sp, 0x44 - movs r2, 0 - movs r0, 0x7 - strb r0, [r1] - mov r0, sp - adds r0, 0x46 - strb r2, [r0] - add r0, sp, 0x48 - strb r2, [r0] - adds r0, r5, 0x4 - str r0, [sp, 0xC] - adds r0, 0x10 - str r0, [sp, 0x10] - add r1, sp, 0x4 - ldrh r0, [r5, 0xC] - strh r0, [r1, 0x10] - ldrh r0, [r5, 0xC] - strh r0, [r1, 0x12] - adds r0, r1, 0 - strb r2, [r0, 0x14] - adds r2, r5, 0 - adds r2, 0x22 - ldrb r0, [r2] - cmp r0, 0 - bne _08030EB0 - adds r1, 0x2E - movs r0, 0x5 - strb r0, [r1] - b _08030EBE - .align 2, 0 -_08030EA8: .4byte gUnknown_203B480 -_08030EAC: .4byte gUnknown_203B324 -_08030EB0: - mov r1, sp - adds r1, 0x32 - movs r0, 0x2 - strb r0, [r1] - ldrb r1, [r2] - add r0, sp, 0x38 - strb r1, [r0] -_08030EBE: - ldrb r0, [r5] - cmp r0, 0x2 - beq _08030ED2 - cmp r0, 0x2 - ble _08030EE2 - cmp r0, 0x4 - beq _08030ED2 - cmp r0, 0x5 - beq _08030EDA - b _08030EE2 -_08030ED2: - mov r1, sp - adds r1, 0x45 - movs r0, 0xA - b _08030EE8 -_08030EDA: - mov r1, sp - adds r1, 0x45 - movs r0, 0xB - b _08030EE8 -_08030EE2: - mov r1, sp - adds r1, 0x45 - movs r0, 0x9 -_08030EE8: - strb r0, [r1] - add r0, sp, 0x4 - bl sub_803B98C - ldrh r0, [r5, 0x10] - ldr r1, _08030F48 - bl __umodsi3 - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r2, _08030F4C - ldr r5, _08030F50 - ldr r0, [r5] - ldr r3, [r0, 0x10] - movs r0, 0 - mov r8, r0 - str r0, [sp] - movs r0, 0xA - movs r1, 0x68 - bl xxx_call_draw_string - add r6, sp, 0x5C - ldr r1, _08030F54 - adds r0, r6, 0 - adds r2, r4, 0 - bl sub_800D158 - ldr r0, [r5] - ldr r3, [r0, 0x10] - mov r0, r8 - str r0, [sp] - movs r0, 0x44 - movs r1, 0x68 - adds r2, r6, 0 - bl xxx_call_draw_string - ldr r0, [r5] - ldr r0, [r0, 0x10] - bl sub_80073E0 - add sp, 0x15C - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08030F48: .4byte 0x00002710 -_08030F4C: .4byte gUnknown_80E0934 -_08030F50: .4byte gUnknown_203B324 -_08030F54: .4byte gUnknown_80E0938 - thumb_func_end sub_8030E48 - - thumb_func_start sub_8030F58 -sub_8030F58: - push {r4-r6,lr} - adds r6, r0, 0 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _08030FF4 - ldr r0, [r5] - cmp r0, 0 - bne _08030F88 - movs r4, 0x8E - lsls r4, 1 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 -_08030F88: - ldr r0, [r5] - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - str r6, [r0] - movs r0, 0x98 - lsls r0, 1 - bl sub_808DDD0 - ldr r2, [r5] - movs r4, 0x84 - lsls r4, 1 - adds r1, r2, r4 - str r0, [r1] - movs r3, 0x86 - lsls r3, 1 - adds r1, r2, r3 - ldr r0, [r0, 0x4] - str r0, [r1] - movs r0, 0x8A - lsls r0, 1 - adds r2, r0 - movs r1, 0 - strb r1, [r2] - ldr r0, [r5] - ldr r2, _08030FF8 - adds r0, r2 - strb r1, [r0] - ldr r0, [r5] - adds r3, 0xA - adds r0, r3 - strb r1, [r0] - ldr r2, [r5] - movs r0, 0x88 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x2 - strh r0, [r1] - subs r3, 0x4 - adds r1, r2, r3 - movs r0, 0x8 - strh r0, [r1] - adds r0, r6, 0 - bl sub_8030C20 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08031038 - cmp r6, 0x2 - beq _08030FFC - cmp r6, 0x4 - beq _08031014 - b _08031022 - .align 2, 0 -_08030FF4: .4byte gUnknown_203B328 -_08030FF8: .4byte 0x00000115 -_08030FFC: - ldr r0, _0803100C - ldr r2, [r5] - adds r2, r4 - ldr r3, _08031010 - movs r1, 0 - bl sub_80141B4 - b _08031022 - .align 2, 0 -_0803100C: .4byte gUnknown_80E09D8 -_08031010: .4byte 0x00000101 -_08031014: - ldr r0, _0803102C - ldr r2, [r5] - adds r2, r4 - ldr r3, _08031030 - movs r1, 0 - bl sub_80141B4 -_08031022: - ldr r0, _08031034 - ldr r1, [r0] - movs r0, 0x5 - str r0, [r1] - b _08031048 - .align 2, 0 -_0803102C: .4byte gUnknown_80E0A0C -_08031030: .4byte 0x00000101 -_08031034: .4byte gUnknown_203B328 -_08031038: - ldr r0, [r5] - str r1, [r0] - adds r0, r6, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x8 - bl sub_80306A8 -_08031048: - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8030F58 - - thumb_func_start sub_8031050 -sub_8031050: - push {lr} - ldr r1, _08031068 - ldr r0, [r1] - ldr r0, [r0] - adds r2, r1, 0 - cmp r0, 0x6 - bhi _080310AC - lsls r0, 2 - ldr r1, _0803106C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08031068: .4byte gUnknown_203B328 -_0803106C: .4byte _08031070 - .align 2, 0 -_08031070: - .4byte _0803108C - .4byte _08031092 - .4byte _08031098 - .4byte _08031098 - .4byte _080310A2 - .4byte _080310A8 - .4byte _080310A8 -_0803108C: - bl sub_8031300 - b _080310AC -_08031092: - bl sub_803136C - b _080310AC -_08031098: - ldr r0, [r2] - ldr r0, [r0] - bl sub_80313D8 - b _080310AC -_080310A2: - bl sub_8031498 - b _080310AC -_080310A8: - movs r0, 0x3 - b _080310AE -_080310AC: - movs r0, 0 -_080310AE: - pop {r1} - bx r1 - thumb_func_end sub_8031050 - - thumb_func_start sub_80310B4 -sub_80310B4: - push {r4,lr} - bl sub_803084C - ldr r4, _080310E0 - ldr r0, [r4] - cmp r0, 0 - beq _080310D8 - movs r1, 0x84 - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080310D8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080310E0: .4byte gUnknown_203B328 - thumb_func_end sub_80310B4 - - thumb_func_start sub_80310E4 -sub_80310E4: - push {lr} - ldr r1, _080310F8 - ldr r1, [r1] - str r0, [r1] - bl sub_80310FC - bl sub_8031258 - pop {r0} - bx r0 - .align 2, 0 -_080310F8: .4byte gUnknown_203B328 - thumb_func_end sub_80310E4 - - thumb_func_start sub_80310FC -sub_80310FC: - push {r4-r6,lr} - ldr r4, _0803111C - ldr r0, [r4] - adds r0, 0xA8 - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0x6 - bls _08031112 - b _0803122C -_08031112: - lsls r0, 2 - ldr r1, _08031120 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803111C: .4byte gUnknown_203B328 -_08031120: .4byte _08031124 - .align 2, 0 -_08031124: - .4byte _08031140 - .4byte _08031178 - .4byte _080311C0 - .4byte _080311C0 - .4byte _080311E8 - .4byte _0803122C - .4byte _0803122C -_08031140: - ldr r3, _08031170 - ldr r1, [r3] - ldr r2, _08031174 - adds r1, 0xC0 - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldr r1, [r3] - adds r1, 0xD8 - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldr r0, [r3] - adds r0, 0xF0 - ldm r2!, {r1,r3,r4} - stm r0!, {r1,r3,r4} - ldm r2!, {r1,r5,r6} - stm r0!, {r1,r5,r6} - b _0803123A - .align 2, 0 -_08031170: .4byte gUnknown_203B328 -_08031174: .4byte gUnknown_80E0990 -_08031178: - ldr r3, _080311B0 - ldr r1, [r3] - adds r1, 0xC0 - ldr r0, _080311B4 - ldm r0!, {r2,r4,r5} - stm r1!, {r2,r4,r5} - ldm r0!, {r2,r4,r6} - stm r1!, {r2,r4,r6} - ldr r1, [r3] - ldr r2, _080311B8 - adds r1, 0xD8 - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldr r0, [r3] - adds r0, 0xF0 - ldm r2!, {r1,r5,r6} - stm r0!, {r1,r5,r6} - ldm r2!, {r4-r6} - stm r0!, {r4-r6} - ldr r0, [r3] - adds r0, 0xC0 - ldr r1, _080311BC - bl sub_8012CAC - b _0803123A - .align 2, 0 -_080311B0: .4byte gUnknown_203B328 -_080311B4: .4byte gUnknown_80E09A8 -_080311B8: .4byte gUnknown_80E0990 -_080311BC: .4byte gUnknown_80E0968 -_080311C0: - ldr r2, _080311DC - ldr r1, [r2] - adds r1, 0xD8 - ldr r0, _080311E0 - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - ldm r0!, {r3,r4,r6} - stm r1!, {r3,r4,r6} - ldr r0, [r2] - adds r0, 0xD8 - ldr r1, _080311E4 - bl sub_8012CAC - b _0803123A - .align 2, 0 -_080311DC: .4byte gUnknown_203B328 -_080311E0: .4byte gUnknown_80E09C0 -_080311E4: .4byte gUnknown_80E0948 -_080311E8: - ldr r3, _08031224 - ldr r1, [r3] - ldr r2, _08031228 - adds r1, 0xA8 - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldr r1, [r3] - adds r1, 0xC0 - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldr r1, [r3] - adds r1, 0xD8 - adds r0, r2, 0 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldr r0, [r3] - adds r0, 0xF0 - ldm r2!, {r1,r5,r6} - stm r0!, {r1,r5,r6} - ldm r2!, {r3-r5} - stm r0!, {r3-r5} - b _0803123A - .align 2, 0 -_08031224: .4byte gUnknown_203B328 -_08031228: .4byte gUnknown_80E0990 -_0803122C: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C -_0803123A: - bl sub_8004914 - ldr r0, _08031254 - ldr r0, [r0] - adds r0, 0xA8 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08031254: .4byte gUnknown_203B328 - thumb_func_end sub_80310FC - - thumb_func_start sub_8031258 -sub_8031258: - push {r4,lr} - sub sp, 0x8 - ldr r1, _08031274 - ldr r0, [r1] - ldr r0, [r0] - adds r2, r1, 0 - cmp r0, 0x6 - bhi _080312F6 - lsls r0, 2 - ldr r1, _08031278 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08031274: .4byte gUnknown_203B328 -_08031278: .4byte _0803127C - .align 2, 0 -_0803127C: - .4byte _08031298 - .4byte _080312A0 - .4byte _080312BC - .4byte _080312BC - .4byte _080312EC - .4byte _080312F6 - .4byte _080312F6 -_08031298: - movs r0, 0x1 - bl sub_8030810 - b _080312F6 -_080312A0: - bl sub_803092C - ldr r0, _080312B4 - ldr r0, [r0] - adds r0, 0x8 - ldr r1, _080312B8 - movs r2, 0x4 - str r2, [sp] - movs r2, 0x1 - b _080312D8 - .align 2, 0 -_080312B4: .4byte gUnknown_203B328 -_080312B8: .4byte gUnknown_80E0968 -_080312BC: - bl sub_803092C - ldr r4, _080312E4 - ldr r0, [r4] - adds r0, 0x8 - movs r1, 0 - bl sub_8012EA4 - ldr r0, [r4] - adds r0, 0x58 - ldr r1, _080312E8 - movs r2, 0x3 - str r2, [sp] - movs r2, 0x2 -_080312D8: - str r2, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _080312F6 - .align 2, 0 -_080312E4: .4byte gUnknown_203B328 -_080312E8: .4byte gUnknown_80E0948 -_080312EC: - ldr r0, [r2] - ldrb r0, [r0, 0x4] - movs r1, 0x3 - bl sub_8030D40 -_080312F6: - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8031258 - - thumb_func_start sub_8031300 -sub_8031300: - push {lr} - movs r0, 0x1 - bl sub_8030768 - cmp r0, 0x4 - bhi _08031366 - lsls r0, 2 - ldr r1, _08031318 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08031318: .4byte _0803131C - .align 2, 0 -_0803131C: - .4byte _08031366 - .4byte _08031366 - .4byte _08031360 - .4byte _08031330 - .4byte _08031348 -_08031330: - bl sub_80307EC - ldr r1, _08031344 - ldr r1, [r1] - strb r0, [r1, 0x4] - movs r0, 0x1 - bl sub_80310E4 - b _08031366 - .align 2, 0 -_08031344: .4byte gUnknown_203B328 -_08031348: - bl sub_80307EC - ldr r1, _0803135C - ldr r1, [r1] - strb r0, [r1, 0x4] - movs r0, 0x4 - bl sub_80310E4 - b _08031366 - .align 2, 0 -_0803135C: .4byte gUnknown_203B328 -_08031360: - movs r0, 0x6 - bl sub_80310E4 -_08031366: - pop {r0} - bx r0 - thumb_func_end sub_8031300 - - thumb_func_start sub_803136C -sub_803136C: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_8030768 - ldr r4, _080313A4 - ldr r0, [r4] - adds r0, 0x8 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08031392 - ldr r0, [r4] - adds r0, 0x8 - mov r1, sp - bl sub_8013114 -_08031392: - ldr r0, [sp] - cmp r0, 0x4 - beq _080313C2 - cmp r0, 0x4 - bgt _080313A8 - cmp r0, 0x1 - beq _080313B2 - b _080313D0 - .align 2, 0 -_080313A4: .4byte gUnknown_203B328 -_080313A8: - cmp r0, 0x5 - beq _080313CA - cmp r0, 0x6 - beq _080313BA - b _080313D0 -_080313B2: - movs r0, 0 - bl sub_80310E4 - b _080313D0 -_080313BA: - movs r0, 0x3 - bl sub_80310E4 - b _080313D0 -_080313C2: - movs r0, 0x2 - bl sub_80310E4 - b _080313D0 -_080313CA: - movs r0, 0x4 - bl sub_80310E4 -_080313D0: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_803136C - - thumb_func_start sub_80313D8 -sub_80313D8: - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - movs r0, 0 - str r0, [sp] - bl sub_8030768 - ldr r4, _08031418 - ldr r0, [r4] - adds r0, 0x8 - bl sub_8012FD8 - ldr r0, [r4] - adds r0, 0x58 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08031408 - ldr r0, [r4] - adds r0, 0x58 - mov r1, sp - bl sub_8013114 -_08031408: - ldr r0, [sp] - cmp r0, 0x2 - beq _08031428 - cmp r0, 0x2 - bgt _0803141C - cmp r0, 0x1 - beq _08031420 - b _0803148E - .align 2, 0 -_08031418: .4byte gUnknown_203B328 -_0803141C: - cmp r0, 0x3 - bne _0803148E -_08031420: - movs r0, 0 - bl sub_80310E4 - b _0803148E -_08031428: - cmp r5, 0x2 - beq _08031432 - cmp r5, 0x3 - beq _0803143C - b _0803145A -_08031432: - ldr r0, [r4] - ldrb r0, [r0, 0x4] - bl sub_8095240 - b _0803145A -_0803143C: - ldr r4, _08031480 - movs r3, 0 - movs r1, 0 - movs r2, 0x1F -_08031444: - ldr r0, [r4] - adds r0, r1 - strb r3, [r0] - ldr r0, [r4] - adds r0, r1 - adds r0, 0x22 - strb r3, [r0] - adds r1, 0x30 - subs r2, 0x1 - cmp r2, 0 - bge _08031444 -_0803145A: - ldr r0, _08031484 - ldr r0, [r0] - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x2 - beq _0803146E - cmp r0, 0x4 - bne _0803148E -_0803146E: - bl sub_8030C20 - lsls r0, 24 - cmp r0, 0 - beq _08031488 - movs r0, 0x5 - bl sub_80310E4 - b _0803148E - .align 2, 0 -_08031480: .4byte gUnknown_203B480 -_08031484: .4byte gUnknown_203B328 -_08031488: - movs r0, 0 - bl sub_80310E4 -_0803148E: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80313D8 - - thumb_func_start sub_8031498 -sub_8031498: - push {lr} - bl sub_8030DA0 - cmp r0, 0x1 - bls _080314B0 - cmp r0, 0x3 - bhi _080314B0 - bl sub_8030DE4 - movs r0, 0 - bl sub_80310E4 -_080314B0: - pop {r0} - bx r0 - thumb_func_end sub_8031498 - - thumb_func_start sub_80314B4 -sub_80314B4: - push {r4-r6,lr} - lsls r0, 16 - asrs r5, r0, 16 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r6, _08031534 - movs r0, 0x18 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r6] - ldr r0, _08031538 - adds r1, r5, 0 - bl sub_808D8E0 - adds r0, r5, 0 - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _0803153C - bl strcpy - ldr r0, [r6] - movs r4, 0 - str r4, [r0, 0x8] - str r4, [r0, 0xC] - cmp r5, 0 - beq _0803151E - adds r0, r5, 0 - bl sub_808DDD0 - ldr r1, [r6] - str r0, [r1, 0x8] - strb r4, [r1, 0x14] - ldr r0, [r6] - strb r4, [r0, 0x15] - ldr r0, [r6] - strb r4, [r0, 0x16] - ldr r1, [r6] - movs r0, 0x2 - strh r0, [r1, 0x10] - movs r0, 0x8 - strh r0, [r1, 0x12] - ldr r0, [r1, 0x8] - cmp r0, 0 - beq _0803151E - ldr r0, [r0, 0x4] - str r0, [r1, 0xC] -_0803151E: - ldr r0, _08031534 - ldr r1, [r0] - movs r0, 0 - str r0, [r1, 0x4] - movs r0, 0x1 - bl sub_80317C0 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08031534: .4byte gUnknown_203B32C -_08031538: .4byte gUnknown_202E5D8 -_0803153C: .4byte gUnknown_202DF98 - thumb_func_end sub_80314B4 - - thumb_func_start sub_8031540 -sub_8031540: - push {lr} - ldr r0, _08031558 - ldr r0, [r0] - ldrb r0, [r0] - cmp r0, 0x9 - bhi _080315BA - lsls r0, 2 - ldr r1, _0803155C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08031558: .4byte gUnknown_203B32C -_0803155C: .4byte _08031560 - .align 2, 0 -_08031560: - .4byte _080315AC - .4byte _08031588 - .4byte _08031588 - .4byte _0803158E - .4byte _08031594 - .4byte _0803159A - .4byte _080315A0 - .4byte _080315A6 - .4byte _080315B0 - .4byte _080315B6 -_08031588: - bl sub_80317D8 - b _080315BA -_0803158E: - bl sub_8031848 - b _080315BA -_08031594: - bl sub_8031864 - b _080315BA -_0803159A: - bl sub_80318D0 - b _080315BA -_080315A0: - bl sub_80318EC - b _080315BA -_080315A6: - bl sub_803192C - b _080315BA -_080315AC: - movs r0, 0x3 - b _080315BC -_080315B0: - bl sub_8031948 - b _080315BA -_080315B6: - bl sub_8031988 -_080315BA: - movs r0, 0 -_080315BC: - pop {r1} - bx r1 - thumb_func_end sub_8031540 - - thumb_func_start sub_80315C0 -sub_80315C0: - push {r4,lr} - ldr r4, _080315E4 - ldr r0, [r4] - cmp r0, 0 - beq _080315DE - ldr r0, [r0, 0x8] - cmp r0, 0 - beq _080315D4 - bl CloseFile -_080315D4: - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080315DE: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080315E4: .4byte gUnknown_203B32C - thumb_func_end sub_80315C0 - - thumb_func_start nullsub_39 -nullsub_39: - bx lr - thumb_func_end nullsub_39 - - thumb_func_start sub_80315EC -sub_80315EC: - push {r4,r5,lr} - sub sp, 0x14 - movs r5, 0 - ldr r0, _08031618 - ldr r2, [r0] - ldr r1, [r2, 0x8] - adds r3, r0, 0 - cmp r1, 0 - beq _08031602 - adds r5, r2, 0 - adds r5, 0x8 -_08031602: - ldrb r0, [r2] - subs r0, 0x1 - cmp r0, 0x8 - bls _0803160C - b _080317B0 -_0803160C: - lsls r0, 2 - ldr r1, _0803161C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08031618: .4byte gUnknown_203B32C -_0803161C: .4byte _08031620 - .align 2, 0 -_08031620: - .4byte _08031700 - .4byte _08031714 - .4byte _08031728 - .4byte _08031758 - .4byte _08031780 - .4byte _08031694 - .4byte _080316A8 - .4byte _08031644 - .4byte _08031658 -_08031644: - ldr r0, _08031650 - ldr r1, [r3] - ldr r2, [r1, 0x4] - ldr r3, _08031654 - b _08031760 - .align 2, 0 -_08031650: .4byte gUnknown_80E0C4C -_08031654: .4byte gUnknown_80E0BD4 -_08031658: - ldr r0, [r3] - ldr r0, [r0, 0x4] - cmp r0, 0x10 - beq _0803167C - cmp r0, 0x10 - bgt _0803166A - cmp r0, 0xF - beq _08031674 - b _080317B0 -_0803166A: - cmp r0, 0x11 - beq _08031684 - cmp r0, 0x12 - beq _0803168C - b _080317B0 -_08031674: - ldr r0, _08031678 - b _08031790 - .align 2, 0 -_08031678: .4byte gUnknown_80E0C70 -_0803167C: - ldr r0, _08031680 - b _08031790 - .align 2, 0 -_08031680: .4byte gUnknown_80E0DD0 -_08031684: - ldr r0, _08031688 - b _08031790 - .align 2, 0 -_08031688: .4byte gUnknown_80E0ED8 -_0803168C: - ldr r0, _08031690 - b _08031790 - .align 2, 0 -_08031690: .4byte gUnknown_80E10C8 -_08031694: - ldr r0, _080316A0 - ldr r1, [r3] - ldr r2, [r1, 0x4] - ldr r3, _080316A4 - b _08031760 - .align 2, 0 -_080316A0: .4byte gUnknown_80E0C4C -_080316A4: .4byte gUnknown_80E0B3C -_080316A8: - ldr r0, [r3] - ldr r0, [r0, 0x4] - subs r0, 0xA - cmp r0, 0x4 - bls _080316B4 - b _080317B0 -_080316B4: - lsls r0, 2 - ldr r1, _080316C0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080316C0: .4byte _080316C4 - .align 2, 0 -_080316C4: - .4byte _080316D8 - .4byte _080316E0 - .4byte _080316F0 - .4byte _080316E8 - .4byte _080316F8 -_080316D8: - ldr r0, _080316DC - b _08031790 - .align 2, 0 -_080316DC: .4byte gUnknown_80E120C -_080316E0: - ldr r0, _080316E4 - b _08031790 - .align 2, 0 -_080316E4: .4byte gUnknown_80E136C -_080316E8: - ldr r0, _080316EC - b _08031790 - .align 2, 0 -_080316EC: .4byte gUnknown_80E1420 -_080316F0: - ldr r0, _080316F4 - b _08031790 - .align 2, 0 -_080316F4: .4byte gUnknown_80E157C -_080316F8: - ldr r0, _080316FC - b _08031790 - .align 2, 0 -_080316FC: .4byte gUnknown_80E169C -_08031700: - ldr r0, _0803170C - ldr r1, [r3] - ldr r2, [r1, 0x4] - ldr r3, _08031710 - b _08031760 - .align 2, 0 -_0803170C: .4byte gUnknown_80E17C8 -_08031710: .4byte gUnknown_80E0A48 -_08031714: - ldr r0, _08031720 - ldr r1, [r3] - ldr r2, [r1, 0x4] - ldr r3, _08031724 - b _08031760 - .align 2, 0 -_08031720: .4byte gUnknown_80E183C -_08031724: .4byte gUnknown_80E0A48 -_08031728: - ldr r0, [r3] - ldr r0, [r0, 0x4] - cmp r0, 0x1 - beq _08031748 - cmp r0, 0x1 - bgt _0803173A - cmp r0, 0 - beq _08031740 - b _080317B0 -_0803173A: - cmp r0, 0x2 - beq _08031750 - b _080317B0 -_08031740: - ldr r0, _08031744 - b _08031790 - .align 2, 0 -_08031744: .4byte gUnknown_80E1868 -_08031748: - ldr r0, _0803174C - b _08031790 - .align 2, 0 -_0803174C: .4byte gUnknown_80E1A30 -_08031750: - ldr r0, _08031754 - b _08031790 - .align 2, 0 -_08031754: .4byte gUnknown_80E1AD8 -_08031758: - ldr r0, _08031778 - ldr r1, [r3] - ldr r2, [r1, 0x4] - ldr r3, _0803177C -_08031760: - movs r4, 0 - str r4, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - str r5, [sp, 0xC] - movs r1, 0xC - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _080317B0 - .align 2, 0 -_08031778: .4byte gUnknown_80E0C4C -_0803177C: .4byte gUnknown_80E0ABC -_08031780: - ldr r0, [r3] - ldr r0, [r0, 0x4] - cmp r0, 0x6 - beq _0803178E - cmp r0, 0x9 - beq _080317A4 - b _080317B0 -_0803178E: - ldr r0, _0803179C -_08031790: - ldr r3, _080317A0 - movs r1, 0 - adds r2, r5, 0 - bl sub_80141B4 - b _080317B0 - .align 2, 0 -_0803179C: .4byte gUnknown_80E1B88 -_080317A0: .4byte 0x0000010d -_080317A4: - ldr r0, _080317B8 - ldr r3, _080317BC - movs r1, 0 - adds r2, r5, 0 - bl sub_80141B4 -_080317B0: - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080317B8: .4byte gUnknown_80E1D84 -_080317BC: .4byte 0x0000010d - thumb_func_end sub_80315EC - - thumb_func_start sub_80317C0 -sub_80317C0: - push {lr} - ldr r1, _080317D4 - ldr r1, [r1] - strb r0, [r1] - bl nullsub_39 - bl sub_80315EC - pop {r0} - bx r0 - .align 2, 0 -_080317D4: .4byte gUnknown_203B32C - thumb_func_end sub_80317C0 - - thumb_func_start sub_80317D8 -sub_80317D8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803183C - ldr r2, [sp] - cmp r2, 0x5 - bhi _0803183C - lsls r0, r2, 2 - ldr r1, _080317F8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080317F8: .4byte _080317FC - .align 2, 0 -_080317FC: - .4byte _08031830 - .4byte _08031830 - .4byte _08031830 - .4byte _0803181C - .4byte _08031814 - .4byte _08031814 -_08031814: - movs r0, 0 - bl sub_80317C0 - b _0803183C -_0803181C: - ldr r0, _0803182C - ldr r0, [r0] - str r2, [r0, 0x4] - movs r0, 0x4 - bl sub_80317C0 - b _0803183C - .align 2, 0 -_0803182C: .4byte gUnknown_203B32C -_08031830: - ldr r0, _08031844 - ldr r0, [r0] - str r2, [r0, 0x4] - movs r0, 0x3 - bl sub_80317C0 -_0803183C: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08031844: .4byte gUnknown_203B32C - thumb_func_end sub_80317D8 - - thumb_func_start sub_8031848 -sub_8031848: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803185C - movs r0, 0x2 - bl sub_80317C0 -_0803185C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8031848 - - thumb_func_start sub_8031864 -sub_8031864: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080318C4 - ldr r0, [sp] - subs r1, r0, 0x5 - adds r2, r0, 0 - cmp r1, 0x4 - bhi _080318C4 - lsls r0, r1, 2 - ldr r1, _08031888 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08031888: .4byte _0803188C - .align 2, 0 -_0803188C: - .4byte _080318A0 - .4byte _080318B8 - .4byte _080318A8 - .4byte _080318B0 - .4byte _080318B8 -_080318A0: - movs r0, 0x2 - bl sub_80317C0 - b _080318C4 -_080318A8: - movs r0, 0x6 - bl sub_80317C0 - b _080318C4 -_080318B0: - movs r0, 0x8 - bl sub_80317C0 - b _080318C4 -_080318B8: - ldr r0, _080318CC - ldr r0, [r0] - str r2, [r0, 0x4] - movs r0, 0x5 - bl sub_80317C0 -_080318C4: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080318CC: .4byte gUnknown_203B32C - thumb_func_end sub_8031864 - - thumb_func_start sub_80318D0 -sub_80318D0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080318E4 - movs r0, 0x4 - bl sub_80317C0 -_080318E4: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80318D0 - - thumb_func_start sub_80318EC -sub_80318EC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08031920 - ldr r1, [sp] - cmp r1, 0x5 - bne _08031908 - movs r0, 0x4 - bl sub_80317C0 - b _08031920 -_08031908: - cmp r1, 0x5 - blt _08031920 - cmp r1, 0xE - bgt _08031920 - cmp r1, 0xA - blt _08031920 - ldr r0, _08031928 - ldr r0, [r0] - str r1, [r0, 0x4] - movs r0, 0x7 - bl sub_80317C0 -_08031920: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08031928: .4byte gUnknown_203B32C - thumb_func_end sub_80318EC - - thumb_func_start sub_803192C -sub_803192C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08031940 - movs r0, 0x6 - bl sub_80317C0 -_08031940: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_803192C - - thumb_func_start sub_8031948 -sub_8031948: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803197C - ldr r1, [sp] - cmp r1, 0x5 - bne _08031964 - movs r0, 0x4 - bl sub_80317C0 - b _0803197C -_08031964: - cmp r1, 0x5 - blt _0803197C - cmp r1, 0x12 - bgt _0803197C - cmp r1, 0xF - blt _0803197C - ldr r0, _08031984 - ldr r0, [r0] - str r1, [r0, 0x4] - movs r0, 0x9 - bl sub_80317C0 -_0803197C: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08031984: .4byte gUnknown_203B32C - thumb_func_end sub_8031948 - - thumb_func_start sub_8031988 -sub_8031988: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803199C - movs r0, 0x8 - bl sub_80317C0 -_0803199C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8031988 - - thumb_func_start sub_80319A4 -sub_80319A4: - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r4, r0, 0 - adds r5, r1, 0 - mov r8, r2 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - ldr r6, _080319F4 - movs r0, 0x78 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r6] - strb r4, [r0, 0xC] - ldr r0, [r6] - strb r5, [r0, 0xD] - ldr r0, [r6] - bl sub_801317C - ldr r1, [r6] - mov r0, r8 - str r0, [r1, 0x10] - lsls r0, 1 - add r0, r8 - lsls r0, 3 - adds r0, 0x18 - adds r0, r1, r0 - str r0, [r1, 0x14] - bl sub_8031A2C - movs r0, 0x1 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080319F4: .4byte gUnknown_203B330 - thumb_func_end sub_80319A4 - - thumb_func_start sub_80319F8 -sub_80319F8: - push {lr} - ldr r0, _08031A18 - ldr r0, [r0] - ldr r1, [r0, 0x10] - bl sub_8012A64 - cmp r0, 0x1 - beq _08031A1C - cmp r0, 0x2 - bne _08031A26 - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _08031A28 - .align 2, 0 -_08031A18: .4byte gUnknown_203B330 -_08031A1C: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _08031A28 -_08031A26: - movs r0, 0 -_08031A28: - pop {r1} - bx r1 - thumb_func_end sub_80319F8 - - thumb_func_start sub_8031A2C -sub_8031A2C: - push {lr} - bl sub_8031A84 - bl sub_8031AE8 - pop {r0} - bx r0 - thumb_func_end sub_8031A2C - - thumb_func_start sub_8031A3C -sub_8031A3C: - push {r4,r5,lr} - ldr r4, _08031A7C - ldr r2, [r4] - cmp r2, 0 - beq _08031A76 - ldr r0, [r2, 0x10] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x18 - ldr r0, _08031A80 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x18 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08031A76: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08031A7C: .4byte gUnknown_203B330 -_08031A80: .4byte gUnknown_80E1EFC - thumb_func_end sub_8031A3C - - thumb_func_start sub_8031A84 -sub_8031A84: - push {r4,r5,lr} - ldr r4, _08031AE0 - ldr r0, [r4] - adds r0, 0x18 - bl sub_8006518 - ldr r1, [r4] - ldr r2, [r1, 0x10] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x18 - ldr r0, _08031AE4 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldr r1, [r4] - ldrb r0, [r1, 0xC] - cmp r0, 0x2 - bne _08031AC6 - ldrb r0, [r1, 0xD] - bl sub_80969D0 - adds r1, r0, 0 - cmp r1, 0 - bne _08031ABE - movs r1, 0x1 -_08031ABE: - ldr r0, [r4] - ldr r0, [r0, 0x14] - bl sub_8012D08 -_08031AC6: - bl sub_8004914 - ldr r0, _08031AE0 - ldr r0, [r0] - adds r0, 0x18 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08031AE0: .4byte gUnknown_203B330 -_08031AE4: .4byte gUnknown_80E1F18 - thumb_func_end sub_8031A84 - - thumb_func_start sub_8031AE8 -sub_8031AE8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xDC - ldr r7, _08031B24 - ldr r0, [r7] - ldr r0, [r0, 0x10] - bl sub_80073B8 - ldr r2, _08031B28 - ldr r0, [r7] - ldr r3, [r0, 0x10] - movs r6, 0 - str r6, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r1, [r7] - ldrb r0, [r1, 0xC] - cmp r0, 0x1 - beq _08031B2C - cmp r0, 0x1 - bgt _08031B1E - b _08031CD4 -_08031B1E: - cmp r0, 0x2 - beq _08031B94 - b _08031CD4 - .align 2, 0 -_08031B24: .4byte gUnknown_203B330 -_08031B28: .4byte gUnknown_80E1F30 -_08031B2C: - add r4, sp, 0x68 - adds r0, r4, 0 - bl sub_8099394 - ldrb r0, [r4] - bl sub_8095228 - adds r5, r0, 0 - ldr r0, [r7] - ldr r3, [r0, 0x10] - movs r0, 0xA - movs r1, 0x10 - movs r2, 0x3 - bl sub_803B6B0 - ldr r1, _08031B8C - ldrb r2, [r5, 0x5] - add r0, sp, 0x4 - bl sub_800D158 - ldr r0, [r7] - ldr r3, [r0, 0x10] - str r6, [sp] - movs r0, 0x15 - movs r1, 0x10 - add r2, sp, 0x4 - bl xxx_call_draw_string - ldr r4, _08031B90 - movs r1, 0xC - ldrsh r0, [r5, r1] - bl sub_808D994 - adds r2, r0, 0 - add r0, sp, 0x4 - adds r1, r4, 0 - bl sub_800D158 - ldr r0, [r7] - ldr r3, [r0, 0x10] - str r6, [sp] - movs r0, 0x28 - movs r1, 0x10 - add r2, sp, 0x4 - bl xxx_call_draw_string - b _08031D4E - .align 2, 0 -_08031B8C: .4byte gUnknown_80E1F3C -_08031B90: .4byte gUnknown_80E1F40 -_08031B94: - ldrb r0, [r1, 0xD] - bl sub_80969D0 - adds r1, r0, 0 - cmp r1, 0 - bne _08031BB0 - ldr r2, _08031BAC - ldr r0, [r7] - ldr r3, [r0, 0x10] - str r1, [sp] - b _08031D2C - .align 2, 0 -_08031BAC: .4byte gUnknown_80E1F54 -_08031BB0: - movs r6, 0x10 - movs r2, 0 - mov r10, r2 - mov r8, r2 - ldr r0, _08031C28 - mov r9, r0 - mov r1, sp - adds r1, 0x6C - str r1, [sp, 0xD8] -_08031BC2: - mov r2, r10 - lsls r0, r2, 24 - lsrs r0, 24 - bl sub_8096AB4 - adds r4, r0, 0 - ldr r1, [r7] - ldrb r0, [r4, 0x4] - ldrb r2, [r1, 0xD] - cmp r0, r2 - bne _08031CC2 - ldrb r0, [r4] - cmp r0, 0 - beq _08031CC2 - cmp r0, 0x5 - beq _08031CC2 - cmp r0, 0x7 - beq _08031CC2 - ldr r3, [r1, 0x10] - movs r0, 0xA - adds r1, r6, 0 - movs r2, 0x3 - bl sub_803B6B0 - ldrb r0, [r4, 0x1] - add r5, sp, 0x6C - cmp r0, 0x3 - beq _08031C16 - ldrb r2, [r4, 0x5] - ldr r0, [sp, 0xD8] - ldr r1, _08031C2C - bl sub_800D158 - ldr r0, [r7] - ldr r3, [r0, 0x10] - mov r0, r8 - str r0, [sp] - movs r0, 0x15 - adds r1, r6, 0 - ldr r2, [sp, 0xD8] - bl xxx_call_draw_string -_08031C16: - ldrb r0, [r4, 0x1] - cmp r0, 0x3 - beq _08031C58 - cmp r0, 0x3 - bgt _08031C30 - cmp r0, 0x2 - beq _08031C70 - b _08031C9C - .align 2, 0 -_08031C28: .4byte gUnknown_202DE58 -_08031C2C: .4byte gUnknown_80E1F3C -_08031C30: - cmp r0, 0x4 - bne _08031C9C - ldrb r1, [r4, 0x10] - mov r0, r9 - movs r2, 0 - bl sub_8090DC4 - adds r0, r5, 0 - ldr r1, _08031C54 - mov r2, r9 - bl sub_800D158 - ldr r0, [r7] - ldr r3, [r0, 0x10] - mov r1, r8 - str r1, [sp] - b _08031C8A - .align 2, 0 -_08031C54: .4byte gUnknown_80E1F60 -_08031C58: - ldrb r1, [r4, 0x10] - mov r0, r9 - movs r2, 0 - bl sub_8090DC4 - adds r0, r5, 0 - ldr r1, _08031C6C - mov r2, r9 - b _08031C7E - .align 2, 0 -_08031C6C: .4byte gUnknown_80E1F70 -_08031C70: - movs r1, 0xE - ldrsh r0, [r4, r1] - bl sub_808D994 - adds r2, r0, 0 - adds r0, r5, 0 - ldr r1, _08031C98 -_08031C7E: - bl sub_800D158 - ldr r0, [r7] - ldr r3, [r0, 0x10] - mov r2, r8 - str r2, [sp] -_08031C8A: - movs r0, 0x28 - adds r1, r6, 0 - adds r2, r5, 0 - bl xxx_call_draw_string - b _08031CC0 - .align 2, 0 -_08031C98: .4byte gUnknown_80E1F80 -_08031C9C: - movs r1, 0xE - ldrsh r0, [r4, r1] - bl sub_808D994 - adds r2, r0, 0 - adds r0, r5, 0 - ldr r1, _08031CD0 - bl sub_800D158 - ldr r0, [r7] - ldr r3, [r0, 0x10] - mov r2, r8 - str r2, [sp] - movs r0, 0x28 - adds r1, r6, 0 - adds r2, r5, 0 - bl xxx_call_draw_string -_08031CC0: - adds r6, 0xC -_08031CC2: - movs r0, 0x1 - add r10, r0 - mov r1, r10 - cmp r1, 0x7 - bgt _08031CCE - b _08031BC2 -_08031CCE: - b _08031D4E - .align 2, 0 -_08031CD0: .4byte gUnknown_80E1F40 -_08031CD4: - add r0, sp, 0xD0 - mov r4, sp - adds r4, 0xD2 - adds r1, r4, 0 - bl sub_80992E0 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _08031D04 - movs r2, 0 - ldrsh r0, [r4, r2] - bl sub_80974C4 - adds r2, r0, 0 - ldr r0, _08031D00 - ldr r0, [r0] - ldr r3, [r0, 0x10] - movs r0, 0 - str r0, [sp] - b _08031D2C - .align 2, 0 -_08031D00: .4byte gUnknown_203B330 -_08031D04: - add r4, sp, 0xD4 - adds r0, r4, 0 - bl sub_8099360 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08031D3C - ldrb r0, [r4] - bl sub_80A2688 - lsls r0, 16 - asrs r0, 16 - bl sub_80975DC - adds r2, r0, 0 - ldr r0, _08031D38 - ldr r0, [r0] - ldr r3, [r0, 0x10] - str r5, [sp] -_08031D2C: - movs r0, 0xA - movs r1, 0x10 - bl xxx_call_draw_string - b _08031D4E - .align 2, 0 -_08031D38: .4byte gUnknown_203B330 -_08031D3C: - ldr r2, _08031D68 - ldr r0, _08031D6C - ldr r0, [r0] - ldr r3, [r0, 0x10] - str r1, [sp] - movs r0, 0xA - movs r1, 0x10 - bl xxx_call_draw_string -_08031D4E: - ldr r0, _08031D6C - ldr r0, [r0] - ldr r0, [r0, 0x10] - bl sub_80073E0 - add sp, 0xDC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08031D68: .4byte gUnknown_80E1F94 -_08031D6C: .4byte gUnknown_203B330 - thumb_func_end sub_8031AE8 - - thumb_func_start sub_8031D70 -sub_8031D70: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - ldr r5, _08031DC4 - movs r0, 0x7C - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - stm r0!, {r6} - bl sub_801317C - ldr r0, [r5] - str r4, [r0, 0x10] - lsls r1, r4, 1 - adds r1, r4 - lsls r1, 3 - adds r1, 0x18 - adds r1, r0, r1 - str r1, [r0, 0x14] - adds r0, 0x18 - bl sub_8006518 - ldr r1, [r5] - ldr r2, [r1, 0x10] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x18 - ldr r0, _08031DC8 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - bl sub_8031E00 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08031DC4: .4byte gUnknown_203B334 -_08031DC8: .4byte gUnknown_80E1FC4 - thumb_func_end sub_8031D70 - - thumb_func_start sub_8031DCC -sub_8031DCC: - push {lr} - ldr r0, _08031DEC - ldr r1, [r0] - adds r0, r1, 0x4 - ldr r1, [r1, 0x10] - bl sub_8012A64 - cmp r0, 0x1 - beq _08031DF0 - cmp r0, 0x2 - bne _08031DFA - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _08031DFC - .align 2, 0 -_08031DEC: .4byte gUnknown_203B334 -_08031DF0: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _08031DFC -_08031DFA: - movs r0, 0 -_08031DFC: - pop {r1} - bx r1 - thumb_func_end sub_8031DCC - - thumb_func_start sub_8031E00 -sub_8031E00: - push {lr} - bl sub_8031E58 - bl sub_8031E74 - pop {r0} - bx r0 - thumb_func_end sub_8031E00 - - thumb_func_start sub_8031E10 -sub_8031E10: - push {r4,r5,lr} - ldr r4, _08031E50 - ldr r2, [r4] - cmp r2, 0 - beq _08031E4A - ldr r0, [r2, 0x10] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x18 - ldr r0, _08031E54 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x18 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08031E4A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08031E50: .4byte gUnknown_203B334 -_08031E54: .4byte gUnknown_80E1FA8 - thumb_func_end sub_8031E10 - - thumb_func_start sub_8031E58 -sub_8031E58: - push {lr} - bl sub_8004914 - ldr r0, _08031E70 - ldr r0, [r0] - adds r0, 0x18 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r0} - bx r0 - .align 2, 0 -_08031E70: .4byte gUnknown_203B334 - thumb_func_end sub_8031E58 - - thumb_func_start sub_8031E74 -sub_8031E74: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x3C - ldr r3, _08031EC0 - ldr r5, _08031EC4 - ldr r2, [r5] - ldr r1, [r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 4 - ldr r4, [r3] - adds r4, r0 - ldr r0, [r2, 0x10] - bl sub_80073B8 - ldr r2, _08031EC8 - ldr r0, [r5] - ldr r3, [r0, 0x10] - movs r0, 0 - str r0, [sp] - movs r0, 0x14 - movs r1, 0 - bl xxx_call_draw_string - add r0, sp, 0x4 - adds r1, r4, 0 - bl sub_803D2C0 - movs r7, 0 - mov r8, r5 -_08031EB2: - cmp r7, 0x4 - ble _08031ED0 - cmp r7, 0xC - bgt _08031ECC - movs r6, 0x6 - movs r5, 0x16 - b _08031F00 - .align 2, 0 -_08031EC0: .4byte gUnknown_203B480 -_08031EC4: .4byte gUnknown_203B334 -_08031EC8: .4byte gUnknown_80E1FDC -_08031ECC: - cmp r7, 0x11 - bgt _08031ED6 -_08031ED0: - movs r6, 0x7 - movs r5, 0x15 - b _08031F00 -_08031ED6: - cmp r7, 0x16 - ble _08031EE8 - cmp r7, 0x1E - bgt _08031EE4 - movs r6, 0x6 - movs r5, 0x25 - b _08031F00 -_08031EE4: - cmp r7, 0x23 - bgt _08031EEE -_08031EE8: - movs r6, 0x7 - movs r5, 0x24 - b _08031F00 -_08031EEE: - cmp r7, 0x28 - ble _08031EFC - cmp r7, 0x30 - bgt _08031EFC - movs r6, 0x6 - movs r5, 0x34 - b _08031F00 -_08031EFC: - movs r6, 0x7 - movs r5, 0x33 -_08031F00: - adds r0, r7, 0 - movs r1, 0x12 - bl __modsi3 - movs r1, 0xB - adds r4, r0, 0 - muls r4, r1 - adds r4, 0x6 - mov r0, sp - adds r0, r7 - adds r0, 0x4 - ldrb r2, [r0] - mov r1, r8 - ldr r0, [r1] - ldr r0, [r0, 0x10] - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - adds r3, r6, 0 - bl sub_8012C60 - mov r1, r8 - ldr r0, [r1] - ldr r0, [r0, 0x10] - adds r2, r5, 0 - adds r2, 0xA - movs r1, 0x5 - str r1, [sp] - adds r1, r4, 0 - movs r3, 0xA - bl sub_80078A4 - adds r7, 0x1 - cmp r7, 0x35 - ble _08031EB2 - ldr r0, _08031F5C - ldr r0, [r0] - ldr r0, [r0, 0x10] - bl sub_80073E0 - add sp, 0x3C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08031F5C: .4byte gUnknown_203B334 - thumb_func_end sub_8031E74 - - thumb_func_start sub_8031F60 -sub_8031F60: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r4, _08031FD0 - movs r0, 0xA0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - str r5, [r0, 0x34] - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 3 - adds r1, 0x3C - adds r1, r0, r1 - str r1, [r0, 0x38] - adds r0, 0x3C - bl sub_8006518 - ldr r1, [r4] - ldr r2, [r1, 0x34] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x3C - ldr r0, _08031FD4 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldr r0, [r4] - ldr r1, [r0, 0x38] - adds r0, 0x9C - str r0, [r1, 0x14] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x20 - movs r2, 0x8 - adds r3, r5, 0 - bl sub_8013818 - bl sub_8032084 - bl sub_80320F8 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08031FD0: .4byte gUnknown_203B338 -_08031FD4: .4byte gUnknown_80E2008 - thumb_func_end sub_8031F60 - - thumb_func_start sub_8031FD8 -sub_8031FD8: - push {r4,lr} - lsls r0, 24 - cmp r0, 0 - bne _08031FF0 - ldr r0, _08031FEC - ldr r0, [r0] - bl sub_8013660 - movs r0, 0 - b _08032034 - .align 2, 0 -_08031FEC: .4byte gUnknown_203B338 -_08031FF0: - ldr r4, _0803200C - ldr r0, [r4] - bl GetKeyPress - cmp r0, 0x1 - beq _08032010 - cmp r0, 0x2 - bne _0803201A - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _08032034 - .align 2, 0 -_0803200C: .4byte gUnknown_203B338 -_08032010: - movs r0, 0 - bl sub_80119D4 - movs r0, 0x3 - b _08032034 -_0803201A: - ldr r0, [r4] - bl sub_8013938 - lsls r0, 24 - cmp r0, 0 - bne _0803202A - movs r0, 0 - b _08032034 -_0803202A: - bl sub_8032084 - bl sub_80320F8 - movs r0, 0x1 -_08032034: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8031FD8 - - thumb_func_start sub_803203C -sub_803203C: - push {r4,r5,lr} - ldr r4, _0803207C - ldr r2, [r4] - cmp r2, 0 - beq _08032076 - ldr r0, [r2, 0x34] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x3C - ldr r0, _08032080 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08032076: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803207C: .4byte gUnknown_203B338 -_08032080: .4byte gUnknown_80E1FF0 - thumb_func_end sub_803203C - - thumb_func_start sub_8032084 -sub_8032084: - push {r4,lr} - ldr r4, _080320F4 - ldr r0, [r4] - ldrh r1, [r0, 0x20] - adds r0, 0x9C - movs r2, 0 - strb r1, [r0] - ldr r0, [r4] - ldrh r1, [r0, 0x1E] - adds r0, 0x9D - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9E - movs r1, 0xB - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9F - strb r2, [r0] - ldr r0, [r4] - movs r1, 0x1A - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x34] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x4A - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x34] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x4C - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080320F4: .4byte gUnknown_203B338 - thumb_func_end sub_8032084 - - thumb_func_start sub_80320F8 -sub_80320F8: - push {r4-r7,lr} - sub sp, 0x8 - ldr r5, _08032158 - ldr r0, [r5] - ldr r0, [r0, 0x34] - bl sub_8008C54 - ldr r0, [r5] - ldr r0, [r0, 0x34] - bl sub_80073B8 - ldr r0, [r5] - movs r1, 0x1E - ldrsh r4, [r0, r1] - lsls r4, 3 - adds r6, r4, 0 - adds r6, 0xA - ldr r2, _0803215C - ldr r3, [r0, 0x34] - movs r0, 0 - str r0, [sp] - adds r0, r6, 0 - movs r1, 0 - bl xxx_call_draw_string - adds r4, 0x4 - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x9E - ldrb r0, [r0] - lsls r0, 3 - adds r6, r4, r0 - movs r0, 0x1E - ldrsh r2, [r1, r0] - adds r2, 0x1 - movs r0, 0x7 - str r0, [sp] - ldr r0, [r1, 0x34] - str r0, [sp, 0x4] - adds r0, r6, 0 - movs r1, 0 - movs r3, 0x1 - bl sub_8012BC4 - movs r7, 0 - ldr r0, [r5] - b _0803223A - .align 2, 0 -_08032158: .4byte gUnknown_203B338 -_0803215C: .4byte gUnknown_80E2020 -_08032160: - ldr r5, _08032194 - ldr r0, [r5] - movs r2, 0x1E - ldrsh r1, [r0, r2] - movs r2, 0x1C - ldrsh r0, [r0, r2] - muls r0, r1 - adds r0, r7 - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r6, 0 - bl sub_8097710 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0803221C - subs r0, r6, 0x7 - cmp r0, 0x5 - bhi _080321EC - lsls r0, 2 - ldr r1, _08032198 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08032194: .4byte gUnknown_203B338 -_08032198: .4byte _0803219C - .align 2, 0 -_0803219C: - .4byte _080321BA - .4byte _080321C6 - .4byte _080321D4 - .4byte _080321E0 - .4byte _080321C0 - .4byte _080321B4 -_080321B4: - bl sub_80978B8 - b _080321E4 -_080321BA: - bl sub_8097880 - b _080321E4 -_080321C0: - bl sub_8097838 - b _080321E4 -_080321C6: - bl sub_80977B8 - ldr r1, _080321D0 - b _080321EA - .align 2, 0 -_080321D0: .4byte gUnknown_202DE30 -_080321D4: - bl sub_80977F8 - ldr r1, _080321DC - b _080321EA - .align 2, 0 -_080321DC: .4byte gUnknown_202DE30 -_080321E0: - bl sub_8097870 -_080321E4: - ldr r1, _08032214 - lsls r0, 16 - asrs r0, 16 -_080321EA: - str r0, [r1] -_080321EC: - ldr r4, _08032218 - ldr r0, [r4] - adds r1, r7, 0 - bl sub_8013800 - adds r5, r0, 0 - adds r0, r6, 0 - bl sub_8097738 - adds r2, r0, 0 - ldr r0, [r4] - ldr r3, [r0, 0x34] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - adds r1, r5, 0 - bl sub_8014FF0 - b _08032234 - .align 2, 0 -_08032214: .4byte gUnknown_202DE30 -_08032218: .4byte gUnknown_203B338 -_0803221C: - ldr r0, [r5] - adds r1, r7, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r2, _08032254 - ldr r0, [r5] - ldr r3, [r0, 0x34] - str r4, [sp] - movs r0, 0x8 - bl xxx_call_draw_string -_08032234: - adds r7, 0x1 - ldr r0, _08032258 - ldr r0, [r0] -_0803223A: - movs r1, 0x1A - ldrsh r0, [r0, r1] - cmp r7, r0 - blt _08032160 - ldr r0, _08032258 - ldr r0, [r0] - ldr r0, [r0, 0x34] - bl sub_80073E0 - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08032254: .4byte gUnknown_80E2030 -_08032258: .4byte gUnknown_203B338 - thumb_func_end sub_80320F8 - - thumb_func_start sub_803225C -sub_803225C: - push {r4,r5,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _08032300 - movs r4, 0xAD - lsls r4, 3 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 - ldr r1, [r5] - movs r0, 0xA6 - lsls r0, 3 - adds r2, r1, r0 - movs r0, 0 - str r0, [r2] - movs r2, 0x86 - lsls r2, 2 - adds r1, r2 - movs r0, 0xFF - strb r0, [r1] - ldr r0, [r5] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - ldr r1, _08032304 - strh r1, [r0] - ldr r0, _08032308 - movs r4, 0x98 - lsls r4, 1 - adds r1, r4, 0 - bl sub_808D8E0 - adds r0, r4, 0 - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _0803230C - bl strcpy - movs r1, 0 - movs r2, 0 - adds r4, r5, 0 -_080322C6: - ldr r0, [r5] - adds r0, 0x8 - adds r0, r1 - strb r2, [r0] - adds r1, 0x1 - cmp r1, 0x35 - ble _080322C6 - ldr r1, [r4] - movs r0, 0x7E - str r0, [r1, 0x4] - bl sub_8039880 - ldr r1, [r4] - ldr r2, _08032310 - adds r1, r2 - strb r0, [r1] - ldr r0, [r4] - adds r2, r0, r2 - ldrb r1, [r2] - ldr r2, _08032314 - adds r0, r2 - strb r1, [r0] - movs r0, 0 - bl sub_80338C4 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08032300: .4byte gUnknown_203B33C -_08032304: .4byte 0x0000ffff -_08032308: .4byte gUnknown_202E5D8 -_0803230C: .4byte gUnknown_202DF98 -_08032310: .4byte 0x0000052c -_08032314: .4byte 0x0000052d - thumb_func_end sub_803225C - - thumb_func_start sub_8032318 -sub_8032318: - push {lr} - ldr r0, _08032330 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x7D - bls _08032326 - b _080327DC -_08032326: - lsls r0, 2 - ldr r1, _08032334 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08032330: .4byte gUnknown_203B33C -_08032334: .4byte _08032338 - .align 2, 0 -_08032338: - .4byte _080326A6 - .4byte _080326A6 - .4byte _080326AC - .4byte _0803255A - .4byte _0803255A - .4byte _0803266C - .4byte _08032672 - .4byte _08032678 - .4byte _0803267E - .4byte _08032684 - .4byte _0803268A - .4byte _08032690 - .4byte _08032690 - .4byte _08032698 - .4byte _080326A0 - .4byte _080327CE - .4byte _080327CE - .4byte _0803262C - .4byte _08032634 - .4byte _0803263A - .4byte _08032640 - .4byte _08032646 - .4byte _0803264C - .4byte _08032652 - .4byte _08032764 - .4byte _08032658 - .4byte _08032660 - .4byte _08032666 - .4byte _08032612 - .4byte _08032626 - .4byte _0803261A - .4byte _08032620 - .4byte _0803260C - .4byte _080325CE - .4byte _080327CE - .4byte _080325C6 - .4byte _080325BA - .4byte _080325A0 - .4byte _080325A8 - .4byte _080325AE - .4byte _080325B4 - .4byte _080325C0 - .4byte _0803258C - .4byte _0803259A - .4byte _08032594 - .4byte _0803257E - .4byte _08032586 - .4byte _08032764 - .4byte _080327CE - .4byte _080325D4 - .4byte _080325DC - .4byte _080325E2 - .4byte _080325E8 - .4byte _080325EE - .4byte _080327DC - .4byte _080325FA - .4byte _080325F4 - .4byte _08032600 - .4byte _08032606 - .4byte _08032764 - .4byte _080327CE - .4byte _08032560 - .4byte _08032566 - .4byte _0803256C - .4byte _08032572 - .4byte _08032578 - .4byte _08032764 - .4byte _08032658 - .4byte _080327CE - .4byte _080327CE - .4byte _08032794 - .4byte _0803279C - .4byte _080327A2 - .4byte _080327A8 - .4byte _080327AE - .4byte _080327B4 - .4byte _080327BA - .4byte _080327C0 - .4byte _080327C0 - .4byte _080327C8 - .4byte _08032722 - .4byte _080327D6 - .4byte _0803278E - .4byte _08032780 - .4byte _08032788 - .4byte _0803277A - .4byte _08032774 - .4byte _0803276C - .4byte _08032752 - .4byte _08032764 - .4byte _080326BC - .4byte _080326C2 - .4byte _080326D6 - .4byte _080326CA - .4byte _080326D0 - .4byte _080326DC - .4byte _080326E2 - .4byte _080326E8 - .4byte _08032730 - .4byte _08032744 - .4byte _0803273E - .4byte _08032738 - .4byte _080326F4 - .4byte _080326FC - .4byte _080326EE - .4byte _0803274C - .4byte _080326B0 - .4byte _080326B6 - .4byte _08032764 - .4byte _08032722 - .4byte _0803272A - .4byte _08032744 - .4byte _0803271C - .4byte _08032716 - .4byte _08032708 - .4byte _08032710 - .4byte _08032702 - .4byte _08032758 - .4byte _0803275E - .4byte _08032764 - .4byte _08032530 - .4byte _08032536 - .4byte _0803253E - .4byte _08032544 - .4byte _0803254C - .4byte _08032552 -_08032530: - bl sub_8035300 - b _080327DC -_08032536: - movs r0, 0x78 - bl sub_8035404 - b _080327DC -_0803253E: - bl sub_8035374 - b _080327DC -_08032544: - movs r0, 0x7A - bl sub_8035404 - b _080327DC -_0803254C: - bl sub_80353BC - b _080327DC -_08032552: - movs r0, 0x7C - bl sub_8035404 - b _080327DC -_0803255A: - bl sub_8033A2C - b _080327DC -_08032560: - bl sub_803477C - b _080327DC -_08032566: - bl sub_80347AC - b _080327DC -_0803256C: - bl sub_80347C8 - b _080327DC -_08032572: - bl sub_80347E4 - b _080327DC -_08032578: - bl sub_8034804 - b _080327DC -_0803257E: - movs r0, 0x2E - bl sub_8035404 - b _080327DC -_08032586: - bl sub_80344C0 - b _080327DC -_0803258C: - movs r0, 0xD - bl sub_8035404 - b _080327DC -_08032594: - bl sub_8034478 - b _080327DC -_0803259A: - bl sub_80344A0 - b _080327DC -_080325A0: - movs r0, 0x26 - bl sub_8035404 - b _080327DC -_080325A8: - bl sub_803418C - b _080327DC -_080325AE: - bl sub_8034254 - b _080327DC -_080325B4: - bl sub_8034310 - b _080327DC -_080325BA: - bl sub_8034378 - b _080327DC -_080325C0: - bl sub_80343C4 - b _080327DC -_080325C6: - movs r0, 0x21 - bl sub_8035404 - b _080327DC -_080325CE: - bl sub_8034404 - b _080327DC -_080325D4: - movs r0, 0x32 - bl sub_8035404 - b _080327DC -_080325DC: - bl sub_8034500 - b _080327DC -_080325E2: - bl sub_8034590 - b _080327DC -_080325E8: - bl sub_803464C - b _080327DC -_080325EE: - bl sub_80346A8 - b _080327DC -_080325F4: - bl sub_80346D8 - b _080327DC -_080325FA: - bl sub_8034700 - b _080327DC -_08032600: - bl sub_8034720 - b _080327DC -_08032606: - bl sub_803473C - b _080327DC -_0803260C: - bl sub_8033FB4 - b _080327DC -_08032612: - movs r0, 0x1D - bl sub_8035404 - b _080327DC -_0803261A: - bl sub_8034074 - b _080327DC -_08032620: - bl sub_8034130 - b _080327DC -_08032626: - bl sub_8033FE4 - b _080327DC -_0803262C: - movs r0, 0x12 - bl sub_8035404 - b _080327DC -_08032634: - bl nullsub_42 - b _080327DC -_0803263A: - bl nullsub_43 - b _080327DC -_08032640: - bl nullsub_44 - b _080327DC -_08032646: - bl nullsub_45 - b _080327DC -_0803264C: - bl sub_8033D74 - b _080327DC -_08032652: - bl sub_8033D94 - b _080327DC -_08032658: - movs r0, 0x1A - bl sub_8035404 - b _080327DC -_08032660: - bl sub_8033DBC - b _080327DC -_08032666: - bl sub_8033F64 - b _080327DC -_0803266C: - bl sub_8033C54 - b _080327DC -_08032672: - bl nullsub_41 - b _080327DC -_08032678: - bl sub_8033CAC - b _080327DC -_0803267E: - bl sub_8033D48 - b _080327DC -_08032684: - bl sub_8035424 - b _080327DC -_0803268A: - bl nullsub_50 - b _080327DC -_08032690: - movs r0, 0x6 - bl sub_8035404 - b _080327DC -_08032698: - movs r0, 0x7 - bl sub_8035404 - b _080327DC -_080326A0: - bl sub_8033B8C - b _080327DC -_080326A6: - bl sub_80339C8 - b _080327DC -_080326AC: - movs r0, 0x3 - b _080327DE -_080326B0: - bl sub_80348C4 - b _080327DC -_080326B6: - bl sub_803482C - b _080327DC -_080326BC: - bl sub_80349B0 - b _080327DC -_080326C2: - movs r0, 0x5C - bl sub_8035404 - b _080327DC -_080326CA: - bl sub_8034A70 - b _080327DC -_080326D0: - bl sub_8034B2C - b _080327DC -_080326D6: - bl sub_80349E0 - b _080327DC -_080326DC: - bl sub_8034B88 - b _080327DC -_080326E2: - bl sub_8034C98 - b _080327DC -_080326E8: - bl sub_8034C38 - b _080327DC -_080326EE: - bl sub_8034D54 - b _080327DC -_080326F4: - movs r0, 0x67 - bl sub_8035404 - b _080327DC -_080326FC: - bl sub_8034970 - b _080327DC -_08032702: - bl sub_80351E0 - b _080327DC -_08032708: - movs r0, 0x73 - bl sub_8035404 - b _080327DC -_08032710: - bl sub_8034D74 - b _080327DC -_08032716: - bl sub_8034EF0 - b _080327DC -_0803271C: - bl sub_8034F38 - b _080327DC -_08032722: - movs r0, 0x6E - bl sub_8035404 - b _080327DC -_0803272A: - bl sub_80352A4 - b _080327DC -_08032730: - movs r0, 0x6A - bl sub_8035404 - b _080327DC -_08032738: - bl sub_8034EC8 - b _080327DC -_0803273E: - bl sub_8034F18 - b _080327DC -_08032744: - movs r0, 0x62 - bl sub_8035404 - b _080327DC -_0803274C: - bl sub_8034F58 - b _080327DC -_08032752: - bl sub_8034F88 - b _080327DC -_08032758: - bl sub_8035018 - b _080327DC -_0803275E: - bl sub_8035038 - b _080327DC -_08032764: - movs r0, 0x2 - bl sub_8035404 - b _080327DC -_0803276C: - movs r0, 0x5F - bl sub_8035404 - b _080327DC -_08032774: - bl sub_8035094 - b _080327DC -_0803277A: - bl sub_80350F4 - b _080327DC -_08032780: - movs r0, 0x54 - bl sub_8035404 - b _080327DC -_08032788: - bl sub_803517C - b _080327DC -_0803278E: - bl sub_8035210 - b _080327DC -_08032794: - movs r0, 0x47 - bl sub_8035404 - b _080327DC -_0803279C: - bl nullsub_46 - b _080327DC -_080327A2: - bl nullsub_47 - b _080327DC -_080327A8: - bl nullsub_48 - b _080327DC -_080327AE: - bl nullsub_49 - b _080327DC -_080327B4: - bl sub_8035430 - b _080327DC -_080327BA: - bl nullsub_51 - b _080327DC -_080327C0: - movs r0, 0x4F - bl sub_8035404 - b _080327DC -_080327C8: - bl sub_8034848 - b _080327DC -_080327CE: - movs r0, 0x1 - bl sub_8035404 - b _080327DC -_080327D6: - movs r0, 0x1 - bl sub_8035404 -_080327DC: - movs r0, 0 -_080327DE: - pop {r1} - bx r1 - thumb_func_end sub_8032318 - - thumb_func_start sub_80327E4 -sub_80327E4: - push {r4,lr} - ldr r4, _08032820 - ldr r0, [r4] - cmp r0, 0 - beq _0803281A - bl MemoryFree - movs r0, 0 - str r0, [r4] - bl sub_803084C - bl sub_8031E10 - bl sub_8023C60 - bl sub_80155F0 - bl sub_801CBB8 - bl sub_802F2C0 - bl sub_8030DE4 - bl sub_802453C - bl sub_801B450 -_0803281A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08032820: .4byte gUnknown_203B33C - thumb_func_end sub_80327E4 - - thumb_func_start nullsub_40 -nullsub_40: - bx lr - thumb_func_end nullsub_40 - - thumb_func_start sub_8032828 -sub_8032828: - push {r4-r6,lr} - sub sp, 0x68 - ldr r1, _08032848 - ldr r0, [r1] - ldr r0, [r0] - adds r6, r1, 0 - cmp r0, 0x7D - bls _0803283C - bl _080338B4 -_0803283C: - lsls r0, 2 - ldr r1, _0803284C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08032848: .4byte gUnknown_203B33C -_0803284C: .4byte _08032850 - .align 2, 0 -_08032850: - .4byte _08032A48 - .4byte _08032AD0 - .4byte _080338B4 - .4byte _08032B80 - .4byte _08032BC4 - .4byte _08032FD0 - .4byte _080338B4 - .4byte _08032FF0 - .4byte _080338B4 - .4byte _080338B4 - .4byte _08032FD8 - .4byte _08032FE0 - .4byte _08032FE8 - .4byte _0803356C - .4byte _08032C50 - .4byte _08033200 - .4byte _080331CC - .4byte _080331D4 - .4byte _080331DC - .4byte _080336B2 - .4byte _080338B4 - .4byte _080331F8 - .4byte _08033208 - .4byte _080338B4 - .4byte _08033234 - .4byte _0803323C - .4byte _08033244 - .4byte _080338B4 - .4byte _08032F8C - .4byte _08032F98 - .4byte _080336B2 - .4byte _080338B4 - .4byte _08032FB6 - .4byte _08032EB8 - .4byte _08032FC4 - .4byte _08032EAC - .4byte _08032F54 - .4byte _08032EE0 - .4byte _08032EEC - .4byte _08032F16 - .4byte _080338B4 - .4byte _08032F7C - .4byte _08032E60 - .4byte _08032E6C - .4byte _08032EA0 - .4byte _08032E48 - .4byte _0803341C - .4byte _08032E54 - .4byte _08032D84 - .4byte _08032D90 - .4byte _08032D9C - .4byte _080336B2 - .4byte _080338B4 - .4byte _08032DBC - .4byte _080338B4 - .4byte _08032DCC - .4byte _08032E00 - .4byte _08032E3C - .4byte _08032E0C - .4byte _08032E30 - .4byte _08032D04 - .4byte _08032D10 - .4byte _08032D2C - .4byte _08032D38 - .4byte _08032D44 - .4byte _080338B4 - .4byte _08032D78 - .4byte _08032D20 - .4byte _08033720 - .4byte _08033728 - .4byte _08033684 - .4byte _0803368C - .4byte _080336B2 - .4byte _080338B4 - .4byte _080336F8 - .4byte _080338B4 - .4byte _08032FD8 - .4byte _08032FE0 - .4byte _08032FE8 - .4byte _080338B4 - .4byte _08033468 - .4byte _08033730 - .4byte _08033738 - .4byte _0803366C - .4byte _08033674 - .4byte _08033644 - .4byte _0803361C - .4byte _08033614 - .4byte _080335F4 - .4byte _080335C0 - .4byte _0803324E - .4byte _0803325C - .4byte _0803368C - .4byte _08033264 - .4byte _080338B4 - .4byte _08033288 - .4byte _080332B8 - .4byte _080338B4 - .4byte _0803356C - .4byte _080335B0 - .4byte _08033584 - .4byte _080338B4 - .4byte _08033412 - .4byte _0803341C - .4byte _08033448 - .4byte _080335B8 - .4byte _080332F4 - .4byte _080338B4 - .4byte _08033460 - .4byte _08033470 - .4byte _0803349C - .4byte _08033450 - .4byte _08033458 - .4byte _080338B4 - .4byte _080333E4 - .4byte _080333EC - .4byte _080338B4 - .4byte _08033604 - .4byte _0803360C - .4byte _080338B4 - .4byte _0803384C - .4byte _0803387C - .4byte _080337D4 - .4byte _080337F0 - .4byte _08033770 - .4byte _0803378C -_08032A48: - movs r0, 0x1 - bl sub_8095324 - cmp r0, 0 - bne _08032A9C - movs r0, 0x5 - bl sub_8095324 - adds r4, r0, 0 - cmp r4, 0 - bne _08032A9C - ldr r0, _08032A7C - ldr r0, [r0] - ldr r1, _08032A80 - adds r0, r1 - ldrb r2, [r0] - cmp r2, 0 - beq _08032A8C - ldr r0, _08032A84 - ldr r3, _08032A88 - str r4, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] - b _08032B66 - .align 2, 0 -_08032A7C: .4byte gUnknown_203B33C -_08032A80: .4byte 0x0000052c -_08032A84: .4byte gUnknown_80E25F4 -_08032A88: .4byte gUnknown_80E2108 -_08032A8C: - ldr r0, _08032A94 - ldr r3, _08032A98 - b _08032B5C - .align 2, 0 -_08032A94: .4byte gUnknown_80E25F4 -_08032A98: .4byte gUnknown_80E20B8 -_08032A9C: - ldr r0, _08032AC0 - ldr r0, [r0] - ldr r2, _08032AC4 - adds r0, r2 - ldrb r2, [r0] - cmp r2, 0 - beq _08032B58 - ldr r0, _08032AC8 - ldr r3, _08032ACC - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - bl _08033864 - .align 2, 0 -_08032AC0: .4byte gUnknown_203B33C -_08032AC4: .4byte 0x0000052c -_08032AC8: .4byte gUnknown_80E25F4 -_08032ACC: .4byte gUnknown_80E20E0 -_08032AD0: - movs r0, 0x1 - bl sub_8095324 - cmp r0, 0 - bne _08032B24 - movs r0, 0x5 - bl sub_8095324 - adds r4, r0, 0 - cmp r4, 0 - bne _08032B24 - ldr r0, _08032B04 - ldr r0, [r0] - ldr r3, _08032B08 - adds r0, r3 - ldrb r2, [r0] - cmp r2, 0 - beq _08032B14 - ldr r0, _08032B0C - ldr r3, _08032B10 - str r4, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] - b _08032B66 - .align 2, 0 -_08032B04: .4byte gUnknown_203B33C -_08032B08: .4byte 0x0000052c -_08032B0C: .4byte gUnknown_80E25F4 -_08032B10: .4byte gUnknown_80E2108 -_08032B14: - ldr r0, _08032B1C - ldr r3, _08032B20 - b _08032B5C - .align 2, 0 -_08032B1C: .4byte gUnknown_80E25F4 -_08032B20: .4byte gUnknown_80E20B8 -_08032B24: - ldr r0, _08032B48 - ldr r0, [r0] - ldr r4, _08032B4C - adds r0, r4 - ldrb r2, [r0] - cmp r2, 0 - beq _08032B58 - ldr r0, _08032B50 - ldr r3, _08032B54 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - bl _08033864 - .align 2, 0 -_08032B48: .4byte gUnknown_203B33C -_08032B4C: .4byte 0x0000052c -_08032B50: .4byte gUnknown_80E25F4 -_08032B54: .4byte gUnknown_80E20E0 -_08032B58: - ldr r0, _08032B78 - ldr r3, _08032B7C -_08032B5C: - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] -_08032B66: - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0 - bl sub_8014248 - bl _080338B4 - .align 2, 0 -_08032B78: .4byte gUnknown_80E25F4 -_08032B7C: .4byte gUnknown_80E2068 -_08032B80: - movs r0, 0x4 - bl sub_8095324 - adds r2, r0, 0 - cmp r2, 0 - beq _08032B9C - ldr r0, _08032B94 - ldr r3, _08032B98 - movs r2, 0 - b _08032BA0 - .align 2, 0 -_08032B94: .4byte gUnknown_80E25F4 -_08032B98: .4byte gUnknown_80E2130 -_08032B9C: - ldr r0, _08032BBC - ldr r3, _08032BC0 -_08032BA0: - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x3 - bl sub_8014248 - bl _080338B4 - .align 2, 0 -_08032BBC: .4byte gUnknown_80E25F4 -_08032BC0: .4byte gUnknown_80E2190 -_08032BC4: - movs r0, 0x1 - bl sub_8095324 - adds r4, r0, 0 - cmp r4, 0 - bne _08032C0C - movs r0, 0x5 - bl sub_8095324 - cmp r0, 0 - bne _08032BF4 - ldr r0, _08032BEC - ldr r3, _08032BF0 - str r4, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] - b _08032C38 - .align 2, 0 -_08032BEC: .4byte gUnknown_80E25F4 -_08032BF0: .4byte gUnknown_80E2268 -_08032BF4: - ldr r0, _08032C04 - ldr r3, _08032C08 - str r4, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] - b _08032C38 - .align 2, 0 -_08032C04: .4byte gUnknown_80E25F4 -_08032C08: .4byte gUnknown_80E2218 -_08032C0C: - movs r0, 0x5 - bl sub_8095324 - adds r2, r0, 0 - cmp r2, 0 - bne _08032C28 - ldr r0, _08032C20 - ldr r3, _08032C24 - b _08032C2E - .align 2, 0 -_08032C20: .4byte gUnknown_80E25F4 -_08032C24: .4byte gUnknown_80E2240 -_08032C28: - ldr r0, _08032C48 - ldr r3, _08032C4C - movs r2, 0 -_08032C2E: - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] -_08032C38: - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x11 - bl sub_8014248 - bl _080338B4 - .align 2, 0 -_08032C48: .4byte gUnknown_80E25F4 -_08032C4C: .4byte gUnknown_80E21B8 -_08032C50: - ldr r0, [r6] - movs r5, 0xA5 - lsls r5, 3 - adds r0, r5 - ldr r0, [r0] - subs r0, 0x3 - cmp r0, 0x11 - bls _08032C64 - bl _080338B4 -_08032C64: - lsls r0, 2 - ldr r1, _08032C70 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08032C70: .4byte _08032C74 - .align 2, 0 -_08032C74: - .4byte _08032CC8 - .4byte _08032CD4 - .4byte _080338B4 - .4byte _080338B4 - .4byte _080338B4 - .4byte _080338B4 - .4byte _080338B4 - .4byte _080338B4 - .4byte _080338B4 - .4byte _080338B4 - .4byte _080338B4 - .4byte _080338B4 - .4byte _080338B4 - .4byte _080338B4 - .4byte _08032CBC - .4byte _08032CE0 - .4byte _08032CEC - .4byte _08032CF8 -_08032CBC: - ldr r0, _08032CC4 - bl _0803374A - .align 2, 0 -_08032CC4: .4byte gUnknown_80E2610 -_08032CC8: - ldr r0, _08032CD0 - bl _0803374A - .align 2, 0 -_08032CD0: .4byte gUnknown_80E2640 -_08032CD4: - ldr r0, _08032CDC - bl _0803374A - .align 2, 0 -_08032CDC: .4byte gUnknown_80E2680 -_08032CE0: - ldr r0, _08032CE8 - bl _0803374A - .align 2, 0 -_08032CE8: .4byte gUnknown_80E26B0 -_08032CEC: - ldr r0, _08032CF4 - bl _0803374A - .align 2, 0 -_08032CF4: .4byte gUnknown_80E26F0 -_08032CF8: - ldr r0, _08032D00 - bl _0803374A - .align 2, 0 -_08032D00: .4byte gUnknown_80E2728 -_08032D04: - ldr r0, _08032D0C - bl _0803388E - .align 2, 0 -_08032D0C: .4byte gUnknown_80E276C -_08032D10: - ldr r0, _08032D18 - ldr r3, _08032D1C - bl _080336FC - .align 2, 0 -_08032D18: .4byte gUnknown_80E27A4 -_08032D1C: .4byte gUnknown_80E2458 -_08032D20: - ldr r0, _08032D28 - bl _0803388E - .align 2, 0 -_08032D28: .4byte gUnknown_80E2814 -_08032D2C: - ldr r0, _08032D34 - bl _0803388E - .align 2, 0 -_08032D34: .4byte gUnknown_80E2840 -_08032D38: - ldr r0, _08032D40 - bl _0803388E - .align 2, 0 -_08032D40: .4byte gUnknown_80E2874 -_08032D44: - ldr r0, [r6] - ldr r1, _08032D60 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0xC - bne _08032D54 - bl _080338B4 -_08032D54: - cmp r0, 0xC - bhi _08032D64 - cmp r0, 0xB - beq _08032D6C - bl _080338B4 - .align 2, 0 -_08032D60: .4byte 0x00000524 -_08032D64: - cmp r0, 0xE - bls _08032D6C - bl _080338B4 -_08032D6C: - ldr r0, _08032D74 - bl _0803388E - .align 2, 0 -_08032D74: .4byte gUnknown_80E2898 -_08032D78: - ldr r0, _08032D80 - bl _0803388E - .align 2, 0 -_08032D80: .4byte gUnknown_80E28D8 -_08032D84: - ldr r0, _08032D8C - bl _0803388E - .align 2, 0 -_08032D8C: .4byte gUnknown_80E2904 -_08032D90: - ldr r0, _08032D98 - bl _0803388E - .align 2, 0 -_08032D98: .4byte gUnknown_80E296C -_08032D9C: - bl sub_8030894 - cmp r0, 0 - beq _08032DA8 - bl _080338B4 -_08032DA8: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - bl _080336A6 -_08032DBC: - ldr r0, _08032DC4 - ldr r3, _08032DC8 - bl _080336FC - .align 2, 0 -_08032DC4: .4byte gUnknown_80E29A0 -_08032DC8: .4byte gUnknown_80E22B4 -_08032DCC: - ldr r0, [r6] - ldr r2, _08032DE8 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0xC - bne _08032DDC - bl _080338B4 -_08032DDC: - cmp r0, 0xC - bhi _08032DEC - cmp r0, 0xB - beq _08032DF4 - bl _080338B4 - .align 2, 0 -_08032DE8: .4byte 0x00000524 -_08032DEC: - cmp r0, 0xE - bls _08032DF4 - bl _080338B4 -_08032DF4: - ldr r0, _08032DFC - bl _0803388E - .align 2, 0 -_08032DFC: .4byte gUnknown_80E29D0 -_08032E00: - ldr r0, _08032E08 - bl _0803388E - .align 2, 0 -_08032E08: .4byte gUnknown_80E2A0C -_08032E0C: - ldr r0, [r6] - movs r3, 0xEF - lsls r3, 2 - adds r0, r3 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r6] - movs r4, 0x86 - lsls r4, 2 - adds r0, r4 - b _0803343E -_08032E30: - ldr r0, _08032E38 - bl _0803388E - .align 2, 0 -_08032E38: .4byte gUnknown_80E2A1C -_08032E3C: - ldr r0, _08032E44 - bl _0803388E - .align 2, 0 -_08032E44: .4byte gUnknown_80E2A5C -_08032E48: - ldr r0, _08032E50 - bl _0803388E - .align 2, 0 -_08032E50: .4byte gUnknown_80E2A80 -_08032E54: - ldr r0, _08032E5C - bl _0803388E - .align 2, 0 -_08032E5C: .4byte gUnknown_80E2AA8 -_08032E60: - ldr r0, _08032E68 - bl _0803388E - .align 2, 0 -_08032E68: .4byte gUnknown_80E2AE4 -_08032E6C: - ldr r0, [r6] - ldr r2, _08032E88 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0xC - bne _08032E7C - bl _080338B4 -_08032E7C: - cmp r0, 0xC - bhi _08032E8C - cmp r0, 0xB - beq _08032E94 - bl _080338B4 - .align 2, 0 -_08032E88: .4byte 0x00000524 -_08032E8C: - cmp r0, 0xE - bls _08032E94 - bl _080338B4 -_08032E94: - ldr r0, _08032E9C - bl _0803388E - .align 2, 0 -_08032E9C: .4byte gUnknown_80E2B54 -_08032EA0: - ldr r0, _08032EA8 - bl _0803388E - .align 2, 0 -_08032EA8: .4byte gUnknown_80E2A0C -_08032EAC: - ldr r0, _08032EB4 - bl _0803388E - .align 2, 0 -_08032EB4: .4byte gUnknown_80E2B90 -_08032EB8: - ldr r0, _08032ED8 - ldr r3, _08032EDC - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0xF - bl sub_8014248 - bl _080338B4 - .align 2, 0 -_08032ED8: .4byte gUnknown_80E2BE0 -_08032EDC: .4byte gUnknown_80E23A8 -_08032EE0: - ldr r0, _08032EE8 - bl _0803388E - .align 2, 0 -_08032EE8: .4byte gUnknown_80E2C48 -_08032EEC: - bl sub_8023CE8 - cmp r0, 0 - beq _08032EF8 - bl sub_8023C60 -_08032EF8: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - movs r3, 0x9 - bl sub_8023868 - bl _080338B4 -_08032F16: - ldr r0, [r6] - movs r4, 0xD7 - lsls r4, 2 - adds r0, r4 - bl sub_8006518 - ldr r1, [r6] - movs r5, 0x87 - lsls r5, 2 - adds r0, r1, r5 - adds r1, r4 - ldr r3, _08032F4C - ldr r2, _08032F50 - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0 - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r2, 0x3 - bl SetMenuItems - bl sub_8023DA4 - bl _080336E2 - .align 2, 0 -_08032F4C: .4byte gUnknown_80E2334 -_08032F50: .4byte gUnknown_80E234C -_08032F54: - ldr r0, _08032F74 - ldr r3, _08032F78 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x10 - bl sub_8014248 - bl _080338B4 - .align 2, 0 -_08032F74: .4byte gUnknown_80E2C94 -_08032F78: .4byte gUnknown_80E22F0 -_08032F7C: - ldr r0, _08032F84 - ldr r3, _08032F88 - bl _080336FC - .align 2, 0 -_08032F84: .4byte gUnknown_80E2CD4 -_08032F88: .4byte gUnknown_80E22D0 -_08032F8C: - ldr r0, _08032F94 - bl _0803388E - .align 2, 0 -_08032F94: .4byte gUnknown_80E2CE8 -_08032F98: - bl sub_8030894 - cmp r0, 0 - beq _08032FA4 - bl _080338B4 -_08032FA4: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x4 - b _080336A6 -_08032FB6: - ldr r0, _08032FBC - ldr r3, _08032FC0 - b _080336FC - .align 2, 0 -_08032FBC: .4byte gUnknown_80E2D30 -_08032FC0: .4byte gUnknown_80E22B4 -_08032FC4: - ldr r0, _08032FCC - bl _0803388E - .align 2, 0 -_08032FCC: .4byte gUnknown_80E2D60 -_08032FD0: - ldr r0, _08032FD4 - b _080336FA - .align 2, 0 -_08032FD4: .4byte gUnknown_80E2D7C -_08032FD8: - ldr r0, _08032FDC - b _080336FA - .align 2, 0 -_08032FDC: .4byte gUnknown_80E2E20 -_08032FE0: - ldr r0, _08032FE4 - b _08033574 - .align 2, 0 -_08032FE4: .4byte gUnknown_80E2E54 -_08032FE8: - ldr r0, _08032FEC - b _08033574 - .align 2, 0 -_08032FEC: .4byte gUnknown_80E2EB4 -_08032FF0: - ldr r1, [r6] - movs r0, 0 - str r0, [r1, 0x44] - bl sub_8011830 - ldr r0, [r6] - ldr r0, [r0, 0x40] - bl sub_8037B28 - adds r4, r0, 0 - ldr r0, [r6] - str r4, [r0, 0x44] - cmp r4, 0 - beq _0803300E - b _080333DE -_0803300E: - ldr r1, [r0, 0x40] - cmp r1, 0x3 - beq _08033028 - cmp r1, 0x3 - bhi _0803301E - cmp r1, 0x2 - beq _0803304A - b _0803313C -_0803301E: - cmp r1, 0x4 - beq _080330B4 - cmp r1, 0x5 - beq _0803308E - b _0803313C -_08033028: - adds r0, 0x48 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - adds r0, 0x78 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r2, [r6] - ldr r0, [r2, 0x40] - adds r1, r2, 0 - adds r1, 0x48 - adds r2, 0x78 - b _08033134 -_0803304A: - adds r0, 0x48 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - adds r0, 0x78 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - movs r3, 0x86 - lsls r3, 2 - adds r0, r3 - ldrb r0, [r0] - bl sub_8095228 - ldr r1, [r6] - adds r1, 0x48 - ldm r0!, {r2,r4,r5} - stm r1!, {r2,r4,r5} - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldr r2, [r6] - ldr r0, [r2, 0x40] - adds r1, r2, 0 - adds r1, 0x48 - adds r2, 0x78 - b _08033134 -_0803308E: - adds r0, 0xA8 - movs r1, 0 - movs r2, 0x88 - bl MemoryFill8 - ldr r0, [r6] - movs r4, 0x98 - lsls r4, 1 - adds r0, r4 - movs r1, 0 - movs r2, 0x88 - bl MemoryFill8 - ldr r2, [r6] - ldr r0, [r2, 0x40] - adds r1, r2, 0 - adds r1, 0xA8 - adds r2, r4 - b _08033134 -_080330B4: - adds r0, 0xA8 - movs r1, 0 - movs r2, 0x88 - bl MemoryFill8 - ldr r0, [r6] - movs r5, 0x98 - lsls r5, 1 - adds r0, r5 - movs r1, 0 - movs r2, 0x88 - bl MemoryFill8 - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0xE0 - strh r4, [r0] - movs r2, 0xB4 - lsls r2, 1 - adds r0, r1, r2 - strh r4, [r0] - movs r3, 0x86 - lsls r3, 2 - adds r0, r1, r3 - ldrb r0, [r0] - bl sub_8095228 - ldr r1, [r6] - adds r1, 0xA8 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r2, [r6] - movs r4, 0xA7 - lsls r4, 3 - adds r3, r2, r4 - movs r0, 0 - ldrsh r1, [r3, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0803312A - adds r0, r2, 0 - adds r0, 0xD8 - ldr r1, _08033188 - ldr r1, [r1] - movs r2, 0 - ldrsh r3, [r3, r2] - movs r2, 0x58 - muls r2, r3 - adds r1, r2 - movs r2, 0x58 - bl memcpy -_0803312A: - ldr r2, [r6] - ldr r0, [r2, 0x40] - adds r1, r2, 0 - adds r1, 0xA8 - adds r2, r5 -_08033134: - bl sub_8037D64 - ldr r1, [r6] - str r0, [r1, 0x44] -_0803313C: - ldr r4, _0803318C - ldr r2, [r4] - ldr r0, [r2, 0x44] - cmp r0, 0 - beq _08033148 - b _080333DE -_08033148: - ldr r0, [r2, 0x40] - cmp r0, 0x2 - bcs _08033150 - b _080333DE -_08033150: - cmp r0, 0x3 - bls _08033190 - cmp r0, 0x5 - bls _0803315A - b _080333DE -_0803315A: - adds r1, r2, 0 - adds r1, 0xA8 - movs r3, 0x98 - lsls r3, 1 - adds r2, r3 - bl sub_80381F4 - ldr r1, [r4] - str r0, [r1, 0x44] - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - beq _080331C0 - ldr r0, [r4] - movs r4, 0x84 - lsls r4, 3 - adds r1, r0, r4 - movs r5, 0xA0 - lsls r5, 1 - adds r0, r5 - b _080333DA - .align 2, 0 -_08033188: .4byte gUnknown_203B45C -_0803318C: .4byte gUnknown_203B33C -_08033190: - adds r1, r2, 0 - adds r1, 0x48 - adds r2, 0x78 - bl sub_80381F4 - ldr r1, [r4] - str r0, [r1, 0x44] - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - beq _080331B4 - ldr r0, [r4] - movs r2, 0x84 - lsls r2, 3 - adds r1, r0, r2 - adds r0, 0x88 - b _080333DA -_080331B4: - ldr r0, [r4] - movs r3, 0x84 - lsls r3, 3 - adds r1, r0, r3 - ldr r0, [r0, 0x58] - b _080333DC -_080331C0: - ldr r0, [r4] - movs r4, 0x84 - lsls r4, 3 - adds r1, r0, r4 - adds r0, 0xB8 - b _080333DA -_080331CC: - ldr r0, _080331D0 - b _0803388E - .align 2, 0 -_080331D0: .4byte gUnknown_80E2F14 -_080331D4: - ldr r0, _080331D8 - b _0803388E - .align 2, 0 -_080331D8: .4byte gUnknown_80E2F44 -_080331DC: - bl sub_8030894 - cmp r0, 0 - beq _080331E6 - b _080338B4 -_080331E6: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - b _080336A6 -_080331F8: - ldr r0, _080331FC - b _080336FA - .align 2, 0 -_080331FC: .4byte gUnknown_80E2F78 -_08033200: - ldr r0, _08033204 - b _0803388E - .align 2, 0 -_08033204: .4byte gUnknown_80E2FA0 -_08033208: - ldr r0, [r6] - ldr r5, _08033220 - adds r0, r5 - ldr r0, [r0] - cmp r0, 0xC - bne _08033216 - b _080338B4 -_08033216: - cmp r0, 0xC - bhi _08033224 - cmp r0, 0xB - beq _0803322A - b _080338B4 - .align 2, 0 -_08033220: .4byte 0x00000524 -_08033224: - cmp r0, 0xE - bls _0803322A - b _080338B4 -_0803322A: - ldr r0, _08033230 - b _0803388E - .align 2, 0 -_08033230: .4byte gUnknown_80E2FEC -_08033234: - ldr r0, _08033238 - b _0803388E - .align 2, 0 -_08033238: .4byte gUnknown_80E3030 -_0803323C: - ldr r0, _08033240 - b _0803388E - .align 2, 0 -_08033240: .4byte gUnknown_80E3078 -_08033244: - ldr r0, [r6] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - b _080333F4 -_0803324E: - ldr r0, _08033254 - ldr r3, _08033258 - b _080336FC - .align 2, 0 -_08033254: .4byte gUnknown_80E30A4 -_08033258: .4byte gUnknown_80E2458 -_0803325C: - ldr r0, _08033260 - b _0803388E - .align 2, 0 -_08033260: .4byte gUnknown_80E30D0 -_08033264: - ldr r0, [r6] - movs r4, 0xD7 - lsls r4, 2 - adds r0, r4 - bl sub_8006518 - ldr r1, [r6] - movs r5, 0x87 - lsls r5, 2 - adds r0, r1, r5 - adds r1, r4 - ldr r3, _08033280 - ldr r2, _08033284 - b _080336CC - .align 2, 0 -_08033280: .4byte gUnknown_80E231C -_08033284: .4byte gUnknown_80E2408 -_08033288: - bl sub_801D008 - cmp r0, 0 - beq _08033292 - b _080338B4 -_08033292: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, _080332B4 - str r0, [sp, 0x64] - add r2, sp, 0x64 - movs r0, 0 - movs r1, 0x1 - movs r3, 0x9 - bl sub_801C8C4 - b _080338B4 - .align 2, 0 -_080332B4: .4byte 0x00020003 -_080332B8: - ldr r0, [r6] - movs r4, 0xD7 - lsls r4, 2 - adds r0, r4 - bl sub_8006518 - ldr r1, [r6] - movs r5, 0x87 - lsls r5, 2 - adds r0, r1, r5 - adds r1, r4 - ldr r3, _080332EC - ldr r2, _080332F0 - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0 - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r2, 0x3 - bl SetMenuItems - bl sub_801CCD8 - b _080336E2 - .align 2, 0 -_080332EC: .4byte gUnknown_80E23F0 -_080332F0: .4byte gUnknown_80E2408 -_080332F4: - ldr r1, [r6] - movs r0, 0 - str r0, [r1, 0x44] - bl sub_8011830 - ldr r0, [r6] - ldr r0, [r0, 0x40] - bl sub_8037B28 - ldr r1, [r6] - str r0, [r1, 0x44] - cmp r0, 0 - bne _080333DE - ldr r0, [r1, 0x40] - cmp r0, 0x6 - beq _0803331A - cmp r0, 0x7 - beq _08033358 - b _08033388 -_0803331A: - movs r4, 0xDC - lsls r4, 1 - adds r0, r1, r4 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - movs r2, 0x86 - lsls r2, 2 - adds r0, r2 - ldrb r0, [r0] - bl sub_8095228 - ldr r1, [r6] - adds r1, r4 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldr r2, [r6] - ldr r0, [r2, 0x40] - adds r4, r2, r4 - movs r3, 0xF4 - lsls r3, 1 - adds r2, r3 - b _0803337E -_08033358: - movs r4, 0xDC - lsls r4, 1 - adds r0, r1, r4 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - movs r5, 0xF4 - lsls r5, 1 - adds r0, r5 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r2, [r6] - ldr r0, [r2, 0x40] - adds r4, r2, r4 - adds r2, r5 -_0803337E: - adds r1, r4, 0 - bl sub_8037D64 - ldr r1, [r6] - str r0, [r1, 0x44] -_08033388: - ldr r4, _080333C8 - ldr r2, [r4] - ldr r0, [r2, 0x44] - cmp r0, 0 - bne _080333DE - ldr r0, [r2, 0x40] - cmp r0, 0x7 - bhi _080333DE - cmp r0, 0x6 - bcc _080333DE - movs r5, 0xDC - lsls r5, 1 - adds r1, r2, r5 - movs r3, 0xF4 - lsls r3, 1 - adds r2, r3 - bl sub_80381F4 - ldr r1, [r4] - str r0, [r1, 0x44] - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - beq _080333CC - ldr r0, [r4] - movs r4, 0x84 - lsls r4, 3 - adds r1, r0, r4 - adds r5, 0x40 - adds r0, r5 - b _080333DA - .align 2, 0 -_080333C8: .4byte gUnknown_203B33C -_080333CC: - ldr r0, [r4] - movs r2, 0x84 - lsls r2, 3 - adds r1, r0, r2 - movs r3, 0xE4 - lsls r3, 1 - adds r0, r3 -_080333DA: - ldr r0, [r0] -_080333DC: - str r0, [r1] -_080333DE: - bl sub_8011854 - b _080338B4 -_080333E4: - ldr r0, _080333E8 - b _0803388E - .align 2, 0 -_080333E8: .4byte gUnknown_80E311C -_080333EC: - ldr r0, [r6] - movs r4, 0xEF - lsls r4, 2 - adds r0, r4 -_080333F4: - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, [r6] - adds r1, 0x8 - movs r0, 0x4 - bl sub_80151C0 - b _080338B4 -_08033412: - ldr r0, _08033418 - b _0803388E - .align 2, 0 -_08033418: .4byte gUnknown_80E314C -_0803341C: - ldr r0, [r6] - movs r5, 0xEF - lsls r5, 2 - adds r0, r5 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r6] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 -_0803343E: - ldrb r0, [r0] - movs r1, 0 - bl sub_8031D70 - b _080338B4 -_08033448: - ldr r0, _0803344C - b _0803388E - .align 2, 0 -_0803344C: .4byte gUnknown_80E317C -_08033450: - ldr r0, _08033454 - b _0803388E - .align 2, 0 -_08033454: .4byte gUnknown_80E319C -_08033458: - ldr r0, _0803345C - b _0803388E - .align 2, 0 -_0803345C: .4byte gUnknown_80E317C -_08033460: - ldr r0, _08033464 - b _0803388E - .align 2, 0 -_08033464: .4byte gUnknown_80E31D8 -_08033468: - ldr r0, _0803346C - b _0803388E - .align 2, 0 -_0803346C: .4byte gUnknown_80E31FC -_08033470: - ldr r0, [r6] - ldr r2, _08033488 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0xC - bne _0803347E - b _080338B4 -_0803347E: - cmp r0, 0xC - bhi _0803348C - cmp r0, 0xB - beq _08033492 - b _080338B4 - .align 2, 0 -_08033488: .4byte 0x00000524 -_0803348C: - cmp r0, 0xE - bls _08033492 - b _080338B4 -_08033492: - ldr r0, _08033498 - b _0803388E - .align 2, 0 -_08033498: .4byte gUnknown_80E3220 -_0803349C: - movs r0, 0x98 - lsls r0, 1 - bl sub_808D994 - adds r1, r0, 0 - ldr r4, _080334F8 - ldr r0, [r4] - ldr r3, _080334FC - adds r0, r3 - bl strcpy - ldr r1, [r4] - movs r5, 0xAA - lsls r5, 3 - adds r0, r1, r5 - movs r2, 0 - strh r2, [r0] - ldr r0, _08033500 - adds r1, r0 - movs r0, 0x2 - strb r0, [r1] - ldr r0, [r4] - ldr r3, _08033504 - adds r1, r0, r3 - str r2, [r1] - movs r5, 0x84 - lsls r5, 3 - adds r0, r5 - ldr r1, [r0] - movs r0, 0x6 - bl sub_809539C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - adds r2, r0, 0 - adds r0, 0x22 - ldrb r1, [r0] - cmp r1, 0 - beq _08033508 - ldr r0, [r4] - movs r3, 0xAB - lsls r3, 3 - adds r0, r3 - b _08033512 - .align 2, 0 -_080334F8: .4byte gUnknown_203B33C -_080334FC: .4byte 0x0000053c -_08033500: .4byte 0x00000552 -_08033504: .4byte 0x00000554 -_08033508: - ldr r0, [r4] - movs r4, 0xAB - lsls r4, 3 - adds r0, r4 - movs r1, 0 -_08033512: - strb r1, [r0] - ldr r4, _08033558 - ldr r0, [r4] - ldr r5, _0803355C - adds r0, r5 - movs r5, 0 - movs r1, 0x1 - strb r1, [r0] - adds r0, r2, 0x4 - movs r1, 0 - bl sub_803C200 - ldr r1, [r4] - movs r3, 0xAC - lsls r3, 3 - adds r2, r1, r3 - str r0, [r2] - ldr r0, _08033560 - adds r1, r0 - strb r5, [r1] - ldr r0, [r4] - ldr r1, _08033564 - adds r0, r1 - strb r5, [r0] - ldr r0, [r4] - ldr r2, _08033568 - adds r0, r2 - strb r5, [r0] - ldr r0, [r4] - subs r3, 0x24 - adds r0, r3 - movs r1, 0 - bl sub_802F204 - b _080338B4 - .align 2, 0 -_08033558: .4byte gUnknown_203B33C -_0803355C: .4byte 0x0000055b -_08033560: .4byte 0x00000559 -_08033564: .4byte 0x0000055a -_08033568: .4byte 0x0000055c -_0803356C: - movs r0, 0 - bl nullsub_23 - ldr r0, _08033580 -_08033574: - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_80141B4 - b _080338B4 - .align 2, 0 -_08033580: .4byte gUnknown_80E2DD0 -_08033584: - ldr r0, [r6] - ldr r4, _0803359C - adds r0, r4 - ldr r0, [r0] - cmp r0, 0xC - bne _08033592 - b _080338B4 -_08033592: - cmp r0, 0xC - bhi _080335A0 - cmp r0, 0xB - beq _080335A6 - b _080338B4 - .align 2, 0 -_0803359C: .4byte 0x00000524 -_080335A0: - cmp r0, 0xE - bls _080335A6 - b _080338B4 -_080335A6: - ldr r0, _080335AC - b _0803388E - .align 2, 0 -_080335AC: .4byte gUnknown_80E3248 -_080335B0: - ldr r0, _080335B4 - b _0803388E - .align 2, 0 -_080335B4: .4byte gUnknown_80E3288 -_080335B8: - ldr r0, _080335BC - b _080336FA - .align 2, 0 -_080335BC: .4byte gUnknown_80E2D7C -_080335C0: - bl sub_808D33C - adds r1, r0, 0 - adds r1, 0x4C - add r0, sp, 0x14 - movs r2, 0xA - bl sub_80922B4 - ldr r5, _080335E8 - ldr r0, [r5] - ldr r4, _080335EC - adds r0, r4 - ldr r1, _080335F0 - add r2, sp, 0x14 - bl sub_800D158 - ldr r0, [r5] - adds r0, r4 - b _0803388E - .align 2, 0 -_080335E8: .4byte gUnknown_203B33C -_080335EC: .4byte 0x00000424 -_080335F0: .4byte gUnknown_80E32C4 -_080335F4: - ldr r0, _080335FC - ldr r3, _08033600 - b _080336FC - .align 2, 0 -_080335FC: .4byte gUnknown_80E331C -_08033600: .4byte gUnknown_80E24D8 -_08033604: - ldr r0, _08033608 - b _0803388E - .align 2, 0 -_08033608: .4byte gUnknown_80E317C -_0803360C: - ldr r0, _08033610 - b _0803388E - .align 2, 0 -_08033610: .4byte gUnknown_80E2A0C -_08033614: - ldr r0, _08033618 - b _0803388E - .align 2, 0 -_08033618: .4byte gUnknown_80E3378 -_0803361C: - ldr r0, _0803363C - ldr r3, _08033640 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x16 - bl sub_8014248 - b _080338B4 - .align 2, 0 -_0803363C: .4byte gUnknown_80E339C -_08033640: .4byte gUnknown_80E24B0 -_08033644: - ldr r0, _08033664 - ldr r3, _08033668 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x15 - bl sub_8014248 - b _080338B4 - .align 2, 0 -_08033664: .4byte gUnknown_80E33D8 -_08033668: .4byte gUnknown_80E2470 -_0803366C: - ldr r0, _08033670 - b _0803388E - .align 2, 0 -_08033670: .4byte gUnknown_80E3430 -_08033674: - ldr r0, _0803367C - ldr r3, _08033680 - b _080336FC - .align 2, 0 -_0803367C: .4byte gUnknown_80E34B0 -_08033680: .4byte gUnknown_80E2440 -_08033684: - ldr r0, _08033688 - b _0803388E - .align 2, 0 -_08033688: .4byte gUnknown_80E34F0 -_0803368C: - bl sub_8030894 - cmp r0, 0 - beq _08033696 - b _080338B4 -_08033696: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x5 -_080336A6: - movs r1, 0 - movs r2, 0 - movs r3, 0x6 - bl sub_80306A8 - b _080338B4 -_080336B2: - ldr r0, [r6] - movs r4, 0xD7 - lsls r4, 2 - adds r0, r4 - bl sub_8006518 - ldr r1, [r6] - movs r5, 0x87 - lsls r5, 2 - adds r0, r1, r5 - adds r1, r4 - ldr r3, _080336F0 - ldr r2, _080336F4 -_080336CC: - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0 - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r2, 0x3 - bl SetMenuItems - bl sub_803092C -_080336E2: - ldr r0, [r6] - adds r0, r5 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - b _080338B4 - .align 2, 0 -_080336F0: .4byte gUnknown_80E231C -_080336F4: .4byte gUnknown_80E234C -_080336F8: - ldr r0, _08033718 -_080336FA: - ldr r3, _0803371C -_080336FC: - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x6 - bl sub_8014248 - b _080338B4 - .align 2, 0 -_08033718: .4byte gUnknown_80E352C -_0803371C: .4byte gUnknown_80E2290 -_08033720: - ldr r0, _08033724 - b _0803388E - .align 2, 0 -_08033724: .4byte gUnknown_80E355C -_08033728: - ldr r0, _0803372C - b _0803388E - .align 2, 0 -_0803372C: .4byte gUnknown_80E35AC -_08033730: - ldr r0, _08033734 - b _0803388E - .align 2, 0 -_08033734: .4byte gUnknown_80E35E8 -_08033738: - ldr r0, [r6] - ldr r0, [r0, 0x40] - cmp r0, 0x6 - bne _08033748 - ldr r0, _08033744 - b _0803374A - .align 2, 0 -_08033744: .4byte gUnknown_80E360C -_08033748: - ldr r0, _08033768 -_0803374A: - ldr r3, _0803376C - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0xB - bl sub_8014248 - b _080338B4 - .align 2, 0 -_08033768: .4byte gUnknown_80E3644 -_0803376C: .4byte gUnknown_80E236C -_08033770: - ldr r0, _08033780 - ldr r1, [r6] - ldr r5, _08033784 - adds r1, r5 - ldr r2, [r1] - ldr r3, _08033788 - b _08033858 - .align 2, 0 -_08033780: .4byte gUnknown_80E367C -_08033784: .4byte 0x00000564 -_08033788: .4byte gUnknown_80E25B4 -_0803378C: - ldr r0, [r6] - ldr r1, _080337A4 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x24 - beq _080337BC - cmp r0, 0x24 - bgt _080337A8 - cmp r0, 0x23 - beq _080337B2 - b _080338B4 - .align 2, 0 -_080337A4: .4byte 0x00000564 -_080337A8: - cmp r0, 0x25 - beq _080337C4 - cmp r0, 0x26 - beq _080337CC - b _080338B4 -_080337B2: - ldr r0, _080337B8 - b _0803388E - .align 2, 0 -_080337B8: .4byte gUnknown_80E3690 -_080337BC: - ldr r0, _080337C0 - b _0803388E - .align 2, 0 -_080337C0: .4byte gUnknown_80E3818 -_080337C4: - ldr r0, _080337C8 - b _0803388E - .align 2, 0 -_080337C8: .4byte gUnknown_80E3998 -_080337CC: - ldr r0, _080337D0 - b _0803388E - .align 2, 0 -_080337D0: .4byte gUnknown_80E3B1C -_080337D4: - ldr r0, _080337E4 - ldr r1, [r6] - ldr r2, _080337E8 - adds r1, r2 - ldr r2, [r1] - ldr r3, _080337EC - b _08033858 - .align 2, 0 -_080337E4: .4byte gUnknown_80E367C -_080337E8: .4byte 0x00000564 -_080337EC: .4byte gUnknown_80E2554 -_080337F0: - ldr r0, [r6] - ldr r3, _08033808 - adds r0, r3 - ldr r0, [r0] - subs r0, 0x1E - cmp r0, 0x4 - bhi _080338B4 - lsls r0, 2 - ldr r1, _0803380C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08033808: .4byte 0x00000564 -_0803380C: .4byte _08033810 - .align 2, 0 -_08033810: - .4byte _08033824 - .4byte _0803382C - .4byte _0803383C - .4byte _08033834 - .4byte _08033844 -_08033824: - ldr r0, _08033828 - b _0803388E - .align 2, 0 -_08033828: .4byte gUnknown_80E3BF8 -_0803382C: - ldr r0, _08033830 - b _0803388E - .align 2, 0 -_08033830: .4byte gUnknown_80E3DE4 -_08033834: - ldr r0, _08033838 - b _0803388E - .align 2, 0 -_08033838: .4byte gUnknown_80E3E98 -_0803383C: - ldr r0, _08033840 - b _0803388E - .align 2, 0 -_08033840: .4byte gUnknown_80E4014 -_08033844: - ldr r0, _08033848 - b _0803388E - .align 2, 0 -_08033848: .4byte gUnknown_80E4130 -_0803384C: - ldr r0, _08033870 - ldr r1, [r6] - ldr r4, _08033874 - adds r1, r4 - ldr r2, [r1] - ldr r3, _08033878 -_08033858: - movs r4, 0 - str r4, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] -_08033864: - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - b _080338B4 - .align 2, 0 -_08033870: .4byte gUnknown_80E367C -_08033874: .4byte 0x00000564 -_08033878: .4byte gUnknown_80E24F8 -_0803387C: - ldr r0, [r6] - ldr r5, _0803389C - adds r0, r5 - ldr r0, [r0] - cmp r0, 0x1A - beq _080338A8 - cmp r0, 0x1D - bne _080338B4 - ldr r0, _080338A0 -_0803388E: - ldr r3, _080338A4 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _080338B4 - .align 2, 0 -_0803389C: .4byte 0x00000564 -_080338A0: .4byte gUnknown_80E41DC -_080338A4: .4byte 0x00000101 -_080338A8: - ldr r0, _080338BC - ldr r3, _080338C0 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_080338B4: - add sp, 0x68 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080338BC: .4byte gUnknown_80E4314 -_080338C0: .4byte 0x00000101 - thumb_func_end sub_8032828 - - thumb_func_start sub_80338C4 -sub_80338C4: - push {lr} - ldr r1, _080338D8 - ldr r1, [r1] - str r0, [r1] - bl nullsub_40 - bl sub_8032828 - pop {r0} - bx r0 - .align 2, 0 -_080338D8: .4byte gUnknown_203B33C - thumb_func_end sub_80338C4 - - thumb_func_start sub_80338DC -sub_80338DC: - push {lr} - cmp r0, 0x10 - bls _080338E4 - b _080339BC -_080338E4: - lsls r0, 2 - ldr r1, _080338F0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080338F0: .4byte _080338F4 - .align 2, 0 -_080338F4: - .4byte _080339BC - .4byte _08033998 - .4byte _08033940 - .4byte _08033938 - .4byte _08033948 - .4byte _08033998 - .4byte _08033950 - .4byte _08033958 - .4byte _08033960 - .4byte _08033968 - .4byte _08033970 - .4byte _08033978 - .4byte _08033980 - .4byte _08033990 - .4byte _08033998 - .4byte _080339B0 - .4byte _08033988 -_08033938: - ldr r0, _0803393C - b _0803399A - .align 2, 0 -_0803393C: .4byte gUnknown_80E44A4 -_08033940: - ldr r0, _08033944 - b _0803399A - .align 2, 0 -_08033944: .4byte gUnknown_80E4500 -_08033948: - ldr r0, _0803394C - b _0803399A - .align 2, 0 -_0803394C: .4byte gUnknown_80E4550 -_08033950: - ldr r0, _08033954 - b _0803399A - .align 2, 0 -_08033954: .4byte gUnknown_80E45B4 -_08033958: - ldr r0, _0803395C - b _0803399A - .align 2, 0 -_0803395C: .4byte gUnknown_80E460C -_08033960: - ldr r0, _08033964 - b _0803399A - .align 2, 0 -_08033964: .4byte gUnknown_80E4650 -_08033968: - ldr r0, _0803396C - b _0803399A - .align 2, 0 -_0803396C: .4byte gUnknown_80E468C -_08033970: - ldr r0, _08033974 - b _0803399A - .align 2, 0 -_08033974: .4byte gUnknown_80E46C8 -_08033978: - ldr r0, _0803397C - b _0803399A - .align 2, 0 -_0803397C: .4byte gUnknown_80E4704 -_08033980: - ldr r0, _08033984 - b _0803399A - .align 2, 0 -_08033984: .4byte gUnknown_80E4744 -_08033988: - ldr r0, _0803398C - b _0803399A - .align 2, 0 -_0803398C: .4byte gUnknown_80E4788 -_08033990: - ldr r0, _08033994 - b _0803399A - .align 2, 0 -_08033994: .4byte gUnknown_80E47D8 -_08033998: - ldr r0, _080339A8 -_0803399A: - ldr r3, _080339AC - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _080339BC - .align 2, 0 -_080339A8: .4byte gUnknown_80E4480 -_080339AC: .4byte 0x00000101 -_080339B0: - ldr r0, _080339C0 - ldr r3, _080339C4 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_080339BC: - pop {r0} - bx r0 - .align 2, 0 -_080339C0: .4byte gUnknown_80E482C -_080339C4: .4byte 0x00000101 - thumb_func_end sub_80338DC - - thumb_func_start sub_80339C8 -sub_80339C8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08033A24 - ldr r0, _080339F4 - ldr r0, [r0] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - ldr r1, _080339F8 - strh r1, [r0] - ldr r0, [sp] - cmp r0, 0x1 - beq _08033A0E - cmp r0, 0x1 - bgt _080339FC - cmp r0, 0 - beq _08033A06 - b _08033A24 - .align 2, 0 -_080339F4: .4byte gUnknown_203B33C -_080339F8: .4byte 0x0000ffff -_080339FC: - cmp r0, 0x8 - beq _08033A1E - cmp r0, 0x17 - beq _08033A16 - b _08033A24 -_08033A06: - movs r0, 0x3 - bl sub_80338C4 - b _08033A24 -_08033A0E: - movs r0, 0x4 - bl sub_80338C4 - b _08033A24 -_08033A16: - movs r0, 0x78 - bl sub_80338C4 - b _08033A24 -_08033A1E: - movs r0, 0x2 - bl sub_80338C4 -_08033A24: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80339C8 - - thumb_func_start sub_8033A2C -sub_8033A2C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - beq _08033A3C - b _08033B86 -_08033A3C: - ldr r2, _08033A58 - ldr r1, [r2] - movs r0, 0x8 - str r0, [r1, 0x40] - ldr r0, [sp] - subs r0, 0x3 - cmp r0, 0x11 - bls _08033A4E - b _08033B86 -_08033A4E: - lsls r0, 2 - ldr r1, _08033A5C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08033A58: .4byte gUnknown_203B33C -_08033A5C: .4byte _08033A60 - .align 2, 0 -_08033A60: - .4byte _08033ACA - .4byte _08033AEC - .4byte _08033B86 - .4byte _08033B86 - .4byte _08033B86 - .4byte _08033B80 - .4byte _08033B86 - .4byte _08033B86 - .4byte _08033B86 - .4byte _08033B86 - .4byte _08033B86 - .4byte _08033B86 - .4byte _08033B86 - .4byte _08033B86 - .4byte _08033AA8 - .4byte _08033B14 - .4byte _08033B3E - .4byte _08033B68 -_08033AA8: - ldr r0, [r2] - movs r1, 0x2 - str r1, [r0, 0x40] - movs r1, 0xA5 - lsls r1, 3 - adds r0, r1 - movs r1, 0x11 - str r1, [r0] - movs r0, 0x1 - bl sub_8095324 - cmp r0, 0 - beq _08033B0C - movs r0, 0x31 - bl sub_80338C4 - b _08033B86 -_08033ACA: - ldr r0, [r2] - movs r1, 0x3 - str r1, [r0, 0x40] - movs r2, 0xA5 - lsls r2, 3 - adds r0, r2 - str r1, [r0] - bl sub_8095190 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _08033B36 - movs r0, 0xF - bl sub_80338C4 - b _08033B86 -_08033AEC: - ldr r0, [r2] - movs r1, 0x4 - str r1, [r0, 0x40] - movs r2, 0xA5 - lsls r2, 3 - adds r0, r2 - str r1, [r0] - movs r0, 0x4 - bl sub_8095324 - cmp r0, 0 - beq _08033B0C - movs r0, 0x1C - bl sub_80338C4 - b _08033B86 -_08033B0C: - movs r0, 0x22 - bl sub_80338C4 - b _08033B86 -_08033B14: - ldr r0, [r2] - movs r1, 0x5 - str r1, [r0, 0x40] - movs r1, 0xA5 - lsls r1, 3 - adds r0, r1 - movs r1, 0x12 - str r1, [r0] - movs r0, 0x5 - bl sub_8095324 - cmp r0, 0 - beq _08033B36 - movs r0, 0x3D - bl sub_80338C4 - b _08033B86 -_08033B36: - movs r0, 0xE - bl sub_80338C4 - b _08033B86 -_08033B3E: - ldr r0, [r2] - movs r1, 0x6 - str r1, [r0, 0x40] - movs r2, 0xA5 - lsls r2, 3 - adds r0, r2 - movs r1, 0x13 - str r1, [r0] - movs r0, 0x5 - bl sub_8095324 - cmp r0, 0 - bne _08033B60 - movs r0, 0x51 - bl sub_80338C4 - b _08033B86 -_08033B60: - movs r0, 0x5B - bl sub_80338C4 - b _08033B86 -_08033B68: - ldr r0, [r2] - movs r1, 0x7 - str r1, [r0, 0x40] - movs r1, 0xA5 - lsls r1, 3 - adds r0, r1 - movs r1, 0x14 - str r1, [r0] - movs r0, 0x52 - bl sub_80338C4 - b _08033B86 -_08033B80: - movs r0, 0x1 - bl sub_80338C4 -_08033B86: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8033A2C - - thumb_func_start sub_8033B8C -sub_8033B8C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08033C4C - ldr r2, [sp] - cmp r2, 0xC - bgt _08033BAA - cmp r2, 0xB - bge _08033BB0 - cmp r2, 0x8 - beq _08033C46 - b _08033C4C -_08033BAA: - cmp r2, 0xD - beq _08033BF4 - b _08033C4C -_08033BB0: - ldr r0, _08033BD4 - ldr r0, [r0] - ldr r1, _08033BD8 - adds r2, r0, r1 - movs r1, 0xB - str r1, [r2] - movs r3, 0xA5 - lsls r3, 3 - adds r0, r3 - ldr r0, [r0] - cmp r0, 0x4 - beq _08033BEC - cmp r0, 0x4 - bhi _08033BDC - cmp r0, 0x3 - beq _08033BE4 - b _08033C4C - .align 2, 0 -_08033BD4: .4byte gUnknown_203B33C -_08033BD8: .4byte 0x00000524 -_08033BDC: - cmp r0, 0x12 - bhi _08033C4C - cmp r0, 0x11 - bcc _08033C4C -_08033BE4: - movs r0, 0x5 - bl sub_80338C4 - b _08033C4C -_08033BEC: - movs r0, 0x23 - bl sub_80338C4 - b _08033C4C -_08033BF4: - ldr r0, _08033C14 - ldr r0, [r0] - ldr r3, _08033C18 - adds r1, r0, r3 - str r2, [r1] - movs r1, 0xA5 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x4 - beq _08033C3E - cmp r0, 0x4 - bhi _08033C1C - cmp r0, 0x3 - beq _08033C26 - b _08033C4C - .align 2, 0 -_08033C14: .4byte gUnknown_203B33C -_08033C18: .4byte 0x00000524 -_08033C1C: - cmp r0, 0x11 - beq _08033C2E - cmp r0, 0x12 - beq _08033C36 - b _08033C4C -_08033C26: - movs r0, 0x19 - bl sub_80338C4 - b _08033C4C -_08033C2E: - movs r0, 0x39 - bl sub_80338C4 - b _08033C4C -_08033C36: - movs r0, 0x43 - bl sub_80338C4 - b _08033C4C -_08033C3E: - movs r0, 0x2D - bl sub_80338C4 - b _08033C4C -_08033C46: - movs r0, 0x1 - bl sub_80338C4 -_08033C4C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8033B8C - - thumb_func_start sub_8033C54 -sub_8033C54: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08033CA2 - ldr r0, [sp] - cmp r0, 0x6 - beq _08033C6E - cmp r0, 0x8 - beq _08033C9C - b _08033CA2 -_08033C6E: - ldr r0, _08033C88 - ldr r0, [r0] - movs r1, 0xA5 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x4 - beq _08033C94 - cmp r0, 0x4 - bhi _08033C8C - cmp r0, 0x3 - beq _08033C94 - b _08033CA2 - .align 2, 0 -_08033C88: .4byte gUnknown_203B33C -_08033C8C: - cmp r0, 0x11 - beq _08033C94 - cmp r0, 0x12 - bne _08033CA2 -_08033C94: - movs r0, 0xD - bl sub_80338C4 - b _08033CA2 -_08033C9C: - movs r0, 0x1 - bl sub_80338C4 -_08033CA2: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8033C54 - - thumb_func_start nullsub_41 -nullsub_41: - bx lr - thumb_func_end nullsub_41 - - thumb_func_start sub_8033CAC -sub_8033CAC: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08033D40 - ldr r4, _08033CDC - ldr r1, [r4] - ldr r0, [r1, 0x44] - cmp r0, 0 - bne _08033D36 - movs r2, 0xA5 - lsls r2, 3 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, 0x4 - beq _08033D2E - cmp r0, 0x4 - bhi _08033CE0 - cmp r0, 0x3 - beq _08033CEA - b _08033D40 - .align 2, 0 -_08033CDC: .4byte gUnknown_203B33C -_08033CE0: - cmp r0, 0x11 - beq _08033CF2 - cmp r0, 0x12 - beq _08033CFA - b _08033D40 -_08033CEA: - movs r0, 0x16 - bl sub_80338C4 - b _08033D40 -_08033CF2: - movs r0, 0x37 - bl sub_80338C4 - b _08033D40 -_08033CFA: - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - beq _08033D12 - ldr r0, [r4] - movs r1, 0xB4 - lsls r1, 1 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - b _08033D1A -_08033D12: - ldr r0, [r4] - adds r0, 0xE0 - movs r1, 0 - ldrsh r0, [r0, r1] -_08033D1A: - cmp r0, 0 - beq _08033D26 - movs r0, 0x3F - bl sub_80338C4 - b _08033D40 -_08033D26: - movs r0, 0x40 - bl sub_80338C4 - b _08033D40 -_08033D2E: - movs r0, 0x2B - bl sub_80338C4 - b _08033D40 -_08033D36: - bl sub_80338DC - movs r0, 0x8 - bl sub_80338C4 -_08033D40: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8033CAC - - thumb_func_start sub_8033D48 -sub_8033D48: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08033D5C - movs r0, 0x1 - bl sub_80338C4 -_08033D5C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8033D48 - - thumb_func_start nullsub_42 -nullsub_42: - bx lr - thumb_func_end nullsub_42 - - thumb_func_start nullsub_43 -nullsub_43: - bx lr - thumb_func_end nullsub_43 - - thumb_func_start nullsub_44 -nullsub_44: - bx lr - thumb_func_end nullsub_44 - - thumb_func_start nullsub_45 -nullsub_45: - bx lr - thumb_func_end nullsub_45 - - thumb_func_start sub_8033D74 -sub_8033D74: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08033D8E - movs r0, 0x17 - bl sub_80338C4 - movs r0, 0 - bl sub_8012574 -_08033D8E: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8033D74 - - thumb_func_start sub_8033D94 -sub_8033D94: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08033DB6 - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08033DB6 - bl sub_8012750 - movs r0, 0x18 - bl sub_80338C4 -_08033DB6: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8033D94 - - thumb_func_start sub_8033DBC -sub_8033DBC: - push {r4,lr} - sub sp, 0x44 - bl sub_80154F0 - adds r4, r0, 0 - add r0, sp, 0x14 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - cmp r4, 0x2 - bne _08033DD6 - b _08033F38 -_08033DD6: - cmp r4, 0x3 - beq _08033DDC - b _08033F58 -_08033DDC: - ldr r2, _08033DF4 - ldr r1, _08033DF8 - ldr r0, [r1] - movs r3, 0xA5 - lsls r3, 3 - adds r0, r3 - ldr r0, [r0] - cmp r0, 0x3 - beq _08033DFC - cmp r0, 0x12 - beq _08033E00 - b _08033E02 - .align 2, 0 -_08033DF4: .4byte 0x0000ffdc -_08033DF8: .4byte gUnknown_203B33C -_08033DFC: - movs r2, 0x1C - b _08033E02 -_08033E00: - movs r2, 0x1E -_08033E02: - ldr r1, [r1] - adds r1, 0x8 - adds r0, r2, 0 - add r2, sp, 0x14 - bl sub_8039068 - subs r0, 0x7 - cmp r0, 0x11 - bls _08033E16 - b _08033F2E -_08033E16: - lsls r0, 2 - ldr r1, _08033E20 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08033E20: .4byte _08033E24 - .align 2, 0 -_08033E24: - .4byte _08033EA0 - .4byte _08033F2E - .4byte _08033EE0 - .4byte _08033F2E - .4byte _08033F2E - .4byte _08033F2E - .4byte _08033F2E - .4byte _08033F2E - .4byte _08033F2E - .4byte _08033F2E - .4byte _08033E6C - .4byte _08033E98 - .4byte _08033ED8 - .4byte _08033F2E - .4byte _08033F2E - .4byte _08033EA8 - .4byte _08033EFC - .4byte _08033F2E -_08033E6C: - ldr r0, _08033E90 - ldr r3, _08033E94 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x6 - bl sub_8014248 - movs r0, 0x1B - bl sub_80338C4 - b _08033F2E - .align 2, 0 -_08033E90: .4byte gUnknown_80E48A8 -_08033E94: .4byte gUnknown_80E2290 -_08033E98: - ldr r0, _08033E9C - b _08033EE2 - .align 2, 0 -_08033E9C: .4byte gUnknown_80E48E8 -_08033EA0: - ldr r0, _08033EA4 - b _08033EE2 - .align 2, 0 -_08033EA4: .4byte gUnknown_80E460C -_08033EA8: - ldr r0, [sp, 0x24] - bl sub_8095274 - add r1, sp, 0x14 - movs r0, 0x2 - strb r0, [r1] - adds r0, r1, 0 - bl sub_80951BC - ldr r0, _08033ED0 - ldr r3, _08033ED4 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - movs r0, 0x16 - bl sub_80338C4 - b _08033F2E - .align 2, 0 -_08033ED0: .4byte gUnknown_80E4928 -_08033ED4: .4byte 0x00000101 -_08033ED8: - ldr r0, _08033EDC - b _08033EE2 - .align 2, 0 -_08033EDC: .4byte gUnknown_80E4964 -_08033EE0: - ldr r0, _08033EF4 -_08033EE2: - ldr r3, _08033EF8 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - movs r0, 0x8 - bl sub_80338C4 - b _08033F2E - .align 2, 0 -_08033EF4: .4byte gUnknown_80E499C -_08033EF8: .4byte 0x00000101 -_08033EFC: - add r1, sp, 0x14 - movs r0, 0x5 - strb r0, [r1] - adds r0, r1, 0 - bl sub_80951FC - ldr r1, [sp, 0x24] - movs r0, 0x1 - bl sub_809539C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - movs r1, 0x7 - strb r1, [r0] - ldr r0, _08033F34 - ldr r0, [r0] - movs r1, 0 - movs r2, 0x5C - bl MemoryFill8 - movs r0, 0x40 - bl sub_80338C4 -_08033F2E: - bl sub_80155F0 - b _08033F58 - .align 2, 0 -_08033F34: .4byte gUnknown_203B484 -_08033F38: - bl sub_80155F0 - bl sub_8004914 - ldr r0, _08033F60 - ldr r0, [r0] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - bl sub_80338C4 -_08033F58: - add sp, 0x44 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08033F60: .4byte gUnknown_203B33C - thumb_func_end sub_8033DBC - - thumb_func_start sub_8033F64 -sub_8033F64: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08033FAE - ldr r0, [sp] - cmp r0, 0x6 - beq _08033F7E - cmp r0, 0x8 - beq _08033FA8 - b _08033FAE -_08033F7E: - ldr r0, _08033F94 - ldr r0, [r0] - movs r1, 0xA5 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x3 - beq _08033F98 - cmp r0, 0x12 - beq _08033FA0 - b _08033FAE - .align 2, 0 -_08033F94: .4byte gUnknown_203B33C -_08033F98: - movs r0, 0x19 - bl sub_80338C4 - b _08033FAE -_08033FA0: - movs r0, 0x43 - bl sub_80338C4 - b _08033FAE -_08033FA8: - movs r0, 0x1 - bl sub_80338C4 -_08033FAE: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8033F64 - - thumb_func_start sub_8033FB4 -sub_8033FB4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08033FDE - ldr r0, [sp] - cmp r0, 0x6 - bne _08033FD0 - movs r0, 0xE - bl sub_80338C4 - b _08033FDE -_08033FD0: - cmp r0, 0x6 - blt _08033FDE - cmp r0, 0x8 - bgt _08033FDE - movs r0, 0x1 - bl sub_80338C4 -_08033FDE: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8033FB4 - - thumb_func_start sub_8033FE4 -sub_8033FE4: - push {r4,r5,lr} - movs r0, 0x1 - bl sub_8030768 - cmp r0, 0x3 - beq _0803400C - cmp r0, 0x3 - bhi _08033FFA - cmp r0, 0x2 - beq _08034000 - b _0803406A -_08033FFA: - cmp r0, 0x4 - beq _08034028 - b _0803406A -_08034000: - bl sub_803084C - movs r0, 0x1 - bl sub_80338C4 - b _0803406A -_0803400C: - bl sub_80307EC - ldr r1, _08034024 - ldr r1, [r1] - movs r2, 0x86 - lsls r2, 2 - adds r1, r2 - strb r0, [r1] - movs r0, 0x1E - bl sub_80338C4 - b _0803406A - .align 2, 0 -_08034024: .4byte gUnknown_203B33C -_08034028: - ldr r4, _08034070 - ldr r1, [r4] - movs r0, 0x1D - str r0, [r1, 0x4] - bl sub_80307EC - ldr r1, [r4] - movs r5, 0x86 - lsls r5, 2 - adds r1, r5 - strb r0, [r1] - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x1F - bl sub_80338C4 -_0803406A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08034070: .4byte gUnknown_203B33C - thumb_func_end sub_8033FE4 - - thumb_func_start sub_8034074 -sub_8034074: - push {r4,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r0, 0 - bl sub_8030768 - ldr r4, _080340B8 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080340A6 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - mov r1, sp - bl sub_8013114 -_080340A6: - ldr r0, [sp] - cmp r0, 0x8 - beq _08034108 - cmp r0, 0x8 - bgt _080340BC - cmp r0, 0x5 - beq _08034108 - b _08034124 - .align 2, 0 -_080340B8: .4byte gUnknown_203B33C -_080340BC: - cmp r0, 0x9 - beq _080340C6 - cmp r0, 0xA - beq _080340D2 - b _08034124 -_080340C6: - bl sub_803084C - movs r0, 0x20 - bl sub_80338C4 - b _08034124 -_080340D2: - ldr r0, [r4] - movs r1, 0x7E - str r1, [r0, 0x4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x1F - bl sub_80338C4 - b _08034124 -_08034108: - ldr r0, _0803412C - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - movs r1, 0x2 - bl sub_8035CC0 - movs r0, 0x1 - bl sub_8030810 - movs r0, 0x1D - bl sub_80338C4 -_08034124: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803412C: .4byte gUnknown_203B33C - thumb_func_end sub_8034074 - - thumb_func_start sub_8034130 -sub_8034130: - push {r4,lr} - bl sub_8030DA0 - cmp r0, 0x3 - bhi _08034184 - cmp r0, 0x2 - bcc _08034184 - bl sub_8030DE4 - bl sub_8004914 - ldr r4, _0803417C - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_803092C - ldr r4, [r4] - ldr r0, [r4, 0x4] - cmp r0, 0x7E - bne _08034180 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, r1 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x1E - bl sub_80338C4 - b _08034184 - .align 2, 0 -_0803417C: .4byte gUnknown_203B33C -_08034180: - bl sub_80338C4 -_08034184: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8034130 - - thumb_func_start sub_803418C -sub_803418C: - push {r4,r5,lr} - movs r0, 0x1 - bl sub_8023A94 - cmp r0, 0x3 - beq _080341D0 - cmp r0, 0x3 - bhi _080341A2 - cmp r0, 0x2 - beq _080341A8 - b _08034248 -_080341A2: - cmp r0, 0x4 - beq _08034204 - b _08034248 -_080341A8: - bl sub_8023C60 - movs r0, 0x1 - bl sub_80338C4 - bl sub_8035D1C - ldr r0, _080341C8 - ldr r0, [r0] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - ldr r1, _080341CC - strh r1, [r0] - b _08034248 - .align 2, 0 -_080341C8: .4byte gUnknown_203B33C -_080341CC: .4byte 0x0000ffff -_080341D0: - bl sub_8023B44 - ldr r1, _080341F4 - ldr r1, [r1] - movs r3, 0xA7 - lsls r3, 3 - adds r2, r1, r3 - strh r0, [r2] - ldr r0, _080341F8 - adds r1, r0 - ldr r0, [r1] - cmp r0, 0xE - bne _080341FC - movs r0, 0x9 - bl sub_80338C4 - b _08034248 - .align 2, 0 -_080341F4: .4byte gUnknown_203B33C -_080341F8: .4byte 0x00000524 -_080341FC: - movs r0, 0x27 - bl sub_80338C4 - b _08034248 -_08034204: - ldr r4, _08034250 - ldr r1, [r4] - movs r0, 0x26 - str r0, [r1, 0x4] - bl sub_8023B44 - adds r2, r0, 0 - ldr r0, [r4] - movs r5, 0xA7 - lsls r5, 3 - adds r1, r0, r5 - strh r2, [r1] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, r5 - movs r3, 0 - ldrsh r0, [r0, r3] - movs r1, 0 - bl sub_8024458 - movs r0, 0x28 - bl sub_80338C4 -_08034248: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08034250: .4byte gUnknown_203B33C - thumb_func_end sub_803418C - - thumb_func_start sub_8034254 -sub_8034254: - push {r4,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r0, 0 - bl sub_8023A94 - ldr r4, _08034298 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08034286 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - mov r1, sp - bl sub_8013114 -_08034286: - ldr r0, [sp] - cmp r0, 0x8 - beq _080342EA - cmp r0, 0x8 - bgt _0803429C - cmp r0, 0x5 - beq _080342EA - b _08034304 - .align 2, 0 -_08034298: .4byte gUnknown_203B33C -_0803429C: - cmp r0, 0x9 - beq _080342A6 - cmp r0, 0xA - beq _080342B2 - b _08034304 -_080342A6: - bl sub_8023C60 - movs r0, 0x29 - bl sub_80338C4 - b _08034304 -_080342B2: - ldr r0, [r4] - movs r1, 0x7E - str r1, [r0, 0x4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - movs r1, 0 - bl sub_8024458 - movs r0, 0x28 - bl sub_80338C4 - b _08034304 -_080342EA: - ldr r0, _0803430C - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - movs r1, 0x3 - bl sub_8035CC0 - bl sub_8023DA4 - movs r0, 0x26 - bl sub_80338C4 -_08034304: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803430C: .4byte gUnknown_203B33C - thumb_func_end sub_8034254 - - thumb_func_start sub_8034310 -sub_8034310: - push {r4,lr} - bl sub_80244E4 - cmp r0, 0x1 - bne _08034320 - bl sub_802452C - b _08034370 -_08034320: - cmp r0, 0x1 - bcc _08034370 - cmp r0, 0x3 - bhi _08034370 - bl sub_802453C - bl sub_8004914 - ldr r4, _08034368 - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - bl sub_8023B7C - ldr r4, [r4] - ldr r0, [r4, 0x4] - cmp r0, 0x7E - bne _0803436C - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, r1 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x27 - bl sub_80338C4 - b _08034370 - .align 2, 0 -_08034368: .4byte gUnknown_203B33C -_0803436C: - bl sub_80338C4 -_08034370: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8034310 - - thumb_func_start sub_8034378 -sub_8034378: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080343BE - ldr r0, [sp] - cmp r0, 0x8 - beq _080343B8 - cmp r0, 0x10 - bne _080343BE - ldr r0, _080343A8 - ldr r0, [r0] - ldr r1, _080343AC - adds r0, r1 - ldr r0, [r0] - cmp r0, 0xE - bne _080343B0 - movs r0, 0x9 - bl sub_80338C4 - b _080343BE - .align 2, 0 -_080343A8: .4byte gUnknown_203B33C -_080343AC: .4byte 0x00000524 -_080343B0: - movs r0, 0x5 - bl sub_80338C4 - b _080343BE -_080343B8: - movs r0, 0x1 - bl sub_80338C4 -_080343BE: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034378 - - thumb_func_start sub_80343C4 -sub_80343C4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080343FE - ldr r0, [sp] - cmp r0, 0x7 - beq _080343F0 - cmp r0, 0x7 - bgt _080343E2 - cmp r0, 0x6 - beq _080343E8 - b _080343FE -_080343E2: - cmp r0, 0x8 - beq _080343F8 - b _080343FE -_080343E8: - movs r0, 0x5 - bl sub_80338C4 - b _080343FE -_080343F0: - movs r0, 0x25 - bl sub_80338C4 - b _080343FE -_080343F8: - movs r0, 0x1 - bl sub_80338C4 -_080343FE: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80343C4 - - thumb_func_start sub_8034404 -sub_8034404: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08034472 - ldr r0, [sp] - cmp r0, 0xF - beq _08034428 - cmp r0, 0xF - bgt _08034422 - cmp r0, 0x8 - beq _0803446C - b _08034472 -_08034422: - cmp r0, 0x10 - beq _08034444 - b _08034472 -_08034428: - movs r0, 0x3 - bl sub_8024108 - lsls r0, 24 - cmp r0, 0 - beq _0803443C - movs r0, 0x24 - bl sub_80338C4 - b _08034472 -_0803443C: - movs r0, 0x25 - bl sub_80338C4 - b _08034472 -_08034444: - ldr r0, _0803445C - ldr r0, [r0] - ldr r1, _08034460 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0xE - bne _08034464 - movs r0, 0x9 - bl sub_80338C4 - b _08034472 - .align 2, 0 -_0803445C: .4byte gUnknown_203B33C -_08034460: .4byte 0x00000524 -_08034464: - movs r0, 0x5 - bl sub_80338C4 - b _08034472 -_0803446C: - movs r0, 0x1 - bl sub_80338C4 -_08034472: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034404 - - thumb_func_start sub_8034478 -sub_8034478: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803449A - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _0803449A - bl sub_8012750 - movs r0, 0x2 - bl sub_80338C4 -_0803449A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034478 - - thumb_func_start sub_80344A0 -sub_80344A0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080344BA - movs r0, 0x2C - bl sub_80338C4 - movs r0, 0 - bl sub_8012574 -_080344BA: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80344A0 - - thumb_func_start sub_80344C0 -sub_80344C0: - push {lr} - bl sub_8031DCC - cmp r0, 0x1 - beq _080344F8 - cmp r0, 0x1 - bcc _080344FC - cmp r0, 0x3 - bhi _080344FC - bl sub_8031E10 - bl sub_8004914 - ldr r0, _080344F4 - ldr r0, [r0] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x2F - bl sub_80338C4 - b _080344FC - .align 2, 0 -_080344F4: .4byte gUnknown_203B33C -_080344F8: - bl sub_8031E00 -_080344FC: - pop {r0} - bx r0 - thumb_func_end sub_80344C0 - - thumb_func_start sub_8034500 -sub_8034500: - push {r4,r5,lr} - movs r0, 0x1 - bl sub_8030768 - cmp r0, 0x3 - beq _08034528 - cmp r0, 0x3 - bhi _08034516 - cmp r0, 0x2 - beq _0803451C - b _08034586 -_08034516: - cmp r0, 0x4 - beq _08034544 - b _08034586 -_0803451C: - bl sub_803084C - movs r0, 0x1 - bl sub_80338C4 - b _08034586 -_08034528: - bl sub_80307EC - ldr r1, _08034540 - ldr r1, [r1] - movs r2, 0x86 - lsls r2, 2 - adds r1, r2 - strb r0, [r1] - movs r0, 0x33 - bl sub_80338C4 - b _08034586 - .align 2, 0 -_08034540: .4byte gUnknown_203B33C -_08034544: - ldr r4, _0803458C - ldr r1, [r4] - movs r0, 0x32 - str r0, [r1, 0x4] - bl sub_80307EC - ldr r1, [r4] - movs r5, 0x86 - lsls r5, 2 - adds r1, r5 - strb r0, [r1] - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x34 - bl sub_80338C4 -_08034586: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803458C: .4byte gUnknown_203B33C - thumb_func_end sub_8034500 - - thumb_func_start sub_8034590 -sub_8034590: - push {r4,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r0, 0 - bl sub_8030768 - ldr r4, _080345D4 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080345C2 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - mov r1, sp - bl sub_8013114 -_080345C2: - ldr r0, [sp] - cmp r0, 0x8 - beq _08034624 - cmp r0, 0x8 - bgt _080345D8 - cmp r0, 0x5 - beq _08034624 - b _08034640 - .align 2, 0 -_080345D4: .4byte gUnknown_203B33C -_080345D8: - cmp r0, 0x9 - beq _080345E2 - cmp r0, 0xA - beq _080345EE - b _08034640 -_080345E2: - bl sub_803084C - movs r0, 0x35 - bl sub_80338C4 - b _08034640 -_080345EE: - ldr r0, [r4] - movs r1, 0x7E - str r1, [r0, 0x4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x34 - bl sub_80338C4 - b _08034640 -_08034624: - ldr r0, _08034648 - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - movs r1, 0x2 - bl sub_8035CC0 - movs r0, 0x1 - bl sub_8030810 - movs r0, 0x32 - bl sub_80338C4 -_08034640: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08034648: .4byte gUnknown_203B33C - thumb_func_end sub_8034590 - - thumb_func_start sub_803464C -sub_803464C: - push {r4,lr} - bl sub_8030DA0 - cmp r0, 0x3 - bhi _080346A0 - cmp r0, 0x2 - bcc _080346A0 - bl sub_8030DE4 - bl sub_8004914 - ldr r4, _08034698 - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_803092C - ldr r4, [r4] - ldr r0, [r4, 0x4] - cmp r0, 0x7E - bne _0803469C - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, r1 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x33 - bl sub_80338C4 - b _080346A0 - .align 2, 0 -_08034698: .4byte gUnknown_203B33C -_0803469C: - bl sub_80338C4 -_080346A0: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_803464C - - thumb_func_start sub_80346A8 -sub_80346A8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080346D2 - ldr r0, [sp] - cmp r0, 0x6 - bne _080346C4 - movs r0, 0xE - bl sub_80338C4 - b _080346D2 -_080346C4: - cmp r0, 0x6 - blt _080346D2 - cmp r0, 0x8 - bgt _080346D2 - movs r0, 0x1 - bl sub_80338C4 -_080346D2: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80346A8 - - thumb_func_start sub_80346D8 -sub_80346D8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080346FA - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _080346FA - bl sub_8012750 - movs r0, 0x2 - bl sub_80338C4 -_080346FA: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80346D8 - - thumb_func_start sub_8034700 -sub_8034700: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803471A - movs r0, 0x38 - bl sub_80338C4 - movs r0, 0 - bl sub_8012574 -_0803471A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034700 - - thumb_func_start sub_8034720 -sub_8034720: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08034734 - movs r0, 0x3A - bl sub_80338C4 -_08034734: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034720 - - thumb_func_start sub_803473C -sub_803473C: - push {lr} - bl sub_8031DCC - cmp r0, 0x1 - beq _08034774 - cmp r0, 0x1 - bcc _08034778 - cmp r0, 0x3 - bhi _08034778 - bl sub_8031E10 - bl sub_8004914 - ldr r0, _08034770 - ldr r0, [r0] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x3B - bl sub_80338C4 - b _08034778 - .align 2, 0 -_08034770: .4byte gUnknown_203B33C -_08034774: - bl sub_8031E00 -_08034778: - pop {r0} - bx r0 - thumb_func_end sub_803473C - - thumb_func_start sub_803477C -sub_803477C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080347A6 - ldr r0, [sp] - cmp r0, 0x6 - bne _08034798 - movs r0, 0xE - bl sub_80338C4 - b _080347A6 -_08034798: - cmp r0, 0x6 - blt _080347A6 - cmp r0, 0x8 - bgt _080347A6 - movs r0, 0x1 - bl sub_80338C4 -_080347A6: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_803477C - - thumb_func_start sub_80347AC -sub_80347AC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080347C0 - movs r0, 0xD - bl sub_80338C4 -_080347C0: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80347AC - - thumb_func_start sub_80347C8 -sub_80347C8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080347DC - movs r0, 0x40 - bl sub_80338C4 -_080347DC: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80347C8 - - thumb_func_start sub_80347E4 -sub_80347E4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080347FE - movs r0, 0x41 - bl sub_80338C4 - movs r0, 0 - bl sub_8012574 -_080347FE: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80347E4 - - thumb_func_start sub_8034804 -sub_8034804: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08034826 - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08034826 - bl sub_8012750 - movs r0, 0x42 - bl sub_80338C4 -_08034826: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034804 - - thumb_func_start sub_803482C -sub_803482C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08034840 - movs r0, 0x1 - bl sub_80338C4 -_08034840: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_803482C - - thumb_func_start sub_8034848 -sub_8034848: - push {r4-r6,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - adds r6, r0, 0 - cmp r6, 0 - bne _080348BA - ldr r4, _0803489C - ldr r0, [r4] - ldr r5, _080348A0 - adds r0, r5 - movs r1, 0 - movs r2, 0x4 - bl MemoryFill8 - ldr r0, [r4] - ldr r1, _080348A4 - adds r0, r1 - strb r6, [r0] - ldr r0, [r4] - subs r1, 0x1 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - adds r0, r5 - strb r6, [r0] - ldr r4, [r4] - ldr r0, [r4, 0x44] - cmp r0, 0 - bne _080348B0 - ldr r4, [r4, 0x40] - cmp r4, 0x6 - beq _080348A8 - cmp r4, 0x7 - bne _080348BA - movs r0, 0x6D - bl sub_80338C4 - b _080348BA - .align 2, 0 -_0803489C: .4byte gUnknown_203B33C -_080348A0: .4byte 0x0000041c -_080348A4: .4byte 0x0000041e -_080348A8: - movs r0, 0x50 - bl sub_80338C4 - b _080348BA -_080348B0: - bl sub_80338DC - movs r0, 0x6B - bl sub_80338C4 -_080348BA: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8034848 - - thumb_func_start sub_80348C4 -sub_80348C4: - push {r4-r6,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - adds r6, r0, 0 - cmp r6, 0 - bne _08034968 - ldr r4, _08034910 - ldr r0, [r4] - ldr r5, _08034914 - adds r0, r5 - movs r1, 0 - movs r2, 0x4 - bl MemoryFill8 - ldr r0, [r4] - ldr r1, _08034918 - adds r0, r1 - strb r6, [r0] - ldr r0, [r4] - subs r1, 0x1 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - adds r0, r5 - strb r6, [r0] - ldr r0, [r4] - ldr r1, [r0, 0x44] - cmp r1, 0 - bne _0803495C - ldr r1, [r0, 0x40] - cmp r1, 0x6 - beq _0803491C - cmp r1, 0x7 - beq _08034954 - b _08034968 - .align 2, 0 -_08034910: .4byte gUnknown_203B33C -_08034914: .4byte 0x0000041c -_08034918: .4byte 0x0000041e -_0803491C: - ldr r1, _08034930 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0xC - beq _08034944 - cmp r0, 0xC - bhi _08034934 - cmp r0, 0xB - beq _08034938 - b _08034944 - .align 2, 0 -_08034930: .4byte 0x00000524 -_08034934: - cmp r0, 0xE - bhi _08034944 -_08034938: - ldr r0, _0803494C - ldr r3, _08034950 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_08034944: - movs r0, 0x77 - bl sub_80338C4 - b _08034968 - .align 2, 0 -_0803494C: .4byte gUnknown_80E31FC -_08034950: .4byte 0x00000101 -_08034954: - movs r0, 0x6D - bl sub_80338C4 - b _08034968 -_0803495C: - adds r0, r1, 0 - bl sub_80338DC - movs r0, 0x6B - bl sub_80338C4 -_08034968: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80348C4 - - thumb_func_start sub_8034970 -sub_8034970: - push {lr} - bl sub_8031DCC - cmp r0, 0x1 - beq _080349A8 - cmp r0, 0x1 - bcc _080349AC - cmp r0, 0x3 - bhi _080349AC - bl sub_8031E10 - bl sub_8004914 - ldr r0, _080349A4 - ldr r0, [r0] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x68 - bl sub_80338C4 - b _080349AC - .align 2, 0 -_080349A4: .4byte gUnknown_203B33C -_080349A8: - bl sub_8031E00 -_080349AC: - pop {r0} - bx r0 - thumb_func_end sub_8034970 - - thumb_func_start sub_80349B0 -sub_80349B0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080349DA - ldr r0, [sp] - cmp r0, 0x6 - bne _080349CC - movs r0, 0x52 - bl sub_80338C4 - b _080349DA -_080349CC: - cmp r0, 0x6 - blt _080349DA - cmp r0, 0x8 - bgt _080349DA - movs r0, 0x1 - bl sub_80338C4 -_080349DA: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80349B0 - - thumb_func_start sub_80349E0 -sub_80349E0: - push {r4,r5,lr} - movs r0, 0x1 - bl sub_8030768 - cmp r0, 0x3 - beq _08034A08 - cmp r0, 0x3 - bhi _080349F6 - cmp r0, 0x2 - beq _080349FC - b _08034A66 -_080349F6: - cmp r0, 0x4 - beq _08034A24 - b _08034A66 -_080349FC: - bl sub_803084C - movs r0, 0x1 - bl sub_80338C4 - b _08034A66 -_08034A08: - bl sub_80307EC - ldr r1, _08034A20 - ldr r1, [r1] - movs r2, 0x86 - lsls r2, 2 - adds r1, r2 - strb r0, [r1] - movs r0, 0x5D - bl sub_80338C4 - b _08034A66 - .align 2, 0 -_08034A20: .4byte gUnknown_203B33C -_08034A24: - ldr r4, _08034A6C - ldr r1, [r4] - movs r0, 0x5C - str r0, [r1, 0x4] - bl sub_80307EC - ldr r1, [r4] - movs r5, 0x86 - lsls r5, 2 - adds r1, r5 - strb r0, [r1] - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x5E - bl sub_80338C4 -_08034A66: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08034A6C: .4byte gUnknown_203B33C - thumb_func_end sub_80349E0 - - thumb_func_start sub_8034A70 -sub_8034A70: - push {r4,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r0, 0 - bl sub_8030768 - ldr r4, _08034AB4 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08034AA2 - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - mov r1, sp - bl sub_8013114 -_08034AA2: - ldr r0, [sp] - cmp r0, 0x8 - beq _08034B04 - cmp r0, 0x8 - bgt _08034AB8 - cmp r0, 0x5 - beq _08034B04 - b _08034B20 - .align 2, 0 -_08034AB4: .4byte gUnknown_203B33C -_08034AB8: - cmp r0, 0x9 - beq _08034AC2 - cmp r0, 0xA - beq _08034ACE - b _08034B20 -_08034AC2: - bl sub_803084C - movs r0, 0x5A - bl sub_80338C4 - b _08034B20 -_08034ACE: - ldr r0, [r4] - movs r1, 0x7E - str r1, [r0, 0x4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl sub_8030D40 - movs r0, 0x5E - bl sub_80338C4 - b _08034B20 -_08034B04: - ldr r0, _08034B28 - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - movs r1, 0x2 - bl sub_8035CC0 - movs r0, 0x1 - bl sub_8030810 - movs r0, 0x5C - bl sub_80338C4 -_08034B20: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08034B28: .4byte gUnknown_203B33C - thumb_func_end sub_8034A70 - - thumb_func_start sub_8034B2C -sub_8034B2C: - push {r4,lr} - bl sub_8030DA0 - cmp r0, 0x3 - bhi _08034B80 - cmp r0, 0x2 - bcc _08034B80 - bl sub_8030DE4 - bl sub_8004914 - ldr r4, _08034B78 - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_803092C - ldr r4, [r4] - ldr r0, [r4, 0x4] - cmp r0, 0x7E - bne _08034B7C - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, r1 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x5D - bl sub_80338C4 - b _08034B80 - .align 2, 0 -_08034B78: .4byte gUnknown_203B33C -_08034B7C: - bl sub_80338C4 -_08034B80: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8034B2C - - thumb_func_start sub_8034B88 -sub_8034B88: - push {r4-r6,lr} - ldr r4, _08034BBC - ldr r0, [r4] - ldr r5, _08034BC0 - adds r0, r5 - movs r2, 0 - strb r2, [r0] - ldr r0, [r4] - ldr r1, _08034BC4 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - ldr r6, _08034BC8 - adds r0, r6 - strb r2, [r0] - movs r0, 0x1 - bl sub_801CA08 - cmp r0, 0x3 - beq _08034BDE - cmp r0, 0x3 - bhi _08034BCC - cmp r0, 0x2 - beq _08034BD2 - b _08034C30 - .align 2, 0 -_08034BBC: .4byte gUnknown_203B33C -_08034BC0: .4byte 0x0000041e -_08034BC4: .4byte 0x0000041d -_08034BC8: .4byte 0x0000041c -_08034BCC: - cmp r0, 0x4 - beq _08034BF8 - b _08034C30 -_08034BD2: - bl sub_801CBB8 - movs r0, 0x1 - bl sub_80338C4 - b _08034C30 -_08034BDE: - bl sub_801CB24 - ldr r1, [r4] - ldr r2, _08034BF4 - adds r1, r2 - strb r0, [r1] - movs r0, 0x60 - bl sub_80338C4 - b _08034C30 - .align 2, 0 -_08034BF4: .4byte 0x0000041e -_08034BF8: - ldr r1, [r4] - movs r0, 0x5F - str r0, [r1, 0x4] - bl sub_801CB24 - ldr r1, [r4] - adds r1, r5 - strb r0, [r1] - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - adds r0, r6 - bl sub_801B3C0 - movs r0, 0x61 - bl sub_80338C4 -_08034C30: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8034B88 - - thumb_func_start sub_8034C38 -sub_8034C38: - push {r4,lr} - bl sub_801B410 - cmp r0, 0x1 - beq _08034C90 - cmp r0, 0x1 - bcc _08034C90 - cmp r0, 0x3 - bhi _08034C90 - bl sub_801B450 - bl sub_8004914 - ldr r4, _08034C88 - ldr r0, [r4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - bl sub_801CB5C - ldr r4, [r4] - ldr r0, [r4, 0x4] - cmp r0, 0x7E - bne _08034C8C - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, r1 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x60 - bl sub_80338C4 - b _08034C90 - .align 2, 0 -_08034C88: .4byte gUnknown_203B33C -_08034C8C: - bl sub_80338C4 -_08034C90: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8034C38 - - thumb_func_start sub_8034C98 -sub_8034C98: - push {r4,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r0, 0 - bl sub_801CA08 - ldr r4, _08034CDC - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08034CCA - ldr r0, [r4] - movs r1, 0xC3 - lsls r1, 2 - adds r0, r1 - mov r1, sp - bl sub_8013114 -_08034CCA: - ldr r0, [sp] - cmp r0, 0x8 - beq _08034D2C - cmp r0, 0x8 - bgt _08034CE0 - cmp r0, 0x5 - beq _08034D2C - b _08034D48 - .align 2, 0 -_08034CDC: .4byte gUnknown_203B33C -_08034CE0: - cmp r0, 0x9 - beq _08034CEA - cmp r0, 0xA - beq _08034CF6 - b _08034D48 -_08034CEA: - bl sub_801CBB8 - movs r0, 0x58 - bl sub_80338C4 - b _08034D48 -_08034CF6: - ldr r0, [r4] - movs r1, 0x7E - str r1, [r0, 0x4] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - ldr r1, _08034D28 - adds r0, r1 - bl sub_801B3C0 - movs r0, 0x61 - bl sub_80338C4 - b _08034D48 - .align 2, 0 -_08034D28: .4byte 0x0000041c -_08034D2C: - ldr r0, _08034D50 - ldr r0, [r0] - movs r1, 0xD7 - lsls r1, 2 - adds r0, r1 - movs r1, 0x3 - bl sub_8035CC0 - movs r0, 0x1 - bl sub_801CB5C - movs r0, 0x5F - bl sub_80338C4 -_08034D48: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08034D50: .4byte gUnknown_203B33C - thumb_func_end sub_8034C98 - - thumb_func_start sub_8034D54 -sub_8034D54: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08034D6E - movs r0, 0x65 - bl sub_80338C4 - movs r0, 0 - bl sub_8012574 -_08034D6E: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034D54 - - thumb_func_start sub_8034D74 -sub_8034D74: - push {r4,r5,lr} - sub sp, 0x44 - bl sub_80154F0 - adds r4, r0, 0 - add r0, sp, 0x14 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - cmp r4, 0x2 - bne _08034D8E - b _08034E9C -_08034D8E: - cmp r4, 0x3 - beq _08034D94 - b _08034EBC -_08034D94: - ldr r0, _08034DB4 - ldr r1, [r0] - adds r1, 0x8 - movs r0, 0x20 - add r2, sp, 0x14 - bl sub_8039068 - subs r0, 0x7 - cmp r0, 0x11 - bhi _08034E90 - lsls r0, 2 - ldr r1, _08034DB8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08034DB4: .4byte gUnknown_203B33C -_08034DB8: .4byte _08034DBC - .align 2, 0 -_08034DBC: - .4byte _08034E90 - .4byte _08034E90 - .4byte _08034E90 - .4byte _08034E90 - .4byte _08034E38 - .4byte _08034E90 - .4byte _08034E90 - .4byte _08034E90 - .4byte _08034E90 - .4byte _08034E90 - .4byte _08034E04 - .4byte _08034E90 - .4byte _08034E90 - .4byte _08034E30 - .4byte _08034E90 - .4byte _08034E90 - .4byte _08034E90 - .4byte _08034E54 -_08034E04: - ldr r0, _08034E28 - ldr r3, _08034E2C - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x6 - bl sub_8014248 - movs r0, 0x74 - bl sub_80338C4 - b _08034E90 - .align 2, 0 -_08034E28: .4byte gUnknown_80E48A8 -_08034E2C: .4byte gUnknown_80E2440 -_08034E30: - ldr r0, _08034E34 - b _08034E3A - .align 2, 0 -_08034E34: .4byte gUnknown_80E49C4 -_08034E38: - ldr r0, _08034E4C -_08034E3A: - ldr r3, _08034E50 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - movs r0, 0x6B - bl sub_80338C4 - b _08034E90 - .align 2, 0 -_08034E4C: .4byte gUnknown_80E4704 -_08034E50: .4byte 0x00000101 -_08034E54: - ldr r1, [sp, 0x24] - movs r0, 0x4 - bl sub_809539C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - adds r2, r0, 0 - add r1, sp, 0x14 - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - movs r1, 0x6 - strb r1, [r0] - ldr r0, _08034E98 - ldr r0, [r0] - movs r1, 0x84 - lsls r1, 3 - adds r0, r1 - ldr r1, [sp, 0x24] - str r1, [r0] - movs r0, 0x6D - bl sub_80338C4 -_08034E90: - bl sub_80155F0 - b _08034EBC - .align 2, 0 -_08034E98: .4byte gUnknown_203B33C -_08034E9C: - bl sub_80155F0 - bl sub_8004914 - ldr r0, _08034EC4 - ldr r0, [r0] - movs r3, 0xEF - lsls r3, 2 - adds r0, r3 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - bl sub_80338C4 -_08034EBC: - add sp, 0x44 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08034EC4: .4byte gUnknown_203B33C - thumb_func_end sub_8034D74 - - thumb_func_start sub_8034EC8 -sub_8034EC8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08034EEA - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08034EEA - bl sub_8012750 - movs r0, 0x2 - bl sub_80338C4 -_08034EEA: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034EC8 - - thumb_func_start sub_8034EF0 -sub_8034EF0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08034F12 - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08034F12 - bl sub_8012750 - movs r0, 0x2 - bl sub_80338C4 -_08034F12: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034EF0 - - thumb_func_start sub_8034F18 -sub_8034F18: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08034F32 - movs r0, 0x65 - bl sub_80338C4 - movs r0, 0 - bl sub_8012574 -_08034F32: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034F18 - - thumb_func_start sub_8034F38 -sub_8034F38: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08034F52 - movs r0, 0x71 - bl sub_80338C4 - movs r0, 0 - bl sub_8012574 -_08034F52: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034F38 - - thumb_func_start sub_8034F58 -sub_8034F58: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08034F80 - ldr r0, [sp] - cmp r0, 0x6 - beq _08034F72 - cmp r0, 0x8 - beq _08034F7A - b _08034F80 -_08034F72: - movs r0, 0x62 - bl sub_80338C4 - b _08034F80 -_08034F7A: - movs r0, 0x1 - bl sub_80338C4 -_08034F80: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8034F58 - - thumb_func_start sub_8034F88 -sub_8034F88: - push {r4,r5,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803500E - ldr r0, [sp] - cmp r0, 0x7 - beq _08035000 - cmp r0, 0x7 - bgt _08034FA6 - cmp r0, 0x6 - beq _08034FAC - b _0803500E -_08034FA6: - cmp r0, 0x8 - beq _08035008 - b _0803500E -_08034FAC: - ldr r4, _08034FF0 - ldr r0, [r4] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - bl sub_8095228 - adds r2, r0, 0 - ldr r1, [r4] - ldr r3, _08034FF4 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _08034FD2 - ldr r5, _08034FF8 - adds r0, r1, r5 - ldr r0, [r0] - str r0, [r2, 0x20] -_08034FD2: - ldr r0, _08034FFC - ldr r1, [r0] - ldr r0, [r4] - adds r0, r3 - ldrb r0, [r0] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - movs r0, 0x75 - bl sub_80338C4 - b _0803500E - .align 2, 0 -_08034FF0: .4byte gUnknown_203B33C -_08034FF4: .4byte 0x0000041e -_08034FF8: .4byte 0x0000041c -_08034FFC: .4byte gUnknown_203B460 -_08035000: - movs r0, 0x57 - bl sub_80338C4 - b _0803500E -_08035008: - movs r0, 0x1 - bl sub_80338C4 -_0803500E: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8034F88 - - thumb_func_start sub_8035018 -sub_8035018: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08035032 - movs r0, 0x76 - bl sub_80338C4 - movs r0, 0 - bl sub_8012574 -_08035032: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8035018 - - thumb_func_start sub_8035038 -sub_8035038: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803508E - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _0803508E - bl sub_8012750 - ldr r0, _0803506C - ldr r0, [r0] - ldr r1, _08035070 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0xD - beq _08035080 - cmp r0, 0xD - bls _08035074 - cmp r0, 0xE - beq _08035088 - b _0803508E - .align 2, 0 -_0803506C: .4byte gUnknown_203B33C -_08035070: .4byte 0x00000524 -_08035074: - cmp r0, 0xB - bcc _0803508E - movs r0, 0x69 - bl sub_80338C4 - b _0803508E -_08035080: - movs r0, 0x66 - bl sub_80338C4 - b _0803508E -_08035088: - movs r0, 0x4B - bl sub_80338C4 -_0803508E: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8035038 - - thumb_func_start sub_8035094 -sub_8035094: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080350EE - ldr r0, [sp] - cmp r0, 0x8 - beq _080350E8 - cmp r0, 0x16 - bne _080350EE - ldr r0, _080350C4 - ldr r0, [r0] - ldr r1, _080350C8 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0xD - beq _080350D8 - cmp r0, 0xD - bls _080350CC - cmp r0, 0xE - beq _080350E0 - b _080350EE - .align 2, 0 -_080350C4: .4byte gUnknown_203B33C -_080350C8: .4byte 0x00000524 -_080350CC: - cmp r0, 0xB - bcc _080350EE - movs r0, 0x69 - bl sub_80338C4 - b _080350EE -_080350D8: - movs r0, 0x66 - bl sub_80338C4 - b _080350EE -_080350E0: - movs r0, 0x4B - bl sub_80338C4 - b _080350EE -_080350E8: - movs r0, 0x1 - bl sub_80338C4 -_080350EE: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8035094 - - thumb_func_start sub_80350F4 -sub_80350F4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08035176 - ldr r0, [sp] - cmp r0, 0x15 - beq _08035118 - cmp r0, 0x15 - bgt _08035112 - cmp r0, 0x8 - beq _08035170 - b _08035176 -_08035112: - cmp r0, 0x16 - beq _08035134 - b _08035176 -_08035118: - movs r0, 0 - bl sub_801CF14 - lsls r0, 24 - cmp r0, 0 - beq _0803512C - movs r0, 0x56 - bl sub_80338C4 - b _08035176 -_0803512C: - movs r0, 0x57 - bl sub_80338C4 - b _08035176 -_08035134: - ldr r0, _0803514C - ldr r0, [r0] - ldr r1, _08035150 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0xD - beq _08035160 - cmp r0, 0xD - bls _08035154 - cmp r0, 0xE - beq _08035168 - b _08035176 - .align 2, 0 -_0803514C: .4byte gUnknown_203B33C -_08035150: .4byte 0x00000524 -_08035154: - cmp r0, 0xB - bcc _08035176 - movs r0, 0x69 - bl sub_80338C4 - b _08035176 -_08035160: - movs r0, 0x66 - bl sub_80338C4 - b _08035176 -_08035168: - movs r0, 0x4B - bl sub_80338C4 - b _08035176 -_08035170: - movs r0, 0x1 - bl sub_80338C4 -_08035176: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80350F4 - - thumb_func_start sub_803517C -sub_803517C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080351DA - ldr r0, [sp] - cmp r0, 0x6 - beq _08035196 - cmp r0, 0x8 - beq _080351D4 - b _080351DA -_08035196: - ldr r0, _080351B0 - ldr r0, [r0] - ldr r1, _080351B4 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0xD - beq _080351C4 - cmp r0, 0xD - bls _080351B8 - cmp r0, 0xE - beq _080351CC - b _080351DA - .align 2, 0 -_080351B0: .4byte gUnknown_203B33C -_080351B4: .4byte 0x00000524 -_080351B8: - cmp r0, 0xB - bcc _080351DA - movs r0, 0x69 - bl sub_80338C4 - b _080351DA -_080351C4: - movs r0, 0x66 - bl sub_80338C4 - b _080351DA -_080351CC: - movs r0, 0x4B - bl sub_80338C4 - b _080351DA -_080351D4: - movs r0, 0x1 - bl sub_80338C4 -_080351DA: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_803517C - - thumb_func_start sub_80351E0 -sub_80351E0: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08035208 - ldr r0, [sp] - cmp r0, 0x6 - beq _080351FA - cmp r0, 0x8 - beq _08035202 - b _08035208 -_080351FA: - movs r0, 0x72 - bl sub_80338C4 - b _08035208 -_08035202: - movs r0, 0x1 - bl sub_80338C4 -_08035208: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80351E0 - - thumb_func_start sub_8035210 -sub_8035210: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803528C - ldr r0, _08035238 - ldr r2, [r0] - ldr r1, _0803523C - adds r0, r2, r1 - ldr r1, [sp] - str r1, [r0] - cmp r1, 0xD - bgt _0803528C - cmp r1, 0xB - bge _08035240 - cmp r1, 0x8 - beq _08035286 - b _0803528C - .align 2, 0 -_08035238: .4byte gUnknown_203B33C -_0803523C: .4byte 0x00000524 -_08035240: - movs r3, 0xA5 - lsls r3, 3 - adds r0, r2, r3 - ldr r0, [r0] - cmp r0, 0x13 - bne _08035272 - movs r0, 0x5 - bl sub_80953D4 - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0 - beq _0803526A - movs r0, 0x53 - bl sub_80338C4 - b _0803528C -_0803526A: - movs r0, 0x55 - bl sub_80338C4 - b _0803528C -_08035272: - cmp r1, 0xD - beq _0803527E - movs r0, 0x69 - bl sub_80338C4 - b _0803528C -_0803527E: - movs r0, 0x72 - bl sub_80338C4 - b _0803528C -_08035286: - movs r0, 0x1 - bl sub_80338C4 -_0803528C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8035210 - - thumb_func_start nullsub_46 -nullsub_46: - bx lr - thumb_func_end nullsub_46 - - thumb_func_start nullsub_47 -nullsub_47: - bx lr - thumb_func_end nullsub_47 - - thumb_func_start nullsub_48 -nullsub_48: - bx lr - thumb_func_end nullsub_48 - - thumb_func_start nullsub_49 -nullsub_49: - bx lr - thumb_func_end nullsub_49 - - thumb_func_start sub_80352A4 -sub_80352A4: - push {r4,lr} - bl sub_802F298 - cmp r0, 0x3 - bne _080352EC - bl sub_802F2C0 - ldr r0, _080352F4 - movs r4, 0x98 - lsls r4, 1 - adds r1, r4, 0 - bl sub_808D8E0 - adds r0, r4, 0 - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _080352F8 - bl strcpy - ldr r0, _080352FC - ldr r0, [r0] - movs r1, 0x84 - lsls r1, 3 - adds r0, r1 - ldr r1, [r0] - movs r0, 0x6 - bl sub_809539C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095240 - movs r0, 0x70 - bl sub_80338C4 -_080352EC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080352F4: .4byte gUnknown_202E5D8 -_080352F8: .4byte gUnknown_202DF98 -_080352FC: .4byte gUnknown_203B33C - thumb_func_end sub_80352A4 - - thumb_func_start sub_8035300 -sub_8035300: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08035364 - ldr r0, [sp] - adds r1, r0, 0 - subs r1, 0x19 - adds r2, r0, 0 - cmp r1, 0x4 - bhi _08035364 - lsls r0, r1, 2 - ldr r1, _08035324 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08035324: .4byte _08035328 - .align 2, 0 -_08035328: - .4byte _0803533C - .4byte _08035354 - .4byte _08035344 - .4byte _0803534C - .4byte _08035354 -_0803533C: - movs r0, 0x1 - bl sub_80338C4 - b _08035364 -_08035344: - movs r0, 0x7A - bl sub_80338C4 - b _08035364 -_0803534C: - movs r0, 0x7C - bl sub_80338C4 - b _08035364 -_08035354: - ldr r0, _0803536C - ldr r0, [r0] - ldr r1, _08035370 - adds r0, r1 - str r2, [r0] - movs r0, 0x79 - bl sub_80338C4 -_08035364: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0803536C: .4byte gUnknown_203B33C -_08035370: .4byte 0x00000564 - thumb_func_end sub_8035300 - - thumb_func_start sub_8035374 -sub_8035374: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080353AC - ldr r1, [sp] - cmp r1, 0x19 - bne _08035390 - movs r0, 0x78 - bl sub_80338C4 - b _080353AC -_08035390: - cmp r1, 0x19 - blt _080353AC - cmp r1, 0x22 - bgt _080353AC - cmp r1, 0x1E - blt _080353AC - ldr r0, _080353B4 - ldr r0, [r0] - ldr r2, _080353B8 - adds r0, r2 - str r1, [r0] - movs r0, 0x7B - bl sub_80338C4 -_080353AC: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080353B4: .4byte gUnknown_203B33C -_080353B8: .4byte 0x00000564 - thumb_func_end sub_8035374 - - thumb_func_start sub_80353BC -sub_80353BC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080353F4 - ldr r1, [sp] - cmp r1, 0x19 - bne _080353D8 - movs r0, 0x78 - bl sub_80338C4 - b _080353F4 -_080353D8: - cmp r1, 0x19 - blt _080353F4 - cmp r1, 0x26 - bgt _080353F4 - cmp r1, 0x23 - blt _080353F4 - ldr r0, _080353FC - ldr r0, [r0] - ldr r2, _08035400 - adds r0, r2 - str r1, [r0] - movs r0, 0x7D - bl sub_80338C4 -_080353F4: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080353FC: .4byte gUnknown_203B33C -_08035400: .4byte 0x00000564 - thumb_func_end sub_80353BC - - thumb_func_start sub_8035404 -sub_8035404: - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803541A - adds r0, r4, 0 - bl sub_80338C4 -_0803541A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8035404 - - thumb_func_start sub_8035424 -sub_8035424: - push {lr} - movs r0, 0x6 - bl sub_80338C4 - pop {r0} - bx r0 - thumb_func_end sub_8035424 - - thumb_func_start sub_8035430 -sub_8035430: - push {lr} - movs r0, 0x4F - bl sub_80338C4 - pop {r0} - bx r0 - thumb_func_end sub_8035430 - - thumb_func_start nullsub_50 -nullsub_50: - bx lr - thumb_func_end nullsub_50 - - thumb_func_start nullsub_51 -nullsub_51: - bx lr - thumb_func_end nullsub_51 - - thumb_func_start sub_8035444 -sub_8035444: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x84 - mov r8, r0 - adds r5, r1, 0 - ldr r4, _080354C0 - movs r0, 0x6C - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r1, 0 - str r1, [r0, 0x60] - str r5, [r0, 0x64] - mov r1, r8 - str r1, [r0, 0x68] - ldr r2, _080354C4 - mov r12, r2 - mov r9, r4 - movs r3, 0 - movs r2, 0x3 -_08035472: - ldr r1, [r4] - adds r1, r3 - mov r0, r12 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _08035472 - mov r0, r9 - ldr r1, [r0] - ldr r0, _080354C8 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - bl sub_8004914 - mov r1, r9 - ldr r0, [r1] - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x2 - bl sub_8099690 - movs r0, 0 - bl sub_80073B8 - mov r2, r8 - lsls r0, r2, 2 - ldr r1, _080354CC - adds r0, r1 - ldr r1, [r0] - movs r5, 0 - b _08035542 - .align 2, 0 -_080354C0: .4byte gUnknown_203B340 -_080354C4: .4byte gUnknown_80E4A10 -_080354C8: .4byte gUnknown_80E4A28 -_080354CC: .4byte gUnknown_80E591C -_080354D0: - ldr r2, [r1, 0x8] - movs r3, 0x4 - ldrsh r0, [r1, r3] - cmp r0, 0 - blt _080354DE - adds r5, r0, 0 - b _080354E4 -_080354DE: - movs r6, 0x4 - ldrsh r0, [r1, r6] - subs r5, r0 -_080354E4: - movs r7, 0x2 - ldrsh r6, [r1, r7] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0x1 - beq _080354FA - cmp r0, 0x2 - beq _08035514 - adds r4, r1, 0 - adds r4, 0xC - b _08035532 -_080354FA: - add r3, sp, 0x4 - ldrb r0, [r2] - adds r4, r1, 0 - adds r4, 0xC - cmp r0, 0 - beq _0803552C -_08035506: - strb r0, [r3] - adds r2, 0x1 - adds r3, 0x1 - ldrb r0, [r2] - cmp r0, 0 - bne _08035506 - b _0803552C -_08035514: - add r3, sp, 0x4 - ldrb r0, [r2] - adds r4, r1, 0 - adds r4, 0xC - cmp r0, 0 - beq _0803552C -_08035520: - strb r0, [r3] - adds r2, 0x1 - adds r3, 0x1 - ldrb r0, [r2] - cmp r0, 0 - bne _08035520 -_0803552C: - movs r0, 0 - strb r0, [r3] - add r2, sp, 0x4 -_08035532: - movs r0, 0 - str r0, [sp] - adds r0, r6, 0 - adds r1, r5, 0 - movs r3, 0 - bl xxx_call_draw_string - adds r1, r4, 0 -_08035542: - ldr r0, [r1, 0x8] - cmp r0, 0 - bne _080354D0 - movs r0, 0 - bl sub_80073E0 - movs r0, 0 - bl sub_80063CC - ldr r2, _08035570 - movs r0, 0x9 - movs r1, 0 - ldr r2, [r2] - bl sub_8099AFC - movs r0, 0x1 - add sp, 0x84 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08035570: .4byte gUnknown_80E4A40 - thumb_func_end sub_8035444 - - thumb_func_start sub_8035574 -sub_8035574: - push {r4,lr} - ldr r1, _0803558C - ldr r0, [r1] - ldr r0, [r0, 0x60] - adds r4, r1, 0 - cmp r0, 0x4 - bhi _08035654 - lsls r0, 2 - ldr r1, _08035590 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803558C: .4byte gUnknown_203B340 -_08035590: .4byte _08035594 - .align 2, 0 -_08035594: - .4byte _080355A8 - .4byte _080355D0 - .4byte _080355E8 - .4byte _08035610 - .4byte _08035638 -_080355A8: - bl sub_8099B94 - lsls r0, 24 - cmp r0, 0 - bne _08035654 - ldr r0, _080355C8 - ldr r1, [r0] - movs r0, 0x1 - str r0, [r1, 0x60] - ldr r2, _080355CC - movs r0, 0x9 - movs r1, 0x1E - ldr r2, [r2] - bl sub_8099A5C - b _08035654 - .align 2, 0 -_080355C8: .4byte gUnknown_203B340 -_080355CC: .4byte gUnknown_80E4A40 -_080355D0: - bl sub_8099B94 - lsls r0, 24 - cmp r0, 0 - bne _08035654 - ldr r0, _080355E4 - ldr r1, [r0] - movs r0, 0x2 - str r0, [r1, 0x60] - b _08035654 - .align 2, 0 -_080355E4: .4byte gUnknown_203B340 -_080355E8: - ldr r1, [r4] - ldr r0, [r1, 0x64] - cmp r0, 0 - bgt _08035600 - movs r0, 0x3 - str r0, [r1, 0x60] - ldr r2, _0803560C - movs r0, 0x9 - movs r1, 0x1E - ldr r2, [r2] - bl sub_8099AFC -_08035600: - ldr r1, [r4] - ldr r0, [r1, 0x64] - subs r0, 0x1 - str r0, [r1, 0x64] - b _08035654 - .align 2, 0 -_0803560C: .4byte gUnknown_80E4A40 -_08035610: - bl sub_8099B94 - lsls r0, 24 - cmp r0, 0 - bne _08035654 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, _08035634 - ldr r1, [r0] - movs r0, 0x4 - str r0, [r1, 0x60] - b _08035654 - .align 2, 0 -_08035634: .4byte gUnknown_203B340 -_08035638: - movs r0, 0 - bl sub_8099690 - ldr r2, _08035650 - movs r0, 0x1 - movs r1, 0 - ldr r2, [r2] - bl sub_8099A5C - movs r0, 0x3 - b _08035656 - .align 2, 0 -_08035650: .4byte gUnknown_80E4A40 -_08035654: - movs r0, 0 -_08035656: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8035574 - - thumb_func_start sub_803565C -sub_803565C: - push {r4,lr} - ldr r4, _08035674 - ldr r0, [r4] - cmp r0, 0 - beq _0803566E - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0803566E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08035674: .4byte gUnknown_203B340 - thumb_func_end sub_803565C - - thumb_func_start sub_8035678 -sub_8035678: - push {r4,lr} - ldr r4, _0803569C - movs r0, 0x8 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r1, 0 - str r1, [r0] - str r1, [r0, 0x4] - movs r0, 0 - movs r1, 0x39 - bl sub_80015C0 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0803569C: .4byte gUnknown_203B344 - thumb_func_end sub_8035678 - - thumb_func_start sub_80356A0 -sub_80356A0: - push {r4,lr} - ldr r0, _080356C4 - ldrh r4, [r0] - ldr r3, _080356C8 - ldr r2, _080356CC - ldr r1, [r2] - ldr r0, [r1, 0x4] - lsls r0, 1 - adds r0, r3 - ldrh r3, [r0] - ldr r0, [r1] - cmp r0, 0x4 - bhi _08035734 - lsls r0, 2 - ldr r1, _080356D0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080356C4: .4byte gUnknown_20255F0 -_080356C8: .4byte gUnknown_80E5990 -_080356CC: .4byte gUnknown_203B344 -_080356D0: .4byte _080356D4 - .align 2, 0 -_080356D4: - .4byte _08035728 - .4byte _080356E8 - .4byte _08035710 - .4byte _0803574C - .4byte _08035730 -_080356E8: - cmp r3, 0 - bne _080356F4 - ldr r1, [r2] - movs r0, 0x4 - str r0, [r1] - b _08035734 -_080356F4: - cmp r4, r3 - bne _08035700 - ldr r1, [r2] - movs r0, 0x2 - str r0, [r1] - b _08035734 -_08035700: - ands r3, r4 - cmp r3, r4 - bne _08035728 - ldr r1, [r2] - ldr r0, [r1, 0x4] - cmp r0, 0 - bne _08035734 - b _0803572A -_08035710: - cmp r4, 0 - bne _08035722 - ldr r1, [r2] - movs r0, 0x1 - str r0, [r1] - ldr r0, [r1, 0x4] - adds r0, 0x1 - str r0, [r1, 0x4] - b _08035734 -_08035722: - ands r3, r4 - cmp r3, r4 - beq _08035734 -_08035728: - ldr r1, [r2] -_0803572A: - movs r0, 0x3 - str r0, [r1] - b _08035734 -_08035730: - movs r0, 0x3 - b _0803574E -_08035734: - movs r0, 0 - movs r1, 0x39 - bl sub_8001658 - cmp r0, 0 - bne _08035744 - movs r0, 0 - b _0803574E -_08035744: - ldr r0, _08035754 - ldr r1, [r0] - movs r0, 0x3 - str r0, [r1] -_0803574C: - movs r0, 0x2 -_0803574E: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08035754: .4byte gUnknown_203B344 - thumb_func_end sub_80356A0 - - thumb_func_start sub_8035758 -sub_8035758: - push {r4,lr} - ldr r4, _08035770 - ldr r0, [r4] - cmp r0, 0 - beq _0803576A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0803576A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08035770: .4byte gUnknown_203B344 - thumb_func_end sub_8035758 - - thumb_func_start InitMainMenu -InitMainMenu: - push {r4,r5,lr} - ldr r5, _080357C8 - ldr r0, [r5] - cmp r0, 0 - bne _08035790 - movs r0, 0x40 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - movs r2, 0x40 - bl MemoryFill8 -_08035790: - ldr r0, [r5] - ldr r1, _080357CC - str r1, [r0] - movs r2, 0x1 - str r2, [r0, 0x4] - str r2, [r0, 0x8] - adds r1, 0x23 - strh r1, [r0, 0x38] - movs r1, 0x1 - negs r1, r1 - str r1, [r0, 0x3C] - adds r0, 0x2E - movs r4, 0 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x2C - strb r2, [r0] - ldr r0, [r5] - adds r0, 0x2D - strb r4, [r0] - bl sub_8035DA0 - ldr r0, [r5] - adds r0, 0x3A - strb r4, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080357C8: .4byte gUnknown_203B348 -_080357CC: .4byte 0x0000ffdc - thumb_func_end InitMainMenu - - thumb_func_start sub_80357D0 -sub_80357D0: - push {r4,lr} - ldr r4, _080357E8 - ldr r0, [r4] - cmp r0, 0 - beq _080357E2 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080357E2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080357E8: .4byte gUnknown_203B348 - thumb_func_end sub_80357D0 - - thumb_func_start SetUpMenu -SetUpMenu: - push {lr} - ldr r0, _08035810 - ldr r0, [r0] - ldr r1, [r0] - ldr r0, [r0, 0x4] - cmp r1, r0 - bne _080357FC - b _08035958 -_080357FC: - subs r0, 0x1 - cmp r0, 0x2D - bls _08035804 - b _08035950 -_08035804: - lsls r0, 2 - ldr r1, _08035814 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08035810: .4byte gUnknown_203B348 -_08035814: .4byte _08035818 - .align 2, 0 -_08035818: - .4byte _080358D0 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _080358E0 - .4byte _080358E0 - .4byte _080358E0 - .4byte _080358E0 - .4byte _08035934 - .4byte _0803590C - .4byte _080358F0 - .4byte _08035912 - .4byte _08035918 - .4byte _0803591E - .4byte _0803594C - .4byte _08035950 - .4byte _08035950 - .4byte _080358F6 - .4byte _080358F6 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035924 - .4byte _08035924 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _08035950 - .4byte _0803593A - .4byte _0803593A - .4byte _0803593A - .4byte _0803593A - .4byte _0803593A - .4byte _0803593A -_080358D0: - bl sub_8094C14 - movs r0, 0 - bl sub_8099690 - bl sub_8035E10 - b _08035950 -_080358E0: - ldr r0, _080358EC - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_8039254 - b _08035950 - .align 2, 0 -_080358EC: .4byte gUnknown_203B348 -_080358F0: - bl sub_8036400 - b _08035950 -_080358F6: - ldr r0, _08035908 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_8035DB4 - bl sub_8036FDC - b _08035950 - .align 2, 0 -_08035908: .4byte gUnknown_203B348 -_0803590C: - bl sub_803225C - b _08035950 -_08035912: - bl sub_80398AC - b _08035950 -_08035918: - bl sub_803A1D8 - b _08035950 -_0803591E: - bl sub_803A1E4 - b _08035950 -_08035924: - ldr r0, _08035930 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_8038900 - b _08035950 - .align 2, 0 -_08035930: .4byte gUnknown_203B348 -_08035934: - bl sub_80382A0 - b _08035950 -_0803593A: - ldr r0, _08035948 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl sub_803850C - b _08035950 - .align 2, 0 -_08035948: .4byte gUnknown_203B348 -_0803594C: - bl sub_803A200 -_08035950: - ldr r0, _0803595C - ldr r1, [r0] - ldr r0, [r1, 0x4] - str r0, [r1] -_08035958: - pop {r0} - bx r0 - .align 2, 0 -_0803595C: .4byte gUnknown_203B348 - thumb_func_end SetUpMenu - - thumb_func_start UpdateMenu -UpdateMenu: - push {lr} - ldr r2, _0803597C - ldr r0, _08035980 - ldr r0, [r0] - ldr r0, [r0, 0x4] - subs r0, 0x1 - cmp r0, 0x2D - bls _08035972 - b _08035AA6 -_08035972: - lsls r0, 2 - ldr r1, _08035984 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803597C: .4byte 0x0000ffdc -_08035980: .4byte gUnknown_203B348 -_08035984: .4byte _08035988 - .align 2, 0 -_08035988: - .4byte _08035A40 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035A46 - .4byte _08035A46 - .4byte _08035A46 - .4byte _08035A46 - .4byte _08035A8E - .4byte _08035A52 - .4byte _08035A4C - .4byte _08035A58 - .4byte _08035A5E - .4byte _08035A70 - .4byte _08035AA0 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035AA6 - .4byte _08035A88 - .4byte _08035A88 - .4byte _08035AA6 - .4byte _08035A94 - .4byte _08035A94 - .4byte _08035A94 - .4byte _08035A94 - .4byte _08035A94 - .4byte _08035A9A - .4byte _08035A9A - .4byte _08035A9A - .4byte _08035A9A - .4byte _08035A9A - .4byte _08035A9A -_08035A40: - bl sub_8035EEC - b _08035AA4 -_08035A46: - bl sub_803941C - b _08035AA4 -_08035A4C: - bl sub_8036448 - b _08035A62 -_08035A52: - bl sub_8032318 - b _08035A62 -_08035A58: - bl sub_8039928 - b _08035A62 -_08035A5E: - bl sub_803A1DC -_08035A62: - movs r2, 0x1 - cmp r0, 0x3 - beq _08035AA6 - ldr r2, _08035A6C - b _08035AA6 - .align 2, 0 -_08035A6C: .4byte 0x0000ffdc -_08035A70: - bl sub_803A1E8 - movs r2, 0x5 - cmp r0, 0x3 - beq _08035AA6 - ldr r2, _08035A84 - cmp r0, 0x2 - bne _08035AA6 - movs r2, 0x1 - b _08035AA6 - .align 2, 0 -_08035A84: .4byte 0x0000ffdc -_08035A88: - bl sub_8038A90 - b _08035AA4 -_08035A8E: - bl sub_80382C0 - b _08035AA4 -_08035A94: - bl sub_80383D4 - b _08035AA4 -_08035A9A: - bl sub_8038630 - b _08035AA4 -_08035AA0: - bl sub_803A2A4 -_08035AA4: - adds r2, r0, 0 -_08035AA6: - ldr r0, _08035AB8 - cmp r2, r0 - beq _08035AB2 - ldr r0, _08035ABC - ldr r0, [r0] - str r2, [r0, 0x4] -_08035AB2: - adds r0, r2, 0 - pop {r1} - bx r1 - .align 2, 0 -_08035AB8: .4byte 0x0000ffdc -_08035ABC: .4byte gUnknown_203B348 - thumb_func_end UpdateMenu - - thumb_func_start CleanUpMenu -CleanUpMenu: - push {lr} - ldr r0, _08035AE4 - ldr r0, [r0] - ldr r1, [r0, 0x8] - ldr r0, [r0, 0x4] - cmp r1, r0 - bne _08035AD0 - b _08035BF8 -_08035AD0: - subs r0, r1, 0x1 - cmp r0, 0x2D - bls _08035AD8 - b _08035BF0 -_08035AD8: - lsls r0, 2 - ldr r1, _08035AE8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08035AE4: .4byte gUnknown_203B348 -_08035AE8: .4byte _08035AEC - .align 2, 0 -_08035AEC: - .4byte _08035BA4 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BAA - .4byte _08035BAA - .4byte _08035BAA - .4byte _08035BAA - .4byte _08035BDA - .4byte _08035BBC - .4byte _08035BB0 - .4byte _08035BC2 - .4byte _08035BC8 - .4byte _08035BCE - .4byte _08035BEC - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BB6 - .4byte _08035BB6 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BF0 - .4byte _08035BD4 - .4byte _08035BD4 - .4byte _08035BF0 - .4byte _08035BE0 - .4byte _08035BE0 - .4byte _08035BE0 - .4byte _08035BE0 - .4byte _08035BE0 - .4byte _08035BE6 - .4byte _08035BE6 - .4byte _08035BE6 - .4byte _08035BE6 - .4byte _08035BE6 - .4byte _08035BE6 -_08035BA4: - bl sub_8035EC0 - b _08035BF0 -_08035BAA: - bl sub_80393F0 - b _08035BF0 -_08035BB0: - bl sub_8036B04 - b _08035BF0 -_08035BB6: - bl sub_80370D4 - b _08035BF0 -_08035BBC: - bl sub_80327E4 - b _08035BF0 -_08035BC2: - bl sub_80399E4 - b _08035BF0 -_08035BC8: - bl nullsub_55 - b _08035BF0 -_08035BCE: - bl sub_803A1EC - b _08035BF0 -_08035BD4: - bl sub_8038A5C - b _08035BF0 -_08035BDA: - bl sub_80382AC - b _08035BF0 -_08035BE0: - bl sub_80383A8 - b _08035BF0 -_08035BE6: - bl sub_8038604 - b _08035BF0 -_08035BEC: - bl sub_803A278 -_08035BF0: - ldr r0, _08035BFC - ldr r1, [r0] - ldr r0, [r1, 0x4] - str r0, [r1, 0x8] -_08035BF8: - pop {r0} - bx r0 - .align 2, 0 -_08035BFC: .4byte gUnknown_203B348 - thumb_func_end CleanUpMenu - - thumb_func_start sub_8035C00 -sub_8035C00: - ldr r1, _08035C0C - ldr r1, [r1] - ldr r0, [r0] - str r0, [r1, 0x2C] - bx lr - .align 2, 0 -_08035C0C: .4byte gUnknown_203B348 - thumb_func_end sub_8035C00 - - thumb_func_start sub_8035C10 -sub_8035C10: - ldr r0, _08035C18 - ldr r0, [r0] - adds r0, 0x2C - bx lr - .align 2, 0 -_08035C18: .4byte gUnknown_203B348 - thumb_func_end sub_8035C10 - - thumb_func_start sub_8035C1C -sub_8035C1C: - ldr r2, _08035C38 - ldr r0, [r2] - adds r0, 0x2E - movs r3, 0 - strb r3, [r0] - ldr r0, [r2] - adds r0, 0x2C - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0x2D - strb r3, [r0] - bx lr - .align 2, 0 -_08035C38: .4byte gUnknown_203B348 - thumb_func_end sub_8035C1C - - thumb_func_start SetMenuItems -SetMenuItems: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - ldr r0, [sp, 0x24] - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r0, r5, 1 - adds r0, r5 - lsls r0, 3 - adds r0, r4 - ldm r3!, {r1,r2,r7} - stm r0!, {r1,r2,r7} - ldm r3!, {r1,r2,r7} - stm r0!, {r1,r2,r7} - bl sub_8004914 - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - mov r0, r8 - cmp r0, 0 - beq _08035C90 - lsls r4, r5, 2 - adds r0, r4, r5 - lsls r0, 4 - adds r0, r6, r0 - ldr r1, [sp, 0x28] - str r1, [sp] - str r5, [sp, 0x4] - ldr r1, [sp, 0x20] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _08035CA8 -_08035C90: - lsls r4, r5, 2 - adds r0, r4, r5 - lsls r0, 4 - adds r0, r6, r0 - mov r1, r8 - str r1, [sp] - str r5, [sp, 0x4] - ldr r1, [sp, 0x20] - movs r2, 0 - movs r3, 0 - bl sub_8012E04 -_08035CA8: - adds r0, r4, r5 - lsls r0, 4 - adds r0, r6 - adds r0, 0x4C - movs r1, 0x1 - strb r1, [r0] - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end SetMenuItems - - thumb_func_start sub_8035CC0 -sub_8035CC0: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - bl sub_8006518 - lsls r1, r4, 1 - adds r1, r4 - lsls r1, 3 - adds r1, r5 - ldr r0, _08035CF0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - bl sub_8004914 - adds r0, r5, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08035CF0: .4byte gUnknown_80E59A8 - thumb_func_end sub_8035CC0 - - thumb_func_start sub_8035CF4 -sub_8035CF4: - push {lr} - adds r3, r0, 0 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 4 - adds r0, r3 - adds r1, r0, 0 - adds r1, 0x4C - strb r2, [r1] - adds r2, r0, 0 - adds r2, 0x4D - movs r1, 0x1 - strb r1, [r2] - subs r1, 0x2 - str r1, [r0, 0x48] - bl sub_8012EBC - pop {r0} - bx r0 - thumb_func_end sub_8035CF4 - - thumb_func_start sub_8035D1C -sub_8035D1C: - ldr r0, _08035D28 - ldr r1, [r0] - ldr r0, _08035D2C - strh r0, [r1, 0x38] - bx lr - .align 2, 0 -_08035D28: .4byte gUnknown_203B348 -_08035D2C: .4byte 0x0000ffff - thumb_func_end sub_8035D1C - - thumb_func_start sub_8035D30 -sub_8035D30: - ldr r1, _08035D38 - ldr r1, [r1] - strh r0, [r1, 0x38] - bx lr - .align 2, 0 -_08035D38: .4byte gUnknown_203B348 - thumb_func_end sub_8035D30 - - thumb_func_start sub_8035D3C -sub_8035D3C: - ldr r0, _08035D48 - ldr r0, [r0] - movs r1, 0x38 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_08035D48: .4byte gUnknown_203B348 - thumb_func_end sub_8035D3C - - thumb_func_start sub_8035D4C -sub_8035D4C: - ldr r0, _08035D54 - ldr r0, [r0] - bx lr - .align 2, 0 -_08035D54: .4byte gUnknown_203B348 - thumb_func_end sub_8035D4C - - thumb_func_start sub_8035D58 -sub_8035D58: - ldr r0, _08035D64 - ldr r1, [r0] - movs r0, 0x1 - negs r0, r0 - str r0, [r1, 0x3C] - bx lr - .align 2, 0 -_08035D64: .4byte gUnknown_203B348 - thumb_func_end sub_8035D58 - - thumb_func_start sub_8035D68 -sub_8035D68: - ldr r1, _08035D70 - ldr r1, [r1] - str r0, [r1, 0x3C] - bx lr - .align 2, 0 -_08035D70: .4byte gUnknown_203B348 - thumb_func_end sub_8035D68 - - thumb_func_start sub_8035D74 -sub_8035D74: - ldr r0, _08035D7C - ldr r0, [r0] - ldr r0, [r0, 0x3C] - bx lr - .align 2, 0 -_08035D7C: .4byte gUnknown_203B348 - thumb_func_end sub_8035D74 - - thumb_func_start sub_8035D80 -sub_8035D80: - ldr r1, _08035D90 - ldr r2, [r1] - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [r2, 0x30] - str r1, [r2, 0x34] - bx lr - .align 2, 0 -_08035D90: .4byte gUnknown_203B348 - thumb_func_end sub_8035D80 - - thumb_func_start sub_8035D94 -sub_8035D94: - ldr r0, _08035D9C - ldr r0, [r0] - adds r0, 0x30 - bx lr - .align 2, 0 -_08035D9C: .4byte gUnknown_203B348 - thumb_func_end sub_8035D94 - - thumb_func_start sub_8035DA0 -sub_8035DA0: - ldr r2, _08035DB0 - ldr r0, [r2] - adds r0, 0x30 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - str r1, [r0, 0x34] - bx lr - .align 2, 0 -_08035DB0: .4byte gUnknown_203B348 - thumb_func_end sub_8035DA0 - - thumb_func_start sub_8035DB4 -sub_8035DB4: - push {lr} - movs r1, 0x8 - subs r0, 0x13 - cmp r0, 0x7 - bhi _08035E0A - lsls r0, 2 - ldr r1, _08035DC8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08035DC8: .4byte _08035DCC - .align 2, 0 -_08035DCC: - .4byte _08035DEC - .4byte _08035DF0 - .4byte _08035DF4 - .4byte _08035DF8 - .4byte _08035DFC - .4byte _08035E00 - .4byte _08035E04 - .4byte _08035E08 -_08035DEC: - movs r1, 0 - b _08035E0A -_08035DF0: - movs r1, 0x1 - b _08035E0A -_08035DF4: - movs r1, 0x2 - b _08035E0A -_08035DF8: - movs r1, 0x3 - b _08035E0A -_08035DFC: - movs r1, 0x4 - b _08035E0A -_08035E00: - movs r1, 0x5 - b _08035E0A -_08035E04: - movs r1, 0x6 - b _08035E0A -_08035E08: - movs r1, 0x7 -_08035E0A: - adds r0, r1, 0 - pop {r1} - bx r1 - thumb_func_end sub_8035DB4 - - thumb_func_start sub_8035E10 -sub_8035E10: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r5, _08035EB8 - ldr r0, [r5] - cmp r0, 0 - bne _08035E34 - movs r4, 0xD4 - lsls r4, 1 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 -_08035E34: - mov r12, r5 - movs r0, 0xA2 - lsls r0, 1 - mov r8, r0 - ldr r4, _08035EBC - movs r3, 0 - movs r2, 0x3 -_08035E42: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - add r1, r8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _08035E42 - bl sub_8004914 - ldr r4, _08035EB8 - ldr r0, [r4] - movs r6, 0xA2 - lsls r6, 1 - adds r0, r6 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_803628C - ldr r0, [r4] - movs r7, 0xD2 - lsls r7, 1 - adds r0, r7 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - bl SetMainMenuType - lsls r0, 24 - cmp r0, 0 - beq _08035E9A - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0x2 - movs r2, 0 - bl sub_8035CF4 -_08035E9A: - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08035EB8: .4byte gUnknown_203B34C -_08035EBC: .4byte gUnknown_80E59C8 - thumb_func_end sub_8035E10 - - thumb_func_start sub_8035EC0 -sub_8035EC0: - push {r4,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _08035EE8 - ldr r0, [r4] - cmp r0, 0 - beq _08035EE0 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08035EE0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08035EE8: .4byte gUnknown_203B34C - thumb_func_end sub_8035EC0 - - thumb_func_start sub_8035EEC -sub_8035EEC: - push {r4-r6,lr} - sub sp, 0x4 - ldr r6, _08035F64 - str r6, [sp] - ldr r4, _08035F68 - ldr r0, [r4] - ldr r5, [r0] - cmp r5, 0xC - beq _08035FB8 - cmp r5, 0xC - bls _08035F04 - b _0803601A -_08035F04: - cmp r5, 0x1 - beq _08035F0A - b _0803601A -_08035F0A: - adds r0, 0xA4 - bl sub_8012FD8 - ldr r0, [r4] - adds r0, 0x4 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08035F28 - ldr r0, [r4] - adds r0, 0x4 - mov r1, sp - bl sub_8013114 -_08035F28: - bl SetMainMenuType - lsls r0, 24 - cmp r0, 0 - beq _08035F4A - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0x2 - movs r2, 0 - bl sub_8035CF4 -_08035F4A: - ldr r1, [sp] - cmp r1, 0xC - beq _08035FA8 - cmp r1, 0xC - bhi _08035F6C - cmp r1, 0x3 - beq _08035FAC - cmp r1, 0x3 - bcc _0803601A - cmp r1, 0x6 - bcc _0803601A - b _08035FAC - .align 2, 0 -_08035F64: .4byte 0x0000ffdc -_08035F68: .4byte gUnknown_203B34C -_08035F6C: - cmp r1, r6 - beq _08035FF2 - cmp r1, r6 - bhi _08035F7A - cmp r1, 0x10 - bhi _0803601A - b _08035FAC -_08035F7A: - ldr r0, _08035FA4 - cmp r1, r0 - bne _0803601A - ldr r0, [r4] - str r5, [r0] - str r6, [sp] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0x2 - movs r2, 0 - bl sub_8035CF4 - b _0803601A - .align 2, 0 -_08035FA4: .4byte 0x0000ffdd -_08035FA8: - bl sub_8035DA0 -_08035FAC: - ldr r1, _08035FB4 - ldr r0, [sp] - str r0, [r1] - b _0803601A - .align 2, 0 -_08035FB4: .4byte gUnknown_203B350 -_08035FB8: - adds r0, 0x54 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08035FCE - ldr r0, [r4] - adds r0, 0x54 - mov r1, sp - bl sub_8013114 -_08035FCE: - ldr r1, [sp] - cmp r1, 0x12 - beq _08036008 - cmp r1, 0x12 - bhi _08035FDE - cmp r1, 0x11 - beq _08035FFC - b _0803601A -_08035FDE: - cmp r1, r6 - beq _08036018 - ldr r0, _08035FF8 - cmp r1, r0 - bne _0803601A - bl sub_803623C - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1] -_08035FF2: - str r6, [sp] - b _0803601A - .align 2, 0 -_08035FF8: .4byte 0x0000ffdd -_08035FFC: - ldr r0, _08036004 - str r1, [r0] - str r5, [sp] - b _0803601A - .align 2, 0 -_08036004: .4byte gUnknown_203B354 -_08036008: - ldr r0, _08036014 - str r1, [r0] - movs r0, 0x14 - str r0, [sp] - b _0803601A - .align 2, 0 -_08036014: .4byte gUnknown_203B354 -_08036018: - str r1, [sp] -_0803601A: - ldr r0, [sp] - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8035EEC - - thumb_func_start SetMainMenuType -SetMainMenuType: - push {r4-r6,lr} - sub sp, 0x10 - ldr r6, _08036048 - ldr r2, [r6] - ldr r0, [r2, 0x8] - movs r3, 0x30 - ldrsh r1, [r2, r3] - lsls r1, 3 - adds r1, r0 - ldr r5, [r1, 0x4] - movs r0, 0xD2 - lsls r0, 1 - adds r1, r2, r0 - ldr r0, [r1] - cmp r0, r5 - bne _0803604C - movs r0, 0 - b _08036226 - .align 2, 0 -_08036048: .4byte gUnknown_203B34C -_0803604C: - str r5, [r1] - movs r4, 0xA2 - lsls r4, 1 - adds r0, r2, r4 - movs r1, 0x2 - bl sub_8035CC0 - ldr r0, [r6] - adds r0, r4 - movs r1, 0x3 - bl sub_8035CC0 - subs r0, r5, 0x3 - cmp r0, 0xD - bls _0803606C - b _08036224 -_0803606C: - lsls r0, 2 - ldr r1, _08036078 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08036078: .4byte _0803607C - .align 2, 0 -_0803607C: - .4byte _08036114 - .4byte _08036224 - .4byte _08036224 - .4byte _080360F4 - .4byte _08036134 - .4byte _08036154 - .4byte _08036224 - .4byte _08036174 - .4byte _08036194 - .4byte _080361B4 - .4byte _080360D4 - .4byte _080361D4 - .4byte _080360B4 - .4byte _08036204 -_080360B4: - ldr r0, _080360C8 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _080360CC - ldr r2, _080360D0 - b _080361E4 - .align 2, 0 -_080360C8: .4byte gUnknown_203B34C -_080360CC: .4byte gUnknown_80E5CB4 -_080360D0: .4byte gUnknown_80E6030 -_080360D4: - ldr r0, _080360E8 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r3, 0xA2 - lsls r3, 1 - adds r1, r3 - ldr r3, _080360EC - ldr r2, _080360F0 - b _080361E4 - .align 2, 0 -_080360E8: .4byte gUnknown_203B34C -_080360EC: .4byte gUnknown_80E5CB4 -_080360F0: .4byte gUnknown_80E5F80 -_080360F4: - ldr r0, _08036108 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _0803610C - ldr r2, _08036110 - b _080361E4 - .align 2, 0 -_08036108: .4byte gUnknown_203B34C -_0803610C: .4byte gUnknown_80E5CB4 -_08036110: .4byte gUnknown_80E5F1C -_08036114: - ldr r0, _08036128 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r3, 0xA2 - lsls r3, 1 - adds r1, r3 - ldr r3, _0803612C - ldr r2, _08036130 - b _080361E4 - .align 2, 0 -_08036128: .4byte gUnknown_203B34C -_0803612C: .4byte gUnknown_80E5CB4 -_08036130: .4byte gUnknown_80E5CCC -_08036134: - ldr r0, _08036148 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _0803614C - ldr r2, _08036150 - b _080361E4 - .align 2, 0 -_08036148: .4byte gUnknown_203B34C -_0803614C: .4byte gUnknown_80E5CB4 -_08036150: .4byte gUnknown_80E5DA0 -_08036154: - ldr r0, _08036168 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r3, 0xA2 - lsls r3, 1 - adds r1, r3 - ldr r3, _0803616C - ldr r2, _08036170 - b _080361E4 - .align 2, 0 -_08036168: .4byte gUnknown_203B34C -_0803616C: .4byte gUnknown_80E5CB4 -_08036170: .4byte gUnknown_80E5DF0 -_08036174: - ldr r0, _08036188 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _0803618C - ldr r2, _08036190 - b _080361E4 - .align 2, 0 -_08036188: .4byte gUnknown_203B34C -_0803618C: .4byte gUnknown_80E5CB4 -_08036190: .4byte gUnknown_80E5D0C -_08036194: - ldr r0, _080361A8 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r3, 0xA2 - lsls r3, 1 - adds r1, r3 - ldr r3, _080361AC - ldr r2, _080361B0 - b _080361E4 - .align 2, 0 -_080361A8: .4byte gUnknown_203B34C -_080361AC: .4byte gUnknown_80E5CB4 -_080361B0: .4byte gUnknown_80E5E5C -_080361B4: - ldr r0, _080361C8 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _080361CC - ldr r2, _080361D0 - b _080361E4 - .align 2, 0 -_080361C8: .4byte gUnknown_203B34C -_080361CC: .4byte gUnknown_80E5CB4 -_080361D0: .4byte gUnknown_80E5EBC -_080361D4: - ldr r0, _080361F8 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r3, 0xA2 - lsls r3, 1 - adds r1, r3 - ldr r3, _080361FC - ldr r2, _08036200 -_080361E4: - str r2, [sp] - movs r2, 0 - str r2, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r2, 0x2 - bl SetMenuItems - b _08036224 - .align 2, 0 -_080361F8: .4byte gUnknown_203B34C -_080361FC: .4byte gUnknown_80E5CB4 -_08036200: .4byte gUnknown_80E5FCC -_08036204: - ldr r0, _08036230 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _08036234 - ldr r2, _08036238 - str r2, [sp] - movs r2, 0 - str r2, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r2, 0x2 - bl SetMenuItems -_08036224: - movs r0, 0x1 -_08036226: - add sp, 0x10 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08036230: .4byte gUnknown_203B34C -_08036234: .4byte gUnknown_80E5CB4 -_08036238: .4byte gUnknown_80E5D48 - thumb_func_end SetMainMenuType - - thumb_func_start sub_803623C -sub_803623C: - push {r4,lr} - ldr r4, _08036288 - ldr r0, [r4] - movs r1, 0xA2 - lsls r1, 1 - adds r0, r1 - movs r1, 0x1 - bl sub_8035CC0 - bl sub_803628C - ldr r0, [r4] - movs r1, 0xD2 - lsls r1, 1 - adds r0, r1 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - bl SetMainMenuType - lsls r0, 24 - cmp r0, 0 - beq _08036276 - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0x2 - movs r2, 0 - bl sub_8035CF4 -_08036276: - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08036288: .4byte gUnknown_203B34C - thumb_func_end sub_803623C - - thumb_func_start sub_803628C -sub_803628C: - push {r4,lr} - sub sp, 0x10 - bl sub_8011C34 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _0803629E - b _080363A4 -_0803629E: - movs r0, 0x1 - bl sub_8095324 - cmp r0, 0 - bne _08036344 - movs r0, 0x7 - bl sub_8095324 - cmp r0, 0 - beq _080362FC - bl sub_803D0D8 - lsls r0, 24 - cmp r0, 0 - beq _080362DC - ldr r0, _080362D0 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _080362D4 - ldr r2, _080362D8 - b _0803637C - .align 2, 0 -_080362D0: .4byte gUnknown_203B34C -_080362D4: .4byte gUnknown_80E5A78 -_080362D8: .4byte gUnknown_80E5C18 -_080362DC: - ldr r0, _080362F0 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _080362F4 - ldr r2, _080362F8 - b _0803637C - .align 2, 0 -_080362F0: .4byte gUnknown_203B34C -_080362F4: .4byte gUnknown_80E5BC4 -_080362F8: .4byte gUnknown_80E5BDC -_080362FC: - bl sub_803D0D8 - lsls r0, 24 - cmp r0, 0 - beq _08036324 - ldr r0, _08036318 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _0803631C - ldr r2, _08036320 - b _0803637C - .align 2, 0 -_08036318: .4byte gUnknown_203B34C -_0803631C: .4byte gUnknown_80E5A78 -_08036320: .4byte gUnknown_80E5AFC -_08036324: - ldr r0, _08036338 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _0803633C - ldr r2, _08036340 - b _0803637C - .align 2, 0 -_08036338: .4byte gUnknown_203B34C -_0803633C: .4byte gUnknown_80E5A60 -_08036340: .4byte gUnknown_80E5A90 -_08036344: - bl sub_803D0D8 - lsls r0, 24 - cmp r0, 0 - beq _0803636C - ldr r0, _08036360 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _08036364 - ldr r2, _08036368 - b _0803637C - .align 2, 0 -_08036360: .4byte gUnknown_203B34C -_08036364: .4byte gUnknown_80E5A78 -_08036368: .4byte gUnknown_80E5B8C -_0803636C: - ldr r0, _08036394 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _08036398 - ldr r2, _0803639C -_0803637C: - str r2, [sp] - movs r4, 0x1 - str r4, [sp, 0x4] - ldr r2, _080363A0 - ldr r2, [r2] - str r2, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0 - bl SetMenuItems - b _080363C8 - .align 2, 0 -_08036394: .4byte gUnknown_203B34C -_08036398: .4byte gUnknown_80E5B34 -_0803639C: .4byte gUnknown_80E5B4C -_080363A0: .4byte gUnknown_203B350 -_080363A4: - ldr r0, _080363D0 - ldr r1, [r0] - adds r0, r1, 0x4 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r2 - ldr r3, _080363D4 - ldr r2, _080363D8 - str r2, [sp] - movs r4, 0x1 - str r4, [sp, 0x4] - ldr r2, _080363DC - ldr r2, [r2] - str r2, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0 - bl SetMenuItems -_080363C8: - add sp, 0x10 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080363D0: .4byte gUnknown_203B34C -_080363D4: .4byte gUnknown_80E59E0 -_080363D8: .4byte gUnknown_80E59F8 -_080363DC: .4byte gUnknown_203B350 - thumb_func_end sub_803628C - - thumb_func_start sub_80363E0 -sub_80363E0: - push {lr} - ldr r0, _080363F4 - ldr r0, [r0] - cmp r0, 0 - beq _080363F8 - ldr r0, [r0] - cmp r0, 0xC - beq _080363F8 - movs r0, 0x1 - b _080363FA - .align 2, 0 -_080363F4: .4byte gUnknown_203B34C -_080363F8: - movs r0, 0 -_080363FA: - pop {r1} - bx r1 - thumb_func_end sub_80363E0 - - thumb_func_start sub_8036400 -sub_8036400: - push {r4,r5,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _08036444 - movs r4, 0xE8 - lsls r4, 2 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 - bl sub_8035C1C - bl sub_8035DA0 - ldr r1, [r5] - movs r0, 0x13 - str r0, [r1, 0x4] - movs r0, 0 - bl sub_8036FC4 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08036444: .4byte gUnknown_203B358 - thumb_func_end sub_8036400 - - thumb_func_start sub_8036448 -sub_8036448: - push {lr} - ldr r0, _08036460 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x12 - bhi _08036524 - lsls r0, 2 - ldr r1, _08036464 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08036460: .4byte gUnknown_203B358 -_08036464: .4byte _08036468 - .align 2, 0 -_08036468: - .4byte _080364B4 - .4byte _080364BA - .4byte _080364C0 - .4byte _080364C6 - .4byte _080364D2 - .4byte _080364CC - .4byte _080364D8 - .4byte _080364DE - .4byte _080364E4 - .4byte _080364F0 - .4byte _080364F6 - .4byte _080364FC - .4byte _08036502 - .4byte _08036514 - .4byte _08036508 - .4byte _080364EA - .4byte _0803650E - .4byte _0803651A - .4byte _08036520 -_080364B4: - bl sub_803652C - b _08036524 -_080364BA: - bl sub_8036590 - b _08036524 -_080364C0: - bl sub_80365AC - b _08036524 -_080364C6: - bl sub_8036674 - b _08036524 -_080364CC: - bl sub_8036728 - b _08036524 -_080364D2: - bl sub_8036788 - b _08036524 -_080364D8: - bl sub_8036830 - b _08036524 -_080364DE: - bl sub_803689C - b _08036524 -_080364E4: - bl sub_80368D4 - b _08036524 -_080364EA: - bl sub_8036A7C - b _08036524 -_080364F0: - bl sub_8036934 - b _08036524 -_080364F6: - bl sub_8036950 - b _08036524 -_080364FC: - bl sub_8036AA4 - b _08036524 -_08036502: - bl sub_80369FC - b _08036524 -_08036508: - bl sub_8036A34 - b _08036524 -_0803650E: - bl sub_8036A54 - b _08036524 -_08036514: - bl sub_8036A18 - b _08036524 -_0803651A: - bl sub_8036ADC - b _08036524 -_08036520: - movs r0, 0x3 - b _08036526 -_08036524: - movs r0, 0 -_08036526: - pop {r1} - bx r1 - thumb_func_end sub_8036448 - - thumb_func_start sub_803652C -sub_803652C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - adds r1, r0, 0 - cmp r1, 0 - bne _0803658A - ldr r2, [sp] - cmp r2, 0x1 - beq _08036556 - cmp r2, 0x1 - bgt _0803654C - cmp r2, 0 - beq _08036584 - b _0803658A -_0803654C: - cmp r2, 0x2 - beq _0803656C - cmp r2, 0x7 - beq _08036584 - b _0803658A -_08036556: - ldr r0, _08036568 - ldr r0, [r0] - str r1, [r0, 0x8] - str r2, [r0, 0x10] - movs r0, 0x1 - bl sub_8036FC4 - b _0803658A - .align 2, 0 -_08036568: .4byte gUnknown_203B358 -_0803656C: - ldr r0, _08036580 - ldr r1, [r0] - movs r0, 0x1 - str r0, [r1, 0x8] - str r2, [r1, 0x10] - movs r0, 0x7 - bl sub_8036FC4 - b _0803658A - .align 2, 0 -_08036580: .4byte gUnknown_203B358 -_08036584: - movs r0, 0x12 - bl sub_8036FC4 -_0803658A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_803652C - - thumb_func_start sub_8036590 -sub_8036590: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080365A4 - movs r0, 0x2 - bl sub_8036FC4 -_080365A4: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8036590 - - thumb_func_start sub_80365AC -sub_80365AC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _080365E8 - ldr r0, [r4] - ldr r7, _080365EC - adds r0, r7 - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - ldr r6, _080365F0 - adds r0, r6 - movs r5, 0x1 - strb r5, [r0] - ldr r0, [r4] - movs r2, 0x97 - lsls r2, 2 - mov r8, r2 - add r0, r8 - strb r1, [r0] - movs r0, 0x1 - bl sub_801CA08 - cmp r0, 0x3 - beq _08036606 - cmp r0, 0x3 - bhi _080365F4 - cmp r0, 0x2 - beq _080365FA - b _0803666A - .align 2, 0 -_080365E8: .4byte gUnknown_203B358 -_080365EC: .4byte 0x0000025e -_080365F0: .4byte 0x0000025d -_080365F4: - cmp r0, 0x4 - beq _0803662C - b _0803666A -_080365FA: - bl sub_801CBB8 - movs r0, 0 - bl sub_8036FC4 - b _0803666A -_08036606: - bl sub_801CB24 - ldr r1, [r4] - ldr r2, _08036624 - adds r1, r2 - strb r0, [r1] - ldr r0, [r4] - ldr r1, _08036628 - adds r0, r1 - strb r5, [r0] - movs r0, 0x3 - bl sub_8036FC4 - b _0803666A - .align 2, 0 -_08036624: .4byte 0x0000025e -_08036628: .4byte 0x0000025d -_0803662C: - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x4] - bl sub_801CB24 - ldr r1, [r4] - adds r1, r7 - strb r0, [r1] - ldr r0, [r4] - adds r0, r6 - strb r5, [r0] - ldr r0, [r4] - movs r2, 0xF2 - lsls r2, 1 - adds r0, r2 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - add r0, r8 - bl sub_801B3C0 - movs r0, 0x5 - bl sub_8036FC4 -_0803666A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80365AC - - thumb_func_start sub_8036674 -sub_8036674: - push {r4,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r0, 0 - bl sub_801CA08 - ldr r4, _080366B8 - ldr r0, [r4] - movs r1, 0x9A - lsls r1, 1 - adds r0, r1 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080366A6 - ldr r0, [r4] - movs r1, 0x9A - lsls r1, 1 - adds r0, r1 - mov r1, sp - bl sub_8013114 -_080366A6: - ldr r0, [sp] - cmp r0, 0x3 - beq _080366C6 - cmp r0, 0x3 - bgt _080366BC - cmp r0, 0 - beq _08036700 - b _0803671A - .align 2, 0 -_080366B8: .4byte gUnknown_203B358 -_080366BC: - cmp r0, 0x4 - beq _080366CE - cmp r0, 0x7 - beq _08036700 - b _0803671A -_080366C6: - movs r0, 0x4 - bl sub_8036FC4 - b _0803671A -_080366CE: - ldr r0, [r4] - movs r1, 0x13 - str r1, [r0, 0x4] - movs r1, 0xF2 - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x97 - lsls r1, 2 - adds r0, r1 - bl sub_801B3C0 - movs r0, 0x5 - bl sub_8036FC4 - b _0803671A -_08036700: - ldr r0, _08036724 - ldr r0, [r0] - movs r1, 0xC2 - lsls r1, 1 - adds r0, r1 - movs r1, 0x3 - bl sub_8035CC0 - bl sub_801CCD8 - movs r0, 0x2 - bl sub_8036FC4 -_0803671A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08036724: .4byte gUnknown_203B358 - thumb_func_end sub_8036674 - - thumb_func_start sub_8036728 -sub_8036728: - push {r4,lr} - bl sub_801B410 - cmp r0, 0x1 - beq _08036780 - cmp r0, 0x1 - bcc _08036780 - cmp r0, 0x3 - bhi _08036780 - bl sub_801B450 - bl sub_8004914 - ldr r4, _08036778 - ldr r0, [r4] - movs r1, 0xF2 - lsls r1, 1 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x1 - bl sub_801CB5C - ldr r4, [r4] - ldr r0, [r4, 0x4] - cmp r0, 0x13 - bne _0803677C - adds r0, r4, 0 - adds r0, 0x44 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x3 - bl sub_8036FC4 - b _08036780 - .align 2, 0 -_08036778: .4byte gUnknown_203B358 -_0803677C: - bl sub_8036FC4 -_08036780: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8036728 - - thumb_func_start sub_8036788 -sub_8036788: - push {r4,lr} - ldr r4, _080367B8 - ldr r0, [r4] - movs r1, 0x9A - lsls r1, 1 - adds r0, r1 - bl sub_8012FD8 - movs r0, 0 - bl sub_801CA08 - ldr r0, [r4] - adds r0, 0x14 - bl sub_8013BBC - cmp r0, 0x1 - beq _080367BC - cmp r0, 0x1 - bcc _08036824 - cmp r0, 0x2 - beq _080367D2 - cmp r0, 0x3 - beq _080367F8 - b _08036824 - .align 2, 0 -_080367B8: .4byte gUnknown_203B358 -_080367BC: - bl sub_801CCD8 - ldr r0, [r4] - adds r0, 0x44 - movs r1, 0x3 - movs r2, 0 - bl sub_8035CF4 - bl sub_8036F30 - b _08036824 -_080367D2: - ldr r0, [r4] - movs r2, 0xC2 - lsls r2, 1 - adds r0, r2 - movs r1, 0x2 - bl sub_8035CC0 - bl sub_801CCD8 - ldr r0, [r4] - adds r0, 0x44 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - movs r0, 0x3 - bl sub_8036FC4 - b _08036824 -_080367F8: - ldr r0, [r4] - ldr r1, [r0, 0x14] - ldr r2, _0803682C - adds r0, r2 - strb r1, [r0] - ldr r0, [r4] - adds r2, 0x1 - adds r1, r0, r2 - ldrb r1, [r1] - subs r2, 0xA - adds r0, r2 - strb r1, [r0] - ldr r0, [r4] - adds r2, 0x4 - adds r1, r0, r2 - ldr r0, [r0, 0x14] - str r0, [r1] - bl sub_801CBB8 - movs r0, 0x6 - bl sub_8036FC4 -_08036824: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803682C: .4byte 0x0000025d - thumb_func_end sub_8036788 - - thumb_func_start sub_8036830 -sub_8036830: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08036896 - ldr r0, [sp] - cmp r0, 0x5 - beq _08036854 - cmp r0, 0x5 - bgt _0803684E - cmp r0, 0 - beq _08036890 - b _08036896 -_0803684E: - cmp r0, 0x6 - beq _08036890 - b _08036896 -_08036854: - bl sub_801CBB8 - ldr r0, _08036884 - ldr r2, [r0] - ldr r0, _08036888 - ldr r1, [r0] - ldr r3, _0803688C - adds r0, r1, r3 - ldrb r0, [r0] - lsls r0, 1 - adds r2, 0x50 - adds r2, r0 - ldrh r0, [r2] - ldr r1, [r1, 0x14] - subs r0, r1 - strh r0, [r2] - movs r0, 0xF - bl sub_8036FC4 - movs r0, 0 - bl sub_8012574 - b _08036896 - .align 2, 0 -_08036884: .4byte gUnknown_203B460 -_08036888: .4byte gUnknown_203B358 -_0803688C: .4byte 0x0000025e -_08036890: - movs r0, 0 - bl sub_8036FC4 -_08036896: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8036830 - - thumb_func_start sub_803689C -sub_803689C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080368CE - ldr r0, [sp] - cmp r0, 0x5 - beq _080368C0 - cmp r0, 0x5 - bgt _080368BA - cmp r0, 0 - beq _080368C8 - b _080368CE -_080368BA: - cmp r0, 0x7 - beq _080368C8 - b _080368CE -_080368C0: - movs r0, 0x9 - bl sub_8036FC4 - b _080368CE -_080368C8: - movs r0, 0x12 - bl sub_8036FC4 -_080368CE: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_803689C - - thumb_func_start sub_80368D4 -sub_80368D4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803692A - ldr r0, [sp] - cmp r0, 0x5 - beq _080368F8 - cmp r0, 0x5 - bgt _080368F2 - cmp r0, 0 - beq _08036900 - b _0803692A -_080368F2: - cmp r0, 0x7 - beq _08036900 - b _0803692A -_080368F8: - movs r0, 0x9 - bl sub_8036FC4 - b _0803692A -_08036900: - ldr r0, _08036930 - ldr r1, [r0] - movs r2, 0x95 - lsls r2, 2 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0803692A - adds r2, 0x4 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, 0 - beq _0803692A - bl sub_80369D0 - movs r0, 0x11 - bl sub_8036FC4 - movs r0, 0 - bl sub_8012574 -_0803692A: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08036930: .4byte gUnknown_203B358 - thumb_func_end sub_80368D4 - - thumb_func_start sub_8036934 -sub_8036934: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08036948 - movs r0, 0xA - bl sub_8036FC4 -_08036948: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8036934 - - thumb_func_start sub_8036950 -sub_8036950: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080369C8 - ldr r0, _08036978 - ldr r2, [r0] - ldr r1, [r2, 0xC] - adds r3, r0, 0 - cmp r1, 0 - bne _0803698C - ldr r0, [r2, 0x8] - cmp r0, 0 - beq _0803697C - cmp r0, 0x1 - beq _08036984 - b _080369C8 - .align 2, 0 -_08036978: .4byte gUnknown_203B358 -_0803697C: - movs r0, 0xD - bl sub_8036FC4 - b _080369C8 -_08036984: - movs r0, 0xE - bl sub_8036FC4 - b _080369C8 -_0803698C: - ldr r0, [r2, 0x8] - cmp r0, 0 - bne _080369BA - movs r1, 0x95 - lsls r1, 2 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080369BA - adds r1, 0x4 - adds r0, r2, r1 - ldr r0, [r0] - cmp r0, 0 - beq _080369BA - bl sub_80369D0 - movs r0, 0xB - bl sub_8036FC4 - movs r0, 0 - bl sub_8012574 - b _080369C8 -_080369BA: - ldr r0, [r3] - ldr r0, [r0, 0xC] - bl sub_8036E18 - movs r0, 0xC - bl sub_8036FC4 -_080369C8: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8036950 - - thumb_func_start sub_80369D0 -sub_80369D0: - ldr r0, _080369F4 - ldr r2, [r0] - ldr r0, _080369F8 - ldr r1, [r0] - movs r3, 0x95 - lsls r3, 2 - adds r0, r1, r3 - ldrb r0, [r0] - lsls r0, 1 - adds r2, 0x50 - adds r2, r0 - ldrh r0, [r2] - adds r3, 0x4 - adds r1, r3 - ldr r1, [r1] - adds r0, r1 - strh r0, [r2] - bx lr - .align 2, 0 -_080369F4: .4byte gUnknown_203B460 -_080369F8: .4byte gUnknown_203B358 - thumb_func_end sub_80369D0 - - thumb_func_start sub_80369FC -sub_80369FC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08036A10 - movs r0, 0 - bl sub_8036FC4 -_08036A10: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80369FC - - thumb_func_start sub_8036A18 -sub_8036A18: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08036A2C - movs r0, 0x12 - bl sub_8036FC4 -_08036A2C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8036A18 - - thumb_func_start sub_8036A34 -sub_8036A34: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08036A4E - movs r0, 0x10 - bl sub_8036FC4 - movs r0, 0 - bl sub_8012574 -_08036A4E: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8036A34 - - thumb_func_start sub_8036A54 -sub_8036A54: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08036A76 - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08036A76 - bl sub_8012750 - movs r0, 0x12 - bl sub_8036FC4 -_08036A76: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8036A54 - - thumb_func_start sub_8036A7C -sub_8036A7C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08036A9E - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08036A9E - bl sub_8012750 - movs r0, 0x8 - bl sub_8036FC4 -_08036A9E: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8036A7C - - thumb_func_start sub_8036AA4 -sub_8036AA4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08036AD0 - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08036AD0 - bl sub_8012750 - ldr r0, _08036AD8 - ldr r0, [r0] - ldr r0, [r0, 0xC] - bl sub_8036E18 - movs r0, 0xC - bl sub_8036FC4 -_08036AD0: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08036AD8: .4byte gUnknown_203B358 - thumb_func_end sub_8036AA4 - - thumb_func_start sub_8036ADC -sub_8036ADC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08036AFE - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08036AFE - bl sub_8012750 - movs r0, 0x12 - bl sub_8036FC4 -_08036AFE: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8036ADC - - thumb_func_start sub_8036B04 -sub_8036B04: - push {r4,lr} - ldr r4, _08036B20 - ldr r0, [r4] - cmp r0, 0 - beq _08036B1A - bl MemoryFree - movs r0, 0 - str r0, [r4] - bl sub_801CBB8 -_08036B1A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08036B20: .4byte gUnknown_203B358 - thumb_func_end sub_8036B04 - - thumb_func_start nullsub_52 -nullsub_52: - bx lr - thumb_func_end nullsub_52 - - thumb_func_start sub_8036B28 -sub_8036B28: - push {r4,r5,lr} - sub sp, 0x18 - ldr r1, _08036B44 - ldr r0, [r1] - ldr r0, [r0] - adds r5, r1, 0 - cmp r0, 0x12 - bls _08036B3A - b _08036DFA -_08036B3A: - lsls r0, 2 - ldr r1, _08036B48 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08036B44: .4byte gUnknown_203B358 -_08036B48: .4byte _08036B4C - .align 2, 0 -_08036B4C: - .4byte _08036B98 - .4byte _08036BDC - .4byte _08036BE4 - .4byte _08036C14 - .4byte _08036C58 - .4byte _08036DFA - .4byte _08036C5E - .4byte _08036C90 - .4byte _08036C98 - .4byte _08036CC0 - .4byte _08036CD8 - .4byte _08036DFA - .4byte _08036DFA - .4byte _08036DD8 - .4byte _08036D70 - .4byte _08036DFA - .4byte _08036DFA - .4byte _08036DFA - .4byte _08036DFA -_08036B98: - movs r0, 0 - bl sub_801CF14 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _08036BB8 - ldr r0, _08036BB0 - ldr r3, _08036BB4 - movs r2, 0 - b _08036BBC - .align 2, 0 -_08036BB0: .4byte gUnknown_80E61A4 -_08036BB4: .4byte gUnknown_80E60D4 -_08036BB8: - ldr r0, _08036BD4 - ldr r3, _08036BD8 -_08036BBC: - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x1 - bl sub_8014248 - b _08036DFA - .align 2, 0 -_08036BD4: .4byte gUnknown_80E61A4 -_08036BD8: .4byte gUnknown_80E60A0 -_08036BDC: - ldr r0, _08036BE0 - b _08036DBA - .align 2, 0 -_08036BE0: .4byte gUnknown_80E61C0 -_08036BE4: - bl sub_801D008 - cmp r0, 0 - beq _08036BEE - b _08036DFA -_08036BEE: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, _08036C10 - str r0, [sp, 0x14] - movs r0, 0 - movs r1, 0x1 - add r2, sp, 0x14 - movs r3, 0x9 - bl sub_801C8C4 - b _08036DFA - .align 2, 0 -_08036C10: .4byte 0x00020003 -_08036C14: - ldr r0, [r5] - movs r4, 0xC2 - lsls r4, 1 - adds r0, r4 - bl sub_8006518 - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x44 - adds r1, r4 - ldr r3, _08036C50 - ldr r2, _08036C54 - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0 - str r2, [sp, 0x8] - str r2, [sp, 0xC] - movs r2, 0x3 - bl SetMenuItems - bl sub_801CCD8 - ldr r0, [r5] - adds r0, 0x44 - movs r1, 0x3 - movs r2, 0x1 - bl sub_8035CF4 - b _08036DFA - .align 2, 0 -_08036C50: .4byte gUnknown_80E60EC -_08036C54: .4byte gUnknown_80E6104 -_08036C58: - bl sub_8036F74 - b _08036DFA -_08036C5E: - ldr r2, _08036C7C - ldr r1, [r5] - ldr r0, [r1, 0x14] - str r0, [r2] - ldr r0, _08036C80 - ldr r2, _08036C84 - adds r1, r2 - ldrb r1, [r1] - movs r2, 0 - bl sub_8090DC4 - ldr r0, _08036C88 - ldr r3, _08036C8C - b _08036C9C - .align 2, 0 -_08036C7C: .4byte gUnknown_202DE30 -_08036C80: .4byte gUnknown_202DE58 -_08036C84: .4byte 0x0000025e -_08036C88: .4byte gUnknown_80E61E4 -_08036C8C: .4byte gUnknown_80E6154 -_08036C90: - ldr r0, _08036C94 - b _08036C9A - .align 2, 0 -_08036C94: .4byte gUnknown_80E6214 -_08036C98: - ldr r0, _08036CB8 -_08036C9A: - ldr r3, _08036CBC -_08036C9C: - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x5 - bl sub_8014248 - b _08036DFA - .align 2, 0 -_08036CB8: .4byte gUnknown_80E6268 -_08036CBC: .4byte gUnknown_80E618C -_08036CC0: - movs r0, 0 - bl nullsub_23 - ldr r0, _08036CD4 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_80141B4 - b _08036DFA - .align 2, 0 -_08036CD4: .4byte gUnknown_80E62C4 -_08036CD8: - ldr r4, _08036D18 - ldr r1, [r4] - movs r0, 0 - str r0, [r1, 0xC] - movs r2, 0 - movs r3, 0 - movs r5, 0x91 - lsls r5, 2 - adds r0, r1, r5 - str r2, [r0] - str r3, [r0, 0x4] - movs r0, 0x93 - lsls r0, 2 - adds r1, r0 - str r2, [r1] - str r3, [r1, 0x4] - bl sub_8011830 - ldr r0, [r4] - ldr r0, [r0, 0x8] - bl sub_8037B28 - ldr r4, [r4] - str r0, [r4, 0xC] - cmp r0, 0 - bne _08036D44 - ldr r0, [r4, 0x8] - cmp r0, 0 - beq _08036D1C - cmp r0, 0x1 - beq _08036D2C - b _08036D44 - .align 2, 0 -_08036D18: .4byte gUnknown_203B358 -_08036D1C: - adds r2, r4, r5 - movs r1, 0x95 - lsls r1, 2 - adds r0, r4, r1 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [r2] - str r1, [r2, 0x4] -_08036D2C: - ldr r4, _08036D6C - ldr r2, [r4] - ldr r0, [r2, 0x8] - movs r3, 0x91 - lsls r3, 2 - adds r1, r2, r3 - adds r3, 0x8 - adds r2, r3 - bl sub_8037D64 - ldr r1, [r4] - str r0, [r1, 0xC] -_08036D44: - ldr r4, _08036D6C - ldr r2, [r4] - ldr r0, [r2, 0xC] - cmp r0, 0 - bne _08036D66 - ldr r0, [r2, 0x8] - cmp r0, 0x1 - bhi _08036D66 - movs r3, 0x91 - lsls r3, 2 - adds r1, r2, r3 - adds r3, 0x8 - adds r2, r3 - bl sub_80381F4 - ldr r1, [r4] - str r0, [r1, 0xC] -_08036D66: - bl sub_8011854 - b _08036DFA - .align 2, 0 -_08036D6C: .4byte gUnknown_203B358 -_08036D70: - ldr r2, [r5] - movs r1, 0x94 - lsls r1, 2 - adds r0, r2, r1 - ldr r1, [r0] - cmp r1, 0 - bne _08036DA4 - ldr r1, _08036D9C - movs r3, 0x92 - lsls r3, 2 - adds r0, r2, r3 - ldr r0, [r0] - str r0, [r1] - ldr r0, _08036DA0 - subs r3, 0x4 - adds r1, r2, r3 - ldrb r1, [r1] - movs r2, 0 - bl sub_8090DC4 - b _08036DB8 - .align 2, 0 -_08036D9C: .4byte gUnknown_202DE30 -_08036DA0: .4byte gUnknown_202DE58 -_08036DA4: - ldr r0, _08036DC8 - str r1, [r0] - ldr r0, _08036DCC - movs r3, 0x93 - lsls r3, 2 - adds r1, r2, r3 - ldrb r1, [r1] - movs r2, 0 - bl sub_8090DC4 -_08036DB8: - ldr r0, _08036DD0 -_08036DBA: - ldr r3, _08036DD4 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _08036DFA - .align 2, 0 -_08036DC8: .4byte gUnknown_202DE30 -_08036DCC: .4byte gUnknown_202DE58 -_08036DD0: .4byte gUnknown_80E6314 -_08036DD4: .4byte 0x00000101 -_08036DD8: - ldr r2, _08036E04 - ldr r1, [r5] - ldr r0, [r1, 0x14] - str r0, [r2] - ldr r0, _08036E08 - ldr r2, _08036E0C - adds r1, r2 - ldrb r1, [r1] - movs r2, 0 - bl sub_8090DC4 - ldr r0, _08036E10 - ldr r3, _08036E14 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_08036DFA: - add sp, 0x18 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08036E04: .4byte gUnknown_202DE30 -_08036E08: .4byte gUnknown_202DE58 -_08036E0C: .4byte 0x0000025e -_08036E10: .4byte gUnknown_80E6358 -_08036E14: .4byte 0x00000101 - thumb_func_end sub_8036B28 - - thumb_func_start sub_8036E18 -sub_8036E18: - push {lr} - cmp r0, 0xF - bhi _08036EB4 - lsls r0, 2 - ldr r1, _08036E28 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08036E28: .4byte _08036E2C - .align 2, 0 -_08036E2C: - .4byte _08036EC0 - .4byte _08036E6C - .4byte _08036E7C - .4byte _08036E74 - .4byte _08036E84 - .4byte _08036E8C - .4byte _08036EB4 - .4byte _08036EB4 - .4byte _08036EB4 - .4byte _08036EB4 - .4byte _08036EB4 - .4byte _08036EB4 - .4byte _08036EB4 - .4byte _08036EB4 - .4byte _08036E94 - .4byte _08036E9C -_08036E6C: - ldr r0, _08036E70 - b _08036E9E - .align 2, 0 -_08036E70: .4byte gUnknown_80E6378 -_08036E74: - ldr r0, _08036E78 - b _08036E9E - .align 2, 0 -_08036E78: .4byte gUnknown_80E639C -_08036E7C: - ldr r0, _08036E80 - b _08036E9E - .align 2, 0 -_08036E80: .4byte gUnknown_80E63F8 -_08036E84: - ldr r0, _08036E88 - b _08036E9E - .align 2, 0 -_08036E88: .4byte gUnknown_80E6448 -_08036E8C: - ldr r0, _08036E90 - b _08036E9E - .align 2, 0 -_08036E90: .4byte gUnknown_80E6378 -_08036E94: - ldr r0, _08036E98 - b _08036E9E - .align 2, 0 -_08036E98: .4byte gUnknown_80E6378 -_08036E9C: - ldr r0, _08036EAC -_08036E9E: - ldr r3, _08036EB0 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _08036EC0 - .align 2, 0 -_08036EAC: .4byte gUnknown_80E64AC -_08036EB0: .4byte 0x00000101 -_08036EB4: - ldr r0, _08036EC4 - ldr r3, _08036EC8 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_08036EC0: - pop {r0} - bx r0 - .align 2, 0 -_08036EC4: .4byte gUnknown_80E6378 -_08036EC8: .4byte 0x00000101 - thumb_func_end sub_8036E18 - - thumb_func_start sub_8036ECC -sub_8036ECC: - push {r4-r6,lr} - adds r3, r0, 0 - ldr r6, _08036F28 - ldr r0, [r6] - movs r2, 0x3 - str r2, [r0, 0x24] - movs r2, 0x1 - str r2, [r0, 0x18] - str r2, [r0, 0x1C] - str r1, [r0, 0x20] - movs r1, 0x2C - str r1, [r0, 0x30] - movs r1, 0x12 - str r1, [r0, 0x34] - str r3, [r0, 0x28] - lsls r4, r3, 1 - adds r4, r3 - lsls r4, 3 - movs r5, 0xC2 - lsls r5, 1 - adds r1, r4, r5 - adds r1, r0, r1 - str r1, [r0, 0x2C] - adds r0, 0x14 - bl sub_8013AA0 - ldr r1, [r6] - adds r1, r4 - adds r1, r5 - ldr r0, _08036F2C - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - bl sub_8004914 - ldr r0, [r6] - adds r0, r5 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08036F28: .4byte gUnknown_203B358 -_08036F2C: .4byte gUnknown_80E6174 - thumb_func_end sub_8036ECC - - thumb_func_start sub_8036F30 -sub_8036F30: - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, _08036F6C - ldr r0, [r5] - ldr r4, [r0, 0x28] - adds r0, r4, 0 - bl sub_8008C54 - adds r0, r4, 0 - bl sub_80073B8 - ldr r2, _08036F70 - movs r0, 0 - str r0, [sp] - movs r0, 0x2 - movs r1, 0 - adds r3, r4, 0 - bl xxx_call_draw_string - ldr r0, [r5] - adds r0, 0x14 - bl sub_8013C68 - adds r0, r4, 0 - bl sub_80073E0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08036F6C: .4byte gUnknown_203B358 -_08036F70: .4byte gUnknown_80E6528 - thumb_func_end sub_8036F30 - - thumb_func_start sub_8036F74 -sub_8036F74: - push {r4,lr} - ldr r4, _08036FB8 - ldr r0, [r4] - movs r1, 0xC2 - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - ldr r0, _08036FBC - ldr r1, [r0] - ldr r0, [r4] - ldr r2, _08036FC0 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r1, [r1] - movs r0, 0x2 - bl sub_8036ECC - bl sub_801CCD8 - ldr r0, [r4] - adds r0, 0x44 - movs r1, 0x3 - movs r2, 0 - bl sub_8035CF4 - bl sub_8036F30 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08036FB8: .4byte gUnknown_203B358 -_08036FBC: .4byte gUnknown_203B460 -_08036FC0: .4byte 0x0000025e - thumb_func_end sub_8036F74 - - thumb_func_start sub_8036FC4 -sub_8036FC4: - push {lr} - ldr r1, _08036FD8 - ldr r1, [r1] - str r0, [r1] - bl nullsub_52 - bl sub_8036B28 - pop {r0} - bx r0 - .align 2, 0 -_08036FD8: .4byte gUnknown_203B358 - thumb_func_end sub_8036FC4 - - thumb_func_start sub_8036FDC -sub_8036FDC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - adds r6, r0, 0 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0 - bl sub_8004D8C - ldr r5, _080370C0 - ldr r0, [r5] - cmp r0, 0 - bne _08037016 - ldr r4, _080370C4 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 -_08037016: - ldr r0, [r5] - str r6, [r0] - movs r1, 0 - str r1, [r0, 0x4] - str r1, [r0, 0x8] - movs r3, 0 - adds r7, r5, 0 - movs r6, 0xE0 - lsls r6, 1 - movs r4, 0 - movs r5, 0xDE - lsls r5, 1 -_0803702E: - ldr r0, [r7] - lsls r2, r3, 3 - adds r1, r0, r6 - adds r1, r2 - str r4, [r1] - adds r0, r2 - adds r0, r5 - strb r4, [r0] - adds r3, 0x1 - cmp r3, 0x1 - ble _0803702E - ldr r0, _080370C0 - mov r12, r0 - movs r5, 0xAE - lsls r5, 1 - mov r8, r5 - ldr r4, _080370C8 - movs r3, 0 - movs r2, 0x3 -_08037054: - mov r6, r12 - ldr r1, [r6] - adds r1, r3 - add r1, r8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _08037054 - movs r6, 0 - bl sub_8004914 - ldr r5, _080370C0 - ldr r0, [r5] - movs r4, 0xAE - lsls r4, 1 - adds r0, r4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x1C - adds r1, r4 - ldr r3, _080370CC - ldr r2, _080370D0 - str r2, [sp] - str r6, [sp, 0x4] - movs r2, 0x6 - str r2, [sp, 0x8] - str r6, [sp, 0xC] - movs r2, 0 - bl SetMenuItems - ldr r0, [r5] - adds r0, 0x1C - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - bl sub_80376CC - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080370C0: .4byte gUnknown_203B35C -_080370C4: .4byte 0x00000504 -_080370C8: .4byte gUnknown_80E653C -_080370CC: .4byte gUnknown_80E6CD0 -_080370D0: .4byte gUnknown_80E6CE8 - thumb_func_end sub_8036FDC - - thumb_func_start sub_80370D4 -sub_80370D4: - push {r4,lr} - ldr r4, _080370EC - ldr r0, [r4] - cmp r0, 0 - beq _080370E6 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080370E6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080370EC: .4byte gUnknown_203B35C - thumb_func_end sub_80370D4 - - thumb_func_start sub_80370F0 -sub_80370F0: - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0x4 - str r0, [sp] - ldr r5, _08037110 - ldr r4, _08037114 - ldr r1, [r4] - ldr r0, [r1, 0x8] - cmp r0, 0x1 - beq _08037148 - cmp r0, 0x1 - bcc _08037118 - cmp r0, 0x2 - beq _08037158 - b _080371A8 - .align 2, 0 -_08037110: .4byte 0x0000ffdc -_08037114: .4byte gUnknown_203B35C -_08037118: - adds r0, r1, 0 - adds r0, 0x1C - bl sub_80130A8 - lsls r0, 24 - cmp r0, 0 - bne _08037130 - ldr r0, [r4] - adds r0, 0x1C - mov r1, sp - bl sub_8013114 -_08037130: - ldr r0, [sp] - cmp r0, 0x4 - bne _0803713C - bl sub_8037748 - b _080371A8 -_0803713C: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1, 0x8] - bl sub_8037900 - b _080371A8 -_08037148: - bl sub_80376CC - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x8] - bl sub_80371B8 - b _080371A8 -_08037158: - ldr r0, [r1] - cmp r0, 0x1 - bhi _08037172 - ldr r0, [r1, 0x4] - cmp r0, 0 - bne _08037172 - movs r0, 0 - bl sub_8037C10 - cmp r0, 0 - bne _08037172 - movs r0, 0x29 - b _080371AA -_08037172: - ldr r4, _080371B4 - ldr r0, [r4] - adds r0, 0x1C - bl sub_80130A8 - lsls r0, 24 - cmp r0, 0 - bne _0803718C - ldr r0, [r4] - adds r0, 0x1C - mov r1, sp - bl sub_8013114 -_0803718C: - ldr r0, [sp] - cmp r0, 0x4 - beq _080371A4 - movs r0, 0x3 - bl sub_80119D4 - bl sub_8037798 - adds r5, r0, 0 - ldr r1, [r4] - movs r0, 0x4 - str r0, [r1, 0x8] -_080371A4: - bl sub_8037748 -_080371A8: - adds r0, r5, 0 -_080371AA: - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080371B4: .4byte gUnknown_203B35C - thumb_func_end sub_80370F0 - - thumb_func_start sub_80371B8 -sub_80371B8: - push {r4-r7,lr} - sub sp, 0x10 - movs r6, 0 - movs r5, 0 - bl sub_8037400 - ldr r7, _0803721C - ldr r1, [r7] - ldr r0, [r1] - cmp r0, 0x1 - bhi _08037228 - ldr r0, [r1, 0x4] - cmp r0, 0 - bne _08037228 - movs r0, 0 - bl sub_8037C10 - cmp r0, 0 - bne _080371E0 - b _080373AC -_080371E0: - bl sub_80376CC - ldr r0, [r7] - movs r4, 0xAE - lsls r4, 1 - adds r0, r4 - movs r1, 0 - bl sub_8035CC0 - ldr r1, [r7] - adds r0, r1, 0 - adds r0, 0x1C - adds r1, r4 - ldr r3, _08037220 - ldr r2, _08037224 - str r2, [sp] - str r6, [sp, 0x4] - movs r2, 0x6 - str r2, [sp, 0x8] - str r6, [sp, 0xC] - movs r2, 0 - bl SetMenuItems - ldr r0, [r7] - adds r0, 0x1C - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - b _080373AC - .align 2, 0 -_0803721C: .4byte gUnknown_203B35C -_08037220: .4byte gUnknown_80E6C50 -_08037224: .4byte gUnknown_80E6C68 -_08037228: - bl sub_80376CC - ldr r4, _08037250 - ldr r0, [r4] - movs r1, 0xAE - lsls r1, 1 - adds r0, r1 - movs r1, 0 - bl sub_8035CC0 - ldr r0, [r4] - ldr r0, [r0, 0x4] - cmp r0, 0xF - bls _08037246 - b _0803734C -_08037246: - lsls r0, 2 - ldr r1, _08037254 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08037250: .4byte gUnknown_203B35C -_08037254: .4byte _08037258 - .align 2, 0 -_08037258: - .4byte _08037298 - .4byte _080372D8 - .4byte _080372B8 - .4byte _080372A8 - .4byte _080372C8 - .4byte _080372D8 - .4byte _080372E8 - .4byte _080372F8 - .4byte _0803734C - .4byte _08037308 - .4byte _0803734C - .4byte _08037318 - .4byte _0803734C - .4byte _08037328 - .4byte _08037338 - .4byte _08037348 -_08037298: - ldr r6, _080372A0 - ldr r5, _080372A4 - b _0803734C - .align 2, 0 -_080372A0: .4byte gUnknown_80E66BC -_080372A4: .4byte gUnknown_80E66D4 -_080372A8: - ldr r6, _080372B0 - ldr r5, _080372B4 - b _0803734C - .align 2, 0 -_080372B0: .4byte gUnknown_80E6D54 -_080372B4: .4byte gUnknown_80E6D6C -_080372B8: - ldr r6, _080372C0 - ldr r5, _080372C4 - b _0803734C - .align 2, 0 -_080372C0: .4byte gUnknown_80E6DDC -_080372C4: .4byte gUnknown_80E6DF4 -_080372C8: - ldr r6, _080372D0 - ldr r5, _080372D4 - b _0803734C - .align 2, 0 -_080372D0: .4byte gUnknown_80E67D4 -_080372D4: .4byte gUnknown_80E67EC -_080372D8: - ldr r6, _080372E0 - ldr r5, _080372E4 - b _0803734C - .align 2, 0 -_080372E0: .4byte gUnknown_80E6748 -_080372E4: .4byte gUnknown_80E6760 -_080372E8: - ldr r6, _080372F0 - ldr r5, _080372F4 - b _0803734C - .align 2, 0 -_080372F0: .4byte gUnknown_80E689C -_080372F4: .4byte gUnknown_80E68B4 -_080372F8: - ldr r6, _08037300 - ldr r5, _08037304 - b _0803734C - .align 2, 0 -_08037300: .4byte gUnknown_80E6938 -_08037304: .4byte gUnknown_80E6950 -_08037308: - ldr r6, _08037310 - ldr r5, _08037314 - b _0803734C - .align 2, 0 -_08037310: .4byte gUnknown_80E69B0 -_08037314: .4byte gUnknown_80E69C8 -_08037318: - ldr r6, _08037320 - ldr r5, _08037324 - b _0803734C - .align 2, 0 -_08037320: .4byte gUnknown_80E6A10 -_08037324: .4byte gUnknown_80E6A28 -_08037328: - ldr r6, _08037330 - ldr r5, _08037334 - b _0803734C - .align 2, 0 -_08037330: .4byte gUnknown_80E6A74 -_08037334: .4byte gUnknown_80E6A8C -_08037338: - ldr r6, _08037340 - ldr r5, _08037344 - b _0803734C - .align 2, 0 -_08037340: .4byte gUnknown_80E6B78 -_08037344: .4byte gUnknown_80E6B90 -_08037348: - ldr r6, _080373B4 - ldr r5, _080373B8 -_0803734C: - ldr r4, _080373BC - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x1C - movs r2, 0xAE - lsls r2, 1 - adds r1, r2 - str r5, [sp] - movs r3, 0 - str r3, [sp, 0x4] - movs r2, 0x6 - str r2, [sp, 0x8] - str r3, [sp, 0xC] - movs r2, 0 - adds r3, r6, 0 - bl SetMenuItems - ldr r0, [r4] - adds r0, 0x1C - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - ldr r4, [r4] - ldr r0, [r4, 0x4] - cmp r0, 0 - beq _080373AC - ldr r0, [r4] - cmp r0, 0 - bne _080373AC - bl sub_8035D94 - adds r2, r0, 0 - ldrb r0, [r2] - cmp r0, 0 - beq _080373AC - ldr r3, [r2, 0x4] - cmp r3, 0 - beq _080373AC - ldr r0, _080373C0 - ldr r1, [r0] - ldrb r0, [r2] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r0, [r1] - adds r0, r3 - strh r0, [r1] -_080373AC: - add sp, 0x10 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080373B4: .4byte gUnknown_80E6BF4 -_080373B8: .4byte gUnknown_80E6C0C -_080373BC: .4byte gUnknown_203B35C -_080373C0: .4byte gUnknown_203B460 - thumb_func_end sub_80371B8 - - thumb_func_start sub_80373C4 -sub_80373C4: - push {lr} - movs r0, 0 - movs r1, 0 - bl sub_8005838 - bl sub_80060EC - bl sub_800CB20 - bl sub_800485C - bl TransferBGPaletteBuffer - bl xxx_call_update_bg_vram - bl sub_8009908 - bl xxx_call_update_bg_sound_input - movs r0, 0 - bl sub_8004D8C - pop {r0} - bx r0 - thumb_func_end sub_80373C4 - - thumb_func_start sub_80373F4 -sub_80373F4: - ldr r0, _080373FC - ldr r0, [r0] - bx lr - .align 2, 0 -_080373FC: .4byte gUnknown_203B35C - thumb_func_end sub_80373F4 - - thumb_func_start sub_8037400 -sub_8037400: - push {r4-r6,lr} - movs r6, 0 - movs r5, 0 - bl sub_8037810 - bl sub_8011830 - ldr r4, _08037434 - ldr r0, [r4] - ldr r0, [r0] - bl sub_8037B28 - ldr r4, [r4] - str r0, [r4, 0x4] - cmp r0, 0 - beq _08037422 - b _080376BE -_08037422: - ldr r0, [r4] - cmp r0, 0xA - bls _0803742A - b _080375E8 -_0803742A: - lsls r0, 2 - ldr r1, _08037438 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08037434: .4byte gUnknown_203B35C -_08037438: .4byte _0803743C - .align 2, 0 -_0803743C: - .4byte _08037494 - .4byte _080374B8 - .4byte _08037534 - .4byte _0803751C - .4byte _0803756C - .4byte _080375D8 - .4byte _080374E4 - .4byte _080374D0 - .4byte _080375E8 - .4byte _08037480 - .4byte _08037468 -_08037468: - ldr r0, _0803747C - ldr r0, [r0] - movs r1, 0xE7 - lsls r1, 2 - adds r6, r0, r1 - movs r2, 0x8A - lsls r2, 3 - adds r5, r0, r2 - b _080375E8 - .align 2, 0 -_0803747C: .4byte gUnknown_203B35C -_08037480: - ldr r0, _08037490 - ldr r0, [r0] - movs r3, 0xE7 - lsls r3, 2 - adds r6, r0, r3 - movs r4, 0x8A - lsls r4, 3 - b _080375E6 - .align 2, 0 -_08037490: .4byte gUnknown_203B35C -_08037494: - bl sub_8035D94 - ldr r1, _080374B4 - ldr r3, [r1] - movs r5, 0xDE - lsls r5, 1 - adds r2, r3, r5 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [r2] - str r1, [r2, 0x4] - adds r6, r2, 0 - movs r0, 0xE2 - lsls r0, 1 - adds r5, r3, r0 - b _080375E8 - .align 2, 0 -_080374B4: .4byte gUnknown_203B35C -_080374B8: - ldr r0, _080374CC - ldr r0, [r0] - movs r1, 0xDE - lsls r1, 1 - adds r6, r0, r1 - movs r2, 0xE2 - lsls r2, 1 - adds r5, r0, r2 - b _080375E8 - .align 2, 0 -_080374CC: .4byte gUnknown_203B35C -_080374D0: - ldr r0, _080374E0 - ldr r0, [r0] - movs r3, 0xE6 - lsls r3, 1 - adds r6, r0, r3 - movs r4, 0xFE - lsls r4, 1 - b _080375E6 - .align 2, 0 -_080374E0: .4byte gUnknown_203B35C -_080374E4: - bl sub_8035D74 - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - ldr r3, _08037518 - ldr r1, [r3] - movs r2, 0xE6 - lsls r2, 1 - adds r1, r2 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldr r0, [r3] - adds r6, r0, r2 - movs r1, 0xFE - lsls r1, 1 - adds r5, r0, r1 - b _080375E8 - .align 2, 0 -_08037518: .4byte gUnknown_203B35C -_0803751C: - ldr r0, _08037530 - ldr r0, [r0] - movs r2, 0x8B - lsls r2, 2 - adds r6, r0, r2 - movs r3, 0x97 - lsls r3, 2 - adds r5, r0, r3 - b _080375E8 - .align 2, 0 -_08037530: .4byte gUnknown_203B35C -_08037534: - bl sub_8035D74 - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - ldr r3, _08037568 - ldr r1, [r3] - movs r2, 0x8B - lsls r2, 2 - adds r1, r2 - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldr r0, [r3] - adds r6, r0, r2 - movs r1, 0x97 - lsls r1, 2 - adds r5, r0, r1 - b _080375E8 - .align 2, 0 -_08037568: .4byte gUnknown_203B35C -_0803756C: - bl sub_8035D74 - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - ldr r4, _080375CC - ldr r1, [r4] - movs r5, 0xA3 - lsls r5, 2 - adds r1, r5 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - bl sub_8035D3C - lsls r0, 16 - ldr r1, _080375D0 - cmp r0, r1 - beq _080375BE - bl sub_8035D3C - ldr r3, [r4] - movs r1, 0xAF - lsls r1, 2 - adds r3, r1 - ldr r1, _080375D4 - ldr r1, [r1] - lsls r0, 16 - asrs r0, 16 - movs r2, 0x58 - muls r0, r2 - adds r1, r0 - adds r0, r3, 0 - bl memcpy -_080375BE: - ldr r0, [r4] - adds r6, r0, r5 - movs r2, 0xC5 - lsls r2, 2 - adds r5, r0, r2 - b _080375E8 - .align 2, 0 -_080375CC: .4byte gUnknown_203B35C -_080375D0: .4byte 0xffff0000 -_080375D4: .4byte gUnknown_203B45C -_080375D8: - ldr r0, _08037610 - ldr r0, [r0] - movs r3, 0xA3 - lsls r3, 2 - adds r6, r0, r3 - movs r4, 0xC5 - lsls r4, 2 -_080375E6: - adds r5, r0, r4 -_080375E8: - ldr r4, _08037610 - ldr r0, [r4] - ldr r0, [r0] - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_8037D64 - ldr r1, [r4] - str r0, [r1, 0x4] - cmp r0, 0 - bne _080376BE - ldr r0, [r1] - cmp r0, 0xA - bhi _080376AE - lsls r0, 2 - ldr r1, _08037614 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08037610: .4byte gUnknown_203B35C -_08037614: .4byte _08037618 - .align 2, 0 -_08037618: - .4byte _08037644 - .4byte _08037644 - .4byte _08037658 - .4byte _08037658 - .4byte _0803766C - .4byte _0803766C - .4byte _08037684 - .4byte _08037684 - .4byte _080376AE - .4byte _0803769C - .4byte _0803769C -_08037644: - ldr r0, _08037654 - ldr r2, [r0] - movs r5, 0xDE - lsls r5, 1 - adds r6, r2, r5 - movs r1, 0xE2 - lsls r1, 1 - b _0803767A - .align 2, 0 -_08037654: .4byte gUnknown_203B35C -_08037658: - ldr r0, _08037668 - ldr r2, [r0] - movs r3, 0x8B - lsls r3, 2 - adds r6, r2, r3 - movs r4, 0x97 - lsls r4, 2 - b _08037692 - .align 2, 0 -_08037668: .4byte gUnknown_203B35C -_0803766C: - ldr r0, _08037680 - ldr r2, [r0] - movs r5, 0xA3 - lsls r5, 2 - adds r6, r2, r5 - movs r1, 0xC5 - lsls r1, 2 -_0803767A: - adds r5, r2, r1 - adds r4, r0, 0 - b _080376AE - .align 2, 0 -_08037680: .4byte gUnknown_203B35C -_08037684: - ldr r0, _08037698 - ldr r2, [r0] - movs r3, 0xE6 - lsls r3, 1 - adds r6, r2, r3 - movs r4, 0xFE - lsls r4, 1 -_08037692: - adds r5, r2, r4 - adds r4, r0, 0 - b _080376AE - .align 2, 0 -_08037698: .4byte gUnknown_203B35C -_0803769C: - ldr r1, _080376C8 - ldr r0, [r1] - movs r5, 0xE7 - lsls r5, 2 - adds r6, r0, r5 - movs r2, 0x8A - lsls r2, 3 - adds r5, r0, r2 - adds r4, r1, 0 -_080376AE: - ldr r0, [r4] - ldr r0, [r0] - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_80381F4 - ldr r1, [r4] - str r0, [r1, 0x4] -_080376BE: - bl sub_8011854 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080376C8: .4byte gUnknown_203B35C - thumb_func_end sub_8037400 - - thumb_func_start sub_80376CC -sub_80376CC: - push {r4,lr} - ldr r0, _08037728 - ldr r3, [r0] - ldrh r1, [r3, 0xC] - ldr r0, _0803772C - ands r0, r1 - ldr r1, _08037730 - ands r0, r1 - ldr r4, _08037734 - ands r0, r4 - ldr r1, _08037738 - ands r0, r1 - ldr r1, _0803773C - ands r0, r1 - movs r2, 0x80 - lsls r2, 7 - ldr r1, _08037740 - ands r0, r1 - orrs r0, r2 - strh r0, [r3, 0xC] - movs r2, 0xFC - lsls r2, 2 - ldrh r1, [r3, 0x10] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r4 - movs r2, 0xF - movs r4, 0xF0 - lsls r4, 8 - ldr r1, _08037744 - ands r0, r1 - orrs r0, r4 - strh r0, [r3, 0x10] - movs r0, 0 - strh r0, [r3, 0xE] - movs r1, 0xC0 - lsls r1, 4 - ldrh r0, [r3, 0x12] - ands r2, r0 - orrs r2, r1 - strh r2, [r3, 0x12] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08037728: .4byte gUnknown_203B35C -_0803772C: .4byte 0x0000feff -_08037730: .4byte 0x0000fdff -_08037734: .4byte 0x0000f3ff -_08037738: .4byte 0x0000efff -_0803773C: .4byte 0x0000dfff -_08037740: .4byte 0x00003fff -_08037744: .4byte 0x00000fff - thumb_func_end sub_80376CC - - thumb_func_start sub_8037748 -sub_8037748: - push {r4,lr} - ldr r4, _08037794 - ldr r3, [r4] - ldrh r1, [r3, 0xE] - movs r0, 0xFE - lsls r0, 8 - ands r0, r1 - movs r1, 0x70 - orrs r0, r1 - strh r0, [r3, 0xE] - movs r2, 0xD0 - lsls r2, 3 - ldrh r1, [r3, 0x12] - movs r0, 0xF - ands r0, r1 - orrs r0, r2 - strh r0, [r3, 0x12] - ldr r0, [r3, 0x14] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08037782 - adds r0, r3, 0 - adds r0, 0xC - adds r1, 0xF8 - movs r2, 0 - movs r3, 0 - bl AddSprite -_08037782: - bl xxx_draw_string_80144C4 - ldr r1, [r4] - ldr r0, [r1, 0x14] - adds r0, 0x1 - str r0, [r1, 0x14] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08037794: .4byte gUnknown_203B35C - thumb_func_end sub_8037748 - - thumb_func_start sub_8037798 -sub_8037798: - push {lr} - ldr r2, _080377B4 - ldr r1, _080377B8 - ldr r0, [r1] - ldr r0, [r0] - adds r3, r1, 0 - cmp r0, 0xA - bhi _0803780A - lsls r0, 2 - ldr r1, _080377BC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080377B4: .4byte 0x0000ffdc -_080377B8: .4byte gUnknown_203B35C -_080377BC: .4byte _080377C0 - .align 2, 0 -_080377C0: - .4byte _080377EC - .4byte _080377EC - .4byte _080377F0 - .4byte _080377F0 - .4byte _080377F0 - .4byte _080377F0 - .4byte _080377F0 - .4byte _080377F0 - .4byte _0803780A - .4byte _080377FE - .4byte _080377FE -_080377EC: - movs r2, 0x1 - b _0803780A -_080377F0: - ldr r0, [r3] - ldr r0, [r0, 0x4] - movs r2, 0x1 - cmp r0, 0 - bne _0803780A - movs r2, 0x2A - b _0803780A -_080377FE: - ldr r0, [r3] - ldr r0, [r0, 0x4] - movs r2, 0xD - cmp r0, 0 - bne _0803780A - movs r2, 0x2B -_0803780A: - adds r0, r2, 0 - pop {r1} - bx r1 - thumb_func_end sub_8037798 - - thumb_func_start sub_8037810 -sub_8037810: - push {r4-r6,lr} - ldr r6, _080378FC - ldr r0, [r6] - movs r5, 0xDE - lsls r5, 1 - adds r0, r5 - movs r1, 0 - movs r2, 0x8 - bl MemoryFill8 - ldr r0, [r6] - movs r4, 0xE2 - lsls r4, 1 - adds r0, r4 - movs r1, 0 - movs r2, 0x8 - bl MemoryFill8 - ldr r0, [r6] - adds r5, r0, r5 - movs r1, 0 - movs r2, 0 - str r1, [r5] - str r2, [r5, 0x4] - adds r4, r0, r4 - str r1, [r4] - str r2, [r4, 0x4] - movs r2, 0xE6 - lsls r2, 1 - adds r0, r2 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - movs r3, 0xFE - lsls r3, 1 - adds r0, r3 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - movs r1, 0x8B - lsls r1, 2 - adds r0, r1 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - movs r2, 0x97 - lsls r2, 2 - adds r0, r2 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - movs r3, 0xA3 - lsls r3, 2 - adds r0, r3 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - movs r1, 0xC5 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r6] - movs r2, 0xAF - lsls r2, 2 - adds r0, r2 - movs r1, 0 - movs r2, 0x58 - bl MemoryFill8 - ldr r0, [r6] - movs r3, 0xD1 - lsls r3, 2 - adds r0, r3 - movs r1, 0 - movs r2, 0x58 - bl MemoryFill8 - ldr r0, [r6] - movs r1, 0xE7 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - movs r2, 0xB4 - bl MemoryFill8 - ldr r0, [r6] - movs r2, 0x8A - lsls r2, 3 - adds r0, r2 - movs r1, 0 - movs r2, 0xB4 - bl MemoryFill8 - ldr r2, [r6] - movs r3, 0xB1 - lsls r3, 2 - adds r0, r2, r3 - movs r1, 0 - strh r1, [r0] - adds r3, 0x88 - adds r0, r2, r3 - strh r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080378FC: .4byte gUnknown_203B35C - thumb_func_end sub_8037810 - - thumb_func_start sub_8037900 -sub_8037900: - push {r4,lr} - sub sp, 0x10 - ldr r4, _08037928 - ldr r0, [r4] - movs r1, 0xAE - lsls r1, 1 - adds r0, r1 - movs r1, 0 - bl sub_8035CC0 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0xA - bls _0803791E - b _08037A14 -_0803791E: - lsls r0, 2 - ldr r1, _0803792C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08037928: .4byte gUnknown_203B35C -_0803792C: .4byte _08037930 - .align 2, 0 -_08037930: - .4byte _0803795C - .4byte _0803795C - .4byte _0803797C - .4byte _0803797C - .4byte _0803799C - .4byte _0803799C - .4byte _080379BC - .4byte _080379BC - .4byte _08037A14 - .4byte _080379F0 - .4byte _080379F0 -_0803795C: - ldr r0, _08037970 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x1C - movs r2, 0xAE - lsls r2, 1 - adds r1, r2 - ldr r3, _08037974 - ldr r2, _08037978 - b _080379CE - .align 2, 0 -_08037970: .4byte gUnknown_203B35C -_08037974: .4byte gUnknown_80E6554 -_08037978: .4byte gUnknown_80E656C -_0803797C: - ldr r0, _08037990 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x1C - movs r2, 0xAE - lsls r2, 1 - adds r1, r2 - ldr r3, _08037994 - ldr r2, _08037998 - b _080379CE - .align 2, 0 -_08037990: .4byte gUnknown_203B35C -_08037994: .4byte gUnknown_80E6554 -_08037998: .4byte gUnknown_80E65D8 -_0803799C: - ldr r0, _080379B0 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x1C - movs r2, 0xAE - lsls r2, 1 - adds r1, r2 - ldr r3, _080379B4 - ldr r2, _080379B8 - b _080379CE - .align 2, 0 -_080379B0: .4byte gUnknown_203B35C -_080379B4: .4byte gUnknown_80E6554 -_080379B8: .4byte gUnknown_80E661C -_080379BC: - ldr r0, _080379E4 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x1C - movs r2, 0xAE - lsls r2, 1 - adds r1, r2 - ldr r3, _080379E8 - ldr r2, _080379EC -_080379CE: - str r2, [sp] - movs r4, 0 - str r4, [sp, 0x4] - movs r2, 0x6 - str r2, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0 - bl SetMenuItems - b _08037A14 - .align 2, 0 -_080379E4: .4byte gUnknown_203B35C -_080379E8: .4byte gUnknown_80E6554 -_080379EC: .4byte gUnknown_80E665C -_080379F0: - ldr r0, _08037A38 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x1C - movs r2, 0xAE - lsls r2, 1 - adds r1, r2 - ldr r3, _08037A3C - ldr r2, _08037A40 - str r2, [sp] - movs r4, 0 - str r4, [sp, 0x4] - movs r2, 0x6 - str r2, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0 - bl SetMenuItems -_08037A14: - ldr r4, _08037A38 - ldr r0, [r4] - adds r0, 0x1C - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - bl sub_80373C4 - ldr r0, [r4] - adds r0, 0x1C - bl sub_80130A8 - add sp, 0x10 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08037A38: .4byte gUnknown_203B35C -_08037A3C: .4byte gUnknown_80E6554 -_08037A40: .4byte gUnknown_80E667C - thumb_func_end sub_8037900 - - thumb_func_start nullsub_202 -nullsub_202: - bx lr - thumb_func_end nullsub_202 - - thumb_func_start sub_8037A48 -sub_8037A48: - push {r4-r6,lr} - sub sp, 0x28 - movs r6, 0x1 - movs r0, 0 - mov r1, sp - movs r2, 0x14 - bl sub_800D670 - add r4, sp, 0x14 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x14 - bl sub_800D670 - ldr r1, _08037AAC - movs r3, 0x8 - adds r2, r1, 0 - adds r0, r2, 0x4 -_08037A6C: - str r3, [r0] - subs r0, 0x4 - cmp r0, r1 - bge _08037A6C - ldr r0, [sp, 0x10] - str r0, [r2] - ldr r0, [r4, 0x10] - str r0, [r2, 0x4] - ldr r5, _08037AB0 - mov r0, sp - adds r1, r5, 0 - bl strcmp - cmp r0, 0 - beq _08037A8C - movs r0, 0x1 -_08037A8C: - lsls r0, 24 - cmp r0, 0 - bne _08037AA6 - adds r0, r4, 0 - adds r1, r5, 0 - bl strcmp - cmp r0, 0 - beq _08037AA0 - movs r0, 0x1 -_08037AA0: - lsls r0, 24 - cmp r0, 0 - beq _08037AB4 -_08037AA6: - movs r0, 0 - b _08037B1E - .align 2, 0 -_08037AAC: .4byte gUnknown_202EC40 -_08037AB0: .4byte gUnknown_80E6E50 -_08037AB4: - ldr r1, [sp, 0x10] - cmp r1, 0 - bne _08037AC0 - ldr r0, [r4, 0x10] - cmp r0, 0x1 - beq _08037B1C -_08037AC0: - cmp r1, 0x1 - bne _08037ACA - ldr r0, [r4, 0x10] - cmp r0, 0 - beq _08037B1C -_08037ACA: - cmp r1, 0x2 - bne _08037AD4 - ldr r0, [r4, 0x10] - cmp r0, 0x3 - beq _08037B1C -_08037AD4: - cmp r1, 0x3 - bne _08037ADE - ldr r0, [r4, 0x10] - cmp r0, 0x2 - beq _08037B1C -_08037ADE: - cmp r1, 0x9 - bne _08037AE8 - ldr r0, [r4, 0x10] - cmp r0, 0xA - beq _08037B1C -_08037AE8: - cmp r1, 0xA - bne _08037AF2 - ldr r0, [r4, 0x10] - cmp r0, 0x9 - beq _08037B1C -_08037AF2: - cmp r1, 0x4 - bne _08037AFC - ldr r0, [r4, 0x10] - cmp r0, 0x5 - beq _08037B1C -_08037AFC: - cmp r1, 0x5 - bne _08037B06 - ldr r0, [r4, 0x10] - cmp r0, 0x4 - beq _08037B1C -_08037B06: - cmp r1, 0x6 - bne _08037B10 - ldr r0, [r4, 0x10] - cmp r0, 0x7 - beq _08037B1C -_08037B10: - cmp r1, 0x7 - bne _08037B1A - ldr r0, [r4, 0x10] - cmp r0, 0x6 - beq _08037B1C -_08037B1A: - movs r6, 0 -_08037B1C: - adds r0, r6, 0 -_08037B1E: - add sp, 0x28 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8037A48 - - thumb_func_start sub_8037B28 -sub_8037B28: - push {r4,r5,lr} - sub sp, 0x14 - adds r4, r0, 0 - movs r5, 0 - bl sub_800D414 - ldr r0, _08037B58 - str r5, [r0] - ldr r5, _08037B5C - mov r0, sp - movs r1, 0 - movs r2, 0x14 - bl MemoryFill8 - mov r0, sp - adds r1, r5, 0 - bl strcpy - str r4, [sp, 0x10] - mov r0, sp - movs r1, 0x14 - bl sub_800D59C - b _08037B7A - .align 2, 0 -_08037B58: .4byte gUnknown_202EC38 -_08037B5C: .4byte gUnknown_80E6E50 -_08037B60: - cmp r5, 0x3 - beq _08037BCC - cmp r5, 0x4 - beq _08037BD8 - cmp r5, 0x5 - beq _08037BF0 - ldr r2, _08037BC0 - ldr r1, [r2] - ldr r0, _08037BC4 - cmp r1, r0 - bgt _08037BE4 - adds r0, r1, 0x1 - str r0, [r2] -_08037B7A: - movs r4, 0 -_08037B7C: - bl sub_80373C4 - bl sub_8012AE8 - cmp r0, 0x3 - bgt _08037B8C - cmp r0, 0x2 - bge _08037BF0 -_08037B8C: - adds r4, 0x1 - cmp r4, 0 - ble _08037B7C - bl sub_800D33C - adds r5, r0, 0 - bl sub_800D570 - cmp r5, 0x2 - bne _08037B60 - bl sub_800D600 - lsls r0, 24 - cmp r0, 0 - beq _08037BFC - bl sub_8037A48 - lsls r0, 24 - cmp r0, 0 - bne _08037BC8 - movs r4, 0x4 - bl sub_800D520 - bl sub_800D510 - b _08037C06 - .align 2, 0 -_08037BC0: .4byte gUnknown_202EC38 -_08037BC4: .4byte 0x00000707 -_08037BC8: - movs r4, 0 - b _08037C06 -_08037BCC: - bl sub_800D520 - bl sub_800D510 - movs r0, 0x2 - b _08037C08 -_08037BD8: - bl sub_800D520 - bl sub_800D510 - movs r0, 0x3 - b _08037C08 -_08037BE4: - bl sub_800D520 - bl sub_800D510 - movs r0, 0xF - b _08037C08 -_08037BF0: - bl sub_800D520 - bl sub_800D510 - movs r0, 0x1 - b _08037C08 -_08037BFC: - movs r4, 0x5 - bl sub_800D520 - bl sub_800D510 -_08037C06: - adds r0, r4, 0 -_08037C08: - add sp, 0x14 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8037B28 - - thumb_func_start sub_8037C10 -sub_8037C10: - push {lr} - lsls r0, 24 - cmp r0, 0 - beq _08037C24 - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - bne _08037C38 - b _08037C2E -_08037C24: - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - beq _08037C38 -_08037C2E: - ldr r0, _08037C34 - ldr r0, [r0, 0x4] - b _08037C3C - .align 2, 0 -_08037C34: .4byte gUnknown_202EC40 -_08037C38: - ldr r0, _08037C40 - ldr r0, [r0] -_08037C3C: - pop {r1} - bx r1 - .align 2, 0 -_08037C40: .4byte gUnknown_202EC40 - thumb_func_end sub_8037C10 - - thumb_func_start sub_8037C44 -sub_8037C44: - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - movs r4, 0 -_08037C4C: - adds r0, r4, 0 - bl sub_800D68C - adds r4, 0x1 - cmp r4, 0x1 - ble _08037C4C - cmp r6, 0xA - bhi _08037CBE - lsls r0, r6, 2 - ldr r1, _08037C68 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08037C68: .4byte _08037C6C - .align 2, 0 -_08037C6C: - .4byte _08037C98 - .4byte _08037C98 - .4byte _08037CA2 - .4byte _08037CA2 - .4byte _08037CAC - .4byte _08037CAC - .4byte _08037CA2 - .4byte _08037CA2 - .4byte _08037CBE - .4byte _08037CB6 - .4byte _08037CB6 -_08037C98: - adds r0, r5, 0 - movs r1, 0x8 - bl sub_800D59C - b _08037CBE -_08037CA2: - adds r0, r5, 0 - movs r1, 0x30 - bl sub_800D59C - b _08037CBE -_08037CAC: - adds r0, r5, 0 - movs r1, 0x88 - bl sub_800D59C - b _08037CBE -_08037CB6: - adds r0, r5, 0 - movs r1, 0xB4 - bl sub_800D59C -_08037CBE: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8037C44 - - thumb_func_start sub_8037CC4 -sub_8037CC4: - push {r4,lr} - adds r3, r1, 0 - adds r4, r2, 0 - cmp r0, 0xA - bhi _08037D5E - lsls r0, 2 - ldr r1, _08037CD8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08037CD8: .4byte _08037CDC - .align 2, 0 -_08037CDC: - .4byte _08037D08 - .4byte _08037D08 - .4byte _08037D1E - .4byte _08037D1E - .4byte _08037D34 - .4byte _08037D34 - .4byte _08037D1E - .4byte _08037D1E - .4byte _08037D5E - .4byte _08037D4A - .4byte _08037D4A -_08037D08: - movs r0, 0 - adds r1, r3, 0 - movs r2, 0x8 - bl sub_800D670 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x8 - bl sub_800D670 - b _08037D5E -_08037D1E: - movs r0, 0 - adds r1, r3, 0 - movs r2, 0x30 - bl sub_800D670 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x30 - bl sub_800D670 - b _08037D5E -_08037D34: - movs r0, 0 - adds r1, r3, 0 - movs r2, 0x88 - bl sub_800D670 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x88 - bl sub_800D670 - b _08037D5E -_08037D4A: - movs r0, 0 - adds r1, r3, 0 - movs r2, 0xB4 - bl sub_800D670 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0xB4 - bl sub_800D670 -_08037D5E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8037CC4 - - thumb_func_start sub_8037D64 -sub_8037D64: - push {r4-r7,lr} - adds r5, r0, 0 - adds r6, r1, 0 - adds r7, r2, 0 - movs r4, 0 - ldr r0, _08037D80 - str r4, [r0] - bl sub_800D494 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8037C44 - b _08037D96 - .align 2, 0 -_08037D80: .4byte gUnknown_202EC48 -_08037D84: - subs r0, r4, 0x3 - cmp r0, 0x2 - bls _08037DBC - ldr r1, _08037DB8 - ldr r0, [r1] - cmp r0, 0x63 - bgt _08037DC8 - adds r0, 0x1 - str r0, [r1] -_08037D96: - bl sub_80373C4 - bl sub_800D33C - adds r4, r0, 0 - bl sub_800D570 - cmp r4, 0x2 - bne _08037D84 - bl sub_800D600 - lsls r0, 24 - cmp r0, 0 - beq _08037DD4 - movs r4, 0 - b _08037DDE - .align 2, 0 -_08037DB8: .4byte gUnknown_202EC48 -_08037DBC: - bl sub_800D520 - bl sub_800D510 - movs r0, 0x1 - b _08037DEA -_08037DC8: - bl sub_800D520 - bl sub_800D510 - movs r0, 0xF - b _08037DEA -_08037DD4: - bl sub_800D520 - bl sub_800D510 - movs r4, 0x5 -_08037DDE: - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r7, 0 - bl sub_8037CC4 - adds r0, r4, 0 -_08037DEA: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8037D64 - - thumb_func_start sub_8037DF0 -sub_8037DF0: - push {r4,lr} - sub sp, 0x8 - movs r4, 0 - movs r0, 0 - mov r1, sp - movs r2, 0x4 - bl sub_800D670 - add r1, sp, 0x4 - movs r0, 0x1 - movs r2, 0x4 - bl sub_800D670 - ldr r0, [sp] - cmp r0, 0 - bne _08037E16 - ldr r0, [sp, 0x4] - cmp r0, 0 - beq _08037E2C -_08037E16: - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - bne _08037E24 - ldr r4, [sp, 0x4] - b _08037E26 -_08037E24: - ldr r4, [sp] -_08037E26: - cmp r4, 0 - bne _08037E2C - movs r4, 0xE -_08037E2C: - adds r0, r4, 0 - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8037DF0 - - thumb_func_start sub_8037E38 -sub_8037E38: - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - bl sub_800D588 - lsls r0, 24 - adds r4, r6, 0 - cmp r0, 0 - bne _08037E4C - adds r4, r5, 0 -_08037E4C: - bl sub_800D588 - lsls r0, 24 - adds r3, r5, 0 - cmp r0, 0 - bne _08037E5A - adds r3, r6, 0 -_08037E5A: - ldrb r0, [r4] - ldrb r1, [r3] - cmp r0, r1 - bne _08037E70 - ldr r0, _08037E6C - ldr r1, [r0] - ldrb r0, [r4] - b _08037E76 - .align 2, 0 -_08037E6C: .4byte gUnknown_203B460 -_08037E70: - ldr r0, _08037E8C - ldr r1, [r0] - ldrb r0, [r3] -_08037E76: - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r2, [r1] - ldr r0, [r3, 0x4] - adds r2, r0 - strh r2, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08037E8C: .4byte gUnknown_203B460 - thumb_func_end sub_8037E38 - - thumb_func_start sub_8037E90 -sub_8037E90: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - bne _08037EA2 - adds r4, r5, 0 -_08037EA2: - movs r0, 0x2 - strb r0, [r4] - adds r0, r4, 0 - bl sub_80951BC - ldr r0, [r4, 0x10] - bl sub_8095274 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8037E90 - - thumb_func_start nullsub_53 -nullsub_53: - bx lr - thumb_func_end nullsub_53 - - thumb_func_start sub_8037EBC -sub_8037EBC: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - bl sub_800D588 - lsls r0, 24 - adds r5, r4, 0 - cmp r0, 0 - bne _08037ED0 - adds r5, r6, 0 -_08037ED0: - ldr r1, [r5, 0x10] - movs r0, 0x1 - bl sub_809539C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - adds r4, r0, 0 - adds r1, r4, 0 - adds r0, r5, 0 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - movs r0, 0x5 - strb r0, [r4] - adds r0, r4, 0 - bl sub_80951FC - movs r0, 0x7 - strb r0, [r4] - movs r0, 0x38 - ldrsh r6, [r5, r0] - cmp r6, 0 - beq _08037F30 - ldr r4, _08037F2C - ldr r0, [r4] - ldr r1, [r5, 0x10] - stm r0!, {r1} - adds r1, r5, 0 - adds r1, 0x30 - movs r2, 0x58 - bl memcpy - ldr r1, [r4] - movs r0, 0x42 - strb r0, [r1, 0x8] - ldr r1, [r4] - movs r0, 0x1 - strb r0, [r1, 0x9] - b _08037F40 - .align 2, 0 -_08037F2C: .4byte gUnknown_203B484 -_08037F30: - ldr r4, _08037F48 - ldr r0, [r4] - movs r1, 0 - movs r2, 0x5C - bl MemoryFill8 - ldr r0, [r4] - strh r6, [r0, 0xC] -_08037F40: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08037F48: .4byte gUnknown_203B484 - thumb_func_end sub_8037EBC - - thumb_func_start sub_8037F4C -sub_8037F4C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - bne _08037F5E - adds r4, r5, 0 -_08037F5E: - ldr r1, [r4, 0x10] - movs r0, 0x4 - bl sub_809539C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - adds r2, r0, 0 - adds r1, r4, 0 - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - movs r1, 0x6 - strb r1, [r0] - bl sub_8035D4C - cmp r0, 0 - beq _08037F96 - adds r1, r0, 0 - adds r1, 0x3A - movs r0, 0x1 - strb r0, [r1] -_08037F96: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8037F4C - - thumb_func_start sub_8037F9C -sub_8037F9C: - push {lr} - adds r3, r1, 0 - cmp r0, 0xA - bhi _08038010 - lsls r0, 2 - ldr r1, _08037FB0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08037FB0: .4byte _08037FB4 - .align 2, 0 -_08037FB4: - .4byte _08037FE0 - .4byte _08037FE0 - .4byte _08038010 - .4byte _08037FF4 - .4byte _08038010 - .4byte _08037FFE - .4byte _08038010 - .4byte _08037FEA - .4byte _08038010 - .4byte _08038010 - .4byte _08038008 -_08037FE0: - adds r0, r3, 0 - adds r1, r2, 0 - bl sub_8037E38 - b _08038010 -_08037FEA: - adds r0, r3, 0 - adds r1, r2, 0 - bl sub_8037F4C - b _08038010 -_08037FF4: - adds r0, r3, 0 - adds r1, r2, 0 - bl sub_8037E90 - b _08038010 -_08037FFE: - adds r0, r3, 0 - adds r1, r2, 0 - bl sub_8037EBC - b _08038010 -_08038008: - adds r0, r3, 0 - adds r1, r2, 0 - bl nullsub_53 -_08038010: - pop {r0} - bx r0 - thumb_func_end sub_8037F9C - - thumb_func_start sub_8038014 -sub_8038014: - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - bl sub_800D588 - lsls r0, 24 - adds r4, r6, 0 - cmp r0, 0 - bne _08038028 - adds r4, r5, 0 -_08038028: - bl sub_800D588 - lsls r0, 24 - adds r3, r5, 0 - cmp r0, 0 - bne _08038036 - adds r3, r6, 0 -_08038036: - ldrb r0, [r4] - ldrb r1, [r3] - cmp r0, r1 - bne _0803804C - ldr r0, _08038048 - ldr r1, [r0] - ldrb r0, [r4] - b _08038052 - .align 2, 0 -_08038048: .4byte gUnknown_203B460 -_0803804C: - ldr r0, _08038070 - ldr r1, [r0] - ldrb r0, [r3] -_08038052: - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r2, [r1] - ldr r0, [r3, 0x4] - adds r2, r0 - ldr r0, _08038074 - movs r1, 0 - cmp r2, r0 - ble _08038068 - movs r1, 0x6 -_08038068: - adds r0, r1, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08038070: .4byte gUnknown_203B460 -_08038074: .4byte 0x000003e7 - thumb_func_end sub_8038014 - - thumb_func_start sub_8038078 -sub_8038078: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - bne _0803808A - adds r4, r5, 0 -_0803808A: - ldr r6, [r4, 0x10] - ldr r0, _08038098 - ldr r0, [r0] - cmp r0, 0 - beq _0803809C - ldr r5, [r0, 0x50] - b _080380A2 - .align 2, 0 -_08038098: .4byte gUnknown_203B184 -_0803809C: - bl sub_8011C34 - adds r5, r0, 0 -_080380A2: - movs r0, 0x4 - adds r1, r6, 0 - bl sub_80952F0 - lsls r0, 24 - cmp r0, 0 - beq _080380BA - ldr r0, [r4, 0x28] - cmp r0, r5 - bne _080380BA - movs r0, 0 - b _080380BC -_080380BA: - movs r0, 0xB -_080380BC: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8038078 - - thumb_func_start sub_80380C4 -sub_80380C4: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - bl sub_800D588 - lsls r0, 24 - adds r5, r4, 0 - cmp r0, 0 - bne _080380D8 - adds r5, r6, 0 -_080380D8: - ldr r4, [r5, 0x10] - movs r0, 0x2 - adds r1, r4, 0 - bl sub_80952F0 - lsls r0, 24 - cmp r0, 0 - bne _08038110 - movs r0, 0x4 - adds r1, r4, 0 - bl sub_80952F0 - lsls r0, 24 - cmp r0, 0 - bne _08038110 - movs r0, 0x6 - adds r1, r4, 0 - bl sub_80952F0 - lsls r0, 24 - cmp r0, 0 - bne _08038110 - ldr r0, [r5, 0x10] - bl sub_8095298 - lsls r0, 24 - cmp r0, 0 - beq _08038114 -_08038110: - movs r0, 0x7 - b _08038126 -_08038114: - bl sub_8095190 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _08038124 - movs r0, 0 - b _08038126 -_08038124: - movs r0, 0xD -_08038126: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80380C4 - - thumb_func_start sub_803812C -sub_803812C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - bne _0803813E - adds r4, r5, 0 -_0803813E: - ldr r1, [r4, 0x10] - movs r0, 0x1 - bl sub_80952F0 - lsls r0, 24 - cmp r0, 0 - bne _08038150 - movs r0, 0x9 - b _08038152 -_08038150: - movs r0, 0 -_08038152: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_803812C - - thumb_func_start sub_8038158 -sub_8038158: - movs r0, 0 - bx lr - thumb_func_end sub_8038158 - - thumb_func_start sub_803815C -sub_803815C: - push {r4,lr} - adds r3, r1, 0 - movs r4, 0 - cmp r0, 0xA - bhi _080381D2 - lsls r0, 2 - ldr r1, _08038170 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08038170: .4byte _08038174 - .align 2, 0 -_08038174: - .4byte _080381A0 - .4byte _080381A0 - .4byte _080381D2 - .4byte _080381B4 - .4byte _080381D2 - .4byte _080381BE - .4byte _080381D2 - .4byte _080381AA - .4byte _080381D2 - .4byte _080381D2 - .4byte _080381C8 -_080381A0: - adds r0, r3, 0 - adds r1, r2, 0 - bl sub_8038014 - b _080381D0 -_080381AA: - adds r0, r3, 0 - adds r1, r2, 0 - bl sub_8038078 - b _080381D0 -_080381B4: - adds r0, r3, 0 - adds r1, r2, 0 - bl sub_80380C4 - b _080381D0 -_080381BE: - adds r0, r3, 0 - adds r1, r2, 0 - bl sub_803812C - b _080381D0 -_080381C8: - adds r0, r3, 0 - adds r1, r2, 0 - bl sub_8038158 -_080381D0: - adds r4, r0, 0 -_080381D2: - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_803815C - - thumb_func_start sub_80381DC -sub_80381DC: - push {lr} - bl sub_8037F9C - pop {r0} - bx r0 - thumb_func_end sub_80381DC - - thumb_func_start sub_80381E8 -sub_80381E8: - push {lr} - bl sub_803815C - pop {r1} - bx r1 - thumb_func_end sub_80381E8 - - thumb_func_start sub_80381F4 -sub_80381F4: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - adds r7, r2, 0 - movs r4, 0 - bl sub_803815C - str r0, [sp] - ldr r0, _08038218 - str r4, [r0] - bl sub_800D494 - mov r0, sp - movs r1, 0x4 - bl sub_800D59C - b _0803822E - .align 2, 0 -_08038218: .4byte gUnknown_202EC4C -_0803821C: - subs r0, r4, 0x3 - cmp r0, 0x2 - bls _08038272 - ldr r1, _08038250 - ldr r0, [r1] - cmp r0, 0x63 - bgt _0803827E - adds r0, 0x1 - str r0, [r1] -_0803822E: - bl sub_80373C4 - bl sub_800D33C - adds r4, r0, 0 - bl sub_800D570 - cmp r4, 0x2 - bne _0803821C - bl sub_800D600 - lsls r0, 24 - cmp r0, 0 - beq _08038254 - bl sub_8037DF0 - b _0803825E - .align 2, 0 -_08038250: .4byte gUnknown_202EC4C -_08038254: - bl sub_800D520 - bl sub_800D510 - movs r0, 0x5 -_0803825E: - str r0, [sp] - ldr r0, [sp] - cmp r0, 0 - bne _0803828A - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r7, 0 - bl sub_8037F9C - b _08038292 -_08038272: - bl sub_800D520 - bl sub_800D510 - movs r0, 0x1 - b _08038298 -_0803827E: - bl sub_800D520 - bl sub_800D510 - movs r0, 0xF - b _08038298 -_0803828A: - bl sub_800D520 - bl sub_800D510 -_08038292: - bl sub_800D520 - ldr r0, [sp] -_08038298: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80381F4 - - thumb_func_start sub_80382A0 -sub_80382A0: - push {lr} - movs r0, 0 - bl sub_8031F60 - pop {r0} - bx r0 - thumb_func_end sub_80382A0 - - thumb_func_start sub_80382AC -sub_80382AC: - push {lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r0} - bx r0 - thumb_func_end sub_80382AC - - thumb_func_start sub_80382C0 -sub_80382C0: - push {r4,lr} - ldr r4, _080382E0 - movs r0, 0x1 - bl sub_8031FD8 - cmp r0, 0x1 - bls _080382D8 - cmp r0, 0x3 - bhi _080382D8 - bl sub_803203C - movs r4, 0x1 -_080382D8: - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080382E0: .4byte 0x0000ffdc - thumb_func_end sub_80382C0 - - thumb_func_start sub_80382E4 -sub_80382E4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - mov r8, r0 - ldr r5, _08038398 - ldr r0, [r5] - cmp r0, 0 - bne _0803830E - movs r4, 0xDA - lsls r4, 1 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 -_0803830E: - mov r12, r5 - movs r0, 0xA4 - lsls r0, 1 - mov r9, r0 - ldr r4, _0803839C - movs r3, 0 - movs r2, 0x3 -_0803831C: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - add r1, r9 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0803831C - bl sub_8004914 - ldr r5, _08038398 - ldr r0, [r5] - movs r6, 0xA4 - lsls r6, 1 - adds r0, r6 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - mov r7, r8 - cmp r7, 0x25 - bne _08038370 - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x8 - adds r1, r6 - ldr r3, _080383A0 - ldr r2, _080383A4 - str r2, [sp] - movs r4, 0 - str r4, [sp, 0x4] - movs r2, 0x4 - str r2, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0 - bl SetMenuItems -_08038370: - ldr r0, [r5] - adds r0, 0x8 - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - ldr r1, [r5] - mov r0, r8 - str r0, [r1] - movs r0, 0 - str r0, [r1, 0x4] - bl sub_8038440 - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08038398: .4byte gUnknown_203B360 -_0803839C: .4byte gUnknown_80E6E7C -_080383A0: .4byte gUnknown_80E6E94 -_080383A4: .4byte gUnknown_80E6EAC - thumb_func_end sub_80382E4 - - thumb_func_start sub_80383A8 -sub_80383A8: - push {r4,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _080383D0 - ldr r0, [r4] - cmp r0, 0 - beq _080383C8 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080383C8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080383D0: .4byte gUnknown_203B360 - thumb_func_end sub_80383A8 - - thumb_func_start sub_80383D4 -sub_80383D4: - push {r4-r6,lr} - sub sp, 0x4 - movs r0, 0x2 - str r0, [sp] - ldr r6, _08038410 - ldr r4, _08038414 - ldr r0, [r4] - ldr r5, [r0, 0x4] - cmp r5, 0 - bne _08038434 - adds r0, 0x8 - bl sub_80130A8 - lsls r0, 24 - cmp r0, 0 - bne _080383FE - ldr r0, [r4] - adds r0, 0x8 - mov r1, sp - bl sub_8013114 -_080383FE: - ldr r0, [sp] - cmp r0, 0x2 - beq _0803842C - cmp r0, 0x2 - bhi _08038418 - cmp r0, 0x1 - beq _0803841C - b _08038430 - .align 2, 0 -_08038410: .4byte 0x0000ffdc -_08038414: .4byte gUnknown_203B360 -_08038418: - cmp r0, 0x3 - bne _08038430 -_0803841C: - ldr r0, _08038428 - ldr r1, [r0] - movs r0, 0 - str r0, [r1, 0x4] - movs r6, 0x1 - b _08038430 - .align 2, 0 -_08038428: .4byte gUnknown_203B360 -_0803842C: - ldr r0, [r4] - str r5, [r0, 0x4] -_08038430: - bl sub_80384D0 -_08038434: - adds r0, r6, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80383D4 - - thumb_func_start sub_8038440 -sub_8038440: - push {r4,r5,lr} - movs r5, 0 - ldr r0, _080384B0 - ldr r0, [r0] - mov r12, r0 - movs r3, 0xD4 - lsls r3, 1 - add r3, r12 - ldrh r1, [r3] - ldr r0, _080384B4 - ands r0, r1 - ldr r1, _080384B8 - ands r0, r1 - ldr r4, _080384BC - ands r0, r4 - ldr r1, _080384C0 - ands r0, r1 - ldr r1, _080384C4 - ands r0, r1 - movs r2, 0x80 - lsls r2, 7 - ldr r1, _080384C8 - ands r0, r1 - orrs r0, r2 - strh r0, [r3] - movs r2, 0xFC - lsls r2, 2 - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r4 - movs r2, 0xF - movs r4, 0xF0 - lsls r4, 8 - ldr r1, _080384CC - ands r0, r1 - orrs r0, r4 - strh r0, [r3, 0x4] - movs r0, 0x70 - strh r0, [r3, 0x2] - movs r1, 0xE0 - lsls r1, 3 - ldrh r0, [r3, 0x6] - ands r2, r0 - orrs r2, r1 - strh r2, [r3, 0x6] - movs r0, 0xD8 - lsls r0, 1 - add r0, r12 - str r5, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080384B0: .4byte gUnknown_203B360 -_080384B4: .4byte 0x0000feff -_080384B8: .4byte 0x0000fdff -_080384BC: .4byte 0x0000f3ff -_080384C0: .4byte 0x0000efff -_080384C4: .4byte 0x0000dfff -_080384C8: .4byte 0x00003fff -_080384CC: .4byte 0x00000fff - thumb_func_end sub_8038440 - - thumb_func_start sub_80384D0 -sub_80384D0: - push {r4,r5,lr} - ldr r5, _08038508 - ldr r2, [r5] - movs r4, 0xD8 - lsls r4, 1 - adds r0, r2, r4 - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080384F6 - movs r1, 0xD4 - lsls r1, 1 - adds r0, r2, r1 - subs r1, 0xA8 - movs r2, 0 - movs r3, 0 - bl AddSprite -_080384F6: - ldr r1, [r5] - adds r1, r4 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08038508: .4byte gUnknown_203B360 - thumb_func_end sub_80384D0 - - thumb_func_start sub_803850C -sub_803850C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - mov r8, r0 - ldr r5, _0803859C - ldr r0, [r5] - cmp r0, 0 - bne _08038536 - movs r4, 0xDA - lsls r4, 1 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 -_08038536: - mov r12, r5 - movs r0, 0xA4 - lsls r0, 1 - mov r9, r0 - ldr r4, _080385A0 - movs r3, 0 - movs r2, 0x3 -_08038544: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - add r1, r9 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _08038544 - bl sub_8004914 - ldr r4, _0803859C - ldr r0, [r4] - movs r6, 0xA4 - lsls r6, 1 - adds r0, r6 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - mov r7, r8 - cmp r7, 0x2E - bne _080385AC - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x8 - adds r1, r6 - ldr r3, _080385A4 - ldr r2, _080385A8 - str r2, [sp] - movs r4, 0 - str r4, [sp, 0x4] - movs r2, 0x6 - str r2, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0 - bl SetMenuItems - b _080385CE - .align 2, 0 -_0803859C: .4byte gUnknown_203B364 -_080385A0: .4byte gUnknown_80E6F20 -_080385A4: .4byte gUnknown_80E6F38 -_080385A8: .4byte gUnknown_80E7090 -_080385AC: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _080385F8 - ldr r2, _080385FC - str r2, [sp] - movs r4, 0 - str r4, [sp, 0x4] - movs r2, 0x6 - str r2, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0 - bl SetMenuItems -_080385CE: - ldr r4, _08038600 - ldr r0, [r4] - adds r0, 0x8 - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - ldr r1, [r4] - movs r0, 0 - str r0, [r1, 0x4] - mov r5, r8 - str r5, [r1] - bl sub_8038830 - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080385F8: .4byte gUnknown_80E6F38 -_080385FC: .4byte gUnknown_80E6F50 -_08038600: .4byte gUnknown_203B364 - thumb_func_end sub_803850C - - thumb_func_start sub_8038604 -sub_8038604: - push {r4,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _0803862C - ldr r0, [r4] - cmp r0, 0 - beq _08038624 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08038624: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803862C: .4byte gUnknown_203B364 - thumb_func_end sub_8038604 - - thumb_func_start sub_8038630 -sub_8038630: - push {r4-r6,lr} - sub sp, 0x18 - ldr r5, _080386A8 - movs r0, 0x3 - str r0, [sp, 0x14] - ldr r6, _080386AC - ldr r0, [r6] - ldr r4, [r0, 0x4] - cmp r4, 0x1 - bne _08038646 - b _08038798 -_08038646: - cmp r4, 0x1 - bcc _0803864C - b _08038824 -_0803864C: - adds r0, 0x8 - bl sub_8012FD8 - movs r5, 0 - str r5, [sp, 0x10] - bl sub_80140F8 - bl sub_8011C1C - adds r1, r0, 0 - add r0, sp, 0x10 - bl sub_801203C - adds r4, r0, 0 - bl sub_8014114 - cmp r4, 0 - beq _080386B8 - cmp r4, 0x1 - beq _08038738 - ldr r0, [r6] - movs r4, 0xA4 - lsls r4, 1 - adds r0, r4 - movs r1, 0 - bl sub_8035CC0 - ldr r1, [r6] - ldr r0, [r1] - cmp r0, 0x2E - bne _08038750 - adds r0, r1, 0 - adds r0, 0x8 - adds r1, r4 - ldr r3, _080386B0 - ldr r2, _080386B4 - str r2, [sp] - str r5, [sp, 0x4] - movs r2, 0x6 - str r2, [sp, 0x8] - str r5, [sp, 0xC] - movs r2, 0 - bl SetMenuItems - b _0803876E - .align 2, 0 -_080386A8: .4byte 0x0000ffdc -_080386AC: .4byte gUnknown_203B364 -_080386B0: .4byte gUnknown_80E6F38 -_080386B4: .4byte gUnknown_80E7114 -_080386B8: - ldr r0, [r6] - movs r1, 0xA4 - lsls r1, 1 - adds r0, r1 - movs r1, 0 - bl sub_8035CC0 - ldr r1, [r6] - ldr r0, [r1] - cmp r0, 0x2E - bne _080386F8 - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _080386F0 - ldr r2, _080386F4 - str r2, [sp] - str r5, [sp, 0x4] - movs r2, 0x6 - str r2, [sp, 0x8] - str r5, [sp, 0xC] - movs r2, 0 - bl SetMenuItems - b _08038716 - .align 2, 0 -_080386F0: .4byte gUnknown_80E6F38 -_080386F4: .4byte gUnknown_80E70CC -_080386F8: - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038728 - ldr r2, _0803872C - str r2, [sp] - str r5, [sp, 0x4] - movs r2, 0x6 - str r2, [sp, 0x8] - str r5, [sp, 0xC] - movs r2, 0 - bl SetMenuItems -_08038716: - ldr r4, _08038730 - ldr r1, [r4] - ldr r0, [r1] - cmp r0, 0x2D - bne _08038734 - movs r0, 0x1 - str r0, [r1, 0x4] - movs r0, 0x13 - b _08038826 - .align 2, 0 -_08038728: .4byte gUnknown_80E6F38 -_0803872C: .4byte gUnknown_80E6FBC -_08038730: .4byte gUnknown_203B364 -_08038734: - adds r0, r1, 0 - b _08038772 -_08038738: - ldr r0, _0803874C - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_80141B4 - ldr r1, [r6] - movs r0, 0x5 - b _08038780 - .align 2, 0 -_0803874C: .4byte gUnknown_80E7178 -_08038750: - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038788 - ldr r2, _0803878C - str r2, [sp] - str r5, [sp, 0x4] - movs r2, 0x6 - str r2, [sp, 0x8] - str r5, [sp, 0xC] - movs r2, 0 - bl SetMenuItems -_0803876E: - ldr r4, _08038790 - ldr r0, [r4] -_08038772: - adds r0, 0x8 - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - ldr r1, [r4] - movs r0, 0x1 -_08038780: - str r0, [r1, 0x4] - ldr r5, _08038794 - b _08038824 - .align 2, 0 -_08038788: .4byte gUnknown_80E6F38 -_0803878C: .4byte gUnknown_80E701C -_08038790: .4byte gUnknown_203B364 -_08038794: .4byte 0x0000ffdc -_08038798: - adds r0, 0x8 - bl sub_80130A8 - lsls r0, 24 - cmp r0, 0 - bne _080387AE - ldr r0, [r6] - adds r0, 0x8 - add r1, sp, 0x14 - bl sub_8013114 -_080387AE: - ldr r0, [sp, 0x14] - cmp r0, 0x3 - beq _0803881C - cmp r0, 0x3 - bhi _080387BE - cmp r0, 0x2 - beq _080387C2 - b _08038820 -_080387BE: - cmp r0, 0x4 - bne _08038820 -_080387C2: - ldr r4, _080387D8 - ldr r1, [r4] - ldr r0, [r1] - cmp r0, 0x29 - beq _080387D0 - cmp r0, 0x2E - bne _080387DC -_080387D0: - movs r0, 0x1 - str r0, [r1, 0x4] - movs r5, 0x1 - b _08038820 - .align 2, 0 -_080387D8: .4byte gUnknown_203B364 -_080387DC: - cmp r0, 0x2D - bne _080387E8 - movs r0, 0x1 - str r0, [r1, 0x4] - movs r5, 0x13 - b _08038820 -_080387E8: - cmp r0, 0x2C - bne _080387F4 - movs r0, 0x1 - str r0, [r1, 0x4] - movs r5, 0x1F - b _08038820 -_080387F4: - bl sub_8035D4C - adds r0, 0x3A - ldrb r0, [r0] - cmp r0, 0 - beq _0803880A - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1, 0x4] - movs r5, 0x35 - b _08038820 -_0803880A: - ldr r0, [r4] - movs r1, 0x1 - str r1, [r0, 0x4] - ldr r0, [r0] - movs r5, 0xB - cmp r0, 0x2B - bne _08038820 - movs r5, 0xD - b _08038820 -_0803881C: - ldr r0, [r6] - str r4, [r0, 0x4] -_08038820: - bl sub_80388C4 -_08038824: - adds r0, r5, 0 -_08038826: - add sp, 0x18 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8038630 - - thumb_func_start sub_8038830 -sub_8038830: - push {r4,r5,lr} - movs r5, 0 - ldr r0, _080388A4 - ldr r0, [r0] - mov r12, r0 - movs r3, 0xD4 - lsls r3, 1 - add r3, r12 - ldrh r1, [r3] - ldr r0, _080388A8 - ands r0, r1 - ldr r1, _080388AC - ands r0, r1 - ldr r4, _080388B0 - ands r0, r4 - ldr r1, _080388B4 - ands r0, r1 - ldr r1, _080388B8 - ands r0, r1 - movs r2, 0x80 - lsls r2, 7 - ldr r1, _080388BC - ands r0, r1 - orrs r0, r2 - strh r0, [r3] - movs r2, 0xFC - lsls r2, 2 - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r4 - movs r2, 0xF - movs r4, 0xF0 - lsls r4, 8 - ldr r1, _080388C0 - ands r0, r1 - orrs r0, r4 - strh r0, [r3, 0x4] - movs r0, 0x70 - strh r0, [r3, 0x2] - movs r1, 0xD0 - lsls r1, 3 - ldrh r0, [r3, 0x6] - ands r2, r0 - orrs r2, r1 - strh r2, [r3, 0x6] - movs r0, 0xD8 - lsls r0, 1 - add r0, r12 - str r5, [r0] - movs r0, 0 - bl sub_8004D8C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080388A4: .4byte gUnknown_203B364 -_080388A8: .4byte 0x0000feff -_080388AC: .4byte 0x0000fdff -_080388B0: .4byte 0x0000f3ff -_080388B4: .4byte 0x0000efff -_080388B8: .4byte 0x0000dfff -_080388BC: .4byte 0x00003fff -_080388C0: .4byte 0x00000fff - thumb_func_end sub_8038830 - - thumb_func_start sub_80388C4 -sub_80388C4: - push {r4,r5,lr} - ldr r5, _080388FC - ldr r2, [r5] - movs r4, 0xD8 - lsls r4, 1 - adds r0, r2, r4 - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080388EA - movs r1, 0xD4 - lsls r1, 1 - adds r0, r2, r1 - subs r1, 0xA8 - movs r2, 0 - movs r3, 0 - bl AddSprite -_080388EA: - ldr r1, [r5] - adds r1, r4 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080388FC: .4byte gUnknown_203B364 - thumb_func_end sub_80388C4 - - thumb_func_start sub_8038900 -sub_8038900: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r6, r0, 0 - ldr r5, _080389B8 - ldr r0, [r5] - cmp r0, 0 - bne _0803892A - movs r4, 0x85 - lsls r4, 2 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 -_0803892A: - movs r0, 0x1B - negs r0, r0 - adds r0, r6 - mov r8, r0 - mov r12, r5 - movs r1, 0xA4 - lsls r1, 1 - mov r9, r1 - ldr r4, _080389BC - mov r10, r4 - movs r3, 0 - movs r2, 0x3 -_08038942: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - add r1, r9 - mov r0, r10 - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - ldm r0!, {r4,r5,r7} - stm r1!, {r4,r5,r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _08038942 - bl sub_8004914 - ldr r4, _080389B8 - ldr r0, [r4] - movs r7, 0xA4 - lsls r7, 1 - adds r0, r7 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r2, _080389C0 - ldrb r0, [r2] - cmp r0, 0 - bne _08038986 - ldr r0, _080389C4 - ldr r1, [r0] - adds r7, r4, 0 - adds r5, r0, 0 - cmp r1, r6 - beq _080389A0 -_08038986: - adds r7, r4, 0 - adds r3, r2, 0 - ldr r5, _080389C4 - ldr r1, _080389C8 - movs r2, 0 - adds r0, r1, 0 - adds r0, 0x35 -_08038994: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _08038994 - movs r0, 0 - strb r0, [r3] -_080389A0: - ldr r0, [r7] - str r6, [r0] - str r6, [r5] - mov r0, r8 - cmp r0, 0x7 - bhi _08038A36 - lsls r0, 2 - ldr r1, _080389CC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080389B8: .4byte gUnknown_203B370 -_080389BC: .4byte gUnknown_80E71E4 -_080389C0: .4byte gUnknown_203B368 -_080389C4: .4byte gUnknown_203B36C -_080389C8: .4byte gUnknown_202EC50 -_080389CC: .4byte _080389D0 - .align 2, 0 -_080389D0: - .4byte _080389F0 - .4byte _080389FC - .4byte _080389F0 - .4byte _080389FC - .4byte _080389F0 - .4byte _080389FC - .4byte _08038A0C - .4byte _08038A2E -_080389F0: - bl sub_8035D74 - movs r1, 0 - bl sub_8031D70 - b _08038A36 -_080389FC: - ldr r1, _08038A08 - movs r0, 0x4 - bl sub_80151C0 - b _08038A36 - .align 2, 0 -_08038A08: .4byte gUnknown_202EC50 -_08038A0C: - movs r0, 0x1F - bl sub_8095228 - adds r4, r0, 0 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - movs r1, 0 - movs r0, 0x2 - strb r0, [r4] - adds r4, 0x22 - strb r1, [r4] - movs r0, 0x1F - bl sub_8031D70 - b _08038A36 -_08038A2E: - ldr r1, _08038A54 - movs r0, 0x4 - bl sub_80151C0 -_08038A36: - adds r0, r6, 0 - bl sub_8039000 - ldr r1, _08038A58 - ldr r1, [r1] - str r0, [r1, 0x4] - bl sub_8039174 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08038A54: .4byte gUnknown_202EC50 -_08038A58: .4byte gUnknown_203B370 - thumb_func_end sub_8038900 - - thumb_func_start sub_8038A5C -sub_8038A5C: - push {r4,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _08038A8C - ldr r0, [r4] - cmp r0, 0 - beq _08038A86 - bl sub_80155F0 - bl sub_8031E10 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08038A86: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08038A8C: .4byte gUnknown_203B370 - thumb_func_end sub_8038A5C - - thumb_func_start sub_8038A90 -sub_8038A90: - push {r4-r6,lr} - sub sp, 0x34 - movs r0, 0xB - str r0, [sp, 0x30] - ldr r5, _08038AB4 - ldr r1, _08038AB8 - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r6, r1, 0 - cmp r0, 0x9 - bls _08038AA8 - b _08038DB0 -_08038AA8: - lsls r0, 2 - ldr r1, _08038ABC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08038AB4: .4byte 0x0000ffdc -_08038AB8: .4byte gUnknown_203B370 -_08038ABC: .4byte _08038AC0 - .align 2, 0 -_08038AC0: - .4byte _08038AE8 - .4byte _08038AFC - .4byte _08038AE8 - .4byte _08038AFC - .4byte _08038AE8 - .4byte _08038AFC - .4byte _08038C78 - .4byte _08038C8C - .4byte _08038CC2 - .4byte _08038D38 -_08038AE8: - bl sub_8031DCC - ldr r5, _08038AF8 - cmp r0, 0 - bne _08038AF4 - b _08038DB0 -_08038AF4: - movs r5, 0xB - b _08038DB0 - .align 2, 0 -_08038AF8: .4byte 0x0000ffdc -_08038AFC: - bl sub_80154F0 - adds r4, r0, 0 - mov r0, sp - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - cmp r4, 0x1 - bne _08038B12 - b _08038CBC -_08038B12: - cmp r4, 0x1 - bcs _08038B18 - b _08038CB0 -_08038B18: - cmp r4, 0x2 - beq _08038AF4 - cmp r4, 0x3 - beq _08038B22 - b _08038DB0 -_08038B22: - ldr r0, _08038B44 - ldr r0, [r0] - ldr r0, [r0] - ldr r1, _08038B48 - mov r2, sp - bl sub_8039068 - subs r0, 0x7 - cmp r0, 0x11 - bls _08038B38 - b _08038DB0 -_08038B38: - lsls r0, 2 - ldr r1, _08038B4C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08038B44: .4byte gUnknown_203B370 -_08038B48: .4byte gUnknown_202EC50 -_08038B4C: .4byte _08038B50 - .align 2, 0 -_08038B50: - .4byte _08038BA4 - .4byte _08038DB0 - .4byte _08038BD8 - .4byte _08038DB0 - .4byte _08038C28 - .4byte _08038DB0 - .4byte _08038B9C - .4byte _08038DB0 - .4byte _08038DB0 - .4byte _08038DB0 - .4byte _08038B98 - .4byte _08038BA0 - .4byte _08038BD4 - .4byte _08038C24 - .4byte _08038DB0 - .4byte _08038BA8 - .4byte _08038BDC - .4byte _08038C2C -_08038B98: - movs r0, 0x11 - b _08038CA4 -_08038B9C: - movs r0, 0xD - b _08038CA4 -_08038BA0: - movs r0, 0x12 - b _08038CA4 -_08038BA4: - movs r0, 0x7 - b _08038CA4 -_08038BA8: - ldr r0, [sp, 0x10] - bl sub_8095274 - bl sub_8038F98 - ldr r0, _08038BCC - ldr r1, [r0] - movs r0, 0x9 - str r0, [r1, 0x4] - ldr r5, _08038BD0 - mov r1, sp - movs r0, 0x2 - strb r0, [r1] - mov r0, sp - bl sub_80951BC - b _08038DB0 - .align 2, 0 -_08038BCC: .4byte gUnknown_203B370 -_08038BD0: .4byte 0x0000ffdc -_08038BD4: - movs r0, 0x13 - b _08038CA4 -_08038BD8: - movs r0, 0x9 - b _08038CA4 -_08038BDC: - bl sub_8038F98 - ldr r0, _08038C18 - ldr r1, [r0] - movs r0, 0x9 - str r0, [r1, 0x4] - ldr r5, _08038C1C - mov r1, sp - movs r0, 0x5 - strb r0, [r1] - mov r0, sp - bl sub_80951FC - ldr r1, [sp, 0x10] - movs r0, 0x1 - bl sub_809539C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - movs r1, 0x7 - strb r1, [r0] - ldr r0, _08038C20 - movs r1, 0 - movs r2, 0x5C - bl MemoryFill8 - b _08038DB0 - .align 2, 0 -_08038C18: .4byte gUnknown_203B370 -_08038C1C: .4byte 0x0000ffdc -_08038C20: .4byte gUnknown_203B484 -_08038C24: - movs r0, 0x14 - b _08038CA4 -_08038C28: - movs r0, 0xB - b _08038CA4 -_08038C2C: - bl sub_8038F98 - ldr r0, _08038C70 - ldr r1, [r0] - movs r0, 0x9 - str r0, [r1, 0x4] - ldr r5, _08038C74 - ldr r1, [sp, 0x10] - movs r0, 0x4 - bl sub_809539C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - adds r2, r0, 0 - mov r1, sp - ldm r1!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - ldm r1!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - ldm r1!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - ldm r1!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - movs r1, 0x6 - strb r1, [r0] - bl sub_8035D4C - adds r0, 0x3A - movs r1, 0x1 - strb r1, [r0] - b _08038DB0 - .align 2, 0 -_08038C70: .4byte gUnknown_203B370 -_08038C74: .4byte 0x0000ffdc -_08038C78: - bl sub_8031DCC - ldr r5, _08038C88 - cmp r0, 0 - bne _08038C84 - b _08038DB0 -_08038C84: - movs r5, 0xD - b _08038DB0 - .align 2, 0 -_08038C88: .4byte 0x0000ffdc -_08038C8C: - bl sub_80154F0 - cmp r0, 0x1 - beq _08038CBC - cmp r0, 0x1 - bcc _08038CB0 - cmp r0, 0x2 - beq _08038C84 - cmp r0, 0x3 - beq _08038CA2 - b _08038DB0 -_08038CA2: - movs r0, 0x15 -_08038CA4: - bl sub_8038DC0 - ldr r0, _08038CB4 - ldr r1, [r0] - movs r0, 0x8 - str r0, [r1, 0x4] -_08038CB0: - ldr r5, _08038CB8 - b _08038DB0 - .align 2, 0 -_08038CB4: .4byte gUnknown_203B370 -_08038CB8: .4byte 0x0000ffdc -_08038CBC: - bl sub_8031E00 - b _08038CB0 -_08038CC2: - ldr r0, [r6] - adds r0, 0x8 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08038CDA - ldr r0, [r6] - adds r0, 0x8 - add r1, sp, 0x30 - bl sub_8013114 -_08038CDA: - ldr r0, [sp, 0x30] - cmp r0, 0xB - beq _08038D24 - cmp r0, 0xB - bhi _08038CEA - cmp r0, 0xA - beq _08038CEE - b _08038DB0 -_08038CEA: - cmp r0, 0xC - bne _08038DB0 -_08038CEE: - bl sub_8039174 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, _08038D1C - movs r0, 0x4 - bl sub_80151C0 - ldr r0, _08038D20 - ldr r1, [r0] - movs r0, 0x8 - str r0, [r1, 0x4] - ldr r0, [r1] - subs r0, 0x21 - movs r5, 0xB - cmp r0, 0x1 - bhi _08038DB0 - b _08038C84 - .align 2, 0 -_08038D1C: .4byte gUnknown_202EC50 -_08038D20: .4byte gUnknown_203B370 -_08038D24: - ldr r1, [r6] - movs r0, 0x8 - str r0, [r1, 0x4] - ldr r5, _08038D34 - bl sub_80391F8 - b _08038DB0 - .align 2, 0 -_08038D34: .4byte 0x0000ffdc -_08038D38: - adds r4, r6, 0 - ldr r0, [r4] - adds r0, 0x8 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08038D52 - ldr r0, [r4] - adds r0, 0x8 - add r1, sp, 0x30 - bl sub_8013114 -_08038D52: - ldr r0, [sp, 0x30] - cmp r0, 0xB - beq _08038DA4 - cmp r0, 0xB - bhi _08038D62 - cmp r0, 0xA - beq _08038D66 - b _08038DB0 -_08038D62: - cmp r0, 0xC - bne _08038DB0 -_08038D66: - bl sub_8039174 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, _08038D9C - movs r0, 0x4 - bl sub_80151C0 - ldr r4, _08038DA0 - ldr r0, [r4] - ldr r0, [r0] - bl sub_8039000 - ldr r1, [r4] - str r0, [r1, 0x4] - ldr r0, [r1] - subs r0, 0x21 - movs r5, 0x2A - cmp r0, 0x1 - bhi _08038DB0 - movs r5, 0x2B - b _08038DB0 - .align 2, 0 -_08038D9C: .4byte gUnknown_202EC50 -_08038DA0: .4byte gUnknown_203B370 -_08038DA4: - ldr r1, [r6] - movs r0, 0x9 - str r0, [r1, 0x4] - ldr r5, _08038DBC - bl sub_80391F8 -_08038DB0: - adds r0, r5, 0 - add sp, 0x34 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08038DBC: .4byte 0x0000ffdc - thumb_func_end sub_8038A90 - - thumb_func_start sub_8038DC0 -sub_8038DC0: - push {r4,lr} - sub sp, 0x10 - adds r4, r0, 0 - ldr r0, _08038DF8 - ldr r0, [r0] - movs r1, 0xD4 - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_80155F0 - subs r0, r4, 0x7 - cmp r0, 0xE - bls _08038DEE - b _08038F74 -_08038DEE: - lsls r0, 2 - ldr r1, _08038DFC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08038DF8: .4byte gUnknown_203B370 -_08038DFC: .4byte _08038E00 - .align 2, 0 -_08038E00: - .4byte _08038E7C - .4byte _08038F74 - .4byte _08038EDC - .4byte _08038F74 - .4byte _08038F1C - .4byte _08038F74 - .4byte _08038E9C - .4byte _08038F74 - .4byte _08038F74 - .4byte _08038F74 - .4byte _08038E3C - .4byte _08038E5C - .4byte _08038EBC - .4byte _08038EFC - .4byte _08038F50 -_08038E3C: - ldr r0, _08038E50 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038E54 - ldr r2, _08038E58 - b _08038F2E - .align 2, 0 -_08038E50: .4byte gUnknown_203B370 -_08038E54: .4byte gUnknown_80E71FC -_08038E58: .4byte gUnknown_80E7214 -_08038E5C: - ldr r0, _08038E70 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038E74 - ldr r2, _08038E78 - b _08038F2E - .align 2, 0 -_08038E70: .4byte gUnknown_203B370 -_08038E74: .4byte gUnknown_80E72EC -_08038E78: .4byte gUnknown_80E7304 -_08038E7C: - ldr r0, _08038E90 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038E94 - ldr r2, _08038E98 - b _08038F2E - .align 2, 0 -_08038E90: .4byte gUnknown_203B370 -_08038E94: .4byte gUnknown_80E7344 -_08038E98: .4byte gUnknown_80E735C -_08038E9C: - ldr r0, _08038EB0 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038EB4 - ldr r2, _08038EB8 - b _08038F2E - .align 2, 0 -_08038EB0: .4byte gUnknown_203B370 -_08038EB4: .4byte gUnknown_80E7588 -_08038EB8: .4byte gUnknown_80E75A0 -_08038EBC: - ldr r0, _08038ED0 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038ED4 - ldr r2, _08038ED8 - b _08038F2E - .align 2, 0 -_08038ED0: .4byte gUnknown_203B370 -_08038ED4: .4byte gUnknown_80E73AC -_08038ED8: .4byte gUnknown_80E73C4 -_08038EDC: - ldr r0, _08038EF0 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038EF4 - ldr r2, _08038EF8 - b _08038F2E - .align 2, 0 -_08038EF0: .4byte gUnknown_203B370 -_08038EF4: .4byte gUnknown_80E7408 -_08038EF8: .4byte gUnknown_80E7420 -_08038EFC: - ldr r0, _08038F10 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038F14 - ldr r2, _08038F18 - b _08038F2E - .align 2, 0 -_08038F10: .4byte gUnknown_203B370 -_08038F14: .4byte gUnknown_80E7468 -_08038F18: .4byte gUnknown_80E7480 -_08038F1C: - ldr r0, _08038F44 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038F48 - ldr r2, _08038F4C -_08038F2E: - str r2, [sp] - movs r4, 0 - str r4, [sp, 0x4] - movs r2, 0xD - str r2, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0 - bl SetMenuItems - b _08038F74 - .align 2, 0 -_08038F44: .4byte gUnknown_203B370 -_08038F48: .4byte gUnknown_80E74C8 -_08038F4C: .4byte gUnknown_80E74E0 -_08038F50: - ldr r0, _08038F8C - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038F90 - ldr r2, _08038F94 - str r2, [sp] - movs r4, 0 - str r4, [sp, 0x4] - movs r2, 0xD - str r2, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0 - bl SetMenuItems -_08038F74: - ldr r0, _08038F8C - ldr r0, [r0] - adds r0, 0x8 - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - add sp, 0x10 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08038F8C: .4byte gUnknown_203B370 -_08038F90: .4byte gUnknown_80E752C -_08038F94: .4byte gUnknown_80E7544 - thumb_func_end sub_8038DC0 - - thumb_func_start sub_8038F98 -sub_8038F98: - push {r4,r5,lr} - sub sp, 0x10 - ldr r5, _08038FF4 - ldr r0, [r5] - movs r1, 0xD4 - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_80155F0 - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r2 - ldr r3, _08038FF8 - ldr r2, _08038FFC - str r2, [sp] - movs r4, 0 - str r4, [sp, 0x4] - movs r2, 0xD - str r2, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0 - bl SetMenuItems - ldr r0, [r5] - adds r0, 0x8 - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - add sp, 0x10 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08038FF4: .4byte gUnknown_203B370 -_08038FF8: .4byte gUnknown_80E7278 -_08038FFC: .4byte gUnknown_80E7290 - thumb_func_end sub_8038F98 - - thumb_func_start sub_8039000 -sub_8039000: - push {lr} - movs r1, 0xB - ldr r0, _0803901C - ldr r0, [r0] - ldr r0, [r0] - subs r0, 0x1B - cmp r0, 0x7 - bhi _08039062 - lsls r0, 2 - ldr r1, _08039020 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803901C: .4byte gUnknown_203B370 -_08039020: .4byte _08039024 - .align 2, 0 -_08039024: - .4byte _08039044 - .4byte _08039054 - .4byte _0803904C - .4byte _0803905C - .4byte _08039048 - .4byte _08039058 - .4byte _08039050 - .4byte _08039060 -_08039044: - movs r1, 0 - b _08039062 -_08039048: - movs r1, 0x4 - b _08039062 -_0803904C: - movs r1, 0x2 - b _08039062 -_08039050: - movs r1, 0x6 - b _08039062 -_08039054: - movs r1, 0x1 - b _08039062 -_08039058: - movs r1, 0x5 - b _08039062 -_0803905C: - movs r1, 0x3 - b _08039062 -_08039060: - movs r1, 0x7 -_08039062: - adds r0, r1, 0 - pop {r1} - bx r1 - thumb_func_end sub_8039000 - - thumb_func_start sub_8039068 -sub_8039068: - push {r4-r6,lr} - adds r6, r0, 0 - adds r0, r1, 0 - adds r5, r2, 0 - adds r1, r5, 0 - bl sub_803D204 - lsls r0, 24 - cmp r0, 0 - beq _080390AC - ldrb r0, [r5] - cmp r0, 0x7 - bhi _080390AC - ldrb r4, [r5, 0x5] - ldrb r0, [r5, 0x4] - bl sub_8090298 - cmp r4, r0 - bge _080390AC - movs r0, 0xC - ldrsh r1, [r5, r0] - cmp r1, 0 - beq _080390AC - ldr r0, _080390B0 - cmp r1, r0 - bgt _080390AC - adds r0, r5, 0 - adds r0, 0x22 - ldrb r0, [r0] - bl sub_8092040 - lsls r0, 24 - cmp r0, 0 - beq _080390B4 -_080390AC: - movs r0, 0x11 - b _0803916E - .align 2, 0 -_080390B0: .4byte 0x000001a7 -_080390B4: - cmp r6, 0x1E - beq _08039120 - cmp r6, 0x1E - bhi _080390C2 - cmp r6, 0x1C - beq _080390C8 - b _0803916A -_080390C2: - cmp r6, 0x20 - beq _08039140 - b _0803916A -_080390C8: - ldrb r0, [r5] - cmp r0, 0x1 - beq _080390D2 - movs r0, 0x12 - b _0803916E -_080390D2: - ldr r1, [r5, 0x10] - movs r0, 0x2 - bl sub_80952F0 - lsls r0, 24 - cmp r0, 0 - bne _08039108 - ldr r1, [r5, 0x10] - movs r0, 0x4 - bl sub_80952F0 - lsls r0, 24 - cmp r0, 0 - bne _08039108 - ldr r1, [r5, 0x10] - movs r0, 0x6 - bl sub_80952F0 - lsls r0, 24 - cmp r0, 0 - bne _08039108 - ldr r0, [r5, 0x10] - bl sub_8095298 - lsls r0, 24 - cmp r0, 0 - beq _0803910C -_08039108: - movs r0, 0x7 - b _0803916E -_0803910C: - bl sub_8095190 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _0803911C - movs r0, 0xD - b _0803916E -_0803911C: - movs r0, 0x16 - b _0803916E -_08039120: - ldrb r0, [r5] - cmp r0, 0x4 - beq _0803912A - movs r0, 0x13 - b _0803916E -_0803912A: - ldr r1, [r5, 0x10] - movs r0, 0x1 - bl sub_80952F0 - lsls r0, 24 - cmp r0, 0 - bne _0803913C - movs r0, 0x9 - b _0803916E -_0803913C: - movs r0, 0x17 - b _0803916E -_08039140: - ldrb r0, [r5] - cmp r0, 0x5 - beq _0803914A - movs r0, 0x14 - b _0803916E -_0803914A: - ldr r1, [r5, 0x10] - movs r0, 0x4 - bl sub_80952F0 - lsls r0, 24 - cmp r0, 0 - beq _08039162 - bl sub_8011C34 - ldr r1, [r5, 0x28] - cmp r1, r0 - beq _08039166 -_08039162: - movs r0, 0xB - b _0803916E -_08039166: - movs r0, 0x18 - b _0803916E -_0803916A: - movs r0, 0x1 - negs r0, r0 -_0803916E: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8039068 - - thumb_func_start sub_8039174 -sub_8039174: - push {r4,lr} - ldr r0, _080391D8 - ldr r3, [r0] - movs r0, 0x82 - lsls r0, 2 - adds r3, r0 - ldrh r1, [r3] - ldr r0, _080391DC - ands r0, r1 - ldr r1, _080391E0 - ands r0, r1 - ldr r4, _080391E4 - ands r0, r4 - ldr r1, _080391E8 - ands r0, r1 - ldr r1, _080391EC - ands r0, r1 - movs r2, 0x80 - lsls r2, 7 - ldr r1, _080391F0 - ands r0, r1 - orrs r0, r2 - strh r0, [r3] - movs r2, 0xFC - lsls r2, 2 - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r4 - movs r2, 0xF - movs r4, 0xF0 - lsls r4, 8 - ldr r1, _080391F4 - ands r0, r1 - orrs r0, r4 - strh r0, [r3, 0x4] - movs r0, 0 - strh r0, [r3, 0x2] - movs r1, 0xC0 - lsls r1, 4 - ldrh r0, [r3, 0x6] - ands r2, r0 - orrs r2, r1 - strh r2, [r3, 0x6] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080391D8: .4byte gUnknown_203B370 -_080391DC: .4byte 0x0000feff -_080391E0: .4byte 0x0000fdff -_080391E4: .4byte 0x0000f3ff -_080391E8: .4byte 0x0000efff -_080391EC: .4byte 0x0000dfff -_080391F0: .4byte 0x00003fff -_080391F4: .4byte 0x00000fff - thumb_func_end sub_8039174 - - thumb_func_start sub_80391F8 -sub_80391F8: - push {r4-r6,lr} - ldr r6, _08039250 - ldr r2, [r6] - movs r0, 0x82 - lsls r0, 2 - adds r4, r2, r0 - ldrh r1, [r4, 0x2] - movs r0, 0xFE - lsls r0, 8 - ands r0, r1 - movs r1, 0x70 - orrs r0, r1 - strh r0, [r4, 0x2] - movs r3, 0xE0 - lsls r3, 3 - ldrh r1, [r4, 0x6] - movs r0, 0xF - ands r0, r1 - orrs r0, r3 - strh r0, [r4, 0x6] - movs r5, 0x84 - lsls r5, 2 - adds r2, r5 - ldr r0, [r2] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0803923C - adds r1, 0xF8 - adds r0, r4, 0 - movs r2, 0 - movs r3, 0 - bl AddSprite -_0803923C: - bl xxx_draw_string_80144C4 - ldr r1, [r6] - adds r1, r5 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08039250: .4byte gUnknown_203B370 - thumb_func_end sub_80391F8 - - thumb_func_start sub_8039254 -sub_8039254: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - adds r6, r0, 0 - ldr r5, _080392EC - ldr r0, [r5] - cmp r0, 0 - bne _0803927C - movs r4, 0x9F - lsls r4, 2 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 -_0803927C: - ldr r0, [r5] - str r6, [r0] - mov r12, r5 - movs r0, 0xA2 - lsls r0, 1 - mov r8, r0 - ldr r4, _080392F0 - movs r3, 0 - movs r2, 0x3 -_0803928E: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - add r1, r8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0803928E - bl sub_8004914 - ldr r6, _080392EC - ldr r0, [r6] - movs r5, 0xA2 - lsls r5, 1 - adds r0, r5 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, [r6] - adds r0, r1, 0x4 - adds r1, r5 - ldr r3, _080392F4 - ldr r2, _080392F8 - str r2, [sp] - movs r4, 0 - str r4, [sp, 0x4] - movs r7, 0x6 - str r7, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0 - bl SetMenuItems - ldr r1, [r6] - ldr r0, [r1] - cmp r0, 0x7 - beq _08039306 - cmp r0, 0x7 - bhi _080392FC - cmp r0, 0x6 - beq _08039338 - b _08039382 - .align 2, 0 -_080392EC: .4byte gUnknown_203B374 -_080392F0: .4byte gUnknown_80E75F8 -_080392F4: .4byte gUnknown_80E7610 -_080392F8: .4byte gUnknown_203B378 -_080392FC: - cmp r0, 0x8 - beq _0803934C - cmp r0, 0x9 - beq _0803936C - b _08039382 -_08039306: - bl sub_8039844 - lsls r0, 24 - cmp r0, 0 - beq _08039324 - ldr r1, [r6] - adds r0, r1, 0x4 - adds r1, r5 - ldr r3, _0803931C - ldr r2, _08039320 - b _08039354 - .align 2, 0 -_0803931C: .4byte gUnknown_80E762C -_08039320: .4byte gUnknown_80E7644 -_08039324: - ldr r1, [r6] - adds r0, r1, 0x4 - adds r1, r5 - ldr r3, _08039330 - ldr r2, _08039334 - b _08039354 - .align 2, 0 -_08039330: .4byte gUnknown_80E762C -_08039334: .4byte gUnknown_80E7684 -_08039338: - adds r0, r1, 0x4 - adds r1, r5 - ldr r3, _08039344 - ldr r2, _08039348 - b _08039354 - .align 2, 0 -_08039344: .4byte gUnknown_80E762C -_08039348: .4byte gUnknown_80E76B8 -_0803934C: - adds r0, r1, 0x4 - adds r1, r5 - ldr r3, _08039364 - ldr r2, _08039368 -_08039354: - str r2, [sp] - str r4, [sp, 0x4] - str r7, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0x1 - bl SetMenuItems - b _08039382 - .align 2, 0 -_08039364: .4byte gUnknown_80E762C -_08039368: .4byte gUnknown_80E76E8 -_0803936C: - adds r0, r1, 0x4 - adds r1, r5 - ldr r3, _080393DC - ldr r2, _080393E0 - str r2, [sp] - str r4, [sp, 0x4] - str r7, [sp, 0x8] - str r4, [sp, 0xC] - movs r2, 0x1 - bl SetMenuItems -_08039382: - ldr r4, _080393E4 - ldr r1, [r4] - adds r0, r1, 0x4 - movs r6, 0xA2 - lsls r6, 1 - adds r1, r6 - ldr r3, _080393E8 - ldr r2, _080393EC - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0x2 - str r2, [sp, 0x8] - movs r2, 0 - str r2, [sp, 0xC] - movs r2, 0x2 - bl SetMenuItems - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0 - movs r2, 0 - bl sub_8035CF4 - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0x1 - movs r2, 0 - bl sub_8035CF4 - ldr r0, [r4] - adds r0, 0x4 - movs r1, 0x2 - movs r2, 0x1 - bl sub_8035CF4 - bl sub_80394A4 - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080393DC: .4byte gUnknown_80E762C -_080393E0: .4byte gUnknown_80E7730 -_080393E4: .4byte gUnknown_203B374 -_080393E8: .4byte gUnknown_80E7784 -_080393EC: .4byte gUnknown_80E779C - thumb_func_end sub_8039254 - - thumb_func_start sub_80393F0 -sub_80393F0: - push {r4,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _08039418 - ldr r0, [r4] - cmp r0, 0 - beq _08039410 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08039410: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08039418: .4byte gUnknown_203B374 - thumb_func_end sub_80393F0 - - thumb_func_start sub_803941C -sub_803941C: - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, _08039458 - movs r0, 0x4 - str r0, [sp] - ldr r4, _0803945C - ldr r0, [r4] - adds r0, 0x54 - bl sub_8012FD8 - ldr r0, [r4] - adds r0, 0xA4 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08039448 - ldr r0, [r4] - adds r0, 0xA4 - mov r1, sp - bl sub_8013114 -_08039448: - ldr r0, [sp] - cmp r0, 0x3 - bhi _08039498 - cmp r0, 0x2 - bcs _08039460 - cmp r0, 0x1 - beq _08039464 - b _08039498 - .align 2, 0 -_08039458: .4byte 0x0000ffdc -_0803945C: .4byte gUnknown_203B374 -_08039460: - movs r5, 0x1 - b _08039498 -_08039464: - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0x7 - beq _08039480 - cmp r0, 0x7 - bhi _08039476 - cmp r0, 0x6 - beq _08039484 - b _08039498 -_08039476: - cmp r0, 0x8 - beq _0803948E - cmp r0, 0x9 - beq _08039492 - b _08039498 -_08039480: - movs r5, 0x2 - b _08039498 -_08039484: - movs r0, 0 - bl sub_8095240 - movs r5, 0x4 - b _08039498 -_0803948E: - movs r5, 0x9 - b _08039498 -_08039492: - bl sub_80122A8 - movs r5, 0x2E -_08039498: - adds r0, r5, 0 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_803941C - - thumb_func_start sub_80394A4 -sub_80394A4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x150 - bl sub_8011FA8 - mov r8, r0 - movs r0, 0 - bl sub_8008C54 - movs r0, 0 - bl sub_80073B8 - ldr r2, _0803952C - movs r4, 0 - str r4, [sp] - movs r0, 0x8 - movs r1, 0 - movs r3, 0 - bl xxx_call_draw_string - ldr r2, _08039530 - str r4, [sp] - movs r0, 0x8 - movs r1, 0xC - movs r3, 0 - bl xxx_call_draw_string - ldr r2, _08039534 - str r4, [sp] - movs r0, 0x8 - movs r1, 0x18 - movs r3, 0 - bl xxx_call_draw_string - ldr r2, _08039538 - str r4, [sp] - movs r0, 0x8 - movs r1, 0x24 - movs r3, 0 - bl xxx_call_draw_string - ldr r2, _0803953C - str r4, [sp] - movs r0, 0x8 - movs r1, 0x30 - movs r3, 0 - bl xxx_call_draw_string - ldr r2, _08039540 - str r4, [sp] - movs r0, 0x8 - movs r1, 0x3C - movs r3, 0 - bl xxx_call_draw_string - movs r0, 0 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _08039544 - add r4, sp, 0x68 - adds r0, r4, 0 - bl sub_80920D8 - adds r2, r4, 0 - b _0803954E - .align 2, 0 -_0803952C: .4byte gUnknown_80E77BC -_08039530: .4byte gUnknown_80E77C4 -_08039534: .4byte gUnknown_80E77CC -_08039538: .4byte gUnknown_80E77D8 -_0803953C: .4byte gUnknown_80E77E4 -_08039540: .4byte gUnknown_80E77F0 -_08039544: - ldr r1, _08039588 - add r0, sp, 0x68 - bl strcpy - add r2, sp, 0x68 -_0803954E: - ldr r5, _0803958C - ldr r0, [r5] - movs r4, 0xD2 - lsls r4, 1 - adds r0, r4 - ldr r1, _08039590 - bl sub_800D158 - ldr r2, [r5] - adds r2, r4 - movs r0, 0 - str r0, [sp] - movs r0, 0x40 - movs r1, 0 - movs r3, 0 - bl xxx_call_draw_string - bl sub_808D33C - cmp r0, 0 - bne _08039598 - add r4, sp, 0x90 - ldr r1, _08039594 - adds r0, r4, 0 - movs r2, 0xA - bl sub_80922B4 - b _080395A6 - .align 2, 0 -_08039588: .4byte gUnknown_80E77F8 -_0803958C: .4byte gUnknown_203B374 -_08039590: .4byte gUnknown_80E7804 -_08039594: .4byte gUnknown_80E7808 -_08039598: - add r4, sp, 0x90 - adds r1, r0, 0 - adds r1, 0x4C - adds r0, r4, 0 - movs r2, 0xA - bl sub_80922B4 -_080395A6: - adds r2, r4, 0 - ldr r5, _080395F0 - ldr r0, [r5] - movs r4, 0xE4 - lsls r4, 1 - adds r0, r4 - ldr r6, _080395F4 - adds r1, r6, 0 - bl sub_800D158 - ldr r2, [r5] - adds r2, r4 - movs r0, 0 - str r0, [sp] - movs r0, 0x40 - movs r1, 0xC - movs r3, 0 - bl xxx_call_draw_string - movs r0, 0x1 - bl sub_8095324 - cmp r0, 0 - bne _080395E0 - movs r0, 0x7 - bl sub_8095324 - cmp r0, 0 - beq _08039606 -_080395E0: - ldr r0, _080395F8 - cmp r8, r0 - bne _080395FC - ldr r4, [r5] - movs r0, 0xF6 - lsls r0, 1 - adds r4, r0 - b _08039676 - .align 2, 0 -_080395F0: .4byte gUnknown_203B374 -_080395F4: .4byte gUnknown_80E7804 -_080395F8: .4byte 0x000f1207 -_080395FC: - ldr r0, [r5] - movs r1, 0xF6 - lsls r1, 1 - adds r0, r1 - b _08039690 -_08039606: - bl sub_8011C1C - cmp r0, 0x1 - beq _08039624 - cmp r0, 0x2 - beq _08039668 - ldr r0, [r5] - movs r2, 0xF6 - lsls r2, 1 - adds r0, r2 - ldr r1, _08039620 - b _08039692 - .align 2, 0 -_08039620: .4byte gUnknown_80E7824 -_08039624: - movs r0, 0 - movs r1, 0x18 - bl sub_8001658 - cmp r0, 0x7 - beq _08039658 - cmp r0, 0xB - beq _08039658 - bl sub_8098FB4 - adds r2, r0, 0 - add r0, sp, 0x4 - adds r1, r6, 0 - bl sub_800D158 - ldr r0, [r5] - movs r3, 0xF6 - lsls r3, 1 - adds r1, r0, r3 - adds r3, 0x24 - adds r2, r0, r3 - add r0, sp, 0x4 - movs r3, 0 - bl xxx_format_string - b _08039696 -_08039658: - ldr r0, _08039664 - ldr r0, [r0] - movs r1, 0xF6 - lsls r1, 1 - adds r0, r1 - b _08039690 - .align 2, 0 -_08039664: .4byte gUnknown_203B374 -_08039668: - ldr r0, _08039684 - cmp r8, r0 - bne _08039688 - ldr r4, [r5] - movs r2, 0xF6 - lsls r2, 1 - adds r4, r2 -_08039676: - bl sub_809769C - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_8090228 - b _08039696 - .align 2, 0 -_08039684: .4byte 0x000f1207 -_08039688: - ldr r0, [r5] - movs r3, 0xF6 - lsls r3, 1 - adds r0, r3 -_08039690: - ldr r1, _0803974C -_08039692: - bl sub_800D158 -_08039696: - ldr r7, _08039750 - ldr r2, [r7] - movs r0, 0xF6 - lsls r0, 1 - adds r2, r0 - movs r6, 0 - str r6, [sp] - movs r0, 0x40 - movs r1, 0x18 - movs r3, 0 - bl xxx_call_draw_string - ldr r0, _08039754 - ldr r0, [r0] - add r1, sp, 0x144 - add r2, sp, 0x148 - add r3, sp, 0x14C - bl sub_8095014 - ldr r0, [r7] - movs r5, 0x84 - lsls r5, 2 - adds r0, r5 - ldr r1, _08039758 - add r2, sp, 0x144 - ldr r2, [r2] - add r3, sp, 0x148 - ldr r3, [r3] - add r4, sp, 0x14C - ldr r4, [r4] - str r4, [sp] - bl sub_800D158 - ldr r2, [r7] - adds r2, r5 - str r6, [sp] - movs r0, 0x40 - movs r1, 0x24 - movs r3, 0 - bl xxx_call_draw_string - bl sub_8097778 - adds r2, r0, 0 - ldr r0, [r7] - movs r4, 0x8D - lsls r4, 2 - adds r0, r4 - ldr r1, _0803975C - bl sub_800D158 - ldr r2, [r7] - adds r2, r4 - str r6, [sp] - movs r0, 0x40 - movs r1, 0x30 - movs r3, 0 - bl xxx_call_draw_string - ldr r0, _08039760 - cmp r8, r0 - bne _0803976C - ldr r0, _08039764 - ldr r6, [r0] - movs r1, 0xC - ldrsh r0, [r6, r1] - cmp r0, 0 - beq _0803976C - add r5, sp, 0x130 - adds r1, r0, 0 - adds r0, r5, 0 - bl sub_808D930 - add r4, sp, 0xE0 - adds r1, r6, 0 - adds r1, 0x50 - adds r0, r4, 0 - movs r2, 0xA - bl sub_80922B4 - ldr r0, [r7] - movs r3, 0x96 - lsls r3, 2 - adds r0, r3 - ldr r1, _08039768 - adds r2, r4, 0 - adds r3, r5, 0 - bl sub_800D158 - b _0803977C - .align 2, 0 -_0803974C: .4byte gUnknown_80E780C -_08039750: .4byte gUnknown_203B374 -_08039754: .4byte gUnknown_203B47C -_08039758: .4byte gUnknown_80E7838 -_0803975C: .4byte gUnknown_80E7848 -_08039760: .4byte 0x000f1207 -_08039764: .4byte gUnknown_203B484 -_08039768: .4byte gUnknown_80E784C -_0803976C: - ldr r0, _080397AC - ldr r0, [r0] - movs r1, 0x96 - lsls r1, 2 - adds r0, r1 - ldr r1, _080397B0 - bl sub_800D158 -_0803977C: - ldr r0, _080397AC - ldr r2, [r0] - movs r3, 0x96 - lsls r3, 2 - adds r2, r3 - movs r0, 0 - str r0, [sp] - movs r0, 0x40 - movs r1, 0x3C - movs r3, 0 - bl xxx_call_draw_string - bl sub_80397B4 - movs r0, 0 - bl sub_80073E0 - add sp, 0x150 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080397AC: .4byte gUnknown_203B374 -_080397B0: .4byte gUnknown_80E7854 - thumb_func_end sub_80394A4 - - thumb_func_start sub_80397B4 -sub_80397B4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r0, _08039834 - ldr r1, _08039838 - bl OpenFileAndGetFileDataPtr - adds r6, r0, 0 - movs r4, 0 -_080397C8: - adds r0, r4, 0 - adds r0, 0xB0 - ldr r1, [r6, 0x4] - lsls r2, r4, 2 - ldr r1, [r1, 0x4] - adds r1, r2 - bl SetBGPaletteBufferColorArray - adds r4, 0x1 - cmp r4, 0x3F - ble _080397C8 - movs r7, 0x8 - movs r0, 0x49 - mov r8, r0 - movs r4, 0 -_080397E6: - ldr r0, _0803983C - lsls r5, r4, 2 - adds r0, r5, r0 - ldr r0, [r0] - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _0803981C - movs r0, 0x10 - str r0, [sp] - ldr r0, [r6, 0x4] - lsls r1, r4, 7 - ldr r0, [r0] - adds r0, r1 - str r0, [sp, 0x4] - ldr r0, _08039840 - adds r0, r5, r0 - ldr r0, [r0] - str r0, [sp, 0x8] - movs r0, 0 - adds r1, r7, 0 - mov r2, r8 - movs r3, 0x10 - bl sub_8007E20 - adds r7, 0x10 -_0803981C: - adds r4, 0x1 - cmp r4, 0xB - ble _080397E6 - adds r0, r6, 0 - bl CloseFile - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08039834: .4byte gUnknown_80E785C -_08039838: .4byte gUnknown_8380000 -_0803983C: .4byte gUnknown_203B3B8 -_08039840: .4byte gUnknown_203B388 - thumb_func_end sub_80397B4 - - thumb_func_start sub_8039844 -sub_8039844: - push {r4,r5,lr} - bl sub_8011FA8 - adds r5, r0, 0 - movs r4, 0 - movs r0, 0x1 - bl sub_8095324 - cmp r0, 0 - bne _0803986A - movs r0, 0x7 - bl sub_8095324 - cmp r0, 0 - bne _0803986A - bl sub_8011C1C - cmp r0, 0x2 - bne _08039872 -_0803986A: - ldr r0, _0803987C - cmp r5, r0 - bne _08039872 - movs r4, 0x1 -_08039872: - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0803987C: .4byte 0x000f1207 - thumb_func_end sub_8039844 - - thumb_func_start sub_8039880 -sub_8039880: - push {r4,lr} - movs r4, 0 - movs r0, 0x1 - bl sub_8095324 - cmp r0, 0 - bne _080398A0 - movs r0, 0x7 - bl sub_8095324 - cmp r0, 0 - bne _080398A0 - bl sub_8011C1C - cmp r0, 0x2 - bne _080398A2 -_080398A0: - movs r4, 0x1 -_080398A2: - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8039880 - - thumb_func_start sub_80398AC -sub_80398AC: - push {r4,r5,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r5, _0803991C - ldr r4, _08039920 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 - movs r1, 0 - movs r2, 0 - adds r4, r5, 0 -_080398D8: - ldr r0, [r5] - adds r0, 0x1 - adds r0, r1 - strb r2, [r0] - adds r1, 0x1 - cmp r1, 0x35 - ble _080398D8 - ldr r1, [r4] - movs r3, 0x92 - lsls r3, 3 - adds r2, r1, r3 - movs r0, 0x3 - str r0, [r2] - ldr r0, _08039924 - adds r2, r1, r0 - movs r0, 0x2 - str r0, [r2] - movs r0, 0x93 - lsls r0, 3 - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] - ldr r0, [r4] - adds r0, r3 - movs r1, 0x5 - str r1, [r0] - movs r0, 0x11 - bl sub_803A1C0 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0803991C: .4byte gUnknown_203B3E8 -_08039920: .4byte 0x0000049c -_08039924: .4byte 0x00000494 - thumb_func_end sub_80398AC - - thumb_func_start sub_8039928 -sub_8039928: - push {lr} - ldr r0, _08039940 - ldr r0, [r0] - ldrb r0, [r0] - subs r0, 0x4 - cmp r0, 0xF - bhi _080399DE - lsls r0, 2 - ldr r1, _08039944 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08039940: .4byte gUnknown_203B3E8 -_08039944: .4byte _08039948 - .align 2, 0 -_08039948: - .4byte _08039988 - .4byte _0803998E - .4byte _0803999E - .4byte _080399AA - .4byte _08039992 - .4byte _080399A4 - .4byte _080399C8 - .4byte _080399DE - .4byte _08039998 - .4byte _080399B0 - .4byte _080399B6 - .4byte _080399BC - .4byte _080399C2 - .4byte _080399CE - .4byte _080399D4 - .4byte _080399DA -_08039988: - bl sub_8039A18 - b _080399DE -_0803998E: - movs r0, 0x3 - b _080399E0 -_08039992: - bl sub_8039AA8 - b _080399DE -_08039998: - bl sub_8039B14 - b _080399DE -_0803999E: - bl sub_8039B20 - b _080399DE -_080399A4: - bl sub_8039B58 - b _080399DE -_080399AA: - bl sub_8039D88 - b _080399DE -_080399B0: - bl sub_8039D28 - b _080399DE -_080399B6: - bl sub_8039D68 - b _080399DE -_080399BC: - bl sub_8039DA4 - b _080399DE -_080399C2: - bl sub_8039DCC - b _080399DE -_080399C8: - bl sub_8039B3C - b _080399DE -_080399CE: - bl sub_8039D0C - b _080399DE -_080399D4: - bl sub_8039C60 - b _080399DE -_080399DA: - bl sub_8039DE8 -_080399DE: - movs r0, 0 -_080399E0: - pop {r1} - bx r1 - thumb_func_end sub_8039928 - - thumb_func_start sub_80399E4 -sub_80399E4: - push {r4,lr} - ldr r4, _08039A14 - ldr r0, [r4] - cmp r0, 0 - beq _08039A0E - bl MemoryFree - movs r0, 0 - str r0, [r4] - bl sub_8030DE4 - bl sub_801B450 - bl sub_803084C - bl sub_801CBB8 - bl sub_80155F0 - bl sub_8031E10 -_08039A0E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08039A14: .4byte gUnknown_203B3E8 - thumb_func_end sub_80399E4 - - thumb_func_start sub_8039A18 -sub_8039A18: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08039AA2 - ldr r0, _08039A48 - ldr r1, [r0] - movs r2, 0x93 - lsls r2, 2 - adds r1, r2 - movs r2, 0xA - str r2, [r1] - ldr r1, [sp] - adds r2, r0, 0 - cmp r1, 0x8 - bhi _08039AA2 - lsls r0, r1, 2 - ldr r1, _08039A4C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08039A48: .4byte gUnknown_203B3E8 -_08039A4C: .4byte _08039A50 - .align 2, 0 -_08039A50: - .4byte _08039A9C - .4byte _08039AA2 - .4byte _08039AA2 - .4byte _08039A74 - .4byte _08039A74 - .4byte _08039A88 - .4byte _08039AA2 - .4byte _08039AA2 - .4byte _08039A9C -_08039A74: - ldr r0, [r2] - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - movs r1, 0x3 - str r1, [r0] - movs r0, 0x8 - bl sub_803A1C0 - b _08039AA2 -_08039A88: - ldr r0, [r2] - movs r2, 0x92 - lsls r2, 3 - adds r0, r2 - movs r1, 0x5 - str r1, [r0] - movs r0, 0x11 - bl sub_803A1C0 - b _08039AA2 -_08039A9C: - movs r0, 0x5 - bl sub_803A1C0 -_08039AA2: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8039A18 - - thumb_func_start sub_8039AA8 -sub_8039AA8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08039B0E - ldr r0, [sp] - cmp r0, 0 - beq _08039AE8 - cmp r0, 0x6 - bne _08039B0E - ldr r0, _08039AD8 - ldr r0, [r0] - ldr r1, _08039ADC - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x1 - bne _08039AE0 - movs r0, 0x2 - bl sub_803A1C0 - b _08039B0E - .align 2, 0 -_08039AD8: .4byte gUnknown_203B3E8 -_08039ADC: .4byte 0x00000494 -_08039AE0: - movs r0, 0xC - bl sub_803A1C0 - b _08039B0E -_08039AE8: - ldr r0, _08039B00 - ldr r0, [r0] - ldr r1, _08039B04 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x1 - bne _08039B08 - movs r0, 0x1 - bl sub_803A1C0 - b _08039B0E - .align 2, 0 -_08039B00: .4byte gUnknown_203B3E8 -_08039B04: .4byte 0x00000494 -_08039B08: - movs r0, 0x4 - bl sub_803A1C0 -_08039B0E: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8039AA8 - - thumb_func_start sub_8039B14 -sub_8039B14: - push {lr} - movs r0, 0x6 - bl sub_803A1C0 - pop {r0} - bx r0 - thumb_func_end sub_8039B14 - - thumb_func_start sub_8039B20 -sub_8039B20: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08039B34 - movs r0, 0x9 - bl sub_803A1C0 -_08039B34: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8039B20 - - thumb_func_start sub_8039B3C -sub_8039B3C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08039B50 - movs r0, 0x4 - bl sub_803A1C0 -_08039B50: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8039B3C - - thumb_func_start sub_8039B58 -sub_8039B58: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08039BA6 - ldr r0, _08039B88 - ldr r1, [r0] - movs r2, 0x94 - lsls r2, 2 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, 0 - bne _08039B9C - subs r2, 0x4 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, 0x9 - beq _08039B8C - cmp r0, 0xA - beq _08039B94 - b _08039BA6 - .align 2, 0 -_08039B88: .4byte gUnknown_203B3E8 -_08039B8C: - movs r0, 0x7 - bl sub_803A1C0 - b _08039BA6 -_08039B94: - movs r0, 0xD - bl sub_803A1C0 - b _08039BA6 -_08039B9C: - bl sub_8039BAC - movs r0, 0xA - bl sub_803A1C0 -_08039BA6: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8039B58 - - thumb_func_start sub_8039BAC -sub_8039BAC: - push {lr} - cmp r0, 0xF - bhi _08039C48 - lsls r0, 2 - ldr r1, _08039BBC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08039BBC: .4byte _08039BC0 - .align 2, 0 -_08039BC0: - .4byte _08039C54 - .4byte _08039C00 - .4byte _08039C10 - .4byte _08039C08 - .4byte _08039C18 - .4byte _08039C20 - .4byte _08039C48 - .4byte _08039C48 - .4byte _08039C48 - .4byte _08039C48 - .4byte _08039C48 - .4byte _08039C48 - .4byte _08039C48 - .4byte _08039C48 - .4byte _08039C28 - .4byte _08039C30 -_08039C00: - ldr r0, _08039C04 - b _08039C32 - .align 2, 0 -_08039C04: .4byte gUnknown_80E7914 -_08039C08: - ldr r0, _08039C0C - b _08039C32 - .align 2, 0 -_08039C0C: .4byte gUnknown_80E7938 -_08039C10: - ldr r0, _08039C14 - b _08039C32 - .align 2, 0 -_08039C14: .4byte gUnknown_80E7994 -_08039C18: - ldr r0, _08039C1C - b _08039C32 - .align 2, 0 -_08039C1C: .4byte gUnknown_80E79E4 -_08039C20: - ldr r0, _08039C24 - b _08039C32 - .align 2, 0 -_08039C24: .4byte gUnknown_80E7914 -_08039C28: - ldr r0, _08039C2C - b _08039C32 - .align 2, 0 -_08039C2C: .4byte gUnknown_80E7914 -_08039C30: - ldr r0, _08039C40 -_08039C32: - ldr r3, _08039C44 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _08039C54 - .align 2, 0 -_08039C40: .4byte gUnknown_80E7A48 -_08039C44: .4byte 0x00000101 -_08039C48: - ldr r0, _08039C58 - ldr r3, _08039C5C - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_08039C54: - pop {r0} - bx r0 - .align 2, 0 -_08039C58: .4byte gUnknown_80E7914 -_08039C5C: .4byte 0x00000101 - thumb_func_end sub_8039BAC - - thumb_func_start sub_8039C60 -sub_8039C60: - push {r4,r5,lr} - bl sub_80154F0 - adds r4, r0, 0 - ldr r5, _08039CBC - ldr r0, [r5] - adds r0, 0x38 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - cmp r4, 0x2 - beq _08039CE6 - cmp r4, 0x3 - bne _08039D04 - bl sub_80155F0 - bl sub_8004914 - ldr r0, [r5] - movs r1, 0xF6 - lsls r1, 1 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, [r5] - adds r0, r1, 0x1 - adds r1, 0x38 - bl sub_803D358 - lsls r0, 24 - cmp r0, 0 - beq _08039CB4 - ldr r0, [r5] - adds r0, 0x38 - bl sub_80959C0 - lsls r0, 24 - cmp r0, 0 - bne _08039CC0 -_08039CB4: - movs r0, 0x13 - bl sub_803A1C0 - b _08039D04 - .align 2, 0 -_08039CBC: .4byte gUnknown_203B3E8 -_08039CC0: - ldr r0, [r5] - movs r2, 0xF0 - lsls r2, 2 - adds r1, r0, r2 - adds r0, 0x38 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r3,r4} - stm r1!, {r3,r4} - ldr r0, [r5] - movs r1, 0x93 - lsls r1, 3 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - movs r0, 0xD - bl sub_803A1C0 - b _08039D04 -_08039CE6: - bl sub_80155F0 - bl sub_8004914 - ldr r0, [r5] - movs r2, 0xF6 - lsls r2, 1 - adds r0, r2 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x5 - bl sub_803A1C0 -_08039D04: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8039C60 - - thumb_func_start sub_8039D0C -sub_8039D0C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08039D20 - movs r0, 0x12 - bl sub_803A1C0 -_08039D20: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8039D0C - - thumb_func_start sub_8039D28 -sub_8039D28: - push {r4,r5,lr} - bl sub_802D0E0 - cmp r0, 0x3 - bne _08039D62 - bl sub_802D178 - ldr r5, _08039D58 - ldr r1, [r5] - movs r4, 0x93 - lsls r4, 3 - adds r1, r4 - strb r0, [r1] - bl sub_802D184 - ldr r0, [r5] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _08039D5C - movs r0, 0xE - bl sub_803A1C0 - b _08039D62 - .align 2, 0 -_08039D58: .4byte gUnknown_203B3E8 -_08039D5C: - movs r0, 0x10 - bl sub_803A1C0 -_08039D62: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8039D28 - - thumb_func_start sub_8039D68 -sub_8039D68: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08039D82 - movs r0, 0xF - bl sub_803A1C0 - movs r0, 0 - bl sub_8012574 -_08039D82: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8039D68 - - thumb_func_start sub_8039D88 -sub_8039D88: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08039D9C - movs r0, 0x8 - bl sub_803A1C0 -_08039D9C: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8039D88 - - thumb_func_start sub_8039DA4 -sub_8039DA4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08039DC6 - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - bne _08039DC6 - bl sub_8012750 - movs r0, 0x10 - bl sub_803A1C0 -_08039DC6: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8039DA4 - - thumb_func_start sub_8039DCC -sub_8039DCC: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08039DE0 - movs r0, 0x5 - bl sub_803A1C0 -_08039DE0: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8039DCC - - thumb_func_start sub_8039DE8 -sub_8039DE8: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08039E0E - ldr r0, [sp] - cmp r0, 0 - beq _08039E08 - cmp r0, 0x6 - bne _08039E0E - movs r0, 0x11 - bl sub_803A1C0 - b _08039E0E -_08039E08: - movs r0, 0x5 - bl sub_803A1C0 -_08039E0E: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8039DE8 - - thumb_func_start nullsub_54 -nullsub_54: - bx lr - thumb_func_end nullsub_54 - - thumb_func_start sub_8039E18 -sub_8039E18: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - ldr r1, _08039E38 - ldr r0, [r1] - ldrb r0, [r0] - adds r6, r1, 0 - cmp r0, 0x13 - bls _08039E2E - b _0803A1AA -_08039E2E: - lsls r0, 2 - ldr r1, _08039E3C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08039E38: .4byte gUnknown_203B3E8 -_08039E3C: .4byte _08039E40 - .align 2, 0 -_08039E40: - .4byte _08039E90 - .4byte _08039EB8 - .4byte _0803A1AA - .4byte _08039EC8 - .4byte _08039EDC - .4byte _0803A1AA - .4byte _08039FF4 - .4byte _08039FA4 - .4byte _08039FCC - .4byte _0803A00C - .4byte _0803A1AA - .4byte _0803A1AA - .4byte _0803A1AA - .4byte _08039F04 - .4byte _08039F68 - .4byte _0803A1AA - .4byte _08039FAC - .4byte _0803A152 - .4byte _0803A168 - .4byte _0803A18E -_08039E90: - ldr r0, _08039EB0 - ldr r3, _08039EB4 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x1 - bl sub_8014248 - b _0803A1AA - .align 2, 0 -_08039EB0: .4byte gUnknown_80E7AC4 -_08039EB4: .4byte gUnknown_80E786C -_08039EB8: - ldr r0, _08039EC0 - ldr r3, _08039EC4 - b _08039EE0 - .align 2, 0 -_08039EC0: .4byte gUnknown_80E7AE0 -_08039EC4: .4byte gUnknown_80E7894 -_08039EC8: - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_802EF48 - b _0803A1AA -_08039EDC: - ldr r0, _08039EFC - ldr r3, _08039F00 -_08039EE0: - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x3 - bl sub_8014248 - b _0803A1AA - .align 2, 0 -_08039EFC: .4byte gUnknown_80E7B14 -_08039F00: .4byte gUnknown_80E78D8 -_08039F04: - ldr r0, [r6] - ldr r2, _08039F3C - adds r1, r0, r2 - movs r3, 0xF0 - lsls r3, 2 - adds r0, r3 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r4} - stm r1!, {r2,r4} - ldr r2, [r6] - ldr r3, _08039F40 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, 0x4 - bne _08039F44 - movs r4, 0x91 - lsls r4, 3 - adds r1, r2, r4 - subs r3, 0xA2 - adds r0, r2, r3 - str r0, [r1] - adds r4, 0x4 - adds r1, r2, r4 - adds r3, 0x28 - adds r0, r2, r3 - str r0, [r1] - b _08039F54 - .align 2, 0 -_08039F3C: .4byte 0x00000474 -_08039F40: .4byte 0x00000476 -_08039F44: - movs r4, 0x91 - lsls r4, 3 - adds r0, r2, r4 - movs r1, 0 - str r1, [r0] - ldr r3, _08039F60 - adds r0, r2, r3 - str r1, [r0] -_08039F54: - ldr r0, [r6] - ldr r4, _08039F64 - adds r0, r4 - bl sub_802D098 - b _0803A1AA - .align 2, 0 -_08039F60: .4byte 0x0000048c -_08039F64: .4byte 0x00000474 -_08039F68: - ldr r1, [r6] - movs r2, 0x93 - lsls r2, 3 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08039F9C - movs r3, 0x92 - lsls r3, 3 - adds r0, r1, r3 - ldr r0, [r0] - cmp r0, 0x4 - bne _08039F84 - b _0803A1AA -_08039F84: - cmp r0, 0x4 - bgt _08039F8E - cmp r0, 0x3 - beq _08039F94 - b _0803A1AA -_08039F8E: - cmp r0, 0x5 - beq _08039F94 - b _0803A1AA -_08039F94: - ldr r0, _08039F98 - b _0803A154 - .align 2, 0 -_08039F98: .4byte gUnknown_80E7B48 -_08039F9C: - ldr r0, _08039FA0 - b _0803A154 - .align 2, 0 -_08039FA0: .4byte gUnknown_80E7B48 -_08039FA4: - ldr r0, _08039FA8 - b _0803A154 - .align 2, 0 -_08039FA8: .4byte gUnknown_80E7B68 -_08039FAC: - ldr r0, [r6] - movs r4, 0x93 - lsls r4, 3 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _08039FC4 - ldr r0, _08039FC0 - b _0803A154 - .align 2, 0 -_08039FC0: .4byte gUnknown_80E7B88 -_08039FC4: - ldr r0, _08039FC8 - b _0803A154 - .align 2, 0 -_08039FC8: .4byte gUnknown_80E7BC8 -_08039FCC: - ldr r0, _08039FEC - ldr r3, _08039FF0 - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x6 - bl sub_8014248 - b _0803A1AA - .align 2, 0 -_08039FEC: .4byte gUnknown_80E7BEC -_08039FF0: .4byte gUnknown_80E78F8 -_08039FF4: - movs r0, 0 - bl nullsub_23 - ldr r0, _0803A008 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_80141B4 - b _0803A1AA - .align 2, 0 -_0803A008: .4byte gUnknown_80E7C48 -_0803A00C: - ldr r0, [r6] - movs r1, 0x94 - lsls r1, 2 - mov r8, r1 - add r0, r8 - movs r1, 0 - str r1, [r0] - bl sub_8011830 - ldr r0, [r6] - movs r7, 0x93 - lsls r7, 2 - adds r0, r7 - ldr r0, [r0] - bl sub_8037B28 - ldr r2, [r6] - mov r3, r8 - adds r1, r2, r3 - str r0, [r1] - cmp r0, 0 - beq _0803A03A - b _0803A14C -_0803A03A: - adds r4, r7, 0 - adds r0, r2, r4 - ldr r0, [r0] - cmp r0, 0x9 - beq _0803A04A - cmp r0, 0xA - beq _0803A0AA - b _0803A0DE -_0803A04A: - movs r5, 0x95 - lsls r5, 2 - adds r0, r2, r5 - movs r1, 0 - movs r2, 0xB4 - bl MemoryFill8 - ldr r0, [r6] - movs r1, 0xEF - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - bl sub_803B344 - adds r4, r0, 0 - ldr r1, [r4, 0x14] - cmp r1, 0 - beq _0803A08C - ldr r0, [r6] - movs r2, 0x9A - lsls r2, 2 - adds r0, r2 - movs r2, 0x28 - bl MemoryCopy8 - ldr r0, [r6] - movs r3, 0xA4 - lsls r3, 2 - adds r0, r3 - ldr r1, [r4, 0x18] - movs r2, 0x78 - bl MemoryCopy8 -_0803A08C: - ldr r1, [r6] - adds r1, r5 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r4} - stm r1!, {r2,r4} - ldr r2, [r6] - adds r0, r2, r7 - ldr r0, [r0] - adds r1, r2, r5 - movs r3, 0xC2 - lsls r3, 2 - adds r2, r3 - b _0803A0D4 -_0803A0AA: - movs r4, 0x95 - lsls r4, 2 - adds r0, r2, r4 - movs r1, 0 - movs r2, 0xB4 - bl MemoryFill8 - ldr r0, [r6] - movs r5, 0xC2 - lsls r5, 2 - adds r0, r5 - movs r1, 0 - movs r2, 0xB4 - bl MemoryFill8 - ldr r2, [r6] - adds r0, r2, r7 - ldr r0, [r0] - adds r4, r2, r4 - adds r2, r5 - adds r1, r4, 0 -_0803A0D4: - bl sub_8037D64 - ldr r1, [r6] - add r1, r8 - str r0, [r1] -_0803A0DE: - ldr r4, _0803A134 - ldr r2, [r4] - movs r5, 0x94 - lsls r5, 2 - adds r0, r2, r5 - ldr r0, [r0] - cmp r0, 0 - bne _0803A14C - movs r1, 0x93 - lsls r1, 2 - adds r0, r2, r1 - ldr r0, [r0] - cmp r0, 0xA - bhi _0803A14C - cmp r0, 0x9 - bcc _0803A14C - movs r3, 0x95 - lsls r3, 2 - adds r1, r2, r3 - adds r3, 0xB4 - adds r2, r3 - bl sub_80381F4 - ldr r1, [r4] - adds r1, r5 - str r0, [r1] - bl sub_800D588 - lsls r0, 24 - cmp r0, 0 - beq _0803A138 - ldr r1, [r4] - movs r4, 0xF0 - lsls r4, 2 - adds r0, r1, r4 - movs r2, 0xC2 - lsls r2, 2 - adds r1, r2 - movs r2, 0xB4 - bl memcpy - b _0803A14C - .align 2, 0 -_0803A134: .4byte gUnknown_203B3E8 -_0803A138: - ldr r1, [r4] - movs r3, 0xF0 - lsls r3, 2 - adds r0, r1, r3 - movs r4, 0x95 - lsls r4, 2 - adds r1, r4 - movs r2, 0xB4 - bl memcpy -_0803A14C: - bl sub_8011854 - b _0803A1AA -_0803A152: - ldr r0, _0803A160 -_0803A154: - ldr r3, _0803A164 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _0803A1AA - .align 2, 0 -_0803A160: .4byte gUnknown_80E7C98 -_0803A164: .4byte 0x00000101 -_0803A168: - ldr r0, [r6] - movs r1, 0xF6 - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r1, [r6] - adds r1, 0x1 - movs r0, 0x5 - bl sub_80151C0 - b _0803A1AA -_0803A18E: - ldr r0, _0803A1B8 - ldr r3, _0803A1BC - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x6 - bl sub_8014248 -_0803A1AA: - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803A1B8: .4byte gUnknown_80E7CC4 -_0803A1BC: .4byte gUnknown_80E78F8 - thumb_func_end sub_8039E18 - - thumb_func_start sub_803A1C0 -sub_803A1C0: - push {lr} - ldr r1, _0803A1D4 - ldr r1, [r1] - strb r0, [r1] - bl nullsub_54 - bl sub_8039E18 - pop {r0} - bx r0 - .align 2, 0 -_0803A1D4: .4byte gUnknown_203B3E8 - thumb_func_end sub_803A1C0 - - thumb_func_start sub_803A1D8 -sub_803A1D8: - movs r0, 0x1 - bx lr - thumb_func_end sub_803A1D8 - - thumb_func_start sub_803A1DC -sub_803A1DC: - movs r0, 0 - bx lr - thumb_func_end sub_803A1DC - - thumb_func_start nullsub_55 -nullsub_55: - bx lr - thumb_func_end nullsub_55 - - thumb_func_start sub_803A1E4 -sub_803A1E4: - movs r0, 0x1 - bx lr - thumb_func_end sub_803A1E4 - - thumb_func_start sub_803A1E8 -sub_803A1E8: - movs r0, 0x2 - bx lr - thumb_func_end sub_803A1E8 - - thumb_func_start sub_803A1EC -sub_803A1EC: - push {lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r0} - bx r0 - thumb_func_end sub_803A1EC - - thumb_func_start sub_803A200 -sub_803A200: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r5, _0803A270 - ldr r0, [r5] - cmp r0, 0 - bne _0803A224 - movs r4, 0xD2 - lsls r4, 1 - adds r0, r4, 0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl MemoryFill8 -_0803A224: - mov r12, r5 - movs r0, 0xA0 - lsls r0, 1 - mov r8, r0 - ldr r4, _0803A274 - movs r3, 0 - movs r2, 0x3 -_0803A232: - mov r5, r12 - ldr r1, [r5] - adds r1, r3 - add r1, r8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0803A232 - bl sub_8004914 - ldr r0, _0803A270 - ldr r0, [r0] - movs r6, 0xA0 - lsls r6, 1 - adds r0, r6 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl SetDebugMenuItems - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803A270: .4byte gUnknown_203B3EC -_0803A274: .4byte gUnknown_80E7D40 - thumb_func_end sub_803A200 - - thumb_func_start sub_803A278 -sub_803A278: - push {r4,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _0803A2A0 - ldr r0, [r4] - cmp r0, 0 - beq _0803A298 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0803A298: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803A2A0: .4byte gUnknown_203B3EC - thumb_func_end sub_803A278 - - thumb_func_start sub_803A2A4 -sub_803A2A4: - push {r4,r5,lr} - sub sp, 0x4 - ldr r4, _0803A2D4 - movs r0, 0xB - str r0, [sp] - ldr r5, _0803A2D8 - ldr r0, [r5] - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0803A2C4 - ldr r0, [r5] - mov r1, sp - bl sub_8013114 -_0803A2C4: - ldr r0, [sp] - cmp r0, 0xB - bhi _0803A34E - lsls r0, 2 - ldr r1, _0803A2DC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803A2D4: .4byte 0x0000ffdc -_0803A2D8: .4byte gUnknown_203B3EC -_0803A2DC: .4byte _0803A2E0 - .align 2, 0 -_0803A2E0: - .4byte _0803A310 - .4byte _0803A314 - .4byte _0803A318 - .4byte _0803A31C - .4byte _0803A320 - .4byte _0803A324 - .4byte _0803A328 - .4byte _0803A34E - .4byte _0803A34E - .4byte _0803A330 - .4byte _0803A344 - .4byte _0803A34C -_0803A310: - movs r4, 0x2F - b _0803A34E -_0803A314: - movs r4, 0x30 - b _0803A34E -_0803A318: - movs r4, 0x31 - b _0803A34E -_0803A31C: - movs r4, 0x32 - b _0803A34E -_0803A320: - movs r4, 0x33 - b _0803A34E -_0803A324: - movs r4, 0x34 - b _0803A34E -_0803A328: - bl sub_803A3BC - movs r4, 0x1 - b _0803A34E -_0803A330: - movs r4, 0 -_0803A332: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_80976F8 - adds r4, 0x1 - cmp r4, 0x1F - ble _0803A332 - movs r4, 0x1 - b _0803A34E -_0803A344: - bl sub_803A3A0 - movs r4, 0x1 - b _0803A34E -_0803A34C: - ldr r4, _0803A358 -_0803A34E: - adds r0, r4, 0 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0803A358: .4byte 0x0000ffdc - thumb_func_end sub_803A2A4 - - thumb_func_start SetDebugMenuItems -SetDebugMenuItems: - push {r4,lr} - sub sp, 0x10 - ldr r4, _0803A394 - ldr r0, [r4] - movs r2, 0xA0 - lsls r2, 1 - adds r1, r0, r2 - ldr r3, _0803A398 - ldr r2, _0803A39C - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0xD - str r2, [sp, 0x8] - movs r2, 0 - str r2, [sp, 0xC] - bl SetMenuItems - ldr r0, [r4] - movs r1, 0 - movs r2, 0x1 - bl sub_8035CF4 - add sp, 0x10 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803A394: .4byte gUnknown_203B3EC -_0803A398: .4byte gUnknown_80E7D58 -_0803A39C: .4byte gUnknown_80E7D70 - thumb_func_end SetDebugMenuItems - - thumb_func_start sub_803A3A0 -sub_803A3A0: - push {lr} - ldr r0, _0803A3B8 - ldr r0, [r0] - movs r1, 0xA0 - lsls r1, 1 - adds r0, r1 - movs r1, 0 - bl sub_8035CC0 - pop {r0} - bx r0 - .align 2, 0 -_0803A3B8: .4byte gUnknown_203B3EC - thumb_func_end sub_803A3A0 - - thumb_func_start sub_803A3BC -sub_803A3BC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x84 - movs r5, 0x1 - add r4, sp, 0x60 - add r6, sp, 0x68 - add r0, sp, 0x7C - mov r8, r0 - add r0, sp, 0x80 - mov r10, r0 -_0803A3D6: - lsls r0, r5, 24 - lsrs r0, 24 - bl sub_80925EC - adds r5, 0x1 - cmp r5, 0x39 - ble _0803A3D6 - movs r5, 0 - adds r7, r4, 0 -_0803A3E8: - movs r0, 0 - mov r9, r0 - ldr r0, _0803A454 - str r0, [sp, 0x7C] - adds r5, 0x1 - lsls r4, r5, 16 - asrs r4, 16 - adds r0, r7, 0 - movs r1, 0 - movs r2, 0x8 - bl memset - movs r0, 0x27 - strh r0, [r7] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_808D8BC - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_80922F4 - movs r0, 0x40 - strb r0, [r6] - mov r0, r8 - str r0, [sp] - str r7, [sp, 0x4] - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r6, 0 - movs r3, 0x43 - bl sub_808CFD0 - add r0, sp, 0x8 - bl sub_808D1DC - ldr r0, _0803A458 - cmp r5, r0 - ble _0803A3E8 - mov r0, r9 - str r0, [sp, 0x80] - mov r0, r10 - movs r1, 0x1 - bl sub_801203C - add sp, 0x84 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803A454: .4byte 0x00001006 -_0803A458: .4byte 0x0000012b - thumb_func_end sub_803A3BC - - thumb_func_start sub_803A45C -sub_803A45C: - push {r4,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _0803A488 - movs r0, 0x9C - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r0, 0 - bl sub_803A504 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0803A488: .4byte gUnknown_203B3F0 - thumb_func_end sub_803A45C - - thumb_func_start sub_803A48C -sub_803A48C: - push {lr} - ldr r0, _0803A4A4 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x5 - bhi _0803A4E0 - lsls r0, 2 - ldr r1, _0803A4A8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803A4A4: .4byte gUnknown_203B3F0 -_0803A4A8: .4byte _0803A4AC - .align 2, 0 -_0803A4AC: - .4byte _0803A4C4 - .4byte _0803A4C4 - .4byte _0803A4CA - .4byte _0803A4D0 - .4byte _0803A4D6 - .4byte _0803A4DC -_0803A4C4: - bl sub_803A740 - b _0803A4E0 -_0803A4CA: - bl sub_803A7B0 - b _0803A4E0 -_0803A4D0: - bl sub_803A810 - b _0803A4E0 -_0803A4D6: - bl sub_803A86C - b _0803A4E0 -_0803A4DC: - movs r0, 0x3 - b _0803A4E2 -_0803A4E0: - movs r0, 0 -_0803A4E2: - pop {r1} - bx r1 - thumb_func_end sub_803A48C - - thumb_func_start sub_803A4E8 -sub_803A4E8: - push {r4,lr} - ldr r4, _0803A500 - ldr r0, [r4] - cmp r0, 0 - beq _0803A4FA - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0803A4FA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803A500: .4byte gUnknown_203B3F0 - thumb_func_end sub_803A4E8 - - thumb_func_start sub_803A504 -sub_803A504: - push {lr} - ldr r1, _0803A518 - ldr r1, [r1] - str r0, [r1] - bl sub_803A51C - bl sub_803A5A0 - pop {r0} - bx r0 - .align 2, 0 -_0803A518: .4byte gUnknown_203B3F0 - thumb_func_end sub_803A504 - - thumb_func_start sub_803A51C -sub_803A51C: - push {r4-r7,lr} - ldr r4, _0803A53C - ldr r0, [r4] - adds r0, 0xD8 - bl sub_8006518 - ldr r1, [r4] - ldr r0, [r1] - cmp r0, 0x2 - beq _0803A544 - cmp r0, 0x3 - bne _0803A55C - adds r1, 0xF0 - ldr r0, _0803A540 - b _0803A54C - .align 2, 0 -_0803A53C: .4byte gUnknown_203B3F0 -_0803A540: .4byte gUnknown_80E7E64 -_0803A544: - movs r0, 0x84 - lsls r0, 1 - adds r1, r0 - ldr r0, _0803A558 -_0803A54C: - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - b _0803A57E - .align 2, 0 -_0803A558: .4byte gUnknown_80E7E4C -_0803A55C: - mov r12, r4 - ldr r4, _0803A598 - movs r3, 0 - movs r2, 0x3 -_0803A564: - mov r0, r12 - ldr r1, [r0] - adds r1, r3 - adds r1, 0xD8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0803A564 -_0803A57E: - bl sub_8004914 - ldr r0, _0803A59C - ldr r0, [r0] - adds r0, 0xD8 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803A598: .4byte gUnknown_80E7E34 -_0803A59C: .4byte gUnknown_203B3F0 - thumb_func_end sub_803A51C - - thumb_func_start sub_803A5A0 -sub_803A5A0: - push {lr} - sub sp, 0xC - ldr r1, _0803A5BC - ldr r0, [r1] - ldr r0, [r0] - adds r2, r1, 0 - cmp r0, 0x5 - bhi _0803A68A - lsls r0, 2 - ldr r1, _0803A5C0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803A5BC: .4byte gUnknown_203B3F0 -_0803A5C0: .4byte _0803A5C4 - .align 2, 0 -_0803A5C4: - .4byte _0803A5DC - .4byte _0803A5EA - .4byte _0803A5F2 - .4byte _0803A61C - .4byte _0803A678 - .4byte _0803A68A -_0803A5DC: - movs r0, 0x2 - movs r1, 0x3 - movs r2, 0 - movs r3, 0xA - bl sub_801C8C4 - b _0803A68A -_0803A5EA: - movs r0, 0x1 - bl sub_801CB5C - b _0803A68A -_0803A5F2: - bl sub_801CCD8 - bl sub_803A6F0 - ldr r0, _0803A618 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x4C - adds r1, r2, 0 - adds r1, 0xC - ldr r2, [r2, 0x8] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _0803A68A - .align 2, 0 -_0803A618: .4byte gUnknown_203B3F0 -_0803A61C: - ldr r3, [r2] - adds r1, r3, 0 - adds r1, 0xAC - movs r0, 0x3 - str r0, [r1] - subs r1, 0x8 - movs r0, 0 - str r0, [r1] - adds r1, 0x4 - ldr r0, _0803A670 - str r0, [r1] - adds r2, r3, 0 - adds r2, 0xA0 - ldr r0, _0803A674 - ldr r1, [r0] - ldrb r0, [r3, 0x4] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r0, [r1] - str r0, [r2] - adds r1, r3, 0 - adds r1, 0xB0 - movs r0, 0x1 - str r0, [r1] - adds r1, 0x4 - adds r0, r3, 0 - adds r0, 0xF0 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x2C - str r0, [r1] - adds r1, 0x4 - movs r0, 0x12 - str r0, [r1] - adds r0, r3, 0 - adds r0, 0x9C - bl sub_8013AA0 - bl sub_803A690 - b _0803A68A - .align 2, 0 -_0803A670: .4byte 0x000003e7 -_0803A674: .4byte gUnknown_203B460 -_0803A678: - ldr r0, [r2] - ldrb r1, [r0, 0x4] - add r0, sp, 0x8 - movs r2, 0 - bl sub_8090A8C - add r0, sp, 0x8 - bl sub_801B3C0 -_0803A68A: - add sp, 0xC - pop {r0} - bx r0 - thumb_func_end sub_803A5A0 - - thumb_func_start sub_803A690 -sub_803A690: - push {r4,lr} - sub sp, 0x4 - ldr r4, _0803A6E8 - ldr r0, [r4] - adds r0, 0xB0 - ldr r0, [r0] - bl sub_8008C54 - ldr r0, [r4] - adds r0, 0xB0 - ldr r0, [r0] - bl sub_80073B8 - ldr r2, _0803A6EC - ldr r0, [r4] - adds r0, 0xB0 - ldr r3, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - movs r1, 0 - bl xxx_call_draw_string - ldr r0, [r4] - adds r0, 0x9C - bl sub_8013C68 - ldr r0, [r4] - adds r0, 0xB0 - ldr r0, [r0] - bl sub_80073E0 - bl sub_801CCD8 - ldr r0, [r4] - adds r0, 0x4C - movs r1, 0 - bl sub_8012EA4 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803A6E8: .4byte gUnknown_203B3F0 -_0803A6EC: .4byte gUnknown_80E7E7C - thumb_func_end sub_803A690 - - thumb_func_start sub_803A6F0 -sub_803A6F0: - push {r4,lr} - ldr r4, _0803A734 - ldr r1, [r4] - ldr r0, _0803A738 - str r0, [r1, 0xC] - movs r0, 0x2 - str r0, [r1, 0x10] - str r0, [r1, 0x8] - ldrb r0, [r1, 0x4] - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - bne _0803A718 - ldr r0, [r4] - movs r1, 0x1 - negs r1, r1 - str r1, [r0, 0x10] - movs r1, 0x3 - str r1, [r0, 0x8] -_0803A718: - ldr r1, [r4] - movs r2, 0x1 - ldr r0, _0803A73C - ldr r0, [r0] - str r0, [r1, 0x14] - movs r0, 0x3 - str r0, [r1, 0x18] - movs r0, 0 - str r0, [r1, 0x1C] - str r2, [r1, 0x20] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803A734: .4byte gUnknown_203B3F0 -_0803A738: .4byte gUnknown_80E7E7C -_0803A73C: .4byte gUnknown_80D4970 - thumb_func_end sub_803A6F0 - - thumb_func_start sub_803A740 -sub_803A740: - push {lr} - movs r0, 0x1 - bl sub_801CA08 - cmp r0, 0x4 - bhi _0803A7AA - lsls r0, 2 - ldr r1, _0803A758 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803A758: .4byte _0803A75C - .align 2, 0 -_0803A75C: - .4byte _0803A7AA - .4byte _0803A7AA - .4byte _0803A7A0 - .4byte _0803A770 - .4byte _0803A788 -_0803A770: - bl sub_801CB24 - ldr r1, _0803A784 - ldr r1, [r1] - strb r0, [r1, 0x4] - movs r0, 0x2 - bl sub_803A504 - b _0803A7AA - .align 2, 0 -_0803A784: .4byte gUnknown_203B3F0 -_0803A788: - bl sub_801CB24 - ldr r1, _0803A79C - ldr r1, [r1] - strb r0, [r1, 0x4] - movs r0, 0x4 - bl sub_803A504 - b _0803A7AA - .align 2, 0 -_0803A79C: .4byte gUnknown_203B3F0 -_0803A7A0: - bl sub_801CBB8 - movs r0, 0x5 - bl sub_803A504 -_0803A7AA: - pop {r0} - bx r0 - thumb_func_end sub_803A740 - - thumb_func_start sub_803A7B0 -sub_803A7B0: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801CA08 - ldr r4, _0803A7E8 - ldr r0, [r4] - adds r0, 0x4C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0803A7D6 - ldr r0, [r4] - adds r0, 0x4C - mov r1, sp - bl sub_8013114 -_0803A7D6: - ldr r0, [sp] - cmp r0, 0x2 - beq _0803A7F2 - cmp r0, 0x2 - bgt _0803A7EC - cmp r0, 0x1 - beq _0803A802 - b _0803A808 - .align 2, 0 -_0803A7E8: .4byte gUnknown_203B3F0 -_0803A7EC: - cmp r0, 0x3 - beq _0803A7FA - b _0803A808 -_0803A7F2: - movs r0, 0x3 - bl sub_803A504 - b _0803A808 -_0803A7FA: - movs r0, 0x4 - bl sub_803A504 - b _0803A808 -_0803A802: - movs r0, 0x1 - bl sub_803A504 -_0803A808: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_803A7B0 - - thumb_func_start sub_803A810 -sub_803A810: - push {r4,lr} - movs r0, 0 - bl sub_801CA08 - ldr r4, _0803A838 - ldr r0, [r4] - adds r0, 0x4C - bl sub_8012FD8 - ldr r0, [r4] - adds r0, 0x9C - bl sub_8013BBC - cmp r0, 0x2 - beq _0803A854 - cmp r0, 0x2 - bhi _0803A83C - cmp r0, 0x1 - beq _0803A860 - b _0803A864 - .align 2, 0 -_0803A838: .4byte gUnknown_203B3F0 -_0803A83C: - cmp r0, 0x3 - bne _0803A864 - ldr r0, _0803A85C - ldr r2, [r0] - ldr r1, [r4] - ldrb r0, [r1, 0x4] - lsls r0, 1 - adds r2, 0x50 - adds r2, r0 - adds r1, 0x9C - ldr r0, [r1] - strh r0, [r2] -_0803A854: - movs r0, 0x1 - bl sub_803A504 - b _0803A864 - .align 2, 0 -_0803A85C: .4byte gUnknown_203B460 -_0803A860: - bl sub_803A690 -_0803A864: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_803A810 - - thumb_func_start sub_803A86C -sub_803A86C: - push {lr} - bl sub_801B410 - cmp r0, 0x1 - bls _0803A884 - cmp r0, 0x3 - bhi _0803A884 - bl sub_801B450 - movs r0, 0x1 - bl sub_803A504 -_0803A884: - pop {r0} - bx r0 - thumb_func_end sub_803A86C - - thumb_func_start sub_803A888 -sub_803A888: - push {r4,lr} - bl sub_8004914 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, _0803A8B4 - movs r0, 0xFC - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r0, 0 - bl sub_803A924 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0803A8B4: .4byte gUnknown_203B3F4 - thumb_func_end sub_803A888 - - thumb_func_start sub_803A8B8 -sub_803A8B8: - push {lr} - ldr r0, _0803A8D0 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x4 - bhi _0803A902 - lsls r0, 2 - ldr r1, _0803A8D4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803A8D0: .4byte gUnknown_203B3F4 -_0803A8D4: .4byte _0803A8D8 - .align 2, 0 -_0803A8D8: - .4byte _0803A8EC - .4byte _0803A8EC - .4byte _0803A8F2 - .4byte _0803A8F8 - .4byte _0803A8FE -_0803A8EC: - bl sub_803AAC4 - b _0803A902 -_0803A8F2: - bl sub_803AB34 - b _0803A902 -_0803A8F8: - bl sub_803ABAC - b _0803A902 -_0803A8FE: - movs r0, 0x3 - b _0803A904 -_0803A902: - movs r0, 0 -_0803A904: - pop {r1} - bx r1 - thumb_func_end sub_803A8B8 - - thumb_func_start sub_803A908 -sub_803A908: - push {r4,lr} - ldr r4, _0803A920 - ldr r0, [r4] - cmp r0, 0 - beq _0803A91A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0803A91A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803A920: .4byte gUnknown_203B3F4 - thumb_func_end sub_803A908 - - thumb_func_start sub_803A924 -sub_803A924: - push {lr} - ldr r1, _0803A938 - ldr r1, [r1] - str r0, [r1] - bl sub_803A93C - bl sub_803A9AC - pop {r0} - bx r0 - .align 2, 0 -_0803A938: .4byte gUnknown_203B3F4 - thumb_func_end sub_803A924 - - thumb_func_start sub_803A93C -sub_803A93C: - push {r4-r7,lr} - ldr r4, _0803A960 - ldr r0, [r4] - adds r0, 0x9C - bl sub_8006518 - ldr r1, [r4] - ldr r0, [r1] - cmp r0, 0x2 - bne _0803A968 - adds r1, 0xCC - ldr r0, _0803A964 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - b _0803A98A - .align 2, 0 -_0803A960: .4byte gUnknown_203B3F4 -_0803A964: .4byte gUnknown_80E7EA4 -_0803A968: - mov r12, r4 - ldr r4, _0803A9A4 - movs r3, 0 - movs r2, 0x3 -_0803A970: - mov r0, r12 - ldr r1, [r0] - adds r1, r3 - adds r1, 0x9C - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r3, 0x18 - subs r2, 0x1 - cmp r2, 0 - bge _0803A970 -_0803A98A: - bl sub_8004914 - ldr r0, _0803A9A8 - ldr r0, [r0] - adds r0, 0x9C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803A9A4: .4byte gUnknown_80E7E8C -_0803A9A8: .4byte gUnknown_203B3F4 - thumb_func_end sub_803A93C - - thumb_func_start sub_803A9AC -sub_803A9AC: - push {lr} - sub sp, 0x8 - ldr r1, _0803A9C8 - ldr r0, [r1] - ldr r0, [r0] - adds r2, r1, 0 - cmp r0, 0x4 - bhi _0803AA2C - lsls r0, 2 - ldr r1, _0803A9CC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803A9C8: .4byte gUnknown_203B3F4 -_0803A9CC: .4byte _0803A9D0 - .align 2, 0 -_0803A9D0: - .4byte _0803A9E4 - .4byte _0803A9EE - .4byte _0803A9F6 - .4byte _0803AA20 - .4byte _0803AA2C -_0803A9E4: - movs r0, 0 - movs r1, 0x3 - bl sub_80211AC - b _0803AA2C -_0803A9EE: - movs r0, 0x1 - bl sub_8021354 - b _0803AA2C -_0803A9F6: - bl sub_8021494 - bl sub_803AA34 - ldr r0, _0803AA1C - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x4C - adds r1, r2, 0 - adds r1, 0xC - ldr r2, [r2, 0x8] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_8012D60 - b _0803AA2C - .align 2, 0 -_0803AA1C: .4byte gUnknown_203B3F4 -_0803AA20: - ldr r0, [r2] - ldrb r0, [r0, 0x4] - movs r1, 0x1 - movs r2, 0 - bl sub_8021774 -_0803AA2C: - add sp, 0x8 - pop {r0} - bx r0 - thumb_func_end sub_803A9AC - - thumb_func_start sub_803AA34 -sub_803AA34: - push {r4,r5,lr} - movs r4, 0 - ldr r0, _0803AA64 - ldr r1, [r0] - ldr r2, _0803AA68 - ldr r3, [r2] - ldrb r0, [r3, 0x4] - adds r1, r0 - ldrb r0, [r1] - adds r5, r2, 0 - cmp r0, 0 - beq _0803AA7A - ldr r0, _0803AA6C - str r0, [r3, 0xC] - bl sub_803ABC8 - lsls r0, 24 - cmp r0, 0 - beq _0803AA70 - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1, 0x10] - b _0803AA82 - .align 2, 0 -_0803AA64: .4byte gUnknown_203B468 -_0803AA68: .4byte gUnknown_203B3F4 -_0803AA6C: .4byte gUnknown_80E7EBC -_0803AA70: - ldr r1, [r5] - movs r0, 0x1 - negs r0, r0 - str r0, [r1, 0x10] - b _0803AA82 -_0803AA7A: - ldr r0, _0803AABC - str r0, [r3, 0xC] - movs r0, 0x2 - str r0, [r3, 0x10] -_0803AA82: - adds r4, 0x1 - ldr r5, [r5] - mov r12, r5 - lsls r1, r4, 3 - mov r3, r12 - adds r3, 0xC - adds r2, r3, r1 - ldr r0, _0803AAC0 - ldr r0, [r0] - str r0, [r2] - mov r2, r12 - adds r2, 0x10 - adds r1, r2, r1 - movs r0, 0x4 - str r0, [r1] - adds r4, 0x1 - lsls r1, r4, 3 - adds r3, r1 - movs r0, 0 - str r0, [r3] - adds r2, r1 - movs r0, 0x1 - str r0, [r2] - mov r1, r12 - ldr r0, [r1, 0x10] - str r0, [r1, 0x8] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803AABC: .4byte gUnknown_80E7EC4 -_0803AAC0: .4byte gUnknown_80D4970 - thumb_func_end sub_803AA34 - - thumb_func_start sub_803AAC4 -sub_803AAC4: - push {lr} - movs r0, 0x1 - bl sub_8021274 - cmp r0, 0x4 - bhi _0803AB2E - lsls r0, 2 - ldr r1, _0803AADC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803AADC: .4byte _0803AAE0 - .align 2, 0 -_0803AAE0: - .4byte _0803AB2E - .4byte _0803AB2E - .4byte _0803AB24 - .4byte _0803AAF4 - .4byte _0803AB0C -_0803AAF4: - bl sub_802132C - ldr r1, _0803AB08 - ldr r1, [r1] - strb r0, [r1, 0x4] - movs r0, 0x2 - bl sub_803A924 - b _0803AB2E - .align 2, 0 -_0803AB08: .4byte gUnknown_203B3F4 -_0803AB0C: - bl sub_802132C - ldr r1, _0803AB20 - ldr r1, [r1] - strb r0, [r1, 0x4] - movs r0, 0x3 - bl sub_803A924 - b _0803AB2E - .align 2, 0 -_0803AB20: .4byte gUnknown_203B3F4 -_0803AB24: - bl sub_80213A0 - movs r0, 0x4 - bl sub_803A924 -_0803AB2E: - pop {r0} - bx r0 - thumb_func_end sub_803AAC4 - - thumb_func_start sub_803AB34 -sub_803AB34: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_8021274 - ldr r4, _0803AB6C - ldr r0, [r4] - adds r0, 0x4C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0803AB5A - ldr r0, [r4] - adds r0, 0x4C - mov r1, sp - bl sub_8013114 -_0803AB5A: - ldr r0, [sp] - cmp r0, 0x2 - beq _0803AB7A - cmp r0, 0x2 - bgt _0803AB70 - cmp r0, 0x1 - beq _0803AB9E - b _0803ABA4 - .align 2, 0 -_0803AB6C: .4byte gUnknown_203B3F4 -_0803AB70: - cmp r0, 0x3 - beq _0803AB84 - cmp r0, 0x4 - beq _0803AB96 - b _0803ABA4 -_0803AB7A: - ldr r0, [r4] - ldrb r0, [r0, 0x4] - bl sub_80925EC - b _0803AB8E -_0803AB84: - ldr r0, [r4] - ldrb r0, [r0, 0x4] - movs r1, 0x1 - bl sub_809249C -_0803AB8E: - movs r0, 0x1 - bl sub_803A924 - b _0803ABA4 -_0803AB96: - movs r0, 0x3 - bl sub_803A924 - b _0803ABA4 -_0803AB9E: - movs r0, 0x1 - bl sub_803A924 -_0803ABA4: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_803AB34 - - thumb_func_start sub_803ABAC -sub_803ABAC: - push {lr} - bl sub_80217EC - cmp r0, 0x1 - bls _0803ABC4 - cmp r0, 0x3 - bhi _0803ABC4 - bl sub_8021830 - movs r0, 0x1 - bl sub_803A924 -_0803ABC4: - pop {r0} - bx r0 - thumb_func_end sub_803ABAC - - thumb_func_start sub_803ABC8 -sub_803ABC8: - push {r4-r6,lr} - movs r5, 0 - movs r6, 0x1 -_0803ABCE: - ldr r2, _0803AC08 - movs r0, 0x58 - adds r1, r5, 0 - muls r1, r0 - ldr r0, [r2] - adds r2, r0, r1 - ldrh r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0803AC10 - lsrs r0, r1, 1 - ands r0, r6 - cmp r0, 0 - beq _0803AC10 - ldr r0, _0803AC0C - ldr r4, [r0] - movs r1, 0x8 - ldrsh r0, [r2, r1] - bl sub_808DBA8 - ldrb r1, [r4, 0x4] - lsls r0, 24 - lsrs r0, 24 - cmp r1, r0 - bne _0803AC10 - movs r0, 0 - b _0803AC1C - .align 2, 0 -_0803AC08: .4byte gUnknown_203B45C -_0803AC0C: .4byte gUnknown_203B3F4 -_0803AC10: - adds r5, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r5, r0 - ble _0803ABCE - movs r0, 0x1 -_0803AC1C: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_803ABC8 - - thumb_func_start sub_803AC24 -sub_803AC24: - push {r4,lr} - ldr r4, _0803AC44 - movs r0, 0xA0 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r0, 0 - bl sub_803ACD0 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0803AC44: .4byte gUnknown_203B3F8 - thumb_func_end sub_803AC24 - - thumb_func_start sub_803AC48 -sub_803AC48: - push {lr} - ldr r0, _0803AC60 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x7 - bhi _0803ACA8 - lsls r0, 2 - ldr r1, _0803AC64 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803AC60: .4byte gUnknown_203B3F8 -_0803AC64: .4byte _0803AC68 - .align 2, 0 -_0803AC68: - .4byte _0803AC88 - .4byte _0803AC90 - .4byte _0803AC90 - .4byte _0803AC96 - .4byte _0803ACA8 - .4byte _0803AC9C - .4byte _0803ACA2 - .4byte _0803ACA8 -_0803AC88: - movs r0, 0x1 - bl sub_803ACD0 - b _0803ACAC -_0803AC90: - bl sub_803AF38 - b _0803ACAC -_0803AC96: - bl sub_803AF88 - b _0803ACAC -_0803AC9C: - bl sub_803AFE8 - b _0803ACAC -_0803ACA2: - bl sub_803B034 - b _0803ACAC -_0803ACA8: - movs r0, 0x3 - b _0803ACAE -_0803ACAC: - movs r0, 0 -_0803ACAE: - pop {r1} - bx r1 - thumb_func_end sub_803AC48 - - thumb_func_start sub_803ACB4 -sub_803ACB4: - push {r4,lr} - ldr r4, _0803ACCC - ldr r0, [r4] - cmp r0, 0 - beq _0803ACC6 - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0803ACC6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803ACCC: .4byte gUnknown_203B3F8 - thumb_func_end sub_803ACB4 - - thumb_func_start sub_803ACD0 -sub_803ACD0: - push {lr} - ldr r1, _0803ACE4 - ldr r1, [r1] - str r0, [r1] - bl sub_803ACE8 - bl sub_803AD88 - pop {r0} - bx r0 - .align 2, 0 -_0803ACE4: .4byte gUnknown_203B3F8 - thumb_func_end sub_803ACD0 - - thumb_func_start sub_803ACE8 -sub_803ACE8: - push {r4-r7,lr} - ldr r4, _0803AD08 - ldr r0, [r4] - adds r0, 0xE0 - bl sub_8006518 - ldr r1, [r4] - ldr r0, [r1] - cmp r0, 0x3 - beq _0803AD10 - cmp r0, 0x5 - beq _0803AD38 - movs r2, 0 - ldr r3, _0803AD0C - b _0803AD50 - .align 2, 0 -_0803AD08: .4byte gUnknown_203B3F8 -_0803AD0C: .4byte gUnknown_80E7ED4 -_0803AD10: - bl sub_803AEB0 - ldr r2, [r4] - movs r0, 0x88 - lsls r0, 1 - adds r2, r0 - ldr r1, _0803AD34 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0x90 - bl sub_8012CAC - b _0803AD6C - .align 2, 0 -_0803AD34: .4byte gUnknown_80E7EEC -_0803AD38: - movs r6, 0x94 - lsls r6, 1 - adds r1, r6 - ldr r0, _0803AD4C - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - b _0803AD6C - .align 2, 0 -_0803AD4C: .4byte gUnknown_80E7F04 -_0803AD50: - ldr r0, [r4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r0, r1 - adds r0, 0xE0 - adds r1, r3, 0 - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - adds r2, 0x1 - cmp r2, 0x3 - ble _0803AD50 -_0803AD6C: - bl sub_8004914 - ldr r0, _0803AD84 - ldr r0, [r0] - adds r0, 0xE0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803AD84: .4byte gUnknown_203B3F8 - thumb_func_end sub_803ACE8 - - thumb_func_start sub_803AD88 -sub_803AD88: - push {lr} - sub sp, 0x8 - ldr r1, _0803ADA4 - ldr r0, [r1] - ldr r0, [r0] - adds r2, r1, 0 - cmp r0, 0x7 - bhi _0803AE50 - lsls r0, 2 - ldr r1, _0803ADA8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803ADA4: .4byte gUnknown_203B3F8 -_0803ADA8: .4byte _0803ADAC - .align 2, 0 -_0803ADAC: - .4byte _0803AE50 - .4byte _0803ADCC - .4byte _0803ADDA - .4byte _0803ADE2 - .4byte _0803AE50 - .4byte _0803AE0C - .4byte _0803AE44 - .4byte _0803AE50 -_0803ADCC: - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0xA - bl sub_8023868 - b _0803AE50 -_0803ADDA: - movs r0, 0x1 - bl sub_8023B7C - b _0803AE50 -_0803ADE2: - bl sub_8023DA4 - ldr r0, _0803AE08 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x10 - adds r1, r2, 0 - adds r1, 0x90 - adds r3, r2, 0 - adds r3, 0xD0 - ldr r2, [r2, 0xC] - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _0803AE50 - .align 2, 0 -_0803AE08: .4byte gUnknown_203B3F8 -_0803AE0C: - ldr r2, [r2] - movs r1, 0x3 - str r1, [r2, 0x70] - movs r0, 0x1 - str r0, [r2, 0x68] - movs r0, 0x64 - str r0, [r2, 0x6C] - ldr r0, [r2, 0x8] - ldrb r0, [r0, 0x3] - str r0, [r2, 0x64] - str r1, [r2, 0x74] - movs r1, 0x94 - lsls r1, 1 - adds r0, r2, r1 - str r0, [r2, 0x78] - movs r0, 0x2C - str r0, [r2, 0x7C] - adds r1, r2, 0 - adds r1, 0x80 - movs r0, 0x12 - str r0, [r1] - adds r0, r2, 0 - adds r0, 0x60 - bl sub_8013AA0 - bl sub_803AE58 - b _0803AE50 -_0803AE44: - ldr r0, [r2] - ldr r1, [r0, 0x8] - adds r1, 0x4C - movs r0, 0x2 - bl sub_801602C -_0803AE50: - add sp, 0x8 - pop {r0} - bx r0 - thumb_func_end sub_803AD88 - - thumb_func_start sub_803AE58 -sub_803AE58: - push {r4,lr} - sub sp, 0x4 - ldr r4, _0803AEA8 - ldr r0, [r4] - ldr r0, [r0, 0x74] - bl sub_8008C54 - ldr r0, [r4] - ldr r0, [r0, 0x74] - bl sub_80073B8 - ldr r2, _0803AEAC - ldr r0, [r4] - ldr r3, [r0, 0x74] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - movs r1, 0 - bl xxx_call_draw_string - ldr r0, [r4] - adds r0, 0x60 - bl sub_8013C68 - ldr r0, [r4] - ldr r0, [r0, 0x74] - bl sub_80073E0 - bl sub_8023DA4 - ldr r0, [r4] - adds r0, 0x10 - movs r1, 0 - bl sub_8012EA4 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803AEA8: .4byte gUnknown_203B3F8 -_0803AEAC: .4byte gUnknown_80E7F1C - thumb_func_end sub_803AE58 - - thumb_func_start sub_803AEB0 -sub_803AEB0: - push {r4-r6,lr} - ldr r4, _0803AEFC - ldr r0, [r4] - adds r0, 0xD0 - movs r1, 0 - movs r2, 0x10 - bl MemoryFill16 - ldr r4, [r4] - movs r3, 0 - adds r1, r4, 0 - adds r1, 0x90 - ldr r0, _0803AF00 - str r0, [r1] - adds r5, r4, 0 - adds r5, 0x94 - movs r0, 0x4 - str r0, [r5] - movs r2, 0x1 - adds r1, 0x8 - ldr r0, _0803AF04 - str r0, [r1] - adds r1, 0x4 - movs r0, 0x5 - str r0, [r1] - movs r6, 0x2 - adds r0, r4, 0 - adds r0, 0xA0 - str r3, [r0] - adds r0, 0x4 - str r2, [r0] - adds r0, 0x2C - ldrh r0, [r0] - cmp r0, 0 - bne _0803AF08 - ldr r0, [r5] - str r0, [r4, 0xC] - b _0803AF2C - .align 2, 0 -_0803AEFC: .4byte gUnknown_203B3F8 -_0803AF00: .4byte gUnknown_80E7F24 -_0803AF04: .4byte gUnknown_80E7F2C -_0803AF08: - adds r3, 0x1 - cmp r3, r6 - bge _0803AF2C - ldr r0, _0803AF34 - ldr r2, [r0] - lsls r1, r3, 1 - adds r0, r2, 0 - adds r0, 0xD0 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0 - bne _0803AF08 - lsls r0, r3, 3 - adds r1, r2, 0 - adds r1, 0x94 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0xC] -_0803AF2C: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0803AF34: .4byte gUnknown_203B3F8 - thumb_func_end sub_803AEB0 - - thumb_func_start sub_803AF38 -sub_803AF38: - push {lr} - movs r0, 0x1 - bl sub_8023A94 - cmp r0, 0x2 - beq _0803AF78 - cmp r0, 0x2 - bcc _0803AF82 - cmp r0, 0x3 - bne _0803AF82 - bl sub_8023B44 - ldr r1, _0803AF70 - ldr r1, [r1] - strh r0, [r1, 0x4] - ldr r3, _0803AF74 - movs r0, 0x4 - ldrsh r2, [r1, r0] - movs r0, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - str r0, [r1, 0x8] - movs r0, 0x3 - bl sub_803ACD0 - b _0803AF82 - .align 2, 0 -_0803AF70: .4byte gUnknown_203B3F8 -_0803AF74: .4byte gUnknown_203B45C -_0803AF78: - bl sub_8023C60 - movs r0, 0x7 - bl sub_803ACD0 -_0803AF82: - pop {r0} - bx r0 - thumb_func_end sub_803AF38 - - thumb_func_start sub_803AF88 -sub_803AF88: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_8023A94 - ldr r4, _0803AFC0 - ldr r0, [r4] - adds r0, 0x10 - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _0803AFAE - ldr r0, [r4] - adds r0, 0x10 - mov r1, sp - bl sub_8013114 -_0803AFAE: - ldr r0, [sp] - cmp r0, 0x4 - beq _0803AFCA - cmp r0, 0x4 - bgt _0803AFC4 - cmp r0, 0x1 - beq _0803AFDA - b _0803AFE0 - .align 2, 0 -_0803AFC0: .4byte gUnknown_203B3F8 -_0803AFC4: - cmp r0, 0x5 - beq _0803AFD2 - b _0803AFE0 -_0803AFCA: - movs r0, 0x5 - bl sub_803ACD0 - b _0803AFE0 -_0803AFD2: - movs r0, 0x6 - bl sub_803ACD0 - b _0803AFE0 -_0803AFDA: - movs r0, 0x2 - bl sub_803ACD0 -_0803AFE0: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_803AF88 - - thumb_func_start sub_803AFE8 -sub_803AFE8: - push {r4,lr} - movs r0, 0 - bl sub_8023A94 - ldr r4, _0803B010 - ldr r0, [r4] - adds r0, 0x10 - bl sub_8012FD8 - ldr r0, [r4] - adds r0, 0x60 - bl sub_8013BBC - cmp r0, 0x2 - beq _0803B020 - cmp r0, 0x2 - bhi _0803B014 - cmp r0, 0x1 - beq _0803B028 - b _0803B02C - .align 2, 0 -_0803B010: .4byte gUnknown_203B3F8 -_0803B014: - cmp r0, 0x3 - bne _0803B02C - ldr r0, [r4] - ldr r1, [r0, 0x8] - ldr r0, [r0, 0x60] - strb r0, [r1, 0x3] -_0803B020: - movs r0, 0x2 - bl sub_803ACD0 - b _0803B02C -_0803B028: - bl sub_803AE58 -_0803B02C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_803AFE8 - - thumb_func_start sub_803B034 -sub_803B034: - push {lr} - bl sub_8016080 - cmp r0, 0x3 - bhi _0803B04C - cmp r0, 0x2 - bcc _0803B04C - bl sub_80160D8 - movs r0, 0x2 - bl sub_803ACD0 -_0803B04C: - pop {r0} - bx r0 - thumb_func_end sub_803B034 - - thumb_func_start sub_803B050 -sub_803B050: - push {r4-r7,lr} - ldr r4, _0803B0F4 - movs r0, 0xF4 - lsls r0, 2 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r1, 0x3 - str r1, [r0, 0x34] - adds r1, r0, 0 - adds r1, 0x84 - str r1, [r0, 0x38] - adds r0, 0x3C - bl sub_8006518 - ldr r1, [r4] - ldr r2, [r1, 0x34] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x3C - ldr r0, _0803B0F8 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldr r0, [r4] - ldr r1, [r0, 0x38] - adds r0, 0x9C - str r0, [r1, 0x14] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r2, 0 - movs r3, 0 - movs r7, 0xCB - lsls r7, 1 - movs r6, 0x80 - lsls r6, 9 - movs r5, 0 -_0803B0AE: - ldr r0, _0803B0FC - adds r0, r5, r0 - movs r1, 0x2 - ldrsh r0, [r0, r1] - ldr r4, _0803B0F4 - cmp r0, 0xA - bne _0803B0C8 - ldr r0, [r4] - lsls r1, r2, 1 - adds r0, 0xA0 - adds r0, r1 - strh r3, [r0] - adds r2, 0x1 -_0803B0C8: - adds r0, r6, 0 - movs r3, 0x80 - lsls r3, 9 - adds r6, r3 - adds r5, 0xC - asrs r3, r0, 16 - cmp r3, r7 - ble _0803B0AE - ldr r0, [r4] - ldr r3, [r0, 0x34] - adds r1, r2, 0 - movs r2, 0xA - bl sub_8013818 - bl sub_803B204 - bl sub_803B284 - movs r0, 0x1 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0803B0F4: .4byte gUnknown_203B3FC -_0803B0F8: .4byte gUnknown_80E7F54 -_0803B0FC: .4byte gUnknown_812F1F8 - thumb_func_end sub_803B050 - - thumb_func_start sub_803B100 -sub_803B100: - push {lr} - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - ldr r0, _0803B11C - ldr r0, [r0] - bl sub_8013878 - bl sub_803B204 - bl sub_803B284 - pop {r0} - bx r0 - .align 2, 0 -_0803B11C: .4byte gUnknown_203B3FC - thumb_func_end sub_803B100 - - thumb_func_start sub_803B120 -sub_803B120: - push {r4,lr} - ldr r4, _0803B13C - ldr r0, [r4] - bl GetKeyPress - cmp r0, 0x1 - beq _0803B140 - cmp r0, 0x2 - bne _0803B144 - movs r0, 0x1 - bl sub_80119D4 - movs r0, 0x2 - b _0803B160 - .align 2, 0 -_0803B13C: .4byte gUnknown_203B3FC -_0803B140: - movs r0, 0x3 - b _0803B160 -_0803B144: - ldr r0, [r4] - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - bne _0803B156 - movs r0, 0 - b _0803B160 -_0803B156: - bl sub_803B204 - bl sub_803B284 - movs r0, 0x1 -_0803B160: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_803B120 - - thumb_func_start sub_803B168 -sub_803B168: - ldr r0, _0803B188 - ldr r0, [r0] - movs r1, 0x1E - ldrsh r2, [r0, r1] - movs r3, 0x1C - ldrsh r1, [r0, r3] - muls r1, r2 - movs r3, 0x18 - ldrsh r2, [r0, r3] - adds r1, r2 - lsls r1, 1 - adds r0, 0xA0 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_0803B188: .4byte gUnknown_203B3FC - thumb_func_end sub_803B168 - - thumb_func_start sub_803B18C -sub_803B18C: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _0803B1B8 - ldr r0, [r5] - movs r1, 0xE5 - strh r1, [r0, 0x22] - bl sub_8013984 - bl sub_803B204 - bl sub_803B284 - cmp r4, 0 - beq _0803B1B2 - ldr r0, [r5] - bl AddMenuCursorSprite -_0803B1B2: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803B1B8: .4byte gUnknown_203B3FC - thumb_func_end sub_803B18C - - thumb_func_start sub_803B1BC -sub_803B1BC: - push {r4,r5,lr} - ldr r4, _0803B1FC - ldr r2, [r4] - cmp r2, 0 - beq _0803B1F6 - ldr r0, [r2, 0x34] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x3C - ldr r0, _0803B200 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0803B1F6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803B1FC: .4byte gUnknown_203B3FC -_0803B200: .4byte gUnknown_80E7F3C - thumb_func_end sub_803B1BC - - thumb_func_start sub_803B204 -sub_803B204: - push {r4,lr} - ldr r4, _0803B280 - ldr r0, [r4] - adds r0, 0x9C - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9D - strb r2, [r0] - ldr r0, [r4] - adds r0, 0x9E - movs r1, 0x8 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x9F - strb r2, [r0] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - movs r1, 0x1A - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r4] - ldr r3, [r2, 0x34] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x4A - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x34] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x4C - strh r3, [r2] - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x3C - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803B280: .4byte gUnknown_203B3FC - thumb_func_end sub_803B204 - - thumb_func_start sub_803B284 -sub_803B284: - push {r4-r6,lr} - sub sp, 0x8 - ldr r6, _0803B338 - ldr r0, [r6] - ldr r0, [r0, 0x34] - bl sub_8008C54 - ldr r0, [r6] - ldr r0, [r0, 0x34] - bl sub_80073B8 - ldr r2, _0803B33C - ldr r0, [r6] - ldr r3, [r0, 0x34] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0x9E - ldrb r4, [r0] - lsls r4, 3 - subs r4, 0x2 - movs r0, 0x1E - ldrsh r2, [r1, r0] - adds r2, 0x1 - movs r0, 0x7 - str r0, [sp] - ldr r0, [r1, 0x34] - str r0, [sp, 0x4] - adds r0, r4, 0 - movs r1, 0 - movs r3, 0x2 - bl sub_8012BC4 - movs r5, 0 - ldr r0, [r6] - movs r1, 0x1A - ldrsh r0, [r0, r1] - cmp r5, r0 - bge _0803B324 -_0803B2DC: - ldr r0, [r6] - movs r3, 0x1E - ldrsh r2, [r0, r3] - movs r3, 0x1C - ldrsh r1, [r0, r3] - muls r2, r1 - adds r2, r5 - lsls r2, 1 - adds r1, r0, 0 - adds r1, 0xA0 - adds r1, r2 - movs r2, 0 - ldrsh r1, [r1, r2] - lsls r4, r1, 1 - adds r4, r1 - lsls r4, 2 - ldr r1, _0803B340 - adds r4, r1 - adds r1, r5, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r2, [r4, 0x4] - ldr r0, [r6] - ldr r3, [r0, 0x34] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - bl xxx_call_draw_string - adds r5, 0x1 - ldr r0, [r6] - movs r3, 0x1A - ldrsh r0, [r0, r3] - cmp r5, r0 - blt _0803B2DC -_0803B324: - ldr r0, _0803B338 - ldr r0, [r0] - ldr r0, [r0, 0x34] - bl sub_80073E0 - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0803B338: .4byte gUnknown_203B3FC -_0803B33C: .4byte gUnknown_80E7F6C -_0803B340: .4byte gUnknown_812F1F8 - thumb_func_end sub_803B284 - - thumb_func_start sub_803B344 -sub_803B344: - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r1, _0803B358 - adds r0, r1 - bx lr - .align 2, 0 -_0803B358: .4byte gUnknown_80E7F94 - thumb_func_end sub_803B344 - - thumb_func_start sub_803B35C -sub_803B35C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r1, 0x18 - bl sub_803C21C - ldrb r0, [r5, 0x2] - subs r0, 0x1 - cmp r0, 0x8 - bls _0803B372 - b _0803B4FA -_0803B372: - lsls r0, 2 - ldr r1, _0803B37C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803B37C: .4byte _0803B380 - .align 2, 0 -_0803B380: - .4byte _0803B3A4 - .4byte _0803B3BE - .4byte _0803B3D8 - .4byte _0803B3F2 - .4byte _0803B414 - .4byte _0803B442 - .4byte _0803B470 - .4byte _0803B49E - .4byte _0803B4CC -_0803B3A4: - adds r0, r4, 0 - adds r0, 0x40 - movs r1, 0 - strb r1, [r0] - adds r0, 0x1 - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x42 - movs r0, 0x6 - strb r0, [r1] - subs r1, 0x14 - movs r0, 0x5 - b _0803B576 -_0803B3BE: - adds r0, r4, 0 - adds r0, 0x40 - movs r1, 0x1 - strb r1, [r0] - adds r0, 0x1 - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x42 - movs r0, 0x6 - strb r0, [r1] - subs r1, 0x14 - movs r0, 0x5 - b _0803B576 -_0803B3D8: - adds r0, r4, 0 - adds r0, 0x40 - movs r1, 0x2 - strb r1, [r0] - adds r0, 0x1 - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x42 - movs r0, 0x6 - strb r0, [r1] - subs r1, 0x14 - movs r0, 0x5 - b _0803B576 -_0803B3F2: - adds r0, r4, 0 - adds r0, 0x40 - movs r1, 0x3 - strb r1, [r0] - adds r0, 0x1 - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x42 - movs r0, 0x6 - strb r0, [r1] - bl sub_8096DD8 - str r0, [r4, 0x4C] - bl sub_8096DE8 - str r0, [r4, 0x50] - b _0803B578 -_0803B414: - ldrb r0, [r5, 0x1] - cmp r0, 0x3 - bne _0803B42A - adds r0, r4, 0 - adds r0, 0x40 - movs r1, 0xB - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x42 - movs r0, 0x1 - b _0803B438 -_0803B42A: - adds r0, r4, 0 - adds r0, 0x40 - movs r1, 0xC - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x42 - movs r0, 0x2 -_0803B438: - strb r0, [r1] - adds r1, r4, 0 - adds r1, 0x41 - movs r0, 0x4 - b _0803B576 -_0803B442: - ldrb r0, [r5, 0x1] - cmp r0, 0x3 - bne _0803B458 - adds r0, r4, 0 - adds r0, 0x40 - movs r1, 0xB - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x42 - movs r0, 0x1 - b _0803B466 -_0803B458: - adds r0, r4, 0 - adds r0, 0x40 - movs r1, 0xC - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x42 - movs r0, 0x2 -_0803B466: - strb r0, [r1] - adds r1, r4, 0 - adds r1, 0x41 - movs r0, 0x5 - b _0803B576 -_0803B470: - adds r0, r5, 0 - bl sub_803B600 - str r0, [r4, 0x4] - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _0803B488 - adds r1, r4, 0 - adds r1, 0x40 - movs r0, 0x9 - b _0803B48E -_0803B488: - adds r1, r4, 0 - adds r1, 0x40 - movs r0, 0x4 -_0803B48E: - strb r0, [r1] - adds r1, r4, 0 - adds r1, 0x41 - movs r0, 0x6 - strb r0, [r1] - adds r1, 0x1 - movs r0, 0x4 - b _0803B576 -_0803B49E: - adds r0, r5, 0 - bl sub_803B628 - str r0, [r4, 0x4] - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _0803B4B6 - adds r1, r4, 0 - adds r1, 0x40 - movs r0, 0x9 - b _0803B4BC -_0803B4B6: - adds r1, r4, 0 - adds r1, 0x40 - movs r0, 0x5 -_0803B4BC: - strb r0, [r1] - adds r1, r4, 0 - adds r1, 0x41 - movs r0, 0x7 - strb r0, [r1] - adds r1, 0x1 - movs r0, 0x4 - b _0803B576 -_0803B4CC: - adds r0, r5, 0 - bl sub_803B66C - str r0, [r4, 0x4] - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _0803B4E4 - adds r1, r4, 0 - adds r1, 0x40 - movs r0, 0xA - b _0803B4EA -_0803B4E4: - adds r1, r4, 0 - adds r1, 0x40 - movs r0, 0x6 -_0803B4EA: - strb r0, [r1] - adds r1, r4, 0 - adds r1, 0x41 - movs r0, 0x8 - strb r0, [r1] - adds r1, 0x1 - movs r0, 0x5 - b _0803B576 -_0803B4FA: - ldrb r0, [r5, 0x1] - cmp r0, 0x2 - beq _0803B528 - cmp r0, 0x2 - bgt _0803B50A - cmp r0, 0x1 - beq _0803B514 - b _0803B564 -_0803B50A: - cmp r0, 0x3 - beq _0803B53C - cmp r0, 0x4 - beq _0803B550 - b _0803B564 -_0803B514: - adds r1, r4, 0 - adds r1, 0x40 - movs r0, 0x9 - strb r0, [r1] - adds r1, 0x1 - movs r0, 0xD - strb r0, [r1] - adds r1, 0x1 - movs r0, 0x4 - b _0803B576 -_0803B528: - adds r1, r4, 0 - adds r1, 0x40 - movs r0, 0xA - strb r0, [r1] - adds r1, 0x1 - movs r0, 0xE - strb r0, [r1] - adds r1, 0x1 - movs r0, 0x5 - b _0803B576 -_0803B53C: - adds r1, r4, 0 - adds r1, 0x40 - movs r0, 0xB - strb r0, [r1] - adds r1, 0x1 - movs r0, 0xF - strb r0, [r1] - adds r1, 0x1 - movs r0, 0x1 - b _0803B576 -_0803B550: - adds r1, r4, 0 - adds r1, 0x40 - movs r0, 0xC - strb r0, [r1] - adds r1, 0x1 - movs r0, 0x10 - strb r0, [r1] - adds r1, 0x1 - movs r0, 0x2 - b _0803B576 -_0803B564: - adds r1, r4, 0 - adds r1, 0x40 - movs r0, 0x8 - strb r0, [r1] - adds r1, 0x1 - movs r0, 0xC - strb r0, [r1] - adds r1, 0x1 - movs r0, 0x3 -_0803B576: - strb r0, [r1] -_0803B578: - adds r0, r5, 0x4 - str r0, [r4, 0x8] - movs r0, 0 - str r0, [r4, 0xC] - ldrh r0, [r5, 0xC] - movs r1, 0 - strh r0, [r4, 0x10] - ldrh r0, [r5, 0xE] - strh r0, [r4, 0x12] - ldrb r0, [r5, 0x10] - strb r0, [r4, 0x14] - ldrb r0, [r5] - subs r0, 0x2 - cmp r0, 0x7 - bhi _0803B5EC - lsls r0, 2 - ldr r1, _0803B5A0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803B5A0: .4byte _0803B5A4 - .align 2, 0 -_0803B5A4: - .4byte _0803B5C4 - .4byte _0803B5C4 - .4byte _0803B5C4 - .4byte _0803B5C4 - .4byte _0803B5DC - .4byte _0803B5CC - .4byte _0803B5DC - .4byte _0803B5DC -_0803B5C4: - adds r0, r4, 0 - adds r0, 0x43 - movs r1, 0x1 - b _0803B5F0 -_0803B5CC: - adds r1, r4, 0 - adds r1, 0x43 - movs r0, 0 - strb r0, [r1] - adds r1, 0x1 - movs r0, 0x3 - strb r0, [r1] - b _0803B5F6 -_0803B5DC: - adds r1, r4, 0 - adds r1, 0x43 - movs r0, 0x3 - strb r0, [r1] - adds r1, 0x1 - movs r0, 0x2 - strb r0, [r1] - b _0803B5F6 -_0803B5EC: - adds r0, r4, 0 - adds r0, 0x43 -_0803B5F0: - strb r1, [r0] - adds r0, 0x1 - strb r1, [r0] -_0803B5F6: - str r5, [r4, 0x54] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_803B35C - - thumb_func_start sub_803B600 -sub_803B600: - push {lr} - ldr r2, _0803B614 - movs r1, 0 - ldr r3, [r0, 0xC] -_0803B608: - ldr r0, [r2] - cmp r0, r3 - bne _0803B618 - adds r0, r1, 0 - b _0803B624 - .align 2, 0 -_0803B614: .4byte gUnknown_80E9920 -_0803B618: - adds r2, 0x8 - adds r1, 0x1 - cmp r1, 0x14 - ble _0803B608 - movs r0, 0x1 - negs r0, r0 -_0803B624: - pop {r1} - bx r1 - thumb_func_end sub_803B600 - - thumb_func_start sub_803B628 -sub_803B628: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r2, _0803B654 - movs r3, 0 -_0803B630: - ldr r1, [r2] - ldr r0, [r4, 0xC] - cmp r1, r0 - beq _0803B650 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r5, 0xC - ldrsh r0, [r4, r5] - cmp r1, r0 - bne _0803B658 - movs r0, 0 - ldrsh r1, [r2, r0] - movs r5, 0xE - ldrsh r0, [r4, r5] - cmp r1, r0 - bne _0803B658 -_0803B650: - adds r0, r3, 0 - b _0803B664 - .align 2, 0 -_0803B654: .4byte gUnknown_80E9F8C -_0803B658: - adds r2, 0xC - adds r3, 0x1 - cmp r3, 0x2C - ble _0803B630 - movs r0, 0x1 - negs r0, r0 -_0803B664: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_803B628 - - thumb_func_start sub_803B66C -sub_803B66C: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r2, _0803B698 - movs r3, 0 -_0803B674: - ldr r1, [r2] - ldr r0, [r4, 0xC] - cmp r1, r0 - beq _0803B694 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r5, 0xC - ldrsh r0, [r4, r5] - cmp r1, r0 - bne _0803B69C - movs r0, 0 - ldrsh r1, [r2, r0] - movs r5, 0xE - ldrsh r0, [r4, r5] - cmp r1, r0 - bne _0803B69C -_0803B694: - adds r0, r3, 0 - b _0803B6A8 - .align 2, 0 -_0803B698: .4byte gUnknown_80E8168 -_0803B69C: - adds r2, 0x4 - adds r3, 0x1 - cmp r3, 0x5 - ble _0803B674 - movs r0, 0x1 - negs r0, r0 -_0803B6A8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_803B66C - - thumb_func_start sub_803B6B0 -sub_803B6B0: - push {r4,lr} - sub sp, 0x4 - lsls r2, 24 - ldr r4, _0803B6D0 - lsrs r2, 22 - adds r2, r4 - ldr r2, [r2] - movs r4, 0 - str r4, [sp] - bl xxx_call_draw_string - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803B6D0: .4byte gUnknown_80E8B94 - thumb_func_end sub_803B6B0 - - thumb_func_start sub_803B6D4 -sub_803B6D4: - push {r4-r7,lr} - sub sp, 0x144 - adds r7, r0, 0 - ldr r1, [r7, 0x48] - adds r0, 0x43 - ldrb r2, [r0] - ldr r3, [r7] - movs r0, 0xA - bl sub_803B6B0 - adds r0, r7, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0xC - bls _0803B6F4 - b _0803B86C -_0803B6F4: - lsls r0, 2 - ldr r1, _0803B700 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803B700: .4byte _0803B704 - .align 2, 0 -_0803B704: - .4byte _0803B73E - .4byte _0803B748 - .4byte _0803B754 - .4byte _0803B738 - .4byte _0803B7A4 - .4byte _0803B7B0 - .4byte _0803B7C8 - .4byte _0803B760 - .4byte _0803B86C - .4byte _0803B818 - .4byte _0803B7E0 - .4byte _0803B788 - .4byte _0803B76A -_0803B738: - ldr r1, [r7, 0x48] - ldr r2, [r7, 0x4C] - b _0803B7CC -_0803B73E: - ldr r1, [r7, 0x48] - ldr r2, _0803B744 - b _0803B7CC - .align 2, 0 -_0803B744: .4byte gUnknown_80E87DC -_0803B748: - ldr r1, [r7, 0x48] - ldr r2, _0803B750 - b _0803B7CC - .align 2, 0 -_0803B750: .4byte gUnknown_80E87F4 -_0803B754: - ldr r1, [r7, 0x48] - ldr r2, _0803B75C - b _0803B7CC - .align 2, 0 -_0803B75C: .4byte gUnknown_80E8818 -_0803B760: - ldr r1, [r7, 0x8] - add r0, sp, 0x4 - bl sub_8090208 - b _0803B850 -_0803B76A: - ldr r4, _0803B780 - ldrb r1, [r7, 0x14] - adds r0, r4, 0 - movs r2, 0 - bl sub_8090DC4 - ldr r1, _0803B784 - add r0, sp, 0x4 - adds r2, r4, 0 - b _0803B84C - .align 2, 0 -_0803B780: .4byte gUnknown_202DE58 -_0803B784: .4byte gUnknown_80E8830 -_0803B788: - ldr r4, _0803B79C - ldrb r1, [r7, 0x14] - adds r0, r4, 0 - movs r2, 0 - bl sub_8090DC4 - ldr r1, _0803B7A0 - add r0, sp, 0x4 - adds r2, r4, 0 - b _0803B84C - .align 2, 0 -_0803B79C: .4byte gUnknown_202DE58 -_0803B7A0: .4byte gUnknown_80E8848 -_0803B7A4: - ldr r1, [r7, 0x48] - ldr r2, _0803B7AC - b _0803B7CC - .align 2, 0 -_0803B7AC: .4byte gUnknown_80E885C -_0803B7B0: - ldr r1, [r7, 0x48] - ldr r3, _0803B7C4 - ldr r2, [r7, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r3, 0x4 - adds r0, r3 - ldr r2, [r0] - b _0803B7CC - .align 2, 0 -_0803B7C4: .4byte gUnknown_80E9F8C -_0803B7C8: - ldr r1, [r7, 0x48] - ldr r2, _0803B7DC -_0803B7CC: - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0x15 - bl xxx_call_draw_string - b _0803B8B4 - .align 2, 0 -_0803B7DC: .4byte gUnknown_80E886C -_0803B7E0: - ldr r0, [r7, 0x8] - ldr r4, [r0, 0x4] - ldrb r0, [r0] - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - movs r1, 0x12 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r5, _0803B810 - adds r0, r5, 0 - bl strcpy - ldr r1, _0803B814 - movs r0, 0x3 - ands r4, r0 - lsls r4, 2 - adds r4, r1 - ldr r1, [r4] - add r0, sp, 0x4 - adds r2, r5, 0 - b _0803B84C - .align 2, 0 -_0803B810: .4byte gUnknown_202DF98 -_0803B814: .4byte gUnknown_80EAE5C -_0803B818: - ldr r0, [r7, 0x8] - ldr r4, [r0, 0x4] - ldrb r0, [r0] - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - movs r1, 0x12 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r6, _0803B864 - adds r0, r6, 0 - bl strcpy - ldr r5, _0803B868 - adds r0, r4, 0 - movs r1, 0xA - bl __umodsi3 - lsls r0, 24 - lsrs r0, 22 - adds r0, r5 - ldr r1, [r0] - add r0, sp, 0x4 - adds r2, r6, 0 -_0803B84C: - bl sub_800D158 -_0803B850: - ldr r1, [r7, 0x48] - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0x15 - add r2, sp, 0x4 - bl xxx_call_draw_string - b _0803B8B4 - .align 2, 0 -_0803B864: .4byte gUnknown_202DF98 -_0803B868: .4byte gUnknown_80E910C -_0803B86C: - ldr r0, [r7, 0x8] - ldr r4, [r0, 0x4] - ldrb r0, [r0] - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - movs r1, 0x12 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r6, _0803B8E8 - adds r0, r6, 0 - bl strcpy - ldr r5, _0803B8EC - adds r0, r4, 0 - movs r1, 0xF - bl __umodsi3 - lsls r0, 24 - lsrs r0, 22 - adds r0, r5 - ldr r1, [r0] - add r0, sp, 0x4 - adds r2, r6, 0 - bl sub_800D158 - ldr r1, [r7, 0x48] - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0x15 - add r2, sp, 0x4 - bl xxx_call_draw_string -_0803B8B4: - adds r0, r7, 0 - adds r0, 0x40 - ldrb r1, [r0] - adds r6, r0, 0 - cmp r1, 0x7 - bne _0803B916 - ldr r5, [r7, 0xC] - cmp r5, 0 - bne _0803B8F0 - bl sub_8016028 - movs r4, 0xB2 - subs r4, r0 - movs r1, 0x10 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r2, r0, 0 - ldr r1, [r7, 0x48] - ldr r3, [r7] - str r5, [sp] - adds r0, r4, 0 - bl xxx_call_draw_string - b _0803B956 - .align 2, 0 -_0803B8E8: .4byte gUnknown_202DF98 -_0803B8EC: .4byte gUnknown_80E8C98 -_0803B8F0: - add r4, sp, 0xCC - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0xA - bl sub_80922B4 - bl sub_8016028 - adds r1, r0, 0 - movs r0, 0xB2 - subs r0, r1 - ldr r1, [r7, 0x48] - ldr r3, [r7] - movs r2, 0 - str r2, [sp] - adds r2, r4, 0 - bl xxx_call_draw_string - b _0803B956 -_0803B916: - adds r0, r7, 0 - adds r0, 0x42 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0803B93C - add r4, sp, 0xE0 - ldr r1, [r7, 0x8] - adds r0, r4, 0 - bl sub_8090228 - ldr r1, _0803B938 - add r0, sp, 0x4 - adds r2, r4, 0 - bl sub_800D158 - b _0803B944 - .align 2, 0 -_0803B938: .4byte gUnknown_80E8884 -_0803B93C: - ldr r1, [r7, 0x8] - add r0, sp, 0x4 - bl sub_8090228 -_0803B944: - ldr r1, [r7, 0x48] - adds r1, 0xC - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0x1D - add r2, sp, 0x4 - bl xxx_call_draw_string -_0803B956: - ldrb r0, [r6] - cmp r0, 0x7 - bne _0803B962 - ldr r0, [r7, 0x8] - movs r1, 0 - b _0803B968 -_0803B962: - ldr r0, [r7, 0x8] - ldr r1, [r7, 0x54] - ldrb r1, [r1, 0x1] -_0803B968: - bl sub_803C1D0 - lsls r0, 24 - lsrs r0, 24 - bl sub_803C1F0 - adds r2, r0, 0 - ldr r1, [r7, 0x48] - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0xB4 - bl xxx_call_draw_string - add sp, 0x144 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_803B6D4 - - thumb_func_start sub_803B98C -sub_803B98C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x1FC - adds r7, r0, 0 - movs r0, 0 - mov r9, r0 - ldr r2, _0803B9E0 - ldr r3, [r7] - str r0, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r1, _0803B9E4 - adds r0, r7, 0 - adds r0, 0x44 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - ldr r3, [r7] - mov r1, r9 - str r1, [sp] - movs r0, 0x6C - movs r1, 0 - bl xxx_call_draw_string - movs r0, 0x10 - mov r9, r0 - adds r0, r7, 0 - adds r0, 0x41 - ldrb r0, [r0] - cmp r0, 0x10 - bls _0803B9D6 - b _0803BCC0 -_0803B9D6: - lsls r0, 2 - ldr r1, _0803B9E8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803B9E0: .4byte gUnknown_80E888C -_0803B9E4: .4byte gUnknown_80E8BCC -_0803B9E8: .4byte _0803B9EC - .align 2, 0 -_0803B9EC: - .4byte _0803BA34 - .4byte _0803BA3C - .4byte _0803BA44 - .4byte _0803BA30 - .4byte _0803BA4C - .4byte _0803BA6C - .4byte _0803BA8C - .4byte _0803BAA0 - .4byte _0803BBF0 - .4byte _0803BAE8 - .4byte _0803BAF0 - .4byte _0803BAF8 - .4byte _0803BCC0 - .4byte _0803BC58 - .4byte _0803BB74 - .4byte _0803BB10 - .4byte _0803BB10 -_0803BA30: - ldr r2, [r7, 0x50] - b _0803BAFA -_0803BA34: - ldr r2, _0803BA38 - b _0803BAFA - .align 2, 0 -_0803BA38: .4byte gUnknown_80E88A0 -_0803BA3C: - ldr r2, _0803BA40 - b _0803BAFA - .align 2, 0 -_0803BA40: .4byte gUnknown_80E88C8 -_0803BA44: - ldr r2, _0803BA48 - b _0803BAFA - .align 2, 0 -_0803BA48: .4byte gUnknown_80E8920 -_0803BA4C: - ldr r4, _0803BA64 - ldrb r1, [r7, 0x14] - adds r0, r4, 0 - movs r2, 0 - bl sub_8090DC4 - ldr r1, _0803BA68 - add r0, sp, 0x4 - adds r2, r4, 0 - bl sub_800D158 - b _0803BACC - .align 2, 0 -_0803BA64: .4byte gUnknown_202DE58 -_0803BA68: .4byte gUnknown_80E8968 -_0803BA6C: - ldr r4, _0803BA84 - ldrb r1, [r7, 0x14] - adds r0, r4, 0 - movs r2, 0 - bl sub_8090DC4 - ldr r1, _0803BA88 - add r0, sp, 0x4 - adds r2, r4, 0 - bl sub_800D158 - b _0803BACC - .align 2, 0 -_0803BA84: .4byte gUnknown_202DE58 -_0803BA88: .4byte gUnknown_80E89B0 -_0803BA8C: - ldr r1, _0803BA9C - ldr r0, [r7, 0x4] - lsls r0, 3 - adds r1, 0x4 - adds r0, r1 - ldr r2, [r0] - b _0803BAFA - .align 2, 0 -_0803BA9C: .4byte gUnknown_80E9920 -_0803BAA0: - movs r1, 0x12 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r4, _0803BAE0 - adds r0, r4, 0 - bl strcpy - ldr r2, _0803BAE4 - ldr r1, [r7, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r2, 0x8 - adds r0, r2 - ldr r1, [r0] - add r0, sp, 0x4 - adds r2, r4, 0 - adds r3, r4, 0 - bl sub_800D158 -_0803BACC: - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - mov r1, r9 - add r2, sp, 0x4 - bl xxx_call_draw_string - b _0803BD42 - .align 2, 0 -_0803BAE0: .4byte gUnknown_202DF98 -_0803BAE4: .4byte gUnknown_80E9F8C -_0803BAE8: - ldr r2, _0803BAEC - b _0803BAFA - .align 2, 0 -_0803BAEC: .4byte gUnknown_80E89FC -_0803BAF0: - ldr r2, _0803BAF4 - b _0803BAFA - .align 2, 0 -_0803BAF4: .4byte gUnknown_80E8A40 -_0803BAF8: - ldr r2, _0803BB0C -_0803BAFA: - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - mov r1, r9 - bl xxx_call_draw_string - b _0803BD42 - .align 2, 0 -_0803BB0C: .4byte gUnknown_80E8A7C -_0803BB10: - ldr r0, [r7, 0x8] - ldr r5, [r0, 0x4] - ldrb r4, [r0] - adds r4, r5, r4 - lsls r4, 24 - lsrs r4, 24 - ldrb r0, [r0, 0x1] - adds r5, r0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _0803BB68 - mov r8, r0 - ldrb r1, [r7, 0x14] - movs r2, 0 - bl sub_8090DC4 - ldr r6, _0803BB6C - adds r0, r4, 0 - movs r1, 0x16 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 22 - adds r0, r6 - ldr r1, [r0] - add r0, sp, 0x4 - mov r2, r8 - bl sub_800D158 - ldr r3, [r7] - movs r6, 0 - str r6, [sp] - movs r0, 0xA - mov r1, r9 - add r2, sp, 0x4 - bl xxx_call_draw_string - movs r1, 0xC - add r9, r1 - ldr r4, _0803BB70 - adds r0, r5, 0 - movs r1, 0x16 - b _0803BD1A - .align 2, 0 -_0803BB68: .4byte gUnknown_202DE58 -_0803BB6C: .4byte gUnknown_80EB3F8 -_0803BB70: .4byte gUnknown_80EB72C -_0803BB74: - ldr r0, [r7, 0x8] - ldr r5, [r0, 0x4] - ldrb r4, [r0] - adds r4, r5, r4 - lsls r4, 24 - lsrs r4, 24 - ldrb r0, [r0, 0x1] - adds r5, r0 - lsls r5, 24 - lsrs r5, 24 - movs r1, 0x12 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _0803BBE4 - mov r8, r0 - bl strcpy - ldr r6, _0803BBE8 - adds r0, r4, 0 - movs r1, 0x14 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 22 - adds r0, r6 - ldr r1, [r0] - add r0, sp, 0x4 - mov r2, r8 - bl sub_800D158 - ldr r3, [r7] - movs r4, 0 - str r4, [sp] - movs r0, 0xA - mov r1, r9 - add r2, sp, 0x4 - bl xxx_call_draw_string - movs r1, 0xC - add r9, r1 - ldr r1, _0803BBEC - movs r0, 0x3 - ands r5, r0 - lsls r5, 2 - adds r5, r1 - ldr r1, [r5] - add r0, sp, 0x4 - mov r2, r8 - bl sub_800D158 - ldr r3, [r7] - str r4, [sp] - b _0803BD32 - .align 2, 0 -_0803BBE4: .4byte gUnknown_202DF98 -_0803BBE8: .4byte gUnknown_80EAEB8 -_0803BBEC: .4byte gUnknown_80EB198 -_0803BBF0: - ldr r0, [r7, 0x8] - ldr r5, [r0, 0x4] - ldrb r4, [r0] - adds r4, r5, r4 - lsls r4, 24 - lsrs r4, 24 - ldrb r0, [r0, 0x1] - adds r5, r0 - lsls r5, 24 - lsrs r5, 24 - movs r1, 0x12 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _0803BC4C - mov r8, r0 - bl strcpy - ldr r6, _0803BC50 - adds r0, r4, 0 - movs r1, 0x6 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 22 - adds r0, r6 - ldr r1, [r0] - add r0, sp, 0x4 - mov r2, r8 - bl sub_800D158 - ldr r3, [r7] - movs r6, 0 - str r6, [sp] - movs r0, 0xA - mov r1, r9 - add r2, sp, 0x4 - bl xxx_call_draw_string - movs r1, 0xC - add r9, r1 - ldr r4, _0803BC54 - adds r0, r5, 0 - movs r1, 0x6 - b _0803BD1A - .align 2, 0 -_0803BC4C: .4byte gUnknown_202DF98 -_0803BC50: .4byte gUnknown_80EB220 -_0803BC54: .4byte gUnknown_80EB2F0 -_0803BC58: - ldr r0, [r7, 0x8] - ldr r5, [r0, 0x4] - ldrb r4, [r0] - adds r4, r5, r4 - lsls r4, 24 - lsrs r4, 24 - ldrb r0, [r0, 0x1] - adds r5, r0 - lsls r5, 24 - lsrs r5, 24 - movs r1, 0x12 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _0803BCB4 - mov r8, r0 - bl strcpy - ldr r6, _0803BCB8 - adds r0, r4, 0 - movs r1, 0x2D - bl __umodsi3 - lsls r0, 24 - lsrs r0, 22 - adds r0, r6 - ldr r1, [r0] - add r0, sp, 0x4 - mov r2, r8 - bl sub_800D158 - ldr r3, [r7] - movs r6, 0 - str r6, [sp] - movs r0, 0xA - mov r1, r9 - add r2, sp, 0x4 - bl xxx_call_draw_string - movs r1, 0xC - add r9, r1 - ldr r4, _0803BCBC - adds r0, r5, 0 - movs r1, 0xA - b _0803BD1A - .align 2, 0 -_0803BCB4: .4byte gUnknown_202DF98 -_0803BCB8: .4byte gUnknown_80E91D4 -_0803BCBC: .4byte gUnknown_80E9820 -_0803BCC0: - ldr r0, [r7, 0x8] - ldr r5, [r0, 0x4] - ldrb r4, [r0] - adds r4, r5, r4 - lsls r4, 24 - lsrs r4, 24 - ldrb r0, [r0, 0x1] - adds r5, r0 - lsls r5, 24 - lsrs r5, 24 - movs r1, 0x10 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r0, _0803BD78 - mov r8, r0 - bl strcpy - ldr r6, _0803BD7C - adds r0, r4, 0 - movs r1, 0xD - bl __umodsi3 - lsls r0, 24 - lsrs r0, 22 - adds r0, r6 - ldr r1, [r0] - add r0, sp, 0x4 - mov r2, r8 - bl sub_800D158 - ldr r3, [r7] - movs r6, 0 - str r6, [sp] - movs r0, 0xA - mov r1, r9 - add r2, sp, 0x4 - bl xxx_call_draw_string - movs r1, 0xC - add r9, r1 - ldr r4, _0803BD80 - adds r0, r5, 0 - movs r1, 0xD -_0803BD1A: - bl __umodsi3 - lsls r0, 24 - lsrs r0, 22 - adds r0, r4 - ldr r1, [r0] - add r0, sp, 0x4 - mov r2, r8 - bl sub_800D158 - ldr r3, [r7] - str r6, [sp] -_0803BD32: - movs r0, 0xA - mov r1, r9 - add r2, sp, 0x4 - bl xxx_call_draw_string - movs r0, 0xC - negs r0, r0 - add r9, r0 -_0803BD42: - movs r1, 0x1C - add r9, r1 - ldr r2, _0803BD84 - ldr r3, [r7] - movs r0, 0 - mov r8, r0 - str r0, [sp] - movs r0, 0xA - mov r1, r9 - bl xxx_call_draw_string - ldr r1, [r7, 0xC] - cmp r1, 0 - bne _0803BD88 - movs r1, 0x10 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r2, r0, 0 - ldr r3, [r7] - mov r0, r8 - str r0, [sp] - movs r0, 0x44 - mov r1, r9 - bl xxx_call_draw_string - b _0803BDBC - .align 2, 0 -_0803BD78: .4byte gUnknown_202DF98 -_0803BD7C: .4byte gUnknown_80E8DE4 -_0803BD80: .4byte gUnknown_80E8FB0 -_0803BD84: .4byte gUnknown_80E8AC8 -_0803BD88: - add r6, sp, 0x158 - adds r0, r6, 0 - movs r2, 0xA - bl sub_80922B4 - add r4, sp, 0x16C - movs r0, 0x10 - ldrsh r1, [r7, r0] - adds r0, r4, 0 - bl sub_808D930 - add r5, sp, 0x130 - ldr r1, _0803BDE8 - adds r0, r5, 0 - adds r2, r6, 0 - adds r3, r4, 0 - bl sub_800D158 - ldr r3, [r7] - mov r1, r8 - str r1, [sp] - movs r0, 0x44 - mov r1, r9 - adds r2, r5, 0 - bl xxx_call_draw_string -_0803BDBC: - movs r0, 0xC - add r9, r0 - ldr r2, _0803BDEC - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - mov r1, r9 - bl xxx_call_draw_string - adds r0, r7, 0 - adds r0, 0x42 - ldrb r1, [r0] - adds r5, r0, 0 - cmp r1, 0x6 - bhi _0803BEB8 - lsls r0, r1, 2 - ldr r1, _0803BDF0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803BDE8: .4byte gUnknown_80E8AD0 -_0803BDEC: .4byte gUnknown_80E8AE0 -_0803BDF0: .4byte _0803BDF4 - .align 2, 0 -_0803BDF4: - .4byte _0803BE10 - .4byte _0803BE30 - .4byte _0803BE18 - .4byte _0803BE48 - .4byte _0803BE80 - .4byte _0803BE60 - .4byte _0803BEB8 -_0803BE10: - ldr r2, _0803BE14 - b _0803BE4A - .align 2, 0 -_0803BE14: .4byte gUnknown_80E8AEC -_0803BE18: - ldr r4, _0803BE28 - ldrb r1, [r7, 0x14] - adds r0, r4, 0 - movs r2, 0 - bl sub_8090DC4 - ldr r1, _0803BE2C - b _0803BE94 - .align 2, 0 -_0803BE28: .4byte gUnknown_202DE58 -_0803BE2C: .4byte gUnknown_80E8AFC -_0803BE30: - ldr r4, _0803BE40 - ldrb r1, [r7, 0x14] - adds r0, r4, 0 - movs r2, 0 - bl sub_8090DC4 - ldr r1, _0803BE44 - b _0803BE94 - .align 2, 0 -_0803BE40: .4byte gUnknown_202DE58 -_0803BE44: .4byte gUnknown_80E8B10 -_0803BE48: - ldr r2, _0803BE5C -_0803BE4A: - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0x44 - mov r1, r9 - bl xxx_call_draw_string - b _0803BEC8 - .align 2, 0 -_0803BE5C: .4byte gUnknown_80E8B20 -_0803BE60: - movs r1, 0x12 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r4, _0803BE78 - adds r0, r4, 0 - bl strcpy - ldr r1, _0803BE7C - b _0803BE94 - .align 2, 0 -_0803BE78: .4byte gUnknown_202DF98 -_0803BE7C: .4byte gUnknown_80E8B2C -_0803BE80: - movs r1, 0x12 - ldrsh r0, [r7, r1] - bl sub_808D994 - adds r1, r0, 0 - ldr r4, _0803BEB0 - adds r0, r4, 0 - bl strcpy - ldr r1, _0803BEB4 -_0803BE94: - add r0, sp, 0x4 - adds r2, r4, 0 - bl sub_800D158 - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0x44 - mov r1, r9 - add r2, sp, 0x4 - bl xxx_call_draw_string - b _0803BEC8 - .align 2, 0 -_0803BEB0: .4byte gUnknown_202DF98 -_0803BEB4: .4byte gUnknown_80E8B40 -_0803BEB8: - ldr r2, _0803BEF8 - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0x44 - mov r1, r9 - bl xxx_call_draw_string -_0803BEC8: - movs r0, 0xC - add r9, r0 - ldr r2, _0803BEFC - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - mov r1, r9 - bl xxx_call_draw_string - ldrb r0, [r5] - cmp r0, 0x1 - bne _0803BF04 - add r4, sp, 0x180 - ldr r1, [r7, 0x8] - adds r0, r4, 0 - bl sub_8090228 - ldr r1, _0803BF00 - add r0, sp, 0x4 - adds r2, r4, 0 - bl sub_800D158 - b _0803BF0C - .align 2, 0 -_0803BEF8: .4byte gUnknown_80E8B50 -_0803BEFC: .4byte gUnknown_80E8B60 -_0803BF00: .4byte gUnknown_80E8884 -_0803BF04: - ldr r1, [r7, 0x8] - add r0, sp, 0x4 - bl sub_8090228 -_0803BF0C: - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0x44 - mov r1, r9 - add r2, sp, 0x4 - bl xxx_call_draw_string - ldrb r0, [r5] - cmp r0, 0 - bne _0803BF28 - ldr r0, [r7, 0x8] - movs r1, 0 - b _0803BF2E -_0803BF28: - ldr r0, [r7, 0x8] - ldr r1, [r7, 0x54] - ldrb r1, [r1, 0x1] -_0803BF2E: - bl sub_803C1D0 - lsls r0, 24 - lsrs r4, r0, 24 - movs r1, 0xC - add r9, r1 - ldr r2, _0803BF88 - ldr r3, [r7] - movs r6, 0 - str r6, [sp] - movs r0, 0xA - mov r1, r9 - bl xxx_call_draw_string - adds r0, r4, 0 - bl sub_803C1F0 - adds r2, r0, 0 - ldr r3, [r7] - str r6, [sp] - movs r0, 0x44 - mov r1, r9 - bl xxx_call_draw_string - movs r0, 0xC - add r9, r0 - ldr r2, _0803BF8C - ldr r3, [r7] - str r6, [sp] - movs r0, 0xA - mov r1, r9 - bl xxx_call_draw_string - adds r0, r7, 0 - adds r0, 0x2E - ldrb r2, [r0] - adds r5, r0, 0 - cmp r2, 0x4 - bhi _0803C02C - lsls r0, r2, 2 - ldr r1, _0803BF90 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803BF88: .4byte gUnknown_80E8B68 -_0803BF8C: .4byte gUnknown_80E8B74 -_0803BF90: .4byte _0803BF94 - .align 2, 0 -_0803BF94: - .4byte _0803BFA8 - .4byte _0803BFBC - .4byte _0803BFD0 - .4byte _0803BFD0 - .4byte _0803C00C -_0803BFA8: - ldr r1, _0803BFB8 - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - ldr r2, [r7, 0x30] - add r0, sp, 0x4 - b _0803BFEE - .align 2, 0 -_0803BFB8: .4byte gUnknown_80E8C48 -_0803BFBC: - ldr r1, _0803BFCC - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - ldr r2, [r7, 0x30] - add r0, sp, 0x4 - b _0803BFEE - .align 2, 0 -_0803BFCC: .4byte gUnknown_80E8C48 -_0803BFD0: - ldr r4, _0803C004 - adds r0, r7, 0 - adds r0, 0x34 - ldrb r1, [r0] - adds r0, r4, 0 - movs r2, 0 - bl sub_8090DC4 - ldr r1, _0803C008 - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - add r0, sp, 0x4 - adds r2, r4, 0 -_0803BFEE: - bl sub_800D158 - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0x44 - mov r1, r9 - add r2, sp, 0x4 - bl xxx_call_draw_string - b _0803C040 - .align 2, 0 -_0803C004: .4byte gUnknown_202DE58 -_0803C008: .4byte gUnknown_80E8C48 -_0803C00C: - ldr r1, _0803C028 - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0x44 - mov r1, r9 - bl xxx_call_draw_string - b _0803C040 - .align 2, 0 -_0803C028: .4byte gUnknown_80E8C48 -_0803C02C: - ldr r1, _0803C0D4 - lsls r0, r2, 2 - adds r0, r1 - ldr r2, [r0] - ldr r3, [r7] - str r6, [sp] - movs r0, 0x44 - mov r1, r9 - bl xxx_call_draw_string -_0803C040: - movs r1, 0xC - add r9, r1 - adds r0, r7, 0 - adds r0, 0x41 - ldrb r1, [r0] - adds r0, r1, 0 - subs r0, 0x9 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bls _0803C0C6 - cmp r1, 0x3 - beq _0803C0C6 - ldr r0, [r7, 0x54] - ldrb r0, [r0] - cmp r0, 0x5 - bne _0803C0C6 - ldr r2, _0803C0D8 - ldr r3, [r7] - movs r0, 0 - str r0, [sp] - movs r0, 0xA - mov r1, r9 - bl xxx_call_draw_string - add r0, sp, 0x1E4 - ldr r1, [r7, 0x54] - bl sub_803D414 - movs r4, 0 -_0803C07C: - cmp r4, 0xC - bne _0803C084 - movs r0, 0xC - add r9, r0 -_0803C084: - movs r5, 0x7 - cmp r4, 0x3 - ble _0803C09C - movs r5, 0x6 - cmp r4, 0x7 - ble _0803C09C - movs r5, 0x7 - cmp r4, 0xF - ble _0803C09C - cmp r4, 0x13 - bgt _0803C09C - movs r5, 0x6 -_0803C09C: - adds r0, r4, 0 - movs r1, 0xC - bl __modsi3 - adds r1, r0, 0 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 1 - adds r0, 0x54 - add r1, sp, 0x1E4 - adds r1, r4 - ldrb r2, [r1] - ldr r1, [r7] - str r1, [sp] - mov r1, r9 - adds r3, r5, 0 - bl sub_8012C60 - adds r4, 0x1 - cmp r4, 0x17 - ble _0803C07C -_0803C0C6: - add sp, 0x1FC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803C0D4: .4byte gUnknown_80E8C48 -_0803C0D8: .4byte gUnknown_80E8B7C - thumb_func_end sub_803B98C - - thumb_func_start sub_803C0DC -sub_803C0DC: - push {lr} - lsls r0, 16 - asrs r0, 16 - bl sub_808E770 - lsls r0, 16 - asrs r2, r0, 16 - ldr r1, _0803C0F0 - b _0803C102 - .align 2, 0 -_0803C0F0: .4byte gUnknown_80E80E0 -_0803C0F4: - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, r2 - bne _0803C100 - movs r0, 0 - b _0803C10C -_0803C100: - adds r1, 0x2 -_0803C102: - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - bne _0803C0F4 - movs r0, 0x1 -_0803C10C: - pop {r1} - bx r1 - thumb_func_end sub_803C0DC - - thumb_func_start sub_803C110 -sub_803C110: - push {r4,lr} - lsls r0, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_8098134 - lsls r0, 24 - cmp r0, 0 - beq _0803C180 - adds r0, r4, 0 - bl sub_808E770 - lsls r0, 16 - asrs r0, 16 - cmp r4, r0 - bne _0803C180 - adds r0, r4, 0 - bl sub_803C0DC - lsls r0, 24 - cmp r0, 0 - beq _0803C180 - movs r0, 0x6 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _0803C188 - ldr r1, _0803C184 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _0803C168 - adds r2, r1, 0 -_0803C154: - movs r3, 0 - ldrsh r0, [r2, r3] - cmp r0, r4 - beq _0803C180 - adds r1, 0x2 - adds r2, 0x2 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - bne _0803C154 -_0803C168: - bl sub_808D33C - movs r1, 0x8 - ldrsh r0, [r0, r1] - cmp r0, r4 - beq _0803C180 - bl sub_808D378 - movs r2, 0x8 - ldrsh r0, [r0, r2] - cmp r0, r4 - bne _0803C188 -_0803C180: - movs r0, 0 - b _0803C18A - .align 2, 0 -_0803C184: .4byte gUnknown_80E8126 -_0803C188: - movs r0, 0x1 -_0803C18A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_803C110 - - thumb_func_start sub_803C190 -sub_803C190: - lsls r0, 24 - ldr r1, _0803C19C - lsrs r0, 21 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_0803C19C: .4byte gUnknown_80EBA18 - thumb_func_end sub_803C190 - - thumb_func_start sub_803C1A0 -sub_803C1A0: - lsls r0, 24 - ldr r1, _0803C1B0 - lsrs r0, 21 - adds r1, 0x4 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_0803C1B0: .4byte gUnknown_80EBA18 - thumb_func_end sub_803C1A0 - - thumb_func_start sub_803C1B4 -sub_803C1B4: - push {r4,lr} - lsls r4, r1, 24 - lsrs r4, 24 - bl sub_80908D8 - cmp r4, 0x2 - bne _0803C1C4 - adds r0, 0x2 -_0803C1C4: - cmp r0, 0xF - ble _0803C1CA - movs r0, 0xF -_0803C1CA: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_803C1B4 - - thumb_func_start sub_803C1D0 -sub_803C1D0: - push {lr} - lsls r1, 24 - lsrs r1, 24 - bl sub_803C1B4 - adds r1, r0, 0 - lsrs r0, r1, 31 - adds r0, r1, r0 - asrs r1, r0, 1 - lsls r0, r1, 24 - lsrs r0, 24 - cmp r0, 0x6 - bls _0803C1EC - movs r0, 0x6 -_0803C1EC: - pop {r1} - bx r1 - thumb_func_end sub_803C1D0 - - thumb_func_start sub_803C1F0 -sub_803C1F0: - lsls r0, 24 - ldr r1, _0803C1FC - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_0803C1FC: .4byte gUnknown_80E8BF8 - thumb_func_end sub_803C1F0 - - thumb_func_start sub_803C200 -sub_803C200: - push {lr} - lsls r1, 24 - lsrs r1, 24 - bl sub_803C1B4 - ldr r1, _0803C218 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - pop {r1} - bx r1 - .align 2, 0 -_0803C218: .4byte gUnknown_80E80A0 - thumb_func_end sub_803C200 - - thumb_func_start sub_803C21C -sub_803C21C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r6, 0x4 - ldrb r1, [r6, 0x1] - bl sub_803C1D0 - lsls r0, 24 - lsrs r2, r0, 24 - movs r0, 0 - str r0, [r4, 0x18] - movs r3, 0 - movs r1, 0x2 - adds r0, r4, 0 - adds r0, 0x1E -_0803C23E: - strb r3, [r0] - subs r0, 0x1 - subs r1, 0x1 - cmp r1, 0 - bge _0803C23E - adds r0, r4, 0 - adds r0, 0x20 - movs r1, 0 - strb r1, [r0] - movs r1, 0xA - strb r1, [r4, 0x1F] - ldrb r1, [r6, 0x11] - adds r3, r0, 0 - cmp r1, 0x9 - bhi _0803C354 - lsls r0, r1, 2 - ldr r1, _0803C268 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803C268: .4byte _0803C26C - .align 2, 0 -_0803C26C: - .4byte _0803C294 - .4byte _0803C2A2 - .4byte _0803C2B4 - .4byte _0803C2BE - .4byte _0803C354 - .4byte _0803C2E0 - .4byte _0803C2EE - .4byte _0803C300 - .4byte _0803C30A - .4byte _0803C34A -_0803C294: - movs r0, 0 - strb r0, [r4, 0x16] - adds r1, r2, 0x1 - movs r0, 0x64 - muls r0, r1 - str r0, [r4, 0x18] - b _0803C358 -_0803C2A2: - movs r0, 0x1 - strb r0, [r4, 0x16] - adds r1, r2, 0x1 - movs r0, 0x64 - muls r0, r1 - str r0, [r4, 0x18] - ldrb r0, [r6, 0x12] - strb r0, [r4, 0x1C] - b _0803C358 -_0803C2B4: - movs r0, 0x2 - strb r0, [r4, 0x16] - ldrb r0, [r6, 0x12] - strb r0, [r4, 0x1C] - b _0803C358 -_0803C2BE: - movs r0, 0x3 - strb r0, [r4, 0x16] - ldrb r0, [r6, 0x12] - strb r0, [r4, 0x1C] - adds r5, r6, 0x4 - adds r7, r4, 0 - adds r7, 0x1D -_0803C2CC: - ldrb r1, [r6, 0x1] - adds r0, r5, 0 - adds r2, r7, 0 - bl sub_803C37C - ldrb r0, [r4, 0x1C] - ldrb r1, [r4, 0x1D] - cmp r0, r1 - beq _0803C2CC - b _0803C35A -_0803C2E0: - movs r0, 0 - strb r0, [r4, 0x16] - adds r1, r2, 0x1 - movs r0, 0xC8 - muls r0, r1 - str r0, [r4, 0x18] - b _0803C358 -_0803C2EE: - movs r0, 0x1 - strb r0, [r4, 0x16] - adds r1, r2, 0x1 - movs r0, 0xC8 - muls r0, r1 - str r0, [r4, 0x18] - ldrb r0, [r6, 0x12] - strb r0, [r4, 0x1C] - b _0803C358 -_0803C300: - movs r0, 0x2 - strb r0, [r4, 0x16] - ldrb r0, [r6, 0x12] - strb r0, [r4, 0x1C] - b _0803C358 -_0803C30A: - movs r0, 0x3 - strb r0, [r4, 0x16] - ldrb r0, [r6, 0x12] - strb r0, [r4, 0x1C] - adds r5, r6, 0x4 - adds r7, r4, 0 - adds r7, 0x1D - movs r0, 0x1E - adds r0, r4 - mov r8, r0 -_0803C31E: - ldrb r1, [r6, 0x1] - adds r0, r5, 0 - adds r2, r7, 0 - bl sub_803C37C - ldrb r0, [r4, 0x1C] - ldrb r1, [r4, 0x1D] - cmp r0, r1 - beq _0803C31E -_0803C330: - ldrb r1, [r6, 0x1] - adds r0, r5, 0 - mov r2, r8 - bl sub_803C37C - ldrb r0, [r4, 0x1C] - ldrb r1, [r4, 0x1E] - cmp r0, r1 - beq _0803C330 - ldrb r0, [r4, 0x1D] - cmp r0, r1 - beq _0803C330 - b _0803C35A -_0803C34A: - movs r0, 0x4 - strb r0, [r4, 0x16] - ldrb r0, [r6, 0x13] - strb r0, [r3] - b _0803C358 -_0803C354: - movs r0, 0x5 - strb r0, [r4, 0x16] -_0803C358: - adds r5, r6, 0x4 -_0803C35A: - movs r0, 0xC - ldrsh r1, [r6, r0] - adds r0, r4, 0 - bl sub_808D8E0 - ldrh r0, [r6, 0xC] - strh r0, [r4, 0x14] - ldrb r1, [r6, 0x1] - adds r0, r5, 0 - bl sub_803C200 - str r0, [r4, 0x24] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_803C21C - - thumb_func_start sub_803C37C -sub_803C37C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - mov r8, r2 - lsls r1, 24 - lsrs r1, 24 - bl sub_803C1B4 - adds r7, r0, 0 - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8090910 -_0803C398: - movs r5, 0 - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8090910 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xEA - bne _0803C3BA - movs r0, 0 - movs r1, 0x47 - movs r2, 0x1 - bl sub_8001784 - negs r1, r0 - orrs r1, r0 - lsrs r5, r1, 31 -_0803C3BA: - cmp r4, 0xEB - bne _0803C3CE - movs r0, 0 - movs r1, 0x47 - movs r2, 0 - bl sub_8001784 - cmp r0, 0 - beq _0803C3CE - movs r5, 0x1 -_0803C3CE: - cmp r5, 0 - bne _0803C398 - mov r0, r8 - strb r4, [r0] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_803C37C - - thumb_func_start sub_803C3E0 -sub_803C3E0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x54 - adds r7, r0, 0 - movs r6, 0 - ldr r5, _0803C42C - movs r4, 0 - mov r8, sp -_0803C3F2: - movs r1, 0 - ldrsh r0, [r5, r1] - bl sub_803C110 - lsls r0, 24 - cmp r0, 0 - beq _0803C41A - movs r1, 0x2 - ldrsh r0, [r5, r1] - bl sub_803C110 - lsls r0, 24 - cmp r0, 0 - beq _0803C41A - mov r0, r8 - adds r0, 0x4 - mov r8, r0 - subs r0, 0x4 - stm r0!, {r4} - adds r6, 0x1 -_0803C41A: - adds r5, 0x8 - adds r4, 0x1 - cmp r4, 0x14 - ble _0803C3F2 - ldr r5, _0803C42C - cmp r6, 0 - bne _0803C430 - movs r0, 0 - b _0803C44E - .align 2, 0 -_0803C42C: .4byte gUnknown_80E9920 -_0803C430: - adds r0, r6, 0 - bl RandomCapped - lsls r0, 2 - add r0, sp - ldr r4, [r0] - lsls r0, r4, 3 - adds r5, r0, r5 - ldrh r0, [r5] - strh r0, [r7, 0xC] - ldrh r0, [r5, 0x2] - strh r0, [r7, 0xE] - movs r0, 0x7 - strb r0, [r7, 0x2] - movs r0, 0x1 -_0803C44E: - add sp, 0x54 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_803C3E0 - - thumb_func_start sub_803C45C -sub_803C45C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xB4 - adds r7, r0, 0 - movs r6, 0 - ldr r5, _0803C4CC - movs r4, 0 - mov r8, sp -_0803C46E: - movs r1, 0 - ldrsh r0, [r5, r1] - bl sub_803C110 - lsls r0, 24 - cmp r0, 0 - beq _0803C496 - movs r1, 0x2 - ldrsh r0, [r5, r1] - bl sub_803C110 - lsls r0, 24 - cmp r0, 0 - beq _0803C496 - mov r0, r8 - adds r0, 0x4 - mov r8, r0 - subs r0, 0x4 - stm r0!, {r4} - adds r6, 0x1 -_0803C496: - adds r5, 0xC - adds r4, 0x1 - cmp r4, 0x2C - ble _0803C46E - ldr r5, _0803C4CC - cmp r6, 0 - beq _0803C4E0 - adds r0, r6, 0 - bl RandomCapped - lsls r0, 2 - add r0, sp - ldr r4, [r0] - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 2 - adds r5, r0, r5 - bl Random - movs r1, 0x10 - ands r1, r0 - cmp r1, 0 - beq _0803C4D0 - ldrh r0, [r5] - strh r0, [r7, 0xC] - ldrh r0, [r5, 0x2] - b _0803C4D6 - .align 2, 0 -_0803C4CC: .4byte gUnknown_80E9F8C -_0803C4D0: - ldrh r0, [r5, 0x2] - strh r0, [r7, 0xC] - ldrh r0, [r5] -_0803C4D6: - strh r0, [r7, 0xE] - movs r0, 0x8 - strb r0, [r7, 0x2] - movs r0, 0x1 - b _0803C4E2 -_0803C4E0: - movs r0, 0 -_0803C4E2: - add sp, 0xB4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_803C45C - - thumb_func_start sub_803C4F0 -sub_803C4F0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x18 - adds r7, r0, 0 - movs r6, 0 - ldr r5, _0803C55C - movs r4, 0 - mov r8, sp -_0803C502: - movs r1, 0 - ldrsh r0, [r5, r1] - bl sub_803C110 - lsls r0, 24 - cmp r0, 0 - beq _0803C52A - movs r1, 0x2 - ldrsh r0, [r5, r1] - bl sub_803C110 - lsls r0, 24 - cmp r0, 0 - beq _0803C52A - mov r0, r8 - adds r0, 0x4 - mov r8, r0 - subs r0, 0x4 - stm r0!, {r4} - adds r6, 0x1 -_0803C52A: - adds r5, 0x4 - adds r4, 0x1 - cmp r4, 0x5 - ble _0803C502 - ldr r5, _0803C55C - cmp r6, 0 - beq _0803C570 - adds r0, r6, 0 - bl RandomCapped - lsls r0, 2 - add r0, sp - ldr r4, [r0] - lsls r0, r4, 2 - adds r5, r0, r5 - bl Random - movs r1, 0x10 - ands r1, r0 - cmp r1, 0 - beq _0803C560 - ldrh r0, [r5] - strh r0, [r7, 0xC] - ldrh r0, [r5, 0x2] - b _0803C566 - .align 2, 0 -_0803C55C: .4byte gUnknown_80E8168 -_0803C560: - ldrh r0, [r5, 0x2] - strh r0, [r7, 0xC] - ldrh r0, [r5] -_0803C566: - strh r0, [r7, 0xE] - movs r0, 0x9 - strb r0, [r7, 0x2] - movs r0, 0x1 - b _0803C572 -_0803C570: - movs r0, 0 -_0803C572: - add sp, 0x18 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_803C4F0 - - thumb_func_start sub_803C580 -sub_803C580: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x54 - adds r6, r0, 0 - movs r7, 0 - ldr r5, _0803C5D8 - movs r0, 0x6 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _0803C5D2 - movs r4, 0 - mov r8, sp -_0803C59E: - movs r1, 0 - ldrsh r0, [r5, r1] - bl sub_803C110 - lsls r0, 24 - cmp r0, 0 - beq _0803C5C6 - ldrb r0, [r6, 0x4] - ldrb r1, [r5, 0x2] - bl sub_8091E60 - lsls r0, 24 - cmp r0, 0 - beq _0803C5C6 - mov r0, r8 - adds r0, 0x4 - mov r8, r0 - subs r0, 0x4 - stm r0!, {r4} - adds r7, 0x1 -_0803C5C6: - adds r5, 0x4 - adds r4, 0x1 - cmp r4, 0x14 - ble _0803C59E - cmp r7, 0 - bne _0803C5DC -_0803C5D2: - movs r0, 0 - b _0803C600 - .align 2, 0 -_0803C5D8: .4byte gUnknown_80E8180 -_0803C5DC: - adds r0, r7, 0 - bl RandomCapped - lsls r0, 2 - add r0, sp - ldr r4, [r0] - lsls r1, r4, 2 - ldr r0, _0803C60C - adds r5, r1, r0 - ldrh r0, [r5] - strh r0, [r6, 0xC] - ldrh r0, [r5] - strh r0, [r6, 0xE] - ldrb r0, [r5, 0x2] - strb r0, [r6, 0x10] - movs r0, 0x5 - strb r0, [r6, 0x2] - movs r0, 0x1 -_0803C600: - add sp, 0x54 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0803C60C: .4byte gUnknown_80E8180 - thumb_func_end sub_803C580 - - thumb_func_start sub_803C610 -sub_803C610: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _0803C660 - add sp, r4 - adds r6, r0, 0 - movs r7, 0 - ldr r4, _0803C664 - movs r5, 0 - mov r8, sp -_0803C624: - movs r1, 0 - ldrsh r0, [r4, r1] - bl sub_803C110 - lsls r0, 24 - cmp r0, 0 - beq _0803C64C - ldrb r0, [r6, 0x4] - ldrb r1, [r4, 0x2] - bl sub_8091E60 - lsls r0, 24 - cmp r0, 0 - beq _0803C64C - mov r0, r8 - adds r0, 0x4 - mov r8, r0 - subs r0, 0x4 - stm r0!, {r5} - adds r7, 0x1 -_0803C64C: - adds r4, 0x4 - adds r5, 0x1 - ldr r0, _0803C668 - cmp r5, r0 - ble _0803C624 - cmp r7, 0 - bne _0803C66C - movs r0, 0 - b _0803C690 - .align 2, 0 -_0803C660: .4byte 0xfffff9f8 -_0803C664: .4byte gUnknown_80E81D4 -_0803C668: .4byte 0x00000181 -_0803C66C: - adds r0, r7, 0 - bl RandomCapped - lsls r0, 2 - add r0, sp - ldr r5, [r0] - lsls r1, r5, 2 - ldr r0, _0803C6A0 - adds r4, r1, r0 - ldrh r0, [r4] - strh r0, [r6, 0xC] - ldrh r0, [r4] - strh r0, [r6, 0xE] - ldrb r0, [r4, 0x2] - strb r0, [r6, 0x10] - movs r0, 0x6 - strb r0, [r6, 0x2] - movs r0, 0x1 -_0803C690: - movs r3, 0xC1 - lsls r3, 3 - add sp, r3 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0803C6A0: .4byte gUnknown_80E81D4 - thumb_func_end sub_803C610 - - thumb_func_start sub_803C6A4 -sub_803C6A4: - push {r4,lr} - ldr r4, _0803C6CC - movs r0, 0xC0 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - adds r0, 0xB4 - bl sub_801317C - bl sub_803C6D0 - movs r0, 0x1 - bl sub_8099690 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0803C6CC: .4byte gUnknown_203B400 - thumb_func_end sub_803C6A4 - - thumb_func_start sub_803C6D0 -sub_803C6D0: - push {r4,r5,lr} - ldr r4, _0803C72C - ldr r0, [r4] - adds r0, 0x4 - bl sub_8001024 - ldr r1, [r4] - movs r0, 0 - str r0, [r1] - str r0, [r1, 0x34] - str r0, [r1, 0x38] - movs r2, 0 - movs r5, 0 - adds r3, r4, 0 -_0803C6EC: - ldr r0, [r4] - lsls r1, r2, 2 - adds r0, 0x44 - adds r0, r1 - str r5, [r0] - adds r2, 0x1 - cmp r2, 0xC - ble _0803C6EC - ldr r1, [r3] - movs r0, 0 - str r0, [r1, 0x3C] - movs r2, 0 - adds r4, r3, 0 - movs r1, 0 -_0803C708: - ldr r0, [r4] - adds r0, 0x78 - adds r0, r2 - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x36 - ble _0803C708 - ldr r0, [r3] - adds r0, 0x40 - movs r1, 0 - strb r1, [r0] - ldr r0, [r3] - adds r0, 0xB0 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803C72C: .4byte gUnknown_203B400 - thumb_func_end sub_803C6D0 - - thumb_func_start sub_803C730 -sub_803C730: - push {r4,r5,lr} - ldr r0, _0803C750 - ldr r1, [r0] - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r0, [r1, 0x34] - cmp r0, 0xF - bls _0803C744 - b _0803C848 -_0803C744: - lsls r0, 2 - ldr r1, _0803C754 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0803C750: .4byte gUnknown_203B400 -_0803C754: .4byte _0803C758 - .align 2, 0 -_0803C758: - .4byte _0803C798 - .4byte _0803C79E - .4byte _0803C7A4 - .4byte _0803C7AA - .4byte _0803C7B0 - .4byte _0803C7B6 - .4byte _0803C7BC - .4byte _0803C7C2 - .4byte _0803C7C8 - .4byte _0803C7CE - .4byte _0803C7D4 - .4byte _0803C7DA - .4byte _0803C7E0 - .4byte _0803C7E6 - .4byte _0803C7EC - .4byte _0803C7F2 -_0803C798: - bl sub_803C870 - b _0803C848 -_0803C79E: - bl sub_803C908 - b _0803C848 -_0803C7A4: - bl sub_803C920 - b _0803C848 -_0803C7AA: - bl sub_803C98C - b _0803C848 -_0803C7B0: - bl sub_803C9D8 - b _0803C848 -_0803C7B6: - bl sub_803CA54 - b _0803C848 -_0803C7BC: - bl sub_803CA8C - b _0803C848 -_0803C7C2: - bl sub_803CAAC - b _0803C848 -_0803C7C8: - bl sub_803CAD4 - b _0803C848 -_0803C7CE: - bl sub_803CAF4 - b _0803C848 -_0803C7D4: - bl sub_803CB14 - b _0803C848 -_0803C7DA: - bl sub_803CB5C - b _0803C848 -_0803C7E0: - bl sub_803CB7C - b _0803C848 -_0803C7E6: - bl sub_803CBB0 - b _0803C848 -_0803C7EC: - bl sub_803CBE4 - b _0803C848 -_0803C7F2: - bl Random - ldr r4, _0803C844 - ldr r1, [r4] - ldr r1, [r1] - adds r5, r0, 0 - muls r5, r1 - bl Random - bl sub_8094D28 - movs r1, 0 - ldr r0, [r4] - adds r2, r0, 0 - adds r2, 0x44 -_0803C810: - ldm r2!, {r0} - adds r0, r1 - adds r0, 0x3 - muls r5, r0 - adds r1, 0x1 - cmp r1, 0xC - ble _0803C810 - bl sub_8094E4C - adds r5, r0 - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - bne _0803C838 - adds r4, r5, 0 -_0803C82E: - bl sub_8094E4C - adds r5, r0 - cmp r5, r4 - beq _0803C82E -_0803C838: - adds r0, r5, 0 - bl sub_8011C40 - movs r0, 0x3 - b _0803C84A - .align 2, 0 -_0803C844: .4byte gUnknown_203B400 -_0803C848: - movs r0, 0 -_0803C84A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_803C730 - - thumb_func_start sub_803C850 -sub_803C850: - push {r4,lr} - ldr r4, _0803C86C - ldr r0, [r4] - adds r0, 0x4 - bl sub_8001044 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803C86C: .4byte gUnknown_203B400 - thumb_func_end sub_803C850 - - thumb_func_start sub_803C870 -sub_803C870: - push {r4-r6,lr} - sub sp, 0x14 - ldr r5, _0803C8A4 - ldr r1, [r5] - ldr r0, [r1, 0x38] - adds r0, 0x1 - str r0, [r1, 0x38] - cmp r0, 0x8 - ble _0803C8B4 - ldr r0, _0803C8A8 - ldr r3, _0803C8AC - movs r1, 0 - str r1, [sp] - movs r4, 0x3 - str r4, [sp, 0x4] - str r1, [sp, 0x8] - str r1, [sp, 0xC] - ldr r1, _0803C8B0 - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0 - bl sub_8014248 - ldr r0, [r5] - str r4, [r0, 0x34] - b _0803C8F8 - .align 2, 0 -_0803C8A4: .4byte gUnknown_203B400 -_0803C8A8: .4byte gUnknown_80F273C -_0803C8AC: .4byte gUnknown_80F275C -_0803C8B0: .4byte 0x00000101 -_0803C8B4: - adds r4, r5, 0 -_0803C8B6: - movs r0, 0x37 - bl RandomCapped - ldr r1, [r4] - str r0, [r1, 0x3C] - adds r1, 0x78 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x1 - beq _0803C8B6 - ldr r2, _0803C900 - ldr r1, _0803C904 - ldr r0, [r1] - ldr r0, [r0, 0x3C] - adds r0, r2 - ldrb r4, [r0] - movs r3, 0 - adds r6, r1, 0 - movs r5, 0x1 -_0803C8DC: - adds r0, r3, r2 - ldrb r0, [r0] - cmp r0, r4 - bne _0803C8EC - ldr r0, [r1] - adds r0, 0x78 - adds r0, r3 - strb r5, [r0] -_0803C8EC: - adds r3, 0x1 - cmp r3, 0x36 - ble _0803C8DC - ldr r1, [r6] - movs r0, 0x1 - str r0, [r1, 0x34] -_0803C8F8: - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0803C900: .4byte gUnknown_80F2704 -_0803C904: .4byte gUnknown_203B400 - thumb_func_end sub_803C870 - - thumb_func_start sub_803C908 -sub_803C908: - push {lr} - bl sub_803CC04 - ldr r0, _0803C91C - ldr r1, [r0] - movs r0, 0x2 - str r0, [r1, 0x34] - pop {r0} - bx r0 - .align 2, 0 -_0803C91C: .4byte gUnknown_203B400 - thumb_func_end sub_803C908 - - thumb_func_start sub_803C920 -sub_803C920: - push {r4-r6,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803C97C - ldr r3, [sp] - cmp r3, 0x63 - bne _0803C944 - ldr r0, _0803C940 - ldr r1, [r0] - movs r0, 0x37 - str r0, [r1, 0x3C] - movs r0, 0x1 - b _0803C97A - .align 2, 0 -_0803C940: .4byte gUnknown_203B400 -_0803C944: - ldr r1, _0803C984 - ldr r2, _0803C988 - ldr r0, [r2] - ldr r0, [r0, 0x3C] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r4, [r0, 0x8] - lsls r0, r3, 4 - adds r4, r0 - movs r3, 0 - adds r6, r2, 0 - adds r5, r6, 0 -_0803C95E: - ldr r1, [r5] - lsls r0, r3, 2 - adds r1, 0x44 - adds r1, r0 - adds r0, r4, r3 - ldrb r2, [r0] - ldr r0, [r1] - adds r0, r2 - str r0, [r1] - adds r3, 0x1 - cmp r3, 0xC - ble _0803C95E - ldr r1, [r6] - movs r0, 0 -_0803C97A: - str r0, [r1, 0x34] -_0803C97C: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0803C984: .4byte gUnknown_80F2624 -_0803C988: .4byte gUnknown_203B400 - thumb_func_end sub_803C920 - - thumb_func_start sub_803C98C -sub_803C98C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803C9CA - ldr r1, [sp] - cmp r1, 0 - bne _0803C9AC - ldr r0, _0803C9A8 - ldr r0, [r0] - adds r0, 0xB0 - b _0803C9B4 - .align 2, 0 -_0803C9A8: .4byte gUnknown_203B400 -_0803C9AC: - ldr r0, _0803C9D0 - ldr r0, [r0] - adds r0, 0xB0 - movs r1, 0x1 -_0803C9B4: - str r1, [r0] - ldr r0, _0803C9D4 - ldr r0, [r0] - strb r1, [r0, 0xB] - movs r0, 0 - bl sub_8099690 - ldr r0, _0803C9D0 - ldr r1, [r0] - movs r0, 0x4 - str r0, [r1, 0x34] -_0803C9CA: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0803C9D0: .4byte gUnknown_203B400 -_0803C9D4: .4byte gUnknown_203B46C - thumb_func_end sub_803C98C - - thumb_func_start sub_803C9D8 -sub_803C9D8: - push {r4-r7,lr} - movs r0, 0xD - bl RandomCapped - ldr r2, _0803CA4C - ldr r1, [r2] - adds r1, 0x40 - strb r0, [r1] - ldr r0, [r2] - adds r0, 0x40 - ldrb r3, [r0] - adds r7, r2, 0 - movs r5, 0xB -_0803C9F2: - adds r3, 0x1 - cmp r3, 0xC - ble _0803C9FA - movs r3, 0 -_0803C9FA: - ldr r0, [r7] - lsls r2, r3, 2 - adds r1, r0, 0 - adds r1, 0x44 - adds r2, r1, r2 - adds r4, r0, 0 - adds r4, 0x40 - ldrb r0, [r4] - lsls r0, 2 - adds r1, r0 - ldr r2, [r2] - ldr r0, [r1] - ldr r6, _0803CA4C - cmp r2, r0 - ble _0803CA1A - strb r3, [r4] -_0803CA1A: - subs r5, 0x1 - cmp r5, 0 - bge _0803C9F2 - ldr r3, [r6] - ldr r2, _0803CA50 - adds r0, r3, 0 - adds r0, 0xB0 - ldr r1, [r0] - lsls r1, 1 - subs r0, 0x70 - ldrb r0, [r0] - lsls r0, 2 - adds r1, r0 - adds r1, r2 - ldrh r0, [r1] - strh r0, [r3, 0x8] - bl sub_803CC40 - ldr r1, [r6] - movs r0, 0x5 - str r0, [r1, 0x34] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803CA4C: .4byte gUnknown_203B400 -_0803CA50: .4byte gUnknown_80F278E - thumb_func_end sub_803C9D8 - - thumb_func_start sub_803CA54 -sub_803CA54: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803CA7A - ldr r0, _0803CA80 - ldr r3, _0803CA84 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - bl sub_803CC80 - ldr r0, _0803CA88 - ldr r1, [r0] - movs r0, 0x6 - str r0, [r1, 0x34] -_0803CA7A: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0803CA80: .4byte gUnknown_80F27C4 -_0803CA84: .4byte 0x00000101 -_0803CA88: .4byte gUnknown_203B400 - thumb_func_end sub_803CA54 - - thumb_func_start sub_803CA8C -sub_803CA8C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803CAA2 - ldr r0, _0803CAA8 - ldr r1, [r0] - movs r0, 0x7 - str r0, [r1, 0x34] -_0803CAA2: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0803CAA8: .4byte gUnknown_203B400 - thumb_func_end sub_803CA8C - - thumb_func_start sub_803CAAC -sub_803CAAC: - push {lr} - ldr r0, _0803CAC8 - ldr r3, _0803CACC - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - ldr r0, _0803CAD0 - ldr r1, [r0] - movs r0, 0x8 - str r0, [r1, 0x34] - pop {r0} - bx r0 - .align 2, 0 -_0803CAC8: .4byte gUnknown_80F27DC -_0803CACC: .4byte 0x00000301 -_0803CAD0: .4byte gUnknown_203B400 - thumb_func_end sub_803CAAC - - thumb_func_start sub_803CAD4 -sub_803CAD4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803CAEA - ldr r0, _0803CAF0 - ldr r1, [r0] - movs r0, 0x9 - str r0, [r1, 0x34] -_0803CAEA: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0803CAF0: .4byte gUnknown_203B400 - thumb_func_end sub_803CAD4 - - thumb_func_start sub_803CAF4 -sub_803CAF4: - push {r4,lr} - ldr r4, _0803CB10 - ldr r0, [r4] - movs r1, 0x8 - ldrsh r0, [r0, r1] - bl sub_803CD08 - ldr r1, [r4] - movs r0, 0xA - str r0, [r1, 0x34] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803CB10: .4byte gUnknown_203B400 - thumb_func_end sub_803CAF4 - - thumb_func_start sub_803CB14 -sub_803CB14: - push {r4,r5,lr} - bl sub_803CDC0 - lsls r0, 16 - lsrs r5, r0, 16 - ldr r0, _0803CB4C - cmp r5, r0 - beq _0803CB46 - subs r0, 0x1 - cmp r5, r0 - beq _0803CB46 - bl sub_803CE6C - ldr r4, _0803CB50 - ldr r0, [r4] - strh r5, [r0, 0xA] - ldr r0, _0803CB54 - ldr r3, _0803CB58 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - ldr r1, [r4] - movs r0, 0xB - str r0, [r1, 0x34] -_0803CB46: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803CB4C: .4byte 0x0000ffff -_0803CB50: .4byte gUnknown_203B400 -_0803CB54: .4byte gUnknown_80F286C -_0803CB58: .4byte 0x00000301 - thumb_func_end sub_803CB14 - - thumb_func_start sub_803CB5C -sub_803CB5C: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803CB72 - ldr r0, _0803CB78 - ldr r1, [r0] - movs r0, 0xC - str r0, [r1, 0x34] -_0803CB72: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0803CB78: .4byte gUnknown_203B400 - thumb_func_end sub_803CB5C - - thumb_func_start sub_803CB7C -sub_803CB7C: - push {r4,r5,lr} - ldr r4, _0803CBAC - ldr r0, [r4] - adds r5, r0, 0 - adds r5, 0x20 - movs r1, 0xA - ldrsh r0, [r0, r1] - bl sub_808D994 - adds r1, r0, 0 - adds r0, r5, 0 - bl sub_80922F4 - ldr r1, [r4] - adds r1, 0x20 - movs r0, 0x3 - bl sub_801602C - ldr r1, [r4] - movs r0, 0xD - str r0, [r1, 0x34] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803CBAC: .4byte gUnknown_203B400 - thumb_func_end sub_803CB7C - - thumb_func_start sub_803CBB0 -sub_803CBB0: - push {lr} - bl sub_8016080 - cmp r0, 0 - beq _0803CBD2 - bl sub_80160D8 - ldr r0, _0803CBD8 - ldr r3, _0803CBDC - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - ldr r0, _0803CBE0 - ldr r1, [r0] - movs r0, 0xE - str r0, [r1, 0x34] -_0803CBD2: - pop {r0} - bx r0 - .align 2, 0 -_0803CBD8: .4byte gUnknown_80F2898 -_0803CBDC: .4byte 0x00000301 -_0803CBE0: .4byte gUnknown_203B400 - thumb_func_end sub_803CBB0 - - thumb_func_start sub_803CBE4 -sub_803CBE4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0803CBFA - ldr r0, _0803CC00 - ldr r1, [r0] - movs r0, 0xF - str r0, [r1, 0x34] -_0803CBFA: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0803CC00: .4byte gUnknown_203B400 - thumb_func_end sub_803CBE4 - - thumb_func_start sub_803CC04 -sub_803CC04: - push {lr} - sub sp, 0x14 - ldr r1, _0803CC38 - ldr r0, _0803CC3C - ldr r0, [r0] - ldr r0, [r0, 0x3C] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - ldr r0, [r1] - ldr r3, [r1, 0x4] - movs r2, 0 - str r2, [sp] - movs r1, 0x3 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFE - str r1, [sp, 0x10] - movs r1, 0 - bl sub_8014248 - add sp, 0x14 - pop {r0} - bx r0 - .align 2, 0 -_0803CC38: .4byte gUnknown_80F2624 -_0803CC3C: .4byte gUnknown_203B400 - thumb_func_end sub_803CC04 - - thumb_func_start sub_803CC40 -sub_803CC40: - push {r4,lr} - ldr r0, _0803CC70 - ldr r4, _0803CC74 - ldr r1, [r4] - movs r2, 0x8 - ldrsh r1, [r1, r2] - bl sub_808D8BC - ldr r1, _0803CC78 - ldr r0, [r4] - adds r0, 0x40 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r3, _0803CC7C - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803CC70: .4byte gUnknown_202DF98 -_0803CC74: .4byte gUnknown_203B400 -_0803CC78: .4byte gUnknown_80F28F4 -_0803CC7C: .4byte 0x00000101 - thumb_func_end sub_803CC40 - - thumb_func_start sub_803CC80 -sub_803CC80: - push {r4-r7,lr} - sub sp, 0x60 - ldr r0, _0803CD00 - ldr r0, [r0] - movs r1, 0x8 - ldrsh r4, [r0, r1] - mov r0, sp - bl sub_8006518 - add r1, sp, 0x18 - ldr r0, _0803CD04 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - mov r0, sp - movs r1, 0x1 - movs r2, 0 - bl sub_800641C - movs r0, 0x1 - bl sub_8008C54 - movs r0, 0x1 - bl sub_80073B8 - adds r0, r4, 0 - bl sub_808DDD0 - adds r5, r0, 0 - ldr r0, [r5, 0x4] - ldr r6, [r0, 0xC] - movs r4, 0 - movs r7, 0x8 -_0803CCC8: - adds r0, r4, 0 - adds r0, 0xE0 - ldr r1, [r5, 0x4] - adds r1, r7 - lsls r2, r4, 2 - ldr r1, [r1] - adds r1, r2 - bl SetBGPaletteBufferColorArray - adds r4, 0x1 - cmp r4, 0xF - ble _0803CCC8 - movs r0, 0x1 - adds r1, r6, 0 - movs r2, 0xE - bl sub_800836C - adds r0, r5, 0 - bl CloseFile - movs r0, 0x1 - bl sub_80073E0 - add sp, 0x60 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803CD00: .4byte gUnknown_203B400 -_0803CD04: .4byte gUnknown_80F4244 - thumb_func_end sub_803CC80 - - thumb_func_start sub_803CD08 -sub_803CD08: - push {r4-r7,lr} - adds r4, r0, 0 - lsls r4, 16 - asrs r4, 16 - bl sub_803CEAC - ldr r5, _0803CDB0 - ldr r0, [r5] - movs r3, 0 - movs r1, 0 - strh r4, [r0] - str r1, [r0, 0x4C] - adds r1, r0, 0 - adds r1, 0x54 - str r1, [r0, 0x50] - ldr r0, _0803CDB4 - ldm r0!, {r2,r4,r6} - stm r1!, {r2,r4,r6} - ldm r0!, {r2,r4,r7} - stm r1!, {r2,r4,r7} - ldr r1, [r5] - adds r1, 0x6C - ldr r0, _0803CDB8 - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - ldr r1, [r5] - ldr r2, _0803CDBC - adds r1, 0x84 - adds r0, r2, 0 - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - ldr r0, [r5] - adds r0, 0x9C - ldm r2!, {r1,r4,r6} - stm r0!, {r1,r4,r6} - ldm r2!, {r1,r4,r7} - stm r0!, {r1,r4,r7} - ldr r0, [r5] - ldr r1, [r0, 0x50] - adds r0, 0xB4 - str r0, [r1, 0x14] - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r5] - adds r0, 0xB5 - strb r3, [r0] - ldr r0, [r5] - adds r0, 0xB6 - movs r1, 0x6 - strb r1, [r0] - ldr r0, [r5] - adds r0, 0xB7 - strb r3, [r0] - bl sub_8004914 - ldr r0, [r5] - adds r0, 0x54 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r4, [r5] - adds r4, 0x18 - bl sub_803D030 - adds r1, r0, 0 - ldr r0, [r5] - ldr r3, [r0, 0x4C] - adds r0, r4, 0 - movs r2, 0xA - bl sub_8013818 - bl sub_803CEF0 - bl sub_803CFC0 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803CDB0: .4byte gUnknown_203B404 -_0803CDB4: .4byte gUnknown_80F4290 -_0803CDB8: .4byte gUnknown_80F42A8 -_0803CDBC: .4byte gUnknown_80F4278 - thumb_func_end sub_803CD08 - - thumb_func_start sub_803CDC0 -sub_803CDC0: - push {r4,r5,lr} - ldr r4, _0803CDF0 - ldr r1, [r4] - movs r0, 0x30 - ldrsh r5, [r1, r0] - movs r0, 0 - strb r0, [r1, 0x16] - ldr r0, [r4] - adds r0, 0x18 - bl GetKeyPress - cmp r0, 0x1 - bne _0803CDF4 - movs r0, 0 - bl sub_80119D4 - ldr r0, [r4] - movs r2, 0x30 - ldrsh r1, [r0, r2] - lsls r1, 1 - adds r0, 0x2 - adds r0, r1 - ldrh r0, [r0] - b _0803CE2A - .align 2, 0 -_0803CDF0: .4byte gUnknown_203B404 -_0803CDF4: - ldr r0, [r4] - adds r0, 0x18 - movs r1, 0x1 - bl sub_80138B8 - lsls r0, 24 - cmp r0, 0 - beq _0803CE08 - bl sub_803CEF0 -_0803CE08: - ldr r0, [r4] - movs r1, 0x30 - ldrsh r0, [r0, r1] - cmp r5, r0 - beq _0803CE16 - bl sub_803CFC0 -_0803CE16: - ldr r0, [r4] - ldrb r0, [r0, 0x16] - cmp r0, 0 - bne _0803CE28 - ldr r0, _0803CE24 - b _0803CE2A - .align 2, 0 -_0803CE24: .4byte 0x0000ffff -_0803CE28: - ldr r0, _0803CE30 -_0803CE2A: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0803CE30: .4byte 0x0000fffe - thumb_func_end sub_803CDC0 - - thumb_func_start sub_803CE34 -sub_803CE34: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_803D030 - adds r1, r0, 0 - ldr r5, _0803CE68 - ldr r0, [r5] - strh r1, [r0, 0x3A] - adds r0, 0x18 - bl sub_8013984 - bl sub_803CEF0 - bl sub_803CFC0 - cmp r4, 0 - beq _0803CE62 - ldr r0, [r5] - adds r0, 0x18 - bl AddMenuCursorSprite -_0803CE62: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803CE68: .4byte gUnknown_203B404 - thumb_func_end sub_803CE34 - - thumb_func_start sub_803CE6C -sub_803CE6C: - push {r4,r5,lr} - ldr r4, _0803CEA4 - ldr r1, [r4] - ldr r2, [r1, 0x4C] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x54 - ldr r0, _0803CEA8 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - bl sub_8004914 - ldr r0, [r4] - adds r0, 0x54 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_803CECC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803CEA4: .4byte gUnknown_203B404 -_0803CEA8: .4byte gUnknown_80F4278 - thumb_func_end sub_803CE6C - - thumb_func_start sub_803CEAC -sub_803CEAC: - push {r4,lr} - ldr r4, _0803CEC4 - movs r0, 0xB8 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - bl nullsub_135 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803CEC4: .4byte gUnknown_203B404 - thumb_func_end sub_803CEAC - - thumb_func_start nullsub_135 -nullsub_135: - bx lr - thumb_func_end nullsub_135 - - thumb_func_start sub_803CECC -sub_803CECC: - push {r4,lr} - ldr r4, _0803CEEC - ldr r0, [r4] - cmp r0, 0 - beq _0803CEE4 - bl nullsub_135 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0803CEE4: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803CEEC: .4byte gUnknown_203B404 - thumb_func_end sub_803CECC - - thumb_func_start sub_803CEF0 -sub_803CEF0: - push {r4-r6,lr} - sub sp, 0x4 - ldr r6, _0803CF60 - ldr r0, [r6] - movs r1, 0x32 - ldrsh r0, [r0, r1] - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - lsls r0, 16 - ldr r2, [r6] - ldr r3, [r2, 0x4C] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x62 - movs r4, 0 - asrs r3, r0, 16 - lsrs r0, 16 - strh r0, [r1] - ldr r1, [r2, 0x4C] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0 - adds r3, 0x2 - adds r2, 0x64 - strh r3, [r2] - bl sub_8004914 - ldr r0, [r6] - adds r0, 0x54 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r6] - ldr r0, [r0, 0x4C] - bl sub_8008C54 - ldr r0, [r6] - ldr r0, [r0, 0x4C] - bl sub_80073B8 - ldr r2, _0803CF64 - ldr r0, [r6] - ldr r3, [r0, 0x4C] - str r4, [sp] - movs r0, 0xC - movs r1, 0 - bl xxx_call_draw_string - movs r5, 0 - b _0803CF98 - .align 2, 0 -_0803CF60: .4byte gUnknown_203B404 -_0803CF64: .4byte gUnknown_80F42C0 -_0803CF68: - ldr r0, [r6] - adds r0, 0x18 - adds r1, r5, 0 - bl sub_8013800 - adds r4, r0, 0 - ldr r0, [r6] - lsls r1, r5, 1 - adds r0, 0x2 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_808D994 - adds r2, r0, 0 - ldr r0, [r6] - ldr r3, [r0, 0x4C] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - adds r1, r4, 0 - bl xxx_call_draw_string - adds r5, 0x1 -_0803CF98: - ldr r0, [r6] - movs r1, 0x32 - ldrsh r0, [r0, r1] - cmp r5, r0 - blt _0803CF68 - ldr r4, _0803CFBC - ldr r0, [r4] - ldr r0, [r0, 0x4C] - bl sub_80073E0 - ldr r1, [r4] - movs r0, 0x1 - strb r0, [r1, 0x16] - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0803CFBC: .4byte gUnknown_203B404 - thumb_func_end sub_803CEF0 - - thumb_func_start sub_803CFC0 -sub_803CFC0: - push {r4-r7,lr} - ldr r0, _0803D02C - ldr r0, [r0] - movs r2, 0x30 - ldrsh r1, [r0, r2] - lsls r1, 1 - adds r0, 0x2 - adds r0, r1 - movs r1, 0 - ldrsh r4, [r0, r1] - movs r0, 0x1 - bl sub_8008C54 - movs r0, 0x1 - bl sub_80073B8 - adds r0, r4, 0 - bl sub_808DDD0 - adds r5, r0, 0 - ldr r0, [r5, 0x4] - ldr r6, [r0, 0x4] - movs r4, 0 - movs r7, 0 -_0803CFF0: - adds r0, r4, 0 - adds r0, 0xE0 - ldr r1, [r5, 0x4] - adds r1, r7 - lsls r2, r4, 2 - ldr r1, [r1] - adds r1, r2 - bl SetBGPaletteBufferColorArray - adds r4, 0x1 - cmp r4, 0xF - ble _0803CFF0 - movs r0, 0x1 - adds r1, r6, 0 - movs r2, 0xE - bl sub_800836C - adds r0, r5, 0 - bl CloseFile - movs r0, 0x1 - bl sub_80073E0 - ldr r0, _0803D02C - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x16] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803D02C: .4byte gUnknown_203B404 - thumb_func_end sub_803CFC0 - - thumb_func_start sub_803D030 -sub_803D030: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - movs r0, 0 - mov r8, r0 - ldr r4, _0803D0D0 - ldr r0, [r4] - movs r1, 0 - ldrsh r0, [r0, r1] - movs r1, 0 - bl sub_808DC68 - mov r1, sp - strb r0, [r1] - ldr r0, [r4] - movs r2, 0 - ldrsh r0, [r0, r2] - movs r1, 0x1 - bl sub_808DC68 - mov r1, sp - strb r0, [r1, 0x1] - movs r7, 0 - add r6, sp, 0x4 - mov r5, sp -_0803D064: - ldr r0, _0803D0D4 - lsls r1, r7, 1 - adds r1, r0 - movs r0, 0 - ldrsh r4, [r1, r0] - adds r0, r4, 0 - movs r1, 0 - bl sub_808DC68 - strb r0, [r6] - adds r0, r4, 0 - movs r1, 0x1 - bl sub_808DC68 - adds r2, r0, 0 - strb r2, [r6, 0x1] - ldrb r1, [r6] - cmp r1, 0 - beq _0803D096 - ldrb r0, [r5] - cmp r1, r0 - beq _0803D0BC - ldrb r0, [r5, 0x1] - cmp r1, r0 - beq _0803D0BC -_0803D096: - lsls r0, r2, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _0803D0AA - ldrb r2, [r5] - cmp r1, r2 - beq _0803D0BC - ldrb r0, [r5, 0x1] - cmp r1, r0 - beq _0803D0BC -_0803D0AA: - ldr r0, _0803D0D0 - ldr r0, [r0] - mov r2, r8 - lsls r1, r2, 1 - adds r0, 0x2 - adds r0, r1 - strh r4, [r0] - movs r0, 0x1 - add r8, r0 -_0803D0BC: - adds r7, 0x1 - cmp r7, 0x9 - ble _0803D064 - mov r0, r8 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0803D0D0: .4byte gUnknown_203B404 -_0803D0D4: .4byte gUnknown_80F4264 - thumb_func_end sub_803D030 - - thumb_func_start sub_803D0D8 -sub_803D0D8: - ldr r0, _0803D0E0 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0803D0E0: .4byte gUnknown_203B408 - thumb_func_end sub_803D0D8 - - thumb_func_start sub_803D0E4 -sub_803D0E4: - ldr r1, _0803D0EC - strb r0, [r1] - bx lr - .align 2, 0 -_0803D0EC: .4byte gUnknown_203B408 - thumb_func_end sub_803D0E4 - - thumb_func_start sub_803D0F0 -sub_803D0F0: - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0803D0FC - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0803D0FC: .4byte gUnknown_80F42F0 - thumb_func_end sub_803D0F0 - - thumb_func_start sub_803D100 -sub_803D100: - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0803D10C - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0803D10C: .4byte gUnknown_80F42D0 - thumb_func_end sub_803D100 - - thumb_func_start sub_803D110 -sub_803D110: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x6C - adds r6, r0, 0 - mov r9, r1 - adds r5, r2, 0 - add r7, sp, 0x48 - adds r2, r7, 0 - movs r1, 0 - mov r0, sp - adds r0, 0x69 -_0803D12A: - strb r1, [r0] - subs r0, 0x1 - cmp r0, r2 - bge _0803D12A - movs r4, 0 - cmp r4, r5 - bge _0803D158 -_0803D138: - ldrb r0, [r6] - bl sub_803D0F0 - add r1, sp, 0x10 - adds r1, r4 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _0803D150 - movs r0, 0 - b _0803D19A -_0803D150: - adds r6, 0x1 - adds r4, 0x1 - cmp r4, r5 - blt _0803D138 -_0803D158: - lsls r0, r5, 2 - adds r0, r5 - adds r2, r0, 0x5 - cmp r2, 0 - bge _0803D164 - adds r2, 0x7 -_0803D164: - asrs r2, 3 - mov r8, r2 - mov r0, sp - adds r1, r7, 0 - bl sub_809486C - movs r4, 0 - cmp r4, r5 - bge _0803D188 - add r6, sp, 0x10 -_0803D178: - adds r1, r6, r4 - mov r0, sp - movs r2, 0x5 - bl sub_809488C - adds r4, 0x1 - cmp r4, r5 - blt _0803D178 -_0803D188: - mov r0, sp - bl nullsub_102 - mov r0, r9 - adds r1, r7, 0 - mov r2, r8 - bl MemoryCopy8 - movs r0, 0x1 -_0803D19A: - add sp, 0x6C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_803D110 - - thumb_func_start sub_803D1A8 -sub_803D1A8: - push {r4-r7,lr} - sub sp, 0x48 - adds r7, r0, 0 - adds r5, r2, 0 - lsls r0, r5, 2 - adds r0, r5 - adds r2, r0, 0x5 - cmp r2, 0 - bge _0803D1BC - adds r2, 0x7 -_0803D1BC: - asrs r2, 3 - mov r0, sp - bl sub_809485C - movs r4, 0 - cmp r4, r5 - bge _0803D1DC - add r6, sp, 0x10 -_0803D1CC: - adds r1, r6, r4 - mov r0, sp - movs r2, 0x5 - bl sub_8094924 - adds r4, 0x1 - cmp r4, r5 - blt _0803D1CC -_0803D1DC: - mov r0, sp - bl nullsub_102 - movs r4, 0 - cmp r4, r5 - bge _0803D1FC - add r6, sp, 0x10 -_0803D1EA: - adds r0, r6, r4 - ldrb r0, [r0] - bl sub_803D100 - strb r0, [r7] - adds r7, 0x1 - adds r4, 0x1 - cmp r4, r5 - blt _0803D1EA -_0803D1FC: - add sp, 0x48 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_803D1A8 - - thumb_func_start sub_803D204 -sub_803D204: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xA4 - adds r2, r0, 0 - mov r9, r1 - movs r6, 0 - add r4, sp, 0x5C - adds r0, r4, 0 - adds r1, r2, 0 - movs r2, 0x36 - bl MemoryCopy8 - movs r2, 0 - mov r8, r4 - add r5, sp, 0x24 - ldr r4, _0803D2A8 - mov r12, r4 - mov r10, r5 -_0803D22E: - movs r1, 0 - mov r3, r12 - adds r0, r2, r3 - adds r3, r2, 0x1 - ldrb r0, [r0] - cmp r1, r0 - beq _0803D24A - adds r0, r2, r4 -_0803D23E: - adds r1, 0x1 - cmp r1, 0x35 - bgt _0803D24A - ldrb r7, [r0] - cmp r1, r7 - bne _0803D23E -_0803D24A: - mov r7, r10 - adds r0, r7, r2 - add r1, r8 - ldrb r1, [r1] - strb r1, [r0] - adds r2, r3, 0 - cmp r2, 0x35 - ble _0803D22E - adds r0, r5, 0 - mov r1, sp - movs r2, 0x36 - bl sub_803D110 - lsls r0, 24 - cmp r0, 0 - beq _0803D2AC - movs r2, 0x1 -_0803D26C: - mov r1, sp - adds r0, r1, r2 - ldrb r0, [r0] - adds r0, r2 - adds r0, r6, r0 - lsls r0, 24 - lsrs r6, r0, 24 - adds r2, 0x1 - cmp r2, 0x21 - ble _0803D26C - mov r0, sp - ldrb r0, [r0] - cmp r0, r6 - bne _0803D2AC - add r4, sp, 0x94 - adds r1, 0x1 - adds r0, r4, 0 - movs r2, 0x21 - bl sub_809485C - adds r0, r4, 0 - mov r1, r9 - bl sub_8095774 - adds r0, r4, 0 - bl nullsub_102 - movs r0, 0x1 - b _0803D2AE - .align 2, 0 -_0803D2A8: .4byte gUnknown_80F43F0 -_0803D2AC: - movs r0, 0 -_0803D2AE: - add sp, 0xA4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_803D204 - - thumb_func_start sub_803D2C0 -sub_803D2C0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xA4 - mov r9, r0 - adds r6, r1, 0 - movs r5, 0 - add r4, sp, 0x94 - mov r1, sp - adds r1, 0x1 - add r7, sp, 0x24 - add r0, sp, 0x5C - mov r8, r0 - movs r2, 0 - mov r0, sp - adds r0, 0x21 -_0803D2E2: - strb r2, [r0] - subs r0, 0x1 - cmp r0, sp - bge _0803D2E2 - adds r0, r4, 0 - movs r2, 0x21 - bl sub_809486C - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_8095824 - adds r0, r4, 0 - bl nullsub_102 - movs r2, 0x1 -_0803D302: - mov r1, sp - adds r0, r1, r2 - ldrb r0, [r0] - adds r0, r2 - adds r0, r5, r0 - lsls r0, 24 - lsrs r5, r0, 24 - adds r2, 0x1 - cmp r2, 0x21 - ble _0803D302 - mov r0, sp - strb r5, [r0] - adds r0, r7, 0 - movs r2, 0x36 - bl sub_803D1A8 - movs r2, 0 - mov r4, r8 - ldr r5, _0803D354 - adds r3, r7, 0 -_0803D32A: - adds r0, r2, r5 - ldrb r1, [r0] - adds r1, r4, r1 - adds r0, r3, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r2, 0x1 - cmp r2, 0x35 - ble _0803D32A - mov r0, r9 - mov r1, r8 - movs r2, 0x36 - bl MemoryCopy8 - add sp, 0xA4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803D354: .4byte gUnknown_80F43F0 - thumb_func_end sub_803D2C0 - - thumb_func_start sub_803D358 -sub_803D358: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x50 - adds r2, r0, 0 - mov r9, r1 - movs r6, 0 - add r4, sp, 0x28 - adds r0, r4, 0 - adds r1, r2, 0 - movs r2, 0x18 - bl MemoryCopy8 - movs r2, 0 - mov r8, r4 - add r5, sp, 0x10 - ldr r4, _0803D3FC - mov r12, r4 - mov r10, r5 -_0803D382: - movs r1, 0 - mov r3, r12 - adds r0, r2, r3 - adds r3, r2, 0x1 - ldrb r0, [r0] - cmp r1, r0 - beq _0803D39E - adds r0, r2, r4 -_0803D392: - adds r1, 0x1 - cmp r1, 0x17 - bgt _0803D39E - ldrb r7, [r0] - cmp r1, r7 - bne _0803D392 -_0803D39E: - mov r7, r10 - adds r0, r7, r2 - add r1, r8 - ldrb r1, [r1] - strb r1, [r0] - adds r2, r3, 0 - cmp r2, 0x17 - ble _0803D382 - adds r0, r5, 0 - mov r1, sp - movs r2, 0x18 - bl sub_803D110 - lsls r0, 24 - cmp r0, 0 - beq _0803D400 - movs r2, 0x1 -_0803D3C0: - mov r1, sp - adds r0, r1, r2 - ldrb r0, [r0] - adds r0, r2 - adds r0, r6, r0 - lsls r0, 24 - lsrs r6, r0, 24 - adds r2, 0x1 - cmp r2, 0xE - ble _0803D3C0 - mov r0, sp - ldrb r0, [r0] - cmp r0, r6 - bne _0803D400 - add r4, sp, 0x40 - adds r1, 0x1 - adds r0, r4, 0 - movs r2, 0xC - bl sub_809485C - adds r0, r4, 0 - mov r1, r9 - bl sub_80971EC - adds r0, r4, 0 - bl nullsub_102 - movs r0, 0x1 - b _0803D402 - .align 2, 0 -_0803D3FC: .4byte gUnknown_80F4426 -_0803D400: - movs r0, 0 -_0803D402: - add sp, 0x50 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_803D358 - - thumb_func_start sub_803D414 -sub_803D414: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x50 - mov r9, r0 - adds r6, r1, 0 - movs r5, 0 - add r4, sp, 0x40 - mov r1, sp - adds r1, 0x1 - add r7, sp, 0x10 - add r0, sp, 0x28 - mov r8, r0 - movs r2, 0 - mov r0, sp - adds r0, 0xE -_0803D436: - strb r2, [r0] - subs r0, 0x1 - cmp r0, sp - bge _0803D436 - adds r0, r4, 0 - movs r2, 0xC - bl sub_809486C - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_8097270 - adds r0, r4, 0 - bl nullsub_102 - movs r2, 0x1 -_0803D456: - mov r1, sp - adds r0, r1, r2 - ldrb r0, [r0] - adds r0, r2 - adds r0, r5, r0 - lsls r0, 24 - lsrs r5, r0, 24 - adds r2, 0x1 - cmp r2, 0xE - ble _0803D456 - mov r0, sp - strb r5, [r0] - adds r0, r7, 0 - movs r2, 0x18 - bl sub_803D1A8 - movs r2, 0 - mov r4, r8 - ldr r5, _0803D4A8 - adds r3, r7, 0 -_0803D47E: - adds r0, r2, r5 - ldrb r1, [r0] - adds r1, r4, r1 - adds r0, r3, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r2, 0x1 - cmp r2, 0x17 - ble _0803D47E - mov r0, r9 - mov r1, r8 - movs r2, 0x18 - bl MemoryCopy8 - add sp, 0x50 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803D4A8: .4byte gUnknown_80F4426 - thumb_func_end sub_803D414 - - thumb_func_start sub_803D4AC -sub_803D4AC: - ldr r2, _0803D4C4 - ldr r0, [r2] - ldr r1, _0803D4C8 - adds r0, r1 - movs r1, 0x63 - strb r1, [r0] - ldr r0, [r2] - ldr r1, _0803D4CC - adds r0, r1 - movs r1, 0xFF - strb r1, [r0] - bx lr - .align 2, 0 -_0803D4C4: .4byte gUnknown_203B418 -_0803D4C8: .4byte 0x0001c570 -_0803D4CC: .4byte 0x0001c571 - thumb_func_end sub_803D4AC - - thumb_func_start sub_803D4D0 -sub_803D4D0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1FC - ldr r6, _0803D654 - ldr r1, [r6] - movs r4, 0xC9 - lsls r4, 3 - adds r0, r1, r4 - ldr r2, _0803D658 - adds r1, r2 - bl sub_80901D8 - ldr r0, [r6] - ldr r3, _0803D65C - adds r2, r0, r3 - adds r1, r0, r4 - ldrh r0, [r2] - ldrh r4, [r1] - cmp r0, r4 - bne _0803D500 - b _0803D6E0 -_0803D500: - ldr r0, [r1] - str r0, [r2] - ldr r0, _0803D660 - ldr r1, _0803D664 - bl OpenFileAndGetFileDataPtr - mov r9, r0 - ldr r3, [r0, 0x4] - ldr r2, [r6] - ldr r7, _0803D65C - adds r0, r2, r7 - ldrb r1, [r0] - ldr r0, [r3] - lsls r1, 2 - adds r1, r0 - ldr r3, _0803D668 - adds r0, r2, r3 - ldrb r0, [r0] - lsls r0, 4 - ldr r1, [r1] - adds r1, r0 - mov r8, r1 - ldr r4, _0803D658 - adds r2, r4 - ldrb r0, [r2] - bl sub_8090298 - ldr r1, [r6] - ldr r7, _0803D66C - adds r1, r7 - strb r0, [r1] - ldr r0, [r6] - adds r0, r4 - ldrb r0, [r0] - bl sub_80902C8 - ldr r1, [r6] - strh r0, [r1, 0x14] - mov r2, r9 - ldr r0, [r2, 0x4] - mov r3, r8 - movs r4, 0 - ldrsh r2, [r3, r4] - ldr r3, [r0, 0x4] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - ldr r7, _0803D670 - adds r1, r7 - adds r0, r3 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r0, [r0] - str r0, [r1] - movs r5, 0 - mov r10, r6 - ldr r4, _0803D674 -_0803D576: - mov r6, r10 - ldr r2, [r6] - lsls r3, r5, 1 - adds r2, r4 - adds r2, r3 - mov r7, r9 - ldr r1, [r7, 0x4] - mov r6, r8 - movs r7, 0x4 - ldrsh r0, [r6, r7] - ldr r1, [r1, 0x10] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - adds r3, r0 - ldrh r0, [r3] - strh r0, [r2] - adds r5, 0x1 - cmp r5, 0x13 - ble _0803D576 - movs r5, 0 - adds r6, 0x6 - str r6, [sp, 0x1F8] - ldr r6, _0803D678 - mov r10, r6 -_0803D5A8: - ldr r1, _0803D654 - ldr r0, [r1] - lsls r3, r5, 3 - mov r2, r10 - adds r4, r0, r2 - adds r4, r3 - mov r12, r4 - mov r4, r9 - ldr r2, [r4, 0x4] - mov r7, r8 - movs r4, 0x2 - ldrsh r1, [r7, r4] - ldr r2, [r2, 0xC] - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - adds r3, r1 - ldr r1, [r3] - ldr r2, [r3, 0x4] - mov r7, r12 - str r1, [r7] - str r2, [r7, 0x4] - adds r0, r6 - bl sub_808E9B8 - lsls r0, 16 - cmp r0, 0 - beq _0803D5E8 - adds r6, 0x8 - adds r5, 0x1 - cmp r5, 0x1E - ble _0803D5A8 -_0803D5E8: - cmp r5, 0x1F - bgt _0803D606 - ldr r6, _0803D654 - lsls r0, r5, 3 - ldr r1, _0803D678 - adds r4, r0, r1 -_0803D5F4: - ldr r0, [r6] - adds r0, r4 - movs r1, 0 - bl sub_808E9C4 - adds r4, 0x8 - adds r5, 0x1 - cmp r5, 0x1F - ble _0803D5F4 -_0803D606: - movs r5, 0 - ldr r2, _0803D67C - mov r10, r2 -_0803D60C: - mov r3, r9 - ldr r1, [r3, 0x4] - lsls r0, r5, 1 - ldr r4, [sp, 0x1F8] - adds r0, r4, r0 - movs r6, 0 - ldrsh r0, [r0, r6] - ldr r1, [r1, 0x8] - lsls r0, 2 - adds r0, r1 - movs r4, 0 - adds r7, r5, 0x1 - mov r8, r7 - lsls r1, r5, 6 - mov r12, r1 - ldr r3, [r0] - mov r2, sp -_0803D62E: - ldrh r0, [r3] - cmp r0, r10 - bls _0803D684 - ldrh r0, [r3] - ldr r6, _0803D680 - adds r1, r0, r6 - cmp r1, 0 - beq _0803D68A - movs r6, 0 - lsls r0, r4, 1 - add r0, sp -_0803D644: - strh r6, [r0] - adds r0, 0x2 - adds r2, 0x2 - adds r4, 0x1 - subs r1, 0x1 - cmp r1, 0 - bne _0803D644 - b _0803D68A - .align 2, 0 -_0803D654: .4byte gUnknown_203B418 -_0803D658: .4byte 0x00000644 -_0803D65C: .4byte 0x0001c570 -_0803D660: .4byte gUnknown_80F4D8C -_0803D664: .4byte gUnknown_83B0000 -_0803D668: .4byte 0x0001c571 -_0803D66C: .4byte 0x0001cec8 -_0803D670: .4byte 0x0001c574 -_0803D674: .4byte 0x0001cd70 -_0803D678: .4byte 0x0001cd98 -_0803D67C: .4byte 0x0000752f -_0803D680: .4byte 0xffff8ad0 -_0803D684: - strh r0, [r2] - adds r2, 0x2 - adds r4, 0x1 -_0803D68A: - adds r3, 0x2 - cmp r4, 0xFB - ble _0803D62E - ldr r7, _0803D6F0 - mov r1, r12 - subs r0, r1, r5 - movs r4, 0xB - mov r3, sp - lsls r2, r0, 3 - ldr r6, _0803D6F4 -_0803D69E: - ldr r0, [r7] - adds r0, r6 - adds r0, r2 - ldrh r1, [r3] - strh r1, [r0] - adds r3, 0x2 - adds r2, 0x2 - subs r4, 0x1 - cmp r4, 0 - bge _0803D69E - ldr r6, _0803D6F0 - mov r2, r12 - subs r0, r2, r5 - lsls r3, r0, 3 - add r2, sp, 0x18 - ldr r5, _0803D6F8 - movs r4, 0xEF -_0803D6C0: - ldr r0, [r6] - adds r0, r5 - adds r0, r3 - ldrh r1, [r2] - strh r1, [r0] - adds r2, 0x2 - adds r3, 0x2 - subs r4, 0x1 - cmp r4, 0 - bge _0803D6C0 - mov r5, r8 - cmp r5, 0x3 - ble _0803D60C - mov r0, r9 - bl CloseFile -_0803D6E0: - add sp, 0x1FC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803D6F0: .4byte gUnknown_203B418 -_0803D6F4: .4byte 0x0001c590 -_0803D6F8: .4byte 0x0001c5a8 - thumb_func_end sub_803D4D0 - - thumb_func_start sub_803D6FC -sub_803D6FC: - push {r4,lr} - ldr r0, _0803D720 - bl sub_8084100 - adds r3, r0, 0 - movs r2, 0 - ldr r0, _0803D724 - ldr r0, [r0] - ldr r4, _0803D728 - adds r1, r0, r4 -_0803D710: - ldrh r0, [r1] - cmp r0, 0 - beq _0803D72C - cmp r0, r3 - blt _0803D72C - lsls r0, r2, 24 - lsrs r0, 24 - b _0803D736 - .align 2, 0 -_0803D720: .4byte 0x00002710 -_0803D724: .4byte gUnknown_203B418 -_0803D728: .4byte 0x0001cd70 -_0803D72C: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x13 - ble _0803D710 - movs r0, 0x10 -_0803D736: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_803D6FC - - thumb_func_start sub_803D73C -sub_803D73C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r4, r0, 0 - ldr r0, _0803D784 - bl sub_8084100 - adds r7, r0, 0 - movs r0, 0xC - mov r8, r0 - movs r6, 0 - ldr r0, _0803D788 - ldr r2, [r0] - lsls r1, r4, 6 - subs r0, r1, r4 - adds r5, r1, 0 - lsls r0, 3 - ldr r1, _0803D78C - adds r2, r1 - adds r1, r0, r2 -_0803D766: - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _0803D772 - cmp r0, r7 - bge _0803D790 -_0803D772: - adds r1, 0x2 - adds r6, 0x1 - cmp r6, 0xB - ble _0803D766 -_0803D77A: - mov r0, r8 - cmp r0, 0xC - bne _0803D79C - b _0803D7EC - .align 2, 0 -_0803D784: .4byte 0x00002710 -_0803D788: .4byte gUnknown_203B418 -_0803D78C: .4byte 0x0001c590 -_0803D790: - lsls r0, r6, 24 - lsrs r0, 24 - mov r8, r0 - b _0803D77A -_0803D798: - adds r0, r5, 0 - b _0803D7EE -_0803D79C: - ldr r0, _0803D7FC - bl sub_8084100 - adds r7, r0, 0 - movs r6, 0 - ldr r2, _0803D800 - subs r0, r5, r4 - ldr r1, _0803D804 - lsls r4, r0, 3 -_0803D7AE: - ldr r0, [r2] - adds r0, r1 - adds r0, r4 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r0, 0 - beq _0803D7E4 - lsls r0, r6, 24 - lsrs r5, r0, 24 - adds r0, r5, 0 - str r1, [sp] - str r2, [sp, 0x4] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, [sp] - ldr r2, [sp, 0x4] - cmp r0, r8 - bne _0803D7E4 - ldr r0, [r2] - adds r0, r1 - adds r0, r4 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r0, r7 - bge _0803D798 -_0803D7E4: - adds r4, 0x2 - adds r6, 0x1 - cmp r6, 0xEF - ble _0803D7AE -_0803D7EC: - movs r0, 0x69 -_0803D7EE: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0803D7FC: .4byte 0x00002710 -_0803D800: .4byte gUnknown_203B418 -_0803D804: .4byte 0x0001c5a8 - thumb_func_end sub_803D73C - - thumb_func_start sub_803D808 -sub_803D808: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r7, r1, 0 - movs r6, 0 - ldr r2, _0803D820 - lsls r1, r7, 3 - adds r1, r0 - mov r8, r1 - b _0803D840 - .align 2, 0 -_0803D820: .4byte 0x0001cd98 -_0803D824: - ldr r0, [r5] - ldr r1, _0803D868 - adds r0, r1 - adds r0, r4 - ldr r1, [r0, 0x4] - ldr r0, [r0] - mov r3, r8 - adds r3, 0x8 - mov r8, r3 - subs r3, 0x8 - stm r3!, {r0,r1} - adds r7, 0x1 - adds r2, 0x8 - adds r6, 0x1 -_0803D840: - cmp r6, 0x1F - bgt _0803D85A - ldr r5, _0803D86C - lsls r4, r6, 3 - ldr r0, [r5] - adds r0, r2 - str r2, [sp] - bl sub_808E9B8 - lsls r0, 16 - ldr r2, [sp] - cmp r0, 0 - bne _0803D824 -_0803D85A: - adds r0, r7, 0 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0803D868: .4byte 0x0001cd98 -_0803D86C: .4byte gUnknown_203B418 - thumb_func_end sub_803D808 - - thumb_func_start sub_803D870 -sub_803D870: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r6, r1, 0 - movs r5, 0 - lsls r1, r6, 3 - adds r1, r0 - mov r9, r1 - b _0803D8B8 -_0803D884: - bl sub_808DACC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0803D8B6 - ldr r1, [r7] - adds r0, r1, r4 - ldr r2, _0803D8E4 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - beq _0803D8B6 - mov r2, r8 - adds r0, r1, r2 - adds r0, r4 - ldr r1, [r0, 0x4] - ldr r0, [r0] - mov r2, r9 - adds r2, 0x8 - mov r9, r2 - subs r2, 0x8 - stm r2!, {r0,r1} - adds r6, 0x1 -_0803D8B6: - adds r5, 0x1 -_0803D8B8: - cmp r5, 0x1F - bgt _0803D8D6 - ldr r7, _0803D8E8 - lsls r4, r5, 3 - ldr r0, _0803D8EC - mov r8, r0 - adds r1, r4, r0 - ldr r0, [r7] - adds r0, r1 - bl sub_808E9B8 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bne _0803D884 -_0803D8D6: - adds r0, r6, 0 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0803D8E4: .4byte 0x0001cd9a -_0803D8E8: .4byte gUnknown_203B418 -_0803D8EC: .4byte 0x0001cd98 - thumb_func_end sub_803D870 - - thumb_func_start sub_803D8F0 -sub_803D8F0: - push {r4,lr} - ldr r4, _0803D920 - ldr r0, [r4] - ldr r2, _0803D924 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - bne _0803D918 - movs r0, 0x1 - strb r0, [r1] - ldr r0, [r4] - ldr r1, _0803D928 - adds r0, r1 - movs r1, 0 - bl sub_803D808 - ldr r1, [r4] - ldr r2, _0803D92C - adds r1, r2 - str r0, [r1] -_0803D918: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803D920: .4byte gUnknown_203B418 -_0803D924: .4byte 0x000037ec -_0803D928: .4byte 0x0000343c -_0803D92C: .4byte 0x000037e4 - thumb_func_end sub_803D8F0 - - thumb_func_start sub_803D930 -sub_803D930: - push {r4-r7,lr} - lsls r0, 16 - asrs r6, r0, 16 - movs r5, 0 - ldr r7, _0803D940 - ldr r4, _0803D944 - b _0803D954 - .align 2, 0 -_0803D940: .4byte gUnknown_203B418 -_0803D944: .4byte 0x0001cd98 -_0803D948: - cmp r0, r6 - bne _0803D950 - movs r0, 0x1 - b _0803D96A -_0803D950: - adds r4, 0x8 - adds r5, 0x1 -_0803D954: - cmp r5, 0x1F - bgt _0803D968 - ldr r0, [r7] - adds r0, r4 - bl sub_808E9B8 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bne _0803D948 -_0803D968: - movs r0, 0 -_0803D96A: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_803D930 - - thumb_func_start sub_803D970 -sub_803D970: - push {r4-r7,lr} - adds r5, r0, 0 - ldr r0, _0803D9EC - bl sub_8084100 - adds r6, r0, 0 - movs r3, 0 - ldr r1, _0803D9F0 - ldr r0, [r1] - ldr r2, _0803D9F4 - adds r0, r2 - ldr r0, [r0] - cmp r3, r0 - bge _0803D9BA - ldr r4, _0803D9F8 -_0803D98E: - ldr r2, [r1] - lsls r1, r5, 1 - lsls r0, r3, 3 - adds r1, r0 - ldr r7, _0803D9FC - adds r0, r2, r7 - adds r1, r0, r1 - movs r7, 0 - ldrsh r0, [r1, r7] - cmp r0, 0 - beq _0803D9A8 - cmp r0, r6 - bge _0803D9E0 -_0803D9A8: - adds r4, 0x8 - adds r3, 0x1 - ldr r1, _0803D9F0 - ldr r0, [r1] - ldr r2, _0803D9F4 - adds r0, r2 - ldr r0, [r0] - cmp r3, r0 - blt _0803D98E -_0803D9BA: - movs r3, 0 - ldr r0, _0803D9F0 - ldr r1, [r0] - ldr r7, _0803D9F4 - adds r1, r7 - ldr r1, [r1] - adds r6, r0, 0 - cmp r3, r1 - bge _0803DA10 - ldr r4, _0803D9F8 - lsls r1, r5, 1 -_0803D9D0: - ldr r2, [r6] - ldr r5, _0803D9FC - adds r0, r2, r5 - adds r0, r1 - movs r7, 0 - ldrsh r0, [r0, r7] - cmp r0, 0 - beq _0803DA00 -_0803D9E0: - adds r0, r2, r4 - bl sub_808E9B8 - lsls r0, 16 - asrs r0, 16 - b _0803DA14 - .align 2, 0 -_0803D9EC: .4byte 0x00002710 -_0803D9F0: .4byte gUnknown_203B418 -_0803D9F4: .4byte 0x000037e4 -_0803D9F8: .4byte 0x0000343c -_0803D9FC: .4byte 0x0000343e -_0803DA00: - adds r4, 0x8 - adds r1, 0x8 - adds r3, 0x1 - ldr r5, _0803DA1C - adds r0, r2, r5 - ldr r0, [r0] - cmp r3, r0 - blt _0803D9D0 -_0803DA10: - movs r0, 0xBE - lsls r0, 1 -_0803DA14: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0803DA1C: .4byte 0x000037e4 - thumb_func_end sub_803D970 - - thumb_func_start sub_803DA20 -sub_803DA20: - push {r4-r7,lr} - lsls r0, 16 - asrs r7, r0, 16 - movs r5, 0 - ldr r1, _0803DA54 - ldr r0, [r1] - ldr r2, _0803DA58 - adds r0, r2 - ldr r0, [r0] - cmp r5, r0 - bge _0803DA70 - adds r6, r1, 0 - ldr r4, _0803DA5C -_0803DA3A: - ldr r0, [r6] - adds r0, r4 - bl sub_808E9B8 - lsls r0, 16 - asrs r0, 16 - cmp r0, r7 - bne _0803DA60 - ldr r0, [r6] - adds r0, r4 - bl sub_808E9E4 - b _0803DA72 - .align 2, 0 -_0803DA54: .4byte gUnknown_203B418 -_0803DA58: .4byte 0x000037e4 -_0803DA5C: .4byte 0x0000343c -_0803DA60: - adds r4, 0x8 - adds r5, 0x1 - ldr r0, [r6] - ldr r1, _0803DA78 - adds r0, r1 - ldr r0, [r0] - cmp r5, r0 - blt _0803DA3A -_0803DA70: - movs r0, 0x1 -_0803DA72: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0803DA78: .4byte 0x000037e4 - thumb_func_end sub_803DA20 - - thumb_func_start ShowDungeonNameBanner -ShowDungeonNameBanner: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x68 - ldr r0, _0803DB84 - ldr r4, _0803DB88 - adds r1, r4, 0 - bl OpenFileAndGetFileDataPtr - ldr r5, _0803DB8C - str r0, [r5] - ldr r0, _0803DB90 - adds r1, r4, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, _0803DB94 - str r0, [r1] - ldr r1, _0803DB98 - ldr r0, [r0, 0x4] - ldr r0, [r0, 0x4] - str r0, [r1] - movs r4, 0 -_0803DAAA: - adds r0, r4, 0 - adds r0, 0xE0 - ldr r1, [r5] - lsls r2, r4, 2 - ldr r1, [r1, 0x4] - adds r1, r2 - bl SetBGPaletteBufferColorArray - adds r4, 0x1 - cmp r4, 0xF - ble _0803DAAA - ldr r0, _0803DB9C - movs r1, 0xE0 - lsls r1, 5 - bl CpuClear - bl sub_80848EC - lsls r0, 24 - cmp r0, 0 - bne _0803DAD6 - b _0803DBEA -_0803DAD6: - ldr r0, _0803DBA0 - ldr r0, [r0] - ldr r1, _0803DBA4 - adds r2, r0, r1 - movs r3, 0x14 - ldrsh r1, [r0, r3] - ldrb r2, [r2] - adds r2, r1 - mov r8, r2 - ldr r1, _0803DBA8 - adds r0, r1 - ldrb r0, [r0] - bl sub_80900AC - mov r9, r0 - movs r5, 0xA - movs r0, 0 -_0803DAF8: - movs r4, 0 - adds r6, r0, 0x4 - adds r7, r0, 0x1 -_0803DAFE: - adds r4, 0x1 - ldr r3, _0803DBAC - adds r0, r3, 0 - adds r2, r5, 0 - orrs r2, r0 - lsls r2, 16 - lsrs r2, 16 - adds r0, r4, 0 - adds r1, r6, 0 - movs r3, 0 - bl sub_8008DC8 - adds r5, 0x1 - cmp r4, 0x1B - ble _0803DAFE - adds r0, r7, 0 - cmp r0, 0x7 - ble _0803DAF8 - mov r0, r9 - bl CalcStringWidth - movs r1, 0xE0 - subs r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 - mov r0, r9 - movs r2, 0 - bl sub_803DC14 - adds r7, r0, 0 - ldr r0, _0803DBA0 - ldr r0, [r0] - ldr r1, _0803DBA8 - adds r0, r1 - ldrb r0, [r0] - bl sub_80900C0 - lsls r0, 24 - ldr r6, _0803DBB0 - cmp r0, 0 - beq _0803DB54 - ldr r6, _0803DBB4 -_0803DB54: - mov r3, r8 - cmp r3, 0x9 - ble _0803DBBC - ldr r5, _0803DBB8 - mov r0, r8 - movs r1, 0xA - bl __divsi3 - adds r4, r0, 0 - adds r4, 0x30 - mov r0, r8 - movs r1, 0xA - bl __modsi3 - adds r0, 0x30 - str r0, [sp] - add r0, sp, 0x4 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r4, 0 - bl sub_800D158 - b _0803DBCA - .align 2, 0 -_0803DB84: .4byte gUnknown_80F60F8 -_0803DB88: .4byte gUnknown_83B0000 -_0803DB8C: .4byte gUnknown_202EC88 -_0803DB90: .4byte gUnknown_80F6100 -_0803DB94: .4byte gUnknown_202EC8C -_0803DB98: .4byte gUnknown_202EC90 -_0803DB9C: .4byte 0x06000140 -_0803DBA0: .4byte gUnknown_203B418 -_0803DBA4: .4byte 0x00000645 -_0803DBA8: .4byte 0x00000644 -_0803DBAC: .4byte 0xffffe000 -_0803DBB0: .4byte gUnknown_80F610C -_0803DBB4: .4byte gUnknown_80F6108 -_0803DBB8: .4byte gUnknown_80F6110 -_0803DBBC: - ldr r1, _0803DC08 - mov r3, r8 - adds r3, 0x30 - add r0, sp, 0x4 - adds r2, r6, 0 - bl sub_800D158 -_0803DBCA: - add r0, sp, 0x4 - bl CalcStringWidth - movs r1, 0xE0 - subs r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 - adds r2, r7, 0 - adds r2, 0x20 - add r0, sp, 0x4 - bl sub_803DC14 - ldr r1, _0803DC0C - movs r0, 0x1 - strb r0, [r1] -_0803DBEA: - ldr r0, _0803DC10 - ldr r0, [r0] - bl CloseFile - movs r0, 0x2 - bl sub_803E46C - add sp, 0x68 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803DC08: .4byte gUnknown_80F6118 -_0803DC0C: .4byte gUnknown_20274A5 -_0803DC10: .4byte gUnknown_202EC8C - thumb_func_end ShowDungeonNameBanner - - thumb_func_start sub_803DC14 -sub_803DC14: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - b _0803DC5C -_0803DC1E: - ldrb r1, [r4] - adds r4, 0x1 - cmp r1, 0x2F - bne _0803DC2C - movs r5, 0 - adds r6, 0x18 - b _0803DC5C -_0803DC2C: - cmp r1, 0x23 - bne _0803DC34 - adds r5, 0x8 - b _0803DC5C -_0803DC34: - cmp r1, 0x20 - bne _0803DC3C - adds r5, 0xC - b _0803DC5C -_0803DC3C: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0803DC50 - ldrb r0, [r4] - cmp r0, 0 - beq _0803DC50 - lsls r1, 8 - orrs r1, r0 - adds r4, 0x1 -_0803DC50: - adds r0, r1, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_803DC6C - adds r5, r0 -_0803DC5C: - ldrb r0, [r4] - cmp r0, 0 - bne _0803DC1E - adds r0, r6, 0 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_803DC14 - - thumb_func_start sub_803DC6C -sub_803DC6C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x120 - adds r7, r1, 0 - adds r5, r2, 0 - bl sub_803DEC8 - adds r4, r0, 0 - ldr r0, [r4] - mov r1, sp - bl sub_803DD30 - ldrb r4, [r4, 0x6] - mov r9, r4 - mov r6, sp - adds r0, r5, 0 - cmp r5, 0 - bge _0803DC96 - adds r0, r5, 0x7 -_0803DC96: - asrs r0, 3 - lsls r3, r0, 3 - subs r0, r3, r0 - lsls r0, 2 - adds r1, r7, 0 - cmp r7, 0 - bge _0803DCA6 - adds r1, r7, 0x7 -_0803DCA6: - asrs r1, 3 - adds r0, r1 - lsls r0, 5 - ldr r4, _0803DD28 - adds r2, r0, r4 - subs r0, r5, r3 - lsls r0, 2 - adds r2, r0 - lsls r1, 3 - subs r1, r7, r1 - lsls r1, 4 - ldr r0, _0803DD2C - adds r4, r1, r0 - movs r0, 0 -_0803DCC2: - adds r3, r2, 0 - adds r7, r3, 0x4 - adds r5, 0x1 - mov r12, r5 - adds r0, 0x1 - mov r8, r0 - movs r5, 0x2 -_0803DCD0: - ldr r2, [r6] - cmp r2, 0 - beq _0803DCF6 - ldr r1, [r4] - ands r1, r2 - ldr r0, [r4, 0x8] - lsls r1, r0 - ldr r0, [r3] - orrs r0, r1 - str r0, [r3] - adds r3, 0x20 - ldr r0, [r4, 0x4] - ands r2, r0 - ldr r0, [r4, 0xC] - lsrs r2, r0 - ldr r0, [r3] - orrs r0, r2 - str r0, [r3] - subs r3, 0x20 -_0803DCF6: - adds r6, 0x4 - adds r3, 0x20 - subs r5, 0x1 - cmp r5, 0 - bge _0803DCD0 - adds r2, r7, 0 - mov r5, r12 - movs r0, 0x7 - ands r0, r5 - cmp r0, 0 - bne _0803DD12 - movs r0, 0xD8 - lsls r0, 2 - adds r2, r7, r0 -_0803DD12: - mov r0, r8 - cmp r0, 0x17 - ble _0803DCC2 - mov r0, r9 - add sp, 0x120 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0803DD28: .4byte 0x06000140 -_0803DD2C: .4byte gUnknown_80F6120 - thumb_func_end sub_803DC6C - - thumb_func_start sub_803DD30 -sub_803DD30: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _0803DDBC - add sp, r4 - adds r4, r0, 0 - mov r10, r1 - movs r3, 0 - movs r5, 0 - ldr r0, _0803DDC0 - mov r8, r0 - movs r6, 0xF - movs r7, 0xF - mov r2, sp -_0803DD50: - ldrb r0, [r4] - lsrs r1, r0, 4 - ands r1, r6 - strb r1, [r2] - adds r1, r7, 0 - ands r1, r0 - strb r1, [r2, 0x1] - adds r4, 0x1 - adds r2, 0x2 - adds r5, 0x2 - cmp r5, r8 - ble _0803DD50 - ldr r1, _0803DDC0 - cmp r3, r1 - bgt _0803DDF8 - movs r0, 0x90 - lsls r0, 2 - mov r2, sp - adds r2, r0 - mov r12, r2 - mov r8, r1 - mov r2, sp - mov r9, r0 -_0803DD7E: - ldrb r1, [r2] - adds r2, 0x1 - movs r6, 0x7 - ands r6, r1 - movs r0, 0x8 - ands r1, r0 - cmp r1, 0 - beq _0803DDC4 - ldrb r1, [r2] - adds r2, 0x1 - movs r4, 0 - cmp r4, r6 - bge _0803DDF4 - mov r5, r12 - adds r0, r5, r3 - strb r1, [r0] - adds r3, 0x1 - cmp r3, r8 - bgt _0803DDF8 - mov r5, sp - add r5, r9 - ldr r7, _0803DDC0 -_0803DDAA: - adds r4, 0x1 - cmp r4, r6 - bge _0803DDF4 - adds r0, r5, r3 - strb r1, [r0] - adds r3, 0x1 - cmp r3, r7 - ble _0803DDAA - b _0803DDF4 - .align 2, 0 -_0803DDBC: .4byte 0xfffffb80 -_0803DDC0: .4byte 0x0000023f -_0803DDC4: - movs r4, 0 - cmp r4, r6 - bge _0803DDF4 - ldrb r1, [r2] - adds r2, 0x1 - mov r5, r12 - adds r0, r5, r3 - strb r1, [r0] - adds r3, 0x1 - cmp r3, r8 - bgt _0803DDF8 - mov r5, sp - add r5, r9 - ldr r7, _0803DE78 -_0803DDE0: - adds r4, 0x1 - cmp r4, r6 - bge _0803DDF4 - ldrb r1, [r2] - adds r2, 0x1 - adds r0, r5, r3 - strb r1, [r0] - adds r3, 0x1 - cmp r3, r7 - ble _0803DDE0 -_0803DDF4: - cmp r3, r8 - ble _0803DD7E -_0803DDF8: - movs r5, 0 - ldr r4, _0803DE78 - add r3, sp, 0x240 -_0803DDFE: - ldrb r2, [r3, 0x7] - lsls r2, 28 - ldrb r0, [r3, 0x6] - lsls r0, 24 - movs r1, 0xF0 - lsls r1, 20 - ands r0, r1 - orrs r2, r0 - ldrb r0, [r3, 0x5] - lsls r0, 20 - movs r1, 0xF0 - lsls r1, 16 - ands r0, r1 - orrs r2, r0 - ldrb r0, [r3, 0x4] - lsls r0, 16 - movs r1, 0xF0 - lsls r1, 12 - ands r0, r1 - orrs r2, r0 - ldrb r0, [r3, 0x3] - lsls r0, 12 - movs r1, 0xF0 - lsls r1, 8 - ands r0, r1 - orrs r2, r0 - ldrb r0, [r3, 0x2] - lsls r0, 8 - movs r1, 0xF0 - lsls r1, 4 - ands r0, r1 - orrs r2, r0 - ldrb r0, [r3, 0x1] - lsls r0, 4 - movs r1, 0xF0 - ands r0, r1 - orrs r2, r0 - ldrb r1, [r3] - movs r0, 0xF - ands r0, r1 - orrs r2, r0 - mov r0, r10 - adds r0, 0x4 - mov r10, r0 - subs r0, 0x4 - stm r0!, {r2} - adds r3, 0x8 - adds r5, 0x8 - cmp r5, r4 - ble _0803DDFE - movs r3, 0x90 - lsls r3, 3 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803DE78: .4byte 0x0000023f - thumb_func_end sub_803DD30 - - thumb_func_start CalcStringWidth -CalcStringWidth: - push {r4,r5,lr} - adds r4, r0, 0 - movs r5, 0 - b _0803DEBA -_0803DE84: - ldrb r1, [r4] - adds r4, 0x1 - cmp r1, 0x23 - bne _0803DE90 - adds r5, 0x8 - b _0803DEBA -_0803DE90: - cmp r1, 0x20 - bne _0803DE98 - adds r5, 0xC - b _0803DEBA -_0803DE98: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0803DEAC - ldrb r0, [r4] - cmp r0, 0 - beq _0803DEAC - lsls r1, 8 - orrs r1, r0 - adds r4, 0x1 -_0803DEAC: - adds r0, r1, 0 - bl sub_803DEC8 - cmp r0, 0 - beq _0803DEBA - ldrb r0, [r0, 0x6] - adds r5, r0 -_0803DEBA: - ldrb r0, [r4] - cmp r0, 0 - bne _0803DE84 - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end CalcStringWidth - - thumb_func_start sub_803DEC8 -sub_803DEC8: - push {r4,r5,lr} - adds r3, r0, 0 - ldr r0, _0803DEFC - ldr r0, [r0] - ldr r0, [r0, 0x4] - ldr r5, [r0] - ldr r0, _0803DF00 - adds r1, r3, r0 - ldr r0, _0803DF04 - cmp r1, r0 - bhi _0803DF08 - movs r2, 0xFF - ands r2, r3 - movs r1, 0xFF - lsls r1, 8 - ands r1, r3 - asrs r1, 8 - subs r2, 0x20 - subs r1, 0xF8 - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 5 - adds r0, r2 - lsls r0, 3 - adds r1, r5, r0 - b _0803DF56 - .align 2, 0 -_0803DEFC: .4byte gUnknown_202EC8C -_0803DF00: .4byte 0xffff0800 -_0803DF04: .4byte 0x000007fe -_0803DF08: - movs r4, 0 - ldr r0, _0803DF1C - ldr r0, [r0] - subs r2, r0, 0x1 - cmp r4, r2 - bge _0803DF48 - lsrs r0, r2, 31 - adds r0, r2, r0 - b _0803DF3A - .align 2, 0 -_0803DF1C: .4byte gUnknown_202EC90 -_0803DF20: - lsls r0, r1, 3 - adds r0, r5 - ldrh r0, [r0, 0x4] - cmp r0, r3 - bge _0803DF2E - adds r4, r1, 0x1 - b _0803DF30 -_0803DF2E: - adds r2, r1, 0 -_0803DF30: - cmp r4, r2 - bge _0803DF48 - adds r0, r4, r2 - lsrs r1, r0, 31 - adds r0, r1 -_0803DF3A: - asrs r1, r0, 1 - lsls r0, r1, 3 - adds r0, r5 - ldrh r0, [r0, 0x4] - cmp r0, r3 - bne _0803DF20 - adds r4, r1, 0 -_0803DF48: - lsls r0, r4, 3 - adds r1, r5, r0 - ldrh r0, [r1, 0x4] - cmp r0, r3 - beq _0803DF56 - adds r1, r5, 0 - adds r1, 0x8 -_0803DF56: - adds r0, r1, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_803DEC8 - - thumb_func_start sub_803DF60 -sub_803DF60: - push {r4-r7,lr} - ldr r0, _0803DFF8 - ldr r1, _0803DFFC - bl OpenFileAndGetFileDataPtr - adds r7, r0, 0 - ldr r0, [r7, 0x4] - ldr r5, [r0] - ldm r5!, {r4} - ldr r6, _0803E000 - cmp r4, 0 - beq _0803DF8C -_0803DF78: - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x20 - bl CpuCopy - adds r6, 0x20 - adds r5, 0x20 - subs r4, 0x1 - cmp r4, 0 - bne _0803DF78 -_0803DF8C: - adds r0, r7, 0 - bl CloseFile - ldr r0, _0803E004 - ldr r1, _0803DFFC - bl OpenFileAndGetFileDataPtr - adds r7, r0, 0 - ldr r5, [r7, 0x4] - ldm r5!, {r4} - ldr r6, _0803E008 - cmp r4, 0 - beq _0803DFBA -_0803DFA6: - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x20 - bl CpuCopy - adds r6, 0x20 - adds r5, 0x20 - subs r4, 0x1 - cmp r4, 0 - bne _0803DFA6 -_0803DFBA: - adds r0, r7, 0 - bl CloseFile - ldr r0, _0803E00C - ldr r4, _0803DFFC - adds r1, r4, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, _0803E010 - str r0, [r1] - ldr r0, _0803E014 - adds r1, r4, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, _0803E018 - str r0, [r1] - ldr r0, _0803E01C - adds r1, r4, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, _0803E020 - str r0, [r1] - ldr r0, _0803E024 - adds r1, r4, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, _0803E028 - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803DFF8: .4byte gUnknown_80F61A8 -_0803DFFC: .4byte gUnknown_83B0000 -_0803E000: .4byte 0x06013400 -_0803E004: .4byte gUnknown_80F61B0 -_0803E008: .4byte 0x06014000 -_0803E00C: .4byte gUnknown_80F61B8 -_0803E010: .4byte gUnknown_202EC94 -_0803E014: .4byte gUnknown_80F61C4 -_0803E018: .4byte gUnknown_202EC98 -_0803E01C: .4byte gUnknown_80F61CC -_0803E020: .4byte gUnknown_202EC9C -_0803E024: .4byte gUnknown_80F61D4 -_0803E028: .4byte gUnknown_202ECA0 - thumb_func_end sub_803DF60 - - thumb_func_start sub_803E02C -sub_803E02C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xC - bl sub_803E13C - mov r1, sp - ldr r0, _0803E118 - ldm r0!, {r2,r3} - stm r1!, {r2,r3} - ldr r1, _0803E11C - mov r0, sp - bl OpenFileAndGetFileDataPtr - adds r7, r0, 0 - ldr r0, [r7, 0x4] - ldr r5, [r0] - ldm r5!, {r4} - ldr r6, _0803E120 - cmp r4, 0 - beq _0803E06C -_0803E058: - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x20 - bl CpuCopy - adds r6, 0x20 - adds r5, 0x20 - subs r4, 0x1 - cmp r4, 0 - bne _0803E058 -_0803E06C: - ldr r0, _0803E124 - ldr r1, [r7, 0x4] - ldr r1, [r1, 0x4] - movs r2, 0x80 - bl CpuCopy - adds r0, r7, 0 - bl CloseFile - movs r6, 0x80 - lsls r6, 2 - movs r4, 0 - ldr r0, _0803E128 - mov r9, r0 - ldr r1, _0803E12C - mov r12, r1 - movs r7, 0 - ldr r2, _0803E130 - mov r8, r2 -_0803E092: - mov r3, r12 - ldrh r0, [r3] - lsls r5, r0, 12 - adds r2, r7, 0 - movs r3, 0x8 -_0803E09C: - mov r0, r9 - ldr r1, [r0] - add r1, r8 - adds r1, r2 - adds r0, r5, 0 - orrs r0, r6 - strh r0, [r1] - adds r6, 0x1 - adds r2, 0x2 - subs r3, 0x1 - cmp r3, 0 - bge _0803E09C - movs r1, 0x2 - add r12, r1 - adds r7, 0x12 - adds r4, 0x1 - cmp r4, 0x1C - ble _0803E092 - movs r4, 0 - ldr r5, _0803E128 - ldr r3, _0803E134 - movs r2, 0xC0 - lsls r2, 8 -_0803E0CA: - ldr r0, [r5] - lsls r1, r4, 1 - adds r0, r3 - adds r0, r1 - strh r2, [r0] - adds r4, 0x1 - cmp r4, 0x8 - ble _0803E0CA - movs r4, 0 - ldr r2, _0803E128 - movs r6, 0xBE - lsls r6, 1 - ldr r5, _0803E138 - movs r3, 0xBF - lsls r3, 1 -_0803E0E8: - ldr r0, [r2] - lsls r1, r4, 2 - adds r0, r1 - adds r0, r6 - strb r4, [r0] - ldr r0, [r2] - adds r0, r1 - adds r0, r5 - strb r4, [r0] - ldr r0, [r2] - adds r0, r1 - adds r0, r3 - strb r4, [r0] - adds r4, 0x1 - cmp r4, 0xFF - ble _0803E0E8 - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803E118: .4byte gUnknown_80F61DC -_0803E11C: .4byte gUnknown_83B0000 -_0803E120: .4byte 0x0600c000 -_0803E124: .4byte gUnknown_202ECA4 -_0803E128: .4byte gUnknown_203B418 -_0803E12C: .4byte gUnknown_80F5F70 -_0803E130: .4byte 0x00012a18 -_0803E134: .4byte 0x00013554 -_0803E138: .4byte 0x0000017d - thumb_func_end sub_803E02C - - thumb_func_start sub_803E13C -sub_803E13C: - push {r4,r5,lr} - bl sub_8094C14 - ldr r0, _0803E170 - ldr r0, [r0] - ldrb r0, [r0, 0xB] - ldr r5, _0803E174 - cmp r0, 0 - beq _0803E154 - movs r0, 0x80 - lsls r0, 1 - adds r5, r0 -_0803E154: - movs r4, 0 -_0803E156: - adds r0, r4, 0 - adds r0, 0xF0 - adds r1, r5, 0 - bl SetBGPaletteBufferColorArray - adds r5, 0x4 - adds r4, 0x1 - cmp r4, 0xF - ble _0803E156 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803E170: .4byte gUnknown_203B46C -_0803E174: .4byte gUnknown_202D038 - thumb_func_end sub_803E13C - - thumb_func_start sub_803E178 -sub_803E178: - push {r4,lr} - bl sub_8043D10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0803E1E0 - ldr r0, _0803E1AC - ldr r2, [r0] - ldr r3, _0803E1B0 - adds r1, r2, r3 - ldrb r1, [r1] - adds r3, r0, 0 - cmp r1, 0x15 - bne _0803E1BC - ldr r1, _0803E1B4 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0803E1BC - ldr r3, _0803E1B8 - adds r1, r2, r3 - movs r0, 0x1C - strh r0, [r1] - b _0803E204 - .align 2, 0 -_0803E1AC: .4byte gUnknown_203B418 -_0803E1B0: .4byte 0x00000644 -_0803E1B4: .4byte 0x000037fe -_0803E1B8: .4byte 0x00003a12 -_0803E1BC: - ldr r4, [r3] - ldr r1, _0803E1D8 - adds r0, r4, r1 - ldrb r0, [r0] - bl sub_80900C0 - lsls r0, 24 - movs r1, 0x16 - cmp r0, 0 - beq _0803E1D2 - movs r1, 0x17 -_0803E1D2: - ldr r2, _0803E1DC - adds r0, r4, r2 - b _0803E202 - .align 2, 0 -_0803E1D8: .4byte 0x00000644 -_0803E1DC: .4byte 0x00003a12 -_0803E1E0: - cmp r0, 0x1 - bne _0803E1F8 - ldr r0, _0803E1F0 - ldr r0, [r0] - ldr r3, _0803E1F4 - adds r0, r3 - movs r1, 0x6 - b _0803E202 - .align 2, 0 -_0803E1F0: .4byte gUnknown_203B418 -_0803E1F4: .4byte 0x00003a12 -_0803E1F8: - ldr r0, _0803E20C - ldr r0, [r0] - ldr r1, _0803E210 - adds r0, r1 - movs r1, 0x18 -_0803E202: - strh r1, [r0] -_0803E204: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803E20C: .4byte gUnknown_203B418 -_0803E210: .4byte 0x00003a12 - thumb_func_end sub_803E178 - - thumb_func_start sub_803E214 -sub_803E214: - push {lr} - ldr r0, _0803E23C - ldr r0, [r0] - bl CloseFile - ldr r0, _0803E240 - ldr r0, [r0] - bl CloseFile - ldr r0, _0803E244 - ldr r0, [r0] - bl CloseFile - ldr r0, _0803E248 - ldr r0, [r0] - bl CloseFile - pop {r0} - bx r0 - .align 2, 0 -_0803E23C: .4byte gUnknown_202EC94 -_0803E240: .4byte gUnknown_202EC98 -_0803E244: .4byte gUnknown_202EC9C -_0803E248: .4byte gUnknown_202ECA0 - thumb_func_end sub_803E214 - - thumb_func_start nullsub_56 -nullsub_56: - bx lr - thumb_func_end nullsub_56 - - thumb_func_start sub_803E250 -sub_803E250: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - ldr r1, _0803E3FC - ldr r0, _0803E400 - str r0, [r1] - ldr r0, _0803E404 - movs r1, 0 - str r1, [r0] - ldr r0, _0803E408 - strb r1, [r0] - ldr r0, _0803E40C - strh r1, [r0] - ldr r5, _0803E410 - ldrh r0, [r5, 0x6] - movs r3, 0xF - adds r2, r3, 0 - ands r2, r0 - ldrh r4, [r5] - ldr r1, _0803E414 - adds r0, r1, 0 - ands r0, r4 - ldr r4, _0803E418 - ands r0, r4 - ldr r6, _0803E41C - ands r0, r6 - ldr r7, _0803E420 - ands r0, r7 - ldr r4, _0803E424 - mov r12, r4 - ands r0, r4 - ldr r4, _0803E428 - ands r0, r4 - strh r0, [r5] - movs r0, 0x80 - lsls r0, 7 - strh r0, [r5, 0x2] - movs r0, 0 - strh r0, [r5, 0x4] - ldr r0, _0803E42C - mov r10, r0 - ands r2, r0 - subs r0, 0x1 - mov r9, r0 - ands r2, r0 - subs r0, 0x2 - mov r8, r0 - ands r2, r0 - strh r2, [r5, 0x6] - ldr r2, _0803E430 - ldrh r0, [r2, 0x6] - ands r3, r0 - ldrh r0, [r2] - ands r1, r0 - ldr r0, _0803E418 - ands r1, r0 - ands r1, r6 - ands r1, r7 - mov r7, r12 - ands r1, r7 - ands r1, r4 - strh r1, [r2] - movs r0, 0 - strh r0, [r2, 0x2] - movs r0, 0xB8 - lsls r0, 7 - strh r0, [r2, 0x4] - mov r0, r10 - ands r3, r0 - mov r1, r9 - ands r3, r1 - mov r7, r8 - ands r3, r7 - strh r3, [r2, 0x6] - movs r0, 0 - mov r8, r0 -_0803E2EE: - movs r1, 0 - mov r9, r1 - mov r2, r8 - lsls r0, r2, 3 - lsls r2, 1 - mov r12, r2 - mov r3, r8 - adds r3, 0x1 - str r3, [sp] - mov r10, r1 - add r0, r8 - lsls r5, r0, 3 - ldr r4, _0803E434 - adds r4, r5, r4 - str r4, [sp, 0x4] - ldr r7, _0803E438 - adds r6, r5, r7 - ldr r0, _0803E43C - adds r3, r5, r0 - ldr r1, _0803E440 - adds r4, r5, r1 -_0803E318: - mov r7, r10 - adds r2, r5, r7 - ldrh r1, [r3] - ldr r0, _0803E414 - ands r0, r1 - ldr r1, _0803E418 - ands r0, r1 - ldr r1, _0803E41C - ands r0, r1 - ldr r1, _0803E420 - ands r0, r1 - ldr r1, _0803E424 - ands r0, r1 - strh r0, [r3] - ldr r1, [r4] - movs r7, 0x3 - ands r1, r7 - lsls r1, 14 - ldr r7, _0803E428 - ands r0, r7 - orrs r0, r1 - strh r0, [r3] - ldrh r1, [r3, 0x2] - ldr r0, _0803E444 - ands r0, r1 - strh r0, [r3, 0x2] - ldr r1, _0803E440 - adds r1, 0x4 - adds r2, r1 - ldr r1, [r2] - movs r2, 0x3 - ands r1, r2 - lsls r1, 14 - ands r0, r7 - orrs r0, r1 - strh r0, [r3, 0x2] - ldr r1, [r6] - ldr r0, _0803E448 - ands r1, r0 - ldrh r2, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r2 - orrs r0, r1 - ldr r7, _0803E41C - ands r0, r7 - movs r1, 0xC0 - lsls r1, 4 - orrs r0, r1 - movs r2, 0 - orrs r0, r2 - ldr r1, _0803E44C - ands r0, r1 - strh r0, [r3, 0x4] - ldrh r1, [r3, 0x6] - ldr r0, _0803E42C - ands r0, r1 - ldr r1, _0803E450 - ands r0, r1 - strh r0, [r3, 0x6] - mov r7, r9 - lsls r1, r7, 2 - mov r0, r12 - add r0, r8 - lsls r0, 3 - adds r1, r0 - ldr r0, _0803E454 - adds r1, r0, r1 - ldr r0, [r1] - ldr r1, [sp, 0x4] - str r0, [r1] - adds r1, 0xC - str r1, [sp, 0x4] - adds r6, 0xC - adds r3, 0xC - adds r4, 0xC - movs r2, 0xC - add r10, r2 - movs r7, 0x1 - add r9, r7 - mov r0, r9 - cmp r0, 0x5 - ble _0803E318 - ldr r1, [sp] - mov r8, r1 - cmp r1, 0x1 - ble _0803E2EE - movs r2, 0 - ldr r3, _0803E458 - ldr r0, [r3] - ldr r4, _0803E45C - adds r0, r4 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r3] - ldr r7, _0803E460 - adds r0, r7 - strb r1, [r0] - ldr r0, _0803E464 - str r2, [r0] - movs r0, 0xF8 - ldr r1, _0803E468 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803E3FC: .4byte gUnknown_202EDD0 -_0803E400: .4byte 0x000003e7 -_0803E404: .4byte gUnknown_202EDD4 -_0803E408: .4byte gUnknown_203B40D -_0803E40C: .4byte gUnknown_202EDE8 -_0803E410: .4byte gUnknown_202EDC0 -_0803E414: .4byte 0x0000feff -_0803E418: .4byte 0x0000fdff -_0803E41C: .4byte 0x0000f3ff -_0803E420: .4byte 0x0000efff -_0803E424: .4byte 0x0000dfff -_0803E428: .4byte 0x00003fff -_0803E42C: .4byte 0x0000fffe -_0803E430: .4byte gUnknown_202EDB8 -_0803E434: .4byte gUnknown_202ED30 -_0803E438: .4byte gUnknown_80F6224 -_0803E43C: .4byte gUnknown_202ED28 -_0803E440: .4byte gUnknown_80F621C -_0803E444: .4byte 0x0000c1ff -_0803E448: .4byte 0x000003ff -_0803E44C: .4byte 0x00000fff -_0803E450: .4byte 0x0000fffd -_0803E454: .4byte gUnknown_80F61EC -_0803E458: .4byte gUnknown_203B418 -_0803E45C: .4byte 0x00018217 -_0803E460: .4byte 0x00018218 -_0803E464: .4byte gUnknown_202EDC8 -_0803E468: .4byte gUnknown_202D058 - thumb_func_end sub_803E250 - - thumb_func_start sub_803E46C -sub_803E46C: - push {lr} - adds r1, r0, 0 - ldr r0, _0803E480 - ldrb r0, [r0] - cmp r0, 0 - beq _0803E484 - adds r0, r1, 0 - bl sub_803E490 - b _0803E48A - .align 2, 0 -_0803E480: .4byte gUnknown_203B40C -_0803E484: - adds r0, r1, 0 - bl sub_803E668 -_0803E48A: - pop {r0} - bx r0 - thumb_func_end sub_803E46C - - thumb_func_start sub_803E490 -sub_803E490: - push {r4,r5,lr} - sub sp, 0x8 - ldr r1, _0803E4D8 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - bl xxx_draw_string_80524F0 - bl sub_8085F78 - movs r0, 0x1 - bl sub_803F580 - ldr r2, _0803E4DC - ldr r1, [r2] - ldr r3, _0803E4E0 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0803E4EC - ldr r4, _0803E4E4 - adds r1, r4 - movs r0, 0x2 - strb r0, [r1] - ldr r1, [r2] - ldr r2, _0803E4E8 - adds r0, r1, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - subs r4, 0x16 - adds r1, r4 - movs r2, 0 - ldrsh r1, [r1, r2] - bl sub_800CCA0 - b _0803E4FC - .align 2, 0 -_0803E4D8: .4byte gUnknown_202EDD4 -_0803E4DC: .4byte gUnknown_203B418 -_0803E4E0: .4byte 0x0001821a -_0803E4E4: .4byte 0x00018208 -_0803E4E8: .4byte 0x000181f0 -_0803E4EC: - ldr r3, _0803E628 - adds r1, r3 - movs r0, 0x3 - strb r0, [r1] - movs r0, 0 - movs r1, 0 - bl sub_800CCA0 -_0803E4FC: - ldr r4, _0803E62C - ldr r2, [r4] - ldr r5, _0803E630 - adds r0, r2, r5 - movs r1, 0 - ldrsh r0, [r0, r1] - ldr r3, _0803E634 - adds r1, r2, r3 - movs r3, 0 - ldrsh r1, [r1, r3] - ldr r3, _0803E638 - adds r2, r3 - ldr r2, [r2] - subs r1, r2 - bl sub_800CCAC - bl sub_806CC10 - bl sub_804522C - bl sub_803F9CC - ldr r0, [r4] - adds r0, r5 - bl sub_800F7D0 - ldr r1, [r4] - ldrh r2, [r1, 0x12] - movs r3, 0x12 - ldrsh r0, [r1, r3] - cmp r0, 0x63 - bgt _0803E540 - adds r0, r2, 0x1 - strh r0, [r1, 0x12] -_0803E540: - ldr r0, [r4] - adds r0, r5 - bl sub_800E90C - bl sub_8042E5C - ldr r0, _0803E63C - ldr r0, [r0] - cmp r0, 0 - beq _0803E562 - cmp r0, 0x3 - beq _0803E562 - ldr r0, _0803E640 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0x6 - bne _0803E566 -_0803E562: - bl sub_8040894 -_0803E566: - bl sub_803ECE0 - bl sub_803EDF0 - ldr r0, _0803E62C - ldr r3, [r0] - ldr r4, _0803E644 - adds r0, r3, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _0803E5A2 - ldr r1, _0803E648 - adds r0, r3, r1 - ldr r0, [r0] - cmp r0, 0x3 - beq _0803E5A2 - ldr r0, _0803E64C - ldrb r0, [r0] - ldr r1, _0803E650 - ldr r2, _0803E654 - ldr r2, [r2] - str r2, [sp] - movs r4, 0xBE - lsls r4, 1 - adds r2, r3, r4 - str r2, [sp, 0x4] - movs r2, 0xA0 - movs r3, 0x20 - bl sub_8004AF0 -_0803E5A2: - ldr r0, _0803E640 - ldr r0, [r0] - ldrb r0, [r0, 0xA] - bl nullsub_8 - bl sub_8005180 - bl nullsub_12 - bl sub_80060EC - ldr r1, _0803E658 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r0, _0803E65C - ldr r0, [r0] - bl sub_8094FB4 - bl sub_800CB20 - bl sub_800485C - bl CopySpritesToOam - bl nullsub_13 - bl sub_8005304 - bl nullsub_14 - bl TransferBGPaletteBuffer - bl sub_8009908 - bl xxx_call_update_bg_vram - bl sub_8040788 - bl xxx_call_update_bg_sound_input - ldr r0, _0803E62C - ldr r0, [r0] - ldr r1, _0803E660 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - bl sub_8083F58 - bl sub_8011860 - bl sub_8040B60 - movs r0, 0 - bl sub_8004D8C - movs r0, 0 - bl nullsub_10 - ldr r1, _0803E664 - ldr r0, [r1] - subs r0, 0x1 - str r0, [r1] - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803E628: .4byte 0x00018208 -_0803E62C: .4byte gUnknown_203B418 -_0803E630: .4byte 0x000181f0 -_0803E634: .4byte 0x000181f2 -_0803E638: .4byte 0x000181fc -_0803E63C: .4byte gUnknown_202EDD0 -_0803E640: .4byte gUnknown_203B46C -_0803E644: .4byte 0x00018215 -_0803E648: .4byte 0x0001c06c -_0803E64C: .4byte gUnknown_203B40D -_0803E650: .4byte gUnknown_202EE8C -_0803E654: .4byte gUnknown_202EDC8 -_0803E658: .4byte gUnknown_202EDCC -_0803E65C: .4byte gUnknown_203B47C -_0803E660: .4byte 0x00018213 -_0803E664: .4byte gUnknown_202EDD4 - thumb_func_end sub_803E490 - - thumb_func_start sub_803E668 -sub_803E668: - push {r4,lr} - ldr r4, _0803E6F0 - ldr r0, [r4] - adds r0, 0x1 - str r0, [r4] - ldr r0, _0803E6F4 - ldr r0, [r0] - ldrb r0, [r0, 0xA] - bl nullsub_8 - bl sub_8005180 - bl nullsub_12 - movs r0, 0 - movs r1, 0 - bl sub_8005838 - bl sub_80060EC - ldr r1, _0803E6F8 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r0, _0803E6FC - ldr r0, [r0] - bl sub_8094FB4 - bl sub_800CB20 - bl sub_800485C - bl CopySpritesToOam - bl nullsub_13 - bl sub_8005304 - bl nullsub_14 - bl TransferBGPaletteBuffer - bl sub_8009908 - bl xxx_call_update_bg_vram - bl xxx_call_update_bg_sound_input - ldr r0, _0803E700 - ldr r0, [r0] - ldr r1, _0803E704 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - bl sub_8011860 - movs r0, 0 - bl sub_8004D8C - movs r0, 0 - bl nullsub_10 - ldr r0, [r4] - subs r0, 0x1 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0803E6F0: .4byte gUnknown_202EDD4 -_0803E6F4: .4byte gUnknown_203B46C -_0803E6F8: .4byte gUnknown_202EDCC -_0803E6FC: .4byte gUnknown_203B47C -_0803E700: .4byte gUnknown_203B418 -_0803E704: .4byte 0x00018213 - thumb_func_end sub_803E668 - - thumb_func_start sub_803E708 -sub_803E708: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - cmp r4, 0 - beq _0803E71E -_0803E712: - adds r0, r5, 0 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bne _0803E712 -_0803E71E: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_803E708 - - thumb_func_start sub_803E724 -sub_803E724: - push {r4-r6,lr} - adds r4, r0, 0 - ldr r5, _0803E744 - movs r6, 0xF0 -_0803E72C: - adds r0, r4, 0 - bl sub_803E46C - ldrh r1, [r5] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - bne _0803E72C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0803E744: .4byte gUnknown_20255F0 - thumb_func_end sub_803E724 - - thumb_func_start sub_803E748 -sub_803E748: - push {r4,r5,lr} - movs r5, 0x1F - ldr r1, _0803E7B8 - movs r0, 0x1 - strb r0, [r1] - ldr r1, _0803E7BC - movs r0, 0 - str r0, [r1] - movs r0, 0x1 - movs r1, 0x1F - bl sub_803E874 - movs r4, 0 -_0803E762: - cmp r4, 0x1F - bgt _0803E780 - subs r5, 0x2 - cmp r5, 0 - bgt _0803E780 - movs r5, 0 - movs r0, 0x1 - movs r1, 0 - bl sub_803EAF0 - ldr r0, _0803E7C0 - ldr r0, [r0] - ldr r1, _0803E7C4 - adds r0, r1 - strb r5, [r0] -_0803E780: - cmp r4, 0xB - ble _0803E790 - ldr r1, _0803E7BC - ldr r0, [r1] - cmp r0, 0x1E - bgt _0803E790 - adds r0, 0x1 - str r0, [r1] -_0803E790: - movs r0, 0x1 - adds r1, r5, 0 - bl sub_803E874 - movs r0, 0x5 - bl sub_803E46C - adds r4, 0x1 - cmp r4, 0x2B - ble _0803E762 - ldr r1, _0803E7B8 - movs r0, 0 - strb r0, [r1] - ldr r1, _0803E7BC - movs r0, 0x1F - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803E7B8: .4byte gUnknown_203B40D -_0803E7BC: .4byte gUnknown_202EDC8 -_0803E7C0: .4byte gUnknown_203B418 -_0803E7C4: .4byte 0x00018217 - thumb_func_end sub_803E748 - - thumb_func_start sub_803E7C8 -sub_803E7C8: - push {r4,r5,lr} - movs r4, 0x1F - ldr r1, _0803E820 - movs r0, 0x1 - strb r0, [r1] - ldr r1, _0803E824 - movs r0, 0 - str r0, [r1] - movs r0, 0x5 - bl sub_803E46C - movs r5, 0 -_0803E7E0: - movs r0, 0x1 - adds r1, r4, 0 - bl sub_803E874 - cmp r5, 0x1F - bgt _0803E806 - subs r4, 0x2 - cmp r4, 0 - bgt _0803E806 - movs r4, 0 - movs r0, 0x1 - movs r1, 0 - bl sub_803EAF0 - ldr r0, _0803E828 - ldr r0, [r0] - ldr r1, _0803E82C - adds r0, r1 - strb r4, [r0] -_0803E806: - movs r0, 0x5 - bl sub_803E46C - adds r5, 0x1 - cmp r5, 0x2B - ble _0803E7E0 - ldr r1, _0803E820 - movs r0, 0 - strb r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803E820: .4byte gUnknown_203B40D -_0803E824: .4byte gUnknown_202EDC8 -_0803E828: .4byte gUnknown_203B418 -_0803E82C: .4byte 0x00018217 - thumb_func_end sub_803E7C8 - - thumb_func_start sub_803E830 -sub_803E830: - push {r4,r5,lr} - ldr r1, _0803E86C - movs r0, 0x1 - strb r0, [r1] - ldr r5, _0803E870 - movs r4, 0x1F -_0803E83C: - movs r0, 0 - movs r1, 0 - bl sub_803E874 - movs r0, 0x5 - bl sub_803E46C - ldr r0, [r5] - cmp r0, 0 - ble _0803E854 - subs r0, 0x1 - str r0, [r5] -_0803E854: - subs r4, 0x1 - cmp r4, 0 - bge _0803E83C - ldr r0, _0803E870 - movs r1, 0 - str r1, [r0] - ldr r0, _0803E86C - strb r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803E86C: .4byte gUnknown_203B40D -_0803E870: .4byte gUnknown_202EDC8 - thumb_func_end sub_803E830 - - thumb_func_start sub_803E874 -sub_803E874: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r9, r1 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r0, _0803E9A4 - ldr r0, [r0] - ldr r5, [r0, 0x4] - ldr r1, _0803E9A8 - ldr r0, _0803E9AC - ldr r2, [r0] - ldr r0, _0803E9B0 - ldr r3, [r0] - movs r0, 0xBE - lsls r0, 1 - adds r3, r0 - movs r0, 0 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - movs r6, 0x1 - movs r4, 0x9F -_0803E8AA: - ldr r1, _0803E9AC - mov r8, r1 - ldr r2, [r1] - ldr r7, _0803E9B0 - ldr r3, [r7] - movs r0, 0xBE - lsls r0, 1 - adds r3, r0 - adds r0, r6, 0 - adds r1, r5, 0 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - adds r6, 0x1 - subs r4, 0x1 - cmp r4, 0 - bne _0803E8AA - ldr r3, [r7] - ldr r1, _0803E9B4 - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0803E8E2 - ldr r2, _0803E9B8 - adds r0, r3, r2 - ldr r0, [r0] - cmp r0, 0x3 - bne _0803E8FC -_0803E8E2: - ldr r1, _0803E9BC - mov r2, r8 - ldr r0, [r2] - str r0, [sp] - movs r2, 0xBE - lsls r2, 1 - adds r0, r3, r2 - str r0, [sp, 0x4] - movs r0, 0x1 - movs r2, 0xA0 - movs r3, 0x20 - bl sub_8004AF0 -_0803E8FC: - adds r6, 0x20 - ldr r5, _0803E9C0 - movs r4, 0x20 -_0803E902: - ldr r0, _0803E9AC - ldr r2, [r0] - ldr r0, _0803E9B0 - ldr r3, [r0] - movs r0, 0xBE - lsls r0, 1 - adds r3, r0 - adds r0, r6, 0 - adds r1, r5, 0 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - adds r6, 0x1 - subs r4, 0x1 - cmp r4, 0 - bne _0803E902 - mov r1, r10 - cmp r1, 0 - beq _0803E948 - movs r6, 0xE0 - ldr r0, _0803E9C4 - ldr r0, [r0] - ldr r5, [r0, 0x4] - movs r4, 0x10 -_0803E932: - adds r0, r6, 0 - adds r1, r5, 0 - mov r2, r9 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - adds r6, 0x1 - subs r4, 0x1 - cmp r4, 0 - bne _0803E932 -_0803E948: - ldr r1, _0803E9C8 - ldr r4, _0803E9AC - ldr r2, [r4] - movs r0, 0xF8 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - ldr r0, _0803E9B0 - ldr r0, [r0] - ldr r2, _0803E9CC - adds r0, r2 - ldr r0, [r0] - ldr r5, [r0, 0x4] - movs r6, 0x80 - lsls r6, 1 - adds r7, r4, 0 - movs r4, 0xD0 -_0803E96A: - ldr r2, [r7] - ldr r0, _0803E9B0 - ldr r3, [r0] - movs r0, 0xBE - lsls r0, 1 - adds r3, r0 - adds r0, r6, 0 - adds r1, r5, 0 - bl SetBGPaletteBufferColorRGB - ldr r2, [r7] - adds r0, r6, 0 - adds r1, r5, 0 - movs r3, 0 - bl nullsub_4 - adds r5, 0x4 - adds r6, 0x1 - subs r4, 0x1 - cmp r4, 0 - bne _0803E96A - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803E9A4: .4byte gUnknown_202EE88 -_0803E9A8: .4byte gUnknown_80F62AC -_0803E9AC: .4byte gUnknown_202EDC8 -_0803E9B0: .4byte gUnknown_203B418 -_0803E9B4: .4byte 0x00018215 -_0803E9B8: .4byte 0x0001c06c -_0803E9BC: .4byte gUnknown_202EE8C -_0803E9C0: .4byte gUnknown_202ECA4 -_0803E9C4: .4byte gUnknown_202EC88 -_0803E9C8: .4byte gUnknown_202D058 -_0803E9CC: .4byte 0x000181e4 - thumb_func_end sub_803E874 - - thumb_func_start sub_803E9D0 -sub_803E9D0: - push {r4-r7,lr} - ldr r0, _0803EA04 - ldr r0, [r0] - ldr r1, _0803EA08 - adds r0, r1 - ldr r0, [r0] - ldr r4, [r0, 0x4] - movs r6, 0x80 - lsls r6, 1 - ldr r7, _0803EA0C - movs r5, 0xD0 -_0803E9E6: - ldr r2, [r7] - adds r0, r6, 0 - adds r1, r4, 0 - movs r3, 0 - bl nullsub_4 - adds r4, 0x4 - adds r6, 0x1 - subs r5, 0x1 - cmp r5, 0 - bne _0803E9E6 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803EA04: .4byte gUnknown_203B418 -_0803EA08: .4byte 0x000181e4 -_0803EA0C: .4byte gUnknown_202EDC8 - thumb_func_end sub_803E9D0 - - thumb_func_start sub_803EA10 -sub_803EA10: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - ldr r0, _0803EACC - ldr r0, [r0] - ldr r4, [r0, 0x4] - ldr r1, _0803EAD0 - ldr r0, _0803EAD4 - ldr r2, [r0] - ldr r0, _0803EAD8 - ldr r3, [r0] - movs r0, 0xBE - lsls r0, 1 - adds r3, r0 - movs r0, 0 - bl SetBGPaletteBufferColorRGB - adds r4, 0x4 - movs r6, 0x1 - movs r5, 0x9F -_0803EA3A: - ldr r1, _0803EAD4 - mov r8, r1 - ldr r2, [r1] - ldr r7, _0803EAD8 - ldr r3, [r7] - movs r0, 0xBE - lsls r0, 1 - adds r3, r0 - adds r0, r6, 0 - adds r1, r4, 0 - bl SetBGPaletteBufferColorRGB - adds r4, 0x4 - adds r6, 0x1 - subs r5, 0x1 - cmp r5, 0 - bne _0803EA3A - ldr r3, [r7] - ldr r1, _0803EADC - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0803EA72 - ldr r2, _0803EAE0 - adds r0, r3, r2 - ldr r0, [r0] - cmp r0, 0x3 - bne _0803EA8C -_0803EA72: - ldr r1, _0803EAE4 - mov r2, r8 - ldr r0, [r2] - str r0, [sp] - movs r2, 0xBE - lsls r2, 1 - adds r0, r3, r2 - str r0, [sp, 0x4] - movs r0, 0x1 - movs r2, 0xA0 - movs r3, 0x20 - bl sub_8004AF0 -_0803EA8C: - adds r6, 0x20 - ldr r4, _0803EAE8 - movs r5, 0x20 -_0803EA92: - ldr r7, _0803EAD4 - ldr r2, [r7] - ldr r0, _0803EAD8 - ldr r3, [r0] - movs r0, 0xBE - lsls r0, 1 - adds r3, r0 - adds r0, r6, 0 - adds r1, r4, 0 - bl SetBGPaletteBufferColorRGB - adds r4, 0x4 - adds r6, 0x1 - subs r5, 0x1 - cmp r5, 0 - bne _0803EA92 - ldr r1, _0803EAEC - ldr r2, [r7] - movs r0, 0xF8 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803EACC: .4byte gUnknown_202EE88 -_0803EAD0: .4byte gUnknown_80F62AC -_0803EAD4: .4byte gUnknown_202EDC8 -_0803EAD8: .4byte gUnknown_203B418 -_0803EADC: .4byte 0x00018215 -_0803EAE0: .4byte 0x0001c06c -_0803EAE4: .4byte gUnknown_202EE8C -_0803EAE8: .4byte gUnknown_202ECA4 -_0803EAEC: .4byte gUnknown_202D058 - thumb_func_end sub_803EA10 - - thumb_func_start sub_803EAF0 -sub_803EAF0: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, _0803EB20 - ldr r0, [r0] - cmp r4, r0 - bne _0803EB00 - b _0803EC88 -_0803EB00: - cmp r4, 0x5 - bne _0803EB06 - b _0803EC1C -_0803EB06: - cmp r4, 0x5 - bhi _0803EB2E - cmp r4, 0x2 - bne _0803EB10 - b _0803EBFC -_0803EB10: - cmp r4, 0x2 - bhi _0803EB24 - cmp r4, 0 - beq _0803EB70 - cmp r4, 0x1 - beq _0803EB50 - b _0803EC84 - .align 2, 0 -_0803EB20: .4byte gUnknown_202EDD0 -_0803EB24: - cmp r4, 0x3 - beq _0803EB98 - cmp r4, 0x4 - beq _0803EBFC - b _0803EC84 -_0803EB2E: - cmp r4, 0x8 - bne _0803EB34 - b _0803EC34 -_0803EB34: - cmp r4, 0x8 - bhi _0803EB42 - cmp r4, 0x6 - beq _0803EBBC - cmp r4, 0x7 - beq _0803EBDC - b _0803EC84 -_0803EB42: - cmp r4, 0xA - bne _0803EB48 - b _0803EC80 -_0803EB48: - cmp r4, 0xA - bcs _0803EB4E - b _0803EC54 -_0803EB4E: - b _0803EC84 -_0803EB50: - ldr r0, _0803EB6C - ldrb r0, [r0] - cmp r0, 0 - beq _0803EB5E - movs r0, 0 - bl sub_8052210 -_0803EB5E: - bl sub_8004914 - bl sub_803EC94 - movs r0, 0 - movs r1, 0x1 - b _0803EC6E - .align 2, 0 -_0803EB6C: .4byte gUnknown_203B40C -_0803EB70: - bl sub_803EC94 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, _0803EB94 - ldrb r0, [r0] - cmp r0, 0 - bne _0803EB88 - b _0803EC84 -_0803EB88: - bl sub_8040A84 - movs r0, 0 - bl sub_8040ABC - b _0803EC84 - .align 2, 0 -_0803EB94: .4byte gUnknown_203B40C -_0803EB98: - ldr r0, _0803EBB4 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, _0803EBB8 - ldrb r0, [r0] - cmp r0, 0 - beq _0803EC84 - movs r0, 0x1 - bl sub_8040ABC - b _0803EC84 - .align 2, 0 -_0803EBB4: .4byte gUnknown_80F62B0 -_0803EBB8: .4byte gUnknown_203B40C -_0803EBBC: - ldr r0, _0803EBD4 - ldrb r0, [r0] - cmp r0, 0 - beq _0803EBCA - movs r0, 0 - bl sub_8052210 -_0803EBCA: - bl sub_8004914 - ldr r0, _0803EBD8 - movs r1, 0x1 - b _0803EC6E - .align 2, 0 -_0803EBD4: .4byte gUnknown_203B40C -_0803EBD8: .4byte gUnknown_80F6310 -_0803EBDC: - ldr r0, _0803EBF4 - ldrb r0, [r0] - cmp r0, 0 - beq _0803EBEA - movs r0, 0 - bl sub_8052210 -_0803EBEA: - bl sub_8004914 - ldr r0, _0803EBF8 - movs r1, 0x1 - b _0803EC6E - .align 2, 0 -_0803EBF4: .4byte gUnknown_203B40C -_0803EBF8: .4byte gUnknown_80F6370 -_0803EBFC: - ldr r0, _0803EC18 - ldrb r0, [r0] - cmp r0, 0 - beq _0803EC0A - movs r0, 0 - bl sub_8052210 -_0803EC0A: - bl sub_8004914 - bl sub_803EC94 - movs r0, 0 - movs r1, 0x1 - b _0803EC6E - .align 2, 0 -_0803EC18: .4byte gUnknown_203B40C -_0803EC1C: - ldr r0, _0803EC30 - ldrb r0, [r0] - cmp r0, 0 - beq _0803EC2A - movs r0, 0 - bl sub_8052210 -_0803EC2A: - movs r0, 0 - movs r1, 0x1 - b _0803EC6E - .align 2, 0 -_0803EC30: .4byte gUnknown_203B40C -_0803EC34: - ldr r0, _0803EC50 - ldrb r0, [r0] - cmp r0, 0 - beq _0803EC46 - bl sub_8083D44 - movs r0, 0 - bl sub_8052210 -_0803EC46: - movs r0, 0x2 - adds r1, r5, 0 - bl sub_801602C - b _0803EC84 - .align 2, 0 -_0803EC50: .4byte gUnknown_203B40C -_0803EC54: - ldr r0, _0803EC78 - ldrb r0, [r0] - cmp r0, 0 - beq _0803EC66 - movs r0, 0 - bl sub_8052210 - bl sub_8083D44 -_0803EC66: - bl sub_8004914 - ldr r0, _0803EC7C - movs r1, 0 -_0803EC6E: - movs r2, 0x1 - bl sub_800641C - b _0803EC84 - .align 2, 0 -_0803EC78: .4byte gUnknown_203B40C -_0803EC7C: .4byte gUnknown_80F63D0 -_0803EC80: - bl sub_8083D44 -_0803EC84: - ldr r0, _0803EC90 - str r4, [r0] -_0803EC88: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803EC90: .4byte gUnknown_202EDD0 - thumb_func_end sub_803EAF0 - - thumb_func_start sub_803EC94 -sub_803EC94: - push {lr} - ldr r0, _0803ECB0 - movs r1, 0 - strh r1, [r0, 0x1E] - strh r1, [r0, 0x20] - strh r1, [r0, 0xC] - strh r1, [r0, 0xE] - strh r1, [r0, 0x14] - adds r0, 0x28 - bl sub_801317C - pop {r0} - bx r0 - .align 2, 0 -_0803ECB0: .4byte gUnknown_202EE10 - thumb_func_end sub_803EC94 - - thumb_func_start sub_803ECB4 -sub_803ECB4: - push {r4,r5,lr} - adds r5, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - ldr r1, _0803ECDC - movs r0, 0xA - str r0, [r1] - movs r0, 0 - bl sub_8052210 - bl sub_8004914 - adds r0, r5, 0 - movs r1, 0x1 - adds r2, r4, 0 - bl sub_800641C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803ECDC: .4byte gUnknown_202EDD0 - thumb_func_end sub_803ECB4 - - thumb_func_start sub_803ECE0 -sub_803ECE0: - push {lr} - ldr r1, _0803ED24 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - cmp r0, 0 - bge _0803ECF2 - movs r0, 0 - str r0, [r1] -_0803ECF2: - ldr r0, [r1] - cmp r0, 0xB - ble _0803ECFC - movs r0, 0 - str r0, [r1] -_0803ECFC: - ldr r0, _0803ED28 - ldr r2, [r0] - ldr r0, [r1] - cmp r0, 0 - bge _0803ED08 - adds r0, 0x3 -_0803ED08: - asrs r1, r0, 2 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 6 - ldr r1, [r2, 0x4] - adds r1, r0 - movs r2, 0x90 - lsls r2, 2 - ldr r0, _0803ED2C - bl sub_80098BC - pop {r0} - bx r0 - .align 2, 0 -_0803ED24: .4byte gUnknown_202EDD8 -_0803ED28: .4byte gUnknown_202EC94 -_0803ED2C: .4byte 0x06014400 - thumb_func_end sub_803ECE0 - - thumb_func_start sub_803ED30 -sub_803ED30: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r5, r0, 0 - adds r7, r1, 0 - mov r9, r3 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - cmp r5, 0 - beq _0803EDDA - ldr r0, _0803EDAC - ldr r0, [r0] - ldr r1, _0803EDB0 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0803EDDA - movs r4, 0 - ldr r1, _0803EDB4 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _0803ED78 - adds r6, r1, 0 -_0803ED64: - movs r0, 0x29 - bl sub_803E46C - adds r4, 0x1 - cmp r4, 0x13 - bgt _0803ED78 - movs r1, 0 - ldrsh r0, [r6, r1] - cmp r0, 0 - bne _0803ED64 -_0803ED78: - adds r0, r5, 0 - mov r1, r8 - bl sub_803EF90 - ldr r3, _0803EDB4 - movs r2, 0 - movs r1, 0x3C - strh r1, [r3] - str r7, [r3, 0x4] - ldrh r1, [r7, 0x26] - str r1, [r3, 0x8] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 8 - negs r1, r1 - str r1, [r3, 0xC] - str r2, [r3, 0x10] - mov r2, r9 - cmp r2, 0 - bge _0803EDC8 - ldr r0, _0803EDB8 - cmp r5, r0 - bge _0803EDBC - movs r0, 0x6 - b _0803EDCA - .align 2, 0 -_0803EDAC: .4byte gUnknown_203B418 -_0803EDB0: .4byte 0x0001820a -_0803EDB4: .4byte gUnknown_202EDE8 -_0803EDB8: .4byte 0xfffffc19 -_0803EDBC: - cmp r5, 0 - blt _0803EDC4 - movs r0, 0xA - b _0803EDCA -_0803EDC4: - movs r0, 0x3 - b _0803EDCA -_0803EDC8: - mov r0, r9 -_0803EDCA: - strh r0, [r3, 0x2] - ldr r0, _0803EDE8 - ldr r1, _0803EDEC - ldr r1, [r1] - adds r1, 0x18 - movs r2, 0x80 - bl sub_80098BC -_0803EDDA: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803EDE8: .4byte 0x060142c0 -_0803EDEC: .4byte gUnknown_203B418 - thumb_func_end sub_803ED30 - - thumb_func_start sub_803EDF0 -sub_803EDF0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r6, _0803EE18 - movs r1, 0 - ldrsh r0, [r6, r1] - cmp r0, 0 - bne _0803EE06 - b _0803EF42 -_0803EE06: - ldr r0, [r6, 0x4] - bl sub_80450E0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0803EE1C - strh r0, [r6] - b _0803EF42 - .align 2, 0 -_0803EE18: .4byte gUnknown_202EDE8 -_0803EE1C: - ldr r1, [r6, 0x4] - ldr r0, [r6, 0x8] - ldrh r2, [r1, 0x26] - cmp r0, r2 - beq _0803EE2C - movs r0, 0 - strh r0, [r6] - b _0803EF42 -_0803EE2C: - ldrh r0, [r6] - subs r0, 0x1 - strh r0, [r6] - ldr r4, [r6, 0x10] - adds r3, r4, 0 - subs r3, 0x2E - str r3, [r6, 0x10] - ldr r2, [r1, 0x70] - movs r5, 0xB8 - lsls r5, 1 - adds r0, r2, r5 - movs r1, 0 - ldrsh r0, [r0, r1] - ldr r1, [r6, 0xC] - cmp r1, 0 - bge _0803EE4E - adds r1, 0xFF -_0803EE4E: - asrs r1, 8 - adds r1, r0, r1 - ldr r0, _0803EF50 - ldr r0, [r0] - mov r12, r0 - ldr r0, _0803EF54 - add r0, r12 - movs r5, 0 - ldrsh r0, [r0, r5] - subs r7, r1, r0 - movs r1, 0xB9 - lsls r1, 1 - adds r0, r2, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r1, r3, 0 - cmp r1, 0 - bge _0803EE76 - adds r1, r4, 0 - adds r1, 0xD1 -_0803EE76: - asrs r1, 8 - adds r1, r0, r1 - ldr r0, _0803EF58 - add r0, r12 - movs r3, 0 - ldrsh r0, [r0, r3] - adds r0, 0x18 - subs r2, r1, r0 - movs r0, 0x20 - negs r0, r0 - cmp r7, r0 - blt _0803EF42 - adds r0, 0x18 - cmp r2, r0 - blt _0803EF42 - cmp r7, 0xEF - bgt _0803EF42 - cmp r2, 0x9F - bgt _0803EF42 - ldr r1, _0803EF5C - ands r1, r2 - lsls r1, 4 - ldr r0, _0803EF60 - ldrh r2, [r0, 0x6] - movs r4, 0xF - mov r8, r4 - mov r3, r8 - ands r3, r2 - orrs r3, r1 - strh r3, [r0, 0x6] - ldrh r2, [r0] - ldr r1, _0803EF64 - ands r1, r2 - ldr r2, _0803EF68 - ands r1, r2 - movs r5, 0x3 - mov r9, r5 - ldr r2, _0803EF6C - mov r10, r2 - ands r1, r2 - ldr r2, _0803EF70 - ands r1, r2 - ldr r2, _0803EF74 - ands r1, r2 - movs r5, 0x80 - lsls r5, 7 - ldr r4, _0803EF78 - ands r1, r4 - orrs r1, r5 - strh r1, [r0] - ldr r1, _0803EF7C - ands r7, r1 - ldrh r2, [r0, 0x2] - movs r1, 0xFE - lsls r1, 8 - ands r1, r2 - orrs r1, r7 - ldr r2, _0803EF80 - ands r1, r2 - ands r1, r4 - orrs r1, r5 - strh r1, [r0, 0x2] - ldr r4, _0803EF84 - ldrh r2, [r0, 0x4] - movs r1, 0xFC - lsls r1, 8 - ands r1, r2 - orrs r1, r4 - movs r2, 0 - orrs r1, r2 - strh r1, [r0, 0x4] - ldr r2, _0803EF88 - add r2, r12 - ldrb r2, [r2] - mov r4, r9 - ands r2, r4 - lsls r2, 10 - mov r5, r10 - ands r1, r5 - orrs r1, r2 - movs r4, 0x2 - ldrsh r2, [r6, r4] - mov r5, r8 - ands r2, r5 - lsls r2, 12 - ldr r4, _0803EF5C - ands r1, r4 - orrs r1, r2 - strh r1, [r0, 0x4] - ldr r1, _0803EF8C - ands r3, r1 - subs r1, 0x1 - ands r3, r1 - subs r1, 0x2 - ands r3, r1 - strh r3, [r0, 0x6] - movs r1, 0x80 - lsls r1, 1 - movs r2, 0 - movs r3, 0 - bl AddSprite -_0803EF42: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803EF50: .4byte gUnknown_203B418 -_0803EF54: .4byte 0x000181f0 -_0803EF58: .4byte 0x000181f2 -_0803EF5C: .4byte 0x00000fff -_0803EF60: .4byte gUnknown_202EDDC -_0803EF64: .4byte 0x0000feff -_0803EF68: .4byte 0x0000fdff -_0803EF6C: .4byte 0x0000f3ff -_0803EF70: .4byte 0x0000efff -_0803EF74: .4byte 0x0000dfff -_0803EF78: .4byte 0x00003fff -_0803EF7C: .4byte 0x000001ff -_0803EF80: .4byte 0x0000c1ff -_0803EF84: .4byte 0x00000216 -_0803EF88: .4byte 0x00018208 -_0803EF8C: .4byte 0x0000fffe - thumb_func_end sub_803EDF0 - - thumb_func_start sub_803EF90 -sub_803EF90: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x58 - str r0, [sp, 0x48] - lsls r1, 24 - lsrs r5, r1, 24 - ldr r0, _0803F060 - ldr r0, [r0] - adds r0, 0x18 - mov r8, r0 - ldr r0, _0803F064 - ldr r1, [r0] - ldr r0, [r1, 0x4] - movs r2, 0x92 - lsls r2, 1 - adds r0, r2 - str r0, [sp, 0x24] - ldr r0, [r1, 0x4] - movs r3, 0x82 - lsls r3, 1 - adds r0, r3 - str r0, [sp, 0x28] - ldr r0, [r1, 0x4] - adds r0, 0xE4 - str r0, [sp, 0x2C] - ldr r0, [r1, 0x4] - adds r0, 0xC4 - str r0, [sp, 0x30] - ldr r0, [r1, 0x4] - adds r0, 0xA4 - str r0, [sp, 0x34] - ldr r0, [r1, 0x4] - adds r0, 0x84 - str r0, [sp, 0x38] - ldr r0, [r1, 0x4] - adds r0, 0x64 - str r0, [sp, 0x3C] - ldr r0, [r1, 0x4] - adds r0, 0x44 - str r0, [sp, 0x40] - ldr r0, [r1, 0x4] - adds r0, 0x24 - str r0, [sp, 0x44] - add r4, sp, 0x24 - mov r0, sp - adds r1, r4, 0 - movs r2, 0x24 - bl memcpy - movs r1, 0 - movs r6, 0x3 - mov r0, r8 -_0803EFFE: - stm r0!, {r1} - stm r0!, {r1} - stm r0!, {r1} - stm r0!, {r1} - stm r0!, {r1} - stm r0!, {r1} - stm r0!, {r1} - stm r0!, {r1} - subs r6, 0x1 - cmp r6, 0 - bge _0803EFFE - ldr r0, _0803F068 - ldr r1, [sp, 0x48] - cmp r1, r0 - bne _0803F0A6 - adds r0, r4, 0 - ldr r1, _0803F06C - ldm r1!, {r2,r3,r5} - stm r0!, {r2,r3,r5} - ldr r1, [r1] - str r1, [r0] - movs r5, 0 - movs r2, 0 - mov r12, r4 - movs r0, 0x20 - mov r10, r0 -_0803F032: - mov r3, r8 - ldr r0, _0803F064 - ldr r1, [r0] - lsls r0, r2, 2 - add r0, r12 - ldr r0, [r0] - lsls r0, 5 - adds r0, 0x4 - ldr r1, [r1, 0x4] - adds r4, r1, r0 - movs r1, 0x18 - adds r1, r5 - mov r9, r1 - adds r2, 0x1 - str r2, [sp, 0x54] - mov r2, r10 - subs r7, r2, r5 - movs r6, 0x7 -_0803F056: - cmp r5, 0 - bne _0803F070 - movs r1, 0 - ldr r2, [r4] - b _0803F07A - .align 2, 0 -_0803F060: .4byte gUnknown_203B418 -_0803F064: .4byte gUnknown_202EC9C -_0803F068: .4byte 0x0000270f -_0803F06C: .4byte gUnknown_80F6478 -_0803F070: - ldr r0, [r4] - adds r1, r0, 0 - lsrs r1, r7 - adds r2, r0, 0 - lsls r2, r5 -_0803F07A: - adds r4, 0x4 - ldr r0, [r3] - orrs r0, r2 - str r0, [r3] - ldr r0, [r3, 0x20] - orrs r0, r1 - str r0, [r3, 0x20] - adds r3, 0x4 - subs r6, 0x1 - cmp r6, 0 - bge _0803F056 - mov r5, r9 - cmp r5, 0x1F - ble _0803F09C - subs r5, 0x20 - movs r3, 0x20 - add r8, r3 -_0803F09C: - ldr r2, [sp, 0x54] - cmp r2, 0x3 - ble _0803F032 - movs r0, 0x4 - b _0803F26A -_0803F0A6: - ldr r0, _0803F0D8 - ldr r1, [sp, 0x48] - cmp r1, r0 - ble _0803F0B0 - str r0, [sp, 0x48] -_0803F0B0: - ldr r0, _0803F0DC - ldr r2, [sp, 0x48] - cmp r2, r0 - bge _0803F0BA - str r0, [sp, 0x48] -_0803F0BA: - ldr r1, _0803F0E0 - ldr r0, [r1] - ldr r0, [r0, 0x4] - movs r3, 0xC2 - lsls r3, 1 - adds r2, r0, r3 - cmp r5, 0 - beq _0803F0F4 - ldr r5, [sp, 0x48] - cmp r5, 0 - ble _0803F0E4 - movs r1, 0xA2 - lsls r1, 1 - adds r2, r0, r1 - b _0803F0F4 - .align 2, 0 -_0803F0D8: .4byte 0x000003e7 -_0803F0DC: .4byte 0xfffffc19 -_0803F0E0: .4byte gUnknown_202EC9C -_0803F0E4: - ldr r3, [sp, 0x48] - cmp r3, 0 - bge _0803F0F4 - movs r5, 0xB2 - lsls r5, 1 - adds r2, r0, r5 - negs r3, r3 - str r3, [sp, 0x48] -_0803F0F4: - ldm r2!, {r0} - mov r1, r8 - str r0, [r1] - ldm r2!, {r0} - str r0, [r1, 0x4] - ldm r2!, {r0} - str r0, [r1, 0x8] - ldm r2!, {r0} - str r0, [r1, 0xC] - ldm r2!, {r0} - str r0, [r1, 0x10] - ldm r2!, {r0} - str r0, [r1, 0x14] - ldm r2!, {r0} - str r0, [r1, 0x18] - ldr r0, [r2] - str r0, [r1, 0x1C] - movs r5, 0x18 - movs r2, 0x1 - str r2, [sp, 0x4C] - movs r3, 0 - str r3, [sp, 0x50] - movs r2, 0 -_0803F122: - movs r0, 0 - mov r10, r0 - adds r1, r2, 0x1 - str r1, [sp, 0x54] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - mov r1, sp - ldr r2, _0803F15C - adds r7, r0, r2 -_0803F136: - ldr r0, [r7] - ldr r3, [sp, 0x48] - cmp r0, r3 - bgt _0803F1A2 - ldr r4, [r1] - mov r2, r8 - movs r0, 0x18 - adds r0, r5 - mov r9, r0 - movs r1, 0x20 - subs r1, r5 - mov r12, r1 - movs r6, 0x7 -_0803F150: - cmp r5, 0 - bne _0803F160 - movs r3, 0 - ldr r1, [r4] - b _0803F16C - .align 2, 0 -_0803F15C: .4byte gUnknown_80F6430 -_0803F160: - ldr r0, [r4] - adds r3, r0, 0 - mov r1, r12 - lsrs r3, r1 - adds r1, r0, 0 - lsls r1, r5 -_0803F16C: - adds r4, 0x4 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - ldr r0, [r2, 0x20] - orrs r0, r3 - str r0, [r2, 0x20] - adds r2, 0x4 - movs r3, 0x1 - str r3, [sp, 0x50] - subs r6, 0x1 - cmp r6, 0 - bge _0803F150 - mov r5, r9 - cmp r5, 0x1F - ble _0803F192 - subs r5, 0x20 - movs r0, 0x20 - add r8, r0 -_0803F192: - ldr r0, [r7] - ldr r1, [sp, 0x48] - subs r1, r0 - str r1, [sp, 0x48] - ldr r2, [sp, 0x4C] - adds r2, 0x1 - str r2, [sp, 0x4C] - b _0803F1B0 -_0803F1A2: - adds r1, 0x4 - adds r7, 0x4 - movs r3, 0x1 - add r10, r3 - mov r0, r10 - cmp r0, 0x8 - ble _0803F136 -_0803F1B0: - mov r1, r10 - cmp r1, 0x9 - bne _0803F212 - ldr r2, [sp, 0x50] - cmp r2, 0 - beq _0803F212 - ldr r3, _0803F1DC - ldr r0, [r3] - ldr r0, [r0, 0x4] - adds r4, r0, 0x4 - mov r2, r8 - movs r0, 0x18 - adds r0, r5 - mov r9, r0 - movs r1, 0x20 - subs r7, r1, r5 - movs r6, 0x7 -_0803F1D2: - cmp r5, 0 - bne _0803F1E0 - movs r3, 0 - ldr r1, [r4] - b _0803F1EA - .align 2, 0 -_0803F1DC: .4byte gUnknown_202EC9C -_0803F1E0: - ldr r0, [r4] - adds r3, r0, 0 - lsrs r3, r7 - adds r1, r0, 0 - lsls r1, r5 -_0803F1EA: - adds r4, 0x4 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - ldr r0, [r2, 0x20] - orrs r0, r3 - str r0, [r2, 0x20] - adds r2, 0x4 - subs r6, 0x1 - cmp r6, 0 - bge _0803F1D2 - mov r5, r9 - cmp r5, 0x1F - ble _0803F20C - subs r5, 0x20 - movs r2, 0x20 - add r8, r2 -_0803F20C: - ldr r3, [sp, 0x4C] - adds r3, 0x1 - str r3, [sp, 0x4C] -_0803F212: - ldr r2, [sp, 0x54] - cmp r2, 0x1 - ble _0803F122 - ldr r0, _0803F240 - ldr r1, [r0] - ldr r2, [sp, 0x48] - lsls r0, r2, 5 - adds r0, 0x4 - ldr r1, [r1, 0x4] - adds r1, r0 - mov r3, r8 - ldr r0, [sp, 0x4C] - adds r0, 0x1 - mov r8, r0 - movs r0, 0x20 - subs r7, r0, r5 - movs r6, 0x7 -_0803F234: - cmp r5, 0 - bne _0803F244 - movs r4, 0 - ldr r2, [r1] - b _0803F24E - .align 2, 0 -_0803F240: .4byte gUnknown_202EC9C -_0803F244: - ldr r0, [r1] - adds r4, r0, 0 - lsrs r4, r7 - adds r2, r0, 0 - lsls r2, r5 -_0803F24E: - adds r1, 0x4 - ldr r0, [r3] - orrs r0, r2 - str r0, [r3] - ldr r0, [r3, 0x20] - orrs r0, r4 - str r0, [r3, 0x20] - adds r3, 0x4 - subs r6, 0x1 - cmp r6, 0 - bge _0803F234 - mov r1, r8 - str r1, [sp, 0x4C] - adds r0, r1, 0 -_0803F26A: - add sp, 0x58 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_803EF90 - - thumb_func_start sub_803F27C -sub_803F27C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r0, 24 - adds r7, r0, 0 - ldr r0, _0803F360 - mov r8, r0 - ldr r4, [r0] - ldr r2, _0803F364 - adds r1, r4, r2 - movs r2, 0 - movs r3, 0 - strh r3, [r1, 0x8] - strh r3, [r1, 0xA] - strh r3, [r1] - strh r3, [r1, 0x2] - strh r3, [r1, 0xC] - strh r3, [r1, 0xE] - strh r3, [r1, 0x4] - strh r3, [r1, 0x6] - str r3, [r1, 0x14] - ldr r5, _0803F368 - adds r0, r4, r5 - strb r2, [r0] - ldr r6, _0803F36C - adds r0, r4, r6 - movs r5, 0x1 - strb r5, [r0] - adds r6, 0x1 - adds r0, r4, r6 - strb r5, [r0] - adds r6, 0x1 - adds r0, r4, r6 - strb r2, [r0] - str r3, [r1, 0x18] - str r3, [r1, 0x1C] - cmp r7, 0 - bne _0803F2FA - subs r6, 0xF - adds r0, r4, r6 - strb r2, [r0] - adds r6, 0x6 - adds r0, r4, r6 - strb r2, [r0] - subs r6, 0x1 - adds r0, r4, r6 - strb r2, [r0] - subs r6, 0x2 - adds r0, r4, r6 - strb r2, [r0] - adds r6, 0x4 - adds r0, r4, r6 - strb r2, [r0] - subs r6, 0x3 - adds r0, r4, r6 - strb r2, [r0] - subs r6, 0x3 - adds r0, r4, r6 - strb r2, [r0] - adds r6, 0x1 - adds r0, r4, r6 - strb r2, [r0] -_0803F2FA: - str r3, [r1, 0x10] - ldr r1, _0803F370 - adds r0, r4, r1 - movs r6, 0x3 - strb r6, [r0] - adds r1, 0x12 - adds r0, r4, r1 - strb r2, [r0] - subs r1, 0x8 - adds r0, r4, r1 - strb r2, [r0] - adds r1, 0x9 - adds r0, r4, r1 - strb r2, [r0] - adds r1, 0x1 - adds r0, r4, r1 - strb r2, [r0] - subs r1, 0x8 - adds r0, r4, r1 - strb r2, [r0] - ldr r2, _0803F374 - adds r0, r4, r2 - strb r5, [r0] - bl sub_803F38C - ldr r1, _0803F378 - ldr r0, _0803F37C - str r0, [r1] - cmp r7, 0 - bne _0803F354 - mov r1, r8 - ldr r0, [r1] - ldr r2, _0803F380 - adds r0, r2 - ldrb r1, [r0] - adds r0, r6, 0 - ands r0, r1 - ldr r6, _0803F384 - adds r1, r4, r6 - strb r0, [r1] - cmp r0, 0 - bne _0803F354 - ldr r1, _0803F388 - adds r0, r4, r1 - strb r5, [r0] -_0803F354: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803F360: .4byte gUnknown_203B418 -_0803F364: .4byte 0x000181e8 -_0803F368: .4byte 0x00018216 -_0803F36C: .4byte 0x00018217 -_0803F370: .4byte 0x00018208 -_0803F374: .4byte 0x00018215 -_0803F378: .4byte gUnknown_202EDFC -_0803F37C: .4byte 0x0000ffff -_0803F380: .4byte 0x0001c58a -_0803F384: .4byte 0x00018209 -_0803F388: .4byte 0x0001820c - thumb_func_end sub_803F27C - - thumb_func_start sub_803F38C -sub_803F38C: - push {r4-r6,lr} - mov r6, r8 - push {r6} - ldr r0, _0803F410 - ldr r1, [r0] - ldr r0, _0803F414 - adds r2, r1, r0 - ldr r0, _0803F418 - strh r0, [r2, 0x3A] - movs r0, 0x1 - negs r0, r0 - strh r0, [r2, 0x3C] - strh r0, [r2, 0x3E] - ldr r0, _0803F41C - adds r1, r0 - movs r0, 0x1 - negs r0, r0 - strh r0, [r1] - strh r0, [r2, 0x36] - strh r0, [r2, 0x38] - ldr r0, _0803F420 - ldr r0, [r0] - ldrb r0, [r0, 0xB] - negs r4, r0 - orrs r4, r0 - asrs r4, 31 - movs r0, 0x80 - lsls r0, 1 - ands r4, r0 - ldr r5, _0803F424 - adds r0, r4, r5 - mov r8, r0 - movs r0, 0xFD - mov r1, r8 - bl SetBGPaletteBufferColorArray - adds r6, r5, 0x4 - adds r6, r4, r6 - movs r0, 0xFE - adds r1, r6, 0 - bl SetBGPaletteBufferColorArray - adds r5, 0x8 - adds r4, r5 - movs r0, 0xFF - adds r1, r4, 0 - bl SetBGPaletteBufferColorArray - movs r0, 0xFD - mov r1, r8 - bl nullsub_5 - movs r0, 0xFE - adds r1, r6, 0 - bl nullsub_5 - movs r0, 0xFF - adds r1, r4, 0 - bl nullsub_5 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0803F410: .4byte gUnknown_203B418 -_0803F414: .4byte 0x000181e8 -_0803F418: .4byte 0x0000ffff -_0803F41C: .4byte 0x00018228 -_0803F420: .4byte gUnknown_203B46C -_0803F424: .4byte gUnknown_202D06C - thumb_func_end sub_803F38C - - thumb_func_start sub_803F428 -sub_803F428: - push {r4-r6,lr} - adds r4, r0, 0 - ldr r0, _0803F484 - ldr r3, [r0] - ldr r0, _0803F488 - adds r2, r3, r0 - ldr r5, [r2, 0x10] - movs r6, 0 - ldrsh r1, [r2, r6] - movs r6, 0 - ldrsh r0, [r4, r6] - subs r1, r0 - cmp r1, 0 - bge _0803F446 - negs r1, r1 -_0803F446: - cmp r1, 0x6 - bgt _0803F498 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r6, 0x2 - ldrsh r0, [r4, r6] - subs r1, r0 - cmp r1, 0 - bge _0803F45A - negs r1, r1 -_0803F45A: - cmp r1, 0x5 - bgt _0803F498 - ldr r1, _0803F48C - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0803F494 - ldr r6, _0803F490 - adds r0, r3, r6 - ldrb r0, [r0] - cmp r0, 0 - bne _0803F494 - cmp r5, 0 - beq _0803F494 - adds r0, r2, 0 - adds r1, r4, 0 - bl sub_8083294 - lsls r0, 24 - lsrs r0, 24 - b _0803F49A - .align 2, 0 -_0803F484: .4byte gUnknown_203B418 -_0803F488: .4byte 0x000181e8 -_0803F48C: .4byte 0x0001820b -_0803F490: .4byte 0x0001820c -_0803F494: - movs r0, 0x1 - b _0803F49A -_0803F498: - movs r0, 0 -_0803F49A: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_803F428 - - thumb_func_start sub_803F4A0 -sub_803F4A0: - push {lr} - adds r2, r0, 0 - ldr r0, _0803F4B8 - ldr r1, [r0] - ldr r3, _0803F4BC - adds r0, r1, r3 - str r2, [r0, 0x10] - cmp r2, 0 - bne _0803F4C0 - adds r3, 0x2E - b _0803F4CA - .align 2, 0 -_0803F4B8: .4byte gUnknown_203B418 -_0803F4BC: .4byte 0x000181e8 -_0803F4C0: - ldr r0, [r2, 0x70] - ldrb r2, [r0, 0x7] - cmp r2, 0 - bne _0803F4D4 - ldr r3, _0803F4D0 -_0803F4CA: - adds r0, r1, r3 - strb r2, [r0] - b _0803F4DC - .align 2, 0 -_0803F4D0: .4byte 0x00018216 -_0803F4D4: - ldr r0, _0803F4FC - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] -_0803F4DC: - movs r0, 0 - bl sub_803F580 - bl sub_803F38C - ldr r0, _0803F500 - ldr r0, [r0] - ldr r1, _0803F504 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0803F4F8 - bl sub_806CD90 -_0803F4F8: - pop {r0} - bx r0 - .align 2, 0 -_0803F4FC: .4byte 0x00018216 -_0803F500: .4byte gUnknown_203B418 -_0803F504: .4byte 0x0001356c - thumb_func_end sub_803F4A0 - - thumb_func_start sub_803F508 -sub_803F508: - push {r4,r5,lr} - adds r3, r0, 0 - ldr r0, _0803F520 - ldr r1, [r0] - ldr r0, _0803F524 - adds r4, r1, r0 - cmp r3, 0 - bne _0803F52C - ldr r2, _0803F528 - adds r0, r1, r2 - strb r3, [r0] - b _0803F548 - .align 2, 0 -_0803F520: .4byte gUnknown_203B418 -_0803F524: .4byte 0x000181e8 -_0803F528: .4byte 0x00018216 -_0803F52C: - ldr r0, [r3, 0x70] - ldrb r2, [r0, 0x7] - cmp r2, 0 - bne _0803F540 - ldr r5, _0803F53C - adds r0, r1, r5 - strb r2, [r0] - b _0803F548 - .align 2, 0 -_0803F53C: .4byte 0x00018216 -_0803F540: - ldr r0, _0803F574 - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] -_0803F548: - str r3, [r4, 0x10] - movs r0, 0 - bl sub_803F580 - bl sub_803F38C - ldr r0, _0803F578 - ldr r0, [r0] - ldr r1, _0803F57C - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0803F566 - bl sub_806CD90 -_0803F566: - bl sub_8049ED4 - bl sub_8040A84 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803F574: .4byte 0x00018216 -_0803F578: .4byte gUnknown_203B418 -_0803F57C: .4byte 0x0001356c - thumb_func_end sub_803F508 - - thumb_func_start sub_803F580 -sub_803F580: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r0, _0803F600 - ldr r4, [r0] - ldr r0, _0803F604 - adds r5, r4, r0 - ldr r6, [r5, 0x10] - cmp r6, 0 - bne _0803F59E - b _0803F7A0 -_0803F59E: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0803F5AC - b _0803F7A0 -_0803F5AC: - ldr r7, [r6, 0x70] - ldr r0, [r5, 0x8] - str r0, [r5, 0xC] - ldr r0, [r5] - str r0, [r5, 0x4] - ldrh r0, [r6, 0x4] - strh r0, [r5] - ldrh r0, [r6, 0x6] - strh r0, [r5, 0x2] - ldr r0, [r6, 0xC] - cmp r0, 0 - bge _0803F5C6 - adds r0, 0xFF -_0803F5C6: - asrs r0, 8 - subs r0, 0x78 - strh r0, [r5, 0x8] - ldr r0, [r6, 0x10] - cmp r0, 0 - bge _0803F5D4 - adds r0, 0xFF -_0803F5D4: - asrs r0, 8 - subs r0, 0x60 - strh r0, [r5, 0xA] - adds r0, r6, 0 - movs r1, 0x11 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0803F610 - ldrb r0, [r7, 0x7] - cmp r0, 0 - beq _0803F610 - ldr r1, _0803F608 - adds r0, r4, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r2, _0803F60C - adds r0, r4, r2 - strb r1, [r0] - b _0803F626 - .align 2, 0 -_0803F600: .4byte gUnknown_203B418 -_0803F604: .4byte 0x000181e8 -_0803F608: .4byte 0x0001820d -_0803F60C: .4byte 0x0001820e -_0803F610: - adds r0, r7, 0 - adds r0, 0xF0 - ldrb r0, [r0] - adds r1, r5, 0 - adds r1, 0x25 - strb r0, [r1] - adds r0, r7, 0 - adds r0, 0xF1 - ldrb r0, [r0] - adds r1, 0x1 - strb r0, [r1] -_0803F626: - adds r0, r7, 0 - adds r0, 0xF2 - ldrb r0, [r0] - adds r1, r5, 0 - adds r1, 0x29 - strb r0, [r1] - subs r1, 0x7 - ldrb r0, [r1] - mov r8, r0 - adds r0, r5, 0 - adds r0, 0x2C - ldrb r2, [r0] - adds r4, r1, 0 - cmp r2, 0 - bne _0803F670 - adds r0, r7, 0 - adds r0, 0xE8 - ldrb r1, [r0] - adds r7, r0, 0 - cmp r1, 0x1 - bne _0803F656 - strb r1, [r4] - movs r1, 0xE - b _0803F65A -_0803F656: - strb r2, [r4] - movs r1, 0 -_0803F65A: - ldr r2, _0803F66C - ldr r0, [r2] - cmp r0, r1 - beq _0803F678 - str r1, [r2] - adds r0, r1, 0 - bl SetBGOBJEnableFlags - b _0803F678 - .align 2, 0 -_0803F66C: .4byte gUnknown_202EDFC -_0803F670: - ldr r1, _0803F698 - ldr r0, _0803F69C - str r0, [r1] - adds r7, 0xE8 -_0803F678: - ldrb r4, [r4] - cmp r8, r4 - beq _0803F684 - movs r0, 0 - bl sub_8041888 -_0803F684: - adds r0, r5, 0 - adds r0, 0x28 - ldrb r1, [r0] - mov r8, r1 - ldrb r1, [r7] - adds r2, r0, 0 - cmp r1, 0x2 - bne _0803F6A0 - movs r0, 0x1 - b _0803F6A2 - .align 2, 0 -_0803F698: .4byte gUnknown_202EDFC -_0803F69C: .4byte 0x0000ffff -_0803F6A0: - movs r0, 0 -_0803F6A2: - strb r0, [r2] - ldrb r2, [r2] - cmp r8, r2 - beq _0803F6B4 - bl sub_806CC70 - movs r0, 0 - bl sub_8041888 -_0803F6B4: - adds r4, r5, 0 - adds r4, 0x27 - ldrb r2, [r4] - mov r8, r2 - adds r0, r6, 0 - bl sub_8071884 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _0803F6CC - movs r0, 0x1 -_0803F6CC: - strb r0, [r4] - ldrb r4, [r4] - cmp r8, r4 - beq _0803F6E2 - bl sub_8049ED4 - bl sub_8040A84 - movs r0, 0 - bl sub_8041888 -_0803F6E2: - mov r0, r9 - cmp r0, 0 - beq _0803F76A - adds r0, r5, 0 - adds r0, 0x2B - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0 - bne _0803F76A - movs r2, 0xC - ldrsh r1, [r5, r2] - movs r2, 0x8 - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0803F704 - negs r1, r1 -_0803F704: - cmp r1, 0x7 - bgt _0803F71C - movs r0, 0xE - ldrsh r1, [r5, r0] - movs r2, 0xA - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0803F718 - negs r1, r1 -_0803F718: - cmp r1, 0x7 - ble _0803F726 -_0803F71C: - bl sub_8049ED4 - movs r0, 0x1 - strb r0, [r4] - b _0803F76A -_0803F726: - movs r0, 0xC - ldrsh r1, [r5, r0] - movs r2, 0x8 - ldrsh r0, [r5, r2] - cmp r1, r0 - bge _0803F73C - movs r0, 0xF0 - movs r1, 0 - bl sub_804A1F0 - b _0803F748 -_0803F73C: - cmp r1, r0 - ble _0803F748 - movs r0, 0 - movs r1, 0 - bl sub_804A1F0 -_0803F748: - movs r0, 0xE - ldrsh r1, [r5, r0] - movs r2, 0xA - ldrsh r0, [r5, r2] - cmp r1, r0 - bge _0803F75E - movs r0, 0 - movs r1, 0xA0 - bl sub_804A49C - b _0803F76A -_0803F75E: - cmp r1, r0 - ble _0803F76A - movs r0, 0 - movs r1, 0 - bl sub_804A49C -_0803F76A: - ldr r1, [r5] - ldr r0, [r5, 0x4] - cmp r1, r0 - beq _0803F7A0 - movs r5, 0 -_0803F774: - ldr r0, _0803F7B4 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0803F7B8 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0803F79A - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_80402AC -_0803F79A: - adds r5, 0x1 - cmp r5, 0x13 - ble _0803F774 -_0803F7A0: - bl sub_80400D4 - bl sub_803F7BC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803F7B4: .4byte gUnknown_203B418 -_0803F7B8: .4byte 0x000135cc - thumb_func_end sub_803F580 - - thumb_func_start sub_803F7BC -sub_803F7BC: - push {r4-r6,lr} - sub sp, 0x10 - ldr r6, _0803F800 - ldr r4, [r6] - ldr r0, _0803F804 - adds r5, r4, r0 - movs r1, 0 - ldrsh r0, [r5, r1] - movs r2, 0x2 - ldrsh r1, [r5, r2] - bl sub_804954C - ldrb r1, [r0, 0x9] - ldr r2, _0803F808 - adds r0, r4, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0803F7F4 - adds r2, 0x1 - adds r0, r4, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0803F7F4 - adds r2, 0xB - adds r0, r4, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0803F80C -_0803F7F4: - movs r0, 0 - movs r1, 0 - bl sub_8005838 - b _0803F86A - .align 2, 0 -_0803F800: .4byte gUnknown_203B418 -_0803F804: .4byte 0x000181e8 -_0803F808: .4byte 0x0001820b -_0803F80C: - cmp r1, 0xFF - bne _0803F82C - ldr r1, _0803F828 - adds r0, r4, r1 - ldrb r0, [r0] - movs r1, 0x2 - cmp r0, 0x2 - bne _0803F81E - movs r1, 0x1 -_0803F81E: - movs r0, 0 - bl sub_8005838 - b _0803F86A - .align 2, 0 -_0803F828: .4byte 0x00018209 -_0803F82C: - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r2, _0803F874 - adds r0, r2 - ldr r2, [r6] - adds r2, r0 - movs r0, 0x8 - ldrsh r1, [r5, r0] - ldr r0, [r2, 0xC] - subs r0, r1 - str r0, [sp] - movs r0, 0xA - ldrsh r1, [r5, r0] - ldr r0, [r2, 0x10] - subs r0, r1 - str r0, [sp, 0x4] - movs r0, 0x8 - ldrsh r1, [r5, r0] - ldr r0, [r2, 0x14] - subs r0, r1 - str r0, [sp, 0x8] - movs r0, 0xA - ldrsh r1, [r5, r0] - ldr r0, [r2, 0x18] - subs r0, r1 - str r0, [sp, 0xC] - mov r0, sp - movs r1, 0x3 - bl sub_8005838 -_0803F86A: - add sp, 0x10 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0803F874: .4byte 0x000104c4 - thumb_func_end sub_803F7BC - - thumb_func_start sub_803F878 -sub_803F878: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r2, r0, 0 - adds r6, r1, 0 - ldr r0, _0803F92C - ldr r7, [r0] - ldr r0, _0803F930 - adds r5, r7, r0 - ldr r0, [r5, 0x8] - str r0, [r5, 0xC] - ldr r0, [r5] - str r0, [r5, 0x4] - adds r0, r2, 0 - cmp r2, 0 - bge _0803F89A - adds r0, 0xFF -_0803F89A: - asrs r0, 8 - subs r0, 0x78 - movs r1, 0 - mov r8, r1 - strh r0, [r5, 0x8] - adds r0, r6, 0 - cmp r6, 0 - bge _0803F8AC - adds r0, 0xFF -_0803F8AC: - asrs r0, 8 - subs r0, 0x60 - strh r0, [r5, 0xA] - movs r4, 0xC0 - lsls r4, 5 - adds r0, r2, 0 - adds r1, r4, 0 - bl __divsi3 - strh r0, [r5] - adds r0, r6, 0 - adds r1, r4, 0 - bl __divsi3 - strh r0, [r5, 0x2] - ldr r2, _0803F934 - adds r0, r7, r2 - mov r1, r8 - strb r1, [r0] - adds r2, 0x1 - adds r0, r7, r2 - strb r1, [r0] - ldr r1, _0803F938 - adds r0, r7, r1 - mov r2, r8 - strb r2, [r0] - adds r1, 0x5 - adds r0, r7, r1 - strb r2, [r0] - ldr r1, _0803F93C - ldr r0, [r1] - cmp r0, 0 - beq _0803F8F6 - movs r0, 0 - str r0, [r1] - bl SetBGOBJEnableFlags -_0803F8F6: - movs r2, 0xC - ldrsh r1, [r5, r2] - movs r2, 0x8 - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0803F906 - negs r1, r1 -_0803F906: - cmp r1, 0x7 - bgt _0803F91E - movs r0, 0xE - ldrsh r1, [r5, r0] - movs r2, 0xA - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0803F91A - negs r1, r1 -_0803F91A: - cmp r1, 0x7 - ble _0803F940 -_0803F91E: - bl sub_8049ED4 - adds r1, r5, 0 - adds r1, 0x2B - movs r0, 0x1 - strb r0, [r1] - b _0803F984 - .align 2, 0 -_0803F92C: .4byte gUnknown_203B418 -_0803F930: .4byte 0x000181e8 -_0803F934: .4byte 0x0001820d -_0803F938: .4byte 0x00018211 -_0803F93C: .4byte gUnknown_202EDFC -_0803F940: - movs r0, 0xC - ldrsh r1, [r5, r0] - movs r2, 0x8 - ldrsh r0, [r5, r2] - cmp r1, r0 - bge _0803F956 - movs r0, 0xF0 - movs r1, 0 - bl sub_804A1F0 - b _0803F962 -_0803F956: - cmp r1, r0 - ble _0803F962 - movs r0, 0 - movs r1, 0 - bl sub_804A1F0 -_0803F962: - movs r0, 0xE - ldrsh r1, [r5, r0] - movs r2, 0xA - ldrsh r0, [r5, r2] - cmp r1, r0 - bge _0803F978 - movs r0, 0 - movs r1, 0xA0 - bl sub_804A49C - b _0803F984 -_0803F978: - cmp r1, r0 - ble _0803F984 - movs r0, 0 - movs r1, 0 - bl sub_804A49C -_0803F984: - bl sub_803F7BC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_803F878 - - thumb_func_start sub_803F994 -sub_803F994: - ldr r0, _0803F9A8 - ldr r0, [r0] - ldr r1, _0803F9AC - adds r0, r1 - movs r1, 0x8 - ldrsh r0, [r0, r1] - adds r0, 0x78 - lsls r0, 8 - bx lr - .align 2, 0 -_0803F9A8: .4byte gUnknown_203B418 -_0803F9AC: .4byte 0x000181e8 - thumb_func_end sub_803F994 - - thumb_func_start sub_803F9B0 -sub_803F9B0: - ldr r0, _0803F9C4 - ldr r0, [r0] - ldr r1, _0803F9C8 - adds r0, r1 - movs r1, 0xA - ldrsh r0, [r0, r1] - adds r0, 0x60 - lsls r0, 8 - bx lr - .align 2, 0 -_0803F9C4: .4byte gUnknown_203B418 -_0803F9C8: .4byte 0x000181e8 - thumb_func_end sub_803F9B0 - - thumb_func_start sub_803F9CC -sub_803F9CC: - push {r4,r5,lr} - ldr r0, _0803FA24 - ldr r1, [r0] - ldr r2, _0803FA28 - adds r0, r1, r2 - ldr r4, [r0] - movs r5, 0 - ldr r2, _0803FA2C - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0803FA0C - ldr r2, _0803FA30 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0803FA0C - bl sub_800EC74 - lsls r0, 24 - cmp r0, 0 - bne _0803FA0C - cmp r4, 0 - beq _0803FA08 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0803FA08 - movs r5, 0x1 -_0803FA08: - cmp r5, 0 - bne _0803FA38 -_0803FA0C: - ldr r0, _0803FA34 - movs r2, 0 - adds r0, 0x2 - movs r1, 0x1C -_0803FA14: - strh r2, [r0] - adds r0, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _0803FA14 - bl sub_803F38C - b _0803FA3C - .align 2, 0 -_0803FA24: .4byte gUnknown_203B418 -_0803FA28: .4byte 0x000181f8 -_0803FA2C: .4byte 0x0001356c -_0803FA30: .4byte 0x00018218 -_0803FA34: .4byte gUnknown_202B038 -_0803FA38: - bl sub_803FB74 -_0803FA3C: - ldr r1, _0803FA48 - movs r0, 0x1 - strb r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0803FA48: .4byte gUnknown_20274A5 - thumb_func_end sub_803F9CC - - thumb_func_start sub_803FA4C -sub_803FA4C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - adds r4, r0, 0 - mov r8, r1 - lsls r2, 24 - lsrs r2, 24 - mov r12, r2 - ldr r0, _0803FB4C - ldr r3, [r0] - ldr r0, _0803FB50 - adds r0, r3, r0 - str r0, [sp, 0x24] - ldr r7, _0803FB54 - mov r1, sp - ldr r0, _0803FB58 - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} - ldr r0, _0803FB5C - mov r10, r0 - ldr r1, _0803FB60 - mov r9, r1 - ldr r2, [sp, 0x24] - movs r5, 0x3E - ldrsh r0, [r2, r5] - cmp r4, r0 - bne _0803FA9C - ldr r6, _0803FB64 - adds r0, r3, r6 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r8, r0 - beq _0803FB3A -_0803FA9C: - mov r2, r12 - cmp r2, 0 - bne _0803FAA6 - ldr r5, _0803FB68 - mov r9, r5 -_0803FAA6: - ldr r6, [sp, 0x24] - strh r4, [r6, 0x3E] - ldr r1, _0803FB64 - adds r0, r3, r1 - mov r2, r8 - strh r2, [r0] - mov r5, r8 - cmp r5, 0x5F - ble _0803FAC8 - movs r5, 0x60 - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 5 - mov r1, r8 - bl __divsi3 - adds r4, r0, 0 -_0803FAC8: - movs r3, 0 - mov r8, r3 - movs r6, 0x58 - mov r12, r6 -_0803FAD0: - ldr r6, _0803FB6C - adds r2, r4, 0 - adds r0, r5, 0 - cmp r4, 0x7 - ble _0803FADC - movs r2, 0x8 -_0803FADC: - cmp r5, 0x7 - ble _0803FAE2 - movs r0, 0x8 -_0803FAE2: - lsls r0, 2 - mov r3, sp - adds r1, r3, r0 - lsls r0, r2, 2 - add r0, sp - ldr r2, [r0] - ldr r3, [r1] - adds r1, r3, 0 - bics r1, r2 - mov r0, r10 - ands r1, r0 - mov r0, r9 - ands r0, r2 - orrs r0, r1 - ands r6, r3 - mov r1, r8 - stm r7!, {r1} - stm r7!, {r6} - stm r7!, {r0} - stm r7!, {r0} - stm r7!, {r0} - stm r7!, {r0} - stm r7!, {r6} - stm r7!, {r1} - subs r4, 0x8 - subs r5, 0x8 - cmp r4, 0 - bge _0803FB1C - movs r4, 0 -_0803FB1C: - cmp r5, 0 - bge _0803FB22 - movs r5, 0 -_0803FB22: - movs r2, 0x8 - negs r2, r2 - add r12, r2 - mov r3, r12 - cmp r3, 0 - bge _0803FAD0 - ldr r0, _0803FB70 - movs r2, 0xC0 - lsls r2, 1 - ldr r1, _0803FB54 - bl sub_80098BC -_0803FB3A: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803FB4C: .4byte gUnknown_203B418 -_0803FB50: .4byte 0x000181e8 -_0803FB54: .4byte gUnknown_3001018 -_0803FB58: .4byte gUnknown_80F6490 -_0803FB5C: .4byte 0x22222222 -_0803FB60: .4byte 0x44444444 -_0803FB64: .4byte 0x00018228 -_0803FB68: .4byte 0x55555555 -_0803FB6C: .4byte 0x77777777 -_0803FB70: .4byte 0x06005980 - thumb_func_end sub_803FA4C - - thumb_func_start sub_803FB74 -sub_803FB74: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r0, _0803FBE8 - ldr r0, [r0] - ldr r1, _0803FBEC - adds r7, r0, r1 - movs r4, 0 - movs r2, 0 - str r2, [sp] - ldr r0, [r7, 0x10] - ldr r0, [r0, 0x70] - movs r1, 0xE - ldrsh r3, [r0, r1] - mov r9, r3 - movs r3, 0x10 - ldrsh r2, [r0, r3] - mov r8, r2 - ldrb r1, [r0, 0x9] - mov r10, r1 - movs r2, 0xE - ldrsh r1, [r0, r2] - cmp r1, 0 - ble _0803FBBA - mov r0, r8 - cmp r0, 0 - bge _0803FBB2 - adds r0, 0x3 -_0803FBB2: - asrs r0, 2 - cmp r1, r0 - bgt _0803FBBA - movs r4, 0x1 -_0803FBBA: - ldr r0, [r7, 0x10] - ldr r0, [r0, 0x70] - movs r3, 0x9E - lsls r3, 1 - adds r0, r3 - ldr r0, [r0] - bl sub_8094450 - cmp r0, 0 - bne _0803FBD2 - movs r0, 0x1 - str r0, [sp] -_0803FBD2: - cmp r4, 0 - beq _0803FBF4 - ldr r0, _0803FBF0 - ldr r0, [r0] - movs r1, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0803FBF4 - movs r5, 0x20 - movs r6, 0x20 - b _0803FBF8 - .align 2, 0 -_0803FBE8: .4byte gUnknown_203B418 -_0803FBEC: .4byte 0x000181e8 -_0803FBF0: .4byte gUnknown_202EDCC -_0803FBF4: - movs r5, 0 - movs r6, 0 -_0803FBF8: - ldr r1, [sp] - cmp r1, 0 - beq _0803FC0E - ldr r0, _0803FC20 - ldr r0, [r0] - movs r1, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0803FC0E - movs r5, 0x30 - movs r6, 0x30 -_0803FC0E: - cmp r5, 0 - bne _0803FC30 - adds r0, r7, 0 - adds r0, 0x2A - ldrb r0, [r0] - cmp r0, 0 - beq _0803FC24 - movs r5, 0x60 - b _0803FC30 - .align 2, 0 -_0803FC20: .4byte gUnknown_202EDCC -_0803FC24: - ldr r0, _0803FCE4 - ldr r0, [r0] - ldrb r0, [r0, 0xB] - cmp r0, 0 - beq _0803FC30 - movs r5, 0x40 -_0803FC30: - cmp r6, 0 - bne _0803FC40 - ldr r0, _0803FCE4 - ldr r0, [r0] - ldrb r0, [r0, 0xB] - cmp r0, 0 - beq _0803FC40 - movs r6, 0x40 -_0803FC40: - movs r2, 0x36 - ldrsh r0, [r7, r2] - cmp r0, r5 - beq _0803FC78 - strh r5, [r7, 0x36] - lsls r5, 2 - ldr r4, _0803FCE8 - adds r1, r5, r4 - movs r0, 0xFC - bl SetBGPaletteBufferColorArray - adds r1, r4, 0x4 - adds r1, r5, r1 - movs r0, 0xFD - bl SetBGPaletteBufferColorArray - adds r1, r4, 0 - adds r1, 0x8 - adds r1, r5, r1 - movs r0, 0xFE - bl SetBGPaletteBufferColorArray - adds r4, 0xC - adds r5, r4 - movs r0, 0xFF - adds r1, r5, 0 - bl SetBGPaletteBufferColorArray -_0803FC78: - movs r3, 0x38 - ldrsh r0, [r7, r3] - cmp r0, r6 - beq _0803FCB0 - strh r6, [r7, 0x38] - lsls r5, r6, 2 - ldr r4, _0803FCE8 - adds r1, r5, r4 - movs r0, 0xFC - bl nullsub_5 - adds r1, r4, 0x4 - adds r1, r5, r1 - movs r0, 0xFD - bl nullsub_5 - adds r1, r4, 0 - adds r1, 0x8 - adds r1, r5, r1 - movs r0, 0xFE - bl nullsub_5 - adds r4, 0xC - adds r5, r4 - movs r0, 0xFF - adds r1, r5, 0 - bl nullsub_5 -_0803FCB0: - ldr r5, _0803FCEC - ldr r0, _0803FCF0 - ldr r2, [r0] - ldr r0, _0803FCF4 - adds r1, r2, r0 - movs r3, 0x14 - ldrsh r0, [r2, r3] - ldrb r1, [r1] - adds r6, r0, r1 - movs r1, 0x3A - ldrsh r0, [r7, r1] - adds r4, r7, 0 - adds r4, 0x2E - cmp r0, r6 - beq _0803FD3E - strh r6, [r7, 0x3A] - ldr r3, _0803FCF8 - adds r0, r2, r3 - ldrb r0, [r0] - bl sub_80900C0 - lsls r0, 24 - cmp r0, 0 - beq _0803FCFC - movs r0, 0 - b _0803FD00 - .align 2, 0 -_0803FCE4: .4byte gUnknown_203B46C -_0803FCE8: .4byte gUnknown_202D068 -_0803FCEC: .4byte gUnknown_202B038 -_0803FCF0: .4byte gUnknown_203B418 -_0803FCF4: .4byte 0x00000645 -_0803FCF8: .4byte 0x00000644 -_0803FCFC: - ldr r1, _0803FD20 - adds r0, r1, 0 -_0803FD00: - strh r0, [r5, 0x2] - cmp r6, 0x9 - bgt _0803FD28 - adds r1, r5, 0x4 - adds r4, r7, 0 - adds r4, 0x2E - ldrb r2, [r4] - adds r0, r6, 0 - movs r3, 0x1 - bl sub_803FE30 - ldr r2, _0803FD24 - adds r0, r2, 0 - strh r0, [r5, 0x6] - b _0803FD3E - .align 2, 0 -_0803FD20: .4byte 0x0000f2be -_0803FD24: .4byte 0x0000f2b8 -_0803FD28: - adds r1, r5, 0x4 - adds r4, r7, 0 - adds r4, 0x2E - ldrb r2, [r4] - adds r0, r6, 0 - movs r3, 0 - bl sub_803FE30 - ldr r3, _0803FE10 - adds r0, r3, 0 - strh r0, [r5, 0x8] -_0803FD3E: - movs r1, 0x3C - ldrsh r0, [r7, r1] - cmp r0, r10 - beq _0803FD64 - mov r2, r10 - strh r2, [r7, 0x3C] - ldr r3, _0803FE14 - adds r0, r3, 0 - strh r0, [r5, 0xA] - ldr r1, _0803FE18 - adds r0, r1, 0 - strh r0, [r5, 0xC] - adds r1, r5, 0 - adds r1, 0xE - ldrb r2, [r4] - mov r0, r10 - movs r3, 0 - bl sub_803FE30 -_0803FD64: - movs r2, 0x3E - ldrsh r0, [r7, r2] - cmp r0, r9 - beq _0803FD84 - ldr r3, _0803FE1C - adds r0, r3, 0 - strh r0, [r5, 0x12] - ldr r1, _0803FE20 - adds r0, r1, 0 - strh r0, [r5, 0x14] - adds r1, r5, 0 - adds r1, 0x16 - ldrb r2, [r4] - mov r0, r9 - bl sub_803FF18 -_0803FD84: - adds r6, r7, 0 - adds r6, 0x40 - movs r2, 0 - ldrsh r0, [r6, r2] - cmp r0, r8 - beq _0803FDA2 - ldr r3, _0803FE24 - adds r0, r3, 0 - strh r0, [r5, 0x1C] - adds r1, r5, 0 - adds r1, 0x1E - ldrb r2, [r4] - mov r0, r8 - bl sub_803FF18 -_0803FDA2: - ldrb r2, [r4] - mov r0, r9 - mov r1, r8 - bl sub_803FA4C - mov r0, r8 - strh r0, [r6] - mov r1, r9 - strh r1, [r7, 0x3E] - mov r0, r8 - cmp r0, 0 - bge _0803FDBC - adds r0, 0x7 -_0803FDBC: - asrs r1, r0, 3 - adds r4, r7, 0 - adds r4, 0x42 - strh r1, [r4] - movs r0, 0x7 - mov r2, r8 - ands r2, r0 - cmp r2, 0 - beq _0803FDD2 - adds r0, r1, 0x1 - strh r0, [r4] -_0803FDD2: - movs r3, 0 - ldrsh r0, [r4, r3] - cmp r0, 0xB - ble _0803FDDE - movs r0, 0xC - strh r0, [r4] -_0803FDDE: - movs r1, 0 - ldr r0, _0803FE28 - movs r2, 0xB3 - lsls r2, 2 - adds r4, r2, 0 - ldr r2, _0803FE2C - adds r3, r2, 0 - adds r2, r0, 0 - adds r2, 0x24 -_0803FDF0: - adds r0, r1, r4 - orrs r0, r3 - strh r0, [r2] - adds r2, 0x2 - adds r1, 0x1 - cmp r1, 0xB - ble _0803FDF0 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803FE10: .4byte 0x0000f2b8 -_0803FE14: .4byte 0x0000f2b9 -_0803FE18: .4byte 0x0000f2ba -_0803FE1C: .4byte 0x0000f2bb -_0803FE20: .4byte 0x0000f2bc -_0803FE24: .4byte 0x0000f2bd -_0803FE28: .4byte gUnknown_202B038 -_0803FE2C: .4byte 0xfffff000 - thumb_func_end sub_803FB74 - - thumb_func_start sub_803FE30 -sub_803FE30: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - adds r1, r2, 0 - lsls r3, 24 - lsrs r3, 24 - mov r12, r3 - movs r0, 0 - cmp r2, 0 - bne _0803FE4E - movs r0, 0x37 -_0803FE4E: - cmp r5, 0x64 - ble _0803FE70 - cmp r2, 0 - beq _0803FE60 - ldr r1, _0803FE5C - adds r0, r1, 0 - b _0803FE64 - .align 2, 0 -_0803FE5C: .4byte 0x0000f291 -_0803FE60: - ldr r2, _0803FE6C - adds r0, r2, 0 -_0803FE64: - strh r0, [r4] - strh r0, [r4, 0x2] - b _0803FF00 - .align 2, 0 -_0803FE6C: .4byte 0x0000f2c8 -_0803FE70: - cmp r5, 0x64 - bne _0803FEBC - ldr r1, _0803FE84 - adds r0, r1, 0 - strh r0, [r4] - ldr r2, _0803FE88 - adds r0, r2, 0 - strh r0, [r4, 0x2] - b _0803FF00 - .align 2, 0 -_0803FE84: .4byte 0x0000f294 -_0803FE88: .4byte 0x0000f295 -_0803FE8C: - ldr r1, _0803FEB4 - lsls r0, r6, 3 - adds r0, r6 - adds r0, r2 - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r4] - subs r0, r5, r3 - adds r0, r7 - movs r1, 0x96 - lsls r1, 2 - adds r0, r1 - ldr r2, _0803FEB8 - adds r1, r2, 0 - orrs r0, r1 - mov r1, r8 - strh r0, [r1] - b _0803FF00 - .align 2, 0 -_0803FEB4: .4byte gUnknown_80F64D8 -_0803FEB8: .4byte 0xfffff000 -_0803FEBC: - adds r2, r4, 0x2 - mov r8, r2 - adds r7, r0, 0 - adds r7, 0x30 - cmp r5, 0x9 - ble _0803FEE2 - movs r6, 0 - cmp r1, 0 - bne _0803FED0 - movs r6, 0x1 -_0803FED0: - movs r2, 0 - ldr r0, _0803FF0C -_0803FED4: - ldr r3, [r0] - cmp r3, r5 - ble _0803FE8C - adds r0, 0x4 - adds r2, 0x1 - cmp r2, 0x8 - ble _0803FED4 -_0803FEE2: - mov r0, r12 - cmp r0, 0 - bne _0803FEF0 - ldr r1, _0803FF10 - adds r0, r1, 0 - strh r0, [r4] - adds r4, 0x2 -_0803FEF0: - adds r0, r5, r7 - movs r2, 0x96 - lsls r2, 2 - adds r0, r2 - ldr r2, _0803FF14 - adds r1, r2, 0 - orrs r0, r1 - strh r0, [r4] -_0803FF00: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0803FF0C: .4byte gUnknown_80F64B4 -_0803FF10: .4byte 0x0000f278 -_0803FF14: .4byte 0xfffff000 - thumb_func_end sub_803FE30 - - thumb_func_start sub_803FF18 -sub_803FF18: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - adds r3, r1, 0 - lsls r2, 24 - lsrs r2, 24 - movs r6, 0 - cmp r2, 0 - bne _0803FF2E - movs r6, 0x1 -_0803FF2E: - movs r1, 0 - cmp r2, 0 - bne _0803FF36 - movs r1, 0x37 -_0803FF36: - ldr r0, _0803FF54 - cmp r5, r0 - ble _0803FF7C - ldr r0, _0803FF58 - lsls r1, r6, 3 - adds r1, r6 - lsls r1, 1 - adds r1, r0 - ldrh r0, [r1] - strh r0, [r3] - adds r3, 0x2 - strh r0, [r3] - strh r0, [r3, 0x2] - b _0804001A - .align 2, 0 -_0803FF54: .4byte 0x000003e7 -_0803FF58: .4byte gUnknown_80F6544 -_0803FF5C: - ldr r1, _0803FF78 - lsls r0, r6, 3 - adds r0, r6 - adds r0, r4 - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r3] - adds r3, 0x2 - subs r5, r2 - mov r1, r8 - lsls r0, r1, 24 - lsrs r7, r0, 24 - b _0803FF98 - .align 2, 0 -_0803FF78: .4byte gUnknown_80F6544 -_0803FF7C: - movs r7, 0x20 - movs r4, 0 - adds r1, 0x30 - mov r8, r1 - ldr r2, _0803FFC0 - mov r12, r2 - ldr r0, _0803FFC4 -_0803FF8A: - ldr r2, [r0] - cmp r2, r5 - ble _0803FF5C - adds r0, 0x4 - adds r4, 0x1 - cmp r4, 0x8 - ble _0803FF8A -_0803FF98: - cmp r4, 0x9 - bne _0803FFAC - movs r1, 0x96 - lsls r1, 2 - adds r0, r7, r1 - ldr r2, _0803FFC8 - adds r1, r2, 0 - orrs r0, r1 - strh r0, [r3] - adds r3, 0x2 -_0803FFAC: - movs r4, 0 - mov r0, r12 - ldr r2, [r0] - cmp r2, r5 - bgt _0803FFD0 - ldr r0, _0803FFCC - lsls r1, r6, 3 - adds r1, r6 - b _0803FFE8 - .align 2, 0 -_0803FFC0: .4byte gUnknown_80F6520 -_0803FFC4: .4byte gUnknown_80F64FC -_0803FFC8: .4byte 0xfffff000 -_0803FFCC: .4byte gUnknown_80F6544 -_0803FFD0: - adds r4, 0x1 - cmp r4, 0x8 - bgt _0803FFF4 - lsls r0, r4, 2 - add r0, r12 - ldr r2, [r0] - cmp r2, r5 - bgt _0803FFD0 - ldr r0, _08040024 - lsls r1, r6, 3 - adds r1, r6 - adds r1, r4 -_0803FFE8: - lsls r1, 1 - adds r1, r0 - ldrh r0, [r1] - strh r0, [r3] - adds r3, 0x2 - subs r5, r2 -_0803FFF4: - cmp r4, 0x9 - bne _08040008 - movs r1, 0x96 - lsls r1, 2 - adds r0, r7, r1 - ldr r2, _08040028 - adds r1, r2, 0 - orrs r0, r1 - strh r0, [r3] - adds r3, 0x2 -_08040008: - mov r1, r8 - adds r0, r5, r1 - movs r2, 0x96 - lsls r2, 2 - adds r0, r2 - ldr r2, _08040028 - adds r1, r2, 0 - orrs r0, r1 - strh r0, [r3] -_0804001A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08040024: .4byte gUnknown_80F6544 -_08040028: .4byte 0xfffff000 - thumb_func_end sub_803FF18 - - thumb_func_start sub_804002C -sub_804002C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r8, r0 - ldr r0, _08040088 - ldr r0, [r0] - ldr r1, _0804008C - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - movs r5, 0 - movs r7, 0x1 -_08040046: - movs r4, 0 - adds r6, r5, 0x1 -_0804004A: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - ldrh r1, [r0, 0x4] - orrs r1, r7 - strh r1, [r0, 0x4] - adds r4, 0x1 - cmp r4, 0x37 - ble _0804004A - adds r5, r6, 0 - cmp r5, 0x1F - ble _08040046 - movs r0, 0 - bl sub_803F580 - bl sub_8049ED4 - bl sub_8040A84 - ldr r0, _08040090 - ldr r1, [r0] - mov r0, r8 - bl sub_80522A8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08040088: .4byte gUnknown_203B418 -_0804008C: .4byte 0x0001820b -_08040090: .4byte gUnknown_80FD040 - thumb_func_end sub_804002C - - thumb_func_start sub_8040094 -sub_8040094: - push {lr} - ldr r1, _080400C8 - ldr r1, [r1] - ldr r2, _080400CC - adds r1, r2 - strb r0, [r1] - bl sub_803F7BC - bl sub_80060EC - ldr r0, _080400D0 - ldr r0, [r0] - bl sub_8094FB4 - bl sub_800CB20 - bl sub_800485C - bl xxx_call_update_bg_sound_input - bl sub_8083F58 - bl sub_8011860 - pop {r0} - bx r0 - .align 2, 0 -_080400C8: .4byte gUnknown_203B418 -_080400CC: .4byte 0x00018217 -_080400D0: .4byte gUnknown_203B47C - thumb_func_end sub_8040094 - - thumb_func_start sub_80400D4 -sub_80400D4: - push {r4,lr} - ldr r0, _08040114 - ldr r4, [r0] - movs r0, 0xC1 - lsls r0, 9 - adds r3, r4, r0 - ldr r0, [r3] - cmp r0, 0 - beq _0804010C - cmp r0, 0x1E - ble _080400EC - movs r0, 0x1F -_080400EC: - ldr r1, _08040118 - adds r2, r4, r1 - ldr r1, _0804011C - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [r2] - ldr r0, [r3] - subs r0, 0x1 - str r0, [r3] - cmp r0, 0 - bne _0804010C - ldr r1, _08040120 - adds r0, r4, r1 - ldr r0, [r0] - str r0, [r3] -_0804010C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08040114: .4byte gUnknown_203B418 -_08040118: .4byte 0x000181fc -_0804011C: .4byte gUnknown_80F6568 -_08040120: .4byte 0x00018204 - thumb_func_end sub_80400D4 - - thumb_func_start sub_8040124 -sub_8040124: - ldr r1, _0804012C - movs r0, 0 - strb r0, [r1] - bx lr - .align 2, 0 -_0804012C: .4byte gUnknown_202EE01 - thumb_func_end sub_8040124 - - thumb_func_start sub_8040130 -sub_8040130: - push {lr} - ldr r0, _08040144 - ldr r1, _08040148 - bl OpenFileAndGetFileDataPtr - ldr r1, _0804014C - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_08040144: .4byte gUnknown_80F6604 -_08040148: .4byte gUnknown_83B0000 -_0804014C: .4byte gUnknown_202EE04 - thumb_func_end sub_8040130 - - thumb_func_start sub_8040150 -sub_8040150: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r0, 0 - ldr r2, _080401EC -_08040164: - movs r4, 0 - lsls r1, r0, 3 - adds r3, r0, 0x1 - mov r8, r3 - subs r1, r0 - lsls r0, r1, 7 - ldr r3, _080401F0 - adds r6, r0, r3 - lsls r5, r1, 2 -_08040176: - ldr r0, [r2] - adds r0, r6 - lsls r1, r4, 5 - adds r0, r1 - movs r1, 0x20 - str r2, [sp] - bl CpuClear - ldr r2, [sp] - ldr r0, [r2] - adds r1, r4, r5 - ldr r3, _080401F4 - adds r0, r3 - adds r0, r1 - movs r7, 0 - strb r7, [r0] - adds r4, 0x1 - cmp r4, 0x1B - ble _08040176 - mov r0, r8 - cmp r0, 0xF - ble _08040164 - mov r0, r9 - cmp r0, 0 - bne _080401B0 - ldr r1, _080401F8 - movs r0, 0x64 - strh r0, [r1] - strh r0, [r1, 0x2] -_080401B0: - ldr r3, _080401EC - ldr r0, [r3] - ldr r2, _080401FC - adds r1, r0, r2 - str r7, [r1] - ldr r1, _08040200 - adds r0, r1 - movs r2, 0x1 - strb r2, [r0] - ldr r0, [r3] - ldr r3, _08040204 - adds r0, r3 - strb r7, [r0] - ldr r0, _08040208 - strb r2, [r0] - ldr r1, _0804020C - ldr r0, _08040210 - str r0, [r1] - ldr r0, _08040214 - strb r2, [r0] - bl sub_8040238 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080401EC: .4byte gUnknown_203B418 -_080401F0: .4byte 0x0001822c -_080401F4: .4byte 0x0001ba2c -_080401F8: .4byte gUnknown_203B410 -_080401FC: .4byte 0x0001bdcc -_08040200: .4byte 0x0001bdd0 -_08040204: .4byte 0x0001bdd2 -_08040208: .4byte gUnknown_202EE00 -_0804020C: .4byte gUnknown_202EE08 -_08040210: .4byte 0x06001700 -_08040214: .4byte gUnknown_202EE01 - thumb_func_end sub_8040150 - - thumb_func_start sub_8040218 -sub_8040218: - push {lr} - ldr r0, _08040230 - ldr r0, [r0] - cmp r0, 0 - beq _08040226 - bl CloseFile -_08040226: - bl sub_8040124 - pop {r0} - bx r0 - .align 2, 0 -_08040230: .4byte gUnknown_202EE04 - thumb_func_end sub_8040218 - - thumb_func_start nullsub_203 -nullsub_203: - bx lr - thumb_func_end nullsub_203 - - thumb_func_start sub_8040238 -sub_8040238: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r1, _0804026C - ldr r0, [r1] - cmp r0, 0 - beq _080402A0 - ldr r0, _08040270 - ldrb r0, [r0] - cmp r0, 0 - beq _080402A0 - movs r6, 0 - ldr r0, _08040274 - mov r8, r0 - adds r7, r1, 0 -_08040256: - cmp r6, 0xE - bne _08040278 - movs r0, 0xEE - mov r1, r8 - bl SetBGPaletteBufferColorArray - movs r0, 0xEE - mov r1, r8 - bl nullsub_5 - b _0804029A - .align 2, 0 -_0804026C: .4byte gUnknown_202EE04 -_08040270: .4byte gUnknown_202EE01 -_08040274: .4byte gUnknown_202D03C -_08040278: - adds r5, r6, 0 - adds r5, 0xE0 - ldr r0, [r7] - ldr r0, [r0, 0x4] - lsls r4, r6, 2 - ldr r1, [r0, 0x4] - adds r1, r4 - adds r0, r5, 0 - bl SetBGPaletteBufferColorArray - ldr r0, [r7] - ldr r0, [r0, 0x4] - ldr r1, [r0, 0x4] - adds r1, r4 - adds r0, r5, 0 - bl nullsub_5 -_0804029A: - adds r6, 0x1 - cmp r6, 0xF - ble _08040256 -_080402A0: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8040238 - - thumb_func_start sub_80402AC -sub_80402AC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - mov r8, r0 - str r1, [sp] - ldr r4, _0804034C - ldr r0, [r4] - str r0, [sp, 0x4] - movs r1, 0x1 - mov r10, r1 - ldr r0, _08040350 - ldr r0, [r0] - cmp r0, 0 - bne _080402D0 - b _08040776 -_080402D0: - ldr r0, _08040354 - ldrb r0, [r0] - cmp r0, 0 - bne _080402DA - b _08040776 -_080402DA: - bl sub_800EC74 - lsls r0, 24 - cmp r0, 0 - beq _080402E6 - b _08040776 -_080402E6: - mov r2, r8 - cmp r2, 0 - bge _080402EE - b _08040776 -_080402EE: - ldr r3, [sp] - cmp r3, 0x1 - bgt _080402F6 - b _08040776 -_080402F6: - cmp r2, 0x37 - ble _080402FC - b _08040776 -_080402FC: - cmp r3, 0x1E - ble _08040302 - b _08040776 -_08040302: - mov r0, r8 - adds r1, r3, 0 - bl sub_804954C - mov r9, r0 - ldrh r0, [r0] - movs r5, 0x3 - ands r5, r0 - str r5, [sp, 0x8] - ldr r0, [r4] - ldr r7, _08040358 - adds r1, r0, r7 - ldrb r1, [r1] - str r1, [sp, 0xC] - ldr r2, _0804035C - adds r1, r0, r2 - ldrb r5, [r1] - ldr r3, _08040360 - adds r1, r0, r3 - ldrb r1, [r1] - str r1, [sp, 0x14] - subs r7, 0x2 - adds r1, r0, r7 - ldrb r1, [r1] - str r1, [sp, 0x10] - ldr r1, _08040364 - adds r0, r1 - ldrb r0, [r0] - cmp r5, 0 - beq _08040368 - mov r2, r9 - ldrb r0, [r2, 0x4] - mov r7, r10 - ands r7, r0 - movs r3, 0 - str r3, [sp, 0x18] - b _0804039C - .align 2, 0 -_0804034C: .4byte gUnknown_203B418 -_08040350: .4byte gUnknown_202EE04 -_08040354: .4byte gUnknown_202EE01 -_08040358: .4byte 0x00018210 -_0804035C: .4byte 0x0001820a -_08040360: .4byte 0x0001820f -_08040364: .4byte 0x0001820b -_08040368: - cmp r0, 0 - beq _08040370 - movs r7, 0x1 - b _08040378 -_08040370: - mov r7, r9 - ldrb r0, [r7, 0x4] - mov r7, r10 - ands r7, r0 -_08040378: - bl sub_8043D10 - lsls r0, 24 - cmp r0, 0 - bne _08040398 - ldr r0, _08040390 - ldr r0, [r0] - ldr r1, _08040394 - adds r0, r1 - ldrb r0, [r0] - str r0, [sp, 0x18] - b _0804039C - .align 2, 0 -_08040390: .4byte gUnknown_203B418 -_08040394: .4byte 0x00018211 -_08040398: - movs r2, 0 - str r2, [sp, 0x18] -_0804039C: - bl sub_8094C48 - lsls r0, 24 - cmp r0, 0 - bne _080403A8 - b _08040632 -_080403A8: - ldr r0, _080403FC - ldr r0, [r0] - ldr r3, _08040400 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _080403B8 - b _08040632 -_080403B8: - movs r6, 0 - cmp r5, 0 - bne _0804045E - mov r0, r9 - ldr r4, [r0, 0x10] - cmp r4, 0 - beq _0804045E - adds r0, r4, 0 - bl sub_80450F8 - adds r1, r0, 0 - ldr r0, _08040404 - ldrb r0, [r0] - cmp r0, 0 - beq _0804045E - cmp r1, 0x1 - bne _0804045E - adds r0, r4, 0 - bl sub_8045804 - lsls r0, 24 - cmp r0, 0 - beq _0804045E - ldr r1, [r4, 0x70] - adds r0, r1, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _080403F6 - cmp r0, 0x47 - bne _08040408 -_080403F6: - movs r0, 0x1 - b _0804040A - .align 2, 0 -_080403FC: .4byte gUnknown_203B418 -_08040400: .4byte 0x0001356c -_08040404: .4byte gUnknown_202EE00 -_08040408: - movs r0, 0 -_0804040A: - cmp r0, 0 - bne _08040458 - adds r0, r1, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08040458 - cmp r0, 0x4 - beq _08040458 - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _08040426 - movs r6, 0x2 - b _0804045A -_08040426: - ldrb r0, [r1, 0x7] - cmp r0, 0 - beq _08040458 - ldr r0, _0804044C - mov r1, r8 - strh r1, [r0] - mov r2, sp - ldrh r2, [r2] - strh r2, [r0, 0x2] - ldr r0, _08040450 - ldr r0, [r0] - ldr r3, _08040454 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0804045A - movs r6, 0x8 - b _0804045A - .align 2, 0 -_0804044C: .4byte gUnknown_203B410 -_08040450: .4byte gUnknown_203B418 -_08040454: .4byte 0x00018214 -_08040458: - movs r6, 0xA -_0804045A: - movs r0, 0 - mov r10, r0 -_0804045E: - mov r1, r10 - cmp r1, 0 - beq _0804054E - cmp r5, 0 - bne _08040548 - mov r2, r9 - ldr r4, [r2, 0x14] - cmp r4, 0 - beq _08040500 - adds r0, r4, 0 - bl sub_80450F8 - adds r5, r0, 0 - cmp r7, 0 - bne _0804049E - movs r6, 0 - cmp r5, 0x3 - bne _0804054E - ldr r3, [sp, 0x10] - cmp r3, 0 - bne _08040494 - mov r5, r9 - ldrh r1, [r5, 0x4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0804054E -_08040494: - ldr r0, [sp, 0x8] - cmp r0, 0 - beq _0804054E - movs r6, 0x3 - b _0804054E -_0804049E: - cmp r5, 0x2 - bne _080404C4 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - bne _080404B2 - ldr r1, [sp, 0x14] - cmp r1, 0 - beq _080404C4 -_080404B2: - adds r0, r4, 0 - bl sub_8045104 - ldr r1, _080404FC - ldrb r0, [r0] - adds r0, r1 - ldrb r6, [r0] - movs r2, 0 - mov r10, r2 -_080404C4: - mov r3, r10 - cmp r3, 0 - beq _0804054E - cmp r5, 0x3 - bne _080404EC - ldr r5, [sp, 0x10] - cmp r5, 0 - bne _080404E0 - mov r0, r9 - ldrh r1, [r0, 0x4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080404EC -_080404E0: - ldr r1, [sp, 0x8] - cmp r1, 0 - beq _080404EC - movs r6, 0x3 - movs r2, 0 - mov r10, r2 -_080404EC: - mov r3, r10 - cmp r3, 0 - beq _0804054E - ldr r5, [sp, 0x8] - cmp r5, 0x1 - beq _08040548 - movs r6, 0 - b _0804054E - .align 2, 0 -_080404FC: .4byte gUnknown_80F65F0 -_08040500: - cmp r7, 0 - bne _08040528 - ldr r0, [sp, 0x18] - cmp r0, 0 - beq _08040548 - mov r2, r9 - ldrh r1, [r2] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _08040548 - bl sub_8043D10 - lsls r0, 24 - movs r6, 0x5 - cmp r0, 0 - bne _0804054E - movs r6, 0x6 - b _0804054E -_08040528: - mov r3, r9 - ldrh r1, [r3] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _08040548 - bl sub_8043D10 - lsls r0, 24 - movs r6, 0x5 - cmp r0, 0 - bne _08040544 - movs r6, 0x6 -_08040544: - movs r5, 0 - mov r10, r5 -_08040548: - mov r0, r10 - cmp r0, 0 - bne _0804055A -_0804054E: - ldr r1, [sp, 0xC] - cmp r1, 0 - beq _0804055A - cmp r6, 0 - beq _0804055E - movs r6, 0xB -_0804055A: - cmp r6, 0 - bne _08040606 -_0804055E: - cmp r7, 0 - beq _08040568 - ldr r2, [sp, 0x8] - cmp r2, 0x1 - beq _0804056C -_08040568: - movs r6, 0x1 - b _08040606 -_0804056C: - movs r4, 0xF - ldr r3, [sp] - cmp r3, 0x1E - bgt _0804058A - adds r1, r3, 0 - adds r1, 0x1 - mov r0, r8 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _0804058A - movs r4, 0xE -_0804058A: - ldr r5, [sp] - cmp r5, 0 - ble _080405AA - adds r1, r5, 0 - subs r1, 0x1 - mov r0, r8 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _080405AA - movs r0, 0x5 - negs r0, r0 - ands r4, r0 -_080405AA: - mov r7, r8 - cmp r7, 0x36 - bgt _080405CA - mov r0, r8 - adds r0, 0x1 - ldr r1, [sp] - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _080405CA - movs r0, 0x3 - negs r0, r0 - ands r4, r0 -_080405CA: - mov r0, r8 - cmp r0, 0 - ble _080405E8 - subs r0, 0x1 - ldr r1, [sp] - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _080405E8 - movs r0, 0x9 - negs r0, r0 - ands r4, r0 -_080405E8: - lsls r0, r4, 16 - asrs r6, r0, 16 - mov r2, r9 - ldrh r1, [r2, 0x4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080405FE - adds r0, r6, 0 - adds r0, 0x10 - b _08040602 -_080405FE: - adds r0, r6, 0 - adds r0, 0x20 -_08040602: - lsls r0, 16 - asrs r6, r0, 16 -_08040606: - ldr r0, _08040618 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0x6 - bne _0804061C - adds r0, r6, 0 - adds r0, 0x80 - b _0804062C - .align 2, 0 -_08040618: .4byte gUnknown_203B46C -_0804061C: - bl sub_8094C68 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0804063A - adds r0, r6, 0 - adds r0, 0x40 -_0804062C: - lsls r0, 16 - asrs r6, r0, 16 - b _0804063A -_08040632: - movs r6, 0x1 - ldr r1, _0804074C - movs r0, 0x64 - strh r0, [r1] -_0804063A: - mov r3, r8 - lsrs r0, r3, 31 - add r0, r8 - asrs r0, 1 - mov r9, r0 - ldr r0, [sp] - subs r0, 0x2 - lsrs r1, r0, 31 - adds r1, r0, r1 - asrs r1, 1 - mov r5, r9 - lsls r3, r5, 1 - mov r7, r8 - subs r3, r7, r3 - lsls r2, r1, 1 - subs r0, r2 - lsls r0, 1 - adds r3, r0 - lsls r0, r1, 3 - subs r5, r0, r1 - lsls r0, r5, 7 - ldr r1, _08040750 - adds r0, r1 - ldr r2, [sp, 0x4] - adds r0, r2, r0 - mov r7, r9 - lsls r1, r7, 5 - adds r4, r0, r1 - ldr r0, _08040754 - ldr r0, [r0] - ldr r1, [r0, 0x4] - lsls r0, r6, 2 - adds r0, r3 - ldr r1, [r1] - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - ldr r0, [r4] - ldr r1, [r2] - ands r0, r1 - ldr r1, [r2, 0x4] - orrs r0, r1 - str r0, [r4] - ldr r0, [r4, 0x4] - ldr r1, [r2, 0x8] - ands r0, r1 - ldr r1, [r2, 0xC] - orrs r0, r1 - str r0, [r4, 0x4] - ldr r0, [r4, 0x8] - ldr r1, [r2, 0x10] - ands r0, r1 - ldr r1, [r2, 0x14] - orrs r0, r1 - str r0, [r4, 0x8] - ldr r0, [r4, 0xC] - ldr r1, [r2, 0x18] - ands r0, r1 - ldr r1, [r2, 0x1C] - orrs r0, r1 - str r0, [r4, 0xC] - ldr r0, [r4, 0x10] - ldr r1, [r2, 0x20] - ands r0, r1 - ldr r1, [r2, 0x24] - orrs r0, r1 - str r0, [r4, 0x10] - ldr r0, [r4, 0x14] - ldr r1, [r2, 0x28] - ands r0, r1 - ldr r1, [r2, 0x2C] - orrs r0, r1 - str r0, [r4, 0x14] - ldr r0, [r4, 0x18] - ldr r1, [r2, 0x30] - ands r0, r1 - ldr r1, [r2, 0x34] - orrs r0, r1 - str r0, [r4, 0x18] - ldr r0, [r4, 0x1C] - ldr r1, [r2, 0x38] - ands r0, r1 - ldr r1, [r2, 0x3C] - orrs r0, r1 - str r0, [r4, 0x1C] - ldr r0, [sp, 0x4] - ldr r1, _08040758 - adds r2, r0, r1 - ldrb r0, [r2] - cmp r0, 0 - bne _08040776 - lsls r5, 2 - mov r10, r5 - mov r3, r9 - add r3, r10 - ldr r5, _0804075C - mov r8, r5 - ldr r0, [sp, 0x4] - add r0, r8 - adds r1, r0, r3 - ldrb r0, [r1] - cmp r0, 0 - bne _08040776 - movs r0, 0x1 - strb r0, [r1] - ldr r7, [sp, 0x4] - ldr r1, _08040760 - adds r6, r7, r1 - ldr r5, [r6] - cmp r5, 0x27 - bgt _08040774 - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 2 - ldr r0, _08040764 - adds r2, r7, r0 - adds r2, r1 - ldr r0, _08040768 - lsls r3, 5 - ldr r0, [r0] - adds r0, r3 - str r0, [r2] - ldr r2, _0804076C - adds r0, r7, r2 - adds r0, r1 - str r4, [r0] - ldr r3, _08040770 - adds r2, r7, r3 - adds r2, r1 - mov r0, r10 - add r0, r8 - adds r0, r7, r0 - add r0, r9 - str r0, [r2] - adds r0, r5, 0x1 - str r0, [r6] - b _08040776 - .align 2, 0 -_0804074C: .4byte gUnknown_203B410 -_08040750: .4byte 0x0001822c -_08040754: .4byte gUnknown_202EE04 -_08040758: .4byte 0x0001bdd1 -_0804075C: .4byte 0x0001ba2c -_08040760: .4byte 0x0001bdcc -_08040764: .4byte 0x0001bbec -_08040768: .4byte gUnknown_202EE08 -_0804076C: .4byte 0x0001bbf0 -_08040770: .4byte 0x0001bbf4 -_08040774: - strb r0, [r2] -_08040776: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80402AC - - thumb_func_start sub_8040788 -sub_8040788: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, _08040814 - ldr r0, [r0] - mov r8, r0 - cmp r0, 0 - beq _08040870 - ldr r0, _08040818 - add r0, r8 - ldrb r0, [r0] - cmp r0, 0 - beq _08040870 - bl sub_800EC74 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _08040870 - ldr r1, _0804081C - add r1, r8 - ldrb r0, [r1] - cmp r0, 0 - bne _0804082C - movs r6, 0 - ldr r1, _08040820 - add r1, r8 - ldr r0, [r1] - cmp r6, r0 - bge _08040868 - adds r5, r1, 0 - movs r4, 0 -_080407C8: - ldr r1, _08040824 - adds r0, r4, r1 - mov r1, r8 - adds r3, r1, r0 - ldr r1, [r3, 0x4] - ldr r2, [r3] - ldr r0, _08040828 - ldr r0, [r0] - cmp r0, 0 - beq _080407E0 - cmp r0, 0x3 - bne _08040800 -_080407E0: - ldm r1!, {r0} - stm r2!, {r0} - ldm r1!, {r0} - stm r2!, {r0} - ldm r1!, {r0} - stm r2!, {r0} - ldm r1!, {r0} - stm r2!, {r0} - ldm r1!, {r0} - stm r2!, {r0} - ldm r1!, {r0} - stm r2!, {r0} - ldm r1!, {r0} - stm r2!, {r0} - ldr r0, [r1] - str r0, [r2] -_08040800: - ldr r0, [r3, 0x8] - movs r1, 0 - strb r1, [r0] - adds r4, 0xC - adds r6, 0x1 - ldr r0, [r5] - cmp r6, r0 - blt _080407C8 - b _08040868 - .align 2, 0 -_08040814: .4byte gUnknown_203B418 -_08040818: .4byte 0x0001bdd0 -_0804081C: .4byte 0x0001bdd1 -_08040820: .4byte 0x0001bdcc -_08040824: .4byte 0x0001bbec -_08040828: .4byte gUnknown_202EDD0 -_0804082C: - strb r2, [r1] - ldr r0, _0804087C - ldr r5, [r0] - ldr r4, _08040880 - add r4, r8 - movs r6, 0 - movs r7, 0x80 - lsls r7, 1 -_0804083C: - ldr r0, _08040884 - ldr r0, [r0] - cmp r0, 0 - beq _08040848 - cmp r0, 0x3 - bne _08040854 -_08040848: - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x80 - lsls r2, 1 - bl CpuCopy -_08040854: - adds r5, r7 - adds r4, r7 - adds r6, 0x8 - ldr r0, _08040888 - cmp r6, r0 - ble _0804083C - ldr r1, _0804088C - add r1, r8 - movs r0, 0x1 - strb r0, [r1] -_08040868: - ldr r1, _08040890 - add r1, r8 - movs r0, 0 - str r0, [r1] -_08040870: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804087C: .4byte gUnknown_202EE08 -_08040880: .4byte 0x0001822c -_08040884: .4byte gUnknown_202EDD0 -_08040888: .4byte 0x000001bf -_0804088C: .4byte 0x0001bdd2 -_08040890: .4byte 0x0001bdcc - thumb_func_end sub_8040788 - - thumb_func_start sub_8040894 -sub_8040894: - push {r4-r7,lr} - sub sp, 0x8 - ldr r0, _080409F4 - ldr r1, [r0] - ldr r2, _080409F8 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _080408A8 - b _08040A6A -_080408A8: - adds r2, 0x5 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080408B4 - b _08040A6A -_080408B4: - ldr r7, _080409FC - movs r1, 0 - ldrsh r0, [r7, r1] - cmp r0, 0x63 - ble _080408C0 - b _08040A6A -_080408C0: - ldr r0, _08040A00 - ldrb r1, [r0] - adds r1, 0x1 - strb r1, [r0] - movs r0, 0x8 - ands r1, r0 - cmp r1, 0 - beq _080408D2 - b _08040A6A -_080408D2: - movs r0, 0 - movs r1, 0 - str r0, [sp] - str r1, [sp, 0x4] - mov r0, sp - ldrh r0, [r0] - ldr r1, _08040A04 - ands r1, r0 - ldr r3, _08040A08 - ldr r0, [sp] - ands r0, r3 - orrs r0, r1 - str r0, [sp] - mov r1, sp - ldrh r1, [r1] - adds r2, r3, 0 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08040A0C - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r5, _08040A10 - adds r0, r5, 0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08040A14 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08040A18 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r4, _08040A1C - adds r0, r4, 0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - ands r3, r1 - orrs r3, r0 - str r3, [sp] - mov r3, sp - ldrh r0, [r3, 0x2] - ldr r6, _08040A20 - ands r6, r0 - ands r6, r4 - strh r6, [r3, 0x2] - ldr r2, _08040A24 - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r5 - movs r5, 0xF - lsls r1, r5, 12 - ldr r4, _08040A28 - ands r0, r4 - orrs r0, r1 - strh r0, [r3, 0x4] - ldrh r0, [r3, 0x6] - ldr r2, _08040A2C - ands r2, r0 - ldr r0, _08040A30 - ands r2, r0 - strh r2, [r3, 0x6] - ldr r0, _08040A34 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0x6 - bne _08040A3C - movs r1, 0 - ldrsh r0, [r7, r1] - lsls r0, 2 - adds r0, 0x10 - ldr r1, _08040A38 - ands r0, r1 - strh r0, [r3, 0x2] - movs r1, 0x2 - ldrsh r0, [r7, r1] - adds r0, 0x1 - lsls r0, 2 - ands r0, r4 - lsls r0, 4 - adds r1, r2, 0 - ands r1, r5 - orrs r1, r0 - strh r1, [r3, 0x6] - movs r1, 0x80 - lsls r1, 1 - mov r0, sp - movs r2, 0 - movs r3, 0 - bl nullsub_11 - b _08040A6A - .align 2, 0 -_080409F4: .4byte gUnknown_203B418 -_080409F8: .4byte 0x00018214 -_080409FC: .4byte gUnknown_203B410 -_08040A00: .4byte gUnknown_202EE02 -_08040A04: .4byte 0x0000feff -_08040A08: .4byte 0xffff0000 -_08040A0C: .4byte 0x0000fdff -_08040A10: .4byte 0x0000f3ff -_08040A14: .4byte 0x0000efff -_08040A18: .4byte 0x0000dfff -_08040A1C: .4byte 0x00003fff -_08040A20: .4byte 0x0000c1ff -_08040A24: .4byte 0x00000215 -_08040A28: .4byte 0x00000fff -_08040A2C: .4byte 0x0000fffe -_08040A30: .4byte 0x0000fffd -_08040A34: .4byte gUnknown_203B46C -_08040A38: .4byte 0x000001ff -_08040A3C: - movs r1, 0 - ldrsh r0, [r7, r1] - lsls r0, 2 - adds r0, 0x8 - ldr r1, _08040A74 - ands r0, r1 - strh r0, [r3, 0x2] - movs r1, 0x2 - ldrsh r0, [r7, r1] - lsls r0, 2 - ands r0, r4 - lsls r0, 4 - adds r1, r2, 0 - ands r1, r5 - orrs r1, r0 - strh r1, [r3, 0x6] - movs r1, 0x80 - lsls r1, 1 - mov r0, sp - movs r2, 0 - movs r3, 0 - bl AddSprite -_08040A6A: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08040A74: .4byte 0x000001ff - thumb_func_end sub_8040894 - - thumb_func_start sub_8040A78 -sub_8040A78: - ldr r1, _08040A80 - movs r0, 0 - strb r0, [r1] - bx lr - .align 2, 0 -_08040A80: .4byte gUnknown_202EE02 - thumb_func_end sub_8040A78 - - thumb_func_start sub_8040A84 -sub_8040A84: - push {r4-r6,lr} - ldr r0, _08040AB4 - ldr r0, [r0] - ldr r1, _08040AB8 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - movs r5, 0 -_08040A94: - movs r4, 0 - adds r6, r5, 0x1 -_08040A98: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80402AC - adds r4, 0x1 - cmp r4, 0x37 - ble _08040A98 - adds r5, r6, 0 - cmp r5, 0x1F - ble _08040A94 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08040AB4: .4byte gUnknown_203B418 -_08040AB8: .4byte 0x0001bdd1 - thumb_func_end sub_8040A84 - - thumb_func_start sub_8040ABC -sub_8040ABC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r1, r0, 24 - ldr r0, _08040AD8 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0x6 - bne _08040ADC - movs r7, 0xF - movs r0, 0 - b _08040AEC - .align 2, 0 -_08040AD8: .4byte gUnknown_203B46C -_08040ADC: - cmp r1, 0 - beq _08040AE8 - movs r7, 0xE - movs r4, 0 - mov r8, r4 - b _08040AEE -_08040AE8: - movs r7, 0x10 - movs r0, 0x3 -_08040AEC: - mov r8, r0 -_08040AEE: - ldr r6, _08040B58 - movs r2, 0x1 - movs r1, 0 - cmp r1, r7 - bge _08040B22 - ldr r4, _08040B5C - mov r12, r4 -_08040AFC: - lsls r0, r2, 6 - mov r4, r12 - adds r3, r0, r4 - adds r4, r2, 0x1 - adds r5, r1, 0x1 - movs r2, 0x1B -_08040B08: - adds r1, r6, 0 - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - strh r1, [r3] - adds r3, 0x2 - subs r2, 0x1 - cmp r2, 0 - bge _08040B08 - adds r2, r4, 0 - adds r1, r5, 0 - cmp r1, r7 - blt _08040AFC -_08040B22: - movs r1, 0 - cmp r1, r8 - bge _08040B4C - ldr r6, _08040B5C - movs r0, 0xE0 - lsls r0, 8 - adds r3, r0, 0 -_08040B30: - lsls r0, r2, 6 - adds r0, r6 - adds r4, r2, 0x1 - adds r5, r1, 0x1 - movs r2, 0x1B -_08040B3A: - strh r3, [r0] - adds r0, 0x2 - subs r2, 0x1 - cmp r2, 0 - bge _08040B3A - adds r2, r4, 0 - adds r1, r5, 0 - cmp r1, r8 - blt _08040B30 -_08040B4C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08040B58: .4byte 0x0000e0b8 -_08040B5C: .4byte gUnknown_202B03A - thumb_func_end sub_8040ABC - - thumb_func_start sub_8040B60 -sub_8040B60: - push {r4,r5,lr} - ldr r0, _08040BA4 - ldr r3, [r0] - ldr r1, _08040BA8 - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08040B9E - movs r1, 0 - ldr r2, _08040BAC - adds r5, r3, r2 - movs r4, 0 -_08040B78: - lsls r0, r1, 3 - adds r2, r1, 0x1 - subs r0, r1 - movs r1, 0x37 - lsls r0, 2 - adds r0, r5 - adds r0, 0x37 -_08040B86: - strb r4, [r0] - subs r0, 0x1 - subs r1, 0x1 - cmp r1, 0 - bge _08040B86 - adds r1, r2, 0 - cmp r1, 0x1F - ble _08040B78 - movs r1, 0 - ldr r2, _08040BA8 - adds r0, r3, r2 - strb r1, [r0] -_08040B9E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08040BA4: .4byte gUnknown_203B418 -_08040BA8: .4byte 0x0001bdd2 -_08040BAC: .4byte 0x0001ba2c - thumb_func_end sub_8040B60 - - thumb_func_start sub_8040BB0 -sub_8040BB0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r6, r0, 0 - adds r7, r1, 0 - lsls r2, 24 - lsrs r2, 24 - mov r10, r2 - bl sub_804143C - mov r8, r0 - ldrh r4, [r7, 0x2] - adds r0, r6, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - mov r2, r8 - bl sub_804141C - lsls r0, 24 - lsrs r5, r0, 24 - mov r9, r5 - ldrh r4, [r7, 0x2] - adds r0, r6, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - mov r2, r8 - bl sub_80412E0 - lsls r0, 16 - lsrs r0, 16 - bl sub_800ECB8 - movs r1, 0 - ldrsh r4, [r0, r1] - adds r0, r6, 0 - bl sub_8042768 - lsls r0, 24 - cmp r0, 0 - beq _08040C28 - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_80414C0 - lsls r0, 24 - cmp r0, 0 - bne _08040C28 - mov r0, r10 - cmp r0, 0 - bne _08040C2C -_08040C28: - adds r0, r5, 0 - b _08040C3C -_08040C2C: - cmp r4, 0 - beq _08040C3A - adds r0, r6, 0 - adds r1, r7, 0 - mov r2, r8 - bl sub_8040C4C -_08040C3A: - mov r0, r9 -_08040C3C: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8040BB0 - - thumb_func_start sub_8040C4C -sub_8040C4C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x14 - adds r7, r0, 0 - adds r4, r1, 0 - adds r6, r2, 0 - ldrh r5, [r4, 0x2] - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - adds r2, r6, 0 - bl sub_80412E0 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - ldr r6, [r7, 0x70] - ldrh r0, [r4, 0x2] - bl sub_800EC94 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - movs r0, 0x4 - ldrsh r5, [r6, r0] - ldrh r4, [r4, 0x2] - adds r0, r7, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_80412E0 - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r5, 0 - bl sub_800E710 - adds r2, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _08040CC4 - add r0, sp, 0x8 - adds r1, r7, 0 - adds r1, 0x28 - lsls r2, 24 - lsrs r2, 24 - bl sub_800569C - b _08040CC8 -_08040CC4: - movs r0, 0 - str r0, [sp, 0x8] -_08040CC8: - mov r0, sp - mov r1, r9 - strh r1, [r0] - mov r1, sp - ldrh r0, [r6, 0x4] - strh r0, [r1, 0x2] - ldr r0, [r7, 0xC] - cmp r0, 0 - bge _08040CDC - adds r0, 0xFF -_08040CDC: - asrs r0, 8 - strh r0, [r1, 0x4] - mov r1, sp - ldr r0, [r7, 0x10] - cmp r0, 0 - bge _08040CEA - adds r0, 0xFF -_08040CEA: - asrs r0, 8 - strh r0, [r1, 0x6] - adds r0, r6, 0 - adds r0, 0x46 - ldrb r0, [r0] - str r0, [sp, 0xC] - movs r0, 0 - str r0, [sp, 0x10] - mov r0, sp - bl sub_8041500 - mov r0, r9 - bl sub_800EEC8 - bl sub_800EF64 - movs r0, 0x58 - bl sub_803E46C - mov r0, sp - bl sub_800EA84 - adds r4, r0, 0 - adds r1, r7, 0 - movs r2, 0x5 - bl sub_8042DD4 - ldr r0, _08040D28 - ldrb r5, [r0] - ldr r6, _08040D2C - b _08040D78 - .align 2, 0 -_08040D28: .4byte gUnknown_203B40D -_08040D2C: .4byte 0x00001010 -_08040D30: - ldr r0, _08040D58 - movs r1, 0x1 - strb r1, [r0] - ldr r1, _08040D5C - ldrh r2, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, r6 - beq _08040D48 - ldr r3, _08040D60 - adds r0, r2, r3 - strh r0, [r1] -_08040D48: - ldr r1, _08040D64 - ldr r0, [r1] - cmp r0, 0x4 - ble _08040D68 - subs r0, 0x4 - str r0, [r1] - b _08040D6E - .align 2, 0 -_08040D58: .4byte gUnknown_203B40D -_08040D5C: .4byte gUnknown_2026E4E -_08040D60: .4byte 0x00000101 -_08040D64: .4byte gUnknown_202EDC8 -_08040D68: - movs r0, 0 - str r0, [r1] - mov r8, r0 -_08040D6E: - bl sub_803EA10 - movs r0, 0x26 - bl sub_803E46C -_08040D78: - adds r0, r4, 0 - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - beq _08040D8A - mov r0, r8 - cmp r0, 0 - bne _08040D30 -_08040D8A: - ldr r0, _08040D9C - strb r5, [r0] - add sp, 0x14 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08040D9C: .4byte gUnknown_203B40D - thumb_func_end sub_8040C4C - - thumb_func_start sub_8040DA0 -sub_8040DA0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - adds r7, r0, 0 - mov r8, r1 - bl sub_804143C - mov r9, r0 - movs r0, 0 - str r0, [sp, 0x14] - ldr r1, [r7, 0x70] - mov r10, r1 - movs r0, 0x4 - ldrsh r5, [r1, r0] - mov r1, r8 - ldrh r4, [r1, 0x2] - adds r0, r7, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - mov r2, r9 - bl sub_80412E0 - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r5, 0 - bl sub_800EA44 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x18] - mov r0, sp - adds r1, r7, 0 - mov r2, r8 - mov r3, r9 - bl sub_8041038 - mov r0, sp - movs r1, 0x1 - bl sub_800E838 - lsls r0, 24 - cmp r0, 0 - bne _08040E0E - mov r1, r8 - ldrh r0, [r1, 0x2] - cmp r0, 0x52 - bne _08040E24 -_08040E0E: - ldr r0, _08040E1C - ldr r0, [r0] - ldr r1, _08040E20 - adds r0, r1 - ldr r6, [r0] - b _08040E26 - .align 2, 0 -_08040E1C: .4byte gUnknown_203B418 -_08040E20: .4byte 0x000181f8 -_08040E24: - adds r6, r7, 0 -_08040E26: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08040E34 - adds r6, r7, 0 -_08040E34: - mov r1, sp - ldr r0, [r6, 0xC] - cmp r0, 0 - bge _08040E3E - adds r0, 0xFF -_08040E3E: - asrs r0, 8 - strh r0, [r1, 0x4] - mov r1, sp - ldr r0, [r6, 0x10] - cmp r0, 0 - bge _08040E4C - adds r0, 0xFF -_08040E4C: - asrs r0, 8 - strh r0, [r1, 0x6] - adds r0, r6, 0 - bl sub_8042768 - lsls r0, 24 - cmp r0, 0 - bne _08040E5E - b _08041026 -_08040E5E: - adds r0, r7, 0 - mov r1, r8 - bl sub_80414C0 - lsls r0, 24 - cmp r0, 0 - beq _08040E6E - b _08041026 -_08040E6E: - mov r0, r8 - ldrh r1, [r0, 0x2] - movs r0, 0x94 - lsls r0, 1 - cmp r1, r0 - bne _08040ED0 - movs r0, 0x7 - bl sub_8084100 - ldr r1, _08040EB8 - str r0, [r1] - ldr r1, _08040EBC - ldr r2, [r1] - ldr r1, _08040EC0 - adds r4, r2, r1 - subs r1, 0x4 - adds r2, r1 - ldr r3, _08040EC4 - lsls r1, r0, 2 - adds r1, r3 - ldr r1, [r1] - str r1, [r2] - str r1, [r4] - ldr r1, _08040EC8 - adds r0, 0x4 - str r0, [r1] - ldr r0, _08040ECC - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - movs r1, 0xD2 - lsls r1, 1 - adds r0, r6, 0 - bl sub_80421C0 - b _08040EF0 - .align 2, 0 -_08040EB8: .4byte gUnknown_202F224 -_08040EBC: .4byte gUnknown_203B418 -_08040EC0: .4byte 0x00018204 -_08040EC4: .4byte gUnknown_8106A8C -_08040EC8: .4byte gUnknown_202DE30 -_08040ECC: .4byte gUnknown_8100224 -_08040ED0: - cmp r1, 0x76 - bne _08040EF0 - ldr r0, _08040F70 - ldr r0, [r0] - ldr r1, _08040F74 - adds r2, r0, r1 - subs r1, 0x4 - adds r0, r1 - movs r1, 0xC - str r1, [r0] - str r1, [r2] - movs r1, 0xD2 - lsls r1, 1 - adds r0, r6, 0 - bl sub_80421C0 -_08040EF0: - mov r0, r10 - movs r1, 0x4 - ldrsh r5, [r0, r1] - mov r0, r8 - ldrh r4, [r0, 0x2] - adds r0, r7, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - mov r2, r9 - bl sub_80412E0 - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r5, 0 - bl sub_800E790 - adds r1, r0, 0 - ldr r0, _08040F78 - cmp r1, r0 - beq _08040F2A - lsls r0, r1, 16 - lsrs r0, 16 - bl sub_8083E38 -_08040F2A: - ldr r1, [sp, 0x18] - cmp r1, 0x63 - bne _08040F7C - adds r0, r6, 0 - bl sub_8042768 - lsls r0, 24 - cmp r0, 0 - beq _08041026 - mov r0, r10 - adds r0, 0x46 - ldrb r4, [r0] - mov r0, sp - adds r1, r7, 0 - mov r2, r8 - mov r3, r9 - bl sub_8041108 - movs r6, 0x7 - movs r5, 0x7 -_08040F52: - subs r4, 0x1 - ands r4, r6 - adds r0, r7, 0 - movs r1, 0 - adds r2, r4, 0 - bl sub_806CDD4 - movs r0, 0x2 - movs r1, 0x15 - bl sub_803E708 - subs r5, 0x1 - cmp r5, 0 - bge _08040F52 - b _08041026 - .align 2, 0 -_08040F70: .4byte gUnknown_203B418 -_08040F74: .4byte 0x00018204 -_08040F78: .4byte 0x000003e5 -_08040F7C: - ldr r0, [sp, 0x18] - cmp r0, 0x62 - bne _08040FC2 - adds r0, r6, 0 - bl sub_8042768 - lsls r0, 24 - cmp r0, 0 - beq _08041026 - mov r0, r10 - adds r0, 0x46 - ldrb r4, [r0] - mov r0, sp - adds r1, r7, 0 - mov r2, r8 - mov r3, r9 - bl sub_8041108 - movs r6, 0x7 - movs r5, 0x8 -_08040FA4: - ands r4, r6 - adds r0, r7, 0 - movs r1, 0 - adds r2, r4, 0 - bl sub_806CDD4 - movs r0, 0x2 - movs r1, 0x15 - bl sub_803E708 - adds r4, 0x1 - subs r5, 0x1 - cmp r5, 0 - bge _08040FA4 - b _08041026 -_08040FC2: - mov r0, r10 - adds r0, 0x46 - ldrb r2, [r0] - adds r0, r7, 0 - ldr r1, [sp, 0x18] - bl sub_806CDD4 - adds r0, r7, 0 - adds r0, 0x21 - movs r1, 0 - strb r1, [r0] - movs r5, 0 - adds r6, r0, 0 - b _08040FE6 -_08040FDE: - ldrb r0, [r6] - cmp r0, 0 - bne _08041022 - adds r5, 0x1 -_08040FE6: - cmp r5, 0x77 - bgt _08041022 - movs r0, 0x59 - bl sub_803E46C - ldr r4, [r7, 0x40] - ldr r1, [sp, 0x18] - cmp r1, 0x9 - bne _08040FFC - movs r0, 0x2 - orrs r4, r0 -_08040FFC: - movs r0, 0x2 - ands r0, r4 - cmp r0, 0 - beq _0804101A - ldr r0, [sp, 0x14] - cmp r0, 0 - bne _0804101A - mov r0, sp - adds r1, r7, 0 - mov r2, r8 - mov r3, r9 - bl sub_8041108 - movs r1, 0x1 - str r1, [sp, 0x14] -_0804101A: - movs r0, 0x1 - ands r4, r0 - cmp r4, 0 - beq _08040FDE -_08041022: - movs r0, 0 - strb r0, [r6] -_08041026: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8040DA0 - - thumb_func_start sub_8041038 -sub_8041038: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r0, 0 - adds r7, r1, 0 - mov r8, r2 - mov r10, r3 - ldr r0, [r7, 0x70] - mov r9, r0 - ldrh r4, [r2, 0x2] - adds r0, r7, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - mov r2, r10 - bl sub_80412E0 - lsls r0, 16 - lsrs r0, 16 - str r0, [sp] - bl sub_800ECB8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _080410F4 - mov r0, r9 - movs r1, 0x4 - ldrsh r5, [r0, r1] - mov r0, r8 - ldrh r4, [r0, 0x2] - adds r0, r7, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - mov r2, r10 - bl sub_80412E0 - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r5, 0 - bl sub_800E710 - adds r2, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _080410BE - adds r0, r6, 0 - adds r0, 0x8 - adds r1, r7, 0 - adds r1, 0x28 - lsls r2, 24 - lsrs r2, 24 - bl sub_800569C - b _080410C2 -_080410BE: - movs r0, 0 - str r0, [r6, 0x8] -_080410C2: - mov r1, sp - ldrh r1, [r1] - strh r1, [r6] - mov r1, r9 - ldrh r0, [r1, 0x4] - strh r0, [r6, 0x2] - ldr r0, [r7, 0xC] - cmp r0, 0 - bge _080410D6 - adds r0, 0xFF -_080410D6: - asrs r0, 8 - strh r0, [r6, 0x4] - ldr r0, [r7, 0x10] - cmp r0, 0 - bge _080410E2 - adds r0, 0xFF -_080410E2: - asrs r0, 8 - strh r0, [r6, 0x6] - mov r0, r9 - adds r0, 0x46 - ldrb r0, [r0] - str r0, [r6, 0xC] - movs r0, 0 - str r0, [r6, 0x10] - b _080410F6 -_080410F4: - strh r0, [r6] -_080410F6: - 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_8041038 - - thumb_func_start sub_8041108 -sub_8041108: - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - adds r5, r3, 0 - ldrh r4, [r2, 0x2] - adds r0, r7, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - adds r2, r5, 0 - bl sub_80412E0 - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r4, 0 - bl sub_800ECB8 - movs r2, 0x2 - ldrsh r1, [r0, r2] - ldrh r0, [r6] - cmp r0, 0 - beq _08041162 - cmp r1, 0 - beq _08041162 - adds r0, r6, 0 - bl sub_8041500 - adds r0, r4, 0 - bl sub_800EEF8 - bl sub_800EF64 - movs r0, 0x5A - bl sub_803E46C - adds r0, r6, 0 - bl sub_800E52C - adds r1, r7, 0 - movs r2, 0x1 - bl sub_8042DD4 -_08041162: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8041108 - - thumb_func_start sub_8041168 -sub_8041168: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - mov r8, r0 - adds r6, r1, 0 - adds r7, r2, 0 - mov r9, r3 - adds r1, r7, 0 - bl sub_804143C - adds r5, r0, 0 - cmp r5, 0 - beq _0804118A - movs r5, 0x1 -_0804118A: - ldrh r4, [r7, 0x2] - mov r0, r8 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - adds r2, r5, 0 - bl sub_80412E0 - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - bl sub_800ECB8 - movs r1, 0x4 - ldrsh r5, [r0, r1] - movs r2, 0 - str r2, [sp, 0x14] - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080411CA - ldr r0, [r6, 0x70] - str r0, [sp, 0x14] - adds r0, r6, 0 - bl sub_8042768 - b _080411D0 -_080411CA: - mov r0, r9 - bl sub_803F428 -_080411D0: - lsls r0, 24 - cmp r0, 0 - beq _080412CE - mov r0, r8 - adds r1, r7, 0 - bl sub_80414C0 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080412CE - cmp r5, 0 - beq _080412CE - adds r0, r5, 0 - bl sub_800ECA4 - ldr r5, [r0, 0x1C] - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - beq _08041216 - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08041216 - add r0, sp, 0x8 - adds r1, r6, 0 - adds r1, 0x28 - lsls r2, r5, 24 - lsrs r2, 24 - bl sub_800569C - b _08041218 -_08041216: - str r4, [sp, 0x8] -_08041218: - mov r0, sp - mov r1, r10 - strh r1, [r0] - ldr r2, [sp, 0x14] - cmp r2, 0 - beq _08041248 - mov r1, sp - ldrh r0, [r2, 0x4] - strh r0, [r1, 0x2] - ldr r0, [r6, 0xC] - cmp r0, 0 - bge _08041232 - adds r0, 0xFF -_08041232: - asrs r0, 8 - strh r0, [r1, 0x4] - mov r1, sp - ldr r0, [r6, 0x10] - cmp r0, 0 - bge _08041240 - adds r0, 0xFF -_08041240: - asrs r0, 8 - strh r0, [r1, 0x6] - movs r0, 0 - b _0804128C -_08041248: - mov r1, sp - movs r0, 0x1 - strh r0, [r1, 0x2] - mov r0, r9 - movs r2, 0 - ldrsh r1, [r0, r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - mov r1, sp - movs r2, 0xC0 - lsls r2, 4 - adds r0, r2 - cmp r0, 0 - bge _08041268 - adds r0, 0xFF -_08041268: - asrs r0, 8 - strh r0, [r1, 0x4] - mov r0, r9 - movs r2, 0x2 - ldrsh r1, [r0, r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - mov r1, sp - movs r2, 0x80 - lsls r2, 5 - adds r0, r2 - cmp r0, 0 - bge _08041286 - adds r0, 0xFF -_08041286: - asrs r0, 8 - strh r0, [r1, 0x6] - ldr r0, [sp, 0x14] -_0804128C: - str r0, [sp, 0xC] - movs r0, 0 - str r0, [sp, 0x10] - mov r0, sp - bl sub_8041500 - mov r0, r10 - bl sub_800EEE0 - bl sub_800EF64 - mov r0, sp - bl sub_800EBC8 - adds r4, r0, 0 - movs r0, 0x5B - bl sub_803E46C - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0x6 - bl sub_8042DD4 - b _080412C2 -_080412BC: - movs r0, 0x28 - bl sub_803E46C -_080412C2: - adds r0, r4, 0 - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - bne _080412BC -_080412CE: - 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_8041168 - - thumb_func_start sub_80412E0 -sub_80412E0: - push {r4,lr} - lsls r0, 16 - lsrs r4, r0, 16 - lsls r1, 24 - lsrs r0, r1, 24 - adds r3, r4, 0 - cmp r3, 0x1F - bne _08041344 - cmp r0, 0x7 - bls _080412F6 - b _080413F6 -_080412F6: - lsls r0, 2 - ldr r1, _08041300 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08041300: .4byte _08041304 - .align 2, 0 -_08041304: - .4byte _080413F4 - .4byte _08041324 - .4byte _0804132A - .4byte _080413F4 - .4byte _08041334 - .4byte _0804133A - .4byte _080413F4 - .4byte _0804133A -_08041324: - movs r3, 0xCF - lsls r3, 1 - b _080413F6 -_0804132A: - ldr r3, _08041330 - b _080413F6 - .align 2, 0 -_08041330: .4byte 0x000001a1 -_08041334: - movs r3, 0xD0 - lsls r3, 1 - b _080413F6 -_0804133A: - ldr r3, _08041340 - b _080413F6 - .align 2, 0 -_08041340: .4byte 0x0000019f -_08041344: - cmp r2, 0 - beq _080413F6 - cmp r3, 0x97 - beq _080413B4 - cmp r3, 0x97 - bgt _0804136C - cmp r3, 0x3C - beq _0804139C - cmp r3, 0x3C - bgt _08041362 - cmp r3, 0x8 - beq _08041396 - cmp r3, 0x19 - beq _080413E4 - b _080413F4 -_08041362: - cmp r3, 0x4B - beq _080413A4 - cmp r3, 0x64 - beq _080413AA - b _080413F4 -_0804136C: - cmp r3, 0xCD - beq _080413CA - cmp r3, 0xCD - bgt _0804137E - cmp r3, 0x99 - beq _080413BA - cmp r3, 0x9C - beq _080413C4 - b _080413F4 -_0804137E: - cmp r3, 0xED - beq _080413DA - cmp r3, 0xED - bgt _0804138C - cmp r3, 0xE3 - beq _080413EA - b _080413F4 -_0804138C: - movs r0, 0xAE - lsls r0, 1 - cmp r3, r0 - beq _080413D4 - b _080413F4 -_08041396: - movs r3, 0xD1 - lsls r3, 1 - b _080413F6 -_0804139C: - ldr r3, _080413A0 - b _080413F6 - .align 2, 0 -_080413A0: .4byte 0x000001a3 -_080413A4: - movs r3, 0xD2 - lsls r3, 1 - b _080413F6 -_080413AA: - ldr r3, _080413B0 - b _080413F6 - .align 2, 0 -_080413B0: .4byte 0x000001a5 -_080413B4: - movs r3, 0xD3 - lsls r3, 1 - b _080413F6 -_080413BA: - ldr r3, _080413C0 - b _080413F6 - .align 2, 0 -_080413C0: .4byte 0x000001a7 -_080413C4: - movs r3, 0xD4 - lsls r3, 1 - b _080413F6 -_080413CA: - ldr r3, _080413D0 - b _080413F6 - .align 2, 0 -_080413D0: .4byte 0x000001a9 -_080413D4: - movs r3, 0xD5 - lsls r3, 1 - b _080413F6 -_080413DA: - ldr r3, _080413E0 - b _080413F6 - .align 2, 0 -_080413E0: .4byte 0x000001ab -_080413E4: - movs r3, 0xD6 - lsls r3, 1 - b _080413F6 -_080413EA: - ldr r3, _080413F0 - b _080413F6 - .align 2, 0 -_080413F0: .4byte 0x000001ad -_080413F4: - adds r3, r4, 0 -_080413F6: - adds r0, r3, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80412E0 - - thumb_func_start sub_8041400 -sub_8041400: - push {lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 24 - lsrs r1, 24 - bl sub_80412E0 - lsls r0, 16 - lsrs r0, 16 - bl sub_800ED20 - pop {r1} - bx r1 - thumb_func_end sub_8041400 - - thumb_func_start sub_804141C -sub_804141C: - push {lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 24 - lsrs r1, 24 - bl sub_80412E0 - lsls r0, 16 - lsrs r0, 16 - bl sub_800EC84 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_804141C - - thumb_func_start sub_804143C -sub_804143C: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrh r0, [r5, 0x2] - cmp r0, 0xED - bne _08041476 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080414A4 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _080414A4 - ldr r1, [r4, 0x70] - adds r0, r1, 0 - adds r0, 0x5C - ldrb r0, [r0] - cmp r0, 0xE - beq _080414A0 - adds r0, r1, 0 - adds r0, 0x5D - ldrb r0, [r0] - cmp r0, 0xE - beq _080414A0 - b _0804148A -_08041476: - cmp r0, 0x19 - beq _0804147E - cmp r0, 0xE3 - bne _0804148E -_0804147E: - adds r0, r4, 0 - bl sub_8070B28 - lsls r0, 24 - cmp r0, 0 - beq _080414A0 -_0804148A: - movs r0, 0 - b _080414B8 -_0804148E: - cmp r0, 0x97 - bne _080414A4 - adds r0, r4, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080414A4 -_080414A0: - movs r0, 0x1 - b _080414B8 -_080414A4: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80570AC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 -_080414B8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_804143C - - thumb_func_start sub_80414C0 -sub_80414C0: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldrh r0, [r4, 0x2] - cmp r0, 0x9C - bne _080414DC - adds r0, r5, 0 - bl sub_8045128 - bl sub_804AF20 - lsls r0, 24 - cmp r0, 0 - bne _080414F2 -_080414DC: - ldrh r0, [r4, 0x2] - cmp r0, 0x8 - bne _080414F6 - adds r0, r5, 0 - bl sub_8045128 - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _080414F6 -_080414F2: - movs r0, 0x1 - b _080414F8 -_080414F6: - movs r0, 0 -_080414F8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80414C0 - - thumb_func_start sub_8041500 -sub_8041500: - push {lr} - bl sub_800E7D0 - lsls r0, 24 - cmp r0, 0 - beq _08041518 - movs r0, 0x5C - bl sub_803E46C - movs r0, 0x5D - bl sub_8052740 -_08041518: - pop {r0} - bx r0 - thumb_func_end sub_8041500 - - thumb_func_start sub_804151C -sub_804151C: - push {r4-r6,lr} - sub sp, 0x8 - adds r6, r0, 0 - adds r5, r1, 0 - lsls r4, r2, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl sub_800DC9C - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x2 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_8041550 - add sp, 0x8 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_804151C - - thumb_func_start sub_8041550 -sub_8041550: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - adds r7, r0, 0 - mov r10, r1 - ldr r0, [sp, 0x54] - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x2C] - lsls r3, 24 - lsrs r3, 24 - mov r9, r3 - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0804159C - ldr r0, [r7, 0x70] - mov r8, r0 - adds r0, r7, 0 - bl sub_8042768 - lsls r0, 24 - cmp r0, 0 - beq _0804159C - cmp r6, 0 - bne _080415A2 - mov r0, r8 - adds r0, 0xFF - ldrb r0, [r0] - cmp r0, 0x2 - bne _080415A2 -_0804159C: - movs r0, 0x1 - negs r0, r0 - b _08041692 -_080415A2: - ldr r1, [sp, 0x50] - cmp r1, 0 - beq _080415B4 - movs r0, 0 - cmp r1, 0x2 - bne _080415B0 - movs r0, 0x1 -_080415B0: - bl sub_804178C -_080415B4: - add r6, sp, 0x28 - adds r1, r7, 0 - adds r1, 0x28 - adds r0, r6, 0 - mov r2, r9 - bl sub_800569C - movs r2, 0 - ldrsh r0, [r6, r2] - cmp r0, 0x63 - beq _080415F2 - ldrh r0, [r6, 0x2] - cmp r0, 0x63 - beq _080415F2 - movs r1, 0 - ldrsh r0, [r6, r1] - lsls r0, 8 - ldr r1, [r7, 0xC] - adds r4, r1, r0 - movs r2, 0x2 - ldrsh r0, [r6, r2] - lsls r0, 8 - ldr r2, [r7, 0x10] - adds r0, r2, r0 - movs r1, 0xBA - lsls r1, 1 - add r1, r8 - ldr r1, [r1] - subs r5, r0, r1 - adds r1, r2, 0 - b _08041600 -_080415F2: - ldr r4, [r7, 0xC] - movs r0, 0xBA - lsls r0, 1 - add r0, r8 - ldr r1, [r7, 0x10] - ldr r0, [r0] - subs r5, r1, r0 -_08041600: - cmp r1, 0 - bge _08041606 - adds r1, 0xFF -_08041606: - asrs r1, 8 - ldr r0, _0804166C - ldr r0, [r0] - ldr r2, _08041670 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - subs r1, r0 - lsrs r0, r1, 31 - adds r0, r1, r0 - asrs r1, r0, 1 - adds r1, 0x1 - mov r0, r10 - str r0, [sp] - movs r3, 0 - str r3, [sp, 0x4] - movs r6, 0x1 - negs r6, r6 - str r6, [sp, 0x8] - mov r2, sp - adds r0, r4, 0 - cmp r4, 0 - bge _08041636 - adds r0, 0xFF -_08041636: - asrs r0, 8 - strh r0, [r2, 0xC] - mov r2, sp - adds r0, r5, 0 - cmp r0, 0 - bge _08041644 - adds r0, 0xFF -_08041644: - asrs r0, 8 - strh r0, [r2, 0xE] - str r6, [sp, 0x14] - mov r0, sp - strh r3, [r0, 0x10] - strh r3, [r0, 0x12] - str r1, [sp, 0x18] - add r0, sp, 0x1C - bl sub_8004E8C - mov r0, sp - movs r1, 0 - bl sub_8041764 - adds r4, r0, 0 - ldr r1, [sp, 0x2C] - cmp r1, 0 - beq _08041690 - movs r5, 0 - b _0804167C - .align 2, 0 -_0804166C: .4byte gUnknown_203B418 -_08041670: .4byte 0x000181f2 -_08041674: - movs r0, 0x42 - bl sub_803E46C - adds r5, 0x1 -_0804167C: - cmp r5, 0x63 - bgt _0804168C - adds r0, r4, 0 - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - bne _08041674 -_0804168C: - movs r4, 0x1 - negs r4, r4 -_08041690: - adds r0, r4, 0 -_08041692: - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8041550 - - thumb_func_start sub_80416A4 -sub_80416A4: - push {r4,lr} - sub sp, 0x8 - lsls r2, 24 - lsrs r2, 24 - movs r3, 0 - ldrsh r4, [r0, r3] - lsls r3, r4, 1 - adds r3, r4 - lsls r3, 11 - movs r4, 0xC0 - lsls r4, 4 - adds r3, r4 - str r3, [sp] - movs r4, 0x2 - ldrsh r3, [r0, r4] - lsls r0, r3, 1 - adds r0, r3 - lsls r0, 11 - movs r3, 0x80 - lsls r3, 5 - adds r0, r3 - str r0, [sp, 0x4] - mov r0, sp - bl sub_80416E0 - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80416A4 - - thumb_func_start sub_80416E0 -sub_80416E0: - push {r4,r5,lr} - sub sp, 0x28 - adds r3, r0, 0 - lsls r2, 24 - lsrs r5, r2, 24 - str r1, [sp] - movs r2, 0 - str r2, [sp, 0x4] - movs r4, 0x1 - negs r4, r4 - str r4, [sp, 0x8] - mov r1, sp - ldr r0, [r3] - cmp r0, 0 - bge _08041700 - adds r0, 0xFF -_08041700: - asrs r0, 8 - strh r0, [r1, 0xC] - mov r1, sp - ldr r0, [r3, 0x4] - cmp r0, 0 - bge _0804170E - adds r0, 0xFF -_0804170E: - asrs r0, 8 - strh r0, [r1, 0xE] - str r4, [sp, 0x14] - mov r0, sp - strh r2, [r0, 0x10] - strh r2, [r0, 0x12] - ldr r0, _08041738 - str r0, [sp, 0x18] - add r0, sp, 0x1C - bl sub_8004E8C - mov r0, sp - movs r1, 0 - bl sub_8041764 - adds r4, r0, 0 - cmp r5, 0 - beq _08041758 - movs r5, 0 - b _08041744 - .align 2, 0 -_08041738: .4byte 0x0000ffff -_0804173C: - movs r0, 0x42 - bl sub_803E46C - adds r5, 0x1 -_08041744: - cmp r5, 0x63 - bgt _08041754 - adds r0, r4, 0 - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - bne _0804173C -_08041754: - movs r4, 0x1 - negs r4, r4 -_08041758: - adds r0, r4, 0 - add sp, 0x28 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80416E0 - - thumb_func_start sub_8041764 -sub_8041764: - push {r4,r5,lr} - adds r5, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - ldr r0, [r5] - bl sub_800EE5C - bl sub_800EF64 - cmp r4, 0 - beq _08041780 - movs r0, 0x42 - bl sub_803E46C -_08041780: - adds r0, r5, 0 - bl sub_800E890 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8041764 - - thumb_func_start sub_804178C -sub_804178C: - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - ldr r0, _080417B0 - ldr r0, [r0] - ldr r1, _080417B4 - adds r0, r1 - str r4, [r0] - adds r0, r5, 0 - bl sub_800E9FC - lsls r0, 24 - cmp r0, 0 - beq _080417E0 - ldr r6, _080417B8 - b _080417C4 - .align 2, 0 -_080417B0: .4byte gUnknown_203B418 -_080417B4: .4byte 0x00018204 -_080417B8: .4byte 0x000003e7 -_080417BC: - movs r0, 0x4A - bl sub_803E46C - adds r4, 0x1 -_080417C4: - cmp r4, r6 - bgt _080417D4 - adds r0, r5, 0 - bl sub_800E9FC - lsls r0, 24 - cmp r0, 0 - bne _080417BC -_080417D4: - movs r0, 0x4A - bl sub_803E46C - movs r0, 0x4A - bl sub_803E46C -_080417E0: - movs r0, 0xFA - lsls r0, 2 - cmp r4, r0 - beq _080417EC - cmp r5, 0 - beq _080417F0 -_080417EC: - bl sub_800DBBC -_080417F0: - ldr r2, _08041824 - ldr r0, [r2] - cmp r0, 0x1E - bgt _08041860 - ldr r1, _08041828 - ldrb r7, [r1] - movs r0, 0x1 - strb r0, [r1] - movs r4, 0 - adds r5, r2, 0 - ldr r6, _0804182C -_08041806: - ldr r0, [r5] - cmp r0, 0x1E - bgt _08041838 - adds r0, 0x4 - str r0, [r5] - ldr r1, _08041830 - ldrh r2, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, r6 - beq _0804183C - ldr r3, _08041834 - adds r0, r2, r3 - strh r0, [r1] - b _0804183C - .align 2, 0 -_08041824: .4byte gUnknown_202EDC8 -_08041828: .4byte gUnknown_203B40D -_0804182C: .4byte 0x00000808 -_08041830: .4byte gUnknown_2026E4E -_08041834: .4byte 0xfffffeff -_08041838: - movs r0, 0x1F - str r0, [r5] -_0804183C: - bl sub_803EA10 - movs r0, 0x4A - bl sub_803E46C - ldr r0, [r5] - cmp r0, 0x1F - beq _08041854 - adds r4, 0x1 - ldr r0, _0804186C - cmp r4, r0 - ble _08041806 -_08041854: - ldr r0, _08041870 - ldr r2, _08041874 - adds r1, r2, 0 - strh r1, [r0] - ldr r0, _08041878 - strb r7, [r0] -_08041860: - bl sub_8042E98 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804186C: .4byte 0x000003e7 -_08041870: .4byte gUnknown_2026E4E -_08041874: .4byte 0x00000808 -_08041878: .4byte gUnknown_203B40D - thumb_func_end sub_804178C - - thumb_func_start sub_804187C -sub_804187C: - ldr r0, [r0, 0x70] - movs r1, 0x80 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - bx lr - thumb_func_end sub_804187C - - thumb_func_start sub_8041888 -sub_8041888: - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 -_08041890: - ldr r0, _080418CC - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080418D0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080418C0 - ldr r1, [r4, 0x70] - cmp r6, 0 - beq _080418BA - movs r0, 0xA6 - lsls r0, 1 - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] -_080418BA: - adds r0, r4, 0 - bl sub_80418D4 -_080418C0: - adds r5, 0x1 - cmp r5, 0x13 - ble _08041890 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080418CC: .4byte gUnknown_203B418 -_080418D0: .4byte 0x000135cc - thumb_func_end sub_8041888 - - thumb_func_start sub_80418D4 -sub_80418D4: - push {r4,lr} - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080418E4 - b _08041A8C -_080418E4: - ldr r2, [r4, 0x70] - movs r3, 0 - movs r1, 0x1 - movs r4, 0x2 - ldrsh r0, [r2, r4] - cmp r0, 0xB9 - bne _08041902 - adds r0, r2, 0 - adds r0, 0xA9 - ldrb r0, [r0] - movs r1, 0x7F - eors r0, r1 - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 -_08041902: - cmp r1, 0 - beq _08041914 - ldr r1, _08041A94 - adds r0, r2, 0 - adds r0, 0xA8 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r3, [r0] -_08041914: - ldr r1, _08041A98 - adds r0, r2, 0 - adds r0, 0xAC - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - ldr r1, _08041A9C - adds r0, r2, 0 - adds r0, 0xB0 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - ldr r1, _08041AA0 - adds r0, r2, 0 - adds r0, 0xBC - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - ldr r1, _08041AA4 - adds r0, r2, 0 - adds r0, 0xC0 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - ldr r1, _08041AA8 - adds r0, r2, 0 - adds r0, 0xC4 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - ldr r1, _08041AAC - adds r0, r2, 0 - adds r0, 0xC8 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - ldr r1, _08041AB0 - adds r0, r2, 0 - adds r0, 0xD0 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - ldr r1, _08041AB4 - adds r0, r2, 0 - adds r0, 0xDC - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - ldr r1, _08041AB8 - adds r0, r2, 0 - adds r0, 0xE0 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - ldr r1, _08041ABC - adds r0, r2, 0 - adds r0, 0xE4 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - ldr r1, _08041AC0 - adds r0, r2, 0 - adds r0, 0xE8 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - ldr r1, _08041AC4 - adds r0, r2, 0 - adds r0, 0xEC - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r3, r0 - adds r0, r2, 0 - adds r0, 0xF4 - ldrb r0, [r0] - cmp r0, 0 - beq _080419E4 - movs r0, 0x80 - lsls r0, 17 - orrs r3, r0 -_080419E4: - adds r0, r2, 0 - adds r0, 0xF5 - ldrb r0, [r0] - cmp r0, 0 - beq _080419F4 - movs r0, 0x80 - lsls r0, 18 - orrs r3, r0 -_080419F4: - ldrb r0, [r2, 0x6] - cmp r0, 0 - bne _08041A14 - movs r0, 0x10 - ldrsh r1, [r2, r0] - cmp r1, 0 - bge _08041A04 - adds r1, 0x3 -_08041A04: - asrs r1, 2 - movs r4, 0xE - ldrsh r0, [r2, r4] - cmp r1, r0 - ble _08041A14 - movs r0, 0x80 - lsls r0, 6 - orrs r3, r0 -_08041A14: - ldr r0, _08041AC8 - ldr r0, [r0] - ldr r1, _08041ACC - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08041A36 - adds r0, r2, 0 - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08041A36 - movs r0, 0x80 - lsls r0, 6 - orrs r3, r0 -_08041A36: - ldr r0, [r2, 0x2C] - cmp r0, 0xFF - ble _08041A7E - ldr r0, [r2, 0x30] - cmp r0, 0xFF - ble _08041A7E - ldr r0, [r2, 0x34] - cmp r0, 0xFF - ble _08041A7E - ldr r0, [r2, 0x38] - cmp r0, 0xFF - ble _08041A7E - movs r4, 0x1C - ldrsh r0, [r2, r4] - cmp r0, 0x9 - ble _08041A7E - movs r1, 0x1E - ldrsh r0, [r2, r1] - cmp r0, 0x9 - ble _08041A7E - movs r4, 0x20 - ldrsh r0, [r2, r4] - cmp r0, 0x9 - ble _08041A7E - movs r1, 0x22 - ldrsh r0, [r2, r1] - cmp r0, 0x9 - ble _08041A7E - movs r4, 0x24 - ldrsh r0, [r2, r4] - cmp r0, 0x9 - ble _08041A7E - movs r1, 0x26 - ldrsh r0, [r2, r1] - cmp r0, 0x9 - bgt _08041A84 -_08041A7E: - movs r0, 0x80 - lsls r0, 20 - orrs r3, r0 -_08041A84: - movs r4, 0x80 - lsls r4, 2 - adds r0, r2, r4 - str r3, [r0] -_08041A8C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08041A94: .4byte gUnknown_80F669C -_08041A98: .4byte gUnknown_80F66B4 -_08041A9C: .4byte gUnknown_80F66C8 -_08041AA0: .4byte gUnknown_80F66E8 -_08041AA4: .4byte gUnknown_80F6708 -_08041AA8: .4byte gUnknown_80F673C -_08041AAC: .4byte gUnknown_80F6778 -_08041AB0: .4byte gUnknown_80F6788 -_08041AB4: .4byte gUnknown_80F6794 -_08041AB8: .4byte gUnknown_80F67A8 -_08041ABC: .4byte gUnknown_80F67B4 -_08041AC0: .4byte gUnknown_80F67C4 -_08041AC4: .4byte gUnknown_80F67D4 -_08041AC8: .4byte gUnknown_203B418 -_08041ACC: .4byte 0x00000676 - thumb_func_end sub_80418D4 - - thumb_func_start sub_8041AD0 -sub_8041AD0: - push {lr} - movs r1, 0xA2 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041AD0 - - thumb_func_start sub_8041AE0 -sub_8041AE0: - push {lr} - ldr r1, _08041AF0 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041AF0: .4byte 0x00000143 - thumb_func_end sub_8041AE0 - - thumb_func_start sub_8041AF4 -sub_8041AF4: - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x25 - movs r2, 0x1 - bl sub_804151C - ldr r1, _08041B10 - adds r0, r4, 0 - bl sub_80421C0 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08041B10: .4byte 0x00000197 - thumb_func_end sub_8041AF4 - - thumb_func_start nullsub_57 -nullsub_57: - bx lr - thumb_func_end nullsub_57 - - thumb_func_start sub_8041B18 -sub_8041B18: - push {lr} - ldr r1, _08041B28 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041B28: .4byte 0x00000141 - thumb_func_end sub_8041B18 - - thumb_func_start nullsub_58 -nullsub_58: - bx lr - thumb_func_end nullsub_58 - - thumb_func_start nullsub_59 -nullsub_59: - bx lr - thumb_func_end nullsub_59 - - thumb_func_start sub_8041B34 -sub_8041B34: - push {lr} - movs r1, 0x7 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041B34 - - thumb_func_start nullsub_60 -nullsub_60: - bx lr - thumb_func_end nullsub_60 - - thumb_func_start sub_8041B48 -sub_8041B48: - push {lr} - movs r1, 0x4 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041B48 - - thumb_func_start nullsub_61 -nullsub_61: - bx lr - thumb_func_end nullsub_61 - - thumb_func_start sub_8041B5C -sub_8041B5C: - push {lr} - ldr r1, _08041B6C - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041B6C: .4byte 0x00000171 - thumb_func_end sub_8041B5C - - thumb_func_start nullsub_62 -nullsub_62: - bx lr - thumb_func_end nullsub_62 - - thumb_func_start sub_8041B74 -sub_8041B74: - push {lr} - ldr r1, _08041B84 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041B84: .4byte 0x00000171 - thumb_func_end sub_8041B74 - - thumb_func_start nullsub_63 -nullsub_63: - bx lr - thumb_func_end nullsub_63 - - thumb_func_start nullsub_64 -nullsub_64: - bx lr - thumb_func_end nullsub_64 - - thumb_func_start sub_8041B90 -sub_8041B90: - push {lr} - movs r1, 0xD6 - lsls r1, 1 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041B90 - - thumb_func_start nullsub_65 -nullsub_65: - bx lr - thumb_func_end nullsub_65 - - thumb_func_start nullsub_66 -nullsub_66: - bx lr - thumb_func_end nullsub_66 - - thumb_func_start sub_8041BA8 -sub_8041BA8: - push {lr} - movs r1, 0x4 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041BA8 - - thumb_func_start nullsub_67 -nullsub_67: - bx lr - thumb_func_end nullsub_67 - - thumb_func_start sub_8041BBC -sub_8041BBC: - push {lr} - movs r1, 0xD4 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041BBC - - thumb_func_start nullsub_68 -nullsub_68: - bx lr - thumb_func_end nullsub_68 - - thumb_func_start sub_8041BD0 -sub_8041BD0: - push {lr} - lsls r1, 24 - cmp r1, 0 - beq _08041BDE - ldr r1, _08041BE4 - bl sub_80421C0 -_08041BDE: - pop {r0} - bx r0 - .align 2, 0 -_08041BE4: .4byte 0x000001a5 - thumb_func_end sub_8041BD0 - - thumb_func_start sub_8041BE8 -sub_8041BE8: - push {lr} - movs r1, 0xCB - lsls r1, 1 - bl sub_80421C0 - pop {r0} - bx r0 - thumb_func_end sub_8041BE8 - - thumb_func_start sub_8041BF8 -sub_8041BF8: - push {lr} - movs r1, 0xA - movs r2, 0x8 - bl sub_806CDD4 - pop {r0} - bx r0 - thumb_func_end sub_8041BF8 - - thumb_func_start sub_8041C08 -sub_8041C08: - push {lr} - ldr r1, _08041C18 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041C18: .4byte 0x000001a7 - thumb_func_end sub_8041C08 - - thumb_func_start sub_8041C1C -sub_8041C1C: - push {lr} - ldr r1, _08041C2C - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041C2C: .4byte 0x000001a7 - thumb_func_end sub_8041C1C - - thumb_func_start nullsub_69 -nullsub_69: - bx lr - thumb_func_end nullsub_69 - - thumb_func_start sub_8041C34 -sub_8041C34: - push {lr} - movs r1, 0x4C - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041C34 - - thumb_func_start nullsub_70 -nullsub_70: - bx lr - thumb_func_end nullsub_70 - - thumb_func_start nullsub_71 -nullsub_71: - bx lr - thumb_func_end nullsub_71 - - thumb_func_start sub_8041C4C -sub_8041C4C: - push {lr} - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041C4C - - thumb_func_start sub_8041C58 -sub_8041C58: - push {lr} - ldr r1, _08041C68 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041C68: .4byte 0x000001a9 - thumb_func_end sub_8041C58 - - thumb_func_start sub_8041C6C -sub_8041C6C: - push {lr} - movs r1, 0x9D - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041C6C - - thumb_func_start sub_8041C7C -sub_8041C7C: - push {lr} - movs r1, 0x9D - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041C7C - - thumb_func_start nullsub_72 -nullsub_72: - bx lr - thumb_func_end nullsub_72 - - thumb_func_start nullsub_73 -nullsub_73: - bx lr - thumb_func_end nullsub_73 - - thumb_func_start sub_8041C94 -sub_8041C94: - push {lr} - ldr r1, _08041CA4 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041CA4: .4byte 0x00000171 - thumb_func_end sub_8041C94 - - thumb_func_start sub_8041CA8 -sub_8041CA8: - push {lr} - movs r1, 0x7 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041CA8 - - thumb_func_start sub_8041CB8 -sub_8041CB8: - push {lr} - ldr r1, _08041CC8 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041CC8: .4byte 0x0000018b - thumb_func_end sub_8041CB8 - - thumb_func_start sub_8041CCC -sub_8041CCC: - push {lr} - movs r1, 0xC5 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041CCC - - thumb_func_start sub_8041CDC -sub_8041CDC: - push {lr} - movs r1, 0x5 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041CDC - - thumb_func_start sub_8041CEC -sub_8041CEC: - push {lr} - ldr r1, _08041CF8 - bl sub_80421C0 - pop {r0} - bx r0 - .align 2, 0 -_08041CF8: .4byte 0x0000019d - thumb_func_end sub_8041CEC - - thumb_func_start nullsub_74 -nullsub_74: - bx lr - thumb_func_end nullsub_74 - - thumb_func_start sub_8041D00 -sub_8041D00: - push {r4,lr} - adds r4, r0, 0 - adds r0, r1, 0 - movs r1, 0x2F - movs r2, 0x1 - bl sub_804151C - adds r0, r4, 0 - movs r1, 0x30 - movs r2, 0x1 - bl sub_804151C - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8041D00 - - thumb_func_start nullsub_75 -nullsub_75: - bx lr - thumb_func_end nullsub_75 - - thumb_func_start nullsub_76 -nullsub_76: - bx lr - thumb_func_end nullsub_76 - - thumb_func_start nullsub_77 -nullsub_77: - bx lr - thumb_func_end nullsub_77 - - thumb_func_start nullsub_78 -nullsub_78: - bx lr - thumb_func_end nullsub_78 - - thumb_func_start nullsub_79 -nullsub_79: - bx lr - thumb_func_end nullsub_79 - - thumb_func_start nullsub_80 -nullsub_80: - bx lr - thumb_func_end nullsub_80 - - thumb_func_start sub_8041D38 -sub_8041D38: - push {lr} - movs r1, 0x21 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041D38 - - thumb_func_start sub_8041D48 -sub_8041D48: - push {lr} - ldr r1, _08041D54 - bl sub_80421C0 - pop {r0} - bx r0 - .align 2, 0 -_08041D54: .4byte 0x00000191 - thumb_func_end sub_8041D48 - - thumb_func_start nullsub_81 -nullsub_81: - bx lr - thumb_func_end nullsub_81 - - thumb_func_start sub_8041D5C -sub_8041D5C: - push {r4,lr} - adds r4, r0, 0 - bl sub_8042768 - lsls r0, 24 - cmp r0, 0 - beq _08041D7E - ldr r0, [r4, 0x70] - movs r1, 0x89 - lsls r1, 1 - adds r0, r1 - ldrb r0, [r0] - adds r1, r4, 0 - movs r2, 0x1 - movs r3, 0xB - bl sub_803ED30 -_08041D7E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8041D5C - - thumb_func_start sub_8041D84 -sub_8041D84: - push {lr} - ldr r1, _08041D90 - bl sub_80421C0 - pop {r0} - bx r0 - .align 2, 0 -_08041D90: .4byte 0x0000019f - thumb_func_end sub_8041D84 - - thumb_func_start nullsub_82 -nullsub_82: - bx lr - thumb_func_end nullsub_82 - - thumb_func_start nullsub_83 -nullsub_83: - bx lr - thumb_func_end nullsub_83 - - thumb_func_start sub_8041D9C -sub_8041D9C: - push {lr} - ldr r1, _08041DAC - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041DAC: .4byte 0x00000131 - thumb_func_end sub_8041D9C - - thumb_func_start sub_8041DB0 -sub_8041DB0: - push {lr} - movs r1, 0x30 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041DB0 - - thumb_func_start nullsub_84 -nullsub_84: - bx lr - thumb_func_end nullsub_84 - - thumb_func_start nullsub_85 -nullsub_85: - bx lr - thumb_func_end nullsub_85 - - thumb_func_start nullsub_204 -nullsub_204: - bx lr - thumb_func_end nullsub_204 - - thumb_func_start nullsub_86 -nullsub_86: - bx lr - thumb_func_end nullsub_86 - - thumb_func_start nullsub_87 -nullsub_87: - bx lr - thumb_func_end nullsub_87 - - thumb_func_start nullsub_88 -nullsub_88: - bx lr - thumb_func_end nullsub_88 - - thumb_func_start sub_8041DD8 -sub_8041DD8: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r1, 16 - asrs r5, r1, 16 - movs r1, 0xE - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _08041DF8 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_804151C - b _08041E02 -_08041DF8: - adds r0, r4, 0 - movs r1, 0xE - movs r2, 0x1 - bl sub_804151C -_08041E02: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8041DD8 - - thumb_func_start nullsub_89 -nullsub_89: - bx lr - thumb_func_end nullsub_89 - - thumb_func_start sub_8041E0C -sub_8041E0C: - push {lr} - movs r1, 0x41 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041E0C - - thumb_func_start sub_8041E1C -sub_8041E1C: - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x8F - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - movs r1, 0xCE - lsls r1, 1 - adds r0, r4, 0 - bl sub_80421C0 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8041E1C - - thumb_func_start sub_8041E3C -sub_8041E3C: - push {lr} - movs r1, 0xD7 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041E3C - - thumb_func_start sub_8041E4C -sub_8041E4C: - push {lr} - ldr r1, _08041E5C - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041E5C: .4byte 0x000001b1 - thumb_func_end sub_8041E4C - - thumb_func_start sub_8041E60 -sub_8041E60: - push {lr} - ldr r1, _08041E70 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041E70: .4byte 0x000001a9 - thumb_func_end sub_8041E60 - - thumb_func_start sub_8041E74 -sub_8041E74: - push {lr} - movs r1, 0xC9 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041E74 - - thumb_func_start sub_8041E84 -sub_8041E84: - push {lr} - movs r1, 0xC7 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041E84 - - thumb_func_start sub_8041E94 -sub_8041E94: - push {lr} - movs r1, 0xC8 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041E94 - - thumb_func_start sub_8041EA4 -sub_8041EA4: - push {lr} - movs r1, 0x15 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041EA4 - - thumb_func_start sub_8041EB4 -sub_8041EB4: - push {lr} - ldr r1, _08041EC4 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08041EC4: .4byte 0x00000171 - thumb_func_end sub_8041EB4 - - thumb_func_start sub_8041EC8 -sub_8041EC8: - push {lr} - ldr r1, _08041ED4 - bl sub_80421C0 - pop {r0} - bx r0 - .align 2, 0 -_08041ED4: .4byte 0x00000197 - thumb_func_end sub_8041EC8 - - thumb_func_start sub_8041ED8 -sub_8041ED8: - push {lr} - ldr r1, _08041EE4 - bl sub_80421C0 - pop {r0} - bx r0 - .align 2, 0 -_08041EE4: .4byte 0x00000197 - thumb_func_end sub_8041ED8 - - thumb_func_start sub_8041EE8 -sub_8041EE8: - push {lr} - movs r1, 0x15 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041EE8 - - thumb_func_start sub_8041EF8 -sub_8041EF8: - push {lr} - movs r1, 0xF - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8041EF8 - - thumb_func_start sub_8041F08 -sub_8041F08: - push {lr} - sub sp, 0x8 - movs r1, 0x2 - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - movs r1, 0x15 - movs r2, 0x1 - movs r3, 0x3 - bl sub_8041550 - add sp, 0x8 - pop {r0} - bx r0 - thumb_func_end sub_8041F08 - - thumb_func_start nullsub_90 -nullsub_90: - bx lr - thumb_func_end nullsub_90 - - thumb_func_start sub_8041F28 -sub_8041F28: - push {lr} - cmp r1, 0 - bne _08041F3A - movs r1, 0xCA - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - b _08041F42 -_08041F3A: - ldr r1, _08041F48 - movs r2, 0x1 - bl sub_804151C -_08041F42: - pop {r0} - bx r0 - .align 2, 0 -_08041F48: .4byte 0x00000193 - thumb_func_end sub_8041F28 - - thumb_func_start sub_8041F4C -sub_8041F4C: - push {lr} - cmp r1, 0 - bne _08041F60 - ldr r1, _08041F5C - movs r2, 0x1 - bl sub_804151C - b _08041F68 - .align 2, 0 -_08041F5C: .4byte 0x0000018f -_08041F60: - ldr r1, _08041F6C - movs r2, 0x1 - bl sub_804151C -_08041F68: - pop {r0} - bx r0 - .align 2, 0 -_08041F6C: .4byte 0x00000191 - thumb_func_end sub_8041F4C - - thumb_func_start sub_8041F70 -sub_8041F70: - push {lr} - cmp r1, 0 - bne _08041F84 - ldr r1, _08041F80 - movs r2, 0x1 - bl sub_804151C - b _08041F8E - .align 2, 0 -_08041F80: .4byte 0x000001a9 -_08041F84: - movs r1, 0xC9 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C -_08041F8E: - pop {r0} - bx r0 - thumb_func_end sub_8041F70 - - thumb_func_start sub_8041F94 -sub_8041F94: - push {lr} - cmp r1, 0 - bne _08041FA6 - movs r1, 0xC7 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - b _08041FB0 -_08041FA6: - movs r1, 0xC8 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C -_08041FB0: - pop {r0} - bx r0 - thumb_func_end sub_8041F94 - - thumb_func_start sub_8041FB4 -sub_8041FB4: - push {lr} - cmp r1, 0 - bne _08041FC8 - ldr r1, _08041FC4 - movs r2, 0x1 - bl sub_804151C - b _08041FD2 - .align 2, 0 -_08041FC4: .4byte 0x000001a9 -_08041FC8: - movs r1, 0xC9 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C -_08041FD2: - pop {r0} - bx r0 - thumb_func_end sub_8041FB4 - - thumb_func_start sub_8041FD8 -sub_8041FD8: - push {lr} - cmp r1, 0 - bne _08041FEA - movs r1, 0xCA - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - b _08041FF2 -_08041FEA: - ldr r1, _08041FF8 - movs r2, 0x1 - bl sub_804151C -_08041FF2: - pop {r0} - bx r0 - .align 2, 0 -_08041FF8: .4byte 0x00000193 - thumb_func_end sub_8041FD8 - - thumb_func_start sub_8041FFC -sub_8041FFC: - push {lr} - cmp r1, 0 - bne _0804200E - movs r1, 0xC7 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - b _08042018 -_0804200E: - movs r1, 0xC8 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C -_08042018: - pop {r0} - bx r0 - thumb_func_end sub_8041FFC - - thumb_func_start sub_804201C -sub_804201C: - push {lr} - cmp r1, 0 - bne _08042030 - ldr r1, _0804202C - movs r2, 0x1 - bl sub_804151C - b _08042038 - .align 2, 0 -_0804202C: .4byte 0x0000018f -_08042030: - ldr r1, _0804203C - movs r2, 0x1 - bl sub_804151C -_08042038: - pop {r0} - bx r0 - .align 2, 0 -_0804203C: .4byte 0x00000191 - thumb_func_end sub_804201C - - thumb_func_start sub_8042040 -sub_8042040: - push {lr} - cmp r1, 0 - bne _08042052 - movs r1, 0xC6 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - b _0804205A -_08042052: - movs r1, 0xD - movs r2, 0x1 - bl sub_804151C -_0804205A: - pop {r0} - bx r0 - thumb_func_end sub_8042040 - - thumb_func_start sub_8042060 -sub_8042060: - push {lr} - cmp r1, 0 - bne _08042074 - ldr r1, _08042070 - movs r2, 0x1 - bl sub_804151C - b _0804207C - .align 2, 0 -_08042070: .4byte 0x0000018d -_08042074: - movs r1, 0xE - movs r2, 0x1 - bl sub_804151C -_0804207C: - pop {r0} - bx r0 - thumb_func_end sub_8042060 - - thumb_func_start sub_8042080 -sub_8042080: - push {lr} - cmp r1, 0 - bne _08042092 - movs r1, 0xC6 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - b _0804209A -_08042092: - movs r1, 0xD - movs r2, 0x1 - bl sub_804151C -_0804209A: - pop {r0} - bx r0 - thumb_func_end sub_8042080 - - thumb_func_start sub_80420A0 -sub_80420A0: - push {lr} - ldr r1, _080420B0 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_080420B0: .4byte 0x00000143 - thumb_func_end sub_80420A0 - - thumb_func_start nullsub_91 -nullsub_91: - bx lr - thumb_func_end nullsub_91 - - thumb_func_start sub_80420B8 -sub_80420B8: - push {lr} - movs r1, 0x19 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_80420B8 - - thumb_func_start sub_80420C8 -sub_80420C8: - push {lr} - sub sp, 0x8 - movs r1, 0x2 - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - movs r1, 0x15 - movs r2, 0x1 - movs r3, 0x3 - bl sub_8041550 - add sp, 0x8 - pop {r0} - bx r0 - thumb_func_end sub_80420C8 - - thumb_func_start nullsub_92 -nullsub_92: - bx lr - thumb_func_end nullsub_92 - - thumb_func_start sub_80420E8 -sub_80420E8: - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r1, [r1, 0x8] - ldr r0, _0804211C - ldr r0, [r0] - ldr r2, _08042120 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08042106 - adds r0, r1, 0 - bl sub_806F62C - adds r1, r0, 0 -_08042106: - cmp r1, 0x1 - beq _08042124 - cmp r1, 0x1 - bcc _08042116 - cmp r1, 0x2 - beq _08042128 - cmp r1, 0x3 - beq _0804212C -_08042116: - movs r1, 0x8 - b _0804212E - .align 2, 0 -_0804211C: .4byte gUnknown_203B418 -_08042120: .4byte 0x0000016d -_08042124: - movs r1, 0x9 - b _0804212E -_08042128: - movs r1, 0xA - b _0804212E -_0804212C: - movs r1, 0xB -_0804212E: - movs r0, 0 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x3 - bl sub_8041550 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80420E8 - - thumb_func_start sub_8042148 -sub_8042148: - push {r4,lr} - adds r4, r0, 0 - ldr r1, _08042164 - bl sub_80421C0 - movs r1, 0x9F - lsls r1, 1 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_804151C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08042164: .4byte 0x000001a7 - thumb_func_end sub_8042148 - - thumb_func_start nullsub_93 -nullsub_93: - bx lr - thumb_func_end nullsub_93 - - thumb_func_start sub_804216C -sub_804216C: - push {lr} - adds r0, r1, 0 - cmp r2, 0x1 - bne _0804217E - movs r1, 0xF8 - movs r2, 0x1 - bl sub_804151C - b _08042186 -_0804217E: - movs r1, 0xF9 - movs r2, 0x1 - bl sub_804151C -_08042186: - pop {r0} - bx r0 - thumb_func_end sub_804216C - - thumb_func_start sub_804218C -sub_804218C: - push {lr} - adds r0, r1, 0 - movs r1, 0x2A - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_804218C - - thumb_func_start sub_804219C -sub_804219C: - push {lr} - movs r1, 0x90 - movs r2, 0x1 - bl sub_80416E0 - pop {r0} - bx r0 - thumb_func_end sub_804219C - - thumb_func_start sub_80421AC -sub_80421AC: - push {lr} - adds r0, r1, 0 - ldr r1, _080421BC - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_080421BC: .4byte 0x00000167 - thumb_func_end sub_80421AC - - thumb_func_start sub_80421C0 -sub_80421C0: - push {r4,lr} - adds r2, r0, 0 - lsls r1, 16 - lsrs r0, r1, 16 - adds r4, r0, 0 - cmp r2, 0 - bne _080421D4 - bl sub_8083E38 - b _080421E6 -_080421D4: - adds r0, r2, 0 - bl sub_8042768 - lsls r0, 24 - cmp r0, 0 - beq _080421E6 - adds r0, r4, 0 - bl sub_8083E38 -_080421E6: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80421C0 - - thumb_func_start sub_80421EC -sub_80421EC: - push {r4,lr} - lsls r1, 16 - lsrs r4, r1, 16 - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - beq _08042202 - adds r0, r4, 0 - bl sub_8083E38 -_08042202: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80421EC - - thumb_func_start sub_8042208 -sub_8042208: - push {lr} - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0 - bne _0804221C - movs r0, 0xA9 - lsls r0, 1 - bl sub_8083E38 - b _08042234 -_0804221C: - cmp r1, 0x1 - bne _0804222C - ldr r0, _08042228 - bl sub_8083E38 - b _08042234 - .align 2, 0 -_08042228: .4byte 0x00000151 -_0804222C: - movs r0, 0xA8 - lsls r0, 1 - bl sub_8083E38 -_08042234: - pop {r0} - bx r0 - thumb_func_end sub_8042208 - - thumb_func_start sub_8042238 -sub_8042238: - push {lr} - ldr r0, [r1, 0x70] - ldrb r0, [r0, 0x6] - cmp r0, 0 - beq _08042250 - ldr r0, _0804224C - bl sub_8083E38 - b _08042258 - .align 2, 0 -_0804224C: .4byte 0x00000157 -_08042250: - movs r0, 0xAB - lsls r0, 1 - bl sub_8083E38 -_08042258: - pop {r0} - bx r0 - thumb_func_end sub_8042238 - - thumb_func_start sub_804225C -sub_804225C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - mov r8, r0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r4, r2, 24 - adds r7, r4, 0 - cmp r4, 0x11 - bne _08042274 - b _08042384 -_08042274: - adds r0, r5, 0 - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - bne _08042282 - b _08042384 -_08042282: - adds r0, r4, 0 - bl sub_800EF28 - bl sub_800EF64 - movs r0, 0x4 - movs r1, 0x42 - bl sub_803E708 - movs r0, 0 - ldrsh r1, [r5, r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r1, 0xC0 - lsls r1, 4 - adds r0, r1 - cmp r0, 0 - bge _080422AA - adds r0, 0xFF -_080422AA: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _080422FC - ldr r2, [sp] - ands r2, r1 - orrs r2, r0 - str r2, [sp] - movs r0, 0x2 - ldrsh r1, [r5, r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r1, 0x80 - lsls r1, 5 - adds r0, r1 - cmp r0, 0 - bge _080422CE - adds r0, 0xFF -_080422CE: - lsls r0, 8 - lsrs r0, 16 - lsls r0, 16 - ldr r1, _08042300 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - adds r0, r4, 0 - mov r1, sp - bl sub_800E448 - adds r6, r0, 0 - cmp r4, 0x4 - bne _08042308 - ldr r1, _08042304 - movs r0, 0 - bl sub_80421C0 - movs r0, 0x28 - movs r1, 0x33 - bl sub_803E708 - b _08042360 - .align 2, 0 -_080422FC: .4byte 0xffff0000 -_08042300: .4byte 0x0000ffff -_08042304: .4byte 0x00000193 -_08042308: - cmp r7, 0x8 - bne _08042358 - mov r0, r8 - ldr r7, [r0, 0x70] - adds r0, r7, 0 - adds r0, 0x46 - ldrb r4, [r0] - movs r5, 0 - b _0804231C -_0804231A: - adds r5, 0x2 -_0804231C: - ldr r0, _08042354 - cmp r5, r0 - bgt _08042346 - subs r4, 0x1 - movs r0, 0x7 - ands r4, r0 - mov r0, r8 - movs r1, 0 - adds r2, r4, 0 - bl sub_806CDD4 - movs r0, 0x2 - movs r1, 0x33 - bl sub_803E708 - adds r0, r6, 0 - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - bne _0804231A -_08042346: - movs r0, 0x7 - ands r4, r0 - adds r0, r7, 0 - adds r0, 0x46 - strb r4, [r0] - b _08042360 - .align 2, 0 -_08042354: .4byte 0x000003e7 -_08042358: - movs r0, 0x28 - movs r1, 0x33 - bl sub_803E708 -_08042360: - movs r5, 0 - ldr r4, _08042368 - b _0804236E - .align 2, 0 -_08042368: .4byte 0x000003e7 -_0804236C: - adds r5, 0x1 -_0804236E: - cmp r5, r4 - bgt _08042384 - movs r0, 0x42 - bl sub_803E46C - adds r0, r6, 0 - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - bne _0804236C -_08042384: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804225C - - thumb_func_start sub_8042390 -sub_8042390: - push {r4-r6,lr} - sub sp, 0x18 - adds r5, r0, 0 - adds r4, r1, 0 - bl sub_8042768 - lsls r0, 24 - cmp r0, 0 - beq _08042454 - ldrb r1, [r4] - movs r0, 0x8 - ands r0, r1 - movs r6, 0 - cmp r0, 0 - bne _080423B0 - ldrb r6, [r4, 0x2] -_080423B0: - adds r0, r6, 0 - movs r1, 0 - bl sub_800EF40 - bl sub_800EF64 - movs r0, 0x4 - movs r1, 0x42 - bl sub_803E708 - ldr r0, [r5, 0xC] - cmp r0, 0 - bge _080423CC - adds r0, 0xFF -_080423CC: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _08042428 - ldr r2, [sp, 0x14] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x14] - ldr r0, [r5, 0x10] - cmp r0, 0 - bge _080423E2 - adds r0, 0xFF -_080423E2: - lsls r0, 8 - lsrs r0, 16 - lsls r0, 16 - ldr r4, _0804242C - ands r4, r2 - orrs r4, r0 - str r4, [sp, 0x14] - asrs r4, 16 - ldr r0, _08042430 - ldr r0, [r0] - ldr r1, _08042434 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - subs r4, r0 - lsrs r0, r4, 31 - adds r4, r0 - asrs r4, 1 - adds r4, 0x1 - adds r1, r5, 0 - adds r1, 0x28 - add r0, sp, 0x4 - bl sub_8005700 - add r1, sp, 0x14 - str r4, [sp] - adds r0, r6, 0 - add r2, sp, 0x4 - movs r3, 0 - bl sub_800E49C - adds r5, r0, 0 - movs r4, 0 - ldr r6, _08042438 - b _0804243E - .align 2, 0 -_08042428: .4byte 0xffff0000 -_0804242C: .4byte 0x0000ffff -_08042430: .4byte gUnknown_203B418 -_08042434: .4byte 0x000181f2 -_08042438: .4byte 0x000003e7 -_0804243C: - adds r4, 0x1 -_0804243E: - cmp r4, r6 - bgt _08042454 - movs r0, 0x42 - bl sub_803E46C - adds r0, r5, 0 - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - bne _0804243C -_08042454: - add sp, 0x18 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8042390 - - thumb_func_start sub_804245C -sub_804245C: - push {r4-r6,lr} - sub sp, 0x18 - adds r5, r0, 0 - adds r4, r1, 0 - bl sub_8042768 - lsls r0, 24 - cmp r0, 0 - beq _08042518 - ldrb r1, [r4] - movs r0, 0x8 - ands r0, r1 - movs r6, 0 - cmp r0, 0 - bne _0804247C - ldrb r6, [r4, 0x2] -_0804247C: - bl sub_800EF64 - movs r0, 0x4 - movs r1, 0x42 - bl sub_803E708 - ldr r0, [r5, 0xC] - cmp r0, 0 - bge _08042490 - adds r0, 0xFF -_08042490: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _080424EC - ldr r2, [sp, 0x14] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x14] - ldr r0, [r5, 0x10] - cmp r0, 0 - bge _080424A6 - adds r0, 0xFF -_080424A6: - lsls r0, 8 - lsrs r0, 16 - lsls r0, 16 - ldr r4, _080424F0 - ands r4, r2 - orrs r4, r0 - str r4, [sp, 0x14] - asrs r4, 16 - ldr r0, _080424F4 - ldr r0, [r0] - ldr r1, _080424F8 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - subs r4, r0 - lsrs r0, r4, 31 - adds r4, r0 - asrs r4, 1 - adds r4, 0x1 - adds r1, r5, 0 - adds r1, 0x28 - add r0, sp, 0x4 - bl sub_8005700 - add r1, sp, 0x14 - str r4, [sp] - adds r0, r6, 0 - add r2, sp, 0x4 - movs r3, 0x1 - bl sub_800E49C - adds r5, r0, 0 - movs r4, 0 - ldr r6, _080424FC - b _08042502 - .align 2, 0 -_080424EC: .4byte 0xffff0000 -_080424F0: .4byte 0x0000ffff -_080424F4: .4byte gUnknown_203B418 -_080424F8: .4byte 0x000181f2 -_080424FC: .4byte 0x000003e7 -_08042500: - adds r4, 0x1 -_08042502: - cmp r4, r6 - bgt _08042518 - movs r0, 0x42 - bl sub_803E46C - adds r0, r5, 0 - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - bne _08042500 -_08042518: - add sp, 0x18 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_804245C - - thumb_func_start sub_8042520 -sub_8042520: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x3C - adds r4, r0, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - bne _0804253A - b _08042664 -_0804253A: - ldr r0, [r4, 0x70] - adds r0, 0x46 - ldrb r5, [r0] - ldr r0, [r4, 0xC] - cmp r0, 0 - bge _08042548 - adds r0, 0xFF -_08042548: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _0804264C - ldr r2, [sp, 0x2C] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x2C] - ldr r0, [r4, 0x10] - cmp r0, 0 - bge _0804255E - adds r0, 0xFF -_0804255E: - lsls r0, 8 - lsrs r0, 16 - lsls r0, 16 - ldr r1, _08042650 - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x2C] - asrs r1, 16 - ldr r0, _08042654 - ldr r0, [r0] - ldr r2, _08042658 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - subs r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r7, r1, 1 - ldr r0, _0804265C - str r0, [sp, 0x4] - movs r2, 0 - str r2, [sp, 0x8] - str r5, [sp, 0xC] - add r1, sp, 0x4 - add r4, sp, 0x2C - ldrh r0, [r4] - strh r0, [r1, 0xC] - ldr r0, [sp, 0x2C] - asrs r0, 16 - strh r0, [r1, 0xE] - adds r0, r1, 0 - strh r2, [r0, 0x10] - strh r2, [r0, 0x12] - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0x18] - str r7, [sp, 0x1C] - add r0, sp, 0x20 - bl sub_8004E8C - add r0, sp, 0x4 - movs r1, 0 - bl sub_8041764 - adds r6, r0, 0 - mov r10, r4 - lsls r1, r5, 2 - mov r0, sp - adds r0, 0x30 - str r0, [sp, 0x38] - ldr r0, _08042660 - adds r5, r1, r0 - movs r1, 0x5 - mov r8, r1 - mov r9, r10 -_080425CC: - movs r0, 0 - str r0, [sp] - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0 - adds r3, r7, 0 - bl sub_800E8AC - movs r0, 0x42 - bl sub_803E46C - movs r2, 0 - ldrsh r0, [r5, r2] - lsls r0, 2 - mov r1, r9 - ldrh r1, [r1] - adds r0, r1 - mov r2, r9 - strh r0, [r2] - movs r0, 0x2 - ldrsh r1, [r5, r0] - lsls r1, 2 - ldrh r0, [r4, 0x2] - adds r0, r1 - strh r0, [r4, 0x2] - movs r2, 0x2 - ldrsh r1, [r4, r2] - ldr r0, _08042654 - ldr r0, [r0] - ldr r2, _08042658 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - subs r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r7, r1, 1 - movs r0, 0x1 - negs r0, r0 - add r8, r0 - mov r1, r8 - cmp r1, 0 - bge _080425CC - bl sub_800DBBC - mov r2, r10 - movs r1, 0 - ldrsh r0, [r2, r1] - lsls r0, 8 - str r0, [sp, 0x30] - add r0, sp, 0x2C - movs r2, 0x2 - ldrsh r0, [r0, r2] - lsls r0, 8 - ldr r1, [sp, 0x38] - str r0, [r1, 0x4] - movs r1, 0xD0 - lsls r1, 1 - ldr r0, [sp, 0x38] - movs r2, 0x1 - bl sub_80416E0 - adds r6, r0, 0 - b _08042668 - .align 2, 0 -_0804264C: .4byte 0xffff0000 -_08042650: .4byte 0x0000ffff -_08042654: .4byte gUnknown_203B418 -_08042658: .4byte 0x000181f2 -_0804265C: .4byte 0x00000165 -_08042660: .4byte gUnknown_80F4448 -_08042664: - movs r6, 0x1 - negs r6, r6 -_08042668: - adds r0, r6, 0 - add sp, 0x3C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8042520 - - thumb_func_start sub_804267C -sub_804267C: - push {r4,lr} - ldr r4, _080426B8 - bl sub_8043D10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08042694 - cmp r0, 0 - blt _08042694 - cmp r0, 0x2 - ble _080426AC -_08042694: - ldr r0, _080426BC - ldr r0, [r0] - ldr r1, _080426C0 - adds r0, r1 - ldrb r0, [r0] - bl sub_80900C0 - lsls r0, 24 - ldr r4, _080426C4 - cmp r0, 0 - beq _080426AC - subs r4, 0x1 -_080426AC: - adds r0, r4, 0 - bl sub_8083E38 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080426B8: .4byte 0x000003e5 -_080426BC: .4byte gUnknown_203B418 -_080426C0: .4byte 0x00000644 -_080426C4: .4byte 0x00000155 - thumb_func_end sub_804267C - - thumb_func_start sub_80426C8 -sub_80426C8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - cmp r4, 0x3 - bne _080426D8 - movs r0, 0 - bl sub_8083E88 -_080426D8: - cmp r5, 0x4 - beq _080426F0 - ldr r0, _080426EC - lsls r1, r4, 1 - adds r1, r0 - ldrh r0, [r1] - bl sub_8083E38 - b _080426FC - .align 2, 0 -_080426EC: .4byte gUnknown_80F67DC -_080426F0: - ldr r0, _08042708 - lsls r1, r4, 1 - adds r1, r0 - ldrh r0, [r1] - bl sub_8083E38 -_080426FC: - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x80 - bl sub_8042B34 - b _08042712 - .align 2, 0 -_08042708: .4byte gUnknown_80F67E4 -_0804270C: - movs r0, 0x46 - bl sub_803E46C -_08042712: - bl sub_8042CC0 - lsls r0, 24 - cmp r0, 0 - bne _0804270C - bl sub_8042D7C - bl sub_8040238 - movs r0, 0x1 - bl sub_8052210 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80426C8 - - thumb_func_start sub_8042730 -sub_8042730: - push {r4,r5,lr} - adds r4, r0, 0 - movs r1, 0x8 - movs r2, 0x8 - bl sub_806CDD4 - movs r5, 0 - b _08042742 -_08042740: - adds r5, 0x1 -_08042742: - cmp r5, 0x63 - bgt _08042760 - movs r0, 0x51 - bl sub_803E46C - ldr r0, [r4, 0x40] - movs r1, 0x3 - ands r0, r1 - cmp r0, 0 - bne _08042760 - adds r0, r4, 0 - adds r0, 0x6B - ldrb r0, [r0] - cmp r0, 0x8 - beq _08042740 -_08042760: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8042730 - - thumb_func_start sub_8042768 -sub_8042768: - push {lr} - adds r1, r0, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - bne _08042778 -_08042774: - movs r0, 0 - b _080427A6 -_08042778: - ldr r0, _08042794 - ldr r2, [r0] - ldr r3, _08042798 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0804279C - subs r3, 0x12 - adds r0, r2, r3 - ldr r0, [r0] - cmp r0, r1 - bne _08042774 - movs r0, 0x1 - b _080427A6 - .align 2, 0 -_08042794: .4byte gUnknown_203B418 -_08042798: .4byte 0x0001820a -_0804279C: - adds r0, r1, 0 - bl sub_8045888 - lsls r0, 24 - lsrs r0, 24 -_080427A6: - pop {r1} - bx r1 - thumb_func_end sub_8042768 - - thumb_func_start sub_80427AC -sub_80427AC: - push {r4-r6,lr} - movs r6, 0 -_080427B0: - ldr r0, _08042808 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0804280C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080427FA - ldr r5, [r4, 0x70] - adds r1, r5, 0 - adds r1, 0xF3 - ldrb r0, [r1] - cmp r0, 0 - beq _080427FA - movs r0, 0 - strb r0, [r1] - adds r0, r4, 0 - bl sub_80429A0 - ldrb r0, [r5, 0x6] - cmp r0, 0 - bne _080427FA - ldr r0, _08042810 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08042814 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_805239C -_080427FA: - adds r6, 0x1 - cmp r6, 0x13 - ble _080427B0 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08042808: .4byte gUnknown_203B418 -_0804280C: .4byte 0x000135cc -_08042810: .4byte gUnknown_202DF98 -_08042814: .4byte gUnknown_8100270 - thumb_func_end sub_80427AC - - thumb_func_start sub_8042818 -sub_8042818: - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r0, _08042874 - ldr r0, [r0] - ldr r1, _08042878 - adds r0, r1 - ldr r4, [r0] - cmp r4, 0 - bne _08042836 - bl sub_8083600 - adds r4, r0, 0 -_08042836: - ldr r1, _0804287C - lsls r0, r5, 1 - adds r2, r0, r1 - ldrh r1, [r2] - ldr r0, _08042880 - cmp r1, r0 - beq _0804284A - adds r0, r4, 0 - bl sub_80421C0 -_0804284A: - ldr r0, _08042884 - lsls r1, r5, 2 - adds r0, r1, r0 - ldr r5, [r0] - adds r6, r1, 0 - cmp r5, 0 - blt _08042896 - cmp r7, 0 - beq _08042888 - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - bne _08042888 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_804151C - b _08042896 - .align 2, 0 -_08042874: .4byte gUnknown_203B418 -_08042878: .4byte 0x000181f8 -_0804287C: .4byte gUnknown_80F682C -_08042880: .4byte 0x000003e5 -_08042884: .4byte gUnknown_80F67EC -_08042888: - ldr r0, _0804289C - adds r0, r6, r0 - ldr r1, [r0] - adds r0, r4, 0 - movs r2, 0 - bl sub_804151C -_08042896: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804289C: .4byte gUnknown_80F680C - thumb_func_end sub_8042818 - - thumb_func_start sub_80428A0 -sub_80428A0: - push {lr} - movs r1, 0x29 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_80428A0 - - thumb_func_start sub_80428B0 -sub_80428B0: - push {lr} - ldr r1, _080428C0 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_080428C0: .4byte 0x000001a9 - thumb_func_end sub_80428B0 - - thumb_func_start sub_80428C4 -sub_80428C4: - push {lr} - ldr r1, _080428D4 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_080428D4: .4byte 0x000001a9 - thumb_func_end sub_80428C4 - - thumb_func_start sub_80428D8 -sub_80428D8: - push {lr} - ldr r1, _080428E8 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_080428E8: .4byte 0x000001a9 - thumb_func_end sub_80428D8 - - thumb_func_start sub_80428EC -sub_80428EC: - push {lr} - ldr r1, _080428FC - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_080428FC: .4byte 0x000001a9 - thumb_func_end sub_80428EC - - thumb_func_start sub_8042900 -sub_8042900: - push {lr} - movs r1, 0xD4 - lsls r1, 1 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8042900 - - thumb_func_start sub_8042910 -sub_8042910: - push {lr} - movs r1, 0x29 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8042910 - - thumb_func_start sub_8042920 -sub_8042920: - push {lr} - movs r1, 0x48 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8042920 - - thumb_func_start sub_8042930 -sub_8042930: - push {lr} - movs r1, 0xD3 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8042930 - - thumb_func_start sub_8042940 -sub_8042940: - push {lr} - movs r1, 0xC7 - lsls r1, 1 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8042940 - - thumb_func_start sub_8042950 -sub_8042950: - push {lr} - movs r1, 0xD8 - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - movs r0, 0xA - movs r1, 0x42 - bl sub_803E708 - pop {r0} - bx r0 - thumb_func_end sub_8042950 - - thumb_func_start sub_8042968 -sub_8042968: - push {lr} - movs r1, 0xD4 - lsls r1, 1 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8042968 - - thumb_func_start sub_8042978 -sub_8042978: - push {lr} - ldr r1, _08042988 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_08042988: .4byte 0x000001a9 - thumb_func_end sub_8042978 - - thumb_func_start sub_804298C -sub_804298C: - push {lr} - ldr r1, _0804299C - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_0804299C: .4byte 0x000001a9 - thumb_func_end sub_804298C - - thumb_func_start sub_80429A0 -sub_80429A0: - push {lr} - ldr r1, _080429B0 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_080429B0: .4byte 0x00000199 - thumb_func_end sub_80429A0 - - thumb_func_start sub_80429B4 -sub_80429B4: - push {lr} - ldr r1, _080429C4 - movs r2, 0 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_080429C4: .4byte 0x000001ab - thumb_func_end sub_80429B4 - - thumb_func_start sub_80429C8 -sub_80429C8: - push {lr} - movs r1, 0x4 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_80429C8 - - thumb_func_start sub_80429D8 -sub_80429D8: - push {lr} - movs r1, 0x8F - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_80429D8 - - thumb_func_start sub_80429E8 -sub_80429E8: - push {lr} - ldr r1, _080429F8 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - .align 2, 0 -_080429F8: .4byte 0x0000011d - thumb_func_end sub_80429E8 - - thumb_func_start sub_80429FC -sub_80429FC: - push {lr} - movs r1, 0xCF - lsls r1, 1 - movs r2, 0x1 - bl sub_80416A4 - movs r0, 0 - movs r1, 0xD4 - bl sub_80421C0 - pop {r0} - bx r0 - thumb_func_end sub_80429FC - - thumb_func_start sub_8042A14 -sub_8042A14: - push {lr} - movs r1, 0x36 - movs r2, 0x1 - bl sub_80416A4 - pop {r0} - bx r0 - thumb_func_end sub_8042A14 - - thumb_func_start sub_8042A24 -sub_8042A24: - push {lr} - movs r1, 0x15 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8042A24 - - thumb_func_start sub_8042A34 -sub_8042A34: - push {lr} - movs r1, 0x9F - lsls r1, 1 - movs r2, 0 - bl sub_80416A4 - pop {r0} - bx r0 - thumb_func_end sub_8042A34 - - thumb_func_start sub_8042A44 -sub_8042A44: - push {lr} - movs r1, 0xDA - lsls r1, 1 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8042A44 - - thumb_func_start sub_8042A54 -sub_8042A54: - push {lr} - movs r1, 0x37 - movs r2, 0x1 - bl sub_80416A4 - pop {r0} - bx r0 - thumb_func_end sub_8042A54 - - thumb_func_start sub_8042A64 -sub_8042A64: - push {lr} - movs r1, 0x29 - movs r2, 0x1 - bl sub_80416A4 - pop {r0} - bx r0 - thumb_func_end sub_8042A64 - - thumb_func_start sub_8042A74 -sub_8042A74: - push {lr} - movs r1, 0x18 - movs r2, 0x1 - bl sub_804151C - pop {r0} - bx r0 - thumb_func_end sub_8042A74 - - thumb_func_start sub_8042A84 -sub_8042A84: - push {r4-r7,lr} - adds r4, r1, 0 - adds r7, r2, 0 - lsls r0, 16 - asrs r5, r0, 16 - movs r6, 0x80 - lsls r6, 2 - adds r0, r4, 0 - bl sub_8042768 - lsls r0, 24 - cmp r0, 0 - beq _08042AF8 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_804151C - adds r0, r7, 0 - movs r1, 0x42 - bl sub_803E708 - adds r5, r4, 0 - adds r5, 0x20 -_08042AB4: - ldr r1, [r4, 0x1C] - ldr r0, _08042B00 - cmp r1, r0 - bgt _08042AF0 - movs r0, 0x42 - bl sub_803E46C - ldr r1, [r4, 0x1C] - adds r1, r6 - str r1, [r4, 0x1C] - movs r0, 0x80 - lsls r0, 1 - adds r6, r0 - ldr r0, [r4, 0x10] - subs r0, r1 - cmp r0, 0 - bge _08042AD8 - adds r0, 0xFF -_08042AD8: - asrs r1, r0, 8 - ldr r0, _08042B04 - ldr r0, [r0] - ldr r2, _08042B08 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - subs r1, r0 - movs r0, 0x8 - negs r0, r0 - cmp r1, r0 - bge _08042AB4 -_08042AF0: - movs r0, 0 - strb r0, [r5] - bl sub_804178C -_08042AF8: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08042B00: .4byte 0x0000c7ff -_08042B04: .4byte gUnknown_203B418 -_08042B08: .4byte 0x000181f2 - thumb_func_end sub_8042A84 - - thumb_func_start sub_8042B0C -sub_8042B0C: - push {lr} - adds r1, r0, 0 - movs r0, 0x9F - lsls r0, 1 - movs r2, 0x5 - bl sub_8042A84 - pop {r0} - bx r0 - thumb_func_end sub_8042B0C - - thumb_func_start sub_8042B20 -sub_8042B20: - push {lr} - adds r1, r0, 0 - movs r0, 0xDE - lsls r0, 1 - movs r2, 0xE - bl sub_8042A84 - pop {r0} - bx r0 - thumb_func_end sub_8042B20 - - thumb_func_start sub_8042B34 -sub_8042B34: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - adds r5, r0, 0 - adds r4, r1, 0 - adds r6, r2, 0 - movs r0, 0 - mov r8, r0 - bl sub_8085480 - mov r10, r0 - ldr r7, _08042CB0 - movs r0, 0xCC - movs r1, 0x7 - bl MemoryAlloc - str r0, [r7] - str r5, [r0] - adds r4, 0x1 - lsls r4, 2 - str r4, [r0, 0x8] - ldr r4, _08042CB4 - lsls r0, r5, 1 - adds r0, r5 - lsls r0, 3 - adds r0, r4 - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_800EE5C - bl sub_800EF64 - movs r0, 0x46 - bl sub_803E46C - ldr r0, [r7] - str r6, [r0, 0x4] - movs r5, 0 - ldr r0, [r0, 0x8] - cmp r5, r0 - blt _08042B8E - b _08042C9E -_08042B8E: - mov r9, sp -_08042B90: - mov r2, r8 - lsls r6, r2, 3 - ldr r0, [r7] - ldr r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, r6, r0 - ldr r3, _08042CB4 - adds r0, r3 - movs r1, 0 - ldrsh r0, [r0, r1] - str r0, [sp] - str r5, [sp, 0x4] - movs r0, 0 - str r0, [sp, 0x8] - mov r2, r10 - ldr r0, [r2, 0xC] - cmp r0, 0 - bge _08042BBA - adds r0, 0xFF -_08042BBA: - asrs r0, 8 - mov r3, r9 - strh r0, [r3, 0xC] - mov r1, sp - mov r2, r10 - ldr r0, [r2, 0x10] - cmp r0, 0 - bge _08042BCC - adds r0, 0xFF -_08042BCC: - asrs r0, 8 - strh r0, [r1, 0xE] - movs r0, 0x2 - bl RandomCapped - ldr r1, [r7] - lsls r4, r5, 2 - adds r3, r1, 0 - adds r3, 0x4C - adds r3, r4 - ldr r2, [r1] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r1, r6, r1 - ldr r2, _08042CB4 - adds r2, 0x4 - adds r1, r2 - ldr r1, [r1] - lsls r1, 1 - adds r1, r0 - str r1, [r3] - movs r0, 0xF0 - bl RandomCapped - ldr r1, [r7] - adds r1, r4 - adds r0, 0x98 - adds r1, 0x8C - strh r0, [r1] - lsls r0, r5, 1 - adds r0, 0x8 - bl RandomCapped - ldr r1, [r7] - adds r2, r1, r4 - adds r3, r0, 0 - adds r3, 0x18 - adds r1, r5, 0 - cmp r5, 0 - bge _08042C20 - adds r1, r5, 0x3 -_08042C20: - asrs r1, 2 - lsls r1, 2 - subs r1, r5, r1 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - subs r0, r3, r0 - adds r1, r2, 0 - adds r1, 0x8E - strh r0, [r1] - adds r0, r2, 0 - adds r0, 0x8C - ldrh r0, [r0] - mov r3, r9 - strh r0, [r3, 0x10] - ldrh r0, [r1] - strh r0, [r3, 0x12] - movs r0, 0x4 - str r0, [sp, 0x14] - ldr r0, _08042CB8 - str r0, [sp, 0x18] - add r1, sp, 0x1C - ldr r0, _08042CBC - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - mov r0, sp - bl sub_800E890 - ldr r2, [r7] - adds r1, r2, 0 - adds r1, 0xC - adds r1, r4 - str r0, [r1] - movs r6, 0x1 - add r8, r6 - mov r0, r8 - cmp r0, 0x2 - bgt _08042C82 - ldr r0, [r2] - lsls r1, r0, 1 - adds r1, r0 - add r1, r8 - lsls r1, 3 - ldr r2, _08042CB4 - adds r1, r2 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - bne _08042C86 -_08042C82: - movs r6, 0 - mov r8, r6 -_08042C86: - ldr r0, [sp] - bl sub_800ECA4 - ldr r0, [r0, 0x4] - bl sub_800F15C - adds r5, 0x1 - ldr r0, [r7] - ldr r0, [r0, 0x8] - cmp r5, r0 - bge _08042C9E - b _08042B90 -_08042C9E: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08042CB0: .4byte gUnknown_203B414 -_08042CB4: .4byte gUnknown_80F6624 -_08042CB8: .4byte 0x0000ffff -_08042CBC: .4byte gUnknown_80F683C - thumb_func_end sub_8042B34 - - thumb_func_start sub_8042CC0 -sub_8042CC0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - movs r7, 0 - ldr r2, _08042D20 - ldr r1, [r2] - ldr r0, [r1, 0x4] - cmp r0, 0 - beq _08042CDC - movs r7, 0x1 - subs r0, 0x1 - str r0, [r1, 0x4] -_08042CDC: - movs r5, 0 - ldr r0, [r2] - ldr r0, [r0, 0x8] - cmp r5, r0 - bge _08042D56 - adds r6, r2, 0 - movs r0, 0x98 - negs r0, r0 - mov r9, r0 - movs r4, 0 - ldr r1, _08042D24 - mov r8, r1 -_08042CF4: - ldr r3, [r6] - adds r0, r3, r4 - adds r2, r0, 0 - adds r2, 0x8C - adds r0, r3, 0 - adds r0, 0x4C - adds r0, r4 - ldr r1, [r0] - ldrh r0, [r2] - subs r0, r1 - strh r0, [r2] - lsls r0, 16 - asrs r0, 16 - cmp r0, r9 - bgt _08042D2E - ldr r0, [r3, 0x4] - cmp r0, 0 - ble _08042D28 - movs r0, 0x98 - strh r0, [r2] - b _08042D30 - .align 2, 0 -_08042D20: .4byte gUnknown_203B414 -_08042D24: .4byte 0x0000ff68 -_08042D28: - mov r0, r8 - strh r0, [r2] - b _08042D30 -_08042D2E: - movs r7, 0x1 -_08042D30: - ldr r2, [r6] - adds r0, r2, 0 - adds r0, 0xC - adds r0, r4 - ldr r0, [r0] - adds r1, r4, 0 - adds r1, 0x8C - adds r2, r1 - movs r1, 0 - str r1, [sp] - movs r3, 0 - bl sub_800E8AC - adds r4, 0x4 - adds r5, 0x1 - ldr r0, [r6] - ldr r0, [r0, 0x8] - cmp r5, r0 - blt _08042CF4 -_08042D56: - ldr r0, _08042D74 - ldr r0, [r0] - ldr r1, _08042D78 - adds r0, r1 - bl sub_800E90C - adds r0, r7, 0 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08042D74: .4byte gUnknown_203B418 -_08042D78: .4byte 0x000181f0 - thumb_func_end sub_8042CC0 - - thumb_func_start sub_8042D7C -sub_8042D7C: - push {r4-r6,lr} - ldr r1, _08042DD0 - ldr r0, [r1] - cmp r0, 0 - beq _08042DCA - movs r5, 0 - ldr r0, [r0, 0x8] - cmp r5, r0 - bge _08042DBA - adds r6, r1, 0 -_08042D90: - ldr r0, [r6] - lsls r4, r5, 2 - adds r0, 0xC - adds r0, r4 - ldr r0, [r0] - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - beq _08042DB0 - ldr r0, [r6] - adds r0, 0xC - adds r0, r4 - ldr r0, [r0] - bl sub_800DC14 -_08042DB0: - adds r5, 0x1 - ldr r0, [r6] - ldr r0, [r0, 0x8] - cmp r5, r0 - blt _08042D90 -_08042DBA: - bl sub_800DBBC - ldr r4, _08042DD0 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08042DCA: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08042DD0: .4byte gUnknown_203B414 - thumb_func_end sub_8042D7C - - thumb_func_start sub_8042DD4 -sub_8042DD4: - push {r4-r7,lr} - adds r5, r0, 0 - adds r6, r1, 0 - adds r7, r2, 0 - movs r2, 0 - ldr r0, _08042E04 - mov r12, r0 - ldr r3, _08042E08 -_08042DE4: - mov r1, r12 - ldr r0, [r1] - adds r4, r0, r3 - ldr r1, [r4] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _08042E0C - str r5, [r4] - str r6, [r4, 0xC] - str r7, [r4, 0x4] - adds r0, r5, 0 - bl sub_800E6D8 - str r0, [r4, 0x8] - b _08042E14 - .align 2, 0 -_08042E04: .4byte gUnknown_203B418 -_08042E08: .4byte 0x000005c4 -_08042E0C: - adds r3, 0x10 - adds r2, 0x1 - cmp r2, 0x2 - ble _08042DE4 -_08042E14: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8042DD4 - - thumb_func_start sub_8042E1C -sub_8042E1C: - push {r4-r6,lr} - movs r5, 0 - ldr r6, _08042E44 - ldr r4, _08042E48 -_08042E24: - ldr r0, [r6] - adds r0, r4 - ldr r1, [r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08042E4C - adds r0, r1, 0 - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - beq _08042E4C - movs r0, 0x1 - b _08042E56 - .align 2, 0 -_08042E44: .4byte gUnknown_203B418 -_08042E48: .4byte 0x000005c4 -_08042E4C: - adds r4, 0x10 - adds r5, 0x1 - cmp r5, 0x2 - ble _08042E24 - movs r0, 0 -_08042E56: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8042E1C - - thumb_func_start sub_8042E5C -sub_8042E5C: - push {r4-r7,lr} - ldr r7, _08042E90 - ldr r6, _08042E94 - movs r5, 0x2 -_08042E64: - ldr r0, [r7] - adds r4, r0, r6 - ldr r0, [r4] - cmp r0, 0 - blt _08042E82 - bl sub_800E9A8 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _08042E82 - movs r0, 0x1 - negs r0, r0 - str r0, [r4] - str r1, [r4, 0xC] -_08042E82: - adds r6, 0x10 - subs r5, 0x1 - cmp r5, 0 - bge _08042E64 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08042E90: .4byte gUnknown_203B418 -_08042E94: .4byte 0x000005c4 - thumb_func_end sub_8042E5C - - thumb_func_start sub_8042E98 -sub_8042E98: - push {r4,r5,lr} - ldr r5, _08042EC0 - movs r4, 0x1 - negs r4, r4 - movs r3, 0 - ldr r2, _08042EC4 - movs r1, 0x2 -_08042EA6: - ldr r0, [r5] - adds r0, r2 - str r4, [r0] - str r3, [r0, 0x4] - str r3, [r0, 0xC] - adds r2, 0x10 - subs r1, 0x1 - cmp r1, 0 - bge _08042EA6 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08042EC0: .4byte gUnknown_203B418 -_08042EC4: .4byte 0x000005c4 - thumb_func_end sub_8042E98 - - thumb_func_start sub_8042EC8 -sub_8042EC8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - adds r6, r0, 0 - mov r8, r1 - movs r7, 0 -_08042ED6: - ldr r1, _08042F5C - lsls r0, r7, 4 - ldr r2, _08042F60 - adds r0, r2 - ldr r1, [r1] - adds r4, r1, r0 - ldr r0, [r4] - cmp r0, 0 - blt _08042F4A - ldr r0, [r4, 0xC] - cmp r0, r6 - bne _08042F4A - ldr r0, [r6, 0xC] - cmp r0, 0 - bge _08042EF6 - adds r0, 0xFF -_08042EF6: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _08042F64 - ldr r2, [sp, 0x8] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x8] - ldr r1, [r6, 0x10] - cmp r1, 0 - bge _08042F0C - adds r1, 0xFF -_08042F0C: - lsls r1, 8 - lsrs r1, 16 - lsls r1, 16 - ldr r0, _08042F68 - ands r2, r0 - orrs r2, r1 - str r2, [sp, 0x8] - movs r0, 0 - str r0, [sp, 0x4] - ldr r5, [r6, 0x70] - ldr r2, [r4, 0x8] - subs r0, 0x1 - cmp r2, r0 - beq _08042F36 - lsls r2, 24 - lsrs r2, 24 - add r0, sp, 0x4 - adds r1, r6, 0 - adds r1, 0x28 - bl sub_800569C -_08042F36: - ldr r0, [r4] - adds r1, r5, 0 - adds r1, 0x46 - ldrb r1, [r1] - str r1, [sp] - add r1, sp, 0x8 - add r2, sp, 0x4 - mov r3, r8 - bl sub_800EB24 -_08042F4A: - adds r7, 0x1 - cmp r7, 0x2 - ble _08042ED6 - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08042F5C: .4byte gUnknown_203B418 -_08042F60: .4byte 0x000005c4 -_08042F64: .4byte 0xffff0000 -_08042F68: .4byte 0x0000ffff - thumb_func_end sub_8042EC8 - - thumb_func_start xxx_dungeon_8042F6C -xxx_dungeon_8042F6C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - mov r8, r0 - ldr r1, _0804310C - movs r0, 0 - strb r0, [r1] - mov r0, r8 - ldrb r6, [r0, 0x8] - ldrb r1, [r0, 0x11] - mov r9, r1 - ldrb r2, [r0, 0x10] - mov r10, r2 - ldr r0, _08043110 - mov r3, r8 - ldr r1, [r3, 0x74] - str r1, [r0] - ldr r2, _08043114 - ldr r0, [r3, 0x78] - str r0, [r2] - cmp r6, 0 - bne _08042FA0 - strb r6, [r1] -_08042FA0: - ldr r2, [r2] - movs r1, 0 - ldr r4, _08043118 - ldr r5, _0804311C - mov r0, sp - adds r0, 0x4 - str r0, [sp, 0x8] - mov r3, r8 - adds r3, 0x7C - str r3, [sp, 0xC] - movs r3, 0 -_08042FB6: - adds r0, r2, r1 - strb r3, [r0] - adds r1, 0x1 - cmp r1, r4 - bls _08042FB6 - movs r7, 0 - movs r0, 0x64 - strh r0, [r5] - cmp r6, 0 - bne _0804300C - ldr r4, _08043114 - ldr r0, [r4] - mov r5, r8 - ldrb r1, [r5, 0xF] - movs r2, 0xCF - lsls r2, 3 - adds r0, r2 - strb r1, [r0] - ldr r2, [r4] - ldr r3, _08043120 - adds r2, r3 - ldr r0, [r5, 0x14] - ldr r1, [r5, 0x18] - str r0, [r2] - str r1, [r2, 0x4] - ldrb r0, [r5, 0x4] - bl sub_80900D0 - ldr r1, [r4] - ldr r5, _08043124 - adds r2, r1, r5 - strh r0, [r2] - ldr r0, _08043128 - adds r1, r0 - strb r7, [r1] - mov r1, r8 - ldrb r0, [r1, 0x4] - bl sub_8090134 - ldr r1, [r4] - ldr r2, _0804312C - adds r1, r2 - strb r0, [r1] -_0804300C: - ldr r4, _08043114 - ldr r0, [r4] - movs r3, 0xD3 - lsls r3, 3 - adds r0, r3 - strb r7, [r0] - ldr r0, [r4] - ldr r5, _08043130 - adds r0, r5 - strb r7, [r0] - ldr r0, [r4] - mov r2, r8 - ldrb r1, [r2, 0x9] - subs r3, 0x3C - adds r0, r3 - strb r1, [r0] - ldr r0, [r4] - ldrb r1, [r2, 0xC] - subs r5, 0x3F - adds r0, r5 - strb r1, [r0] - ldr r0, [r4] - ldrb r1, [r2, 0xA] - movs r2, 0xCB - lsls r2, 3 - adds r0, r2 - strb r1, [r0] - ldr r0, [r4] - mov r3, r8 - ldrb r1, [r3, 0xB] - subs r5, 0x1 - adds r0, r5 - strb r1, [r0] - ldr r0, [r4] - ldrb r1, [r3, 0xD] - adds r2, 0x3 - adds r0, r2 - strb r1, [r0] - ldr r0, [r4] - ldrb r1, [r3, 0xE] - ldr r3, _08043134 - adds r0, r3 - strb r1, [r0] - bl sub_8083F34 - bl sub_803D4AC - bl sub_804513C - bl sub_8043CD8 - bl sub_80495E4 - bl sub_803E250 - bl sub_8040130 - bl sub_8040124 - movs r0, 0x1 - bl sub_803F27C - ldr r1, _08043138 - ldr r5, _0804313C - adds r0, r5, 0 - strh r0, [r1] - movs r0, 0x1 - movs r1, 0x14 - bl sub_80095CC - movs r0, 0 - bl sub_800DAC0 - movs r0, 0x1 - bl xxx_update_some_bg_tiles - bl sub_803DF60 - bl sub_803E02C - bl sub_8042E98 - ldr r0, _08043140 - strb r7, [r0] - cmp r6, 0 - beq _080430C8 - ldr r0, _08043110 - ldr r0, [r0] - movs r1, 0x90 - lsls r1, 7 - bl sub_8081BF4 - bl sub_8049840 -_080430C8: - mov r0, r9 - cmp r0, 0 - beq _080430D2 - bl sub_8043D60 -_080430D2: - cmp r6, 0 - beq _080430D8 - b _080431DC -_080430D8: - ldr r0, [r4] - ldr r1, _08043144 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r4] - ldr r2, _08043148 - adds r0, r2 - strb r1, [r0] - ldr r2, [r4] - movs r3, 0xCF - lsls r3, 3 - adds r0, r2, r3 - ldrb r3, [r0] - cmp r3, 0x1 - bne _08043154 - mov r5, r8 - ldrb r1, [r5, 0x14] - ldr r5, _0804314C - adds r0, r2, r5 - strb r1, [r0] - ldr r0, [r4] - ldr r1, _08043150 - adds r0, r1 - strb r3, [r0] - b _0804315E - .align 2, 0 -_0804310C: .4byte gUnknown_203B40C -_08043110: .4byte gUnknown_203B41C -_08043114: .4byte gUnknown_203B418 -_08043118: .4byte 0x0001cedb -_0804311C: .4byte gUnknown_203B410 -_08043120: .4byte 0x0000064c -_08043124: .4byte 0x00000666 -_08043128: .4byte 0x0000067a -_0804312C: .4byte 0x0000067b -_08043130: .4byte 0x00000699 -_08043134: .4byte 0x0000065d -_08043138: .4byte gUnknown_2026E4E -_0804313C: .4byte 0x00000808 -_08043140: .4byte gUnknown_202F32C -_08043144: .4byte 0x0001820b -_08043148: .4byte 0x0001820c -_0804314C: .4byte 0x00000644 -_08043150: .4byte 0x00000645 -_08043154: - ldr r3, _0804318C - adds r1, r2, r3 - mov r5, r8 - ldr r0, [r5, 0x4] - str r0, [r1] -_0804315E: - ldr r4, _08043190 - ldr r0, [r4] - ldr r1, _08043194 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - bl sub_8044124 - cmp r6, 0 - bne _080431DC - ldr r1, [r4] - movs r2, 0xCF - lsls r2, 3 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0804319C - ldr r3, _08043198 - adds r1, r3 - mov r5, r8 - ldr r0, [r5, 0x18] - str r0, [r1] - b _080431AC - .align 2, 0 -_0804318C: .4byte 0x00000644 -_08043190: .4byte gUnknown_203B418 -_08043194: .4byte 0x00000674 -_08043198: .4byte 0x0000067c -_0804319C: - bl Random - ldr r2, [r4] - ldr r1, _08043208 - adds r2, r1 - ldr r1, _0804320C - ands r1, r0 - str r1, [r2] -_080431AC: - ldr r4, _08043210 - ldr r0, [r4] - ldr r2, _08043208 - adds r0, r2 - ldr r0, [r0] - bl sub_808408C - cmp r6, 0 - bne _080431DC - bl sub_80980A4 - lsls r0, 24 - cmp r0, 0 - bne _080431D8 - ldr r0, [r4] - ldr r3, _08043214 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _080431D8 - bl sub_8043FD0 -_080431D8: - bl sub_806890C -_080431DC: - mov r5, r9 - cmp r5, 0 - beq _08043230 - ldr r1, _08043218 - ldr r0, _08043210 - ldr r0, [r0] - ldr r2, _0804321C - adds r0, r2 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - str r0, [r1] - cmp r0, 0 - beq _08043224 - ldr r0, _08043220 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _08043230 - .align 2, 0 -_08043208: .4byte 0x0000067c -_0804320C: .4byte 0x00ffffff -_08043210: .4byte gUnknown_203B418 -_08043214: .4byte 0x00000644 -_08043218: .4byte gUnknown_202DE30 -_0804321C: .4byte 0x0000067b -_08043220: .4byte gUnknown_80FEC48 -_08043224: - ldr r0, _080432B4 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_08043230: - mov r3, r10 - cmp r3, 0 - beq _0804326A - mov r1, r8 - adds r1, 0x44 - movs r0, 0 - strb r0, [r1] - ldr r0, _080432B8 - ldr r0, [r0] - ldr r5, _080432BC - adds r0, r5 - ldrb r0, [r0] - bl sub_8090104 - lsls r0, 24 - mov r4, r8 - adds r4, 0x1C - cmp r0, 0 - beq _0804325C - adds r0, r4, 0 - bl sub_808D0D8 -_0804325C: - adds r0, r4, 0 - bl sub_8068A84 - cmp r6, 0 - beq _0804326A - bl sub_806B404 -_0804326A: - bl sub_8068614 - cmp r6, 0 - bne _080432F4 - ldr r0, _080432B8 - ldr r0, [r0] - movs r1, 0xCF - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080432F4 - mov r0, sp - bl sub_8099394 - lsls r0, 24 - cmp r0, 0 - beq _080432F4 - mov r0, sp - ldrb r0, [r0] - bl sub_8095228 - adds r2, r0, 0 - adds r2, 0x2C - movs r0, 0 - ldrsb r0, [r2, r0] - cmp r0, 0 - beq _080432E8 - ldr r1, _080432C0 - str r0, [r1] - ldr r0, _080432C4 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _080432F4 - .align 2, 0 -_080432B4: .4byte gUnknown_80FEC7C -_080432B8: .4byte gUnknown_203B418 -_080432BC: .4byte 0x00000644 -_080432C0: .4byte gUnknown_202DE30 -_080432C4: .4byte gUnknown_81002B8 -_080432C8: - ldr r4, _080432CC - b _080432D2 - .align 2, 0 -_080432CC: .4byte 0x00000226 -_080432D0: - ldr r4, _080432E4 -_080432D2: - bl sub_8083600 - adds r2, r0, 0 - adds r0, r4, 0 - movs r1, 0 - bl sub_8083AB0 - bl _08043AF4 - .align 2, 0 -_080432E4: .4byte 0x00000227 -_080432E8: - ldr r0, _080434B8 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_080432F4: - movs r2, 0 - mov r10, r2 - movs r3, 0 - mov r9, r3 -_080432FC: - bl sub_8098080 - bl nullsub_16 - bl sub_80521D0 - bl sub_80531A8 - bl sub_800F690 - cmp r6, 0 - bne _08043318 - bl sub_804513C -_08043318: - ldr r0, _080434BC - movs r5, 0 - str r5, [r0] - ldr r4, _080434C0 - ldr r0, [r4] - strb r5, [r0] - cmp r6, 0 - bne _08043346 - bl sub_80840A4 - ldr r1, [r4] - movs r3, 0xD0 - lsls r3, 3 - adds r2, r1, r3 - str r0, [r2] - movs r0, 0xCD - lsls r0, 3 - adds r1, r0 - movs r0, 0xA - strh r0, [r1] - ldr r0, [r2] - bl sub_80840D8 -_08043346: - ldr r0, [r4] - ldr r1, _080434C4 - adds r0, r1 - strb r5, [r0] - cmp r6, 0 - bne _08043390 - ldr r0, [r4] - ldr r2, _080434C8 - adds r0, r2 - strb r6, [r0] - movs r0, 0x4 - bl sub_8084100 - ldr r1, [r4] - ldr r3, _080434CC - adds r1, r3 - strb r6, [r1] - ldr r1, [r4] - ldr r2, _080434D0 - adds r1, r2 - strb r6, [r1] - ldr r2, [r4] - ldr r1, _080434D4 - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - adds r3, 0x3 - adds r0, r2, r3 - strh r1, [r0] - ldr r0, _080434D8 - adds r2, r0 - mov r1, r10 - strb r1, [r2] - ldr r0, [r4] - ldr r2, _080434DC - adds r0, r2 - strb r1, [r0] -_08043390: - bl sub_803D4D0 - ldr r0, [r4] - strb r5, [r0, 0x1] - ldr r0, [r4] - strb r5, [r0, 0x10] - ldr r0, [r4] - strb r5, [r0, 0x2] - ldr r0, [r4] - strb r5, [r0, 0x4] - ldr r0, [r4] - strb r5, [r0, 0x11] - ldr r0, [r4] - strb r5, [r0, 0x8] - ldr r0, [r4] - strb r5, [r0, 0x3] - ldr r0, [r4] - strb r5, [r0, 0x6] - ldr r0, [r4] - strb r5, [r0, 0xF] - ldr r2, [r4] - movs r3, 0xB8 - lsls r3, 3 - adds r1, r2, r3 - movs r0, 0x1 - negs r0, r0 - str r0, [r1] - strb r5, [r2, 0x7] - ldr r0, [r4] - strb r5, [r0, 0x9] - ldr r0, [r4] - strb r5, [r0, 0xA] - ldr r0, [r4] - movs r1, 0x1 - strb r1, [r0, 0xB] - ldr r0, [r4] - strb r1, [r0, 0xD] - ldr r0, [r4] - strb r5, [r0, 0xE] - ldr r0, [r4] - ldr r2, _080434E0 - adds r0, r2 - strb r5, [r0] - cmp r6, 0 - bne _080434A6 - ldr r0, [r4] - adds r3, 0xB9 - adds r0, r3 - strb r6, [r0] - ldr r1, [r4] - ldr r5, _080434E4 - adds r0, r1, r5 - str r6, [r0] - movs r2, 0xD2 - lsls r2, 3 - adds r0, r1, r2 - str r6, [r0] - adds r3, 0x1B - adds r0, r1, r3 - str r6, [r0] - subs r5, 0x2C - adds r0, r1, r5 - strh r6, [r0] - subs r2, 0x2E - adds r0, r1, r2 - strh r6, [r0] - subs r3, 0x26 - adds r1, r3 - mov r5, r10 - strb r5, [r1] - ldr r0, [r4] - ldr r1, _080434E8 - adds r0, r1 - strb r5, [r0] - ldr r0, [r4] - adds r2, 0xE - adds r0, r2 - strb r5, [r0] - ldr r0, [r4] - adds r3, 0x8 - adds r0, r3 - strb r5, [r0] - ldr r0, [r4] - ldr r5, _080434EC - adds r0, r5 - mov r1, r10 - strb r1, [r0] - ldr r0, [r4] - adds r2, 0x2 - adds r0, r2 - strb r1, [r0] - ldr r1, [r4] - subs r3, 0xC - adds r2, r1, r3 - ldr r0, _080434F0 - strh r0, [r2] - adds r5, 0x17 - adds r0, r1, r5 - strh r6, [r0] - ldr r0, _080434F4 - adds r1, r0 - mov r2, r10 - strb r2, [r1] - ldr r1, [r4] - adds r3, 0x1A - adds r0, r1, r3 - movs r2, 0x63 - strh r2, [r0] - subs r5, 0x2 - adds r0, r1, r5 - strh r2, [r0] - ldr r0, _080434F8 - adds r1, r0 - mov r2, r10 - strb r2, [r1] - ldr r1, [r4] - ldr r3, _080434FC - adds r0, r1, r3 - ldrb r2, [r0] - ldr r5, _08043500 - adds r0, r1, r5 - strh r2, [r0] - ldr r2, _08043504 - adds r0, r1, r2 - ldrb r2, [r0] - ldr r3, _08043508 - adds r0, r1, r3 - strh r2, [r0] - ldr r5, _0804350C - adds r0, r1, r5 - ldrb r0, [r0] - ldr r2, _08043510 - adds r1, r2 - strh r0, [r1] - movs r0, 0 - bl sub_807E5E4 - bl sub_80842F0 -_080434A6: - bl sub_803D8F0 - bl sub_8068658 - cmp r6, 0 - bne _08043514 - bl sub_80687AC - b _0804351C - .align 2, 0 -_080434B8: .4byte gUnknown_81002D8 -_080434BC: .4byte gUnknown_203B450 -_080434C0: .4byte gUnknown_203B418 -_080434C4: .4byte 0x000037ec -_080434C8: .4byte 0x000037fc -_080434CC: .4byte 0x000037fd -_080434D0: .4byte 0x000037fe -_080434D4: .4byte gUnknown_80F6850 -_080434D8: .4byte 0x000037ff -_080434DC: .4byte 0x00000675 -_080434E0: .4byte 0x0001c05e -_080434E4: .4byte 0x0000068c -_080434E8: .4byte 0x0000066f -_080434EC: .4byte 0x00000671 -_080434F0: .4byte 0x000003e7 -_080434F4: .4byte 0x0000068a -_080434F8: .4byte 0x0000e264 -_080434FC: .4byte 0x0001c576 -_08043500: .4byte 0x00003a0e -_08043504: .4byte 0x0001c577 -_08043508: .4byte 0x00003a10 -_0804350C: .4byte 0x0001c586 -_08043510: .4byte 0x00003a14 -_08043514: - bl sub_8068768 - bl sub_8082B40 -_0804351C: - bl sub_806C42C - bl sub_806AD3C - cmp r6, 0 - bne _08043544 - ldr r1, _080435B4 - ldr r3, _080435B8 - ldr r0, [r3] - ldr r5, _080435BC - adds r0, r5 - movs r2, 0 - ldrsh r0, [r0, r2] - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - bl sub_8083E88 - bl sub_80847D4 -_08043544: - bl sub_8049840 - bl sub_803E178 - ldr r0, _080435C0 - mov r3, r9 - str r3, [r0] - bl sub_8040124 - movs r0, 0x4 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0 - bl sub_8052210 - adds r0, r6, 0 - bl sub_803F27C - bl ShowDungeonNameBanner - cmp r6, 0 - bne _08043594 - bl sub_804AFAC - ldr r5, _080435B8 - ldr r0, [r5] - ldr r1, _080435C4 - adds r0, r1 - ldrb r0, [r0] - bl sub_80900D0 - ldr r2, [r5] - ldr r3, _080435C8 - adds r1, r2, r3 - strh r0, [r1] - ldr r5, _080435CC - adds r2, r5 - mov r0, r10 - strb r0, [r2] -_08043594: - bl sub_804AAD4 - bl sub_8049B8C - bl sub_804966C - cmp r6, 0 - bne _080435D0 - bl sub_806B168 - bl sub_806C3C0 - bl sub_806B6C4 - b _080435D4 - .align 2, 0 -_080435B4: .4byte gUnknown_80F5668 -_080435B8: .4byte gUnknown_203B418 -_080435BC: .4byte 0x00003a10 -_080435C0: .4byte gUnknown_202EDC8 -_080435C4: .4byte 0x00000644 -_080435C8: .4byte 0x00000666 -_080435CC: .4byte 0x0000067a -_080435D0: - bl sub_806B678 -_080435D4: - ldr r4, _0804362C - ldr r1, [r4] - ldr r2, _08043630 - adds r0, r1, r2 - mov r3, r9 - str r3, [r0] - ldr r5, _08043634 - adds r0, r1, r5 - str r3, [r0] - adds r2, 0x4 - adds r0, r1, r2 - str r3, [r0] - ldr r3, _08043638 - adds r0, r1, r3 - mov r5, r9 - str r5, [r0] - adds r2, 0x4 - adds r0, r1, r2 - str r5, [r0] - adds r3, 0x4 - adds r1, r3 - str r5, [r1] - cmp r6, 0 - bne _08043644 - bl sub_807FA18 - bl sub_8045CB0 - ldr r1, [r4] - ldr r5, _0804363C - adds r2, r1, r5 - ldr r3, _08043640 - adds r0, r1, r3 - ldr r0, [r0] - str r0, [r2] - subs r5, 0x4 - adds r1, r5 - str r6, [r1] - bl sub_8051E3C - bl sub_804AAAC - b _08043648 - .align 2, 0 -_0804362C: .4byte gUnknown_203B418 -_08043630: .4byte 0x00017b2c -_08043634: .4byte 0x00017b38 -_08043638: .4byte 0x00017b3c -_0804363C: .4byte 0x00000694 -_08043640: .4byte 0x0000068c -_08043644: - bl sub_806A338 -_08043648: - bl sub_8068F80 - bl sub_8049884 - bl sub_8049ED4 - cmp r6, 0 - bne _08043664 - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - bl sub_806A914 - b _0804366C -_08043664: - bl sub_806CF60 - bl sub_806A974 -_0804366C: - movs r0, 0x1 - bl sub_8041888 - cmp r6, 0 - bne _0804367E - bl sub_80848F0 - bl sub_8097890 -_0804367E: - ldr r0, _080436A0 - movs r1, 0x1 - strb r1, [r0] - cmp r6, 0 - beq _08043690 - bl sub_807E88C - bl sub_806AB2C -_08043690: - ldr r2, _080436A4 - ldr r0, [r2] - ldrb r0, [r0, 0x7] - cmp r0, 0 - bne _080436A8 - bl sub_803E748 - b _080436AC - .align 2, 0 -_080436A0: .4byte gUnknown_203B40C -_080436A4: .4byte gUnknown_203B418 -_080436A8: - bl sub_803E7C8 -_080436AC: - movs r0, 0 - bl sub_8040094 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - adds r0, r6, 0 - bl sub_8040150 - bl sub_8040A84 - ldr r4, _08043730 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xB8 - mov r3, r9 - str r3, [r0] - ldr r5, _08043734 - adds r1, r5 - strb r3, [r1] - ldr r0, [r4] - ldr r1, _08043738 - adds r0, r1 - mov r2, r9 - strb r2, [r0] - ldr r1, [r4] - movs r5, 0 - movs r0, 0x63 - strh r0, [r1, 0x12] - movs r3, 0x1 - strb r3, [r1] - cmp r6, 0 - bne _08043706 - bl sub_8052DD0 - ldr r1, [r4] - ldrb r0, [r1, 0x9] - cmp r0, 0 - beq _08043706 - strb r5, [r1, 0x9] - bl sub_8083D68 - bl sub_8052F80 -_08043706: - ldr r0, _0804373C - mov r5, r9 - str r5, [r0] - ldr r4, _08043730 - ldr r0, [r4] - strb r5, [r0, 0x5] - cmp r6, 0 - bne _08043778 - bl sub_8084B64 - ldr r1, [r4] - ldrb r0, [r1, 0x4] - cmp r0, 0 - bne _08043728 - ldrb r0, [r1, 0x2] - cmp r0, 0 - beq _08043740 -_08043728: - movs r0, 0x1 - strb r0, [r1, 0x5] - b _0804374C - .align 2, 0 -_08043730: .4byte gUnknown_203B418 -_08043734: .4byte 0x0000066c -_08043738: .4byte 0x0000066d -_0804373C: .4byte gUnknown_203B450 -_08043740: - bl sub_8083600 - bl sub_803F4A0 - bl sub_8040A84 -_0804374C: - cmp r6, 0 - bne _08043778 - ldr r1, _08043774 - ldr r0, [r1] - ldrb r0, [r0, 0x5] - cmp r0, 0 - bne _0804377C - bl sub_807E5AC - movs r0, 0 - bl sub_807E580 - lsls r0, 24 - cmp r0, 0 - beq _0804377C - movs r0, 0x1 - bl sub_807E7FC - b _0804377C - .align 2, 0 -_08043774: .4byte gUnknown_203B418 -_08043778: - bl sub_8069E8C -_0804377C: - cmp r6, 0 - beq _08043784 - movs r6, 0 - b _080437A2 -_08043784: - bl sub_80427AC - bl sub_8083600 - ldr r2, _08043960 - ldr r1, [r2] - ldr r3, _08043964 - adds r1, r3 - ldrb r1, [r1] - bl sub_8075900 - movs r0, 0x1 - movs r1, 0 - bl sub_807EAA0 -_080437A2: - bl nullsub_16 - ldr r2, _08043960 - ldr r0, [r2] - ldrb r1, [r0, 0x5] - cmp r1, 0 - bne _080437DA - movs r4, 0x1 - ldr r5, _08043968 - adds r0, r5 - strb r1, [r0] - ldr r0, [r2] - ldr r3, _0804396C - adds r0, r3 - strb r1, [r0] - ldr r0, [r2] - ldr r5, _08043970 - adds r0, r5 - strb r4, [r0] -_080437C8: - adds r0, r4, 0 - bl RunDungeon - movs r4, 0 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080437C8 -_080437DA: - bl sub_8083600 - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080437F0 - adds r0, r4, 0 - bl sub_8071DA4 -_080437F0: - ldr r5, _08043960 - ldr r0, [r5] - ldr r4, _08043968 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08043822 - movs r0, 0x1 - bl sub_8043ED0 - lsls r0, 24 - cmp r0, 0 - beq _08043812 - ldr r0, [r5] - adds r0, r4 - movs r1, 0x1 - strb r1, [r0] -_08043812: - ldr r1, [r5] - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08043822 - ldrb r0, [r1, 0x11] - cmp r0, 0 - beq _08043830 -_08043822: - ldr r2, _08043960 - ldr r0, [r2] - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _08043830 - bl sub_806AA70 -_08043830: - bl sub_8083600 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0804384A - movs r0, 0x4F - bl sub_80526D0 - movs r0, 0x4F - bl sub_8052740 -_0804384A: - bl sub_8040124 - movs r0, 0x1 - movs r1, 0 - bl sub_803EAF0 - ldr r3, _08043960 - ldr r0, [r3] - ldr r5, _08043970 - adds r0, r5 - mov r1, r9 - strb r1, [r0] - ldr r0, [r3] - ldr r2, _0804396C - adds r0, r2 - movs r3, 0x1 - strb r3, [r0] - ldr r5, _08043960 - ldr r1, [r5] - ldrb r0, [r1, 0x3] - cmp r0, 0 - bne _08043896 - ldrb r0, [r1, 0x6] - cmp r0, 0 - bne _08043896 - ldr r2, _08043974 - adds r0, r1, r2 - ldrh r0, [r0] - cmp r0, 0x72 - bne _08043896 - ldr r3, _08043978 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0x1B - bne _08043896 - movs r0, 0x3C - bl sub_8083ED8 -_08043896: - movs r0, 0x4 - movs r1, 0x4F - bl sub_803E708 - ldr r5, _08043960 - ldr r0, [r5] - ldrb r0, [r0, 0x7] - cmp r0, 0 - bne _080438AC - bl sub_803E830 -_080438AC: - movs r0, 0 - bl SetBGOBJEnableFlags - ldr r1, _0804397C - ldr r0, [sp, 0x4] - ands r0, r1 - movs r1, 0x60 - orrs r0, r1 - ldr r1, _08043980 - ands r0, r1 - movs r1, 0x80 - lsls r1, 8 - orrs r0, r1 - ldr r1, _08043984 - ands r0, r1 - movs r1, 0xF8 - lsls r1, 16 - orrs r0, r1 - str r0, [sp, 0x4] - ldr r0, _08043988 - ldr r2, [r0] - movs r0, 0xFD - ldr r1, [sp, 0x8] - movs r3, 0 - bl SetBGPaletteBufferColorRGB - movs r0, 0x1 - bl sub_8040094 - ldr r0, [r5] - ldr r1, _0804396C - adds r0, r1 - movs r7, 0 - movs r2, 0x1 - strb r2, [r0] - ldr r1, [r5] - ldrb r0, [r1, 0x10] - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08043926 - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _08043926 - bl sub_8083600 - adds r4, r0, 0 - ldr r0, _0804398C - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - ldr r0, [r5] - strb r7, [r0, 0x6] - ldr r0, _08043990 - adds r1, r4, 0 - adds r2, r4, 0 - bl sub_8083AB0 -_08043926: - bl sub_80688CC - bl sub_8049820 - ldr r0, _08043994 - ldr r0, [r0] - bl CloseFile - bl sub_800F740 - ldr r0, _08043998 - mov r3, r10 - strb r3, [r0] - ldr r4, _08043960 - ldr r1, [r4] - ldrb r0, [r1, 0x3] - cmp r0, 0 - beq _0804394C - b _08043BFC -_0804394C: - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _080439A0 - ldr r0, _0804399C - ldr r0, [r0] - movs r1, 0x90 - lsls r1, 7 - bl sub_8080B30 - b _080439A6 - .align 2, 0 -_08043960: .4byte gUnknown_203B418 -_08043964: .4byte 0x00003a08 -_08043968: .4byte 0x00000654 -_0804396C: .4byte 0x00018218 -_08043970: .4byte 0x00018219 -_08043974: .4byte 0x0001ceda -_08043978: .4byte 0x00000644 -_0804397C: .4byte 0xffffff00 -_08043980: .4byte 0xffff00ff -_08043984: .4byte 0xff00ffff -_08043988: .4byte gUnknown_202EDC8 -_0804398C: .4byte gUnknown_81006A4 -_08043990: .4byte 0x00000222 -_08043994: .4byte gUnknown_202EC88 -_08043998: .4byte gUnknown_203B40C -_0804399C: .4byte gUnknown_203B41C -_080439A0: - movs r0, 0x2 - bl sub_8046F84 -_080439A6: - bl sub_806C1D8 - ldr r4, _080439CC - ldr r1, [r4] - ldr r5, _080439D0 - adds r0, r1, r5 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080439D4 - adds r5, 0x1A - adds r0, r1, r5 - ldrb r0, [r0] - cmp r0, 0 - bne _080439C4 - b _08043AF4 -_080439C4: - bl sub_804700C - b _08043AF4 - .align 2, 0 -_080439CC: .4byte gUnknown_203B418 -_080439D0: .4byte 0x00000654 -_080439D4: - ldrb r0, [r1, 0x11] - cmp r0, 0x1 - bne _080439DC - b _080432C8 -_080439DC: - cmp r0, 0x2 - bne _08043A00 - bl sub_8083600 - adds r2, r0, 0 - ldr r0, _080439F8 - movs r1, 0 - bl sub_8083AB0 - ldr r0, [r4] - ldr r1, _080439FC - adds r0, r1 - b _08043A62 - .align 2, 0 -_080439F8: .4byte 0x00000229 -_080439FC: .4byte 0x0000066e -_08043A00: - cmp r0, 0x3 - bne _08043A24 - bl sub_8083600 - adds r2, r0, 0 - ldr r0, _08043A1C - movs r1, 0 - bl sub_8083AB0 - ldr r0, [r4] - ldr r2, _08043A20 - adds r0, r2 - b _08043A62 - .align 2, 0 -_08043A1C: .4byte 0x0000022a -_08043A20: .4byte 0x0000066e -_08043A24: - cmp r0, 0x4 - bne _08043A2A - b _080432D0 -_08043A2A: - movs r3, 0xCF - lsls r3, 3 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08043A74 - bl sub_8043D10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08043A74 - ldr r0, [r4] - adds r0, r5 - ldrb r0, [r0] - cmp r0, 0x2 - bne _08043A74 - bl sub_8083600 - adds r2, r0, 0 - movs r0, 0x8A - lsls r0, 2 - movs r1, 0 - bl sub_8083AB0 - ldr r0, [r4] - ldr r5, _08043A70 - adds r0, r5 -_08043A62: - ldrb r0, [r0] - cmp r0, 0 - beq _08043AF4 - bl sub_8097810 - b _08043AF4 - .align 2, 0 -_08043A70: .4byte 0x0000066e -_08043A74: - ldr r4, _08043ACC - ldr r0, [r4] - ldr r1, _08043AD0 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08043A86 - bl sub_8097810 -_08043A86: - ldr r1, [r4] - ldr r3, _08043AD4 - adds r2, r1, r3 - ldrb r0, [r2] - adds r0, 0x1 - ldr r5, _08043AD8 - adds r1, r5 - ldrb r1, [r1] - cmp r0, r1 - bge _08043AE4 - strb r0, [r2] - ldr r0, [r4] - ldr r1, _08043ADC - adds r0, r1 - ldrh r1, [r0] - ldr r0, _08043AE0 - cmp r1, r0 - beq _08043AAC - b _080432FC -_08043AAC: - movs r0, 0x1F - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - beq _08043ABA - b _080432FC -_08043ABA: - movs r0, 0x1F - bl sub_8097FA8 - bl sub_8086130 - bl sub_8097FF8 - b _080432FC - .align 2, 0 -_08043ACC: .4byte gUnknown_203B418 -_08043AD0: .4byte 0x0000066e -_08043AD4: .4byte 0x00000645 -_08043AD8: .4byte 0x0001cec8 -_08043ADC: .4byte 0x00000644 -_08043AE0: .4byte 0x0000060b -_08043AE4: - ldr r4, _08043B80 - bl sub_8083600 - adds r2, r0, 0 - adds r0, r4, 0 - movs r1, 0 - bl sub_8083AB0 -_08043AF4: - ldr r1, _08043B84 - movs r0, 0 - strb r0, [r1] - mov r4, r8 - adds r4, 0x7E - movs r0, 0 - strb r0, [r4] - bl sub_8097FF8 - movs r0, 0x1 - movs r1, 0x14 - bl sub_80095CC - bl sub_803E13C - movs r0, 0x4 - bl sub_800CDA8 - ldr r0, _08043B88 - ldr r1, [r0] - ldrb r0, [r1, 0x6] - cmp r0, 0 - bne _08043B38 - movs r2, 0xCF - lsls r2, 3 - adds r0, r1, r2 - ldrb r0, [r0] - bl sub_8083C88 - lsls r0, 24 - cmp r0, 0 - beq _08043B38 - bl sub_80841EC -_08043B38: - bl sub_8083C24 - lsls r0, 24 - cmp r0, 0 - beq _08043BA4 - ldr r5, _08043B88 - ldr r0, [r5] - ldrb r0, [r0, 0x6] - cmp r0, 0 - beq _08043B98 - ldr r0, _08043B8C - ldr r3, [sp, 0xC] - strh r0, [r3] - mov r4, r8 - adds r4, 0x84 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x8 - bl memset - mov r3, r8 - adds r3, 0x80 - ldr r1, [r5] - ldr r5, _08043B90 - adds r2, r1, r5 - ldr r0, [r2] - str r0, [r3] - ldr r0, [r2] - str r0, [r4] - mov r2, r8 - adds r2, 0x88 - ldr r0, _08043B94 - adds r1, r0 - ldr r0, [r1] - str r0, [r2] - b _08043C32 - .align 2, 0 -_08043B80: .4byte 0x00000227 -_08043B84: .4byte gUnknown_203B40C -_08043B88: .4byte gUnknown_203B418 -_08043B8C: .4byte 0x0000fffe -_08043B90: .4byte 0x00000644 -_08043B94: .4byte 0x0000067c -_08043B98: - ldr r0, _08043BA0 - ldr r1, [sp, 0xC] - strh r0, [r1] - b _08043C32 - .align 2, 0 -_08043BA0: .4byte 0x0000ffff -_08043BA4: - bl sub_8083C50 - lsls r0, 24 - cmp r0, 0 - beq _08043C28 - ldr r0, _08043BC8 - ldr r0, [r0] - movs r2, 0xCF - lsls r2, 3 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08043BCC - movs r0, 0x4 - ldr r3, [sp, 0xC] - strh r0, [r3] - b _08043BE6 - .align 2, 0 -_08043BC8: .4byte gUnknown_203B418 -_08043BCC: - cmp r0, 0 - bne _08043BDC - movs r0, 0x1 - ldr r5, [sp, 0xC] - strh r0, [r5] - bl sub_8084424 - b _08043BE6 -_08043BDC: - movs r0, 0x1 - ldr r1, [sp, 0xC] - strh r0, [r1] - bl sub_8084424 -_08043BE6: - ldr r0, _08043BF4 - ldr r0, [r0] - ldr r2, _08043BF8 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r4] - b _08043C32 - .align 2, 0 -_08043BF4: .4byte gUnknown_203B418 -_08043BF8: .4byte 0x00000674 -_08043BFC: - ldr r0, _08043C20 - ldr r0, [r0] - movs r1, 0x90 - lsls r1, 7 - bl sub_8080B30 - movs r0, 0x3 - ldr r3, [sp, 0xC] - strh r0, [r3] - mov r1, r8 - adds r1, 0x80 - ldr r0, [r4] - ldr r5, _08043C24 - adds r0, r5 - ldr r0, [r0] - str r0, [r1] - b _08043C32 - .align 2, 0 -_08043C20: .4byte gUnknown_203B41C -_08043C24: .4byte 0x00000644 -_08043C28: - movs r0, 0x2 - ldr r1, [sp, 0xC] - strh r0, [r1] - bl sub_8084424 -_08043C32: - bl sub_806863C - bl sub_803E214 - bl nullsub_56 - bl sub_8040218 - ldr r2, [sp, 0xC] - movs r3, 0 - ldrsh r0, [r2, r3] - cmp r0, 0x1 - beq _08043C54 - cmp r0, 0x4 - beq _08043C54 - cmp r0, 0x2 - bne _08043C58 -_08043C54: - bl sub_8047104 -_08043C58: - ldr r5, [sp, 0xC] - movs r0, 0 - ldrsh r1, [r5, r0] - cmp r1, 0x1 - beq _08043C8A - movs r0, 0x2 - negs r0, r0 - cmp r1, r0 - beq _08043C78 - cmp r1, 0x4 - beq _08043C78 - adds r0, 0x1 - cmp r1, r0 - beq _08043C78 - cmp r1, 0x2 - bne _08043CAC -_08043C78: - ldr r2, [sp, 0xC] - movs r3, 0 - ldrsh r1, [r2, r3] - cmp r1, 0x1 - beq _08043C8A - cmp r1, 0x4 - beq _08043C8A - cmp r1, 0x2 - bne _08043C92 -_08043C8A: - movs r0, 0x1 - bl sub_8068BDC - b _08043CAC -_08043C92: - movs r0, 0x2 - negs r0, r0 - cmp r1, r0 - bne _08043CA2 - movs r0, 0 - bl sub_8068BDC - b _08043CAC -_08043CA2: - bl sub_8068F28 - movs r0, 0 - bl sub_8068BDC -_08043CAC: - bl sub_800DB7C - ldr r0, _08043CD0 - movs r1, 0 - str r1, [r0] - ldr r0, _08043CD4 - str r1, [r0] - bl nullsub_16 - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08043CD0: .4byte gUnknown_203B418 -_08043CD4: .4byte gUnknown_203B41C - thumb_func_end xxx_dungeon_8042F6C - - thumb_func_start sub_8043CD8 -sub_8043CD8: - push {lr} - bl sub_8009804 - pop {r0} - bx r0 - thumb_func_end sub_8043CD8 - - thumb_func_start sub_8043CE4 -sub_8043CE4: - push {lr} - adds r1, r0, 0 - ldr r0, _08043CF4 - ldrb r0, [r0] - cmp r0, 0 - beq _08043CF8 - movs r0, 0x1 - b _08043D08 - .align 2, 0 -_08043CF4: .4byte gUnknown_202F1A8 -_08043CF8: - movs r2, 0 - ldr r0, _08043D0C - adds r0, r1, r0 - ldrb r0, [r0] - cmp r0, 0x2 - bne _08043D06 - movs r2, 0x1 -_08043D06: - adds r0, r2, 0 -_08043D08: - pop {r1} - bx r1 - .align 2, 0 -_08043D0C: .4byte gUnknown_810ACC0 - thumb_func_end sub_8043CE4 - - thumb_func_start sub_8043D10 -sub_8043D10: - push {lr} - ldr r0, _08043D38 - ldr r1, [r0] - movs r2, 0xCF - lsls r2, 3 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08043D3C - subs r2, 0x2B - adds r0, r1, r2 - subs r2, 0x8 - adds r1, r2 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bne _08043D3C - movs r0, 0x2 - b _08043D4C - .align 2, 0 -_08043D38: .4byte gUnknown_203B418 -_08043D3C: - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - bne _08043D4A - movs r0, 0 - b _08043D4C -_08043D4A: - movs r0, 0x1 -_08043D4C: - pop {r1} - bx r1 - thumb_func_end sub_8043D10 - - thumb_func_start sub_8043D50 -sub_8043D50: - ldr r2, _08043D5C - str r2, [r1] - movs r1, 0x90 - lsls r1, 7 - str r1, [r0] - bx lr - .align 2, 0 -_08043D5C: .4byte 0x0001cedc - thumb_func_end sub_8043D50 - - thumb_func_start sub_8043D60 -sub_8043D60: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r5, 0 -_08043D6A: - ldr r0, _08043DA4 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08043DA8 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08043DCE - ldr r2, [r4, 0x70] - movs r1, 0x1 - ldrb r0, [r2, 0x8] - eors r0, r1 - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - adds r0, r2, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08043DA0 - cmp r0, 0x47 - bne _08043DAC -_08043DA0: - movs r0, 0x1 - b _08043DAE - .align 2, 0 -_08043DA4: .4byte gUnknown_203B418 -_08043DA8: .4byte 0x0001358c -_08043DAC: - movs r0, 0 -_08043DAE: - cmp r0, 0 - beq _08043DB4 - movs r1, 0 -_08043DB4: - adds r0, r2, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08043DC0 - movs r1, 0 -_08043DC0: - cmp r1, 0 - beq _08043DCE - adds r0, r4, 0 - ldr r1, _08043EC0 - adds r2, r4, 0 - bl sub_8068FE0 -_08043DCE: - adds r5, 0x1 - cmp r5, 0xF - ble _08043D6A - movs r5, 0 - ldr r0, _08043EC4 - mov r9, r0 - mov r8, r5 -_08043DDC: - mov r1, r9 - ldr r0, [r1] - lsls r1, r5, 2 - ldr r2, _08043EC8 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - adds r7, r5, 0x1 - cmp r0, 0 - beq _08043E62 - adds r0, r4, 0 - adds r0, 0x22 - mov r1, r8 - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x20 - movs r0, 0x1 - strb r0, [r1] - ldr r4, [r4, 0x70] - ldrh r0, [r4, 0x10] - strh r0, [r4, 0xE] - movs r2, 0x9E - lsls r2, 1 - adds r1, r4, r2 - adds r2, 0x4 - adds r0, r4, r2 - ldr r0, [r0] - str r0, [r1] - mov r1, r9 - ldr r0, [r1] - ldr r2, _08043ECC - adds r0, r2 - mov r1, r8 - strb r1, [r0] - adds r0, r4, 0 - movs r1, 0 - bl sub_806BFC0 - ldrh r0, [r4, 0x2] - strh r0, [r4, 0x4] - adds r0, r4, 0 - adds r0, 0xFD - mov r2, r8 - strb r2, [r0] - movs r0, 0x8C - lsls r0, 1 - adds r5, r4, r0 - adds r4, r5, 0 - movs r6, 0x3 -_08043E46: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08043E58 - adds r0, r5, 0 - bl sub_8092BF4 - strb r0, [r4, 0x4] -_08043E58: - adds r4, 0x8 - adds r5, 0x8 - subs r6, 0x1 - cmp r6, 0 - bge _08043E46 -_08043E62: - adds r5, r7, 0 - cmp r5, 0x3 - ble _08043DDC - movs r6, 0 -_08043E6A: - movs r5, 0 - adds r7, r6, 0x1 -_08043E6E: - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8049590 - ldr r4, [r0, 0x14] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08043EA0 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x2 - bne _08043EA0 - adds r0, r4, 0 - bl sub_8045104 - adds r1, r0, 0 - ldrb r0, [r1] - cmp r0, 0x1B - bne _08043EA0 - movs r0, 0x5 - strb r0, [r1] -_08043EA0: - adds r5, 0x1 - cmp r5, 0x37 - ble _08043E6E - adds r6, r7, 0 - cmp r6, 0x1F - ble _08043E6A - movs r0, 0x2 - bl sub_8046F84 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08043EC0: .4byte 0x00000207 -_08043EC4: .4byte gUnknown_203B418 -_08043EC8: .4byte 0x0001357c -_08043ECC: .4byte 0x00000676 - thumb_func_end sub_8043D60 - - thumb_func_start sub_8043ED0 -sub_8043ED0: - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r7, 0 - cmp r5, 0 - bne _08043EEA - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08043EEA - movs r0, 0 - b _08043FB8 -_08043EEA: - ldr r6, _08043F2C - ldr r0, [r6] - ldrb r0, [r0, 0x10] - cmp r0, 0x1 - bne _08043F40 - bl sub_8083600 - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08043FB6 - cmp r5, 0 - bne _08043F20 - ldr r0, _08043F30 - ldr r1, [r6] - ldr r2, _08043F34 - adds r1, r2 - bl strcpy - ldr r0, _08043F38 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_08043F20: - adds r0, r4, 0 - bl sub_8042B0C - ldr r1, _08043F3C - b _08043FAC - .align 2, 0 -_08043F2C: .4byte gUnknown_203B418 -_08043F30: .4byte gUnknown_202DF98 -_08043F34: .4byte 0x000005f4 -_08043F38: .4byte gUnknown_80F89B4 -_08043F3C: .4byte 0x0000021f -_08043F40: - cmp r0, 0x2 - bne _08043F74 - bl sub_8083600 - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08043FB6 - cmp r5, 0 - bne _08043FA4 - ldr r0, _08043F68 - ldr r1, [r6] - ldr r2, _08043F6C - adds r1, r2 - bl strcpy - ldr r0, _08043F70 - b _08043F9A - .align 2, 0 -_08043F68: .4byte gUnknown_202DF98 -_08043F6C: .4byte 0x000005f4 -_08043F70: .4byte gUnknown_80F89D4 -_08043F74: - cmp r0, 0x3 - bne _08043FB6 - bl sub_8083600 - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08043FB6 - cmp r5, 0 - bne _08043FA4 - ldr r0, _08043FC0 - ldr r1, [r6] - ldr r2, _08043FC4 - adds r1, r2 - bl strcpy - ldr r0, _08043FC8 -_08043F9A: - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_08043FA4: - adds r0, r4, 0 - bl sub_8042B0C - ldr r1, _08043FCC -_08043FAC: - adds r0, r4, 0 - adds r2, r4, 0 - bl sub_8068FE0 - movs r7, 0x1 -_08043FB6: - adds r0, r7, 0 -_08043FB8: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08043FC0: .4byte gUnknown_202DF98 -_08043FC4: .4byte 0x000005f4 -_08043FC8: .4byte gUnknown_80F89D8 -_08043FCC: .4byte 0x00000222 - thumb_func_end sub_8043ED0 - - thumb_func_start sub_8043FD0 -sub_8043FD0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x44 - movs r0, 0x2 - mov r9, r0 - movs r1, 0x1 - mov r10, r1 - movs r0, 0xFF - mov r8, r0 -_08043FE8: - movs r3, 0 - mov r1, r9 - adds r1, 0x1 - str r1, [sp, 0x3C] -_08043FF0: - ldr r2, _080440E4 - movs r0, 0x58 - adds r1, r3, 0 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - ldrh r1, [r4] - mov r0, r10 - ands r0, r1 - adds r3, 0x1 - str r3, [sp, 0x40] - cmp r0, 0 - beq _080440FE - lsrs r0, r1, 1 - mov r1, r10 - ands r0, r1 - cmp r0, 0 - beq _080440FE - add r5, sp, 0x20 - movs r0, 0x8 - ldrsh r1, [r4, r0] - adds r0, r5, 0 - mov r2, r9 - bl sub_808E010 - mov r1, r9 - strb r1, [r4, 0x3] - ldr r0, [sp, 0x20] - str r0, [r4, 0x1C] - ldrh r0, [r5, 0x4] - ldrh r1, [r4, 0x16] - adds r0, r1 - movs r2, 0 - strh r0, [r4, 0x16] - lsls r0, 16 - ldr r1, _080440E8 - cmp r0, r1 - ble _08044040 - ldr r0, _080440EC - strh r0, [r4, 0x16] -_08044040: - ldrb r0, [r4, 0x18] - str r0, [sp, 0x2C] - ldrb r0, [r4, 0x19] - str r0, [sp, 0x30] - ldrb r0, [r4, 0x1A] - str r0, [sp, 0x34] - ldrb r0, [r4, 0x1B] - str r0, [sp, 0x38] - ldrb r1, [r5, 0x6] - ldr r0, [sp, 0x2C] - adds r0, r1 - str r0, [sp, 0x2C] - ldrb r1, [r5, 0x7] - ldr r0, [sp, 0x30] - adds r0, r1 - str r0, [sp, 0x30] - ldrb r1, [r5, 0x8] - ldr r0, [sp, 0x34] - adds r0, r1 - str r0, [sp, 0x34] - ldrb r1, [r5, 0x9] - ldr r0, [sp, 0x38] - adds r0, r1 - str r0, [sp, 0x38] - ldr r0, [sp, 0x2C] - cmp r0, 0xFE - ble _0804407A - mov r0, r8 - str r0, [sp, 0x2C] -_0804407A: - ldr r0, [sp, 0x30] - cmp r0, 0xFE - ble _08044084 - mov r1, r8 - str r1, [sp, 0x30] -_08044084: - ldr r0, [sp, 0x34] - cmp r0, 0xFE - ble _0804408E - mov r0, r8 - str r0, [sp, 0x34] -_0804408E: - ldr r0, [sp, 0x38] - cmp r0, 0xFE - ble _08044098 - mov r1, r8 - str r1, [sp, 0x38] -_08044098: - ldr r0, [sp, 0x2C] - strb r0, [r4, 0x18] - ldr r0, [sp, 0x30] - strb r0, [r4, 0x19] - ldr r0, [sp, 0x34] - strb r0, [r4, 0x1A] - ldr r0, [sp, 0x38] - strb r0, [r4, 0x1B] - movs r0, 0x8 - ldrsh r1, [r4, r0] - ldrb r2, [r4, 0x3] - mov r0, sp - ldr r3, _080440EC - bl sub_808E0AC - adds r6, r0, 0 - cmp r6, 0 - beq _080440FE - movs r0, 0 - cmp r0, r6 - bge _080440FE -_080440C2: - movs r3, 0 - adds r7, r0, 0x1 - lsls r0, 1 - mov r1, sp - adds r5, r1, r0 - adds r2, r4, 0 - adds r2, 0x2C -_080440D0: - ldrb r1, [r2] - mov r0, r10 - ands r0, r1 - cmp r0, 0 - bne _080440F0 - ldrh r1, [r5] - adds r0, r2, 0 - bl sub_8092AD4 - b _080440F8 - .align 2, 0 -_080440E4: .4byte gUnknown_203B45C -_080440E8: .4byte 0x03e60000 -_080440EC: .4byte 0x000003e7 -_080440F0: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - ble _080440D0 -_080440F8: - adds r0, r7, 0 - cmp r0, r6 - blt _080440C2 -_080440FE: - ldr r3, [sp, 0x40] - movs r0, 0xCE - lsls r0, 1 - cmp r3, r0 - bgt _0804410A - b _08043FF0 -_0804410A: - ldr r0, [sp, 0x3C] - mov r9, r0 - cmp r0, 0x5 - bgt _08044114 - b _08043FE8 -_08044114: - add sp, 0x44 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8043FD0 - - thumb_func_start sub_8044124 -sub_8044124: - push {r4,r5,lr} - ldr r0, _080441AC - ldr r0, [r0] - ldr r1, _080441B0 - adds r0, r1 - ldrb r0, [r0] - bl sub_8090114 - cmp r0, 0 - bne _08044182 - movs r3, 0 - ldr r4, _080441B4 - movs r2, 0 -_0804413E: - lsls r1, r3, 2 - ldr r0, [r4] - adds r1, r0 - strb r2, [r1, 0x2] - strb r2, [r1, 0x1] - strb r2, [r1] - adds r3, 0x1 - cmp r3, 0x13 - ble _0804413E - movs r3, 0 - ldr r5, _080441B8 - movs r4, 0x1 -_08044156: - movs r0, 0x58 - adds r1, r3, 0 - muls r1, r0 - ldr r0, [r5] - adds r1, r0, r1 - ldrh r2, [r1] - adds r0, r4, 0 - ands r0, r2 - cmp r0, 0 - beq _08044178 - lsrs r0, r2, 1 - ands r0, r4 - cmp r0, 0 - beq _08044178 - adds r1, 0x28 - movs r0, 0 - strb r0, [r1] -_08044178: - adds r3, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r3, r0 - ble _08044156 -_08044182: - ldr r0, _080441AC - ldr r0, [r0] - ldr r2, _080441B0 - adds r0, r2 - ldrb r0, [r0] - bl sub_8090124 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _080441A4 - ldr r0, _080441B4 - ldr r0, [r0] - movs r2, 0x98 - lsls r2, 2 - adds r0, r2 - str r1, [r0] -_080441A4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080441AC: .4byte gUnknown_203B418 -_080441B0: .4byte 0x00000644 -_080441B4: .4byte gUnknown_203B460 -_080441B8: .4byte gUnknown_203B45C - thumb_func_end sub_8044124 - - thumb_func_start sub_80441BC -sub_80441BC: - push {lr} - ldr r0, _080441D8 - ldr r0, [r0] - ldr r1, _080441DC - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _080441E0 - cmp r0, 0x31 - bgt _080441E0 - movs r0, 0x1 - b _080441E2 - .align 2, 0 -_080441D8: .4byte gUnknown_203B418 -_080441DC: .4byte 0x00003a14 -_080441E0: - movs r0, 0 -_080441E2: - pop {r1} - bx r1 - thumb_func_end sub_80441BC - - thumb_func_start sub_80441E8 -sub_80441E8: - push {lr} - ldr r0, _08044200 - ldr r0, [r0] - ldr r1, _08044204 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x3F - bgt _08044208 - movs r0, 0 - b _0804420A - .align 2, 0 -_08044200: .4byte gUnknown_203B418 -_08044204: .4byte 0x00003a0e -_08044208: - movs r0, 0x1 -_0804420A: - pop {r1} - bx r1 - thumb_func_end sub_80441E8 - - thumb_func_start sub_8044210 -sub_8044210: - push {lr} - ldr r0, _0804422C - ldr r0, [r0] - ldr r1, _08044230 - adds r0, r1 - ldrb r0, [r0] - subs r0, 0x4B - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x16 - bls _08044234 - movs r0, 0 - b _08044236 - .align 2, 0 -_0804422C: .4byte gUnknown_203B418 -_08044230: .4byte 0x00000644 -_08044234: - movs r0, 0x1 -_08044236: - pop {r1} - bx r1 - thumb_func_end sub_8044210 - - thumb_func_start RunDungeon -RunDungeon: - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _080442C6 - bl sub_8044994 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _080442C6 - adds r0, r4, 0 - bl xxx_dungeon_80442D0 - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _080442C6 - cmp r4, 0 - beq _08044280 - bl sub_807E378 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _080442C6 -_08044280: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _080442C6 - bl sub_8044574 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _080442C6 - bl sub_8044820 - bl sub_8044B28 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080442C6 - bl sub_8044AB4 - ldr r0, _080442CC - ldr r0, [r0] - movs r2, 0xCC - lsls r2, 3 - adds r1, r0, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x18 - bne _080442C6 - strh r4, [r1] -_080442C6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080442CC: .4byte gUnknown_203B418 - thumb_func_end RunDungeon - - thumb_func_start xxx_dungeon_80442D0 -xxx_dungeon_80442D0: - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - bl sub_8083600 - adds r5, r0, 0 - cmp r5, 0 - beq _0804431A - bl sub_8069E8C - adds r0, r5, 0 - bl sub_8070774 - ldr r3, _08044320 - ldr r1, _08044324 - ldr r1, [r1] - movs r2, 0xCC - lsls r2, 3 - adds r1, r2 - movs r2, 0 - ldrsh r1, [r1, r2] - lsls r1, 1 - movs r2, 0x32 - muls r0, r2 - adds r1, r0 - adds r1, r3 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - beq _0804431A - ldr r0, [r5, 0x70] - movs r1, 0xA4 - lsls r1, 1 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08044328 -_0804431A: - movs r0, 0 - b _0804444E - .align 2, 0 -_08044320: .4byte gUnknown_80F6860 -_08044324: .4byte gUnknown_203B418 -_08044328: - bl sub_8083600 - adds r5, r0, 0 - cmp r5, 0 - beq _0804431A - movs r0, 0 - bl sub_807520C - lsls r0, 24 - cmp r0, 0 - bne _0804435C - ldr r0, _08044388 - ldr r1, [r0] - ldr r2, _0804438C - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08044356 - ldr r3, _08044390 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0804435C -_08044356: - movs r0, 0xC - bl sub_803E46C -_0804435C: - ldr r0, [r5, 0x70] - adds r0, 0xF8 - movs r1, 0 - strb r1, [r0] - bl sub_8044B28 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _0804431A - ldr r0, _08044388 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0xB8 - str r5, [r0] - adds r1, 0xBC - str r2, [r1] - cmp r7, 0 - beq _08044394 - movs r7, 0 - b _0804439A - .align 2, 0 -_08044388: .4byte gUnknown_203B418 -_0804438C: .4byte 0x0000066c -_08044390: .4byte 0x00000673 -_08044394: - adds r0, r5, 0 - bl sub_8074B54 -_0804439A: - bl sub_8044B28 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0804431A - adds r0, r5, 0 - bl sub_8071DA4 - ldr r6, _08044434 - ldr r1, [r6] - movs r0, 0x1 - strb r0, [r1, 0xF] - bl sub_805D8C8 - ldr r0, [r6] - strb r4, [r0, 0xF] - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0804444C - adds r0, r5, 0 - bl sub_8072CF4 - bl sub_8086AC0 - movs r0, 0 - bl sub_8043ED0 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0804444C - ldr r2, [r5, 0x70] - ldrh r1, [r2] - movs r3, 0x80 - lsls r3, 8 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08044400 - subs r3, 0x1 - adds r0, r3, 0 - ands r0, r1 - movs r3, 0x80 - lsls r3, 7 - adds r1, r3, 0 - orrs r0, r1 - strh r0, [r2] -_08044400: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0804444C - bl sub_8044454 - bl sub_8044B28 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0804444C - ldr r2, [r6] - adds r0, r2, 0 - adds r0, 0xBC - ldr r1, [r0] - cmp r1, 0 - beq _08044438 - bl sub_805F02C - ldr r0, [r6] - adds r0, 0xBC - str r4, [r0] - movs r7, 0x1 - b _08044328 - .align 2, 0 -_08044434: .4byte gUnknown_203B418 -_08044438: - ldr r0, [r5, 0x70] - adds r0, 0xF8 - ldrb r0, [r0] - cmp r0, 0 - beq _0804444C - movs r3, 0xCC - lsls r3, 3 - adds r0, r2, r3 - strh r1, [r0] - b _08044328 -_0804444C: - movs r0, 0x1 -_0804444E: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end xxx_dungeon_80442D0 - - thumb_func_start sub_8044454 -sub_8044454: - push {r4-r6,lr} - ldr r0, _080444E8 - ldr r1, [r0] - ldrb r0, [r1, 0xE] - cmp r0, 0 - beq _080444E2 - movs r0, 0 - strb r0, [r1, 0xE] - movs r6, 0 -_08044466: - ldr r0, _080444E8 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _080444EC - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080444DC - ldr r5, [r4, 0x70] - ldrh r0, [r5] - movs r2, 0x80 - lsls r2, 8 - adds r1, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _080444DC - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _080444E2 - adds r0, r4, 0 - bl sub_8074B54 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080444DC - adds r0, r4, 0 - bl sub_8071DA4 - adds r0, r4, 0 - movs r1, 0 - bl sub_8075990 - adds r0, r4, 0 - bl sub_8072CF4 - bl sub_8086AC0 - movs r0, 0 - bl sub_8043ED0 - ldrh r0, [r5] - ldr r2, _080444F0 - adds r1, r2, 0 - ands r0, r1 - movs r2, 0x80 - lsls r2, 7 - adds r1, r2, 0 - orrs r0, r1 - strh r0, [r5] -_080444DC: - adds r6, 0x1 - cmp r6, 0x13 - ble _08044466 -_080444E2: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080444E8: .4byte gUnknown_203B418 -_080444EC: .4byte 0x000135cc -_080444F0: .4byte 0x00007fff - thumb_func_end sub_8044454 - - thumb_func_start sub_80444F4 -sub_80444F4: - push {r4-r6,lr} - adds r6, r0, 0 - bl sub_8083600 - cmp r6, r0 - bne _08044566 - ldr r0, _0804456C - ldr r1, [r0] - ldrb r0, [r1, 0xE] - cmp r0, 0 - beq _08044566 - movs r0, 0 - strb r0, [r1, 0xE] - movs r5, 0 -_08044510: - ldr r0, _0804456C - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08044570 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08044560 - cmp r6, r4 - beq _08044560 - ldr r0, [r4, 0x70] - ldrh r0, [r0] - movs r2, 0x80 - lsls r2, 8 - adds r1, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _08044560 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08044566 - adds r0, r4, 0 - movs r1, 0 - bl sub_8075990 - adds r0, r4, 0 - bl sub_8072CF4 - bl sub_8086AC0 - movs r0, 0 - bl sub_8043ED0 -_08044560: - adds r5, 0x1 - cmp r5, 0x13 - ble _08044510 -_08044566: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804456C: .4byte gUnknown_203B418 -_08044570: .4byte 0x000135cc - thumb_func_end sub_80444F4 - - thumb_func_start sub_8044574 -sub_8044574: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x44 - bl sub_8083600 - mov r10, r0 - movs r7, 0 - mov r0, sp - adds r0, 0x4 - str r0, [sp, 0x40] - ldr r1, _08044634 - mov r9, r1 -_08044592: - mov r2, r9 - ldr r0, [r2] - lsls r1, r7, 2 - ldr r3, _08044638 - adds r0, r3 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080446A4 - ldr r6, [r5, 0x70] - mov r8, r6 - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _080446A4 - bl sub_8044B28 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080446AC - mov r1, r9 - ldr r0, [r1] - adds r0, 0xB8 - str r5, [r0] - bl sub_8069E8C - movs r2, 0xA2 - lsls r2, 1 - adds r0, r6, r2 - strb r4, [r0] - adds r0, r5, 0 - bl sub_8070774 - mov r3, r9 - ldr r1, [r3] - movs r2, 0xCC - lsls r2, 3 - adds r1, r2 - movs r3, 0 - ldrsh r1, [r1, r3] - lsls r1, 1 - movs r2, 0x32 - muls r0, r2 - adds r1, r0 - ldr r0, _0804463C - adds r1, r0 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _080446A4 - movs r3, 0xA4 - lsls r3, 1 - adds r0, r6, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _080446A4 - ldrh r1, [r6] - movs r2, 0x80 - lsls r2, 8 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _080446A4 - movs r3, 0x80 - lsls r3, 7 - adds r0, r3, 0 - ands r0, r1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - beq _08044644 - ldr r2, _08044640 - adds r0, r2, 0 - ands r0, r1 - strh r0, [r6] - b _080446A4 - .align 2, 0 -_08044634: .4byte gUnknown_203B418 -_08044638: .4byte 0x0001357c -_0804463C: .4byte gUnknown_80F6860 -_08044640: .4byte 0x0000bfff -_08044644: - ldr r1, _08044668 - add r1, r8 - strb r0, [r1] - adds r0, r5, 0 - bl sub_8074B54 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080446A4 - adds r0, r5, 0 - bl sub_8071DA4 - movs r4, 0 - b _0804466E - .align 2, 0 -_08044668: .4byte 0x00000145 -_0804466C: - adds r4, 0x1 -_0804466E: - cmp r4, 0x2 - bgt _080446A4 - adds r0, r5, 0 - movs r1, 0 - bl sub_8075990 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _080446A4 - adds r0, r5, 0 - bl sub_8072CF4 - lsls r0, 24 - cmp r0, 0 - beq _080446A4 - bl sub_8086AC0 - movs r0, 0 - bl sub_8043ED0 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _0804466C -_080446A4: - adds r7, 0x1 - cmp r7, 0x3 - bgt _080446AC - b _08044592 -_080446AC: - movs r0, 0 - mov r8, r0 -_080446B0: - adds r0, 0x1 - mov r9, r0 - add r2, sp, 0x8 - ldr r1, [sp, 0x40] - mov r0, sp - movs r7, 0x2 -_080446BC: - mov r3, r8 - str r3, [r0] - str r2, [r1] - adds r2, 0x8 - adds r1, 0x8 - adds r0, 0x8 - subs r7, 0x1 - cmp r7, 0 - bge _080446BC - str r3, [sp, 0x18] - str r3, [sp, 0x1C] - movs r7, 0 -_080446D4: - ldr r0, _08044710 - ldr r0, [r0] - lsls r1, r7, 2 - ldr r2, _08044714 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08044760 - ldr r1, [r4, 0x70] - movs r3, 0xA2 - lsls r3, 1 - adds r2, r1, r3 - ldrb r0, [r2] - cmp r0, 0 - beq _08044760 - ldrb r0, [r1, 0x7] - cmp r0, 0 - beq _08044718 - adds r3, 0x1 - adds r0, r1, r3 - mov r1, r8 - strb r1, [r0] - strb r1, [r2] - b _08044760 - .align 2, 0 -_08044710: .4byte gUnknown_203B418 -_08044714: .4byte 0x0001357c -_08044718: - mov r2, r10 - movs r3, 0x4 - ldrsh r1, [r2, r3] - movs r2, 0x4 - ldrsh r0, [r4, r2] - subs r2, r1, r0 - cmp r2, 0 - bge _0804472A - negs r2, r2 -_0804472A: - mov r3, r10 - movs r0, 0x6 - ldrsh r1, [r3, r0] - movs r3, 0x6 - ldrsh r0, [r4, r3] - subs r1, r0 - cmp r1, 0 - bge _0804473C - negs r1, r1 -_0804473C: - cmp r1, r2 - bge _08044742 - adds r1, r2, 0 -_08044742: - cmp r1, 0x2 - ble _08044748 - movs r1, 0x2 -_08044748: - add r3, sp, 0x20 - lsls r0, r7, 3 - adds r3, r0 - str r4, [r3] - add r2, sp, 0x24 - adds r2, r0 - lsls r1, 3 - ldr r0, [sp, 0x40] - adds r1, r0, r1 - ldr r0, [r1] - str r0, [r2] - str r3, [r1] -_08044760: - adds r7, 0x1 - cmp r7, 0x3 - ble _080446D4 - mov r5, sp - movs r6, 0 -_0804476A: - ldr r4, [r5] - cmp r4, 0 - beq _080447A0 - ldr r1, [r4, 0x70] - ldr r3, _08044814 - adds r2, r1, r3 - movs r0, 0x1 - strb r0, [r2] - movs r2, 0xA2 - lsls r2, 1 - adds r0, r1, r2 - strb r6, [r0] - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8075990 - adds r0, r4, 0 - bl sub_8072CF4 - bl sub_8086AC0 - movs r0, 0 - bl sub_8043ED0 - adds r0, r4, 0 - bl sub_80450E0 -_080447A0: - ldr r5, [r5, 0x4] - cmp r5, 0 - bne _0804476A - mov r0, r9 - cmp r0, 0x2 - ble _080446B0 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08044802 - movs r7, 0 -_080447B8: - ldr r0, _08044818 - ldr r0, [r0] - lsls r1, r7, 2 - ldr r3, _0804481C - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080447FC - ldr r0, [r4, 0x70] - movs r1, 0xA2 - lsls r1, 1 - adds r5, r0, r1 - ldrb r0, [r5] - cmp r0, 0 - beq _080447FC - adds r0, r4, 0 - bl sub_8074094 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080447FC - adds r0, r4, 0 - bl sub_8071DA4 - movs r0, 0 - strb r0, [r5] -_080447FC: - adds r7, 0x1 - cmp r7, 0x3 - ble _080447B8 -_08044802: - add sp, 0x44 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08044814: .4byte 0x00000145 -_08044818: .4byte gUnknown_203B418 -_0804481C: .4byte 0x0001357c - thumb_func_end sub_8044574 - - thumb_func_start sub_8044820 -sub_8044820: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r7, 0 - ldr r0, _08044830 - mov r8, r0 - b _080448FC - .align 2, 0 -_08044830: .4byte gUnknown_80F6860 -_08044834: - ldr r4, [r5, 0x70] - ldr r0, [r6] - adds r0, 0xB8 - str r5, [r0] - bl sub_8069E8C - ldrh r2, [r4] - movs r1, 0x80 - lsls r1, 8 - adds r0, r1, 0 - ands r0, r2 - cmp r0, 0 - bne _080448FA - movs r1, 0x80 - lsls r1, 7 - adds r0, r1, 0 - ands r0, r2 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _0804486C - ldr r1, _08044868 - adds r0, r1, 0 - ands r0, r2 - strh r0, [r4] - b _080448FA - .align 2, 0 -_08044868: .4byte 0x0000bfff -_0804486C: - movs r2, 0xA2 - lsls r2, 1 - adds r0, r4, r2 - strb r1, [r0] - adds r0, r5, 0 - bl sub_8070774 - ldr r1, [r6] - movs r2, 0xCC - lsls r2, 3 - adds r1, r2 - movs r2, 0 - ldrsh r1, [r1, r2] - lsls r1, 1 - movs r2, 0x32 - muls r0, r2 - adds r1, r0 - add r1, r8 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _080448FA - movs r1, 0xA4 - lsls r1, 1 - adds r0, r4, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080448FA - ldrh r1, [r4] - ldr r2, _08044984 - adds r0, r2, 0 - ands r1, r0 - movs r0, 0 - strh r1, [r4] - ldr r2, _08044988 - adds r1, r4, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_8074B54 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080448FA - adds r0, r5, 0 - bl sub_8071DA4 - adds r0, r5, 0 - movs r1, 0 - bl sub_8075990 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08044924 - adds r0, r5, 0 - bl sub_8072CF4 - bl sub_8086AC0 - movs r0, 0 - bl sub_8043ED0 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08044924 -_080448FA: - adds r7, 0x1 -_080448FC: - cmp r7, 0xF - bgt _08044924 - ldr r6, _0804498C - ldr r0, [r6] - lsls r1, r7, 2 - ldr r2, _08044990 - adds r0, r2 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080448FA - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08044834 -_08044924: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0804497A - movs r7, 0 -_08044930: - ldr r0, _0804498C - ldr r0, [r0] - lsls r1, r7, 2 - ldr r2, _08044990 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08044974 - ldr r0, [r4, 0x70] - movs r1, 0xA2 - lsls r1, 1 - adds r5, r0, r1 - ldrb r0, [r5] - cmp r0, 0 - beq _08044974 - adds r0, r4, 0 - bl sub_8074094 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08044974 - adds r0, r4, 0 - bl sub_8071DA4 - movs r0, 0 - strb r0, [r5] -_08044974: - adds r7, 0x1 - cmp r7, 0xF - ble _08044930 -_0804497A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08044984: .4byte 0x00003fff -_08044988: .4byte 0x00000145 -_0804498C: .4byte gUnknown_203B418 -_08044990: .4byte 0x0001358c - thumb_func_end sub_8044820 - - thumb_func_start sub_8044994 -sub_8044994: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r1, _08044A94 - ldr r4, _08044A98 - ldr r0, [r4] - movs r2, 0xCC - lsls r2, 3 - adds r0, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - lsls r0, 1 - adds r1, 0x32 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _08044A8A - bl sub_8071B48 - ldr r0, [r4] - ldr r2, _08044A9C - adds r0, r2 - movs r2, 0 - strb r2, [r0] - ldr r0, [r4] - ldr r3, _08044AA0 - adds r0, r3 - strb r2, [r0] - ldr r0, [r4] - ldr r1, _08044AA4 - adds r0, r1 - strb r2, [r0] - ldr r0, [r4] - adds r3, 0x2 - adds r0, r3 - strb r2, [r0] - ldr r0, [r4] - ldr r3, _08044AA8 - adds r1, r0, r3 - str r2, [r1] - ldr r1, _08044AAC - adds r0, r1 - movs r1, 0x2 - str r1, [r0] - mov r8, r2 - adds r7, r4, 0 -_080449F2: - ldr r0, [r7] - mov r2, r8 - lsls r1, r2, 2 - ldr r3, _08044AB0 - adds r0, r3 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08044A7A - ldr r0, [r5, 0x70] - adds r4, r0, 0 - movs r0, 0xA4 - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0 - strb r0, [r1] - ldrb r0, [r4, 0x6] - movs r6, 0x1 - cmp r0, 0 - beq _08044A24 - movs r6, 0 -_08044A24: - adds r0, r5, 0 - movs r1, 0x32 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08044A46 - ldr r1, [r7] - ldr r2, _08044AA8 - adds r0, r1, r2 - str r5, [r0] - ldr r3, _08044AAC - adds r1, r3 - adds r0, r4, 0 - adds r0, 0x98 - ldr r0, [r0] - str r0, [r1] -_08044A46: - adds r0, r5, 0 - movs r1, 0x3F - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08044A60 - ldr r0, [r7] - ldr r1, _08044AA4 - adds r0, r1 - adds r0, r6 - movs r1, 0x1 - strb r1, [r0] -_08044A60: - adds r0, r5, 0 - movs r1, 0x38 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08044A7A - ldr r0, [r7] - ldr r2, _08044A9C - adds r0, r2 - adds r0, r6 - movs r1, 0x1 - strb r1, [r0] -_08044A7A: - movs r3, 0x1 - add r8, r3 - mov r0, r8 - cmp r0, 0x13 - ble _080449F2 - movs r0, 0 - bl sub_8043ED0 -_08044A8A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08044A94: .4byte gUnknown_80F6860 -_08044A98: .4byte gUnknown_203B418 -_08044A9C: .4byte 0x000037f8 -_08044AA0: .4byte 0x000037f9 -_08044AA4: .4byte 0x000037fa -_08044AA8: .4byte 0x00017b2c -_08044AAC: .4byte 0x00017b38 -_08044AB0: .4byte 0x000135cc - thumb_func_end sub_8044994 - - thumb_func_start sub_8044AB4 -sub_8044AB4: - push {r4,lr} - ldr r1, _08044ADC - ldr r0, _08044AE0 - ldr r0, [r0] - movs r2, 0xCC - lsls r2, 3 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r0, 0x1 - lsls r0, 1 - adds r1, 0x32 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _08044B1A - movs r4, 0 - b _08044AE6 - .align 2, 0 -_08044ADC: .4byte gUnknown_80F6860 -_08044AE0: .4byte gUnknown_203B418 -_08044AE4: - adds r4, 0x1 -_08044AE6: - cmp r4, 0x13 - bgt _08044B08 - ldr r0, _08044B20 - ldr r0, [r0] - lsls r1, r4, 2 - ldr r2, _08044B24 - adds r0, r2 - adds r0, r1 - ldr r0, [r0] - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08044AE4 - movs r0, 0 - bl sub_807520C -_08044B08: - movs r0, 0x1 - movs r1, 0 - bl sub_807EAA0 - bl sub_8086AC0 - movs r0, 0 - bl sub_8043ED0 -_08044B1A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08044B20: .4byte gUnknown_203B418 -_08044B24: .4byte 0x000135cc - thumb_func_end sub_8044AB4 - - thumb_func_start sub_8044B28 -sub_8044B28: - push {r4,lr} - ldr r4, _08044B48 - ldr r0, [r4] - ldrb r0, [r0, 0x4] - cmp r0, 0 - bne _08044B76 - bl sub_8083600 - cmp r0, 0 - bne _08044B50 - ldr r0, [r4] - ldr r1, _08044B4C - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - b _08044B76 - .align 2, 0 -_08044B48: .4byte gUnknown_203B418 -_08044B4C: .4byte 0x00000654 -_08044B50: - ldr r0, [r4] - ldrb r2, [r0, 0x2] - cmp r2, 0x1 - bne _08044B68 - ldr r2, _08044B64 - adds r1, r0, r2 - movs r0, 0x2 - strb r0, [r1] - b _08044B76 - .align 2, 0 -_08044B64: .4byte 0x00000654 -_08044B68: - cmp r2, 0x2 - beq _08044B70 - movs r0, 0 - b _08044B78 -_08044B70: - ldr r1, _08044B80 - adds r0, r1 - strb r2, [r0] -_08044B76: - movs r0, 0x1 -_08044B78: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08044B80: .4byte 0x00000654 - thumb_func_end sub_8044B28 - - thumb_func_start sub_8044B84 -sub_8044B84: - push {lr} - ldr r0, _08044B9C - ldr r0, [r0] - ldrb r0, [r0, 0x10] - cmp r0, 0 - bne _08044BA0 - bl sub_8044B28 - lsls r0, 24 - lsrs r0, 24 - b _08044BA2 - .align 2, 0 -_08044B9C: .4byte gUnknown_203B418 -_08044BA0: - movs r0, 0x1 -_08044BA2: - pop {r1} - bx r1 - thumb_func_end sub_8044B84 - - thumb_func_start sub_8044BA8 -sub_8044BA8: - push {r4,r5,lr} - lsls r0, 16 - lsrs r4, r0, 16 - lsls r1, 24 - lsrs r5, r1, 24 - cmp r4, 0x26 - bne _08044BCC - bl sub_8043D10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08044BCC - ldr r0, _08044BC8 - b _08044C02 - .align 2, 0 -_08044BC8: .4byte gUnknown_80F91EC -_08044BCC: - ldr r1, _08044BEC - lsls r0, r4, 3 - adds r4, r0, r1 - ldr r0, [r4] - ldr r1, _08044BF0 - bl strcmp - cmp r0, 0 - beq _08044BE0 - movs r0, 0x1 -_08044BE0: - lsls r0, 24 - cmp r0, 0 - beq _08044BF4 - ldr r0, [r4] - b _08044C04 - .align 2, 0 -_08044BEC: .4byte gUnknown_80F7C50 -_08044BF0: .4byte gUnknown_80F697C -_08044BF4: - ldr r4, _08044C0C - adds r0, r5, 0 - bl sub_8090D6C - lsls r0, 3 - adds r4, 0x4 - adds r0, r4 -_08044C02: - ldr r0, [r0] -_08044C04: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08044C0C: .4byte gUnknown_80F7B14 - thumb_func_end sub_8044BA8 - - thumb_func_start sub_8044C10 -sub_8044C10: - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8083654 - adds r2, r0, 0 - adds r1, r2, 0 - adds r1, 0x44 - movs r3, 0 - movs r0, 0 - strh r0, [r1] - cmp r4, 0 - beq _08044C44 - adds r0, r2, 0 - adds r0, 0x48 - strb r3, [r0] - adds r0, 0x8 - strb r3, [r0] - adds r1, 0x14 - ldr r0, _08044C4C - strh r0, [r1] - adds r1, 0x2 - movs r0, 0x1 - negs r0, r0 - strh r0, [r1] -_08044C44: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08044C4C: .4byte 0x0000ffff - thumb_func_end sub_8044C10 - - thumb_func_start sub_8044C50 -sub_8044C50: - push {r4,lr} - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - bl sub_8083654 - adds r2, r0, 0 - adds r0, 0x44 - movs r1, 0 - strh r4, [r0] - adds r0, 0x4 - strb r1, [r0] - adds r0, 0x8 - strb r1, [r0] - adds r1, r2, 0 - adds r1, 0x58 - ldr r0, _08044C84 - strh r0, [r1] - adds r1, 0x2 - movs r0, 0x1 - negs r0, r0 - strh r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08044C84: .4byte 0x0000ffff - thumb_func_end sub_8044C50 - - thumb_func_start sub_8044C88 -sub_8044C88: - movs r2, 0 - movs r1, 0 - strh r1, [r0] - strb r2, [r0, 0x4] - strb r2, [r0, 0xC] - bx lr - thumb_func_end sub_8044C88 - - thumb_func_start sub_8044C94 -sub_8044C94: - movs r2, 0 - strh r1, [r0] - strb r2, [r0, 0x4] - strb r2, [r0, 0xC] - bx lr - thumb_func_end sub_8044C94 - - thumb_func_start sub_8044CA0 -sub_8044CA0: - push {r4,lr} - adds r4, r0, 0 - lsls r0, r1, 16 - asrs r0, 16 - bl sub_808DB48 - lsls r0, 24 - cmp r0, 0 - beq _08044CB6 - movs r0, 0x2 - b _08044CB8 -_08044CB6: - movs r0, 0x1 -_08044CB8: - strh r0, [r4] - movs r0, 0 - strb r0, [r4, 0x4] - strb r0, [r4, 0xC] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8044CA0 - - thumb_func_start sub_8044CC8 -sub_8044CC8: - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - ldrb r1, [r2] - subs r0, r1, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bhi _08044CEC - ldr r0, _08044CE8 - ldrb r1, [r2] - lsls r1, 2 - subs r1, 0x4 - ldr r0, [r0] - adds r0, r1 - b _08044D34 - .align 2, 0 -_08044CE8: .4byte gUnknown_203B460 -_08044CEC: - adds r0, r1, 0 - cmp r0, 0x80 - bne _08044D06 - movs r1, 0x4 - ldrsh r0, [r2, r1] - movs r3, 0x6 - ldrsh r1, [r2, r3] - bl sub_804954C - ldr r0, [r0, 0x14] - bl sub_8045108 - b _08044D34 -_08044D06: - cmp r0, 0x81 - bne _08044D0E - ldr r0, [r3, 0x70] - b _08044D32 -_08044D0E: - adds r0, r1, 0 - adds r0, 0x70 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bls _08044D1E - movs r0, 0 - b _08044D34 -_08044D1E: - ldr r0, _08044D38 - ldr r1, [r0] - ldrb r0, [r2] - subs r0, 0x90 - lsls r0, 2 - ldr r2, _08044D3C - adds r1, r2 - adds r1, r0 - ldr r0, [r1] - ldr r0, [r0, 0x70] -_08044D32: - adds r0, 0x60 -_08044D34: - pop {r1} - bx r1 - .align 2, 0 -_08044D38: .4byte gUnknown_203B418 -_08044D3C: .4byte 0x0001357c - thumb_func_end sub_8044CC8 - - thumb_func_start sub_8044D40 -sub_8044D40: - push {lr} - lsls r1, 3 - adds r1, 0x4 - adds r2, r0, r1 - ldrb r1, [r2] - subs r0, r1, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bhi _08044D74 - ldr r1, _08044D70 - ldrb r0, [r2] - lsls r0, 2 - subs r0, 0x4 - ldr r1, [r1] - adds r1, r0 - movs r0, 0 - strb r0, [r1, 0x2] - strb r0, [r1, 0x1] - strb r0, [r1] - bl sub_80910B4 - b _08044D88 - .align 2, 0 -_08044D70: .4byte gUnknown_203B460 -_08044D74: - lsls r0, r1, 24 - lsrs r0, 24 - cmp r0, 0x80 - beq _08044D80 - movs r0, 0 - b _08044D8A -_08044D80: - adds r0, r2, 0x4 - movs r1, 0x1 - bl sub_80461C8 -_08044D88: - movs r0, 0x1 -_08044D8A: - pop {r1} - bx r1 - thumb_func_end sub_8044D40 - - thumb_func_start sub_8044D90 -sub_8044D90: - push {lr} - ldr r3, [r0, 0x70] - lsls r1, 3 - adds r1, 0x48 - adds r3, r1 - adds r1, r3, 0 - bl sub_8044CC8 - pop {r1} - bx r1 - thumb_func_end sub_8044D90 - - thumb_func_start sub_8044DA4 -sub_8044DA4: - ldr r0, [r0, 0x70] - ldr r2, _08044DC0 - ldr r2, [r2] - lsls r1, 3 - adds r0, r1 - adds r0, 0x48 - ldrb r0, [r0] - lsls r0, 2 - ldr r1, _08044DC4 - adds r2, r1 - adds r2, r0 - ldr r0, [r2] - bx lr - .align 2, 0 -_08044DC0: .4byte gUnknown_203B418 -_08044DC4: .4byte 0x0001357c - thumb_func_end sub_8044DA4 - - thumb_func_start sub_8044DC8 -sub_8044DC8: - push {r4,lr} - adds r1, r0, 0 - ldrb r0, [r1, 0x2] - cmp r0, 0xE9 - beq _08044DE8 - ldr r4, _08044DE4 - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 23 - adds r0, r4 - ldrh r0, [r0] - b _08044DEA - .align 2, 0 -_08044DE4: .4byte gUnknown_80F6964 -_08044DE8: - movs r0, 0x35 -_08044DEA: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8044DC8 - - thumb_func_start sub_8044DF0 -sub_8044DF0: - push {r4,lr} - ldr r4, [r0, 0x70] - bl sub_8044D90 - adds r1, r0, 0 - adds r0, r4, 0 - adds r0, 0x48 - ldrb r0, [r0] - cmp r0, 0x80 - bne _08044E10 - adds r0, r4, 0 - adds r0, 0x4C - movs r1, 0x1 - bl sub_80461C8 - b _08044E1C -_08044E10: - movs r0, 0 - strb r0, [r1, 0x2] - strb r0, [r1, 0x1] - strb r0, [r1] - bl sub_80910B4 -_08044E1C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8044DF0 - - thumb_func_start sub_8044E24 -sub_8044E24: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r6, r1, 0 - adds r7, r2, 0 - bl sub_8044D90 - adds r5, r0, 0 - ldr r0, [r4, 0x70] - mov r8, r0 - ldrb r0, [r5, 0x2] - bl sub_80915A0 - lsls r0, 24 - cmp r0, 0 - bne _08044EBA - ldrb r0, [r5, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _08044EB0 - lsls r1, r6, 3 - mov r2, r8 - adds r0, r2, r1 - adds r0, 0x48 - ldrb r0, [r0] - cmp r0, 0x80 - bne _08044EA4 - ldr r0, [r5] - str r0, [sp] - adds r4, r1, r2 - adds r4, 0x4C - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80461C8 - ldrb r1, [r5, 0x2] - subs r1, 0x7D - lsls r1, 24 - lsrs r1, 16 - ldr r2, _08044E9C - ldr r0, [sp] - ands r0, r2 - orrs r0, r1 - ldr r1, _08044EA0 - ands r0, r1 - movs r1, 0xF8 - lsls r1, 15 - orrs r0, r1 - str r0, [sp] - adds r0, r4, 0 - mov r1, sp - movs r2, 0x1 - bl sub_80460F8 - b _08044EBA - .align 2, 0 -_08044E9C: .4byte 0xffff00ff -_08044EA0: .4byte 0xff00ffff -_08044EA4: - ldrb r0, [r5, 0x2] - subs r0, 0x7D - strb r0, [r5, 0x1] - movs r0, 0x7C - strb r0, [r5, 0x2] - b _08044EBA -_08044EB0: - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r7, 0 - bl sub_8044DF0 -_08044EBA: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8044E24 - - thumb_func_start sub_8044EC8 -sub_8044EC8: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r1, _08044EE8 - lsls r0, r5, 2 - adds r0, r1 - ldrh r4, [r0] - cmp r4, 0x26 - bne _08044EF0 - bl sub_8043D10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08044EF0 - ldr r0, _08044EEC - b _08044F2C - .align 2, 0 -_08044EE8: .4byte gUnknown_202EE44 -_08044EEC: .4byte gUnknown_80F91EC -_08044EF0: - ldr r1, _08044F10 - lsls r0, r4, 3 - adds r4, r0, r1 - ldr r0, [r4] - ldr r1, _08044F14 - bl strcmp - cmp r0, 0 - beq _08044F04 - movs r0, 0x1 -_08044F04: - lsls r0, 24 - cmp r0, 0 - beq _08044F18 - ldr r0, [r4] - b _08044F2E - .align 2, 0 -_08044F10: .4byte gUnknown_80F7C50 -_08044F14: .4byte gUnknown_80F697C -_08044F18: - ldr r4, _08044F34 - ldr r1, _08044F38 - lsls r0, r5, 2 - adds r0, r1 - ldrb r0, [r0, 0x2] - bl sub_8090D6C - lsls r0, 3 - adds r4, 0x4 - adds r0, r4 -_08044F2C: - ldr r0, [r0] -_08044F2E: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08044F34: .4byte gUnknown_80F7B14 -_08044F38: .4byte gUnknown_202EE44 - thumb_func_end sub_8044EC8 - - thumb_func_start sub_8044F3C -sub_8044F3C: - push {lr} - adds r1, r0, 0 - cmp r1, 0 - blt _08044F54 - ldr r0, _08044F50 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x3] - b _08044F56 - .align 2, 0 -_08044F50: .4byte gUnknown_202EE44 -_08044F54: - movs r0, 0 -_08044F56: - pop {r1} - bx r1 - thumb_func_end sub_8044F3C - - thumb_func_start sub_8044F5C -sub_8044F5C: - push {r4-r7,lr} - lsls r0, 16 - lsrs r4, r0, 16 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r0, _08044FAC - ldr r2, [r0] - adds r6, r0, 0 - cmp r2, 0x9 - bgt _08044FA4 - movs r3, 0 - ldr r5, _08044FB0 - cmp r3, r2 - bge _08044F8A - adds r1, r2, 0 - adds r2, r5, 0 -_08044F7C: - ldrh r0, [r2] - cmp r0, r4 - beq _08044FA4 - adds r2, 0x4 - adds r3, 0x1 - cmp r3, r1 - blt _08044F7C -_08044F8A: - ldr r0, [r6] - lsls r0, 2 - adds r0, r5 - strh r4, [r0] - strb r7, [r0, 0x2] - ldr r0, [r6] - lsls r0, 2 - adds r0, r5 - movs r1, 0x1 - strb r1, [r0, 0x3] - ldr r0, [r6] - adds r0, 0x1 - str r0, [r6] -_08044FA4: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08044FAC: .4byte gUnknown_202EE6C -_08044FB0: .4byte gUnknown_202EE44 - thumb_func_end sub_8044F5C - - thumb_func_start sub_8044FB4 -sub_8044FB4: - push {r4,lr} - lsls r0, 16 - lsrs r4, r0, 16 - movs r1, 0 - ldr r0, _08044FD4 - ldr r0, [r0] - cmp r1, r0 - bge _08044FE4 - adds r3, r0, 0 - ldr r2, _08044FD8 -_08044FC8: - ldrh r0, [r2] - cmp r0, r4 - bne _08044FDC - adds r0, r1, 0 - b _08044FE8 - .align 2, 0 -_08044FD4: .4byte gUnknown_202EE6C -_08044FD8: .4byte gUnknown_202EE44 -_08044FDC: - adds r2, 0x4 - adds r1, 0x1 - cmp r1, r3 - blt _08044FC8 -_08044FE4: - movs r0, 0x1 - negs r0, r0 -_08044FE8: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8044FB4 - - thumb_func_start sub_8044FF0 -sub_8044FF0: - push {r4,r5,lr} - lsls r0, 16 - lsrs r3, r0, 16 - movs r2, 0 - ldr r1, _08045010 - ldr r0, [r1] - cmp r2, r0 - bge _08045022 - movs r5, 0 - adds r4, r1, 0 - ldr r1, _08045014 -_08045006: - ldrh r0, [r1] - cmp r0, r3 - bne _08045018 - strb r5, [r1, 0x3] - b _08045022 - .align 2, 0 -_08045010: .4byte gUnknown_202EE6C -_08045014: .4byte gUnknown_202EE44 -_08045018: - adds r1, 0x4 - adds r2, 0x1 - ldr r0, [r4] - cmp r2, r0 - blt _08045006 -_08045022: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8044FF0 - - thumb_func_start sub_8045028 -sub_8045028: - push {r4,lr} - adds r2, r0, 0 - lsls r1, 24 - ldr r0, [r2, 0x70] - adds r4, r0, 0 - adds r4, 0x44 - cmp r1, 0 - beq _08045044 - adds r0, r2, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0804505A -_08045044: - ldrh r0, [r4] - cmp r0, 0 - beq _0804505A - cmp r0, 0x2 - beq _0804505A - cmp r0, 0x1 - beq _0804505A - cmp r0, 0x5 - beq _0804505A - movs r0, 0 - b _0804505C -_0804505A: - movs r0, 0x1 -_0804505C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8045028 - - thumb_func_start sub_8045064 -sub_8045064: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r1, 0 - ldr r0, _080450D4 - mov r8, r0 - ldr r0, [r0] - cmp r1, r0 - bge _080450C8 - mov r7, r8 - ldr r2, _080450D8 - mov r9, r2 - ldr r0, _080450DC - mov r12, r0 -_08045082: - adds r4, r1, 0x1 - ldr r0, [r7] - adds r5, r4, 0 - cmp r5, r0 - bge _080450BE - lsls r0, r1, 2 - mov r1, r12 - adds r3, r0, r1 - mov r6, r9 - lsls r0, r5, 2 - adds r2, r0, r1 -_08045098: - ldrh r1, [r3] - lsls r1, 3 - adds r1, r6 - ldrh r0, [r2] - lsls r0, 3 - adds r0, r6 - ldr r1, [r1] - ldr r0, [r0] - cmp r1, r0 - ble _080450B4 - ldr r1, [r3] - ldr r0, [r2] - str r0, [r3] - str r1, [r2] -_080450B4: - adds r2, 0x4 - adds r4, 0x1 - ldr r0, [r7] - cmp r4, r0 - blt _08045098 -_080450BE: - adds r1, r5, 0 - mov r2, r8 - ldr r0, [r2] - cmp r1, r0 - blt _08045082 -_080450C8: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080450D4: .4byte gUnknown_202EE6C -_080450D8: .4byte gUnknown_80F7C54 -_080450DC: .4byte gUnknown_202EE44 - thumb_func_end sub_8045064 - - thumb_func_start sub_80450E0 -sub_80450E0: - push {lr} - cmp r0, 0 - bne _080450EA - movs r0, 0 - b _080450F2 -_080450EA: - ldr r0, [r0] - cmp r0, 0 - beq _080450F2 - movs r0, 0x1 -_080450F2: - pop {r1} - bx r1 - thumb_func_end sub_80450E0 - - thumb_func_start sub_80450F8 -sub_80450F8: - ldr r0, [r0] - bx lr - thumb_func_end sub_80450F8 - - thumb_func_start sub_80450FC -sub_80450FC: - adds r0, 0x25 - ldrb r0, [r0] - bx lr - thumb_func_end sub_80450FC - - thumb_func_start sub_8045104 -sub_8045104: - ldr r0, [r0, 0x70] - bx lr - thumb_func_end sub_8045104 - - thumb_func_start sub_8045108 -sub_8045108: - ldr r0, [r0, 0x70] - bx lr - thumb_func_end sub_8045108 - - thumb_func_start sub_804510C -sub_804510C: - ldr r0, [r0, 0x70] - bx lr - thumb_func_end sub_804510C - - thumb_func_start sub_8045110 -sub_8045110: - ldr r0, [r0, 0x70] - bx lr - thumb_func_end sub_8045110 - - thumb_func_start sub_8045114 -sub_8045114: - push {lr} - movs r1, 0x4 - ldrsh r2, [r0, r1] - movs r3, 0x6 - ldrsh r1, [r0, r3] - adds r0, r2, 0 - bl sub_804954C - pop {r1} - bx r1 - thumb_func_end sub_8045114 - - thumb_func_start sub_8045128 -sub_8045128: - push {lr} - movs r1, 0x4 - ldrsh r2, [r0, r1] - movs r3, 0x6 - ldrsh r1, [r0, r3] - adds r0, r2, 0 - bl sub_8049590 - pop {r1} - bx r1 - thumb_func_end sub_8045128 - - thumb_func_start sub_804513C -sub_804513C: - push {r4-r7,lr} - movs r3, 0 - ldr r7, _080451FC - ldr r6, _08045200 - ldr r4, _08045204 - movs r5, 0 -_08045148: - ldr r0, [r7] - lsls r2, r3, 2 - adds r1, r0, r6 - adds r1, r2 - adds r0, r4 - str r0, [r1] - str r5, [r0] - adds r4, 0x74 - adds r3, 0x1 - cmp r3, 0x3 - ble _08045148 - ldr r1, _08045208 - movs r2, 0 - adds r0, r1, 0x5 -_08045164: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _08045164 - movs r3, 0 - ldr r7, _080451FC - ldr r6, _0804520C - ldr r4, _08045210 - movs r5, 0 -_08045176: - ldr r0, [r7] - lsls r2, r3, 2 - adds r1, r0, r6 - adds r1, r2 - adds r0, r4 - str r0, [r1] - str r5, [r0] - adds r4, 0x74 - adds r3, 0x1 - cmp r3, 0xF - ble _08045176 - ldr r1, _08045214 - movs r2, 0 - adds r0, r1, 0 - adds r0, 0xF -_08045194: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _08045194 - movs r3, 0 - ldr r5, _080451FC - ldr r4, _08045218 - movs r2, 0 -_080451A4: - ldr r0, [r5] - lsls r1, r3, 2 - adds r0, r4 - adds r0, r1 - str r2, [r0] - adds r3, 0x1 - cmp r3, 0x13 - ble _080451A4 - movs r3, 0 - ldr r7, _080451FC - ldr r6, _0804521C - ldr r4, _08045220 - movs r5, 0 -_080451BE: - ldr r0, [r7] - lsls r2, r3, 2 - adds r1, r0, r6 - adds r1, r2 - adds r0, r4 - str r0, [r1] - str r5, [r0] - adds r4, 0x74 - adds r3, 0x1 - cmp r3, 0x3F - ble _080451BE - movs r3, 0 - ldr r7, _080451FC - ldr r6, _08045224 - ldr r4, _08045228 - movs r5, 0 -_080451DE: - ldr r0, [r7] - lsls r2, r3, 2 - adds r1, r0, r6 - adds r1, r2 - adds r0, r4 - str r0, [r1] - str r5, [r0] - adds r4, 0x74 - adds r3, 0x1 - cmp r3, 0x3F - ble _080451DE - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080451FC: .4byte gUnknown_203B418 -_08045200: .4byte 0x0001357c -_08045204: .4byte 0x0001381c -_08045208: .4byte gUnknown_202EE70 -_0804520C: .4byte 0x0001358c -_08045210: .4byte 0x000139ec -_08045214: .4byte gUnknown_202EE76 -_08045218: .4byte 0x000135cc -_0804521C: .4byte 0x0001361c -_08045220: .4byte 0x0001412c -_08045224: .4byte 0x0001371c -_08045228: .4byte 0x00015e2c - thumb_func_end sub_804513C - - thumb_func_start sub_804522C -sub_804522C: - push {r4-r7,lr} - sub sp, 0x4 - ldr r2, _08045274 - ldr r0, [r2] - ldr r3, _08045278 - adds r1, r0, r3 - ldrb r7, [r1] - ldr r1, _0804527C - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080452AA - movs r6, 0 - adds r7, r2, 0 -_08045248: - ldr r0, [r7] - lsls r1, r6, 2 - ldr r2, _08045280 - adds r0, r2 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080452A2 - ldr r0, [r7] - ldr r3, _08045284 - adds r0, r3 - ldr r0, [r0] - cmp r5, r0 - bne _08045288 - adds r0, r5, 0 - bl sub_806C51C - b _080452A2 - .align 2, 0 -_08045274: .4byte gUnknown_203B418 -_08045278: .4byte 0x00018210 -_0804527C: .4byte 0x0001820a -_08045280: .4byte 0x000135cc -_08045284: .4byte 0x000181f8 -_08045288: - ldr r4, [r5, 0x70] - adds r0, r5, 0 - bl sub_804187C - adds r2, r0, 0 - adds r0, r4, 0 - adds r0, 0x98 - ldr r0, [r0] - movs r3, 0x4 - ldrsh r1, [r4, r3] - movs r3, 0 - bl sub_800F75C -_080452A2: - adds r6, 0x1 - cmp r6, 0x13 - ble _08045248 - b _0804533E -_080452AA: - movs r6, 0 -_080452AC: - ldr r0, _08045348 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0804534C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080452CC - adds r0, r4, 0 - bl sub_806C51C -_080452CC: - adds r6, 0x1 - cmp r6, 0x3 - ble _080452AC - movs r6, 0 -_080452D4: - ldr r5, _08045348 - ldr r0, [r5] - lsls r1, r6, 2 - ldr r3, _08045350 - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080452F4 - adds r0, r4, 0 - bl sub_806C51C -_080452F4: - adds r6, 0x1 - cmp r6, 0xF - ble _080452D4 - movs r6, 0 - ldr r0, [r5] - ldr r1, _08045354 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r6, r0 - bge _08045336 - adds r4, r5, 0 -_0804530C: - ldr r0, [r4] - lsls r1, r6, 2 - ldr r3, _08045358 - adds r0, r3 - adds r0, r1 - ldr r0, [r0] - movs r1, 0 - str r1, [sp] - adds r1, r7, 0 - movs r2, 0x1 - movs r3, 0xFF - bl sub_80462AC - adds r6, 0x1 - ldr r0, [r4] - ldr r1, _08045354 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r6, r0 - blt _0804530C -_08045336: - cmp r7, 0 - beq _0804533E - bl sub_807FA9C -_0804533E: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08045348: .4byte gUnknown_203B418 -_0804534C: .4byte 0x0001357c -_08045350: .4byte 0x0001358c -_08045354: .4byte 0x00003904 -_08045358: .4byte 0x0001361c - thumb_func_end sub_804522C - - thumb_func_start sub_804535C -sub_804535C: - push {lr} - adds r2, r0, 0 - cmp r1, 0 - beq _0804536C - ldr r0, [r1] - str r0, [r2, 0xC] - ldr r0, [r1, 0x4] - b _0804538E -_0804536C: - movs r0, 0x4 - ldrsh r1, [r2, r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r1, 0xC0 - lsls r1, 4 - adds r0, r1 - str r0, [r2, 0xC] - movs r0, 0x6 - ldrsh r1, [r2, r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r1, 0x80 - lsls r1, 5 - adds r0, r1 -_0804538E: - str r0, [r2, 0x10] - pop {r0} - bx r0 - thumb_func_end sub_804535C - - thumb_func_start sub_8045394 -sub_8045394: - str r1, [r0, 0xC] - str r2, [r0, 0x10] - bx lr - thumb_func_end sub_8045394 - - thumb_func_start sub_804539C -sub_804539C: - ldr r3, [r0, 0xC] - adds r3, r1 - str r3, [r0, 0xC] - ldr r1, [r0, 0x10] - adds r1, r2 - str r1, [r0, 0x10] - bx lr - thumb_func_end sub_804539C - - thumb_func_start sub_80453AC -sub_80453AC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - movs r0, 0x1 - negs r0, r0 - mov r9, r0 - mov r0, r8 - bl sub_808DACC - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - movs r0, 0x6 - subs r3, r0, r6 - ldr r4, _080453D8 - b _080453DE - .align 2, 0 -_080453D8: .4byte gUnknown_202EE70 -_080453DC: - adds r5, 0x1 -_080453DE: - cmp r5, r3 - bgt _08045400 - movs r2, 0 - cmp r2, r6 - bge _080453FA - adds r1, r5, r4 - b _080453F4 -_080453EC: - adds r1, 0x1 - adds r2, 0x1 - cmp r2, r6 - bge _080453FA -_080453F4: - ldrb r0, [r1] - cmp r0, 0 - beq _080453EC -_080453FA: - cmp r2, r6 - bne _080453DC - mov r9, r5 -_08045400: - movs r0, 0x1 - negs r0, r0 - cmp r9, r0 - beq _080454FC - movs r5, 0 - ldr r7, _080454DC -_0804540C: - ldr r1, _080454E0 - ldr r0, [r1] - lsls r1, r5, 2 - ldr r2, _080454E4 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - cmp r0, 0 - bne _080454F0 - movs r0, 0x1 - str r0, [r4] - adds r0, r4, 0 - adds r0, 0x24 - strb r5, [r0] - ldr r1, _080454E0 - ldr r0, [r1] - adds r0, r7 - str r0, [r4, 0x70] - mov r2, r8 - strh r2, [r0, 0x2] - movs r0, 0 - mov r1, r8 - bl sub_8069F54 - ldr r1, [r4, 0x70] - strh r0, [r1, 0x4] - ldr r0, [r4, 0x70] - movs r5, 0 - strb r5, [r0, 0x6] - movs r0, 0 - mov r1, r8 - bl sub_8069F54 - lsls r0, 16 - asrs r0, 16 - bl sub_80687D0 - str r0, [r4, 0x64] - mov r1, r9 - lsls r0, r1, 4 - adds r0, 0x40 - adds r1, r4, 0 - adds r1, 0x68 - strh r0, [r1] - adds r1, 0x2 - movs r0, 0x7 - strb r0, [r1] - adds r0, r4, 0 - adds r0, 0x6C - movs r2, 0 - strb r2, [r0] - adds r1, 0x1 - movs r0, 0xFF - strb r0, [r1] - adds r0, r4, 0 - adds r0, 0x6D - movs r5, 0x1 - strb r5, [r0] - adds r0, 0x2 - strb r5, [r0] - mov r0, r10 - str r0, [r4, 0x1C] - bl sub_8045ACC - ldr r0, [r4, 0x70] - ldr r1, _080454E8 - adds r0, r1 - mov r2, r9 - strb r2, [r0] - ldr r0, [r4, 0x70] - movs r5, 0xB4 - lsls r5, 1 - adds r0, r5 - strb r6, [r0] - cmp r6, 0 - beq _080454C6 - ldr r3, _080454EC - movs r2, 0x1 - adds r1, r6, 0 -_080454B6: - mov r5, r9 - adds r0, r5, r3 - strb r2, [r0] - movs r0, 0x1 - add r9, r0 - subs r1, 0x1 - cmp r1, 0 - bne _080454B6 -_080454C6: - ldr r1, _080454E0 - ldr r0, [r1] - movs r2, 0xCD - lsls r2, 3 - adds r0, r2 - ldrh r2, [r0] - adds r1, r2, 0x1 - strh r1, [r0] - strh r2, [r4, 0x26] - adds r0, r4, 0 - b _080454FE - .align 2, 0 -_080454DC: .4byte 0x0000069c -_080454E0: .4byte gUnknown_203B418 -_080454E4: .4byte 0x0001357c -_080454E8: .4byte 0x00000167 -_080454EC: .4byte gUnknown_202EE70 -_080454F0: - movs r0, 0x82 - lsls r0, 2 - adds r7, r0 - adds r5, 0x1 - cmp r5, 0x3 - ble _0804540C -_080454FC: - movs r0, 0 -_080454FE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80453AC - - thumb_func_start sub_804550C -sub_804550C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - movs r0, 0x1 - negs r0, r0 - mov r9, r0 - mov r0, r8 - bl sub_808DACC - lsls r0, 24 - lsrs r7, r0, 24 - movs r5, 0 - movs r0, 0x10 - subs r3, r0, r7 - ldr r4, _08045538 - b _0804553E - .align 2, 0 -_08045538: .4byte gUnknown_202EE76 -_0804553C: - adds r5, 0x1 -_0804553E: - cmp r5, r3 - bgt _08045560 - movs r2, 0 - cmp r2, r7 - bge _0804555A - adds r1, r5, r4 - b _08045554 -_0804554C: - adds r1, 0x1 - adds r2, 0x1 - cmp r2, r7 - bge _0804555A -_08045554: - ldrb r0, [r1] - cmp r0, 0 - beq _0804554C -_0804555A: - cmp r2, r7 - bne _0804553C - mov r9, r5 -_08045560: - movs r0, 0x1 - negs r0, r0 - cmp r9, r0 - bne _0804556A - b _08045670 -_0804556A: - movs r5, 0 - movs r1, 0x1 - mov r10, r1 - ldr r2, _08045650 - mov r3, r9 - lsls r0, r3, 4 - adds r0, 0xA0 - str r0, [sp] -_0804557A: - ldr r1, _08045654 - ldr r0, [r1] - lsls r1, r5, 2 - ldr r3, _08045658 - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - str r2, [sp, 0x4] - bl sub_80450E0 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r2, [sp, 0x4] - cmp r6, 0 - bne _08045664 - mov r0, r10 - str r0, [r4] - adds r0, r4, 0 - adds r0, 0x24 - strb r5, [r0] - subs r0, 0x2 - strb r6, [r0] - ldr r1, _08045654 - ldr r0, [r1] - adds r0, r2 - str r0, [r4, 0x70] - mov r2, r8 - strh r2, [r0, 0x2] - movs r0, 0 - mov r1, r8 - bl sub_8069F54 - ldr r1, [r4, 0x70] - strh r0, [r1, 0x4] - ldr r0, [r4, 0x70] - mov r3, r10 - strb r3, [r0, 0x6] - movs r0, 0 - mov r1, r8 - bl sub_8069F54 - lsls r0, 16 - asrs r0, 16 - bl sub_80687D0 - str r0, [r4, 0x64] - adds r0, r4, 0 - adds r0, 0x68 - mov r5, sp - ldrh r5, [r5] - strh r5, [r0] - adds r1, r4, 0 - adds r1, 0x6A - movs r0, 0x7 - strb r0, [r1] - adds r0, r4, 0 - adds r0, 0x6C - movs r1, 0 - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x6B - movs r0, 0xFF - strb r0, [r1] - adds r0, r4, 0 - adds r0, 0x6D - mov r2, r10 - strb r2, [r0] - adds r0, 0x2 - strb r2, [r0] - str r6, [r4, 0x1C] - ldr r0, [r4, 0x70] - ldr r3, _0804565C - adds r0, r3 - mov r5, r9 - strb r5, [r0] - ldr r0, [r4, 0x70] - movs r1, 0xB4 - lsls r1, 1 - adds r0, r1 - strb r7, [r0] - cmp r7, 0 - beq _08045636 - ldr r3, _08045660 - movs r2, 0x1 - adds r1, r7, 0 -_08045626: - mov r5, r9 - adds r0, r5, r3 - strb r2, [r0] - movs r0, 0x1 - add r9, r0 - subs r1, 0x1 - cmp r1, 0 - bne _08045626 -_08045636: - bl sub_8045ACC - ldr r1, _08045654 - ldr r0, [r1] - movs r2, 0xCD - lsls r2, 3 - adds r0, r2 - ldrh r2, [r0] - adds r1, r2, 0x1 - strh r1, [r0] - strh r2, [r4, 0x26] - adds r0, r4, 0 - b _08045672 - .align 2, 0 -_08045650: .4byte 0x00000ebc -_08045654: .4byte gUnknown_203B418 -_08045658: .4byte 0x0001358c -_0804565C: .4byte 0x00000167 -_08045660: .4byte gUnknown_202EE76 -_08045664: - movs r3, 0x82 - lsls r3, 2 - adds r2, r3 - adds r5, 0x1 - cmp r5, 0xF - ble _0804557A -_08045670: - movs r0, 0 -_08045672: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_804550C - - thumb_func_start sub_8045684 -sub_8045684: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r10, r1 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - movs r5, 0 - ldr r7, _080456E4 - ldr r6, _080456E8 -_080456A2: - ldr r0, [r7] - lsls r1, r5, 2 - ldr r2, _080456EC - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _080456F0 - movs r0, 0x2 - str r0, [r4] - ldr r0, [r7] - adds r0, r6 - str r0, [r4, 0x70] - mov r2, r8 - strb r2, [r0] - ldr r0, [r4, 0x70] - mov r2, r9 - strb r2, [r0, 0x1] - str r1, [r4, 0x1C] - adds r0, r4, 0 - adds r0, 0x22 - strb r1, [r0] - mov r2, r10 - ldr r0, [r2] - str r0, [r4, 0x4] - strh r1, [r4, 0x26] - adds r0, r4, 0 - b _080456FA - .align 2, 0 -_080456E4: .4byte gUnknown_203B418 -_080456E8: .4byte 0x00003908 -_080456EC: .4byte 0x0001371c -_080456F0: - adds r6, 0x4 - adds r5, 0x1 - cmp r5, 0x3F - ble _080456A2 - movs r0, 0 -_080456FA: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8045684 - - thumb_func_start sub_8045708 -sub_8045708: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r8, r0 - ldr r1, _08045744 - ldr r0, _08045748 - ldr r0, [r0] - ldr r2, _0804574C - adds r0, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0804579C - mov r1, r8 - movs r2, 0 - ldrsh r0, [r1, r2] - movs r3, 0x2 - ldrsh r1, [r1, r3] - bl sub_8049590 - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x2 - bne _0804579C - b _080457C4 - .align 2, 0 -_08045744: .4byte gUnknown_810ACC0 -_08045748: .4byte gUnknown_203B418 -_0804574C: .4byte 0x00003a0e -_08045750: - movs r0, 0x3 - str r0, [r4] - ldr r0, _08045798 - adds r1, r6, r0 - mov r2, r9 - ldr r0, [r2] - adds r0, r1 - str r0, [r4, 0x70] - mov r3, r8 - ldr r0, [r3] - str r0, [r4, 0x4] - movs r1, 0 - ldrsh r0, [r3, r1] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, 0x4 - lsls r1, 8 - movs r2, 0x2 - ldrsh r0, [r3, r2] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 3 - adds r2, 0x4 - lsls r2, 8 - adds r0, r4, 0 - bl sub_8045394 - movs r0, 0 - strh r7, [r4, 0x26] - adds r1, r4, 0 - adds r1, 0x22 - strb r0, [r1] - str r7, [r4, 0x1C] - adds r0, r4, 0 - b _080457C6 - .align 2, 0 -_08045798: .4byte 0x00003804 -_0804579C: - movs r5, 0 - ldr r3, _080457D4 - mov r9, r3 -_080457A2: - mov r1, r9 - ldr r0, [r1] - lsls r6, r5, 2 - ldr r2, _080457D8 - adds r0, r2 - adds r0, r6 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0 - beq _08045750 - adds r5, 0x1 - cmp r5, 0x3F - ble _080457A2 -_080457C4: - movs r0, 0 -_080457C6: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080457D4: .4byte gUnknown_203B418 -_080457D8: .4byte 0x0001361c - thumb_func_end sub_8045708 - - thumb_func_start sub_80457DC -sub_80457DC: - push {r4-r6,lr} - adds r4, r0, 0 - movs r0, 0x5 - str r0, [r4] - movs r6, 0 - movs r5, 0 - strh r5, [r4, 0x4] - strh r5, [r4, 0x6] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - bl sub_8045394 - strh r5, [r4, 0x26] - adds r4, 0x22 - strb r6, [r4] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80457DC - - thumb_func_start sub_8045804 -sub_8045804: - push {r4-r6,lr} - adds r4, r0, 0 - bl sub_80450F8 - cmp r0, 0x1 - beq _0804581C - cmp r0, 0x1 - bcc _08045880 - cmp r0, 0x5 - beq _08045880 -_08045818: - movs r0, 0x1 - b _08045882 -_0804581C: - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - beq _08045880 - ldr r0, _08045874 - ldr r1, [r0] - ldr r0, _08045878 - adds r2, r1, r0 - ldr r5, [r2, 0x10] - ldr r3, [r4, 0x70] - ldrb r0, [r3, 0x6] - cmp r0, 0 - beq _08045818 - ldr r6, _0804587C - adds r0, r1, r6 - ldrb r0, [r0] - cmp r0, 0 - bne _0804584C - adds r0, r3, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08045880 -_0804584C: - adds r0, r2, 0 - adds r0, 0x23 - ldrb r0, [r0] - cmp r0, 0 - bne _08045818 - adds r0, r2, 0 - adds r0, 0x25 - ldrb r0, [r0] - cmp r0, 0 - bne _08045818 - cmp r5, 0 - beq _08045880 - adds r1, r4, 0x4 - adds r0, r2, 0 - bl sub_8083294 - lsls r0, 24 - lsrs r0, 24 - b _08045882 - .align 2, 0 -_08045874: .4byte gUnknown_203B418 -_08045878: .4byte 0x000181e8 -_0804587C: .4byte 0x0001820f -_08045880: - movs r0, 0 -_08045882: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8045804 - - thumb_func_start sub_8045888 -sub_8045888: - push {r4,r5,lr} - adds r4, r0, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - beq _08045988 - ldr r1, [r4, 0xC] - cmp r1, 0 - bge _0804589C - adds r1, 0xFF -_0804589C: - asrs r1, 8 - ldr r0, _080458F0 - ldr r2, [r0] - ldr r3, _080458F4 - adds r0, r2, r3 - movs r5, 0 - ldrsh r0, [r0, r5] - subs r3, r1, r0 - ldr r0, [r4, 0x10] - cmp r0, 0 - bge _080458B4 - adds r0, 0xFF -_080458B4: - asrs r0, 8 - ldr r5, _080458F8 - adds r1, r2, r5 - movs r5, 0 - ldrsh r1, [r1, r5] - subs r1, r0, r1 - movs r0, 0x20 - negs r0, r0 - cmp r3, r0 - blt _08045988 - cmp r1, r0 - blt _08045988 - movs r0, 0x88 - lsls r0, 1 - cmp r3, r0 - bgt _08045988 - cmp r1, 0xC0 - bgt _08045988 - ldr r0, _080458FC - adds r5, r2, r0 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x5 - bhi _08045984 - lsls r0, 2 - ldr r1, _08045900 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080458F0: .4byte gUnknown_203B418 -_080458F4: .4byte 0x000181f0 -_080458F8: .4byte 0x000181f2 -_080458FC: .4byte 0x000181e8 -_08045900: .4byte _08045904 - .align 2, 0 -_08045904: - .4byte _08045988 - .4byte _08045934 - .4byte _08045964 - .4byte _0804591C - .4byte _08045984 - .4byte _08045988 -_0804591C: - adds r0, r5, 0 - adds r0, 0x26 -_08045920: - ldrb r0, [r0] - cmp r0, 0 - bne _08045984 - adds r0, r4, 0x4 - bl sub_803F428 - lsls r0, 24 -_0804592E: - cmp r0, 0 - bne _08045984 - b _08045988 -_08045934: - ldr r1, [r4, 0x70] - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _08045984 - ldr r0, _0804595C - ldr r0, [r0] - ldr r2, _08045960 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08045954 - adds r0, r1, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08045988 -_08045954: - adds r0, r5, 0 - adds r0, 0x25 - b _08045920 - .align 2, 0 -_0804595C: .4byte gUnknown_203B418 -_08045960: .4byte 0x0001820f -_08045964: - ldr r0, _0804597C - ldr r0, [r0] - ldr r3, _08045980 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _08045984 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - b _0804592E - .align 2, 0 -_0804597C: .4byte gUnknown_203B418 -_08045980: .4byte 0x0001820f -_08045984: - movs r0, 0x1 - b _0804598A -_08045988: - movs r0, 0 -_0804598A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8045888 - - thumb_func_start sub_8045990 -sub_8045990: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080459E8 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080459E8 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - beq _080459E8 - ldr r0, [r4] - cmp r0, 0x1 - bne _080459EC - ldr r0, [r5] - cmp r0, 0x1 - bne _080459DE - adds r0, r5, 0 - bl sub_8071884 - lsls r0, 24 - cmp r0, 0 - bne _080459D8 - ldr r0, [r4, 0x70] - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080459E8 -_080459D8: - ldr r0, [r5, 0x70] - adds r0, 0xE8 - b _080459E2 -_080459DE: - ldr r0, [r4, 0x70] - adds r0, 0xE4 -_080459E2: - ldrb r0, [r0] - cmp r0, 0x1 - bne _080459EC -_080459E8: - movs r0, 0 - b _080459F8 -_080459EC: - adds r0, r5, 0x4 - adds r1, r4, 0x4 - bl sub_8083294 - lsls r0, 24 - lsrs r0, 24 -_080459F8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8045990 - - thumb_func_start sub_8045A00 -sub_8045A00: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08045A58 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08045A58 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - beq _08045A58 - ldr r0, [r4] - cmp r0, 0x1 - bne _08045A5C - ldr r0, [r5] - cmp r0, 0x1 - bne _08045A4E - adds r0, r5, 0 - bl sub_8071884 - lsls r0, 24 - cmp r0, 0 - bne _08045A48 - ldr r0, [r4, 0x70] - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08045A58 -_08045A48: - ldr r0, [r5, 0x70] - adds r0, 0xE8 - b _08045A52 -_08045A4E: - ldr r0, [r4, 0x70] - adds r0, 0xE4 -_08045A52: - ldrb r0, [r0] - cmp r0, 0x1 - bne _08045A5C -_08045A58: - movs r0, 0 - b _08045A68 -_08045A5C: - adds r0, r5, 0x4 - adds r1, r4, 0x4 - bl sub_808333C - lsls r0, 24 - lsrs r0, 24 -_08045A68: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8045A00 - - thumb_func_start sub_8045A70 -sub_8045A70: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08045AA4 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08045AA4 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - beq _08045AA4 - adds r0, r5, 0x4 - adds r1, r4, 0x4 - bl sub_8083294 - lsls r0, 24 - lsrs r0, 24 - b _08045AA6 -_08045AA4: - movs r0, 0 -_08045AA6: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8045A70 - - thumb_func_start sub_8045AAC -sub_8045AAC: - push {lr} - adds r0, 0x4 - bl sub_8083294 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_8045AAC - - thumb_func_start sub_8045ABC -sub_8045ABC: - push {lr} - adds r0, 0x4 - bl sub_808333C - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_8045ABC - - thumb_func_start sub_8045ACC -sub_8045ACC: - push {r4-r7,lr} - movs r6, 0 - movs r5, 0 - ldr r7, _08045B50 -_08045AD4: - ldr r0, [r7] - lsls r1, r5, 2 - ldr r2, _08045B54 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08045AFA - ldr r0, [r7] - lsls r1, r6, 2 - ldr r2, _08045B58 - adds r0, r2 - adds r0, r1 - str r4, [r0] - adds r6, 0x1 -_08045AFA: - adds r5, 0x1 - cmp r5, 0x3 - ble _08045AD4 - movs r5, 0 - ldr r7, _08045B50 -_08045B04: - ldr r0, [r7] - lsls r1, r5, 2 - ldr r2, _08045B5C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08045B2A - ldr r0, [r7] - lsls r1, r6, 2 - ldr r2, _08045B58 - adds r0, r2 - adds r0, r1 - str r4, [r0] - adds r6, 0x1 -_08045B2A: - adds r5, 0x1 - cmp r5, 0xF - ble _08045B04 - cmp r6, 0x13 - bgt _08045B4A - ldr r4, _08045B50 - ldr r3, _08045B58 - movs r2, 0 -_08045B3A: - ldr r0, [r4] - lsls r1, r6, 2 - adds r0, r3 - adds r0, r1 - str r2, [r0] - adds r6, 0x1 - cmp r6, 0x13 - ble _08045B3A -_08045B4A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08045B50: .4byte gUnknown_203B418 -_08045B54: .4byte 0x0001357c -_08045B58: .4byte 0x000135cc -_08045B5C: .4byte 0x0001358c - thumb_func_end sub_8045ACC - - thumb_func_start sub_8045B60 -sub_8045B60: - push {r4,lr} - adds r3, r0, 0 - movs r2, 0 - ldr r0, _08045B78 - ldr r0, [r0] - ldr r4, _08045B7C - adds r1, r0, r4 -_08045B6E: - ldr r0, [r1] - cmp r3, r0 - bne _08045B80 - adds r0, r2, 0 - b _08045B8C - .align 2, 0 -_08045B78: .4byte gUnknown_203B418 -_08045B7C: .4byte 0x0001357c -_08045B80: - adds r1, 0x4 - adds r2, 0x1 - cmp r2, 0x3 - ble _08045B6E - movs r0, 0x1 - negs r0, r0 -_08045B8C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8045B60 - - thumb_func_start sub_8045B94 -sub_8045B94: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r6, r2, 0 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x2 - beq _08045BD2 - cmp r0, 0x2 - bhi _08045BB0 - cmp r0, 0x1 - beq _08045BB6 - b _08045BE2 -_08045BB0: - cmp r0, 0x3 - beq _08045BC2 - b _08045BE2 -_08045BB6: - ldr r1, [r4, 0x70] - adds r0, r5, 0 - adds r2, r6, 0 - bl sub_80708B4 - b _08045BEC -_08045BC2: - adds r0, r4, 0 - bl sub_8045110 - adds r1, r0, 0 - adds r0, r5, 0 - bl sub_8045BF8 - b _08045BEC -_08045BD2: - adds r0, r4, 0 - bl sub_804510C - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_807FE84 - b _08045BEC -_08045BE2: - ldr r0, _08045BF4 - ldr r1, [r0] - adds r0, r5, 0 - bl strcpy -_08045BEC: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08045BF4: .4byte gUnknown_80FE6F4 - thumb_func_end sub_8045B94 - - thumb_func_start sub_8045BF8 -sub_8045BF8: - push {lr} - ldr r2, _08045C04 - bl sub_8090E14 - pop {r0} - bx r0 - .align 2, 0 -_08045C04: .4byte gUnknown_80F699C - thumb_func_end sub_8045BF8 - - thumb_func_start sub_8045C08 -sub_8045C08: - push {lr} - ldr r2, _08045C14 - bl sub_8090E14 - pop {r0} - bx r0 - .align 2, 0 -_08045C14: .4byte gUnknown_80F69A8 - thumb_func_end sub_8045C08 - - thumb_func_start sub_8045C18 -sub_8045C18: - push {lr} - ldr r2, _08045C24 - bl sub_8090E14 - pop {r0} - bx r0 - .align 2, 0 -_08045C24: .4byte gUnknown_80F6990 - thumb_func_end sub_8045C18 - - thumb_func_start sub_8045C28 -sub_8045C28: - push {r4-r7,lr} - adds r5, r0, 0 - adds r6, r2, 0 - lsls r1, 24 - lsrs r4, r1, 24 - adds r1, r4, 0 - movs r2, 0 - bl sub_8090A8C - movs r7, 0 - adds r0, r4, 0 - bl sub_8091544 - lsls r0, 24 - cmp r0, 0 - beq _08045C72 - cmp r6, 0 - bne _08045C6C - movs r0, 0x64 - bl sub_8084100 - ldr r1, _08045C64 - ldr r1, [r1] - ldr r2, _08045C68 - adds r1, r2 - ldrb r1, [r1] - cmp r0, r1 - bge _08045C72 - b _08045C76 - .align 2, 0 -_08045C64: .4byte gUnknown_203B418 -_08045C68: .4byte 0x0001c57e -_08045C6C: - cmp r6, 0x1 - bne _08045C72 - movs r7, 0x1 -_08045C72: - cmp r7, 0 - beq _08045C7E -_08045C76: - ldrb r1, [r5] - movs r0, 0x8 - orrs r0, r1 - strb r0, [r5] -_08045C7E: - adds r0, r4, 0 - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bne _08045CA2 - ldr r0, _08045CA8 - ldr r0, [r0] - ldr r1, _08045CAC - adds r0, r1 - ldrb r0, [r0] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r0, r5, 0 - bl sub_8046CE4 -_08045CA2: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08045CA8: .4byte gUnknown_203B418 -_08045CAC: .4byte 0x0001c58b - thumb_func_end sub_8045C28 - - thumb_func_start sub_8045CB0 -sub_8045CB0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - movs r0, 0x38 - bl sub_8084100 - adds r5, r0, 0 - movs r0, 0x20 - bl sub_8084100 - adds r6, r0, 0 - ldr r0, _08045D34 - ldr r0, [r0] - ldr r1, _08045D38 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - movs r0, 0 -_08045CDA: - adds r6, 0x1 - cmp r6, 0x20 - bne _08045CE2 - movs r6, 0 -_08045CE2: - adds r0, 0x1 - mov r10, r0 - movs r3, 0x2 - mov r9, r3 - movs r0, 0x37 - mov r8, r0 -_08045CEE: - adds r5, 0x1 - cmp r5, 0x38 - bne _08045CF6 - movs r5, 0 -_08045CF6: - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_804954C - adds r2, r0, 0 - ldrh r0, [r2] - movs r3, 0x80 - lsls r3, 2 - adds r1, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _08045D92 - ldrh r1, [r2, 0x4] - mov r0, r9 - ands r0, r1 - cmp r0, 0 - beq _08045D92 - movs r7, 0 - lsls r0, r5, 16 - lsls r1, r6, 16 - lsrs r0, 16 - orrs r0, r1 - str r0, [sp, 0x4] - ldrh r1, [r2] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08045D3C - movs r7, 0x1 - movs r0, 0x1 - b _08045D58 - .align 2, 0 -_08045D34: .4byte gUnknown_203B418 -_08045D38: .4byte 0x00003904 -_08045D3C: - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _08045D48 - movs r0, 0x3 - b _08045D58 -_08045D48: - movs r0, 0x40 - ands r0, r1 - lsls r0, 16 - lsrs r0, 16 - negs r0, r0 - asrs r0, 31 - mov r1, r9 - ands r0, r1 -_08045D58: - bl sub_803D73C - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - bne _08045D6E - movs r7, 0 -_08045D6E: - mov r0, sp - adds r1, r4, 0 - movs r2, 0 - bl sub_8045C28 - cmp r7, 0 - beq _08045D88 - mov r0, sp - ldrb r1, [r0] - mov r0, r9 - orrs r0, r1 - mov r1, sp - strb r0, [r1] -_08045D88: - add r0, sp, 0x4 - mov r1, sp - movs r2, 0x1 - bl sub_80460F8 -_08045D92: - movs r3, 0x1 - negs r3, r3 - add r8, r3 - mov r0, r8 - cmp r0, 0 - bge _08045CEE - mov r0, r10 - cmp r0, 0x1F - ble _08045CDA - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8045CB0 - - thumb_func_start sub_8045DB4 -sub_8045DB4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xB8 - mov r10, r0 - lsls r1, 24 - lsrs r1, 24 - str r1, [sp, 0xA8] - bl sub_8083600 - adds r7, r0, 0 - ldr r0, [r7, 0x70] - str r0, [sp, 0xAC] - mov r1, r10 - movs r2, 0 - ldrsh r0, [r1, r2] - movs r3, 0x2 - ldrsh r1, [r1, r3] - bl sub_804954C - ldr r4, [r0, 0x14] - cmp r4, 0 - bne _08045DE8 - b _080460E0 -_08045DE8: - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x3 - beq _08045DF4 - b _080460E0 -_08045DF4: - adds r0, r4, 0 - bl sub_8045108 - adds r5, r0, 0 - ldr r0, [sp, 0xAC] - adds r0, 0x48 - ldrb r0, [r0] - cmp r0, 0 - bne _08045E08 - b _0804602E -_08045E08: - adds r0, r7, 0 - movs r1, 0x1 - bl sub_8071518 - lsls r0, 24 - cmp r0, 0 - beq _08045E40 - ldr r0, [sp, 0xA8] - cmp r0, 0 - bne _08045E1E - b _080460E0 -_08045E1E: - ldr r0, _08045E34 - adds r1, r5, 0 - bl sub_8045BF8 - ldr r0, _08045E38 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08045E3C - b _08046048 - .align 2, 0 -_08045E34: .4byte gUnknown_202DE58 -_08045E38: .4byte gUnknown_202DF98 -_08045E3C: .4byte gUnknown_80F8F88 -_08045E40: - ldrb r0, [r5, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bne _08045E7C - movs r0, 0xA6 - lsls r0, 1 - bl sub_8083E38 - adds r0, r5, 0 - bl sub_80915D4 - bl sub_80913A0 - ldr r0, _08045E74 - adds r1, r5, 0 - bl sub_8045BF8 - mov r0, r10 - movs r1, 0x1 - bl sub_80461C8 - ldr r0, _08045E78 - b _08045FD0 - .align 2, 0 -_08045E74: .4byte gUnknown_202DE58 -_08045E78: .4byte gUnknown_80F8FFC -_08045E7C: - ldr r0, _08045EA8 - ldr r0, [r0] - ldr r1, _08045EAC - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08045EB4 - movs r4, 0 - ldr r0, _08045EB0 - mov r2, sp - ldr r0, [r0] - add r1, sp, 0x54 -_08045E94: - stm r1!, {r0} - stm r2!, {r4} - adds r0, 0x4 - adds r4, 0x1 - cmp r4, 0x13 - ble _08045E94 - movs r2, 0x14 - mov r8, r2 - b _08045EC4 - .align 2, 0 -_08045EA8: .4byte gUnknown_203B418 -_08045EAC: .4byte 0x0000065b -_08045EB0: .4byte gUnknown_203B460 -_08045EB4: - ldr r0, [sp, 0xAC] - adds r0, 0x60 - str r0, [sp, 0x54] - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r3, 0x1 - mov r8, r3 -_08045EC4: - ldrb r0, [r5, 0x2] - add r6, sp, 0xB0 - strb r0, [r6] - cmp r0, 0x8 - bls _08045ED0 - b _08046000 -_08045ED0: - ldrb r1, [r5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08045EDC - b _08046000 -_08045EDC: - movs r1, 0x1 - negs r1, r1 - mov r12, r1 - mov r2, r12 - str r2, [sp, 0xB4] - movs r4, 0 - cmp r4, r8 - bge _08045F2C - ldr r3, _08045FDC - mov r9, r3 - add r3, sp, 0x54 -_08045EF2: - ldr r2, [r3] - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08045F24 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08045F24 - ldr r1, [r5] - mov r6, r9 - ands r1, r6 - ldr r0, [r2] - ands r0, r6 - cmp r1, r0 - bne _08045F24 - ldrb r0, [r2, 0x1] - cmp r0, 0x63 - beq _08045F24 - ldr r1, [sp, 0xB4] - cmp r1, r0 - bge _08045F24 - str r0, [sp, 0xB4] - mov r12, r4 -_08045F24: - adds r3, 0x4 - adds r4, 0x1 - cmp r4, r8 - blt _08045EF2 -_08045F2C: - movs r0, 0x1 - negs r0, r0 - cmp r12, r0 - bne _08045F80 - mov r2, r12 - str r2, [sp, 0xB4] - movs r4, 0 - cmp r4, r8 - bge _08045F78 - add r3, sp, 0xB0 - ldrb r3, [r3] - mov r9, r3 - add r3, sp, 0x54 -_08045F46: - ldr r2, [r3] - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08045F70 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08045F70 - ldrb r6, [r2, 0x2] - cmp r9, r6 - bne _08045F70 - ldrb r0, [r2, 0x1] - cmp r0, 0x63 - beq _08045F70 - ldr r1, [sp, 0xB4] - cmp r1, r0 - bge _08045F70 - str r0, [sp, 0xB4] - mov r12, r4 -_08045F70: - adds r3, 0x4 - adds r4, 0x1 - cmp r4, r8 - blt _08045F46 -_08045F78: - movs r0, 0x1 - negs r0, r0 - cmp r12, r0 - beq _08046000 -_08045F80: - add r0, sp, 0x54 - mov r2, r12 - lsls r4, r2, 2 - adds r3, r0, r4 - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r5, 0x1] - adds r1, r0 - cmp r1, 0x62 - ble _08045F96 - movs r1, 0x63 -_08045F96: - strb r1, [r2, 0x1] - ldrb r1, [r5] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08045FAC - ldr r0, [r3] - ldrb r1, [r0] - movs r2, 0x8 - orrs r1, r2 - strb r1, [r0] -_08045FAC: - ldr r0, _08045FE0 - adds r1, r5, 0 - bl sub_8045BF8 - mov r0, r10 - movs r1, 0x1 - bl sub_80461C8 - movs r0, 0xA5 - lsls r0, 1 - bl sub_8083E38 - mov r3, sp - adds r0, r3, r4 - ldr r0, [r0] - cmp r0, 0 - bge _08045FE8 - ldr r0, _08045FE4 -_08045FD0: - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - b _08045FF2 - .align 2, 0 -_08045FDC: .4byte 0x00ff0008 -_08045FE0: .4byte gUnknown_202DE58 -_08045FE4: .4byte gUnknown_80F8FC4 -_08045FE8: - ldr r0, _08045FFC - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 -_08045FF2: - ldrb r0, [r5, 0x2] - bl sub_8052EC0 - b _080460E0 - .align 2, 0 -_08045FFC: .4byte gUnknown_80F8FF8 -_08046000: - movs r4, 0 - cmp r4, r8 - bge _0804602A - ldr r0, [sp, 0x54] - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804602A - movs r3, 0x1 - add r2, sp, 0x54 -_08046016: - adds r2, 0x4 - adds r4, 0x1 - cmp r4, r8 - bge _0804602A - ldr r0, [r2] - ldrb r1, [r0] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _08046016 -_0804602A: - cmp r4, r8 - bne _08046060 -_0804602E: - ldr r6, [sp, 0xA8] - cmp r6, 0 - beq _080460E0 - ldr r0, _08046054 - adds r1, r5, 0 - bl sub_8045BF8 - ldr r0, _08046058 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0804605C -_08046048: - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - b _080460E0 - .align 2, 0 -_08046054: .4byte gUnknown_202DE58 -_08046058: .4byte gUnknown_202DF98 -_0804605C: .4byte gUnknown_80F8F54 -_08046060: - movs r0, 0xA5 - lsls r0, 1 - bl sub_8083E38 - lsls r0, r4, 2 - add r0, sp - ldr r0, [r0] - cmp r0, 0 - bge _08046094 - ldr r0, [r5] - ldr r1, [sp, 0xAC] - str r0, [r1, 0x60] - ldr r0, _0804608C - adds r1, r5, 0 - bl sub_8045BF8 - mov r0, r10 - movs r1, 0x1 - bl sub_80461C8 - ldr r0, _08046090 - b _080460AC - .align 2, 0 -_0804608C: .4byte gUnknown_202DE58 -_08046090: .4byte gUnknown_80F8FC4 -_08046094: - adds r0, r5, 0 - bl sub_8091290 - lsls r0, 24 - cmp r0, 0 - beq _080460C0 - ldr r0, _080460B8 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _080460BC -_080460AC: - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - b _080460DA - .align 2, 0 -_080460B8: .4byte gUnknown_202DF98 -_080460BC: .4byte gUnknown_80F8FAC -_080460C0: - ldr r0, _080460F0 - adds r1, r5, 0 - bl sub_8045BF8 - mov r0, r10 - movs r1, 0x1 - bl sub_80461C8 - ldr r0, _080460F4 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 -_080460DA: - ldrb r0, [r5, 0x2] - bl sub_8052EC0 -_080460E0: - add sp, 0xB8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080460F0: .4byte gUnknown_202DE58 -_080460F4: .4byte gUnknown_80F8FF8 - thumb_func_end sub_8045DB4 - - thumb_func_start sub_80460F8 -sub_80460F8: - push {r4-r7,lr} - adds r5, r0, 0 - adds r6, r1, 0 - lsls r2, 24 - lsrs r7, r2, 24 - bl sub_8045708 - adds r4, r0, 0 - cmp r4, 0 - bne _08046110 - movs r0, 0 - b _080461B6 -_08046110: - ldr r1, [r4, 0x70] - ldr r0, [r6] - str r0, [r1] - ldr r2, [r4, 0x70] - ldrb r1, [r2] - movs r0, 0xEF - ands r0, r1 - strb r0, [r2] - adds r1, r4, 0 - adds r1, 0x20 - movs r0, 0x1 - strb r0, [r1] - movs r1, 0 - ldrsh r0, [r5, r1] - movs r2, 0x2 - ldrsh r1, [r5, r2] - bl sub_8049590 - str r4, [r0, 0x14] - ldrh r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08046186 - ldrb r0, [r6, 0x2] - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - beq _08046186 - ldrb r1, [r6] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08046170 - cmp r7, 0 - beq _08046186 - adds r0, r6, 0 - bl sub_8090C7C - ldr r1, _08046168 - ldr r2, [r1] - ldr r1, _0804616C - b _0804617E - .align 2, 0 -_08046168: .4byte gUnknown_203B418 -_0804616C: .4byte 0x0000068c -_08046170: - adds r0, r6, 0 - bl sub_8090CCC - ldr r1, _080461BC - ldr r2, [r1] - movs r1, 0xD2 - lsls r1, 3 -_0804617E: - adds r2, r1 - ldr r1, [r2] - adds r1, r0 - str r1, [r2] -_08046186: - movs r6, 0 - movs r4, 0 -_0804618A: - ldr r5, _080461BC - ldr r0, [r5] - lsls r1, r4, 2 - ldr r2, _080461C0 - adds r0, r2 - adds r0, r1 - ldr r0, [r0] - bl sub_80450E0 - lsls r0, 24 - adds r1, r4, 0x1 - cmp r0, 0 - beq _080461A6 - adds r6, r1, 0 -_080461A6: - adds r4, r1, 0 - cmp r4, 0x3F - ble _0804618A - ldr r0, [r5] - ldr r1, _080461C4 - adds r0, r1 - strh r6, [r0] - movs r0, 0x1 -_080461B6: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080461BC: .4byte gUnknown_203B418 -_080461C0: .4byte 0x0001361c -_080461C4: .4byte 0x00003904 - thumb_func_end sub_80460F8 - - thumb_func_start sub_80461C8 -sub_80461C8: - push {r4-r7,lr} - adds r2, r0, 0 - lsls r1, 24 - lsrs r7, r1, 24 - movs r1, 0 - ldrsh r0, [r2, r1] - movs r3, 0x2 - ldrsh r1, [r2, r3] - bl sub_8049590 - adds r6, r0, 0 - ldr r5, [r6, 0x14] - cmp r5, 0 - beq _080461EE - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x3 - beq _080461F2 -_080461EE: - movs r0, 0 - b _08046284 -_080461F2: - adds r0, r5, 0 - bl sub_8045108 - adds r4, r0, 0 - ldrh r1, [r6] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0804624E - ldrb r0, [r4, 0x2] - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - beq _0804624E - ldrb r1, [r4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08046238 - cmp r7, 0 - beq _0804624E - adds r0, r4, 0 - bl sub_8090C7C - ldr r1, _08046230 - ldr r2, [r1] - ldr r1, _08046234 - adds r2, r1 - b _08046248 - .align 2, 0 -_08046230: .4byte gUnknown_203B418 -_08046234: .4byte 0x0000068c -_08046238: - adds r0, r4, 0 - bl sub_8090CCC - ldr r1, _0804628C - ldr r2, [r1] - movs r3, 0xD2 - lsls r3, 3 - adds r2, r3 -_08046248: - ldr r1, [r2] - subs r1, r0 - str r1, [r2] -_0804624E: - movs r0, 0 - str r0, [r6, 0x14] - str r0, [r5] - movs r6, 0 - movs r4, 0 -_08046258: - ldr r5, _0804628C - ldr r0, [r5] - lsls r1, r4, 2 - ldr r2, _08046290 - adds r0, r2 - adds r0, r1 - ldr r0, [r0] - bl sub_80450E0 - lsls r0, 24 - adds r1, r4, 0x1 - cmp r0, 0 - beq _08046274 - adds r6, r1, 0 -_08046274: - adds r4, r1, 0 - cmp r4, 0x3F - ble _08046258 - ldr r0, [r5] - ldr r3, _08046294 - adds r0, r3 - strh r6, [r0] - movs r0, 0x1 -_08046284: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0804628C: .4byte gUnknown_203B418 -_08046290: .4byte 0x0001361c -_08046294: .4byte 0x00003904 - thumb_func_end sub_80461C8 - - thumb_func_start sub_8046298 -sub_8046298: - ldrb r0, [r0, 0x2] - ldr r1, _080462A8 - ldr r1, [r1] - lsls r0, 5 - adds r0, r1 - ldrb r0, [r0, 0xD] - bx lr - .align 2, 0 -_080462A8: .4byte gUnknown_20389A4 - thumb_func_end sub_8046298 - - thumb_func_start sub_80462AC -sub_80462AC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r4, r0, 0 - ldr r0, [sp, 0x28] - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - lsls r2, 24 - lsrs r5, r2, 24 - lsls r3, 24 - lsrs r3, 24 - mov r9, r3 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080462E4 - b _08046498 -_080462E4: - cmp r5, 0 - beq _08046316 - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_804954C - ldrh r0, [r0] - movs r1, 0x3 - ands r1, r0 - cmp r1, 0 - bne _08046300 - b _08046498 -_08046300: - cmp r1, 0x2 - bne _08046308 - movs r3, 0x1 - str r3, [sp, 0x4] -_08046308: - adds r0, r4, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - bne _08046316 - b _08046498 -_08046316: - ldr r1, [r4, 0xC] - cmp r1, 0 - bge _0804631E - adds r1, 0xFF -_0804631E: - asrs r1, 8 - ldr r0, _080463A4 - ldr r2, [r0] - ldr r5, _080463A8 - adds r0, r2, r5 - movs r3, 0 - ldrsh r0, [r0, r3] - subs r6, r1, r0 - ldr r3, [r4, 0x10] - ldr r0, [r4, 0x1C] - subs r1, r3, r0 - cmp r1, 0 - bge _0804633A - adds r1, 0xFF -_0804633A: - asrs r1, 8 - ldr r5, _080463AC - adds r0, r2, r5 - movs r5, 0 - ldrsh r2, [r0, r5] - subs r1, r2 - mov r8, r1 - adds r0, r3, 0 - cmp r0, 0 - bge _08046350 - adds r0, 0xFF -_08046350: - asrs r0, 8 - subs r0, r2 - adds r7, r0, 0 - adds r7, 0x8 - lsrs r0, r7, 31 - adds r0, r7, r0 - asrs r7, r0, 1 - movs r0, 0x20 - negs r0, r0 - cmp r6, r0 - bge _08046368 - b _08046498 -_08046368: - cmp r8, r0 - bge _0804636E - b _08046498 -_0804636E: - movs r0, 0x88 - lsls r0, 1 - cmp r6, r0 - ble _08046378 - b _08046498 -_08046378: - mov r0, r8 - cmp r0, 0xC0 - ble _08046380 - b _08046498 -_08046380: - ldr r5, _080463B0 - ldrh r1, [r5, 0x2] - ldr r0, _080463B4 - ands r0, r1 - strh r0, [r5, 0x2] - mov r1, r10 - cmp r1, 0 - beq _080463BC - movs r2, 0x17 - mov r10, r2 - movs r2, 0xA0 - lsls r2, 8 - ldrh r1, [r5, 0x4] - ldr r0, _080463B8 - ands r0, r1 - orrs r0, r2 - strh r0, [r5, 0x4] - b _08046408 - .align 2, 0 -_080463A4: .4byte gUnknown_203B418 -_080463A8: .4byte 0x000181f0 -_080463AC: .4byte 0x000181f2 -_080463B0: .4byte gUnknown_202EDC0 -_080463B4: .4byte 0x0000c1ff -_080463B8: .4byte 0x00000fff -_080463BC: - ldr r0, [r4, 0x70] - bl sub_8046298 - mov r10, r0 - mov r3, r9 - cmp r3, 0xFF - beq _080463EE - cmp r0, 0 - bne _080463EE - ldr r0, _08046478 - add r0, r9 - ldrb r0, [r0] - mov r10, r0 - ldr r0, _0804647C - add r0, r9 - ldrb r1, [r0] - lsls r1, 3 - movs r0, 0x1F - ands r1, r0 - lsls r1, 9 - ldrh r2, [r5, 0x2] - ldr r0, _08046480 - ands r0, r2 - orrs r0, r1 - strh r0, [r5, 0x2] -_080463EE: - ldr r0, [r4, 0x70] - ldrb r0, [r0, 0x2] - bl sub_8090D58 - movs r1, 0xF - ands r0, r1 - lsls r0, 12 - ldr r3, _08046484 - ldrh r2, [r3, 0x4] - ldr r1, _08046488 - ands r1, r2 - orrs r1, r0 - strh r1, [r3, 0x4] -_08046408: - ldr r1, _08046488 - mov r5, r8 - ands r1, r5 - lsls r1, 4 - ldr r4, _08046484 - ldrh r2, [r4, 0x6] - movs r0, 0xF - ands r0, r2 - orrs r0, r1 - strh r0, [r4, 0x6] - ldr r0, _0804648C - ands r6, r0 - ldrh r1, [r4, 0x2] - movs r0, 0xFE - lsls r0, 8 - ands r0, r1 - orrs r0, r6 - strh r0, [r4, 0x2] - ldr r0, [sp, 0x4] - lsls r3, r0, 10 - ldrh r2, [r4] - ldr r1, _08046490 - adds r0, r1, 0 - ands r0, r2 - orrs r0, r3 - strh r0, [r4] - movs r2, 0xC0 - lsls r2, 4 - ldrh r0, [r4, 0x4] - ands r1, r0 - orrs r1, r2 - mov r2, r10 - lsls r0, r2, 2 - movs r3, 0xD0 - lsls r3, 1 - adds r0, r3 - ldr r2, _08046494 - ands r0, r2 - movs r2, 0xFC - lsls r2, 8 - ands r1, r2 - orrs r1, r0 - strh r1, [r4, 0x4] - ldr r5, [sp] - cmp r5, 0 - bne _08046466 - movs r7, 0x1 -_08046466: - adds r0, r4, 0 - adds r1, r7, 0 - movs r2, 0 - movs r3, 0 - bl AddSprite - movs r0, 0x1 - b _0804649A - .align 2, 0 -_08046478: .4byte gUnknown_203B420 -_0804647C: .4byte gUnknown_203B428 -_08046480: .4byte 0x0000c1ff -_08046484: .4byte gUnknown_202EDC0 -_08046488: .4byte 0x00000fff -_0804648C: .4byte 0x000001ff -_08046490: .4byte 0x0000f3ff -_08046494: .4byte 0x000003ff -_08046498: - movs r0, 0 -_0804649A: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80462AC - - thumb_func_start sub_80464AC -sub_80464AC: - push {r4,lr} - ldr r4, _080464C4 - ldrb r0, [r0, 0x2] - bl sub_8090D6C - lsls r0, 3 - adds r0, r4 - ldr r0, [r0] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080464C4: .4byte gUnknown_80F7B14 - thumb_func_end sub_80464AC - - thumb_func_start sub_80464C8 -sub_80464C8: - push {r4-r6,lr} - sub sp, 0x78 - adds r6, r0, 0 - adds r3, r1, 0 - adds r5, r2, 0 - movs r0, 0x3 - str r0, [sp, 0x4] - add r0, sp, 0x28 - movs r4, 0 - strb r4, [r0] - add r1, sp, 0x24 - movs r0, 0x1 - strb r0, [r1] - mov r0, sp - adds r0, 0x26 - strb r4, [r0] - str r5, [sp, 0x74] - ldr r0, [r3] - str r0, [sp, 0x8] - movs r1, 0 - ldrsh r0, [r3, r1] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, 0x4 - lsls r1, 8 - movs r2, 0x2 - ldrsh r0, [r3, r2] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 3 - adds r2, 0x4 - lsls r2, 8 - add r0, sp, 0x4 - bl sub_8045394 - add r0, sp, 0x4 - strh r4, [r0, 0x26] - str r4, [sp] - adds r0, r6, 0 - add r1, sp, 0x4 - adds r2, r5, 0 - movs r3, 0x1 - bl sub_804652C - add sp, 0x78 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80464C8 - - thumb_func_start sub_804652C -sub_804652C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - mov r10, r0 - adds r5, r1, 0 - mov r9, r2 - lsls r3, 24 - lsrs r6, r3, 24 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_804954C - adds r4, r0, 0 - ldr r0, [r4, 0x14] - movs r3, 0 - str r3, [sp, 0xC] - cmp r0, 0 - beq _0804658C - bl sub_80450F8 - cmp r0, 0x2 - bne _0804658C - adds r4, r5, 0x4 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8046734 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_807FE44 - ldr r0, _080465A4 - ldr r1, [r0] - mov r0, r10 - bl sub_80522A8 - mov r0, r9 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0804658C - b _0804671E -_0804658C: - ldrh r1, [r5, 0x6] - lsls r1, 16 - ldrh r0, [r5, 0x4] - orrs r0, r1 - str r0, [sp] - mov r8, r0 - movs r7, 0x1 - cmp r6, 0 - beq _08046632 - movs r7, 0 - b _08046632 - .align 2, 0 -_080465A4: .4byte gUnknown_80FED30 -_080465A8: - lsls r3, r7, 2 - adds r3, r0 - ldrh r0, [r3] - ldrh r1, [r5, 0x4] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _08046628 - ldr r2, [sp] - ands r2, r1 - orrs r2, r0 - str r2, [sp] - ldrh r0, [r3, 0x2] - ldrh r3, [r5, 0x6] - adds r0, r3 - lsls r0, 16 - ldr r1, _0804662C - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - asrs r1, 16 - bl sub_804954C - adds r4, r0, 0 - ldrh r1, [r4] - movs r6, 0x3 - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08046630 - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - bne _08046630 - ldr r0, [r4, 0x14] - cmp r0, 0 - bne _08046630 - adds r0, r5, 0 - mov r1, sp - bl sub_8046734 - ldr r3, [sp] - mov r8, r3 - ldrh r1, [r4] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0x3 - beq _08046620 - mov r0, sp - mov r1, r9 - movs r2, 0x1 - bl sub_80460F8 - lsls r0, 24 - cmp r0, 0 - beq _08046644 -_08046620: - movs r0, 0x1 - str r0, [sp, 0xC] - b _08046644 - .align 2, 0 -_08046628: .4byte 0xffff0000 -_0804662C: .4byte 0x0000ffff -_08046630: - adds r7, 0x1 -_08046632: - ldr r0, _08046688 - lsls r1, r7, 2 - adds r1, r0 - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r1, 0x63 - bne _080465A8 - movs r3, 0 - str r3, [sp, 0xC] -_08046644: - ldr r0, _0804668C - mov r1, r9 - bl sub_8045BF8 - ldr r0, [sp, 0xC] - cmp r0, 0 - beq _080466C8 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - mov r4, sp - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_80402AC - mov r0, sp - movs r3, 0 - ldrsh r0, [r0, r3] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - ldrh r0, [r0] - movs r1, 0x3 - ands r1, r0 - adds r0, r1, 0 - cmp r1, 0x1 - beq _0804669A - cmp r1, 0x1 - bgt _08046690 - cmp r1, 0 - beq _080466AC - b _0804671E - .align 2, 0 -_08046688: .4byte gUnknown_80F4468 -_0804668C: .4byte gUnknown_202DE58 -_08046690: - cmp r0, 0x2 - beq _080466A4 - cmp r0, 0x3 - beq _080466B4 - b _0804671E -_0804669A: - ldr r0, _080466A0 - b _080466B6 - .align 2, 0 -_080466A0: .4byte gUnknown_80F93E8 -_080466A4: - ldr r0, _080466A8 - b _080466B6 - .align 2, 0 -_080466A8: .4byte gUnknown_80F9408 -_080466AC: - ldr r0, _080466B0 - b _080466B6 - .align 2, 0 -_080466B0: .4byte gUnknown_80F9424 -_080466B4: - ldr r0, _080466C4 -_080466B6: - ldr r2, [r0] - mov r0, r10 - mov r1, sp - bl sub_8052364 - b _0804671E - .align 2, 0 -_080466C4: .4byte gUnknown_80F949C -_080466C8: - mov r3, r8 - lsls r1, r3, 16 - asrs r1, 16 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r1, 0xC0 - lsls r1, 4 - adds r0, r1 - str r0, [sp, 0x4] - asrs r1, r3, 16 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r2, 0xC0 - lsls r2, 4 - adds r0, r2 - add r2, sp, 0x4 - str r0, [r2, 0x4] - ldr r3, [sp, 0x30] - cmp r3, 0 - beq _0804670C - movs r1, 0 - ldrsh r0, [r3, r1] - lsls r0, 8 - ldr r1, [sp, 0x4] - adds r0, r1 - str r0, [sp, 0x4] - movs r1, 0x2 - ldrsh r0, [r3, r1] - lsls r0, 8 - ldr r1, [r2, 0x4] - adds r0, r1 - str r0, [r2, 0x4] -_0804670C: - adds r0, r2, 0 - bl sub_804219C - ldr r0, _08046730 - ldr r2, [r0] - mov r0, r10 - mov r1, sp - bl sub_8052364 -_0804671E: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08046730: .4byte gUnknown_80F943C - thumb_func_end sub_804652C - - thumb_func_start sub_8046734 -sub_8046734: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - mov r8, r0 - ldr r0, _08046858 - ldr r0, [r0] - ldr r2, _0804685C - adds r0, r2 - ldrb r0, [r0] - str r0, [sp, 0xC] - movs r0, 0 - ldrsh r2, [r1, r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r0, 0x4 - lsls r4, r0, 8 - movs r2, 0x2 - ldrsh r1, [r1, r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, 0x4 - lsls r5, r0, 8 - mov r1, r8 - ldr r0, [r1, 0xC] - subs r0, r4 - cmp r0, 0 - bge _08046776 - negs r0, r0 -_08046776: - mov r2, r8 - ldr r2, [r2, 0x10] - mov r9, r2 - cmp r0, 0xB - bgt _0804678C - subs r0, r2, r5 - cmp r0, 0 - bge _08046788 - negs r0, r0 -_08046788: - cmp r0, 0xB - ble _08046822 -_0804678C: - movs r0, 0 - mov r10, r0 - movs r1, 0 - str r1, [sp, 0x10] - mov r2, r8 - ldr r0, [r2, 0xC] - str r0, [sp, 0x4] - mov r1, r9 - str r1, [sp, 0x8] - subs r0, r4, r0 - movs r1, 0x18 - bl __divsi3 - adds r6, r0, 0 - mov r2, r9 - subs r0, r5, r2 - movs r1, 0x18 - bl __divsi3 - adds r7, r0, 0 - movs r0, 0 - mov r9, r0 - mov r1, sp - adds r1, 0x4 - str r1, [sp, 0x14] -_080467BE: - ldr r0, [sp, 0x4] - adds r0, r6 - str r0, [sp, 0x4] - ldr r2, [sp, 0x14] - ldr r0, [r2, 0x4] - adds r0, r7 - str r0, [r2, 0x4] - ldr r0, [sp, 0x10] - bl sub_8009C7C - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - mov r0, r8 - str r1, [r0, 0x1C] - add r1, sp, 0x4 - bl sub_804535C - mov r1, r10 - lsls r3, r1, 24 - lsrs r3, 24 - movs r0, 0 - str r0, [sp] - mov r0, r8 - ldr r1, [sp, 0xC] - movs r2, 0 - bl sub_80462AC - movs r0, 0x13 - bl sub_803E46C - ldr r2, [sp, 0x10] - adds r2, 0x55 - str r2, [sp, 0x10] - movs r0, 0x3 - mov r1, r9 - ands r0, r1 - cmp r0, 0 - bne _08046810 - movs r2, 0x1 - add r10, r2 -_08046810: - movs r0, 0x7 - mov r1, r10 - ands r1, r0 - mov r10, r1 - movs r2, 0x1 - add r9, r2 - mov r0, r9 - cmp r0, 0x17 - ble _080467BE -_08046822: - mov r0, r8 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_8045394 - movs r0, 0 - mov r1, r8 - str r0, [r1, 0x1C] - str r0, [sp] - mov r0, r8 - ldr r1, [sp, 0xC] - movs r2, 0x1 - movs r3, 0xFF - bl sub_80462AC - movs r0, 0x13 - bl sub_803E46C - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08046858: .4byte gUnknown_203B418 -_0804685C: .4byte 0x00018210 - thumb_func_end sub_8046734 - - thumb_func_start sub_8046860 -sub_8046860: - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r1, 0 - adds r5, r2, 0 - str r3, [sp] - adds r2, r4, 0 - adds r3, r5, 0 - bl sub_804687C - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8046860 - - thumb_func_start sub_804687C -sub_804687C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _08046970 - add sp, r4 - ldr r5, _08046974 - add r5, sp - str r0, [r5] - movs r0, 0xA5 - lsls r0, 3 - add r0, sp - str r1, [r0] - mov r8, r2 - ldr r1, _08046978 - add r1, sp - str r3, [r1] - movs r1, 0 - movs r7, 0x1D - ldr r0, _0804697C - add r0, sp -_080468A8: - strb r1, [r0] - subs r0, 0x1 - subs r7, 0x1 - cmp r7, 0 - bge _080468A8 - movs r7, 0 - movs r2, 0xAD - lsls r2, 3 - add r2, sp - ldr r2, [r2] - cmp r7, r2 - blt _080468C2 - b _080469DE -_080468C2: - ldr r3, _08046980 - mov r9, r3 - ldr r5, _08046984 - movs r0, 0 - ldrsh r5, [r5, r0] - ldr r0, _08046988 - add r0, sp - str r5, [r0] -_080468D2: - mov r1, r8 - ldrh r0, [r1] - ldr r1, _0804698C - ands r4, r1 - orrs r4, r0 - mov r2, r8 - ldrh r0, [r2, 0x2] - lsls r0, 16 - mov r3, r9 - ands r4, r3 - orrs r4, r0 - movs r5, 0 - adds r0, r7, 0x1 - mov r10, r0 - ldr r1, _08046984 - ldr r2, _08046988 - add r2, sp - ldr r2, [r2] - cmp r2, 0x63 - beq _080469B0 - ldr r3, _08046990 - add r3, sp - ldr r0, _08046994 - add r0, sp - str r3, [r0] -_08046904: - ldr r0, _08046998 - add r0, sp - adds r6, r0, r5 - ldrb r0, [r6] - cmp r0, 0 - bne _0804699C - lsls r2, r5, 2 - adds r2, r1 - ldrh r0, [r2] - mov r1, r8 - ldrh r1, [r1] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _0804698C - ands r4, r1 - orrs r4, r0 - ldrh r0, [r2, 0x2] - mov r2, r8 - ldrh r2, [r2, 0x2] - adds r0, r2 - lsls r0, 16 - mov r3, r9 - ands r4, r3 - orrs r4, r0 - lsls r0, r4, 16 - asrs r0, 16 - asrs r1, r4, 16 - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0804699C - movs r3, 0x80 - lsls r3, 2 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0804699C - ldr r0, [r2, 0x14] - cmp r0, 0 - bne _0804699C - lsls r0, r7, 2 - ldr r5, _08046994 - add r5, sp - ldr r5, [r5] - adds r0, r5, r0 - str r4, [r0] - movs r0, 0x1 - strb r0, [r6] - b _080469CE - .align 2, 0 -_08046970: .4byte 0xfffffab8 -_08046974: .4byte 0x00000524 -_08046978: .4byte 0x0000052c -_0804697C: .4byte 0x00000521 -_08046980: .4byte 0x0000ffff -_08046984: .4byte gUnknown_80F4468 -_08046988: .4byte 0x00000534 -_0804698C: .4byte 0xffff0000 -_08046990: .4byte 0x0000048c -_08046994: .4byte 0x00000544 -_08046998: .4byte 0x00000504 -_0804699C: - adds r5, 0x1 - cmp r5, 0x1D - bgt _080469B0 - lsls r0, r5, 2 - ldr r1, _08046A18 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0x63 - bne _08046904 -_080469B0: - movs r3, 0 - cmp r3, 0 - bne _080469CE - ldr r1, _08046A1C - add r1, sp - lsls r0, r7, 2 - adds r1, r0 - ldrh r2, [r1] - mov r0, r9 - orrs r0, r2 - strh r0, [r1] - ldrh r2, [r1, 0x2] - mov r0, r9 - orrs r0, r2 - strh r0, [r1, 0x2] -_080469CE: - mov r7, r10 - movs r5, 0xAD - lsls r5, 3 - add r5, sp - ldr r5, [r5] - cmp r7, r5 - bge _080469DE - b _080468D2 -_080469DE: - movs r1, 0 - mov r9, r1 - movs r7, 0 - movs r0, 0xAD - lsls r0, 3 - add r0, sp - ldr r0, [r0] - cmp r7, r0 - blt _080469F2 - b _08046B0A -_080469F2: - movs r2, 0 - mov r8, r2 -_080469F6: - ldr r0, _08046A1C - add r0, sp - lsls r2, r7, 2 - adds r3, r0, r2 - movs r4, 0 - ldrsh r0, [r3, r4] - cmp r0, 0 - bge _08046A20 - movs r0, 0x74 - muls r0, r7 - add r0, sp - adds r0, 0x4 - mov r5, r8 - str r5, [r0] - movs r0, 0x1 - mov r9, r0 - b _08046AFA - .align 2, 0 -_08046A18: .4byte gUnknown_80F4468 -_08046A1C: .4byte 0x0000048c -_08046A20: - movs r0, 0x74 - adds r6, r7, 0 - muls r6, r0 - mov r4, sp - adds r4, r6 - adds r4, 0x4 - movs r0, 0x3 - str r0, [r4] - adds r0, r4, 0 - adds r0, 0x24 - mov r1, r8 - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0x20 - movs r0, 0x1 - strb r0, [r1] - adds r0, r4, 0 - adds r0, 0x22 - mov r5, r8 - strb r5, [r0] - add r0, sp, 0x74 - adds r0, r6 - ldr r1, _08046B2C - add r1, sp - ldr r1, [r1] - adds r2, r1, r2 - str r2, [r0] - add r0, sp, 0x8 - adds r0, r6 - ldr r1, [r3] - str r1, [r0] - movs r2, 0xA5 - lsls r2, 3 - add r2, sp - ldr r2, [r2] - movs r5, 0 - ldrsh r0, [r2, r5] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, 0x4 - lsls r1, 8 - movs r5, 0x2 - ldrsh r0, [r2, r5] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 3 - adds r2, 0x4 - lsls r2, 8 - adds r0, r4, 0 - movs r5, 0xA8 - lsls r5, 3 - add r5, sp - str r3, [r5] - bl sub_8045394 - mov r0, r8 - strh r0, [r4, 0x26] - ldr r4, _08046B30 - add r4, sp - lsls r5, r7, 3 - adds r4, r5 - movs r1, 0xA8 - lsls r1, 3 - add r1, sp - ldr r3, [r1] - movs r2, 0 - ldrsh r1, [r3, r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, 0x4 - lsls r0, 8 - add r1, sp, 0x10 - adds r1, r6 - ldr r1, [r1] - subs r0, r1 - movs r1, 0x18 - movs r2, 0xA8 - lsls r2, 3 - add r2, sp - str r3, [r2] - bl __divsi3 - str r0, [r4] - movs r4, 0x97 - lsls r4, 3 - add r4, sp - adds r4, r5 - movs r5, 0xA8 - lsls r5, 3 - add r5, sp - ldr r3, [r5] - movs r0, 0x2 - ldrsh r1, [r3, r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, 0x4 - lsls r0, 8 - add r1, sp, 0x14 - adds r1, r6 - ldr r1, [r1] - subs r0, r1 - movs r1, 0x18 - bl __divsi3 - str r0, [r4] - movs r1, 0x1 -_08046AFA: - adds r7, 0x1 - movs r2, 0xAD - lsls r2, 3 - add r2, sp - ldr r2, [r2] - cmp r7, r2 - bge _08046B0A - b _080469F6 -_08046B0A: - cmp r1, 0 - bne _08046B54 - movs r3, 0xAD - lsls r3, 3 - add r3, sp - ldr r3, [r3] - cmp r3, 0x1 - ble _08046B3C - ldr r0, _08046B34 - ldr r1, [r0] - ldr r4, _08046B38 - add r4, sp - ldr r0, [r4] - bl sub_80522A8 - b _08046C7C - .align 2, 0 -_08046B2C: .4byte 0x0000052c -_08046B30: .4byte 0x000004b4 -_08046B34: .4byte gUnknown_80F945C -_08046B38: .4byte 0x00000524 -_08046B3C: - ldr r0, _08046B4C - ldr r1, [r0] - ldr r5, _08046B50 - add r5, sp - ldr r0, [r5] - bl sub_80522A8 - b _08046C7C - .align 2, 0 -_08046B4C: .4byte gUnknown_80F943C -_08046B50: .4byte 0x00000524 -_08046B54: - mov r0, r9 - cmp r0, 0 - beq _08046B68 - ldr r0, _08046C90 - ldr r1, [r0] - ldr r2, _08046C94 - add r2, sp - ldr r0, [r2] - bl sub_80522A8 -_08046B68: - movs r3, 0 - mov r9, r3 - ldr r0, _08046C98 - ldr r0, [r0] - ldr r4, _08046C9C - adds r0, r4 - ldrb r0, [r0] - movs r5, 0xA6 - lsls r5, 3 - add r5, sp - str r0, [r5] - mov r10, r3 - movs r6, 0 -_08046B82: - movs r7, 0 - mov r0, r10 - adds r0, 0x55 - movs r1, 0xA7 - lsls r1, 3 - add r1, sp - str r0, [r1] - adds r2, r6, 0x1 - ldr r3, _08046CA0 - add r3, sp - str r2, [r3] - movs r4, 0xAD - lsls r4, 3 - add r4, sp - ldr r4, [r4] - cmp r7, r4 - bge _08046C14 - mov r5, r9 - lsls r5, 24 - mov r8, r5 -_08046BAA: - movs r0, 0x74 - adds r5, r7, 0 - muls r5, r0 - mov r4, sp - adds r4, r5 - adds r4, 0x4 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08046C06 - ldr r0, _08046CA4 - add r0, sp - lsls r2, r7, 3 - adds r0, r2 - ldr r1, [r0] - movs r0, 0x97 - lsls r0, 3 - add r0, sp - adds r0, r2 - ldr r2, [r0] - adds r0, r4, 0 - bl sub_804539C - mov r0, r10 - bl sub_8009C7C - add r2, sp, 0x20 - adds r2, r5 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - str r1, [r2] - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0xA6 - lsls r2, 3 - add r2, sp - ldr r1, [r2] - movs r2, 0x1 - mov r4, r8 - lsrs r3, r4, 24 - bl sub_80462AC -_08046C06: - adds r7, 0x1 - movs r5, 0xAD - lsls r5, 3 - add r5, sp - ldr r5, [r5] - cmp r7, r5 - blt _08046BAA -_08046C14: - movs r0, 0x13 - bl sub_803E46C - movs r0, 0xA7 - lsls r0, 3 - add r0, sp - ldr r0, [r0] - mov r10, r0 - movs r0, 0x3 - ands r0, r6 - cmp r0, 0 - bne _08046C30 - movs r1, 0x1 - add r9, r1 -_08046C30: - movs r0, 0x7 - mov r2, r9 - ands r2, r0 - mov r9, r2 - ldr r3, _08046CA0 - add r3, sp - ldr r6, [r3] - cmp r6, 0x17 - ble _08046B82 - movs r4, 0xAD - lsls r4, 3 - add r4, sp - ldr r4, [r4] - cmp r4, 0 - ble _08046C7C - ldr r0, _08046CA8 - add r0, sp - ldr r5, [r0] - ldr r4, _08046CAC - add r4, sp - movs r1, 0xAD - lsls r1, 3 - add r1, sp - ldr r7, [r1] -_08046C60: - movs r2, 0 - ldrsh r0, [r4, r2] - cmp r0, 0 - blt _08046C72 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80460F8 -_08046C72: - adds r5, 0x4 - adds r4, 0x4 - subs r7, 0x1 - cmp r7, 0 - bne _08046C60 -_08046C7C: - movs r3, 0xA9 - lsls r3, 3 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08046C90: .4byte gUnknown_80F947C -_08046C94: .4byte 0x00000524 -_08046C98: .4byte gUnknown_203B418 -_08046C9C: .4byte 0x00018210 -_08046CA0: .4byte 0x0000053c -_08046CA4: .4byte 0x000004b4 -_08046CA8: .4byte 0x0000052c -_08046CAC: .4byte 0x0000048c - thumb_func_end sub_804687C - - thumb_func_start sub_8046CB0 -sub_8046CB0: - push {lr} - lsls r1, 24 - lsrs r1, 24 - ldr r0, [r0, 0x70] - adds r3, r0, 0 - adds r0, 0x60 - ldrb r2, [r0] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _08046CDC - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - bne _08046CDC - adds r0, r3, 0 - adds r0, 0x62 - ldrb r0, [r0] - cmp r0, r1 - bne _08046CDC - movs r0, 0x1 - b _08046CDE -_08046CDC: - movs r0, 0 -_08046CDE: - pop {r1} - bx r1 - thumb_func_end sub_8046CB0 - - thumb_func_start sub_8046CE4 -sub_8046CE4: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x64 - bl sub_8084100 - adds r1, r0, 0 - movs r2, 0 - ldr r3, _08046D04 -_08046CF6: - lsls r0, r1, 2 - adds r0, r3 - ldr r0, [r0] - cmp r0, r5 - bgt _08046D08 - strb r1, [r4, 0x1] - b _08046D18 - .align 2, 0 -_08046D04: .4byte gUnknown_810A3F0 -_08046D08: - lsrs r0, r1, 31 - adds r0, r1, r0 - asrs r1, r0, 1 - adds r2, 0x1 - cmp r2, 0xC7 - ble _08046CF6 - movs r0, 0x1 - strb r0, [r4, 0x1] -_08046D18: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8046CE4 - - thumb_func_start sub_8046D20 -sub_8046D20: - push {r4,r5,lr} - ldr r4, _08046D5C - ldr r0, [r4] - ldrb r5, [r0, 0x8] - bl sub_8046D70 - ldr r1, [r4] - strb r0, [r1, 0x8] - ldr r0, [r4] - ldrb r0, [r0, 0x8] - cmp r0, 0x1 - bne _08046D64 - cmp r5, 0 - bne _08046D64 - ldr r0, _08046D60 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl sub_8052B8C - adds r1, r0, 0 - cmp r1, 0x1 - bne _08046D64 - ldr r0, [r4] - strb r1, [r0, 0x4] - ldr r1, [r4] - movs r0, 0x2 - strb r0, [r1, 0x11] - b _08046D68 - .align 2, 0 -_08046D5C: .4byte gUnknown_203B418 -_08046D60: .4byte gUnknown_80FA408 -_08046D64: - bl sub_8046D8C -_08046D68: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8046D20 - - thumb_func_start sub_8046D70 -sub_8046D70: - push {lr} - ldr r0, _08046D84 - ldr r0, [r0] - ldr r1, _08046D88 - adds r0, r1 - ldrb r0, [r0] - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_08046D84: .4byte gUnknown_203B418 -_08046D88: .4byte 0x0000068a - thumb_func_end sub_8046D70 - - thumb_func_start sub_8046D8C -sub_8046D8C: - push {r4-r7,lr} - sub sp, 0xC - movs r6, 0 - ldr r5, _08046EDC - movs r4, 0 -_08046D96: - movs r7, 0 - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - str r0, [sp, 0x4] - str r0, [sp, 0x8] - movs r3, 0 - ldr r2, [r5] -_08046DA6: - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08046DC8 - ldrb r0, [r2, 0x2] - cmp r0, 0x79 - bne _08046DB8 - str r3, [sp] -_08046DB8: - ldrb r0, [r2, 0x2] - cmp r0, 0x77 - bne _08046DC0 - str r3, [sp, 0x4] -_08046DC0: - ldrb r0, [r2, 0x2] - cmp r0, 0x78 - bne _08046DC8 - str r3, [sp, 0x8] -_08046DC8: - adds r2, 0x4 - adds r3, 0x1 - cmp r3, 0x13 - ble _08046DA6 - ldr r1, [sp] - cmp r1, 0 - blt _08046E1E - ldr r0, [sp, 0x4] - cmp r0, 0 - blt _08046E1E - ldr r0, [sp, 0x8] - cmp r0, 0 - blt _08046E1E - movs r7, 0x1 - movs r6, 0x1 - lsls r1, 2 - ldr r0, [r5] - adds r1, r0 - strb r4, [r1, 0x2] - strb r4, [r1, 0x1] - strb r4, [r1] - ldr r0, [sp, 0x4] - lsls r0, 2 - ldr r1, [r5] - adds r0, r1 - strb r4, [r0, 0x2] - strb r4, [r0, 0x1] - strb r4, [r0] - ldr r0, [sp, 0x8] - lsls r0, 2 - ldr r1, [r5] - adds r0, r1 - strb r4, [r0, 0x2] - strb r4, [r0, 0x1] - strb r4, [r0] - ldr r1, [sp] - lsls r1, 2 - ldr r0, [r5] - adds r0, r1 - movs r1, 0x7A - movs r2, 0 - bl sub_8090A8C -_08046E1E: - cmp r7, 0 - bne _08046D96 - bl sub_80910B4 - cmp r6, 0 - beq _08046ED4 - bl sub_8083600 - adds r4, r0, 0 - ldr r0, _08046EE0 - bl sub_80855E4 - ldr r6, _08046EE4 - ldr r0, [r6] - ldr r5, _08046EE8 - adds r0, r5 - movs r1, 0x1 - strb r1, [r0] - ldr r0, _08046EEC - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - movs r0, 0x3C - movs r1, 0x41 - bl sub_803E708 - ldr r0, _08046EF0 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - adds r0, r4, 0 - movs r1, 0x4 - movs r2, 0xA - movs r3, 0 - bl sub_80869E4 - adds r0, r4, 0 - adds r0, 0xC - movs r1, 0x86 - lsls r1, 1 - movs r2, 0 - bl sub_80416E0 - adds r0, r4, 0 - movs r1, 0xD7 - bl sub_80421C0 - movs r0, 0x3C - movs r1, 0x41 - bl sub_803E708 - ldr r0, _08046EF4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08046EF8 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - movs r0, 0xA - movs r1, 0x41 - bl sub_803E708 - movs r0, 0xD4 - bl sub_8083E38 - ldr r0, _08046EFC - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - movs r0, 0xA - movs r1, 0x41 - bl sub_803E708 - movs r0, 0x1 - bl sub_804178C - ldr r0, [r6] - adds r0, r5 - strb r7, [r0] - bl sub_8040A84 -_08046ED4: - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08046EDC: .4byte gUnknown_203B460 -_08046EE0: .4byte sub_80861A8 -_08046EE4: .4byte gUnknown_203B418 -_08046EE8: .4byte 0x0001356c -_08046EEC: .4byte gUnknown_810531C -_08046EF0: .4byte gUnknown_8105360 -_08046EF4: .4byte gUnknown_202DF98 -_08046EF8: .4byte gUnknown_81053A8 -_08046EFC: .4byte gUnknown_8105434 - thumb_func_end sub_8046D8C - - thumb_func_start sub_8046F00 -sub_8046F00: - push {r4-r7,lr} - adds r4, r0, 0 - ldrb r0, [r4, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _08046F7C - ldrb r0, [r4, 0x2] - bl sub_80913CC - lsls r0, 16 - lsrs r7, r0, 16 - ldrb r0, [r4, 0x2] - bl sub_80915A0 - lsls r0, 24 - cmp r0, 0 - bne _08046F6E - movs r6, 0 -_08046F2A: - ldr r0, _08046F74 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _08046F78 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08046F68 - ldr r0, [r4, 0x70] - movs r2, 0x2 - ldrsh r1, [r0, r2] - adds r0, r7, 0 - bl sub_808E190 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r4, 0 - movs r1, 0 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - beq _08046F64 - movs r5, 0 -_08046F64: - cmp r5, 0 - bne _08046F7C -_08046F68: - adds r6, 0x1 - cmp r6, 0x3 - ble _08046F2A -_08046F6E: - movs r0, 0 - b _08046F7E - .align 2, 0 -_08046F74: .4byte gUnknown_203B418 -_08046F78: .4byte 0x0001357c -_08046F7C: - movs r0, 0x1 -_08046F7E: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8046F00 - - thumb_func_start sub_8046F84 -sub_8046F84: - push {r4-r7,lr} - adds r7, r0, 0 - movs r5, 0 - ldr r4, _08047000 - movs r6, 0x1 - movs r3, 0 -_08046F90: - lsls r1, r5, 2 - ldr r0, [r4] - adds r2, r0, r1 - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08046FAE - ldrb r0, [r2] - ands r0, r7 - cmp r0, 0 - beq _08046FAE - strb r3, [r2, 0x2] - strb r3, [r2, 0x1] - strb r3, [r2] -_08046FAE: - adds r5, 0x1 - cmp r5, 0x13 - ble _08046F90 - bl sub_80910B4 - movs r5, 0 - movs r6, 0 -_08046FBC: - ldr r0, _08047004 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08047008 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08046FF4 - ldr r0, [r4, 0x70] - adds r2, r0, 0 - adds r2, 0x60 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08046FF4 - ldrb r0, [r2] - ands r0, r7 - cmp r0, 0 - beq _08046FF4 - strb r6, [r2, 0x2] - strb r6, [r2, 0x1] - strb r6, [r2] -_08046FF4: - adds r5, 0x1 - cmp r5, 0x3 - ble _08046FBC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08047000: .4byte gUnknown_203B460 -_08047004: .4byte gUnknown_203B418 -_08047008: .4byte 0x0001357c - thumb_func_end sub_8046F84 - - thumb_func_start sub_804700C -sub_804700C: - push {r4,r5,lr} - movs r5, 0 - ldr r4, _08047078 -_08047012: - lsls r1, r5, 2 - ldr r0, [r4] - adds r2, r0, r1 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804702C - adds r0, r2, 0 - movs r1, 0x46 - movs r2, 0 - bl sub_8090A8C -_0804702C: - adds r5, 0x1 - cmp r5, 0x13 - ble _08047012 - bl sub_80910B4 - movs r5, 0 -_08047038: - ldr r0, _0804707C - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08047080 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0804706C - ldr r0, [r4, 0x70] - adds r2, r0, 0 - adds r2, 0x60 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804706C - adds r0, r2, 0 - movs r1, 0x46 - movs r2, 0 - bl sub_8090A8C -_0804706C: - adds r5, 0x1 - cmp r5, 0x3 - ble _08047038 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08047078: .4byte gUnknown_203B460 -_0804707C: .4byte gUnknown_203B418 -_08047080: .4byte 0x0001357c - thumb_func_end sub_804700C - - thumb_func_start sub_8047084 -sub_8047084: - push {r4-r6,lr} - adds r6, r0, 0 - movs r5, 0 - ldr r0, _080470E8 - ldr r2, [r0] - movs r3, 0x1 -_08047090: - ldrb r1, [r2] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _080470A2 - ldrb r0, [r2] - ands r0, r6 - cmp r0, 0 - bne _080470E2 -_080470A2: - adds r2, 0x4 - adds r5, 0x1 - cmp r5, 0x13 - ble _08047090 - bl sub_80910B4 - movs r5, 0 -_080470B0: - ldr r0, _080470EC - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080470F0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080470F4 - ldr r0, [r4, 0x70] - adds r2, r0, 0 - adds r2, 0x60 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080470F4 - ldrb r0, [r2] - ands r0, r6 - cmp r0, 0 - beq _080470F4 -_080470E2: - movs r0, 0x1 - b _080470FC - .align 2, 0 -_080470E8: .4byte gUnknown_203B460 -_080470EC: .4byte gUnknown_203B418 -_080470F0: .4byte 0x0001357c -_080470F4: - adds r5, 0x1 - cmp r5, 0x3 - ble _080470B0 - movs r0, 0 -_080470FC: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8047084 - - thumb_func_start sub_8047104 -sub_8047104: - push {r4-r6,lr} - movs r6, 0 - movs r5, 0 -_0804710A: - ldr r0, _08047154 - lsls r1, r6, 2 - ldr r0, [r0] - adds r4, r0, r1 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08047142 - ldrb r0, [r4, 0x2] - cmp r0, 0x69 - bne _08047132 - adds r0, r4, 0 - bl sub_80915D4 - bl sub_80913A0 - strb r5, [r4, 0x2] - strb r5, [r4, 0x1] - strb r5, [r4] -_08047132: - ldrb r1, [r4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08047142 - strb r5, [r4, 0x2] - strb r5, [r4, 0x1] - strb r5, [r4] -_08047142: - adds r6, 0x1 - cmp r6, 0x13 - ble _0804710A - bl sub_80910B4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08047154: .4byte gUnknown_203B460 - thumb_func_end sub_8047104 - - thumb_func_start sub_8047158 -sub_8047158: - push {r4-r6,lr} - movs r3, 0 - ldr r5, _0804718C - movs r6, 0x1 - movs r4, 0x4 -_08047162: - lsls r1, r3, 2 - ldr r0, [r5] - adds r2, r0, r1 - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08047180 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _08047180 - movs r0, 0xFB - ands r0, r1 - strb r0, [r2] -_08047180: - adds r3, 0x1 - cmp r3, 0x13 - ble _08047162 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804718C: .4byte gUnknown_203B460 - thumb_func_end sub_8047158 - - thumb_func_start sub_8047190 -sub_8047190: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _080472E8 - add sp, r4 - mov r9, r0 - str r1, [sp, 0x214] - ldr r6, _080472EC - ldr r1, [r6] - ldr r4, _080472F0 - adds r0, r1, r4 - ldrb r0, [r0] - str r0, [sp, 0x220] - mov r8, r3 - adds r7, r1, 0 - adds r7, 0xC0 - movs r0, 0x3 - str r0, [r7] - adds r0, r1, 0 - adds r0, 0xE4 - movs r4, 0 - strb r4, [r0] - subs r0, 0x4 - movs r5, 0x1 - strb r5, [r0] - adds r0, 0x2 - strb r4, [r0] - ldr r0, [sp, 0x214] - str r0, [r7, 0x70] - str r4, [r7, 0x1C] - ldr r0, [r2] - str r0, [r7, 0x4] - movs r1, 0 - ldrsh r0, [r2, r1] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, 0x4 - lsls r1, 8 - movs r3, 0x2 - ldrsh r0, [r2, r3] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 11 - adds r0, r7, 0 - bl sub_8045394 - strh r4, [r7, 0x26] - str r4, [sp, 0x224] - mov r0, r9 - bl sub_80450F8 - cmp r0, 0x1 - bne _08047214 - mov r0, r9 - movs r1, 0x2A - bl sub_8046CB0 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - str r1, [sp, 0x224] -_08047214: - ldr r0, [sp, 0x260] - movs r1, 0x2 - ldrsh r0, [r0, r1] - str r0, [sp, 0x218] - movs r2, 0 - str r2, [sp, 0x21C] - ldr r0, [r6] - ldr r3, _080472F4 - adds r0, r3 - strb r5, [r0] -_08047228: - ldr r4, [r7, 0x4] - mov r10, r4 - ldr r1, [sp, 0x260] - ldrb r0, [r1, 0x1] - cmp r0, 0 - beq _080472AE - ldrb r0, [r1] - cmp r0, 0 - bne _080472AE - movs r2, 0x4 - ldrsh r0, [r7, r2] - ldr r2, _080472F8 - mov r3, r8 - lsls r4, r3, 2 - adds r2, r4, r2 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r7, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - adds r5, r0, 0 - ldrh r1, [r5] - movs r0, 0x3 - ands r0, r1 - str r4, [sp, 0x230] - cmp r0, 0 - bne _080472AE - movs r6, 0 - ldr r1, _080472FC - mov r4, r10 - lsls r0, r4, 16 - asrs r0, 16 - str r0, [sp, 0x23C] - ldr r0, [sp, 0x230] - adds r5, r0, r1 - asrs r2, r4, 16 -_0804727A: - ldrb r4, [r5] - cmp r4, 0x7 - bgt _080472A6 - ldr r0, _080472F8 - lsls r1, r4, 2 - adds r1, r0 - movs r3, 0 - ldrsh r0, [r1, r3] - ldr r3, [sp, 0x23C] - adds r0, r3 - movs r3, 0x2 - ldrsh r1, [r1, r3] - adds r1, r2 - str r2, [sp, 0x234] - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - ldr r2, [sp, 0x234] - cmp r0, 0 - bne _08047300 -_080472A6: - adds r5, 0x1 - adds r6, 0x1 - cmp r6, 0x3 - ble _0804727A -_080472AE: - ldr r0, _080472F8 - mov r4, r8 - lsls r2, r4, 2 - adds r3, r2, r0 - ldrh r1, [r3] - ldrh r0, [r7, 0x4] - adds r1, r0 - strh r1, [r7, 0x4] - ldrh r0, [r3, 0x2] - ldrh r4, [r7, 0x6] - adds r0, r4 - strh r0, [r7, 0x6] - lsls r1, 16 - asrs r1, 16 - str r2, [sp, 0x230] - cmp r1, 0 - blt _080472E0 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - blt _080472E0 - cmp r1, 0x37 - bgt _080472E0 - cmp r0, 0x1F - ble _08047304 -_080472E0: - movs r0, 0x2 - mov r10, r0 - b _0804744C - .align 2, 0 -_080472E8: .4byte 0xfffffdc0 -_080472EC: .4byte gUnknown_203B418 -_080472F0: .4byte 0x00018210 -_080472F4: .4byte 0x0001c05e -_080472F8: .4byte gUnknown_80F4448 -_080472FC: .4byte gUnknown_80F4D64 -_08047300: - mov r8, r4 - b _080472AE -_08047304: - movs r1, 0 - ldrsh r0, [r3, r1] - lsls r0, 10 - str r0, [sp, 0x228] - movs r2, 0x2 - ldrsh r0, [r3, r2] - lsls r0, 10 - str r0, [sp, 0x22C] - mov r3, r8 - lsls r6, r3, 24 - movs r5, 0x5 -_0804731A: - movs r4, 0 - adds r0, r7, 0 - ldr r1, [sp, 0x228] - ldr r2, [sp, 0x22C] - bl sub_804539C - bl sub_804AF74 - lsls r0, 24 - movs r2, 0 - cmp r0, 0 - beq _08047334 - movs r2, 0x3 -_08047334: - ldr r0, [r7, 0xC] - cmp r0, 0 - bge _0804733C - adds r0, 0xFF -_0804733C: - asrs r0, 8 - adds r0, 0x8 - ldr r1, [r7, 0x10] - cmp r1, 0 - bge _08047348 - adds r1, 0xFF -_08047348: - asrs r1, 8 - adds r1, 0x10 - bl sub_8083568 - lsls r0, 24 - cmp r0, 0 - beq _08047358 - movs r4, 0x1 -_08047358: - movs r0, 0x1 - str r0, [sp] - adds r0, r7, 0 - ldr r1, [sp, 0x220] - movs r2, 0 - lsrs r3, r6, 24 - bl sub_80462AC - lsls r0, 24 - cmp r0, 0 - beq _08047370 - movs r4, 0x1 -_08047370: - cmp r4, 0 - beq _0804737A - movs r0, 0x12 - bl sub_803E46C -_0804737A: - subs r5, 0x1 - cmp r5, 0 - bge _0804731A - movs r4, 0x4 - ldrsh r0, [r7, r4] - movs r2, 0x6 - ldrsh r1, [r7, r2] - bl sub_804954C - adds r5, r0, 0 - ldrh r1, [r5] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _080473A2 - ldr r3, [sp, 0x260] - ldrb r0, [r3] - cmp r0, 0 - bne _080473A2 - b _0804757A -_080473A2: - ldr r1, [r5, 0x10] - cmp r1, 0 - beq _08047436 - movs r4, 0 - ldr r2, [sp, 0x260] - ldrb r0, [r2] - cmp r0, 0 - bne _080473CE - adds r0, r1, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _080473CE - ldr r0, [r5, 0x10] - movs r1, 0x26 - bl sub_8046CB0 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 -_080473CE: - cmp r4, 0 - beq _080473E0 - movs r3, 0x4 - add r8, r3 - movs r0, 0x7 - mov r4, r8 - ands r4, r0 - mov r8, r4 - b _08047436 -_080473E0: - movs r6, 0x1 - ldr r0, [r5, 0x10] - bl sub_80450F8 - cmp r0, 0x1 - bne _08047406 - add r4, sp, 0x208 - adds r0, r4, 0 - ldr r1, _080474B8 - bl sub_8092A88 - ldr r0, [r5, 0x10] - adds r1, r4, 0 - bl sub_80571F0 - lsls r0, 24 - cmp r0, 0 - beq _08047406 - movs r6, 0 -_08047406: - cmp r6, 0 - beq _08047436 - ldr r0, [sp, 0x21C] - cmp r0, 0x3F - bgt _0804742C - lsls r0, 3 - mov r4, sp - adds r4, r0 - adds r4, 0x8 - ldr r0, [r5, 0x10] - str r0, [r4] - ldr r1, [r5, 0x10] - mov r0, r9 - bl sub_8047930 - strb r0, [r4, 0x4] - ldr r1, [sp, 0x21C] - adds r1, 0x1 - str r1, [sp, 0x21C] -_0804742C: - ldr r2, [sp, 0x260] - ldrb r0, [r2] - cmp r0, 0 - bne _08047436 - b _08047574 -_08047436: - ldr r3, [sp, 0x218] - subs r3, 0x1 - str r3, [sp, 0x218] - cmp r3, 0 - ble _08047442 - b _08047228 -_08047442: - movs r4, 0x1 - mov r10, r4 - mov r0, r8 - lsls r0, 2 - str r0, [sp, 0x230] -_0804744C: - ldr r0, _080474BC - ldr r0, [r0] - ldr r1, _080474C0 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r2, [sp, 0x21C] - cmp r2, 0 - ble _0804752C - add r5, sp, 0x8 - adds r6, r2, 0 -_08047462: - ldr r4, [r5] - ldrb r0, [r5, 0x4] - cmp r0, 0 - beq _080474D0 - ldr r0, _080474C4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _080474C8 - ldr r1, [sp, 0x214] - bl sub_8045C08 - ldr r0, _080474CC - ldr r2, [r0] - mov r0, r9 - adds r1, r4, 0 - bl sub_80522F4 - mov r0, r9 - adds r1, r4, 0 - bl sub_807A96C - lsls r0, 24 - lsrs r2, r0, 24 - movs r1, 0 - ldr r3, [sp, 0x224] - cmp r3, 0 - bne _080474A4 - ldr r3, [sp, 0x260] - ldrb r0, [r3] - cmp r0, 0 - beq _080474A6 -_080474A4: - movs r1, 0x1 -_080474A6: - str r4, [sp] - ldr r4, [sp, 0x214] - str r4, [sp, 0x4] - movs r0, 0x1 - mov r3, r9 - bl sub_80479B8 - b _08047524 - .align 2, 0 -_080474B8: .4byte 0x00000195 -_080474BC: .4byte gUnknown_203B418 -_080474C0: .4byte 0x0001c05e -_080474C4: .4byte gUnknown_202DF98 -_080474C8: .4byte gUnknown_202DE58 -_080474CC: .4byte gUnknown_80F94C4 -_080474D0: - ldr r1, [sp, 0x260] - ldrb r0, [r1] - cmp r0, 0 - bne _080474E2 - ldr r2, [sp, 0x21C] - cmp r2, 0x1 - bne _080474E2 - movs r3, 0x1 - mov r10, r3 -_080474E2: - ldr r0, _0804750C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08047510 - ldr r1, [sp, 0x214] - bl sub_8045BF8 - ldr r1, [sp, 0x260] - ldrb r0, [r1] - cmp r0, 0 - beq _08047518 - ldr r0, _08047514 - ldr r2, [r0] - mov r0, r9 - adds r1, r4, 0 - bl sub_80522F4 - b _08047524 - .align 2, 0 -_0804750C: .4byte gUnknown_202DF98 -_08047510: .4byte gUnknown_202DE58 -_08047514: .4byte gUnknown_80F94D8 -_08047518: - ldr r0, _08047564 - ldr r2, [r0] - mov r0, r9 - adds r1, r4, 0 - bl sub_80522F4 -_08047524: - adds r5, 0x8 - subs r6, 0x1 - cmp r6, 0 - bne _08047462 -_0804752C: - ldr r2, _08047568 - ldr r3, [sp, 0x230] - adds r2, r3, r2 - movs r4, 0 - ldrsh r1, [r2, r4] - lsls r1, 19 - lsrs r1, 16 - ldr r4, _0804756C - add r3, sp, 0x210 - ldr r0, [r3] - ands r0, r4 - orrs r0, r1 - str r0, [r3] - movs r4, 0x2 - ldrsh r1, [r2, r4] - lsls r1, 19 - ldr r2, _08047570 - ands r0, r2 - orrs r0, r1 - str r0, [r3] - mov r0, r10 - cmp r0, 0x1 - beq _08047584 - cmp r0, 0x1 - bcc _080475A8 - cmp r0, 0x2 - beq _08047596 - b _080475A8 - .align 2, 0 -_08047564: .4byte gUnknown_80F94F0 -_08047568: .4byte gUnknown_80F4448 -_0804756C: .4byte 0xffff0000 -_08047570: .4byte 0x0000ffff -_08047574: - movs r1, 0 - mov r10, r1 - b _0804744C -_0804757A: - mov r2, r10 - str r2, [r7, 0x4] - movs r3, 0x1 - mov r10, r3 - b _0804744C -_08047584: - add r0, sp, 0x210 - str r0, [sp] - mov r0, r9 - adds r1, r7, 0 - ldr r2, [sp, 0x214] - movs r3, 0x1 - bl sub_804652C - b _080475A8 -_08047596: - ldr r0, _080475BC - ldr r1, [sp, 0x214] - bl sub_8045C08 - ldr r0, _080475C0 - ldr r1, [r0] - mov r0, r9 - bl sub_80522A8 -_080475A8: - movs r3, 0x90 - lsls r3, 2 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080475BC: .4byte gUnknown_202DE58 -_080475C0: .4byte gUnknown_80F9530 - thumb_func_end sub_8047190 - - thumb_func_start sub_80475C4 -sub_80475C4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x44 - str r0, [sp, 0x10] - str r1, [sp, 0x14] - adds r7, r2, 0 - str r3, [sp, 0x18] - ldr r0, _08047848 - mov r8, r0 - ldr r2, [r0] - ldr r1, _0804784C - adds r0, r2, r1 - ldrb r0, [r0] - str r0, [sp, 0x24] - movs r4, 0 - movs r5, 0 - adds r3, r2, 0 - adds r3, 0xC0 - str r3, [sp, 0x1C] - movs r0, 0x3 - str r0, [r3] - adds r0, r2, 0 - adds r0, 0xE4 - strb r4, [r0] - adds r1, r2, 0 - adds r1, 0xE0 - movs r0, 0x1 - strb r0, [r1] - adds r0, r2, 0 - adds r0, 0xE2 - strb r4, [r0] - ldr r0, [sp, 0x14] - str r0, [r3, 0x70] - str r5, [r3, 0x1C] - ldr r0, [r7] - str r0, [r3, 0x4] - movs r1, 0 - ldrsh r0, [r7, r1] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, 0x4 - lsls r1, 8 - movs r2, 0x2 - ldrsh r0, [r7, r2] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 3 - adds r2, 0x4 - lsls r2, 8 - ldr r0, [sp, 0x1C] - bl sub_8045394 - ldr r3, [sp, 0x1C] - strh r4, [r3, 0x26] - movs r0, 0x1 - str r0, [sp, 0x20] - movs r1, 0 - str r1, [sp, 0x28] - ldr r0, [sp, 0x10] - bl sub_80450F8 - cmp r0, 0x1 - bne _0804765E - ldr r0, [sp, 0x10] - movs r1, 0x2A - bl sub_8046CB0 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - str r1, [sp, 0x28] -_0804765E: - adds r0, r7, 0 - bl sub_803F428 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - ldr r0, [sp, 0x18] - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - beq _0804767C - movs r4, 0x1 -_0804767C: - mov r2, r8 - ldr r0, [r2] - ldr r3, _08047850 - adds r0, r3 - add r1, sp, 0x20 - ldrb r1, [r1] - strb r1, [r0] - cmp r4, 0 - bne _08047690 - b _080477D0 -_08047690: - ldr r2, [sp, 0x1C] - movs r3, 0x4 - ldrsh r0, [r2, r3] - ldr r1, [sp, 0x18] - movs r2, 0 - ldrsh r1, [r1, r2] - mov r9, r1 - subs r1, r0, r1 - cmp r1, 0 - bge _080476A6 - negs r1, r1 -_080476A6: - ldr r3, [sp, 0x1C] - movs r2, 0x6 - ldrsh r0, [r3, r2] - ldr r3, [sp, 0x18] - movs r2, 0x2 - ldrsh r3, [r3, r2] - mov r10, r3 - subs r0, r3 - cmp r0, 0 - bge _080476BC - negs r0, r0 -_080476BC: - adds r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r4, r0, 2 - adds r3, r4, 0 - adds r3, 0xC - str r3, [sp, 0x30] - cmp r3, 0x3F - ble _080476D2 - movs r0, 0x40 - str r0, [sp, 0x30] -_080476D2: - movs r1, 0 - str r1, [sp, 0x3C] - movs r0, 0x80 - lsls r0, 12 - adds r1, r4, 0 - bl __divsi3 - str r0, [sp, 0x40] - movs r2, 0 - ldrsh r1, [r7, r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - mov r8, r0 - movs r3, 0x2 - ldrsh r1, [r7, r3] - lsls r0, r1, 1 - adds r0, r1 - lsls r7, r0, 11 - mov r1, r9 - lsls r0, r1, 1 - add r0, r9 - lsls r0, 11 - mov r2, r8 - subs r0, r2 - adds r1, r4, 0 - bl __divsi3 - str r0, [sp, 0x34] - mov r3, r10 - lsls r0, r3, 1 - add r0, r10 - lsls r0, 11 - subs r0, r7 - adds r1, r4, 0 - bl __divsi3 - str r0, [sp, 0x38] - subs r0, r4, 0x3 - cmp r0, 0 - ble _080477D0 - str r0, [sp, 0x2C] -_08047726: - movs r0, 0 - mov r10, r0 - ldr r0, [sp, 0x3C] - cmp r0, 0 - bge _08047732 - adds r0, 0xFF -_08047732: - asrs r0, 8 - bl sub_8009C7C - ldr r2, [sp, 0x30] - adds r1, r0, 0 - muls r1, r2 - movs r0, 0x80 - lsls r0, 3 - mov r2, r8 - adds r3, r2, r0 - adds r2, r7, r0 - ldr r0, [sp, 0x1C] - str r1, [r0, 0x1C] - mov r0, r8 - cmp r0, 0 - bge _08047754 - adds r0, 0xFF -_08047754: - asrs r0, 8 - adds r0, 0x8 - mov r9, r0 - adds r0, r7, 0 - cmp r7, 0 - bge _08047762 - adds r0, 0xFF -_08047762: - asrs r0, 8 - adds r4, r0, 0 - adds r4, 0x10 - ldr r1, [sp, 0x3C] - ldr r0, [sp, 0x40] - adds r1, r0 - str r1, [sp, 0x3C] - ldr r0, [sp, 0x1C] - adds r1, r3, 0 - bl sub_8045394 - bl sub_804AF74 - lsls r0, 24 - movs r2, 0 - cmp r0, 0 - beq _08047786 - movs r2, 0x3 -_08047786: - mov r0, r9 - adds r1, r4, 0 - bl sub_8083568 - lsls r0, 24 - cmp r0, 0 - beq _08047798 - movs r1, 0x1 - mov r10, r1 -_08047798: - movs r0, 0x1 - str r0, [sp] - ldr r0, [sp, 0x1C] - ldr r1, [sp, 0x24] - movs r2, 0 - movs r3, 0xFF - bl sub_80462AC - lsls r0, 24 - cmp r0, 0 - beq _080477B2 - movs r2, 0x1 - mov r10, r2 -_080477B2: - mov r3, r10 - cmp r3, 0 - beq _080477BE - movs r0, 0x17 - bl sub_803E46C -_080477BE: - ldr r0, [sp, 0x34] - add r8, r0 - ldr r1, [sp, 0x38] - adds r7, r1 - ldr r2, [sp, 0x2C] - subs r2, 0x1 - str r2, [sp, 0x2C] - cmp r2, 0 - bne _08047726 -_080477D0: - ldr r3, [sp, 0x18] - ldr r0, [r3] - ldr r1, [sp, 0x1C] - str r0, [r1, 0x4] - ldr r0, _08047848 - ldr r0, [r0] - ldr r2, _08047850 - adds r0, r2 - movs r1, 0 - strb r1, [r0] - movs r1, 0 - ldrsh r0, [r3, r1] - movs r2, 0x2 - ldrsh r1, [r3, r2] - bl sub_804954C - adds r4, r0, 0 - ldr r0, [r4, 0x10] - cmp r0, 0 - bne _080477FA - b _08047904 -_080477FA: - movs r3, 0x1 - mov r8, r3 - movs r7, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _08047834 - ldr r0, [r4, 0x10] - movs r1, 0x26 - bl sub_8046CB0 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r7, r1, 31 - ldr r1, _08047854 - add r0, sp, 0x8 - bl sub_8092A88 - ldr r0, [r4, 0x10] - add r1, sp, 0x8 - bl sub_80571F0 - lsls r0, 24 - cmp r0, 0 - beq _08047834 - movs r0, 0 - mov r8, r0 -_08047834: - mov r1, r8 - cmp r1, 0 - beq _08047904 - ldr r1, [r4, 0x10] - adds r5, r1, 0 - cmp r7, 0 - beq _0804785C - ldr r0, _08047858 - ands r6, r0 - b _0804786E - .align 2, 0 -_08047848: .4byte gUnknown_203B418 -_0804784C: .4byte 0x00018210 -_08047850: .4byte 0x0001c05e -_08047854: .4byte 0x00000195 -_08047858: .4byte 0xffffff00 -_0804785C: - ldr r0, [sp, 0x10] - bl sub_8047930 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080478CC - ands r1, r6 - adds r6, r1, 0 - orrs r6, r0 -_0804786E: - ldr r0, _080478D0 - ldr r1, [sp, 0x14] - bl sub_8045C08 - ldr r0, _080478D4 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - lsls r0, r6, 24 - cmp r0, 0 - beq _080478DC - adds r0, r5, 0 - movs r1, 0x8 - bl sub_806CE94 - ldr r0, _080478D8 - ldr r2, [r0] - ldr r0, [sp, 0x10] - adds r1, r5, 0 - bl sub_80522F4 - ldr r0, [sp, 0x10] - adds r1, r5, 0 - bl sub_807A96C - lsls r0, 24 - lsrs r2, r0, 24 - movs r1, 0 - ldr r3, [sp, 0x28] - cmp r3, 0 - bne _080478B6 - ldr r0, [sp, 0x64] - ldrb r0, [r0] - cmp r0, 0 - beq _080478B8 -_080478B6: - movs r1, 0x1 -_080478B8: - str r5, [sp] - ldr r0, [sp, 0x14] - str r0, [sp, 0x4] - movs r0, 0x1 - ldr r3, [sp, 0x10] - bl sub_80479B8 - movs r1, 0 - str r1, [sp, 0x20] - b _08047904 - .align 2, 0 -_080478CC: .4byte 0xffffff00 -_080478D0: .4byte gUnknown_202DE58 -_080478D4: .4byte gUnknown_202DF98 -_080478D8: .4byte gUnknown_80F94C4 -_080478DC: - cmp r7, 0 - beq _080478F4 - ldr r0, _080478F0 - ldr r2, [r0] - ldr r0, [sp, 0x10] - adds r1, r5, 0 - bl sub_80522F4 - b _08047900 - .align 2, 0 -_080478F0: .4byte gUnknown_80F9510 -_080478F4: - ldr r0, _0804792C - ldr r2, [r0] - ldr r0, [sp, 0x10] - adds r1, r5, 0 - bl sub_80522F4 -_08047900: - movs r2, 0x1 - str r2, [sp, 0x20] -_08047904: - ldr r3, [sp, 0x20] - cmp r3, 0x1 - bne _0804791A - movs r0, 0 - str r0, [sp] - ldr r0, [sp, 0x10] - ldr r1, [sp, 0x1C] - ldr r2, [sp, 0x14] - movs r3, 0 - bl sub_804652C -_0804791A: - add sp, 0x44 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804792C: .4byte gUnknown_80F94F0 - thumb_func_end sub_80475C4 - - thumb_func_start sub_8047930 -sub_8047930: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, [r5, 0x70] - ldrb r0, [r1, 0x8] - cmp r0, 0x1 - beq _0804794C - adds r0, r1, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x4 - beq _0804794C - cmp r0, 0x1 - bne _08047950 -_0804794C: - movs r0, 0 - b _080479B0 -_08047950: - movs r0, 0x64 - bl sub_8084100 - ldr r1, _08047980 - movs r2, 0 - ldrsh r1, [r1, r2] - movs r6, 0 - cmp r0, r1 - bge _08047964 - movs r6, 0x1 -_08047964: - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _08047994 - adds r0, r4, 0 - movs r1, 0x28 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08047984 - movs r6, 0 - b _08047994 - .align 2, 0 -_08047980: .4byte gUnknown_80F4FA2 -_08047984: - adds r0, r4, 0 - movs r1, 0x2A - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08047994 - movs r6, 0x1 -_08047994: - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _080479AE - adds r0, r5, 0 - movs r1, 0x25 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _080479AE - movs r6, 0 -_080479AE: - adds r0, r6, 0 -_080479B0: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8047930 - - thumb_func_start sub_80479B8 -sub_80479B8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - adds r4, r3, 0 - ldr r5, [sp, 0x3C] - ldr r7, [sp, 0x40] - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - mov r10, r2 - cmp r6, 0 - beq _08047AD0 - cmp r1, 0 - bne _08047ABC - movs r0, 0 - mov r8, r0 - ldr r1, [r5, 0x70] - mov r9, r1 - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _08047A20 - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - cmp r0, 0 - beq _08047A3C - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _08047A3C - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x1 - eors r0, r1 - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - mov r8, r1 - b _08047A3C -_08047A20: - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _08047A3C - adds r0, r5, 0 - movs r1, 0x2 - bl sub_80718D8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 -_08047A3C: - adds r0, r5, 0 - bl sub_8070C60 - lsls r0, 24 - cmp r0, 0 - beq _08047A4C - movs r0, 0 - mov r8, r0 -_08047A4C: - mov r1, r8 - cmp r1, 0 - beq _08047ABC - mov r0, r9 - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08047ABC - mov r1, r9 - ldrb r0, [r1, 0x8] - cmp r0, 0x1 - bne _08047A76 - adds r1, r5, 0x4 - adds r0, r4, 0 - adds r2, r7, 0 - bl sub_80464C8 - bl _080482BA -_08047A76: - ldr r0, _08047AAC - bl sub_8083E38 - ldr r0, _08047AB0 - adds r1, r7, 0 - bl sub_8045BF8 - ldr r0, _08047AB4 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08047AB8 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 - ldr r0, [r7] - mov r1, r9 - str r0, [r1, 0x60] - adds r0, r5, 0 - bl sub_806A6E8 - bl _080482BA - .align 2, 0 -_08047AAC: .4byte 0x0000014d -_08047AB0: .4byte gUnknown_202DE58 -_08047AB4: .4byte gUnknown_202DF98 -_08047AB8: .4byte gUnknown_80FDBB8 -_08047ABC: - cmp r6, 0 - beq _08047AD0 - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_8042390 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806F450 -_08047AD0: - ldrb r1, [r7] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08047B2C - ldr r0, _08047B1C - adds r1, r7, 0 - bl sub_8045BF8 - ldr r0, _08047B20 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 - cmp r6, 0 - beq _08047B30 - ldr r0, _08047B24 - movs r1, 0 - ldrsh r2, [r0, r1] - add r0, sp, 0x18 - str r0, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r0, _08047B28 - str r0, [sp, 0x8] - str r1, [sp, 0xC] - str r1, [sp, 0x10] - str r1, [sp, 0x14] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0x1 - bl sub_806F370 - adds r0, r4, 0 - bl sub_8071DA4 - b _080482BA - .align 2, 0 -_08047B1C: .4byte gUnknown_202DE58 -_08047B20: .4byte gUnknown_80FE3E8 -_08047B24: .4byte gUnknown_80F4FAE -_08047B28: .4byte 0x00000217 -_08047B2C: - cmp r6, 0 - bne _08047B38 -_08047B30: - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_804245C -_08047B38: - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08047B56 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x5 - movs r3, 0 - bl sub_8078B5C -_08047B56: - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - beq _08047B72 - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xA - bne _08047B9C -_08047B72: - cmp r6, 0 - beq _08047B88 - ldr r0, _08047B84 - movs r1, 0 - ldrsh r2, [r0, r1] - mov r0, sp - adds r0, 0x19 - b _08048284 - .align 2, 0 -_08047B84: .4byte gUnknown_80F4FAC -_08047B88: - ldr r0, _08047B98 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _080482B4 - .align 2, 0 -_08047B98: .4byte gUnknown_80FE458 -_08047B9C: - ldrb r0, [r7, 0x2] - subs r0, 0x1 - cmp r0, 0xE8 - bls _08047BA6 - b _08048276 -_08047BA6: - lsls r0, 2 - ldr r1, _08047BB0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08047BB0: .4byte _08047BB4 - .align 2, 0 -_08047BB4: - .4byte _08047F58 - .4byte _08047F70 - .4byte _08047F88 - .4byte _08047FA0 - .4byte _08047FB8 - .4byte _08047FD0 - .4byte _08047FF0 - .4byte _08047FE8 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048004 - .4byte _0804825E - .4byte _08048010 - .4byte _0804801A - .4byte _0804804C - .4byte _08048276 - .4byte _0804802E - .4byte _0804809C - .4byte _08048038 - .4byte _08048024 - .4byte _080480BA - .4byte _080480C4 - .4byte _08048042 - .4byte _0804806A - .4byte _08048060 - .4byte _08048056 - .4byte _0804807E - .4byte _080480B0 - .4byte _08048074 - .4byte _080480D8 - .4byte _080480CE - .4byte _08048092 - .4byte _08048088 - .4byte _080480A6 - .4byte _080480E4 - .4byte _080480EE - .4byte _080480F8 - .4byte _08048102 - .4byte _0804810C - .4byte _08048212 - .4byte _08048122 - .4byte _0804813C - .4byte _0804812A - .4byte _08048146 - .4byte _08048152 - .4byte _0804815E - .4byte _0804816A - .4byte _08048176 - .4byte _08048182 - .4byte _0804818E - .4byte _0804819A - .4byte _080481A6 - .4byte _080481B2 - .4byte _080481BE - .4byte _080481CA - .4byte _080481D6 - .4byte _080481E2 - .4byte _080481EE - .4byte _080481FA - .4byte _08048206 - .4byte _08048212 - .4byte _08048220 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _0804823A - .4byte _08048252 - .4byte _08048246 - .4byte _0804826A - .4byte _0804822E - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048276 - .4byte _08048116 -_08047F58: - ldr r0, _08047F6C - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0x1 - bl sub_80482FC - b _080482B4 - .align 2, 0 -_08047F6C: .4byte gUnknown_80F503A -_08047F70: - ldr r0, _08047F84 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0x2 - bl sub_80482FC - b _080482B4 - .align 2, 0 -_08047F84: .4byte gUnknown_80F503C -_08047F88: - ldr r0, _08047F9C - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0x3 - bl sub_80482FC - b _080482B4 - .align 2, 0 -_08047F9C: .4byte gUnknown_80F503E -_08047FA0: - ldr r0, _08047FB4 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0x4 - bl sub_80482FC - b _080482B4 - .align 2, 0 -_08047FB4: .4byte gUnknown_80F5040 -_08047FB8: - ldr r0, _08047FCC - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0x5 - bl sub_80482FC - b _080482B4 - .align 2, 0 -_08047FCC: .4byte gUnknown_80F5042 -_08047FD0: - ldr r0, _08047FE4 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0x6 - bl sub_80482FC - b _080482B4 - .align 2, 0 -_08047FE4: .4byte gUnknown_80F5044 -_08047FE8: - ldr r0, _08047FEC - b _08047FF2 - .align 2, 0 -_08047FEC: .4byte gUnknown_80F5048 -_08047FF0: - ldr r0, _08048000 -_08047FF2: - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048340 - b _080482B4 - .align 2, 0 -_08048000: .4byte gUnknown_80F5046 -_08048004: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, r10 - bl sub_8048364 - b _080482B4 -_08048010: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048374 - b _080482B4 -_0804801A: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_804839C - b _080482B4 -_08048024: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80483D4 - b _080482B4 -_0804802E: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80483F4 - b _080482B4 -_08048038: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048400 - b _080482B4 -_08048042: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_804840C - b _080482B4 -_0804804C: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_804841C - b _080482B4 -_08048056: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_804849C - b _080482B4 -_08048060: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048428 - b _080482B4 -_0804806A: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048450 - b _080482B4 -_08048074: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048480 - b _080482B4 -_0804807E: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80482D4 - b _080482B4 -_08048088: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048490 - b _080482B4 -_08048092: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80484A8 - b _080482B4 -_0804809C: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80484DC - b _080482B4 -_080480A6: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80484BC - b _080482B4 -_080480B0: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80484C8 - b _080482B4 -_080480BA: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80484E8 - b _080482B4 -_080480C4: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048524 - b _080482B4 -_080480CE: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80485B0 - b _080482B4 -_080480D8: - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_804869C - b _080482B4 -_080480E4: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80483C4 - b _080482B4 -_080480EE: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_804891C - b _080482B4 -_080480F8: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048928 - b _080482B4 -_08048102: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048934 - b _080482B4 -_0804810C: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048940 - b _080482B4 -_08048116: - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl nullsub_94 - b _080482B4 -_08048122: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x64 - b _08048130 -_0804812A: - ldr r2, _08048138 - adds r0, r4, 0 - adds r1, r5, 0 -_08048130: - movs r3, 0xA - bl sub_80487CC - b _080482B4 - .align 2, 0 -_08048138: .4byte 0x000003e7 -_0804813C: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8048E04 - b _080482B4 -_08048146: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80487E0 - b _080482B4 -_08048152: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl sub_80487E0 - b _080482B4 -_0804815E: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl sub_80487E0 - b _080482B4 -_0804816A: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x4 - bl sub_80487E0 - b _080482B4 -_08048176: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x5 - bl sub_80487E0 - b _080482B4 -_08048182: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x6 - bl sub_80487E0 - b _080482B4 -_0804818E: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x7 - bl sub_80487E0 - b _080482B4 -_0804819A: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x8 - bl sub_80487E0 - b _080482B4 -_080481A6: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x9 - bl sub_80487E0 - b _080482B4 -_080481B2: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0xA - bl sub_80487E0 - b _080482B4 -_080481BE: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0xB - bl sub_80487E0 - b _080482B4 -_080481CA: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0xC - bl sub_80487E0 - b _080482B4 -_080481D6: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0xD - bl sub_80487E0 - b _080482B4 -_080481E2: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0xE - bl sub_80487E0 - b _080482B4 -_080481EE: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0xF - bl sub_80487E0 - b _080482B4 -_080481FA: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x10 - bl sub_80487E0 - b _080482B4 -_08048206: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x11 - bl sub_80487E0 - b _080482B4 -_08048212: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x32 - movs r3, 0x5 - bl sub_80487CC - b _080482B4 -_08048220: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0xA - movs r3, 0 - bl sub_80487CC - b _080482B4 -_0804822E: - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_8048DB8 - b _080482B4 -_0804823A: - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_8048EB0 - b _080482B4 -_08048246: - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_8048EC4 - b _080482B4 -_08048252: - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_8048ED8 - b _080482B4 -_0804825E: - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_8048EEC - b _080482B4 -_0804826A: - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_8048F00 - b _080482B4 -_08048276: - cmp r6, 0 - beq _080482A8 - ldr r0, _080482A0 - movs r1, 0 - ldrsh r2, [r0, r1] - mov r0, sp - adds r0, 0x1A -_08048284: - str r0, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r0, _080482A4 - str r0, [sp, 0x8] - str r1, [sp, 0xC] - str r1, [sp, 0x10] - str r1, [sp, 0x14] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0x1 - bl sub_806F370 - b _080482B4 - .align 2, 0 -_080482A0: .4byte gUnknown_80F4FAC -_080482A4: .4byte 0x00000217 -_080482A8: - ldr r0, _080482CC - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 -_080482B4: - adds r0, r4, 0 - bl sub_8071DA4 -_080482BA: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080482CC: .4byte gUnknown_80FE458 - thumb_func_end sub_80479B8 - - thumb_func_start nullsub_205 -nullsub_205: - bx lr - thumb_func_end nullsub_205 - - thumb_func_start sub_80482D4 -sub_80482D4: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _080482F8 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r2, r0, 0 - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8075C58 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080482F8: .4byte gUnknown_80F4E74 - thumb_func_end sub_80482D4 - - thumb_func_start sub_80482FC -sub_80482FC: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0xC - mov r8, r0 - mov r9, r1 - adds r6, r2, 0 - lsls r4, r3, 24 - lsrs r4, 24 - add r5, sp, 0x4 - ldr r1, _0804833C - adds r0, r5, 0 - bl sub_8092A88 - strb r6, [r5, 0x4] - movs r3, 0x80 - lsls r3, 1 - str r4, [sp] - mov r0, r8 - mov r1, r9 - add r2, sp, 0x4 - bl sub_8055640 - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804833C: .4byte 0x00000195 - thumb_func_end sub_80482FC - - thumb_func_start sub_8048340 -sub_8048340: - push {r4,lr} - sub sp, 0x18 - movs r4, 0 - str r4, [sp] - str r4, [sp, 0x4] - movs r3, 0x84 - lsls r3, 2 - str r3, [sp, 0x8] - str r4, [sp, 0xC] - str r4, [sp, 0x10] - str r4, [sp, 0x14] - movs r3, 0x1 - bl sub_806F370 - add sp, 0x18 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8048340 - - thumb_func_start sub_8048364 -sub_8048364: - push {lr} - lsls r3, r2, 24 - lsrs r3, 24 - movs r2, 0x1 - bl sub_8079F20 - pop {r0} - bx r0 - thumb_func_end sub_8048364 - - thumb_func_start sub_8048374 -sub_8048374: - push {r4,lr} - sub sp, 0x4 - ldr r2, _08048394 - movs r3, 0 - ldrsh r2, [r2, r3] - ldr r3, _08048398 - movs r4, 0 - ldrsh r3, [r3, r4] - movs r4, 0x1 - str r4, [sp] - bl sub_8077C44 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08048394: .4byte gUnknown_80F4FB6 -_08048398: .4byte gUnknown_80F4FB8 - thumb_func_end sub_8048374 - - thumb_func_start sub_804839C -sub_804839C: - push {r4,lr} - sub sp, 0x4 - ldr r2, _080483BC - movs r3, 0 - ldrsh r2, [r2, r3] - ldr r3, _080483C0 - movs r4, 0 - ldrsh r3, [r3, r4] - movs r4, 0x1 - str r4, [sp] - bl sub_8077C44 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080483BC: .4byte gUnknown_80F4FBA -_080483C0: .4byte gUnknown_80F4FBC - thumb_func_end sub_804839C - - thumb_func_start sub_80483C4 -sub_80483C4: - push {lr} - ldr r2, _080483D0 - bl sub_80792F8 - pop {r0} - bx r0 - .align 2, 0 -_080483D0: .4byte 0x000003e7 - thumb_func_end sub_80483C4 - - thumb_func_start sub_80483D4 -sub_80483D4: - push {r4,lr} - sub sp, 0x4 - ldr r2, _080483F0 - movs r4, 0 - ldrsh r3, [r2, r4] - movs r2, 0x1 - str r2, [sp] - movs r2, 0 - bl sub_8077C44 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080483F0: .4byte gUnknown_80F4FBE - thumb_func_end sub_80483D4 - - thumb_func_start sub_80483F4 -sub_80483F4: - push {lr} - bl sub_8079140 - pop {r0} - bx r0 - thumb_func_end sub_80483F4 - - thumb_func_start sub_8048400 -sub_8048400: - push {lr} - bl sub_80791D8 - pop {r0} - bx r0 - thumb_func_end sub_8048400 - - thumb_func_start sub_804840C -sub_804840C: - push {lr} - movs r2, 0 - movs r3, 0x1 - bl sub_8077910 - pop {r0} - bx r0 - thumb_func_end sub_804840C - - thumb_func_start sub_804841C -sub_804841C: - push {lr} - bl sub_8079270 - pop {r0} - bx r0 - thumb_func_end sub_804841C - - thumb_func_start sub_8048428 -sub_8048428: - push {lr} - adds r3, r0, 0 - ldr r0, [r1, 0x70] - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x4 - bne _0804843E - adds r0, r3, 0 - bl sub_807A290 - b _08048448 -_0804843E: - ldr r0, _0804844C - ldr r2, [r0] - adds r0, r3, 0 - bl sub_80522F4 -_08048448: - pop {r0} - bx r0 - .align 2, 0 -_0804844C: .4byte gUnknown_80F89F4 - thumb_func_end sub_8048428 - - thumb_func_start sub_8048450 -sub_8048450: - push {lr} - adds r3, r0, 0 - ldr r0, [r1, 0x70] - adds r0, 0xAC - ldrb r0, [r0] - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0804846C - adds r0, r3, 0 - bl sub_807A290 - b _08048476 -_0804846C: - ldr r0, _0804847C - ldr r2, [r0] - adds r0, r3, 0 - bl sub_80522F4 -_08048476: - pop {r0} - bx r0 - .align 2, 0 -_0804847C: .4byte gUnknown_80F89F4 - thumb_func_end sub_8048450 - - thumb_func_start sub_8048480 -sub_8048480: - push {lr} - movs r2, 0 - movs r3, 0 - bl sub_807D148 - pop {r0} - bx r0 - thumb_func_end sub_8048480 - - thumb_func_start sub_8048490 -sub_8048490: - push {lr} - bl sub_8075FCC - pop {r0} - bx r0 - thumb_func_end sub_8048490 - - thumb_func_start sub_804849C -sub_804849C: - push {lr} - movs r2, 0x1 - bl sub_8077AE4 - pop {r0} - bx r0 - thumb_func_end sub_804849C - - thumb_func_start sub_80484A8 -sub_80484A8: - push {lr} - sub sp, 0x4 - movs r2, 0x1 - str r2, [sp] - movs r3, 0x1 - bl sub_8072008 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80484A8 - - thumb_func_start sub_80484BC -sub_80484BC: - push {lr} - bl sub_8076D10 - pop {r0} - bx r0 - thumb_func_end sub_80484BC - - thumb_func_start sub_80484C8 -sub_80484C8: - push {lr} - ldr r2, _080484D8 - ldr r2, [r2] - bl sub_80522F4 - pop {r0} - bx r0 - .align 2, 0 -_080484D8: .4byte gUnknown_80F89F4 - thumb_func_end sub_80484C8 - - thumb_func_start sub_80484DC -sub_80484DC: - push {lr} - movs r2, 0x1 - bl sub_807232C - pop {r0} - bx r0 - thumb_func_end sub_80484DC - - thumb_func_start sub_80484E8 -sub_80484E8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r0, [r4, 0x70] - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x1 - bne _08048500 - adds r0, r5, 0 - bl sub_807A290 - b _08048516 -_08048500: - ldr r0, _0804851C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08048520 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08048516: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0804851C: .4byte gUnknown_202DF98 -_08048520: .4byte gUnknown_80FB580 - thumb_func_end sub_80484E8 - - thumb_func_start sub_8048524 -sub_8048524: - push {r4-r6,lr} - sub sp, 0x4 - adds r6, r0, 0 - adds r4, r1, 0 - ldr r0, [r4, 0x70] - adds r5, r0, 0 - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _08048542 - adds r0, r6, 0 - movs r2, 0 - movs r3, 0x5 - bl sub_8078A58 - b _080485A4 -_08048542: - ldr r0, _08048560 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r4, 0 - movs r1, 0x12 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08048568 - ldr r0, _08048564 - b _08048586 - .align 2, 0 -_08048560: .4byte gUnknown_202DF98 -_08048564: .4byte gUnknown_8100298 -_08048568: - movs r0, 0x9E - lsls r0, 1 - adds r5, r0 - ldr r0, [r5] - bl sub_8094450 - cmp r0, 0 - beq _08048598 - mov r0, sp - movs r1, 0 - bl sub_80943A0 - ldr r0, [sp] - str r0, [r5] - ldr r0, _08048594 -_08048586: - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _080485A4 - .align 2, 0 -_08048594: .4byte gUnknown_80F9740 -_08048598: - ldr r0, _080485AC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_080485A4: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080485AC: .4byte gUnknown_80F9760 - thumb_func_end sub_8048524 - - thumb_func_start sub_80485B0 -sub_80485B0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r9, r0 - mov r8, r1 - movs r0, 0 - str r0, [sp] - movs r2, 0x1 - mov r10, r2 - ldr r4, [r1, 0x70] - movs r0, 0x64 - bl sub_8084100 - ldr r1, _0804865C - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _080485DE - movs r0, 0x3 - mov r10, r0 -_080485DE: - ldrb r0, [r4, 0x7] - cmp r0, 0 - beq _0804867C - movs r2, 0x8C - lsls r2, 1 - adds r4, r2 - adds r5, r4, 0 - movs r7, 0x3 -_080485EE: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804862C - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0804862C - adds r0, r5, 0 - bl sub_8092BC0 - cmp r0, 0 - beq _0804862C - ldrb r6, [r4, 0x5] - adds r0, r5, 0 - bl sub_8092C0C - adds r1, r0, 0 - ldrb r0, [r4, 0x5] - add r0, r10 - strb r0, [r4, 0x5] - ldrb r0, [r4, 0x5] - cmp r0, r1 - blt _08048622 - strb r1, [r4, 0x5] -_08048622: - ldrb r0, [r4, 0x5] - cmp r6, r0 - beq _0804862C - movs r2, 0x1 - str r2, [sp] -_0804862C: - adds r4, 0x8 - adds r5, 0x8 - subs r7, 0x1 - cmp r7, 0 - bge _080485EE - ldr r0, [sp] - cmp r0, 0 - beq _08048668 - ldr r0, _08048660 - ldr r2, [r0] - mov r0, r9 - mov r1, r8 - bl sub_80522F4 - mov r2, r10 - cmp r2, 0x1 - beq _08048688 - movs r0, 0xA - movs r1, 0x40 - bl sub_803E708 - ldr r0, _08048664 - b _0804866A - .align 2, 0 -_0804865C: .4byte gUnknown_80F4F46 -_08048660: .4byte gUnknown_80FE454 -_08048664: .4byte gUnknown_80FE434 -_08048668: - ldr r0, _08048678 -_0804866A: - ldr r2, [r0] - mov r0, r9 - mov r1, r8 - bl sub_80522F4 - b _08048688 - .align 2, 0 -_08048678: .4byte gUnknown_80FE40C -_0804867C: - ldr r0, _08048698 - ldr r2, [r0] - mov r0, r9 - mov r1, r8 - bl sub_80522F4 -_08048688: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08048698: .4byte gUnknown_80FE40C - thumb_func_end sub_80485B0 - - thumb_func_start sub_804869C -sub_804869C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x1C - adds r4, r0, 0 - adds r7, r1, 0 - lsls r2, 24 - cmp r2, 0 - beq _08048724 - ldr r5, [r7, 0x70] - ldr r0, _080486D4 - ldr r0, [r0] - ldr r1, _080486D8 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080486E4 - ldr r0, _080486DC - movs r1, 0 - ldrsh r6, [r0, r1] - ldr r0, _080486E0 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_80522F4 - b _080486EA - .align 2, 0 -_080486D4: .4byte gUnknown_203B418 -_080486D8: .4byte 0x00000675 -_080486DC: .4byte gUnknown_80F4FA8 -_080486E0: .4byte gUnknown_80FEAE8 -_080486E4: - ldr r0, _0804871C - movs r1, 0 - ldrsh r6, [r0, r1] -_080486EA: - adds r0, r5, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080486FC - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_807A324 -_080486FC: - add r0, sp, 0x18 - str r0, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r0, _08048720 - str r0, [sp, 0x8] - str r1, [sp, 0xC] - str r1, [sp, 0x10] - str r1, [sp, 0x14] - adds r0, r4, 0 - adds r1, r7, 0 - adds r2, r6, 0 - movs r3, 0x1 - bl sub_806F370 - b _080487B6 - .align 2, 0 -_0804871C: .4byte gUnknown_80F4FA4 -_08048720: .4byte 0x00000216 -_08048724: - adds r0, r4, 0 - bl sub_8042520 - adds r0, r4, 0 - bl sub_80696FC - adds r5, r0, 0 - cmp r5, 0 - bne _08048748 - ldr r0, _08048744 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_80522F4 - b _080487B6 - .align 2, 0 -_08048744: .4byte gUnknown_80FDBA0 -_08048748: - ldr r1, [r5, 0x70] - mov r8, r1 - ldr r0, _08048770 - ldr r0, [r0] - ldr r1, _08048774 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08048780 - ldr r0, _08048778 - movs r1, 0 - ldrsh r6, [r0, r1] - ldr r0, _0804877C - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_80522F4 - b _08048786 - .align 2, 0 -_08048770: .4byte gUnknown_203B418 -_08048774: .4byte 0x00000675 -_08048778: .4byte gUnknown_80F4FAA -_0804877C: .4byte gUnknown_80FEAE8 -_08048780: - ldr r0, _080487C4 - movs r1, 0 - ldrsh r6, [r0, r1] -_08048786: - mov r0, r8 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08048798 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_807A324 -_08048798: - add r0, sp, 0x18 - str r0, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r0, _080487C8 - str r0, [sp, 0x8] - str r1, [sp, 0xC] - str r1, [sp, 0x10] - str r1, [sp, 0x14] - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - movs r3, 0x1 - bl sub_806F370 -_080487B6: - add sp, 0x1C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080487C4: .4byte gUnknown_80F4FA6 -_080487C8: .4byte 0x00000216 - thumb_func_end sub_804869C - - thumb_func_start sub_80487CC -sub_80487CC: - push {r4,lr} - sub sp, 0x4 - movs r4, 0x1 - str r4, [sp] - bl sub_8078B5C - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80487CC - - thumb_func_start sub_80487E0 -sub_80487E0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - mov r9, r0 - mov r8, r1 - lsls r3, r2, 24 - ldr r5, [r1, 0x70] - ldr r4, _08048858 - lsrs r3, 23 - adds r0, r5, 0 - adds r0, 0x5C - ldrb r0, [r0] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r1, r3, r1 - adds r0, r1, r4 - movs r2, 0 - ldrsh r6, [r0, r2] - adds r0, r5, 0 - adds r0, 0x5D - ldrb r2, [r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r3, r0 - adds r4, r3, r4 - movs r2, 0 - ldrsh r0, [r4, r2] - adds r6, r0 - ldr r0, _0804885C - adds r1, r0 - movs r4, 0 - ldrsh r2, [r1, r4] - adds r3, r0 - movs r1, 0 - ldrsh r0, [r3, r1] - adds r2, r0 - movs r0, 0x1 - str r0, [sp] - mov r0, r9 - mov r1, r8 - movs r3, 0 - bl sub_8078B5C - ldrb r0, [r5, 0x6] - cmp r0, 0 - bne _08048906 - adds r0, r5, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08048852 - cmp r0, 0x47 - bne _08048860 -_08048852: - movs r0, 0x1 - b _08048862 - .align 2, 0 -_08048858: .4byte gUnknown_810A580 -_0804885C: .4byte gUnknown_810A808 -_08048860: - movs r0, 0 -_08048862: - cmp r0, 0 - bne _08048906 - movs r2, 0xC - ldrsh r7, [r5, r2] - ldrh r0, [r5, 0xC] - adds r0, r6 - strh r0, [r5, 0xC] - adds r2, r7, r6 - lsls r0, 16 - cmp r0, 0 - bgt _0804887C - movs r0, 0x1 - strh r0, [r5, 0xC] -_0804887C: - movs r4, 0xC - ldrsh r0, [r5, r4] - ldr r1, _080488A0 - cmp r0, r1 - ble _08048888 - strh r1, [r5, 0xC] -_08048888: - movs r1, 0xC - ldrsh r0, [r5, r1] - cmp r7, r0 - bne _080488A8 - ldr r0, _080488A4 - ldr r2, [r0] - mov r0, r9 - mov r1, r8 - bl sub_80522F4 - b _08048906 - .align 2, 0 -_080488A0: .4byte 0x000003e7 -_080488A4: .4byte gUnknown_80FD644 -_080488A8: - subs r0, r2, r7 - movs r2, 0 - cmp r0, 0x8 - bgt _080488BE - movs r2, 0x1 - cmp r0, 0x4 - bgt _080488BE - movs r2, 0x3 - cmp r0, 0x2 - ble _080488BE - movs r2, 0x2 -_080488BE: - movs r4, 0xC - ldrsh r0, [r5, r4] - subs r0, r7 - movs r4, 0 - cmp r0, 0x8 - bgt _080488D8 - movs r4, 0x1 - cmp r0, 0x4 - bgt _080488D8 - movs r4, 0x3 - cmp r0, 0x2 - ble _080488D8 - movs r4, 0x2 -_080488D8: - ldr r1, _08048914 - lsls r0, r2, 2 - adds r0, r1 - ldr r2, [r0] - mov r0, r9 - mov r1, r8 - bl sub_80522F4 - ldr r1, _08048918 - lsls r0, r4, 2 - adds r0, r1 - ldr r2, [r0] - mov r0, r9 - mov r1, r8 - bl sub_80522F4 - mov r0, r8 - bl sub_807191C - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_806A7E8 -_08048906: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08048914: .4byte gUnknown_80FD648 -_08048918: .4byte gUnknown_80FD6E8 - thumb_func_end sub_80487E0 - - thumb_func_start sub_804891C -sub_804891C: - push {lr} - movs r2, 0x3 - bl sub_80793B0 - pop {r0} - bx r0 - thumb_func_end sub_804891C - - thumb_func_start sub_8048928 -sub_8048928: - push {lr} - movs r2, 0x3 - bl sub_8079420 - pop {r0} - bx r0 - thumb_func_end sub_8048928 - - thumb_func_start sub_8048934 -sub_8048934: - push {lr} - movs r2, 0x3 - bl sub_8079490 - pop {r0} - bx r0 - thumb_func_end sub_8048934 - - thumb_func_start sub_8048940 -sub_8048940: - push {lr} - movs r2, 0x3 - bl sub_8079500 - pop {r0} - bx r0 - thumb_func_end sub_8048940 - - thumb_func_start nullsub_94 -nullsub_94: - bx lr - thumb_func_end nullsub_94 - - thumb_func_start sub_8048950 -sub_8048950: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r10, r0 - mov r8, r1 - ldrb r0, [r1, 0x2] - bl sub_80913CC - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08048988 - ldr r0, _08048984 -_08048978: - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _08048A58 - .align 2, 0 -_08048984: .4byte gUnknown_80FE3E8 -_08048988: - mov r1, r8 - ldrb r0, [r1, 0x2] - bl sub_80915A0 - lsls r0, 24 - cmp r0, 0 - beq _080489A0 - ldr r0, _0804899C - b _08048978 - .align 2, 0 -_0804899C: .4byte gUnknown_81006CC -_080489A0: - movs r7, 0 -_080489A2: - ldr r0, _080489FC - ldr r0, [r0] - lsls r1, r7, 2 - ldr r2, _08048A00 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08048A12 - ldr r6, [r4, 0x70] - movs r0, 0x2 - ldrsh r1, [r6, r0] - mov r0, r9 - bl sub_808E190 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r4, 0 - movs r1, 0 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - beq _080489DC - movs r5, 0 -_080489DC: - adds r0, r6, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080489E8 - movs r5, 0 -_080489E8: - adds r0, r6, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _080489F6 - cmp r0, 0x47 - bne _08048A04 -_080489F6: - movs r0, 0x1 - b _08048A06 - .align 2, 0 -_080489FC: .4byte gUnknown_203B418 -_08048A00: .4byte 0x0001357c -_08048A04: - movs r0, 0 -_08048A06: - cmp r0, 0 - beq _08048A0C - movs r5, 0 -_08048A0C: - ldr r1, _08048A50 - adds r0, r6, r1 - strb r5, [r0] -_08048A12: - adds r7, 0x1 - cmp r7, 0x3 - ble _080489A2 - movs r0, 0 - movs r1, 0x1 - bl sub_8062978 - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08048A58 - mov r0, r10 - mov r1, r8 - bl sub_804245C - adds r0, r4, 0 - mov r1, r9 - bl sub_8072938 - lsls r0, 24 - cmp r0, 0 - beq _08048A58 - ldr r2, _08048A54 - mov r0, r10 - movs r1, 0 - bl sub_8044E24 - movs r0, 0x1 - b _08048A5A - .align 2, 0 -_08048A50: .4byte 0x00000157 -_08048A54: .4byte 0x00000141 -_08048A58: - movs r0, 0 -_08048A5A: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8048950 - - thumb_func_start sub_8048A68 -sub_8048A68: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r9, r0 - mov r8, r1 - ldrb r1, [r1] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08048A90 - ldr r0, _08048A8C -_08048A80: - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _08048B8C - .align 2, 0 -_08048A8C: .4byte gUnknown_80FE3E8 -_08048A90: - ldr r0, _08048AA4 - ldr r0, [r0] - ldr r1, _08048AA8 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08048AB0 - ldr r0, _08048AAC - b _08048A80 - .align 2, 0 -_08048AA4: .4byte gUnknown_203B418 -_08048AA8: .4byte 0x0000065c -_08048AAC: .4byte gUnknown_80F9BD8 -_08048AB0: - movs r7, 0 -_08048AB2: - ldr r0, _08048B24 - ldr r0, [r0] - lsls r1, r7, 2 - ldr r2, _08048B28 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08048B4A - ldr r5, [r4, 0x70] - movs r6, 0x1 - ldrb r0, [r5, 0xA] - cmp r0, 0x3 - bhi _08048AF4 - ldr r2, _08048B2C - ldrb r1, [r5, 0xA] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08048B30 - adds r1, r0 - ldr r0, [r2] - adds r0, r1 - movs r1, 0xA - ldrsh r0, [r0, r1] - bl sub_806A538 - lsls r0, 24 - cmp r0, 0 - beq _08048AF6 -_08048AF4: - movs r6, 0 -_08048AF6: - adds r0, r4, 0 - movs r1, 0 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - beq _08048B06 - movs r6, 0 -_08048B06: - adds r0, r5, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08048B12 - movs r6, 0 -_08048B12: - adds r0, r5, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08048B20 - cmp r0, 0x47 - bne _08048B34 -_08048B20: - movs r0, 0x1 - b _08048B36 - .align 2, 0 -_08048B24: .4byte gUnknown_203B418 -_08048B28: .4byte 0x0001357c -_08048B2C: .4byte gUnknown_203B45C -_08048B30: .4byte 0x00008df8 -_08048B34: - movs r0, 0 -_08048B36: - cmp r0, 0 - beq _08048B3C - movs r6, 0 -_08048B3C: - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _08048B44 - movs r6, 0 -_08048B44: - ldr r2, _08048B84 - adds r0, r5, r2 - strb r6, [r0] -_08048B4A: - adds r7, 0x1 - cmp r7, 0x3 - ble _08048AB2 - movs r0, 0 - movs r1, 0x1 - bl sub_8062978 - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08048B8C - mov r0, r9 - mov r1, r8 - bl sub_804245C - ldr r0, _08048B88 - ldr r0, [r0] - adds r0, 0xBC - str r4, [r0] - movs r2, 0xA1 - lsls r2, 1 - mov r0, r9 - movs r1, 0 - bl sub_8044E24 - movs r0, 0x1 - b _08048B8E - .align 2, 0 -_08048B84: .4byte 0x00000157 -_08048B88: .4byte gUnknown_203B418 -_08048B8C: - movs r0, 0 -_08048B8E: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8048A68 - - thumb_func_start sub_8048B9C -sub_8048B9C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x20 - mov r9, r0 - movs r0, 0 - mov r8, r0 - mov r2, r9 - ldr r0, [r2, 0x70] - adds r6, r0, 0 - adds r6, 0x44 - ldrb r1, [r1] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08048BD4 - ldr r0, _08048BD0 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - movs r0, 0 - b _08048D40 - .align 2, 0 -_08048BD0: .4byte gUnknown_80FE3E8 -_08048BD4: - movs r2, 0 -_08048BD6: - ldr r0, _08048C28 - ldr r0, [r0] - lsls r1, r2, 2 - ldr r3, _08048C2C - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - str r2, [sp, 0x1C] - bl sub_80450E0 - lsls r0, 24 - ldr r2, [sp, 0x1C] - cmp r0, 0 - beq _08048C3E - ldr r5, [r4, 0x70] - movs r7, 0x1 - adds r0, r4, 0 - movs r1, 0 - bl sub_8070B6C - lsls r0, 24 - ldr r2, [sp, 0x1C] - cmp r0, 0 - beq _08048C0A - movs r7, 0 -_08048C0A: - adds r0, r5, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08048C16 - movs r7, 0 -_08048C16: - adds r0, r5, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08048C24 - cmp r0, 0x47 - bne _08048C30 -_08048C24: - movs r0, 0x1 - b _08048C32 - .align 2, 0 -_08048C28: .4byte gUnknown_203B418 -_08048C2C: .4byte 0x0001357c -_08048C30: - movs r0, 0 -_08048C32: - cmp r0, 0 - beq _08048C38 - movs r7, 0 -_08048C38: - ldr r4, _08048C5C - adds r0, r5, r4 - strb r7, [r0] -_08048C3E: - adds r2, 0x1 - cmp r2, 0x3 - ble _08048BD6 - movs r0, 0 - movs r1, 0x1 - bl sub_8062978 - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08048C60 - movs r0, 0 - b _08048D40 - .align 2, 0 -_08048C5C: .4byte 0x00000157 -_08048C60: - add r1, sp, 0x4 - adds r0, r6, 0 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - b _08048CE2 -_08048C6E: - ldrh r0, [r6] - cmp r0, 0x1D - bne _08048C7C - adds r0, r6, 0 - bl sub_80637E8 - b _08048CE2 -_08048C7C: - cmp r0, 0x20 - bne _08048C9A - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - adds r0, r6, 0 - bl sub_8063BB4 - movs r0, 0x1 - bl sub_8044C10 - movs r5, 0x1 - mov r8, r5 - b _08048CE2 -_08048C9A: - cmp r0, 0x21 - bne _08048CB6 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - adds r0, r6, 0 - movs r1, 0 - bl sub_8063CF0 - movs r0, 0x1 - bl sub_8044C10 - b _08048CE2 -_08048CB6: - cmp r0, 0x1E - beq _08048CBE - cmp r0, 0x33 - bne _08048CD0 -_08048CBE: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - adds r0, r6, 0 - movs r1, 0 - bl sub_8063A70 - b _08048CE2 -_08048CD0: - cmp r0, 0x1F - bne _08048CE2 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - adds r0, r6, 0 - bl sub_8063B54 -_08048CE2: - adds r0, r6, 0 - bl sub_8044C88 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0 - movs r3, 0 - bl sub_8062F90 - lsls r0, 24 - cmp r0, 0 - beq _08048C6E - mov r0, r8 - cmp r0, 0 - beq _08048D38 - ldr r0, _08048D34 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - bne _08048C6E - adds r1, r6, 0 - add r0, sp, 0x4 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - mov r0, r9 - movs r1, 0 - movs r2, 0x6E - bl sub_8044DF0 - adds r0, r6, 0 - movs r1, 0x2C - bl sub_8044C94 - b _08048D3E - .align 2, 0 -_08048D34: .4byte gUnknown_80FECA0 -_08048D38: - movs r0, 0x1 - bl sub_8044C10 -_08048D3E: - mov r0, r8 -_08048D40: - add sp, 0x20 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8048B9C - - thumb_func_start sub_8048D50 -sub_8048D50: - push {r4,lr} - adds r4, r0, 0 - adds r2, r1, 0 - ldr r3, [r4, 0x70] - ldrb r1, [r2] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08048D78 - ldr r0, _08048D70 - adds r1, r2, 0 - bl sub_8045BF8 - ldr r0, _08048D74 - b _08048D9A - .align 2, 0 -_08048D70: .4byte gUnknown_202DE58 -_08048D74: .4byte gUnknown_80FE3E8 -_08048D78: - adds r0, r3, 0 - adds r0, 0xEC - ldrb r0, [r0] - cmp r0, 0x1 - bne _08048DB0 - ldrb r0, [r2, 0x2] - bl sub_8091570 - lsls r0, 24 - cmp r0, 0 - beq _08048DB0 - ldr r0, _08048DA8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08048DAC -_08048D9A: - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - movs r0, 0 - b _08048DB2 - .align 2, 0 -_08048DA8: .4byte gUnknown_202DF98 -_08048DAC: .4byte gUnknown_80FDCA4 -_08048DB0: - movs r0, 0x1 -_08048DB2: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8048D50 - - thumb_func_start sub_8048DB8 -sub_8048DB8: - push {r4,lr} - sub sp, 0x1C - adds r3, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - cmp r2, 0 - beq _08048DF4 - ldr r0, _08048DEC - movs r1, 0 - ldrsh r2, [r0, r1] - add r0, sp, 0x18 - str r0, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r0, _08048DF0 - str r0, [sp, 0x8] - str r1, [sp, 0xC] - str r1, [sp, 0x10] - str r1, [sp, 0x14] - adds r0, r3, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_806F370 - b _08048DFA - .align 2, 0 -_08048DEC: .4byte gUnknown_80F4FAC -_08048DF0: .4byte 0x00000217 -_08048DF4: - adds r0, r3, 0 - bl sub_8051E7C -_08048DFA: - add sp, 0x1C - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8048DB8 - - thumb_func_start sub_8048E04 -sub_8048E04: - push {r4-r6,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r6, r1, 0 - movs r0, 0x1 - str r0, [sp] - adds r0, r5, 0 - movs r2, 0x1E - movs r3, 0 - bl sub_8078B5C - movs r0, 0x5 - bl sub_8084100 - cmp r0, 0x4 - bhi _08048E9E - lsls r0, 2 - ldr r1, _08048E30 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08048E30: .4byte _08048E34 - .align 2, 0 -_08048E34: - .4byte _08048E48 - .4byte _08048E54 - .4byte _08048E5E - .4byte _08048E6C - .4byte _08048E78 -_08048E48: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - bl sub_80763F8 - b _08048E9E -_08048E54: - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80769CC - b _08048E9E -_08048E5E: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_8076210 - b _08048E9E -_08048E6C: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - bl sub_8077780 - b _08048E9E -_08048E78: - ldr r0, _08048EA8 - ldr r2, [r0] - movs r4, 0x1 - str r4, [sp] - str r4, [sp, 0x4] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0x3 - bl sub_8076E20 - ldr r0, _08048EAC - ldr r2, [r0] - str r4, [sp] - str r4, [sp, 0x4] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0x3 - bl sub_8076E20 -_08048E9E: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08048EA8: .4byte gUnknown_8106A4C -_08048EAC: .4byte gUnknown_8106A50 - thumb_func_end sub_8048E04 - - thumb_func_start sub_8048EB0 -sub_8048EB0: - push {lr} - ldr r1, _08048EC0 - ldr r1, [r1] - bl sub_80522A8 - pop {r0} - bx r0 - .align 2, 0 -_08048EC0: .4byte gUnknown_81003E0 - thumb_func_end sub_8048EB0 - - thumb_func_start sub_8048EC4 -sub_8048EC4: - push {lr} - ldr r1, _08048ED4 - ldr r1, [r1] - bl sub_80522A8 - pop {r0} - bx r0 - .align 2, 0 -_08048ED4: .4byte gUnknown_8100404 - thumb_func_end sub_8048EC4 - - thumb_func_start sub_8048ED8 -sub_8048ED8: - push {lr} - ldr r1, _08048EE8 - ldr r1, [r1] - bl sub_80522A8 - pop {r0} - bx r0 - .align 2, 0 -_08048EE8: .4byte gUnknown_8100428 - thumb_func_end sub_8048ED8 - - thumb_func_start sub_8048EEC -sub_8048EEC: - push {lr} - ldr r1, _08048EFC - ldr r1, [r1] - bl sub_80522A8 - pop {r0} - bx r0 - .align 2, 0 -_08048EFC: .4byte gUnknown_810044C - thumb_func_end sub_8048EEC - - thumb_func_start sub_8048F00 -sub_8048F00: - push {r4,lr} - adds r4, r0, 0 - movs r1, 0xD6 - bl sub_80421C0 - ldr r0, _08048F24 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08048F24: .4byte gUnknown_8100494 - thumb_func_end sub_8048F00 - - thumb_func_start sub_8048F28 -sub_8048F28: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldr r3, [r4, 0x70] - movs r6, 0 - movs r0, 0x1 - adds r5, r2, 0 - ands r5, r0 - lsrs r2, 1 - movs r0, 0x1 - ands r2, r0 - ldrb r0, [r1, 0x2] - subs r0, 0x1 - cmp r0, 0xCC - bls _08048F48 - b _080494E0 -_08048F48: - lsls r0, 2 - ldr r1, _08048F54 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08048F54: .4byte _08048F58 - .align 2, 0 -_08048F58: - .4byte _0804928C - .4byte _0804928C - .4byte _0804928C - .4byte _0804928C - .4byte _0804928C - .4byte _0804928C - .4byte _0804928C - .4byte _0804928C - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _08049408 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _08049296 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080492B0 - .4byte _080492B0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _08049320 - .4byte _080494E0 - .4byte _080492B8 - .4byte _080492B8 - .4byte _0804935E - .4byte _080494E0 - .4byte _080493E0 - .4byte _0804948E - .4byte _08049394 - .4byte _08049344 - .4byte _0804946E - .4byte _0804947A - .4byte _08049378 - .4byte _080493CE - .4byte _080493AC - .4byte _080493B8 - .4byte _08049436 - .4byte _080494E0 - .4byte _080493F6 - .4byte _080494B2 - .4byte _0804946A - .4byte _08049462 - .4byte _08049454 - .4byte _08049498 - .4byte _080492DC - .4byte _0804932C - .4byte _08049338 - .4byte _0804933C - .4byte _08049340 - .4byte _080494C2 - .4byte _080494C2 - .4byte _080494D6 - .4byte _080494C2 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494E0 - .4byte _080494DA -_0804928C: - cmp r5, 0 - bne _08049292 - b _080494E2 -_08049292: - movs r6, 0x46 - b _080494E2 -_08049296: - cmp r5, 0 - bne _0804929C - b _080494E0 -_0804929C: - movs r1, 0x9E - lsls r1, 1 - adds r0, r3, r1 - ldr r0, [r0] - bl sub_8094450 - cmp r0, 0 - ble _080492AE - b _0804948A -_080492AE: - b _080494E0 -_080492B0: - cmp r5, 0 - beq _080492B6 - b _0804948A -_080492B6: - b _080494E0 -_080492B8: - movs r2, 0xE - ldrsh r1, [r3, r2] - movs r2, 0x10 - ldrsh r0, [r3, r2] - cmp r1, r0 - blt _080492C6 - b _080494E2 -_080492C6: - cmp r0, 0 - bge _080492CC - adds r0, 0x3 -_080492CC: - asrs r0, 2 - cmp r1, r0 - ble _080492D4 - b _080494E2 -_080492D4: - cmp r5, 0 - bne _080492DA - b _08049420 -_080492DA: - b _08049432 -_080492DC: - movs r6, 0 - movs r0, 0x8C - lsls r0, 1 - adds r5, r3, r0 - adds r7, r5, 0 - movs r2, 0x3 -_080492E8: - ldrb r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804930C - ldrb r0, [r5, 0x4] - cmp r0, 0 - bne _080492FA - adds r6, 0x1E -_080492FA: - ldrb r4, [r5, 0x4] - adds r0, r7, 0 - str r2, [sp] - bl sub_8092BF4 - ldr r2, [sp] - cmp r4, r0 - beq _0804930C - adds r6, 0x6 -_0804930C: - adds r5, 0x8 - adds r7, 0x8 - subs r2, 0x1 - cmp r2, 0 - bge _080492E8 - cmp r6, 0x62 - bgt _0804931C - b _080494E2 -_0804931C: - movs r6, 0x63 - b _080494E2 -_08049320: - adds r0, r4, 0 - bl sub_8070A58 - lsls r0, 24 - movs r6, 0 - b _080494BC -_0804932C: - ldrb r0, [r3, 0x14] -_0804932E: - movs r6, 0x64 - cmp r0, 0xF9 - bhi _08049336 - b _080494E2 -_08049336: - b _080494E0 -_08049338: - ldrb r0, [r3, 0x15] - b _0804932E -_0804933C: - ldrb r0, [r3, 0x16] - b _0804932E -_08049340: - ldrb r0, [r3, 0x17] - b _0804932E -_08049344: - cmp r5, 0 - beq _0804934A - b _080494E0 -_0804934A: - adds r0, r4, 0 - bl sub_80494EC - lsls r0, 24 - movs r6, 0x64 - cmp r0, 0 - bne _0804935A - b _080494E2 -_0804935A: - movs r6, 0xA - b _080494E2 -_0804935E: - adds r0, r4, 0 - bl sub_8071884 - lsls r0, 24 - cmp r0, 0 - beq _0804936C - b _080494A2 -_0804936C: - adds r0, r4, 0 - bl sub_80494EC - lsls r0, 24 - movs r6, 0x5 - b _080494BC -_08049378: - ldr r0, [r4, 0x70] - movs r1, 0x82 - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x3 - ble _08049388 - b _080494A2 -_08049388: - adds r0, r4, 0 - bl sub_80494EC - lsls r0, 24 - movs r6, 0x5 - b _080494BC -_08049394: - adds r0, r3, 0 - adds r0, 0xE8 - ldrb r0, [r0] - cmp r0, 0x2 - bne _080493A0 - b _080494A2 -_080493A0: - adds r0, r4, 0 - bl sub_80494EC - lsls r0, 24 - movs r6, 0x5 - b _080494BC -_080493AC: - adds r0, r3, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x4 - bne _080494A2 - b _080494B2 -_080493B8: - adds r0, r3, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - beq _080494A2 - adds r0, r4, 0 - bl sub_80494EC - lsls r0, 24 - movs r6, 0xF - b _080494BC -_080493CE: - adds r0, r3, 0 - adds r0, 0xAC - ldrb r0, [r0] - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _080494A2 - b _08049420 -_080493E0: - adds r0, r3, 0 - adds r0, 0xE8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080494A2 - adds r0, r4, 0 - bl sub_80494EC - lsls r0, 24 - movs r6, 0x5 - b _080494BC -_080493F6: - cmp r2, 0 - bne _0804940C - adds r0, r4, 0 - bl sub_80494EC - lsls r0, 24 - movs r6, 0x5 - cmp r0, 0 - beq _080494E2 -_08049408: - movs r6, 0x28 - b _080494E2 -_0804940C: - movs r2, 0xE - ldrsh r1, [r3, r2] - movs r2, 0x10 - ldrsh r0, [r3, r2] - cmp r1, r0 - bge _080494E2 - cmp r1, 0x13 - bgt _080494E2 - cmp r5, 0 - bne _08049432 -_08049420: - adds r0, r4, 0 - bl sub_80494EC - lsls r0, 24 - movs r6, 0x32 - cmp r0, 0 - beq _080494E2 - movs r6, 0x64 - b _080494E2 -_08049432: - movs r6, 0x32 - b _080494E2 -_08049436: - adds r0, r3, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080494A2 - cmp r0, 0x5 - beq _080494A2 - cmp r0, 0x3 - beq _080494A2 - adds r0, r4, 0 - bl sub_80494EC - lsls r0, 24 - movs r6, 0x5 - b _080494BC -_08049454: - adds r0, r3, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x2 - beq _080494A2 - movs r6, 0x5 - b _080494E2 -_08049462: - ldrb r0, [r3, 0x9] - movs r6, 0 - cmp r0, 0x62 - bhi _080494E2 -_0804946A: - movs r6, 0x50 - b _080494E2 -_0804946E: - adds r0, r3, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x1 - beq _0804948A - b _080494E0 -_0804947A: - movs r1, 0x9E - lsls r1, 1 - adds r0, r3, r1 - ldr r0, [r0] - bl sub_8094450 - cmp r0, 0 - ble _080494E0 -_0804948A: - movs r0, 0x32 - b _080494E4 -_0804948E: - ldrb r0, [r3, 0x9] - movs r6, 0 - cmp r0, 0x1 - bls _080494E2 - b _0804946A -_08049498: - adds r0, r3, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x6 - bne _080494A6 -_080494A2: - movs r0, 0 - b _080494E4 -_080494A6: - adds r0, r4, 0 - bl sub_80494EC - lsls r0, 24 - movs r6, 0x5 - b _080494BC -_080494B2: - adds r0, r4, 0 - bl sub_80494EC - lsls r0, 24 - movs r6, 0x1E -_080494BC: - cmp r0, 0 - beq _080494E2 - b _0804946A -_080494C2: - movs r2, 0x9E - lsls r2, 1 - adds r0, r3, r2 - ldr r0, [r0] - bl sub_8094450 - cmp r0, 0x9 - bgt _080494E0 - movs r0, 0x64 - b _080494E4 -_080494D6: - movs r6, 0x1E - b _080494E2 -_080494DA: - movs r6, 0x14 - cmp r5, 0 - beq _080494E2 -_080494E0: - movs r6, 0 -_080494E2: - adds r0, r6, 0 -_080494E4: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8048F28 - - thumb_func_start sub_80494EC -sub_80494EC: - push {r4-r6,lr} - adds r5, r0, 0 - movs r6, 0 -_080494F2: - movs r1, 0x4 - ldrsh r0, [r5, r1] - ldr r1, _08049538 - lsls r2, r6, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r5, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - ldr r4, [r0, 0x10] - cmp r4, 0 - beq _0804953C - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0 - beq _0804953C - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0804953C - movs r0, 0x1 - b _08049544 - .align 2, 0 -_08049538: .4byte gUnknown_80F4448 -_0804953C: - adds r6, 0x1 - cmp r6, 0x7 - ble _080494F2 - movs r0, 0 -_08049544: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80494EC - - thumb_func_start sub_804954C -sub_804954C: - push {lr} - adds r2, r0, 0 - adds r3, r1, 0 - cmp r2, 0 - blt _08049584 - cmp r3, 0 - blt _08049584 - cmp r2, 0x37 - bgt _08049584 - cmp r3, 0x1F - bgt _08049584 - ldr r0, _0804957C - ldr r1, [r0] - lsls r2, 2 - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 5 - adds r2, r0 - ldr r0, _08049580 - adds r1, r0 - adds r1, r2 - ldr r0, [r1] - b _08049588 - .align 2, 0 -_0804957C: .4byte gUnknown_203B418 -_08049580: .4byte 0x0000e8c0 -_08049584: - ldr r0, _0804958C - ldr r0, [r0] -_08049588: - pop {r1} - bx r1 - .align 2, 0 -_0804958C: .4byte gUnknown_203B430 - thumb_func_end sub_804954C - - thumb_func_start sub_8049590 -sub_8049590: - push {r4,r5,lr} - adds r2, r0, 0 - adds r3, r1, 0 - cmp r2, 0 - blt _080495A6 - cmp r3, 0 - blt _080495A6 - cmp r2, 0x37 - bgt _080495A6 - cmp r3, 0x1F - ble _080495C0 -_080495A6: - ldr r0, _080495B8 - ldr r1, _080495BC - adds r2, r0, 0 - ldr r1, [r1] - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - b _080495D6 - .align 2, 0 -_080495B8: .4byte gUnknown_202F190 -_080495BC: .4byte gUnknown_203B430 -_080495C0: - ldr r0, _080495DC - ldr r1, [r0] - lsls r2, 2 - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 5 - adds r2, r0 - ldr r0, _080495E0 - adds r1, r0 - adds r1, r2 - ldr r0, [r1] -_080495D6: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080495DC: .4byte gUnknown_203B418 -_080495E0: .4byte 0x0000e8c0 - thumb_func_end sub_8049590 - - thumb_func_start sub_80495E4 -sub_80495E4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r2, 0 - ldr r0, _08049658 - mov r9, r0 - mov r12, r9 - ldr r7, _0804965C - ldr r1, _08049660 - mov r8, r1 -_080495FA: - lsls r1, r2, 3 - lsls r0, r2, 2 - adds r6, r2, 0x1 - subs r1, r2 - adds r0, r2 - lsls r0, 2 - adds r0, r2 - lsls r0, 6 - movs r4, 0 - lsls r2, r1, 5 - mov r3, r8 - adds r5, r0, r3 - movs r3, 0x37 -_08049614: - mov r1, r12 - ldr r0, [r1] - adds r1, r0, r7 - adds r1, r2 - adds r0, r5 - adds r0, r4 - str r0, [r1] - adds r4, 0x18 - adds r2, 0x4 - subs r3, 0x1 - cmp r3, 0 - bge _08049614 - adds r2, r6, 0 - cmp r2, 0x1F - ble _080495FA - movs r2, 0 - mov r3, r9 - ldr r1, [r3] - ldr r4, _08049664 - adds r0, r1, r4 - movs r3, 0 - strh r2, [r0] - adds r4, 0x2 - adds r0, r1, r4 - strh r2, [r0] - ldr r0, _08049668 - adds r1, r0 - strb r3, [r1] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08049658: .4byte gUnknown_203B418 -_0804965C: .4byte 0x0000e8c0 -_08049660: .4byte 0x00003a18 -_08049664: .4byte 0x00003a0e -_08049668: .4byte 0x00013570 - thumb_func_end sub_80495E4 - - thumb_func_start sub_804966C -sub_804966C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r1, _08049734 - ldr r0, _08049738 - mov r8, r0 - ldr r6, _0804973C - ldr r0, [r6] - ldr r5, _08049740 - adds r0, r5 - movs r2, 0 - ldrsh r0, [r0, r2] - add r0, r8 - ldrb r2, [r0] - mov r0, sp - bl sprintf - ldr r7, _08049744 - mov r0, sp - adds r1, r7, 0 - bl OpenFileAndGetFileDataPtr - adds r4, r0, 0 - ldr r0, _08049748 - movs r1, 0 - adds r2, r4, 0 - bl sub_800AE28 - adds r0, r4, 0 - bl CloseFile - ldr r1, _0804974C - ldr r0, [r6] - adds r0, r5 - movs r3, 0 - ldrsh r2, [r0, r3] - mov r0, sp - bl sprintf - mov r0, sp - adds r1, r7, 0 - bl OpenFileAndGetFileDataPtr - ldr r1, _08049750 - str r0, [r1] - ldr r1, _08049754 - ldr r0, [r6] - adds r0, r5 - movs r4, 0 - ldrsh r0, [r0, r4] - add r0, r8 - ldrb r2, [r0] - mov r0, sp - bl sprintf - mov r0, sp - adds r1, r7, 0 - bl OpenFileAndGetFileDataPtr - adds r4, r0, 0 - ldr r0, [r6] - ldr r1, _08049758 - adds r0, r1 - ldr r1, _0804975C - adds r2, r4, 0 - bl sub_800AAA8 - adds r0, r4, 0 - bl CloseFile - ldr r0, [r6] - adds r2, r0, r5 - movs r3, 0 - ldrsh r0, [r2, r3] - cmp r0, 0x3F - bgt _08049768 - ldr r1, _08049760 - add r0, r8 - ldrb r2, [r0] - mov r0, sp - bl sprintf - mov r0, sp - adds r1, r7, 0 - bl OpenFileAndGetFileDataPtr - adds r4, r0, 0 - ldr r0, [r6] - ldr r1, _08049764 - adds r0, r1 - movs r1, 0x93 - lsls r1, 4 - adds r2, r4, 0 - bl sub_800AAA8 - adds r0, r4, 0 - bl CloseFile - b _08049794 - .align 2, 0 -_08049734: .4byte gUnknown_80F6A04 -_08049738: .4byte gUnknown_8108EC0 -_0804973C: .4byte gUnknown_203B418 -_08049740: .4byte 0x00003a0e -_08049744: .4byte gUnknown_83B0000 -_08049748: .4byte 0x06008000 -_0804974C: .4byte gUnknown_80F6A10 -_08049750: .4byte gUnknown_202EE88 -_08049754: .4byte gUnknown_80F6A1C -_08049758: .4byte 0x00011884 -_0804975C: .4byte 0x00001194 -_08049760: .4byte gUnknown_80F6A28 -_08049764: .4byte 0x00012c24 -_08049768: - ldr r1, _080497E8 - movs r3, 0 - ldrsh r2, [r2, r3] - mov r0, sp - bl sprintf - mov r0, sp - adds r1, r7, 0 - bl OpenFileAndGetFileDataPtr - adds r4, r0, 0 - ldr r0, [r6] - ldr r1, _080497EC - adds r0, r1 - movs r1, 0x90 - lsls r1, 2 - adds r2, r4, 0 - bl sub_800AAA8 - adds r0, r4, 0 - bl CloseFile -_08049794: - ldr r1, _080497F0 - ldr r5, _080497F4 - ldr r0, [r5] - ldr r4, _080497F8 - adds r0, r4 - movs r3, 0 - ldrsh r2, [r0, r3] - mov r0, sp - bl sprintf - ldr r1, _080497FC - mov r0, sp - bl OpenFileAndGetFileDataPtr - adds r1, r0, 0 - ldr r0, _08049800 - str r1, [r0] - ldr r0, _08049804 - movs r2, 0x20 - bl sub_8004AA4 - ldr r2, _08049808 - movs r6, 0 - strb r6, [r2] - movs r3, 0x1 - strb r3, [r2, 0x1] - movs r0, 0x2 - strb r0, [r2, 0x2] - movs r0, 0x3 - strb r0, [r2, 0x3] - ldr r1, _0804980C - ldr r0, [r5] - adds r0, r4 - movs r4, 0 - ldrsh r0, [r0, r4] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08049810 - strb r3, [r2, 0x4] - strb r6, [r2, 0x5] - b _08049814 - .align 2, 0 -_080497E8: .4byte gUnknown_80F6A34 -_080497EC: .4byte 0x00012c24 -_080497F0: .4byte gUnknown_80F6A40 -_080497F4: .4byte gUnknown_203B418 -_080497F8: .4byte 0x00003a0e -_080497FC: .4byte gUnknown_83B0000 -_08049800: .4byte gUnknown_202F18C -_08049804: .4byte gUnknown_202EE8C -_08049808: .4byte gUnknown_202F314 -_0804980C: .4byte gUnknown_810ACC0 -_08049810: - strb r6, [r2, 0x4] - strb r3, [r2, 0x5] -_08049814: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804966C - - thumb_func_start sub_8049820 -sub_8049820: - push {lr} - ldr r0, _08049838 - ldr r0, [r0] - bl CloseFile - ldr r0, _0804983C - ldr r0, [r0] - bl CloseFile - pop {r0} - bx r0 - .align 2, 0 -_08049838: .4byte gUnknown_202F18C -_0804983C: .4byte gUnknown_202EE88 - thumb_func_end sub_8049820 - - thumb_func_start sub_8049840 -sub_8049840: - push {lr} - ldr r0, _08049860 - ldr r0, [r0] - ldr r1, _08049864 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_8043CE4 - lsls r0, 24 - cmp r0, 0 - beq _08049870 - ldr r1, _08049868 - ldr r0, _0804986C - b _08049874 - .align 2, 0 -_08049860: .4byte gUnknown_203B418 -_08049864: .4byte 0x00003a0e -_08049868: .4byte gUnknown_203B430 -_0804986C: .4byte gUnknown_80F69EC -_08049870: - ldr r1, _0804987C - ldr r0, _08049880 -_08049874: - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_0804987C: .4byte gUnknown_203B430 -_08049880: .4byte gUnknown_80F69D4 - thumb_func_end sub_8049840 - - thumb_func_start sub_8049884 -sub_8049884: - push {r4-r6,lr} - movs r5, 0 -_08049888: - movs r4, 0 - adds r6, r5, 0x1 -_0804988C: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80498A8 - adds r4, 0x1 - cmp r4, 0x37 - ble _0804988C - adds r5, r6, 0 - cmp r5, 0x1F - ble _08049888 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8049884 - - thumb_func_start sub_80498A8 -sub_80498A8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - mov r10, r0 - mov r9, r1 - cmp r0, 0 - bge _080498BE - b _08049B72 -_080498BE: - cmp r1, 0 - bge _080498C4 - b _08049B72 -_080498C4: - cmp r0, 0x37 - ble _080498CA - b _08049B72 -_080498CA: - cmp r1, 0x1F - ble _080498D0 - b _08049B72 -_080498D0: - movs r7, 0 - bl sub_804954C - ldrh r0, [r0] - movs r1, 0x3 - mov r8, r1 - mov r6, r8 - ands r6, r0 - str r6, [sp, 0x20] - ldr r4, _08049914 - ldr r0, [r4] - ldr r3, _08049918 - adds r0, r3 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x3F - ble _08049928 - mov r3, r10 - cmp r3, 0x17 - bgt _0804991C - mov r0, r9 - cmp r0, 0x17 - bgt _0804991C - mov r0, r10 - mov r1, r9 - bl sub_8049590 - ldr r2, [r4] - mov r3, r9 - lsls r1, r3, 1 - add r1, r9 - lsls r1, 3 - add r1, r10 - b _08049B68 - .align 2, 0 -_08049914: .4byte gUnknown_203B418 -_08049918: .4byte 0x00003a0e -_0804991C: - mov r0, r10 - mov r1, r9 - bl sub_8049590 - movs r1, 0 - b _08049B70 -_08049928: - mov r0, r9 - adds r0, 0x1 - str r0, [sp, 0x24] - mov r0, r10 - ldr r1, [sp, 0x24] - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - str r0, [sp] - mov r4, r10 - adds r4, 0x1 - adds r0, r4, 0 - ldr r1, [sp, 0x24] - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - str r0, [sp, 0x4] - adds r0, r4, 0 - mov r1, r9 - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - str r0, [sp, 0x8] - mov r5, r9 - subs r5, 0x1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - str r0, [sp, 0xC] - mov r0, r10 - adds r1, r5, 0 - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - str r0, [sp, 0x10] - subs r4, 0x2 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - str r0, [sp, 0x14] - adds r0, r4, 0 - mov r1, r9 - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - str r0, [sp, 0x18] - adds r0, r4, 0 - ldr r1, [sp, 0x24] - bl sub_804954C - ldrh r0, [r0] - mov r1, r8 - ands r1, r0 - str r1, [sp, 0x1C] - cmp r6, 0x1 - bne _08049A1E - movs r7, 0xFF - ldr r0, [sp] - cmp r0, 0 - bne _080499C6 - movs r7, 0xFE -_080499C6: - ldr r0, [sp, 0x4] - cmp r0, 0 - bne _080499D2 - movs r0, 0x3 - negs r0, r0 - ands r7, r0 -_080499D2: - ldr r0, [sp, 0x8] - cmp r0, 0 - bne _080499DE - movs r0, 0x5 - negs r0, r0 - ands r7, r0 -_080499DE: - ldr r0, [sp, 0xC] - cmp r0, 0 - bne _080499EA - movs r0, 0x9 - negs r0, r0 - ands r7, r0 -_080499EA: - ldr r0, [sp, 0x10] - cmp r0, 0 - bne _080499F6 - movs r0, 0x11 - negs r0, r0 - ands r7, r0 -_080499F6: - ldr r0, [sp, 0x14] - cmp r0, 0 - bne _08049A02 - movs r0, 0x21 - negs r0, r0 - ands r7, r0 -_08049A02: - ldr r0, [sp, 0x18] - cmp r0, 0 - bne _08049A0E - movs r0, 0x41 - negs r0, r0 - ands r7, r0 -_08049A0E: - cmp r1, 0 - bne _08049A18 - movs r0, 0x81 - negs r0, r0 - ands r7, r0 -_08049A18: - movs r0, 0x80 - lsls r0, 2 - b _08049B3A -_08049A1E: - cmp r6, 0x2 - bne _08049A84 - movs r7, 0xFF - ldr r0, [sp] - cmp r0, 0x2 - beq _08049A2C - movs r7, 0xFE -_08049A2C: - ldr r0, [sp, 0x4] - cmp r0, 0x2 - beq _08049A38 - movs r0, 0x3 - negs r0, r0 - ands r7, r0 -_08049A38: - ldr r0, [sp, 0x8] - cmp r0, 0x2 - beq _08049A44 - movs r0, 0x5 - negs r0, r0 - ands r7, r0 -_08049A44: - ldr r0, [sp, 0xC] - cmp r0, 0x2 - beq _08049A50 - movs r0, 0x9 - negs r0, r0 - ands r7, r0 -_08049A50: - ldr r0, [sp, 0x10] - cmp r0, 0x2 - beq _08049A5C - movs r0, 0x11 - negs r0, r0 - ands r7, r0 -_08049A5C: - ldr r0, [sp, 0x14] - cmp r0, 0x2 - beq _08049A68 - movs r0, 0x21 - negs r0, r0 - ands r7, r0 -_08049A68: - ldr r0, [sp, 0x18] - cmp r0, 0x2 - beq _08049A74 - movs r0, 0x41 - negs r0, r0 - ands r7, r0 -_08049A74: - cmp r1, 0x2 - beq _08049A7E - movs r0, 0x81 - negs r0, r0 - ands r7, r0 -_08049A7E: - movs r0, 0x80 - lsls r0, 1 - b _08049B3A -_08049A84: - ldr r1, [sp, 0x20] - cmp r1, 0x3 - bne _08049AEE - movs r7, 0xFF - ldr r0, [sp] - cmp r0, 0x3 - beq _08049A94 - movs r7, 0xFE -_08049A94: - ldr r0, [sp, 0x4] - cmp r0, 0x3 - beq _08049AA0 - movs r0, 0x3 - negs r0, r0 - ands r7, r0 -_08049AA0: - ldr r0, [sp, 0x8] - cmp r0, 0x3 - beq _08049AAC - movs r0, 0x5 - negs r0, r0 - ands r7, r0 -_08049AAC: - ldr r0, [sp, 0xC] - cmp r0, 0x3 - beq _08049AB8 - movs r0, 0x9 - negs r0, r0 - ands r7, r0 -_08049AB8: - ldr r0, [sp, 0x10] - cmp r0, 0x3 - beq _08049AC4 - movs r0, 0x11 - negs r0, r0 - ands r7, r0 -_08049AC4: - ldr r0, [sp, 0x14] - cmp r0, 0x3 - beq _08049AD0 - movs r0, 0x21 - negs r0, r0 - ands r7, r0 -_08049AD0: - ldr r0, [sp, 0x18] - cmp r0, 0x3 - beq _08049ADC - movs r0, 0x41 - negs r0, r0 - ands r7, r0 -_08049ADC: - ldr r0, [sp, 0x1C] - cmp r0, 0x3 - beq _08049AE8 - movs r0, 0x81 - negs r0, r0 - ands r7, r0 -_08049AE8: - movs r0, 0x80 - lsls r0, 1 - b _08049B3A -_08049AEE: - ldr r0, [sp] - cmp r0, 0 - bne _08049AF6 - movs r7, 0x1 -_08049AF6: - ldr r0, [sp, 0x4] - cmp r0, 0 - bne _08049B00 - movs r0, 0x2 - orrs r7, r0 -_08049B00: - ldr r0, [sp, 0x8] - cmp r0, 0 - bne _08049B0A - movs r0, 0x4 - orrs r7, r0 -_08049B0A: - ldr r0, [sp, 0xC] - cmp r0, 0 - bne _08049B14 - movs r0, 0x8 - orrs r7, r0 -_08049B14: - ldr r0, [sp, 0x10] - cmp r0, 0 - bne _08049B1E - movs r0, 0x10 - orrs r7, r0 -_08049B1E: - ldr r0, [sp, 0x14] - cmp r0, 0 - bne _08049B28 - movs r0, 0x20 - orrs r7, r0 -_08049B28: - ldr r0, [sp, 0x18] - cmp r0, 0 - bne _08049B32 - movs r0, 0x40 - orrs r7, r0 -_08049B32: - ldr r0, [sp, 0x1C] - cmp r0, 0 - bne _08049B3C - movs r0, 0x80 -_08049B3A: - orrs r7, r0 -_08049B3C: - movs r0, 0x4 - bl RandomCapped - adds r4, r0, 0 - cmp r4, 0x3 - bne _08049B4A - movs r4, 0 -_08049B4A: - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - beq _08049B56 - movs r4, 0 -_08049B56: - mov r0, r10 - mov r1, r9 - bl sub_8049590 - ldr r1, _08049B84 - ldr r2, [r1] - lsls r1, r7, 1 - adds r1, r7 - adds r1, r4, r1 -_08049B68: - ldr r3, _08049B88 - adds r2, r3 - adds r2, r1 - ldrb r1, [r2] -_08049B70: - strb r1, [r0, 0x8] -_08049B72: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08049B84: .4byte gUnknown_203B418 -_08049B88: .4byte 0x00012c24 - thumb_func_end sub_80498A8 - - thumb_func_start sub_8049B8C -sub_8049B8C: - push {r4-r6,lr} - movs r5, 0 -_08049B90: - movs r4, 0 - adds r6, r5, 0x1 -_08049B94: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049BB0 - adds r4, 0x1 - cmp r4, 0x37 - ble _08049B94 - adds r5, r6, 0 - cmp r5, 0x1F - ble _08049B90 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8049B8C - - thumb_func_start sub_8049BB0 -sub_8049BB0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x44 - mov r10, r0 - str r1, [sp, 0x40] - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - str r0, [sp, 0x8] - str r0, [sp, 0xC] - adds r0, r1, 0 - adds r0, 0x1 - mov r9, r0 - mov r0, r10 - mov r1, r9 - bl sub_804954C - ldrh r1, [r0] - movs r4, 0x3 - adds r0, r4, 0 - ands r0, r1 - add r6, sp, 0x18 - str r0, [sp, 0x18] - mov r5, r10 - adds r5, 0x1 - adds r0, r5, 0 - mov r1, r9 - bl sub_804954C - ldrh r1, [r0] - adds r0, r4, 0 - ands r0, r1 - str r0, [r6, 0x4] - adds r0, r5, 0 - ldr r1, [sp, 0x40] - bl sub_804954C - ldrh r1, [r0] - adds r0, r4, 0 - ands r0, r1 - str r0, [r6, 0x8] - ldr r0, [sp, 0x40] - subs r0, 0x1 - mov r8, r0 - adds r0, r5, 0 - mov r1, r8 - bl sub_804954C - ldrh r1, [r0] - adds r0, r4, 0 - ands r0, r1 - str r0, [r6, 0xC] - mov r0, r10 - mov r1, r8 - bl sub_804954C - ldrh r1, [r0] - adds r0, r4, 0 - ands r0, r1 - str r0, [r6, 0x10] - subs r5, 0x2 - adds r0, r5, 0 - mov r1, r8 - bl sub_804954C - ldrh r1, [r0] - adds r0, r4, 0 - ands r0, r1 - str r0, [r6, 0x14] - adds r0, r5, 0 - ldr r1, [sp, 0x40] - bl sub_804954C - ldrh r1, [r0] - adds r0, r4, 0 - ands r0, r1 - str r0, [r6, 0x18] - adds r0, r5, 0 - mov r1, r9 - bl sub_804954C - ldrh r0, [r0] - ands r4, r0 - str r4, [r6, 0x1C] - ldr r1, [sp, 0x18] - cmp r1, 0x1 - bne _08049C6A - ldr r0, [sp] - orrs r0, r1 - str r0, [sp] -_08049C6A: - ldr r0, [r6, 0x8] - cmp r0, 0x1 - bne _08049C78 - ldr r0, [sp] - movs r1, 0x4 - orrs r0, r1 - str r0, [sp] -_08049C78: - ldr r0, [r6, 0x10] - cmp r0, 0x1 - bne _08049C86 - ldr r0, [sp] - movs r1, 0x10 - orrs r0, r1 - str r0, [sp] -_08049C86: - ldr r0, [r6, 0x18] - cmp r0, 0x1 - bne _08049C94 - ldr r0, [sp] - movs r1, 0x40 - orrs r0, r1 - str r0, [sp] -_08049C94: - ldr r2, [sp, 0x18] - cmp r2, 0 - beq _08049CAE - ldr r0, [r6, 0x4] - cmp r0, 0x1 - bne _08049CAE - ldr r0, [r6, 0x8] - cmp r0, 0 - beq _08049CC8 - ldr r0, [sp] - movs r1, 0x2 - orrs r0, r1 - str r0, [sp] -_08049CAE: - ldr r0, [r6, 0x8] - cmp r0, 0 - beq _08049CC8 - ldr r0, [r6, 0xC] - cmp r0, 0x1 - bne _08049CC8 - ldr r0, [r6, 0x10] - cmp r0, 0 - beq _08049CE2 - ldr r0, [sp] - movs r1, 0x8 - orrs r0, r1 - str r0, [sp] -_08049CC8: - ldr r0, [r6, 0x10] - cmp r0, 0 - beq _08049CE2 - ldr r0, [r6, 0x14] - cmp r0, 0x1 - bne _08049CE2 - ldr r0, [r6, 0x18] - cmp r0, 0 - beq _08049CFA - ldr r0, [sp] - movs r1, 0x20 - orrs r0, r1 - str r0, [sp] -_08049CE2: - ldr r0, [r6, 0x18] - cmp r0, 0 - beq _08049CFA - ldr r0, [r6, 0x1C] - cmp r0, 0x1 - bne _08049CFA - cmp r2, 0 - beq _08049CFA - ldr r0, [sp] - movs r1, 0x80 - orrs r0, r1 - str r0, [sp] -_08049CFA: - add r4, sp, 0x38 - movs r7, 0x1 - adds r2, r4, 0 - adds r1, r6, 0 - movs r5, 0 - movs r3, 0x7 -_08049D06: - ldr r0, [r1] - subs r0, 0x1 - cmp r0, 0x1 - bhi _08049D12 - strb r7, [r2] - b _08049D14 -_08049D12: - strb r5, [r2] -_08049D14: - adds r2, 0x1 - adds r1, 0x4 - subs r3, 0x1 - cmp r3, 0 - bge _08049D06 - ldrb r0, [r4] - cmp r0, 0 - beq _08049D2C - ldr r0, [sp, 0x4] - movs r1, 0x1 - orrs r0, r1 - str r0, [sp, 0x4] -_08049D2C: - ldrb r0, [r4, 0x2] - cmp r0, 0 - beq _08049D3A - ldr r0, [sp, 0x4] - movs r1, 0x4 - orrs r0, r1 - str r0, [sp, 0x4] -_08049D3A: - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _08049D48 - ldr r0, [sp, 0x4] - movs r1, 0x10 - orrs r0, r1 - str r0, [sp, 0x4] -_08049D48: - ldrb r0, [r4, 0x6] - cmp r0, 0 - beq _08049D56 - ldr r0, [sp, 0x4] - movs r1, 0x40 - orrs r0, r1 - str r0, [sp, 0x4] -_08049D56: - ldr r2, [sp, 0x18] - cmp r2, 0 - beq _08049D70 - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _08049D70 - ldr r0, [r6, 0x8] - cmp r0, 0 - beq _08049D8A - ldr r0, [sp, 0x4] - movs r1, 0x2 - orrs r0, r1 - str r0, [sp, 0x4] -_08049D70: - ldr r0, [r6, 0x8] - cmp r0, 0 - beq _08049D8A - ldrb r0, [r4, 0x3] - cmp r0, 0 - beq _08049D8A - ldr r0, [r6, 0x10] - cmp r0, 0 - beq _08049DA4 - ldr r0, [sp, 0x4] - movs r1, 0x8 - orrs r0, r1 - str r0, [sp, 0x4] -_08049D8A: - ldr r0, [r6, 0x10] - cmp r0, 0 - beq _08049DA4 - ldrb r0, [r4, 0x5] - cmp r0, 0 - beq _08049DA4 - ldr r0, [r6, 0x18] - cmp r0, 0 - beq _08049DBC - ldr r0, [sp, 0x4] - movs r1, 0x20 - orrs r0, r1 - str r0, [sp, 0x4] -_08049DA4: - ldr r0, [r6, 0x18] - cmp r0, 0 - beq _08049DBC - ldrb r0, [r4, 0x7] - cmp r0, 0 - beq _08049DBC - cmp r2, 0 - beq _08049DC8 - ldr r0, [sp, 0x4] - movs r1, 0x80 - orrs r0, r1 - str r0, [sp, 0x4] -_08049DBC: - cmp r2, 0 - beq _08049DC8 - ldr r0, [sp, 0x8] - movs r1, 0x1 - orrs r0, r1 - str r0, [sp, 0x8] -_08049DC8: - ldr r0, [r6, 0x8] - cmp r0, 0 - beq _08049DD6 - ldr r0, [sp, 0x8] - movs r1, 0x4 - orrs r0, r1 - str r0, [sp, 0x8] -_08049DD6: - ldr r0, [r6, 0x10] - cmp r0, 0 - beq _08049DE4 - ldr r0, [sp, 0x8] - movs r1, 0x10 - orrs r0, r1 - str r0, [sp, 0x8] -_08049DE4: - ldr r0, [r6, 0x18] - cmp r0, 0 - beq _08049DF2 - ldr r0, [sp, 0x8] - movs r1, 0x40 - orrs r0, r1 - str r0, [sp, 0x8] -_08049DF2: - cmp r2, 0 - beq _08049E0A - ldr r0, [r6, 0x4] - cmp r0, 0 - beq _08049E0A - ldr r0, [r6, 0x8] - cmp r0, 0 - beq _08049E24 - ldr r0, [sp, 0x8] - movs r1, 0x2 - orrs r0, r1 - str r0, [sp, 0x8] -_08049E0A: - ldr r0, [r6, 0x8] - cmp r0, 0 - beq _08049E24 - ldr r0, [r6, 0xC] - cmp r0, 0 - beq _08049E24 - ldr r0, [r6, 0x10] - cmp r0, 0 - beq _08049E3E - ldr r0, [sp, 0x8] - movs r1, 0x8 - orrs r0, r1 - str r0, [sp, 0x8] -_08049E24: - ldr r0, [r6, 0x10] - cmp r0, 0 - beq _08049E3E - ldr r0, [r6, 0x14] - cmp r0, 0 - beq _08049E3E - ldr r0, [r6, 0x18] - cmp r0, 0 - beq _08049E56 - ldr r0, [sp, 0x8] - movs r1, 0x20 - orrs r0, r1 - str r0, [sp, 0x8] -_08049E3E: - ldr r0, [r6, 0x18] - cmp r0, 0 - beq _08049E56 - ldr r0, [r6, 0x1C] - cmp r0, 0 - beq _08049E56 - cmp r2, 0 - beq _08049E56 - ldr r0, [sp, 0x8] - movs r1, 0x80 - orrs r0, r1 - str r0, [sp, 0x8] -_08049E56: - movs r0, 0xFF - str r0, [sp, 0xC] - mov r0, r10 - cmp r0, 0x1 - bgt _08049E64 - movs r0, 0x1F - str r0, [sp, 0xC] -_08049E64: - ldr r0, [sp, 0x40] - cmp r0, 0x1 - bgt _08049E74 - ldr r0, [sp, 0xC] - movs r1, 0x39 - negs r1, r1 - ands r0, r1 - str r0, [sp, 0xC] -_08049E74: - mov r0, r10 - cmp r0, 0x35 - ble _08049E84 - ldr r0, [sp, 0xC] - movs r1, 0xF - negs r1, r1 - ands r0, r1 - str r0, [sp, 0xC] -_08049E84: - ldr r0, [sp, 0x40] - cmp r0, 0x1D - ble _08049E94 - ldr r0, [sp, 0xC] - movs r1, 0x84 - negs r1, r1 - ands r0, r1 - str r0, [sp, 0xC] -_08049E94: - mov r0, r10 - ldr r1, [sp, 0x40] - bl sub_8049590 - ldr r1, [sp] - strb r1, [r0, 0xA] - mov r0, r10 - ldr r1, [sp, 0x40] - bl sub_8049590 - ldr r1, [sp, 0x4] - strb r1, [r0, 0xB] - mov r0, r10 - ldr r1, [sp, 0x40] - bl sub_8049590 - ldr r1, [sp, 0x8] - strb r1, [r0, 0xC] - mov r0, r10 - ldr r1, [sp, 0x40] - bl sub_8049590 - ldr r1, [sp, 0xC] - strb r1, [r0, 0xD] - add sp, 0x44 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8049BB0 - - thumb_func_start sub_8049ED4 -sub_8049ED4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x38 - ldr r0, _08049F78 - ldr r6, [r0] - ldr r1, _08049F7C - adds r0, r6, r1 - ldrb r0, [r0] - str r0, [sp] - ldr r2, _08049F80 - adds r0, r6, r2 - ldrb r0, [r0] - str r0, [sp, 0x4] - ldr r4, _08049F84 - adds r0, r6, r4 - ldrh r0, [r0] - lsls r0, 16 - asrs r3, r0, 19 - ldr r1, _08049F88 - adds r0, r3, 0 - adds r0, 0x1E - lsls r0, 1 - adds r1, r0, r1 - movs r4, 0 - ldrsh r2, [r1, r4] - mov r10, r2 - ldr r1, _08049F8C - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - str r1, [sp, 0x10] - movs r4, 0 - str r4, [sp, 0x8] -_08049F1C: - ldr r1, _08049F90 - adds r0, r6, r1 - ldrh r0, [r0] - lsls r0, 16 - asrs r0, 19 - subs r2, r0, 0x1 - mov r9, r2 - movs r1, 0x1F - ands r3, r1 - ldr r1, _08049F88 - adds r0, 0x1D - lsls r0, 1 - adds r1, r0, r1 - movs r2, 0 - ldrsh r4, [r1, r2] - mov r8, r4 - ldr r1, _08049F8C - adds r0, r1 - movs r1, 0 - ldrsh r4, [r0, r1] - str r4, [sp, 0x14] - mov r2, r8 - lsls r0, r2, 1 - add r0, r8 - mov r4, r10 - adds r7, r4, r0 - ldr r0, [sp, 0x10] - ldr r1, [sp, 0x14] - str r3, [sp, 0x34] - bl sub_804954C - adds r5, r0, 0 - ldrh r2, [r5] - movs r1, 0x80 - lsls r1, 5 - adds r0, r1, 0 - ands r0, r2 - ldr r3, [sp, 0x34] - cmp r0, 0 - beq _08049F98 - lsls r0, r7, 1 - ldr r2, _08049F94 - adds r0, r2 - adds r2, r6, r0 - b _0804A06A - .align 2, 0 -_08049F78: .4byte gUnknown_203B418 -_08049F7C: .4byte 0x00018210 -_08049F80: .4byte 0x0001820f -_08049F84: .4byte 0x000181f0 -_08049F88: .4byte gUnknown_80F6A4A -_08049F8C: .4byte gUnknown_80F6C06 -_08049F90: .4byte 0x000181f2 -_08049F94: .4byte 0x00012bec -_08049F98: - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - beq _08049FAC - lsls r0, r7, 1 - ldr r4, _08049FA8 - b _08049FD2 - .align 2, 0 -_08049FA8: .4byte 0x00012bda -_08049FAC: - ldr r0, [sp] - cmp r0, 0 - beq _08049FC4 - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r2, _08049FC0 - adds r1, r2 - b _0804A064 - .align 2, 0 -_08049FC0: .4byte 0x00011884 -_08049FC4: - ldrh r1, [r5, 0x4] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08049FDC - lsls r0, r7, 1 - ldr r4, _08049FD8 -_08049FD2: - adds r0, r4 - adds r2, r6, r0 - b _0804A06A - .align 2, 0 -_08049FD8: .4byte 0x00012bfe -_08049FDC: - ldr r4, [r5, 0x14] - cmp r4, 0 - beq _0804A028 - adds r0, r4, 0 - str r3, [sp, 0x34] - bl sub_80450F8 - ldr r3, [sp, 0x34] - cmp r0, 0x2 - bne _0804A014 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - bne _0804A000 - ldr r0, [sp, 0x4] - cmp r0, 0 - beq _0804A014 -_0804A000: - ldr r0, [r4, 0x70] - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r1, _0804A010 - adds r0, r1 - b _0804A046 - .align 2, 0 -_0804A010: .4byte 0x00012a18 -_0804A014: - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r2, _0804A024 - adds r1, r2 - b _0804A064 - .align 2, 0 -_0804A024: .4byte 0x00011884 -_0804A028: - movs r4, 0x80 - lsls r4, 2 - adds r0, r4, 0 - ands r0, r2 - cmp r0, 0 - beq _0804A058 - ldr r1, _0804A050 - adds r0, r6, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r4, _0804A054 - adds r0, r4 -_0804A046: - adds r0, r6, r0 - lsls r1, r7, 1 - adds r2, r0, r1 - b _0804A06A - .align 2, 0 -_0804A050: .4byte 0x00003a12 -_0804A054: .4byte 0x00012a18 -_0804A058: - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r0, _0804A0E8 - adds r1, r0 -_0804A064: - adds r1, r6, r1 - lsls r0, r7, 1 - adds r2, r1, r0 -_0804A06A: - lsls r1, r3, 1 - str r1, [sp, 0x30] - adds r3, 0x1 - str r3, [sp, 0x2C] - mov r4, r10 - adds r4, 0x1 - str r4, [sp, 0x28] - ldr r0, [sp, 0x8] - adds r0, 0x1 - str r0, [sp, 0x24] - mov r1, r10 - lsls r3, r1, 1 - ldr r4, _0804A0EC - adds r4, r3, r4 - str r4, [sp, 0x18] - ldr r0, _0804A0F0 - adds r0, r3, r0 - str r0, [sp, 0x1C] - ldr r1, _0804A0F4 - adds r1, r3, r1 - str r1, [sp, 0x20] - movs r4, 0x16 - str r4, [sp, 0xC] -_0804A098: - movs r0, 0x1F - mov r1, r9 - ands r1, r0 - mov r9, r1 - lsls r0, r1, 6 - ldr r4, [sp, 0x30] - adds r0, r4, r0 - ldr r1, _0804A0F8 - adds r0, r1 - ldrh r1, [r2] - strh r1, [r0] - adds r2, 0x6 - movs r4, 0x1 - add r9, r4 - add r8, r4 - mov r0, r8 - cmp r0, 0x3 - bne _0804A1AC - movs r1, 0 - mov r8, r1 - ldr r2, [sp, 0x14] - adds r2, 0x1 - str r2, [sp, 0x14] - mov r7, r10 - ldr r0, [sp, 0x10] - adds r1, r2, 0 - str r3, [sp, 0x34] - bl sub_804954C - adds r5, r0, 0 - ldrh r2, [r5] - movs r0, 0x20 - ands r0, r2 - ldr r3, [sp, 0x34] - cmp r0, 0 - beq _0804A0FC - ldr r4, [sp, 0x18] - adds r2, r6, r4 - b _0804A1AC - .align 2, 0 -_0804A0E8: .4byte 0x00011884 -_0804A0EC: .4byte 0x00012bda -_0804A0F0: .4byte 0x00012bec -_0804A0F4: .4byte 0x00012bfe -_0804A0F8: .4byte gUnknown_202C838 -_0804A0FC: - movs r1, 0x80 - lsls r1, 5 - adds r0, r1, 0 - ands r0, r2 - cmp r0, 0 - beq _0804A10E - ldr r4, [sp, 0x1C] - adds r2, r6, r4 - b _0804A1AC -_0804A10E: - ldr r0, [sp] - cmp r0, 0 - bne _0804A19C - ldrh r1, [r5, 0x4] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0804A124 - ldr r4, [sp, 0x20] - adds r2, r6, r4 - b _0804A1AC -_0804A124: - ldr r4, [r5, 0x14] - cmp r4, 0 - beq _0804A174 - adds r0, r4, 0 - str r3, [sp, 0x34] - bl sub_80450F8 - ldr r3, [sp, 0x34] - cmp r0, 0x2 - bne _0804A15C - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - bne _0804A148 - ldr r0, [sp, 0x4] - cmp r0, 0 - beq _0804A15C -_0804A148: - ldr r0, [r4, 0x70] - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r1, _0804A158 - b _0804A1A6 - .align 2, 0 -_0804A158: .4byte 0x00012a18 -_0804A15C: - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r2, _0804A170 - adds r1, r2 - adds r1, r6, r1 - lsls r0, r7, 1 - adds r2, r1, r0 - b _0804A1AC - .align 2, 0 -_0804A170: .4byte 0x00011884 -_0804A174: - movs r4, 0x80 - lsls r4, 2 - adds r0, r4, 0 - ands r0, r2 - cmp r0, 0 - beq _0804A19C - ldr r1, _0804A194 - adds r0, r6, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r4, _0804A198 - adds r0, r4 - b _0804A1A8 - .align 2, 0 -_0804A194: .4byte 0x00003a12 -_0804A198: .4byte 0x00012a18 -_0804A19C: - ldrb r1, [r5, 0x8] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r1, _0804A1EC -_0804A1A6: - adds r0, r1 -_0804A1A8: - adds r0, r6, r0 - adds r2, r0, r3 -_0804A1AC: - ldr r4, [sp, 0xC] - subs r4, 0x1 - str r4, [sp, 0xC] - cmp r4, 0 - blt _0804A1B8 - b _0804A098 -_0804A1B8: - ldr r3, [sp, 0x2C] - ldr r0, [sp, 0x28] - mov r10, r0 - cmp r0, 0x3 - bne _0804A1CC - movs r1, 0 - mov r10, r1 - ldr r2, [sp, 0x10] - adds r2, 0x1 - str r2, [sp, 0x10] -_0804A1CC: - ldr r4, [sp, 0x24] - str r4, [sp, 0x8] - cmp r4, 0x1E - bgt _0804A1D6 - b _08049F1C -_0804A1D6: - movs r0, 0x3 - bl sub_80098F8 - add sp, 0x38 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804A1EC: .4byte 0x00011884 - thumb_func_end sub_8049ED4 - - thumb_func_start sub_804A1F0 -sub_804A1F0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - ldr r2, _0804A284 - ldr r7, [r2] - ldr r3, _0804A288 - adds r2, r7, r3 - ldrb r2, [r2] - str r2, [sp] - ldr r4, _0804A28C - adds r2, r7, r4 - ldrb r2, [r2] - str r2, [sp, 0x4] - ldr r5, _0804A290 - adds r2, r7, r5 - movs r3, 0 - ldrsh r2, [r2, r3] - adds r2, r0 - subs r4, 0x1D - adds r0, r7, r4 - movs r5, 0 - ldrsh r0, [r0, r5] - adds r0, r1 - asrs r0, 3 - asrs r2, 3 - str r2, [sp, 0x14] - subs r1, r0, 0x1 - mov r9, r1 - ldr r3, _0804A294 - adds r1, r2, 0 - adds r1, 0x1E - lsls r1, 1 - adds r2, r1, r3 - movs r5, 0 - ldrsh r4, [r2, r5] - str r4, [sp, 0x10] - ldr r2, _0804A298 - adds r1, r2 - movs r5, 0 - ldrsh r4, [r1, r5] - str r4, [sp, 0xC] - adds r0, 0x1D - lsls r0, 1 - adds r3, r0, r3 - movs r4, 0 - ldrsh r1, [r3, r4] - mov r8, r1 - adds r0, r2 - movs r1, 0 - ldrsh r5, [r0, r1] - mov r10, r5 - mov r2, r8 - lsls r0, r2, 1 - add r0, r8 - ldr r3, [sp, 0x10] - adds r6, r3, r0 - ldr r0, [sp, 0xC] - mov r1, r10 - bl sub_804954C - adds r5, r0, 0 - ldrh r1, [r5] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0804A2A0 - lsls r0, r6, 1 - ldr r4, _0804A29C - adds r0, r4 - adds r2, r7, r0 - b _0804A356 - .align 2, 0 -_0804A284: .4byte gUnknown_203B418 -_0804A288: .4byte 0x00018210 -_0804A28C: .4byte 0x0001820f -_0804A290: .4byte 0x000181f0 -_0804A294: .4byte gUnknown_80F6A4A -_0804A298: .4byte gUnknown_80F6C06 -_0804A29C: .4byte 0x00012bda -_0804A2A0: - movs r0, 0x80 - lsls r0, 5 - ands r0, r1 - cmp r0, 0 - beq _0804A2B8 - lsls r0, r6, 1 - ldr r5, _0804A2B4 - adds r0, r5 - adds r2, r7, r0 - b _0804A356 - .align 2, 0 -_0804A2B4: .4byte 0x00012bec -_0804A2B8: - ldr r0, [sp] - cmp r0, 0 - beq _0804A2D0 - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r2, _0804A2CC - adds r1, r2 - b _0804A350 - .align 2, 0 -_0804A2CC: .4byte 0x00011884 -_0804A2D0: - ldr r4, [r5, 0x14] - cmp r4, 0 - beq _0804A318 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x2 - bne _0804A304 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - bne _0804A2F0 - ldr r3, [sp, 0x4] - cmp r3, 0 - beq _0804A304 -_0804A2F0: - ldr r0, [r4, 0x70] - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r4, _0804A300 - adds r0, r4 - b _0804A334 - .align 2, 0 -_0804A300: .4byte 0x00012a18 -_0804A304: - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r5, _0804A314 - adds r1, r5 - b _0804A350 - .align 2, 0 -_0804A314: .4byte 0x00011884 -_0804A318: - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _0804A344 - ldr r1, _0804A33C - adds r0, r7, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r3, _0804A340 - adds r0, r3 -_0804A334: - adds r0, r7, r0 - lsls r1, r6, 1 - adds r2, r0, r1 - b _0804A356 - .align 2, 0 -_0804A33C: .4byte 0x00003a12 -_0804A340: .4byte 0x00012a18 -_0804A344: - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r4, _0804A3AC - adds r1, r4 -_0804A350: - adds r1, r7, r1 - lsls r0, r6, 1 - adds r2, r1, r0 -_0804A356: - movs r5, 0x16 - str r5, [sp, 0x8] -_0804A35A: - movs r0, 0x1F - ldr r1, [sp, 0x14] - ands r1, r0 - str r1, [sp, 0x14] - mov r3, r9 - ands r3, r0 - mov r9, r3 - lsls r1, 1 - lsls r0, r3, 6 - adds r1, r0 - ldr r4, _0804A3B0 - adds r1, r4 - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x6 - movs r5, 0x1 - add r9, r5 - add r8, r5 - mov r0, r8 - cmp r0, 0x3 - beq _0804A386 - b _0804A476 -_0804A386: - movs r1, 0 - mov r8, r1 - add r10, r5 - ldr r6, [sp, 0x10] - ldr r0, [sp, 0xC] - mov r1, r10 - bl sub_804954C - adds r5, r0, 0 - ldrh r1, [r5] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0804A3B8 - lsls r0, r6, 1 - ldr r2, _0804A3B4 - adds r0, r2 - adds r2, r7, r0 - b _0804A476 - .align 2, 0 -_0804A3AC: .4byte 0x00011884 -_0804A3B0: .4byte gUnknown_202C838 -_0804A3B4: .4byte 0x00012bda -_0804A3B8: - movs r3, 0x80 - lsls r3, 5 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _0804A3D4 - lsls r0, r6, 1 - ldr r4, _0804A3D0 - adds r0, r4 - adds r2, r7, r0 - b _0804A476 - .align 2, 0 -_0804A3D0: .4byte 0x00012bec -_0804A3D4: - ldr r0, [sp] - cmp r0, 0 - beq _0804A3EC - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r2, _0804A3E8 - adds r1, r2 - b _0804A470 - .align 2, 0 -_0804A3E8: .4byte 0x00011884 -_0804A3EC: - ldr r4, [r5, 0x14] - cmp r4, 0 - beq _0804A434 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x2 - bne _0804A420 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - bne _0804A40C - ldr r3, [sp, 0x4] - cmp r3, 0 - beq _0804A420 -_0804A40C: - ldr r0, [r4, 0x70] - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r4, _0804A41C - adds r0, r4 - b _0804A452 - .align 2, 0 -_0804A41C: .4byte 0x00012a18 -_0804A420: - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r5, _0804A430 - adds r1, r5 - b _0804A470 - .align 2, 0 -_0804A430: .4byte 0x00011884 -_0804A434: - movs r2, 0x80 - lsls r2, 2 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0804A464 - ldr r3, _0804A45C - adds r0, r7, r3 - movs r4, 0 - ldrsh r1, [r0, r4] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r5, _0804A460 - adds r0, r5 -_0804A452: - adds r0, r7, r0 - lsls r1, r6, 1 - adds r2, r0, r1 - b _0804A476 - .align 2, 0 -_0804A45C: .4byte 0x00003a12 -_0804A460: .4byte 0x00012a18 -_0804A464: - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r0, _0804A498 - adds r1, r0 -_0804A470: - adds r1, r7, r1 - lsls r0, r6, 1 - adds r2, r1, r0 -_0804A476: - ldr r1, [sp, 0x8] - subs r1, 0x1 - str r1, [sp, 0x8] - cmp r1, 0 - blt _0804A482 - b _0804A35A -_0804A482: - movs r0, 0x3 - bl sub_80098F8 - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804A498: .4byte 0x00011884 - thumb_func_end sub_804A1F0 - - thumb_func_start sub_804A49C -sub_804A49C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - ldr r2, _0804A52C - ldr r7, [r2] - ldr r3, _0804A530 - adds r2, r7, r3 - ldrb r2, [r2] - str r2, [sp] - ldr r4, _0804A534 - adds r2, r7, r4 - ldrb r2, [r2] - str r2, [sp, 0x4] - subs r3, 0x20 - adds r2, r7, r3 - movs r4, 0 - ldrsh r2, [r2, r4] - adds r2, r0 - adds r3, 0x2 - adds r0, r7, r3 - movs r4, 0 - ldrsh r0, [r0, r4] - adds r0, r1 - asrs r2, 3 - mov r8, r2 - asrs r0, 3 - str r0, [sp, 0x14] - ldr r2, _0804A538 - mov r0, r8 - adds r0, 0x1E - lsls r0, 1 - adds r1, r0, r2 - movs r4, 0 - ldrsh r3, [r1, r4] - mov r9, r3 - ldr r1, _0804A53C - adds r0, r1 - movs r4, 0 - ldrsh r3, [r0, r4] - mov r10, r3 - ldr r0, [sp, 0x14] - adds r0, 0x1E - lsls r0, 1 - adds r2, r0, r2 - movs r4, 0 - ldrsh r3, [r2, r4] - str r3, [sp, 0x10] - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - str r1, [sp, 0xC] - lsls r0, r3, 1 - adds r0, r3 - mov r3, r9 - adds r6, r3, r0 - mov r0, r10 - bl sub_804954C - adds r5, r0, 0 - ldrh r1, [r5] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0804A544 - lsls r0, r6, 1 - ldr r4, _0804A540 - adds r0, r4 - adds r2, r7, r0 - b _0804A5DA - .align 2, 0 -_0804A52C: .4byte gUnknown_203B418 -_0804A530: .4byte 0x00018210 -_0804A534: .4byte 0x0001820f -_0804A538: .4byte gUnknown_80F6A4A -_0804A53C: .4byte gUnknown_80F6C06 -_0804A540: .4byte 0x00012bda -_0804A544: - movs r0, 0x80 - lsls r0, 5 - ands r0, r1 - cmp r0, 0 - beq _0804A55C - lsls r0, r6, 1 - ldr r1, _0804A558 - adds r0, r1 - adds r2, r7, r0 - b _0804A5DA - .align 2, 0 -_0804A558: .4byte 0x00012bec -_0804A55C: - ldr r2, [sp] - cmp r2, 0 - beq _0804A574 - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r3, _0804A570 - adds r1, r3 - b _0804A5D4 - .align 2, 0 -_0804A570: .4byte 0x00011884 -_0804A574: - ldr r4, [r5, 0x14] - cmp r4, 0 - beq _0804A59A - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x2 - bne _0804A5C8 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - bne _0804A594 - ldr r0, [sp, 0x4] - cmp r0, 0 - beq _0804A5C8 -_0804A594: - ldr r0, [r4, 0x70] - ldrb r1, [r0] - b _0804A5AC -_0804A59A: - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _0804A5C8 - ldr r3, _0804A5C0 - adds r0, r7, r3 - movs r4, 0 - ldrsh r1, [r0, r4] -_0804A5AC: - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r1, _0804A5C4 - adds r0, r1 - adds r0, r7, r0 - lsls r1, r6, 1 - adds r2, r0, r1 - b _0804A5DA - .align 2, 0 -_0804A5C0: .4byte 0x00003a12 -_0804A5C4: .4byte 0x00012a18 -_0804A5C8: - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r2, _0804A638 - adds r1, r2 -_0804A5D4: - adds r1, r7, r1 - lsls r0, r6, 1 - adds r2, r1, r0 -_0804A5DA: - movs r3, 0x1E - str r3, [sp, 0x8] -_0804A5DE: - movs r0, 0x1F - mov r4, r8 - ands r4, r0 - mov r8, r4 - ldr r1, [sp, 0x14] - ands r1, r0 - str r1, [sp, 0x14] - lsls r1, r4, 1 - ldr r3, [sp, 0x14] - lsls r0, r3, 6 - adds r1, r0 - ldr r4, _0804A63C - adds r1, r4 - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x2 - movs r0, 0x1 - add r8, r0 - add r9, r0 - mov r1, r9 - cmp r1, 0x3 - beq _0804A60C - b _0804A702 -_0804A60C: - movs r2, 0 - mov r9, r2 - add r10, r0 - ldr r3, [sp, 0x10] - lsls r0, r3, 1 - adds r6, r0, r3 - mov r0, r10 - ldr r1, [sp, 0xC] - bl sub_804954C - adds r5, r0, 0 - ldrh r1, [r5] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0804A644 - lsls r0, r6, 1 - ldr r4, _0804A640 - adds r0, r4 - adds r2, r7, r0 - b _0804A702 - .align 2, 0 -_0804A638: .4byte 0x00011884 -_0804A63C: .4byte gUnknown_202C838 -_0804A640: .4byte 0x00012bda -_0804A644: - movs r2, 0x80 - lsls r2, 5 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0804A660 - lsls r0, r6, 1 - ldr r3, _0804A65C - adds r0, r3 - adds r2, r7, r0 - b _0804A702 - .align 2, 0 -_0804A65C: .4byte 0x00012bec -_0804A660: - ldr r4, [sp] - cmp r4, 0 - beq _0804A678 - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r0, _0804A674 - adds r1, r0 - b _0804A6FC - .align 2, 0 -_0804A674: .4byte 0x00011884 -_0804A678: - ldr r4, [r5, 0x14] - cmp r4, 0 - beq _0804A6C0 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x2 - bne _0804A6AC - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - bne _0804A698 - ldr r1, [sp, 0x4] - cmp r1, 0 - beq _0804A6AC -_0804A698: - ldr r0, [r4, 0x70] - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r2, _0804A6A8 - adds r0, r2 - b _0804A6DE - .align 2, 0 -_0804A6A8: .4byte 0x00012a18 -_0804A6AC: - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r3, _0804A6BC - adds r1, r3 - b _0804A6FC - .align 2, 0 -_0804A6BC: .4byte 0x00011884 -_0804A6C0: - movs r4, 0x80 - lsls r4, 2 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0804A6F0 - ldr r1, _0804A6E8 - adds r0, r7, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r3, _0804A6EC - adds r0, r3 -_0804A6DE: - adds r0, r7, r0 - lsls r1, r6, 1 - adds r2, r0, r1 - b _0804A702 - .align 2, 0 -_0804A6E8: .4byte 0x00003a12 -_0804A6EC: .4byte 0x00012a18 -_0804A6F0: - ldrb r0, [r5, 0x8] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 1 - ldr r4, _0804A724 - adds r1, r4 -_0804A6FC: - adds r1, r7, r1 - lsls r0, r6, 1 - adds r2, r1, r0 -_0804A702: - ldr r0, [sp, 0x8] - subs r0, 0x1 - str r0, [sp, 0x8] - cmp r0, 0 - blt _0804A70E - b _0804A5DE -_0804A70E: - movs r0, 0x3 - bl sub_80098F8 - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804A724: .4byte 0x00011884 - thumb_func_end sub_804A49C - - thumb_func_start sub_804A728 -sub_804A728: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x40 - str r0, [sp, 0x1C] - adds r5, r1, 0 - adds r4, r3, 0 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x20] - lsls r4, 24 - lsrs r4, 24 - ldr r6, _0804A814 - ldr r0, [r6] - mov r8, r0 - bl sub_8083600 - str r0, [sp, 0x24] - ldr r0, _0804A818 - add r0, r8 - ldrh r0, [r0] - lsls r0, 16 - asrs r0, 19 - str r0, [sp, 0x30] - adds r1, r0, 0 - ldr r0, [r6] - ldr r2, _0804A81C - adds r0, r2 - strb r4, [r0] - ldr r3, [sp, 0x1C] - movs r4, 0 - ldrsh r7, [r3, r4] - movs r0, 0x2 - ldrsh r6, [r3, r0] - ldr r0, _0804A820 - lsls r5, 2 - adds r5, r0 - movs r2, 0 - ldrsh r4, [r5, r2] - movs r0, 0x2 - ldrsh r3, [r5, r0] - mov r0, sp - movs r2, 0x5 -_0804A782: - strh r7, [r0] - strh r6, [r0, 0x2] - adds r7, r4 - adds r6, r3 - adds r0, 0x4 - subs r2, 0x1 - cmp r2, 0 - bge _0804A782 - ldr r0, _0804A824 - adds r1, 0x1E - lsls r1, 1 - adds r0, r1, r0 - movs r3, 0 - ldrsh r2, [r0, r3] - str r2, [sp, 0x28] - ldr r0, _0804A828 - adds r1, r0 - movs r0, 0 - ldrsh r4, [r1, r0] - mov r10, r4 - movs r7, 0 -_0804A7AC: - ldr r0, _0804A82C - add r0, r8 - ldrh r0, [r0] - lsls r0, 16 - asrs r0, 19 - str r0, [sp, 0x34] - ldr r0, _0804A824 - ldr r1, [sp, 0x34] - adds r1, 0x1E - lsls r1, 1 - adds r0, r1, r0 - movs r3, 0 - ldrsh r2, [r0, r3] - str r2, [sp, 0x2C] - ldr r0, _0804A828 - adds r1, r0 - movs r0, 0 - ldrsh r4, [r1, r0] - mov r9, r4 - lsls r0, r2, 1 - adds r0, r2 - ldr r1, [sp, 0x28] - adds r5, r1, r0 - mov r2, r10 - lsls r0, r2, 16 - lsls r1, r4, 16 - lsrs r0, 16 - orrs r0, r1 - str r0, [sp, 0x18] - ldr r3, [sp, 0x20] - cmp r3, 0 - beq _0804A850 - ldr r4, [sp, 0x1C] - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r10, r0 - bne _0804A834 - movs r2, 0x2 - ldrsh r0, [r4, r2] - cmp r9, r0 - bne _0804A834 - lsls r0, r5, 1 - ldr r3, _0804A830 - adds r0, r3 - mov r4, r8 - adds r2, r4, r0 - ldr r0, [sp, 0x28] - adds r0, 0x1 - str r0, [sp, 0x3C] - adds r1, r7, 0x1 - str r1, [sp, 0x38] - b _0804A8FC - .align 2, 0 -_0804A814: .4byte gUnknown_203B418 -_0804A818: .4byte 0x000181f0 -_0804A81C: .4byte 0x0001821a -_0804A820: .4byte gUnknown_80F4448 -_0804A824: .4byte gUnknown_80F6A4A -_0804A828: .4byte gUnknown_80F6C06 -_0804A82C: .4byte 0x000181f2 -_0804A830: .4byte 0x00012b92 -_0804A834: - lsls r0, r5, 1 - ldr r2, _0804A84C - adds r0, r2 - mov r3, r8 - adds r2, r3, r0 - ldr r4, [sp, 0x28] - adds r4, 0x1 - str r4, [sp, 0x3C] - adds r0, r7, 0x1 - str r0, [sp, 0x38] - b _0804A8FC - .align 2, 0 -_0804A84C: .4byte 0x00013554 -_0804A850: - add r4, sp, 0x18 - ldr r0, [sp, 0x24] - adds r1, r4, 0 - bl sub_807049C - lsls r0, 24 - cmp r0, 0 - bne _0804A8E8 - ldr r0, [sp, 0x24] - adds r1, r4, 0 - bl sub_8045AAC - lsls r0, 24 - cmp r0, 0 - beq _0804A8E8 - movs r2, 0 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - lsls r3, r5, 1 - ldr r4, [sp, 0x28] - adds r4, 0x1 - str r4, [sp, 0x3C] - adds r1, r7, 0x1 - str r1, [sp, 0x38] - cmp r0, r10 - bne _0804A890 - mov r0, sp - movs r4, 0x2 - ldrsh r0, [r0, r4] - cmp r0, r9 - beq _0804A8AC -_0804A890: - adds r2, 0x1 - cmp r2, 0x5 - bgt _0804A8AC - lsls r0, r2, 2 - mov r4, sp - adds r1, r4, r0 - movs r4, 0 - ldrsh r0, [r1, r4] - cmp r0, r10 - bne _0804A890 - movs r4, 0x2 - ldrsh r0, [r1, r4] - cmp r0, r9 - bne _0804A890 -_0804A8AC: - cmp r2, 0x6 - bne _0804A8D8 - ldr r0, _0804A8C0 - ldr r0, [r0] - ldrb r0, [r0, 0x3] - cmp r0, 0 - beq _0804A8C8 - ldr r1, _0804A8C4 - adds r0, r3, r1 - b _0804A8DC - .align 2, 0 -_0804A8C0: .4byte gUnknown_203B46C -_0804A8C4: .4byte 0x00012b80 -_0804A8C8: - ldr r4, _0804A8D4 - adds r0, r3, r4 - mov r1, r8 - adds r2, r1, r0 - b _0804A8FC - .align 2, 0 -_0804A8D4: .4byte 0x00013554 -_0804A8D8: - ldr r2, _0804A8E4 - adds r0, r3, r2 -_0804A8DC: - mov r3, r8 - adds r2, r3, r0 - b _0804A8FC - .align 2, 0 -_0804A8E4: .4byte 0x00012b92 -_0804A8E8: - lsls r0, r5, 1 - ldr r4, _0804A968 - adds r0, r4 - mov r1, r8 - adds r2, r1, r0 - ldr r3, [sp, 0x28] - adds r3, 0x1 - str r3, [sp, 0x3C] - adds r4, r7, 0x1 - str r4, [sp, 0x38] -_0804A8FC: - movs r6, 0 -_0804A8FE: - movs r0, 0x1F - ldr r1, [sp, 0x30] - ands r1, r0 - str r1, [sp, 0x30] - ldr r3, [sp, 0x34] - ands r3, r0 - lsls r0, r1, 1 - lsls r1, r3, 6 - adds r0, r1 - ldr r4, _0804A96C - adds r0, r4 - ldrh r1, [r2] - strh r1, [r0] - adds r2, 0x6 - adds r3, 0x1 - str r3, [sp, 0x34] - ldr r0, [sp, 0x2C] - adds r0, 0x1 - str r0, [sp, 0x2C] - adds r7, r6, 0x1 - cmp r0, 0x3 - beq _0804A92C - b _0804AA20 -_0804A92C: - movs r1, 0 - str r1, [sp, 0x2C] - movs r2, 0x1 - add r9, r2 - ldr r5, [sp, 0x28] - add r4, sp, 0x18 - mov r3, r10 - strh r3, [r4] - adds r0, r4, 0 - mov r1, r9 - strh r1, [r0, 0x2] - ldr r2, [sp, 0x20] - cmp r2, 0 - beq _0804A984 - ldr r3, [sp, 0x1C] - movs r4, 0 - ldrsh r0, [r3, r4] - cmp r10, r0 - bne _0804A974 - movs r1, 0x2 - ldrsh r0, [r3, r1] - cmp r9, r0 - bne _0804A974 - ldr r2, [sp, 0x28] - lsls r0, r2, 1 - ldr r3, _0804A970 - adds r0, r3 - mov r4, r8 - adds r2, r4, r0 - b _0804AA20 - .align 2, 0 -_0804A968: .4byte 0x00013554 -_0804A96C: .4byte gUnknown_202C038 -_0804A970: .4byte 0x00012b92 -_0804A974: - lsls r0, r5, 1 - ldr r1, _0804A980 - adds r0, r1 - mov r3, r8 - adds r2, r3, r0 - b _0804AA1E - .align 2, 0 -_0804A980: .4byte 0x00013554 -_0804A984: - ldr r0, [sp, 0x24] - adds r1, r4, 0 - bl sub_807049C - lsls r0, 24 - cmp r0, 0 - bne _0804AA14 - ldr r0, [sp, 0x24] - adds r1, r4, 0 - bl sub_8045AAC - lsls r0, 24 - cmp r0, 0 - beq _0804AA14 - movs r2, 0 - mov r0, sp - movs r4, 0 - ldrsh r0, [r0, r4] - ldr r1, [sp, 0x28] - lsls r3, r1, 1 - cmp r0, r10 - bne _0804A9BA - mov r0, sp - movs r4, 0x2 - ldrsh r0, [r0, r4] - cmp r0, r9 - beq _0804A9D6 -_0804A9BA: - adds r2, 0x1 - cmp r2, 0x5 - bgt _0804A9D6 - lsls r0, r2, 2 - mov r4, sp - adds r1, r4, r0 - movs r4, 0 - ldrsh r0, [r1, r4] - cmp r0, r10 - bne _0804A9BA - movs r4, 0x2 - ldrsh r0, [r1, r4] - cmp r0, r9 - bne _0804A9BA -_0804A9D6: - cmp r2, 0x6 - bne _0804AA04 - ldr r0, _0804A9EC - ldr r0, [r0] - ldrb r0, [r0, 0x3] - cmp r0, 0 - beq _0804A9F4 - ldr r1, _0804A9F0 - adds r0, r3, r1 - b _0804AA08 - .align 2, 0 -_0804A9EC: .4byte gUnknown_203B46C -_0804A9F0: .4byte 0x00012b80 -_0804A9F4: - ldr r4, _0804AA00 - adds r0, r3, r4 - mov r1, r8 - adds r2, r1, r0 - b _0804AA20 - .align 2, 0 -_0804AA00: .4byte 0x00013554 -_0804AA04: - ldr r2, _0804AA10 - adds r0, r3, r2 -_0804AA08: - mov r3, r8 - adds r2, r3, r0 - b _0804AA20 - .align 2, 0 -_0804AA10: .4byte 0x00012b92 -_0804AA14: - lsls r0, r5, 1 - ldr r4, _0804AA5C - adds r0, r4 - mov r1, r8 - adds r2, r1, r0 -_0804AA1E: - adds r7, r6, 0x1 -_0804AA20: - adds r6, r7, 0 - cmp r6, 0x14 - bgt _0804AA28 - b _0804A8FE -_0804AA28: - ldr r2, [sp, 0x30] - adds r2, 0x1 - str r2, [sp, 0x30] - ldr r3, [sp, 0x3C] - str r3, [sp, 0x28] - cmp r3, 0x3 - bne _0804AA3E - movs r4, 0 - str r4, [sp, 0x28] - movs r0, 0x1 - add r10, r0 -_0804AA3E: - ldr r7, [sp, 0x38] - cmp r7, 0x1E - bgt _0804AA46 - b _0804A7AC -_0804AA46: - movs r0, 0x2 - bl sub_80098F8 - add sp, 0x40 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804AA5C: .4byte 0x00013554 - thumb_func_end sub_804A728 - - thumb_func_start sub_804AA60 -sub_804AA60: - push {r4,lr} - movs r1, 0 - ldr r0, _0804AAA0 - movs r3, 0 - movs r2, 0x80 - lsls r2, 5 - adds r4, r0, r2 -_0804AA6E: - lsls r0, r1, 6 - adds r2, r1, 0x1 - movs r1, 0x1F - adds r0, r4 - adds r0, 0x3E -_0804AA78: - strh r3, [r0] - subs r0, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _0804AA78 - adds r1, r2, 0 - cmp r1, 0x1F - ble _0804AA6E - movs r4, 0 - movs r0, 0x2 - bl sub_80098F8 - ldr r0, _0804AAA4 - ldr r0, [r0] - ldr r1, _0804AAA8 - adds r0, r1 - strb r4, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804AAA0: .4byte gUnknown_202B038 -_0804AAA4: .4byte gUnknown_203B418 -_0804AAA8: .4byte 0x0001821a - thumb_func_end sub_804AA60 - - thumb_func_start sub_804AAAC -sub_804AAAC: - push {r4-r7,lr} - movs r5, 0 - movs r7, 0 -_0804AAB2: - movs r4, 0 - adds r6, r5, 0x1 -_0804AAB6: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - strh r7, [r0, 0x4] - adds r4, 0x1 - cmp r4, 0x37 - ble _0804AAB6 - adds r5, r6, 0 - cmp r5, 0x1F - ble _0804AAB2 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804AAAC - - thumb_func_start sub_804AAD4 -sub_804AAD4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r4, _0804AC04 - movs r0, 0 - mov r8, r0 - ldr r6, _0804AC08 - ldr r5, _0804AC0C - movs r2, 0 - movs r3, 0x1F -_0804AAEA: - ldr r0, [r4] - adds r0, r2 - ldr r1, _0804AC10 - adds r0, r1 - mov r7, r8 - strb r7, [r0] - ldr r0, [r4] - adds r0, r2 - adds r1, 0x1 - adds r0, r1 - strb r7, [r0] - ldr r0, [r4] - adds r0, r2 - ldr r7, _0804AC14 - adds r1, r0, r7 - strh r6, [r1] - adds r7, 0x2 - adds r1, r0, r7 - strh r6, [r1] - adds r7, 0x2 - adds r1, r0, r7 - strh r5, [r1] - ldr r1, _0804AC18 - adds r0, r1 - strh r5, [r0] - adds r2, 0x1C - subs r3, 0x1 - cmp r3, 0 - bge _0804AAEA - movs r4, 0 - mov r9, r4 - movs r6, 0 - ldr r7, _0804AC04 - mov r8, r7 -_0804AB2E: - movs r4, 0 - adds r5, r6, 0x1 -_0804AB32: - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_804954C - ldrb r2, [r0, 0x9] - adds r3, r4, 0x1 - cmp r2, 0xFF - beq _0804AB84 - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - ldr r1, _0804AC10 - adds r0, r1 - mov r7, r8 - ldr r1, [r7] - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] - movs r7, 0x2 - ldrsh r0, [r1, r7] - cmp r0, r4 - ble _0804AB60 - strh r4, [r1, 0x2] -_0804AB60: - movs r4, 0x4 - ldrsh r0, [r1, r4] - cmp r0, r6 - ble _0804AB6A - strh r6, [r1, 0x4] -_0804AB6A: - movs r7, 0x6 - ldrsh r0, [r1, r7] - cmp r0, r3 - bge _0804AB74 - strh r3, [r1, 0x6] -_0804AB74: - movs r4, 0x8 - ldrsh r0, [r1, r4] - cmp r0, r5 - bge _0804AB7E - strh r5, [r1, 0x8] -_0804AB7E: - cmp r9, r2 - bge _0804AB84 - mov r9, r2 -_0804AB84: - adds r4, r3, 0 - cmp r4, 0x37 - ble _0804AB32 - adds r6, r5, 0 - cmp r6, 0x1F - ble _0804AB2E - ldr r7, _0804AC04 - mov r8, r7 - mov r5, r9 - adds r5, 0x1 - mov r6, r8 - movs r4, 0 - movs r3, 0x1F -_0804AB9E: - ldr r1, _0804AC10 - adds r0, r4, r1 - ldr r1, [r6] - adds r2, r1, r0 - ldrb r0, [r2] - cmp r0, 0 - beq _0804ABE4 - movs r7, 0x2 - ldrsh r1, [r2, r7] - subs r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - str r0, [r2, 0xC] - movs r0, 0x4 - ldrsh r1, [r2, r0] - subs r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - str r0, [r2, 0x10] - movs r7, 0x6 - ldrsh r1, [r2, r7] - adds r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - str r0, [r2, 0x14] - movs r0, 0x8 - ldrsh r1, [r2, r0] - adds r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - str r0, [r2, 0x18] -_0804ABE4: - adds r4, 0x1C - subs r3, 0x1 - cmp r3, 0 - bge _0804AB9E - mov r1, r8 - ldr r0, [r1] - ldr r4, _0804AC1C - adds r0, r4 - strb r5, [r0] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804AC04: .4byte gUnknown_203B418 -_0804AC08: .4byte 0x0000270f -_0804AC0C: .4byte 0x0000d8f1 -_0804AC10: .4byte 0x000104c4 -_0804AC14: .4byte 0x000104c6 -_0804AC18: .4byte 0x000104cc -_0804AC1C: .4byte 0x000104c0 - thumb_func_end sub_804AAD4 - - thumb_func_start sub_804AC20 -sub_804AC20: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r4, r0, 0 - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - ldrb r1, [r0, 0x9] - ldr r0, _0804AC6C - ldr r3, [r0] - ldr r5, _0804AC70 - adds r0, r3, r5 - ldrb r2, [r0] - adds r5, 0x1 - adds r0, r3, r5 - ldrb r0, [r0] - cmp r0, 0 - bne _0804ACD4 - cmp r2, 0 - bne _0804AC52 - movs r2, 0x2 -_0804AC52: - cmp r1, 0xFF - bne _0804AC74 - movs r0, 0 - ldrsh r1, [r4, r0] - subs r3, r1, r2 - mov r9, r3 - movs r5, 0x2 - ldrsh r0, [r4, r5] - subs r3, r0, r2 - adds r6, r1, r2 - adds r0, r2 - mov r8, r0 - b _0804ACA2 - .align 2, 0 -_0804AC6C: .4byte gUnknown_203B418 -_0804AC70: .4byte 0x00018209 -_0804AC74: - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r1, _0804ACE0 - adds r0, r1 - adds r2, r3, r0 - ldrb r0, [r2, 0x1] - cmp r0, 0 - bne _0804ACD4 - movs r0, 0x1 - strb r0, [r2, 0x1] - movs r3, 0x2 - ldrsh r0, [r2, r3] - subs r0, 0x1 - mov r9, r0 - movs r5, 0x4 - ldrsh r0, [r2, r5] - subs r3, r0, 0x1 - movs r0, 0x6 - ldrsh r6, [r2, r0] - movs r5, 0x8 - ldrsh r1, [r2, r5] - mov r8, r1 -_0804ACA2: - adds r5, r3, 0 - cmp r5, r8 - bgt _0804ACD4 -_0804ACA8: - mov r4, r9 - adds r7, r5, 0x1 - cmp r4, r6 - bgt _0804ACCE -_0804ACB0: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - ldrh r2, [r0, 0x4] - movs r1, 0x3 - orrs r1, r2 - strh r1, [r0, 0x4] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80402AC - adds r4, 0x1 - cmp r4, r6 - ble _0804ACB0 -_0804ACCE: - adds r5, r7, 0 - cmp r5, r8 - ble _0804ACA8 -_0804ACD4: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804ACE0: .4byte 0x000104c4 - thumb_func_end sub_804AC20 - - thumb_func_start sub_804ACE4 -sub_804ACE4: - push {lr} - movs r1, 0 - ldrsh r2, [r0, r1] - movs r3, 0x2 - ldrsh r1, [r0, r3] - adds r0, r2, 0 - bl sub_804954C - ldr r0, [r0, 0x14] - cmp r0, 0 - beq _0804AD06 - bl sub_80450F8 - cmp r0, 0x3 - bne _0804AD06 - movs r0, 0x1 - b _0804AD08 -_0804AD06: - movs r0, 0 -_0804AD08: - pop {r1} - bx r1 - thumb_func_end sub_804ACE4 - - thumb_func_start sub_804AD0C -sub_804AD0C: - push {lr} - movs r1, 0 - ldrsh r2, [r0, r1] - movs r3, 0x2 - ldrsh r1, [r0, r3] - adds r0, r2, 0 - bl sub_804954C - ldr r1, [r0, 0x10] - cmp r1, 0 - beq _0804AD2C - ldr r0, [r1] - cmp r0, 0x1 - bne _0804AD2C - adds r0, r1, 0 - b _0804AD2E -_0804AD2C: - movs r0, 0 -_0804AD2E: - pop {r1} - bx r1 - thumb_func_end sub_804AD0C - - thumb_func_start sub_804AD34 -sub_804AD34: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - movs r0, 0 - mov r8, r0 - movs r1, 0 - ldrsh r0, [r6, r1] - movs r2, 0x2 - ldrsh r1, [r6, r2] - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _0804ADB6 - movs r0, 0x88 - lsls r0, 1 - ands r0, r1 - cmp r0, 0 - bne _0804ADB6 - movs r0, 0x1 - mov r8, r0 - ldr r0, _0804ADFC - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strh r0, [r2] - movs r5, 0x1 - negs r5, r5 -_0804AD74: - movs r4, 0x1 - negs r4, r4 - adds r7, r5, 0x1 -_0804AD7A: - movs r1, 0 - ldrsh r0, [r6, r1] - adds r0, r4, r0 - movs r2, 0x2 - ldrsh r1, [r6, r2] - adds r1, r5, r1 - bl sub_80498A8 - movs r1, 0 - ldrsh r0, [r6, r1] - adds r0, r4, r0 - movs r2, 0x2 - ldrsh r1, [r6, r2] - adds r1, r5, r1 - bl sub_8049BB0 - movs r1, 0 - ldrsh r0, [r6, r1] - adds r0, r4, r0 - movs r2, 0x2 - ldrsh r1, [r6, r2] - adds r1, r5, r1 - bl sub_80402AC - adds r4, 0x1 - cmp r4, 0x1 - ble _0804AD7A - adds r5, r7, 0 - cmp r5, 0x1 - ble _0804AD74 -_0804ADB6: - mov r0, r8 - cmp r0, 0 - beq _0804ADEE - movs r5, 0 -_0804ADBE: - ldr r0, _0804AE00 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0804AE04 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0804ADDE - adds r0, r4, 0 - bl sub_806CF98 -_0804ADDE: - adds r5, 0x1 - cmp r5, 0x13 - ble _0804ADBE - bl sub_8049ED4 - adds r0, r6, 0 - bl sub_8042A14 -_0804ADEE: - mov r0, r8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0804ADFC: .4byte 0x0000fffc -_0804AE00: .4byte gUnknown_203B418 -_0804AE04: .4byte 0x000135cc - thumb_func_end sub_804AD34 - - thumb_func_start sub_804AE08 -sub_804AE08: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - movs r0, 0 - mov r8, r0 - movs r1, 0 - ldrsh r0, [r7, r1] - movs r2, 0x2 - ldrsh r1, [r7, r2] - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _0804AE72 - movs r0, 0x88 - lsls r0, 1 - ands r0, r1 - cmp r0, 0 - bne _0804AE72 - movs r0, 0x1 - mov r8, r0 - ldr r0, _0804AE80 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strh r0, [r2] - ldrh r1, [r2, 0x4] - movs r0, 0x10 - orrs r0, r1 - strh r0, [r2, 0x4] - movs r5, 0x1 - negs r5, r5 -_0804AE50: - movs r4, 0x1 - negs r4, r4 - adds r6, r5, 0x1 -_0804AE56: - movs r1, 0 - ldrsh r0, [r7, r1] - adds r0, r4, r0 - movs r2, 0x2 - ldrsh r1, [r7, r2] - adds r1, r5, r1 - bl sub_8049BB0 - adds r4, 0x1 - cmp r4, 0x1 - ble _0804AE56 - adds r5, r6, 0 - cmp r5, 0x1 - ble _0804AE50 -_0804AE72: - mov r0, r8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0804AE80: .4byte 0x0000fffc - thumb_func_end sub_804AE08 - - thumb_func_start sub_804AE84 -sub_804AE84: - push {r4-r7,lr} - adds r5, r0, 0 - movs r1, 0 - ldrsh r0, [r5, r1] - movs r2, 0x2 - ldrsh r1, [r5, r2] - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2, 0x4] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0804AF0E - ldr r0, _0804AF14 - ands r0, r1 - strh r0, [r2, 0x4] - movs r6, 0x1 - negs r6, r6 -_0804AEAA: - movs r4, 0x1 - negs r4, r4 - adds r7, r6, 0x1 -_0804AEB0: - movs r1, 0 - ldrsh r0, [r5, r1] - adds r0, r4, r0 - movs r2, 0x2 - ldrsh r1, [r5, r2] - adds r1, r6, r1 - bl sub_80498A8 - movs r1, 0 - ldrsh r0, [r5, r1] - adds r0, r4, r0 - movs r2, 0x2 - ldrsh r1, [r5, r2] - adds r1, r6, r1 - bl sub_80402AC - adds r4, 0x1 - cmp r4, 0x1 - ble _0804AEB0 - adds r6, r7, 0 - cmp r6, 0x1 - ble _0804AEAA - movs r6, 0 -_0804AEDE: - ldr r0, _0804AF18 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0804AF1C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0804AEFE - adds r0, r4, 0 - bl sub_806CF98 -_0804AEFE: - adds r6, 0x1 - cmp r6, 0x13 - ble _0804AEDE - bl sub_8049ED4 - adds r0, r5, 0 - bl sub_8042A14 -_0804AF0E: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804AF14: .4byte 0x0000ffef -_0804AF18: .4byte gUnknown_203B418 -_0804AF1C: .4byte 0x000135cc - thumb_func_end sub_804AE84 - - thumb_func_start sub_804AF20 -sub_804AF20: - push {r4,r5,lr} - adds r4, r0, 0 - movs r5, 0 - bl sub_804AF74 - lsls r0, 24 - cmp r0, 0 - beq _0804AF3C - ldrh r1, [r4] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _0804AF5E - b _0804AF5C -_0804AF3C: - ldrh r1, [r4] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x2 - bne _0804AF5C - ldr r1, _0804AF68 - ldr r0, _0804AF6C - ldr r0, [r0] - ldr r2, _0804AF70 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0804AF5E -_0804AF5C: - movs r5, 0x1 -_0804AF5E: - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0804AF68: .4byte gUnknown_810ACC0 -_0804AF6C: .4byte gUnknown_203B418 -_0804AF70: .4byte 0x00003a0e - thumb_func_end sub_804AF20 - - thumb_func_start sub_804AF74 -sub_804AF74: - push {lr} - ldr r0, _0804AF9C - ldr r0, [r0] - ldr r1, _0804AFA0 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _0804AF96 - cmp r0, 0x31 - beq _0804AF96 - cmp r0, 0x20 - beq _0804AF96 - cmp r0, 0x21 - beq _0804AF96 - cmp r0, 0x36 - bne _0804AFA4 -_0804AF96: - movs r0, 0x1 - b _0804AFA6 - .align 2, 0 -_0804AF9C: .4byte gUnknown_203B418 -_0804AFA0: .4byte 0x00003a0e -_0804AFA4: - movs r0, 0 -_0804AFA6: - pop {r1} - bx r1 - thumb_func_end sub_804AF74 - - thumb_func_start sub_804AFAC -sub_804AFAC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x44 - movs r0, 0 - mov r10, r0 - ldr r4, _0804B0E8 - ldr r0, [r4] - ldr r1, _0804B0EC - adds r1, r0 - mov r8, r1 - ldr r0, _0804B0F0 - ldr r1, _0804B0F4 - bl OpenFileAndGetFileDataPtr - ldr r2, [r4] - ldr r3, _0804B0F8 - adds r1, r2, r3 - str r0, [r1] - ldr r0, _0804B0FC - mov r6, r10 - strb r6, [r0] - ldr r0, _0804B100 - strb r6, [r0] - ldr r0, _0804B104 - strb r6, [r0] - ldr r5, _0804B108 - movs r3, 0 - ldr r1, _0804B10C - ldr r0, _0804B110 - adds r2, r0 - movs r6, 0 - ldrsh r0, [r2, r6] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x2 - bne _0804AFFC - movs r3, 0x1 -_0804AFFC: - strb r3, [r5] - ldr r1, _0804B114 - movs r0, 0xFF - strb r0, [r1] - ldr r0, _0804B118 - mov r1, r10 - strb r1, [r0] - ldr r1, _0804B11C - mov r2, r8 - ldrb r0, [r2, 0x7] - strh r0, [r1] - ldr r1, _0804B120 - ldrb r0, [r2, 0x8] - strh r0, [r1] - ldr r1, _0804B124 - movs r0, 0x1 - strb r0, [r1] - ldr r1, _0804B128 - movs r0, 0x1 - negs r0, r0 - str r0, [r1] - str r0, [r1, 0x8] - str r0, [r1, 0x4] - str r0, [r1, 0xC] - bl sub_804FD30 - ldr r3, [r4] - mov r6, r8 - ldrb r2, [r6, 0x6] - ldr r1, _0804B12C - adds r0, r3, r1 - movs r1, 0 - strh r2, [r0] - ldr r2, _0804B130 - adds r0, r3, r2 - strb r1, [r0] - ldr r0, [r4] - ldr r3, _0804B134 - adds r0, r3 - strb r1, [r0] - ldr r1, _0804B138 - mov r6, r8 - ldrb r0, [r6, 0xC] - str r0, [r1] - movs r0, 0 - str r0, [sp, 0x40] -_0804B058: - ldr r0, _0804B0E8 - ldr r2, [r0] - ldr r3, _0804B13C - adds r1, r2, r3 - ldr r0, _0804B140 - strh r0, [r1] - ldr r6, _0804B144 - adds r1, r2, r6 - movs r0, 0x1 - negs r0, r0 - strh r0, [r1] - ldr r0, _0804B148 - adds r1, r2, r0 - movs r0, 0x1 - negs r0, r0 - strh r0, [r1] - ldr r1, _0804B14C - adds r2, r1 - strh r0, [r2] - movs r2, 0 - mov r9, r2 -_0804B082: - ldr r4, _0804B0E8 - ldr r0, [r4] - ldr r3, _0804B150 - adds r0, r3 - movs r5, 0 - movs r1, 0 - mov r6, r9 - strh r6, [r0] - mov r0, r9 - cmp r0, 0 - ble _0804B09C - ldr r0, _0804B138 - str r1, [r0] -_0804B09C: - ldr r0, _0804B154 - strb r5, [r0] - ldr r1, _0804B158 - ldr r0, _0804B140 - strh r0, [r1] - movs r0, 0x1 - negs r0, r0 - strh r0, [r1, 0x2] - bl sub_804FD30 - ldr r1, [r4] - ldr r3, _0804B13C - adds r2, r1, r3 - movs r0, 0x1 - negs r0, r0 - strh r0, [r2] - ldr r6, _0804B144 - adds r2, r1, r6 - strh r0, [r2] - ldr r0, _0804B15C - adds r1, r0 - strb r5, [r1] - ldr r0, [r4] - ldr r2, _0804B160 - adds r1, r0, r2 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - beq _0804B164 - mov r1, r8 - bl sub_804C70C - lsls r0, 24 - cmp r0, 0 - beq _0804B0E4 - b _0804B376 -_0804B0E4: - b _0804B2F6 - .align 2, 0 -_0804B0E8: .4byte gUnknown_203B418 -_0804B0EC: .4byte 0x0001c574 -_0804B0F0: .4byte gUnknown_80F6DCC -_0804B0F4: .4byte gUnknown_83B0000 -_0804B0F8: .4byte 0x00013568 -_0804B0FC: .4byte gUnknown_202F1AA -_0804B100: .4byte gUnknown_202F1AB -_0804B104: .4byte gUnknown_202F1AC -_0804B108: .4byte gUnknown_202F1A8 -_0804B10C: .4byte gUnknown_810ACC0 -_0804B110: .4byte 0x00003a0e -_0804B114: .4byte gUnknown_202F1B4 -_0804B118: .4byte gUnknown_202F1AE -_0804B11C: .4byte gUnknown_202F1B0 -_0804B120: .4byte gUnknown_202F1B2 -_0804B124: .4byte gUnknown_202F1AD -_0804B128: .4byte gUnknown_202F1B8 -_0804B12C: .4byte 0x00000664 -_0804B130: .4byte 0x00003a09 -_0804B134: .4byte 0x00003a0a -_0804B138: .4byte gUnknown_202F1C8 -_0804B13C: .4byte 0x0000e218 -_0804B140: .4byte 0x0000ffff -_0804B144: .4byte 0x0000e21a -_0804B148: .4byte 0x0000e21c -_0804B14C: .4byte 0x0000e21e -_0804B150: .4byte 0x00003a16 -_0804B154: .4byte gUnknown_202F1A9 -_0804B158: .4byte gUnknown_202F1D8 -_0804B15C: .4byte 0x00003a08 -_0804B160: .4byte 0x00003a14 -_0804B164: - mov r0, r8 - ldrb r7, [r0] - movs r6, 0x20 -_0804B16A: - cmp r7, 0x8 - beq _0804B17E - movs r0, 0x2 - movs r1, 0x9 - bl sub_808411C - adds r5, r0, 0 - movs r0, 0x2 - movs r1, 0x8 - b _0804B18C -_0804B17E: - movs r0, 0x2 - movs r1, 0x5 - bl sub_808411C - adds r5, r0, 0 - movs r0, 0x2 - movs r1, 0x4 -_0804B18C: - bl sub_808411C - adds r4, r0, 0 - cmp r5, 0x6 - bgt _0804B19A - cmp r4, 0x4 - ble _0804B1A4 -_0804B19A: - subs r6, 0x1 - cmp r6, 0 - bne _0804B16A - movs r5, 0x4 - movs r4, 0x4 -_0804B1A4: - movs r0, 0x38 - adds r1, r5, 0 - bl __divsi3 - cmp r0, 0x7 - bgt _0804B1B2 - movs r5, 0x1 -_0804B1B2: - movs r0, 0x20 - adds r1, r4, 0 - bl __divsi3 - cmp r0, 0x7 - bgt _0804B1C0 - movs r4, 0x1 -_0804B1C0: - ldr r2, _0804B1EC - ldr r0, [r2] - ldr r1, _0804B1F0 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - ldr r2, _0804B1F4 - adds r0, r2 - movs r1, 0xFF - strb r1, [r0] - ldr r0, _0804B1F8 - str r7, [r0] - movs r0, 0xF - ands r0, r7 - cmp r0, 0xB - bhi _0804B274 - lsls r0, 2 - ldr r1, _0804B1FC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0804B1EC: .4byte gUnknown_203B418 -_0804B1F0: .4byte 0x00003a08 -_0804B1F4: .4byte 0x00003a0c -_0804B1F8: .4byte gUnknown_202F1D0 -_0804B1FC: .4byte _0804B200 - .align 2, 0 -_0804B200: - .4byte _0804B274 - .4byte _0804B230 - .4byte _0804B280 - .4byte _0804B298 - .4byte _0804B2A4 - .4byte _0804B2B0 - .4byte _0804B2CC - .4byte _0804B2D8 - .4byte _0804B274 - .4byte _0804B2E0 - .4byte _0804B2E8 - .4byte _0804B250 -_0804B230: - movs r0, 0x2 - bl sub_8084100 - adds r4, r0, 0x2 - ldr r1, _0804B24C - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x4 - adds r1, r4, 0 - mov r2, r8 - bl sub_804B634 - b _0804B2AA - .align 2, 0 -_0804B24C: .4byte gUnknown_202F1AE -_0804B250: - movs r0, 0x2 - bl sub_8084100 - adds r4, r0, 0x2 - ldr r1, _0804B270 - movs r0, 0x2 - strb r0, [r1] - movs r0, 0x4 - adds r1, r4, 0 - mov r2, r8 - bl sub_804B634 - movs r6, 0x1 - mov r10, r6 - b _0804B2F6 - .align 2, 0 -_0804B270: .4byte gUnknown_202F1AE -_0804B274: - adds r0, r5, 0 - adds r1, r4, 0 - mov r2, r8 - bl sub_804B634 - b _0804B2D2 -_0804B280: - bl sub_804C918 - ldr r0, _0804B290 - ldr r0, [r0] - ldr r1, _0804B294 - adds r0, r1 - b _0804B2BC - .align 2, 0 -_0804B290: .4byte gUnknown_203B418 -_0804B294: .4byte 0x00003a08 -_0804B298: - mov r0, r8 - bl sub_804B72C - movs r2, 0x1 - mov r10, r2 - b _0804B2F6 -_0804B2A4: - mov r0, r8 - bl sub_804BC80 -_0804B2AA: - movs r3, 0x1 - mov r10, r3 - b _0804B2F6 -_0804B2B0: - bl sub_804C9D0 - ldr r0, _0804B2C4 - ldr r0, [r0] - ldr r6, _0804B2C8 - adds r0, r6 -_0804B2BC: - movs r1, 0x1 - strb r1, [r0] - b _0804B2F6 - .align 2, 0 -_0804B2C4: .4byte gUnknown_203B418 -_0804B2C8: .4byte 0x00003a08 -_0804B2CC: - mov r0, r8 - bl sub_804C0A8 -_0804B2D2: - movs r0, 0x1 - mov r10, r0 - b _0804B2F6 -_0804B2D8: - mov r0, r8 - bl sub_804C190 - b _0804B2F6 -_0804B2E0: - mov r0, r8 - bl sub_804C2F4 - b _0804B2F6 -_0804B2E8: - adds r0, r5, 0 - adds r1, r4, 0 - mov r2, r8 - bl sub_804C53C - movs r1, 0x1 - mov r10, r1 -_0804B2F6: - bl sub_80518F0 - bl sub_804FCCC - ldr r0, _0804B4B4 - ldrb r0, [r0] - cmp r0, 0 - bne _0804B36A - movs r7, 0 - movs r1, 0 - mov r0, sp - adds r0, 0x3F -_0804B30E: - strb r1, [r0] - subs r0, 0x1 - cmp r0, sp - bge _0804B30E - movs r5, 0 -_0804B318: - movs r4, 0 - adds r6, r5, 0x1 -_0804B31C: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - adds r1, r0, 0 - ldrh r0, [r1] - movs r2, 0x3 - ands r2, r0 - cmp r2, 0x1 - bne _0804B340 - ldrb r0, [r1, 0x9] - cmp r0, 0xF0 - bhi _0804B340 - adds r7, 0x1 - cmp r0, 0x3F - bhi _0804B340 - add r0, sp - strb r2, [r0] -_0804B340: - adds r4, 0x1 - cmp r4, 0x1F - ble _0804B31C - adds r5, r6, 0 - cmp r5, 0x37 - ble _0804B318 - movs r1, 0 - movs r4, 0 -_0804B350: - mov r2, sp - adds r0, r2, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _0804B35C - adds r1, 0x1 -_0804B35C: - adds r4, 0x1 - cmp r4, 0x3F - ble _0804B350 - cmp r7, 0x1D - ble _0804B36A - cmp r1, 0x1 - bgt _0804B376 -_0804B36A: - movs r3, 0x1 - add r9, r3 - mov r6, r9 - cmp r6, 0x9 - bgt _0804B376 - b _0804B082 -_0804B376: - mov r0, r9 - cmp r0, 0xA - bne _0804B398 - ldr r1, _0804B4B8 - ldr r0, _0804B4BC - strh r0, [r1] - movs r0, 0x1 - negs r0, r0 - strh r0, [r1, 0x2] - bl sub_804C918 - ldr r0, _0804B4C0 - ldr r0, [r0] - ldr r1, _0804B4C4 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] -_0804B398: - bl sub_804E9DC - mov r2, r10 - cmp r2, 0 - beq _0804B3AA - movs r0, 0x1 - mov r1, r8 - bl sub_80506F0 -_0804B3AA: - movs r0, 0x64 - bl sub_8084100 - movs r4, 0 - mov r3, r8 - ldrb r3, [r3, 0x19] - cmp r0, r3 - bge _0804B3BC - movs r4, 0x1 -_0804B3BC: - mov r0, r8 - adds r1, r4, 0 - bl sub_804FF08 - mov r0, r8 - adds r1, r4, 0 - bl sub_8050438 - bl sub_804FBE8 - ldr r5, _0804B4C0 - ldr r1, [r5] - ldr r6, _0804B4C8 - adds r0, r1, r6 - movs r2, 0 - ldrsh r0, [r0, r2] - movs r4, 0x1 - negs r4, r4 - cmp r0, r4 - beq _0804B42A - ldr r3, _0804B4CC - adds r0, r1, r3 - movs r6, 0 - ldrsh r0, [r0, r6] - cmp r0, r4 - beq _0804B42A - bl sub_8043D10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0804B436 - ldr r1, [r5] - ldr r0, _0804B4D0 - adds r2, r1, r0 - movs r3, 0 - ldrsh r0, [r2, r3] - cmp r0, r4 - beq _0804B42A - ldr r6, _0804B4D4 - adds r1, r6 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, r4 - beq _0804B42A - movs r6, 0 - ldrsh r0, [r2, r6] - movs r2, 0 - ldrsh r1, [r1, r2] - movs r2, 0 - bl sub_8050C30 - lsls r0, 24 - cmp r0, 0 - bne _0804B436 -_0804B42A: - ldr r3, [sp, 0x40] - adds r3, 0x1 - str r3, [sp, 0x40] - cmp r3, 0x9 - bgt _0804B436 - b _0804B058 -_0804B436: - ldr r6, [sp, 0x40] - cmp r6, 0xA - bne _0804B474 - ldr r1, _0804B4B8 - ldr r0, _0804B4BC - strh r0, [r1] - movs r0, 0x1 - negs r0, r0 - strh r0, [r1, 0x2] - bl sub_804FD30 - bl sub_804C918 - ldr r0, _0804B4C0 - ldr r0, [r0] - ldr r1, _0804B4C4 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - bl sub_804E9DC - mov r0, r8 - movs r1, 0 - bl sub_804FF08 - mov r0, r8 - movs r1, 0 - bl sub_8050438 - bl sub_804FBE8 -_0804B474: - ldr r1, _0804B4B8 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - blt _0804B498 - movs r3, 0x2 - ldrsh r0, [r1, r3] - cmp r0, 0 - blt _0804B498 - movs r6, 0 - ldrsh r0, [r1, r6] - movs r2, 0x2 - ldrsh r1, [r1, r2] - movs r2, 0xBE - lsls r2, 1 - movs r3, 0 - bl sub_806C330 -_0804B498: - ldr r0, _0804B4D8 - ldr r0, [r0] - cmp r0, 0 - blt _0804B4E0 - mov r0, r8 - bl sub_8051654 - ldr r0, _0804B4C0 - ldr r0, [r0] - ldr r3, _0804B4DC - adds r0, r3 - movs r1, 0x1 - b _0804B4EA - .align 2, 0 -_0804B4B4: .4byte gUnknown_202F1A9 -_0804B4B8: .4byte gUnknown_202F1D8 -_0804B4BC: .4byte 0x0000ffff -_0804B4C0: .4byte gUnknown_203B418 -_0804B4C4: .4byte 0x00003a08 -_0804B4C8: .4byte 0x0000e218 -_0804B4CC: .4byte 0x0000e21a -_0804B4D0: .4byte 0x0000e21c -_0804B4D4: .4byte 0x0000e21e -_0804B4D8: .4byte gUnknown_202F1B8 -_0804B4DC: .4byte 0x00003a0a -_0804B4E0: - ldr r0, _0804B524 - ldr r0, [r0] - ldr r6, _0804B528 - adds r0, r6 - movs r1, 0 -_0804B4EA: - strb r1, [r0] - movs r0, 0 - movs r1, 0 - movs r2, 0x38 - movs r3, 0x20 - bl sub_804B534 - ldr r0, _0804B52C - ldrb r0, [r0] - cmp r0, 0 - beq _0804B504 - bl sub_804FC74 -_0804B504: - ldr r0, _0804B524 - ldr r0, [r0] - ldr r1, _0804B530 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - add sp, 0x44 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804B524: .4byte gUnknown_203B418 -_0804B528: .4byte 0x00003a0a -_0804B52C: .4byte gUnknown_202F1A8 -_0804B530: .4byte 0x00013568 - thumb_func_end sub_804AFAC - - thumb_func_start sub_804B534 -sub_804B534: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - str r1, [sp] - str r2, [sp, 0x4] - mov r10, r3 - adds r5, r0, 0 - cmp r5, r2 - bge _0804B620 -_0804B54C: - ldr r4, [sp] - adds r0, r5, 0x1 - mov r9, r0 - cmp r4, r10 - bge _0804B618 - movs r6, 0x3 - mov r8, r6 -_0804B55A: - movs r3, 0 - adds r0, r5, 0 - adds r1, r4, 0 - str r3, [sp, 0xC] - bl sub_8049590 - adds r2, r0, 0 - ldrh r0, [r2] - ldr r6, _0804B630 - adds r1, r6, 0 - ands r1, r0 - strh r1, [r2] - ldrb r0, [r2, 0x9] - adds r6, r4, 0x1 - ldr r3, [sp, 0xC] - cmp r0, 0xFF - bne _0804B612 - movs r7, 0x3 - adds r0, r1, 0 - ands r0, r7 - cmp r0, 0x1 - bne _0804B612 - cmp r5, 0 - ble _0804B5A4 - subs r0, r5, 0x1 - adds r1, r4, 0 - str r2, [sp, 0x8] - bl sub_804954C - ldrh r1, [r0] - adds r0, r7, 0 - ands r0, r1 - ldr r2, [sp, 0x8] - ldr r3, [sp, 0xC] - cmp r0, 0x1 - bne _0804B5A4 - movs r3, 0x1 -_0804B5A4: - cmp r4, 0 - ble _0804B5C4 - subs r1, r4, 0x1 - adds r0, r5, 0 - str r2, [sp, 0x8] - str r3, [sp, 0xC] - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - ldr r2, [sp, 0x8] - ldr r3, [sp, 0xC] - cmp r0, 0x1 - bne _0804B5C4 - adds r3, 0x1 -_0804B5C4: - cmp r5, 0x35 - bgt _0804B5E4 - mov r0, r9 - adds r1, r4, 0 - str r2, [sp, 0x8] - str r3, [sp, 0xC] - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - ldr r2, [sp, 0x8] - ldr r3, [sp, 0xC] - cmp r0, 0x1 - bne _0804B5E4 - adds r3, 0x1 -_0804B5E4: - adds r6, r4, 0x1 - cmp r5, 0x1D - bgt _0804B606 - adds r0, r5, 0 - adds r1, r6, 0 - str r2, [sp, 0x8] - str r3, [sp, 0xC] - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - ldr r2, [sp, 0x8] - ldr r3, [sp, 0xC] - cmp r0, 0x1 - bne _0804B606 - adds r3, 0x1 -_0804B606: - cmp r3, 0x2 - ble _0804B612 - ldrh r1, [r2] - movs r0, 0x8 - orrs r0, r1 - strh r0, [r2] -_0804B612: - adds r4, r6, 0 - cmp r4, r10 - blt _0804B55A -_0804B618: - mov r5, r9 - ldr r0, [sp, 0x4] - cmp r5, r0 - blt _0804B54C -_0804B620: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804B630: .4byte 0x0000fffb - thumb_func_end sub_804B534 - - thumb_func_start sub_804B634 -sub_804B634: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - ldr r4, _0804B718 - add sp, r4 - adds r4, r0, 0 - adds r5, r1, 0 - mov r9, r2 - ldr r0, _0804B71C - add r0, sp - mov r8, r0 - ldr r6, _0804B720 - add r6, sp - adds r1, r6, 0 - adds r2, r4, 0 - adds r3, r5, 0 - bl sub_804D024 - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_804D084 - mov r1, r9 - movs r3, 0x1 - ldrsb r3, [r1, r3] - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_804D154 - str r6, [sp] - mov r1, r9 - ldrb r0, [r1, 0xD] - str r0, [sp, 0x4] - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - mov r3, r8 - bl sub_804D2D0 - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - mov r3, r9 - bl sub_804D5B0 - str r6, [sp] - movs r0, 0 - str r0, [sp, 0x4] - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - mov r3, r8 - bl sub_804D8C8 - str r6, [sp] - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - mov r3, r8 - bl sub_804E590 - mov r0, r9 - ldrb r3, [r0, 0x9] - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_804F0D0 - ldr r0, _0804B724 - movs r1, 0 - ldrsh r3, [r0, r1] - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_804EBC8 - ldr r0, _0804B728 - movs r1, 0 - ldrsh r3, [r0, r1] - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_804EEE4 - mov r0, r9 - ldrb r3, [r0, 0x13] - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_804CBEC - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_804E03C - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_804D534 - movs r3, 0xE5 - lsls r3, 5 - add sp, r3 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804B718: .4byte 0xffffe360 -_0804B71C: .4byte 0x00001c28 -_0804B720: .4byte 0x00001c64 -_0804B724: .4byte gUnknown_202F1B0 -_0804B728: .4byte gUnknown_202F1B2 - thumb_func_end sub_804B634 - - thumb_func_start sub_804B72C -sub_804B72C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _0804B9AC - add sp, r4 - movs r1, 0xE5 - lsls r1, 5 - add r1, sp - str r0, [r1] - movs r5, 0 - movs r6, 0x1 - ldr r1, _0804B9B0 - add r1, sp - str r5, [r1] - movs r0, 0x5 - str r0, [r1, 0x4] - movs r0, 0x1C - str r0, [r1, 0xC] - movs r0, 0x33 - str r0, [r1, 0x14] - movs r0, 0x38 - str r0, [r1, 0x18] - movs r2, 0x10 - str r2, [r1, 0x8] - movs r0, 0x27 - str r0, [r1, 0x10] - ldr r1, _0804B9B4 - add r1, sp - movs r0, 0x2 - str r0, [r1] - movs r0, 0x7 - str r0, [r1, 0x4] - str r2, [r1, 0x8] - movs r0, 0x19 - str r0, [r1, 0xC] - movs r0, 0x1E - str r0, [r1, 0x10] - add r0, sp, 0x8 - movs r1, 0x6 - movs r2, 0x4 - bl sub_804D084 - mov r2, sp - adds r2, 0x3B - ldr r3, _0804B9B8 - add r3, sp - str r2, [r3] - mov r4, sp - adds r4, 0x3C - ldr r0, _0804B9BC - add r0, sp - str r4, [r0] - mov r1, sp - adds r1, 0x5B - ldr r2, _0804B9C0 - add r2, sp - str r1, [r2] - mov r3, sp - adds r3, 0x5C - movs r4, 0xE6 - lsls r4, 5 - add r4, sp - str r3, [r4] - mov r0, sp - adds r0, 0x7B - ldr r1, _0804B9C4 - add r1, sp - str r0, [r1] - mov r2, sp - adds r2, 0x7E - ldr r3, _0804B9C8 - add r3, sp - str r2, [r3] - add r1, sp, 0x68 - add r0, sp, 0x8 - movs r2, 0xF0 - lsls r2, 1 - movs r4, 0x6 -_0804B7CC: - strb r5, [r0, 0xA] - strb r5, [r1, 0xA] - adds r1, r2 - adds r0, r2 - subs r4, 0x1 - cmp r4, 0 - bne _0804B7CC - movs r2, 0x6 - subs r2, 0x1 - movs r4, 0x4 - cmp r4, 0 - beq _0804B80C - lsls r0, r2, 4 - subs r0, r2 - lsls r0, 5 - add r0, sp - adds r0, 0x8 - add r1, sp, 0x8 - ldr r3, _0804B9CC - add r3, sp - str r4, [r3] -_0804B7F6: - strb r5, [r1, 0xA] - strb r5, [r0, 0xA] - adds r0, 0x20 - adds r1, 0x20 - ldr r3, _0804B9CC - add r3, sp - ldr r4, [r3] - subs r4, 0x1 - str r4, [r3] - cmp r4, 0 - bne _0804B7F6 -_0804B80C: - movs r4, 0x1 - cmp r4, r2 - bge _0804B848 - movs r1, 0x3 -_0804B814: - adds r5, r4, 0x1 - mov r8, r5 - cmp r1, 0x1 - ble _0804B842 - lsls r0, r4, 4 - subs r0, r4 - lsls r0, 5 - add r0, sp - adds r0, 0x8 - adds r0, 0x20 - subs r3, r1, 0x1 - ldr r4, _0804B9CC - add r4, sp - str r3, [r4] -_0804B830: - strb r6, [r0, 0xA] - adds r0, 0x20 - ldr r3, _0804B9CC - add r3, sp - ldr r5, [r3] - subs r5, 0x1 - str r5, [r3] - cmp r5, 0 - bne _0804B830 -_0804B842: - mov r4, r8 - cmp r4, r2 - blt _0804B814 -_0804B848: - movs r4, 0 - ldr r5, _0804B9D0 - add r5, sp - str r4, [r5] - ldr r0, _0804B9CC - add r0, sp - str r4, [r0] - cmp r4, 0x4 - blt _0804B85C - b _0804BA8C -_0804B85C: - movs r4, 0 - ldr r2, _0804B9CC - add r2, sp - ldr r1, [r2] - adds r1, 0x1 - ldr r2, _0804B9D4 - add r2, sp - str r1, [r2] - cmp r4, 0x6 - blt _0804B872 - b _0804BA7A -_0804B872: - ldr r3, _0804B9B0 - add r3, sp - ldr r5, _0804B9D8 - add r5, sp - str r3, [r5] - ldr r0, _0804B9B4 - add r0, sp - ldr r1, _0804B9DC - add r1, sp - str r0, [r1] - ldr r2, _0804B9CC - add r2, sp - ldr r2, [r2] - lsls r0, r2, 2 - ldr r3, [r1] - adds r0, r3, r0 - ldr r3, _0804B9E0 - add r3, sp - str r0, [r3] -_0804B898: - lsls r0, r4, 4 - subs r0, r4 - ldr r5, _0804B9CC - add r5, sp - ldr r5, [r5] - adds r0, r5 - lsls r0, 5 - mov r7, sp - adds r7, r0 - adds r7, 0x8 - ldrb r0, [r7, 0xA] - cmp r0, 0 - bne _0804B8B4 - b _0804B9F4 -_0804B8B4: - lsls r0, r4, 2 - ldr r1, _0804B9D8 - add r1, sp - ldr r1, [r1] - adds r0, r1, r0 - ldr r1, [r0] - adds r2, r1, 0x2 - mov r10, r2 - ldr r3, _0804B9E0 - add r3, sp - ldr r3, [r3] - ldr r2, [r3] - adds r5, r2, 0x2 - ldr r0, _0804B9E4 - add r0, sp - str r5, [r0] - adds r4, 0x1 - mov r9, r4 - lsls r0, r4, 2 - ldr r3, _0804B9D8 - add r3, sp - ldr r3, [r3] - adds r0, r3, r0 - ldr r4, [r0] - subs r4, r1 - subs r4, 0x3 - ldr r5, _0804B9D4 - add r5, sp - ldr r5, [r5] - lsls r0, r5, 2 - ldr r1, _0804B9DC - add r1, sp - ldr r1, [r1] - adds r0, r1, r0 - ldr r5, [r0] - subs r5, r2 - subs r5, 0x3 - movs r0, 0x5 - adds r1, r4, 0 - bl sub_808411C - mov r8, r0 - movs r0, 0x4 - adds r1, r5, 0 - bl sub_808411C - adds r6, r0, 0 - mov r2, r8 - subs r4, r2 - adds r0, r4, 0 - bl sub_8084100 - adds r4, r0, 0 - add r4, r10 - subs r5, r6 - adds r0, r5, 0 - bl sub_8084100 - ldr r5, _0804B9E4 - add r5, sp - ldr r3, [r5] - adds r3, r0 - mov r10, r3 - mov r0, r8 - adds r3, r4, r0 - add r6, r10 - strh r4, [r7] - strh r3, [r7, 0x4] - mov r1, r10 - strh r1, [r7, 0x2] - strh r6, [r7, 0x6] - mov r8, r9 - ldr r5, _0804B9D0 - add r5, sp - ldr r2, [r5] - adds r2, 0x1 - ldr r5, _0804B9E8 - add r5, sp - str r2, [r5] - cmp r4, r3 - bge _0804B99E -_0804B956: - mov r5, r10 - adds r7, r4, 0x1 - cmp r5, r6 - bge _0804B998 - ldr r0, _0804B9EC - mov r9, r0 -_0804B962: - adds r0, r4, 0 - adds r1, r5, 0 - ldr r2, _0804B9F0 - add r2, sp - str r3, [r2] - bl sub_8049590 - ldrh r1, [r0] - mov r2, r9 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - ldr r1, _0804B9D0 - add r1, sp - ldrb r1, [r1] - strb r1, [r0, 0x9] - adds r5, 0x1 - ldr r2, _0804B9F0 - add r2, sp - ldr r3, [r2] - cmp r5, r6 - blt _0804B962 -_0804B998: - adds r4, r7, 0 - cmp r4, r3 - blt _0804B956 -_0804B99E: - ldr r3, _0804B9E8 - add r3, sp - ldr r3, [r3] - ldr r4, _0804B9D0 - add r4, sp - str r3, [r4] - b _0804BA72 - .align 2, 0 -_0804B9AC: .4byte 0xffffe320 -_0804B9B0: .4byte 0x00001c28 -_0804B9B4: .4byte 0x00001c64 -_0804B9B8: .4byte 0x00001cd4 -_0804B9BC: .4byte 0x00001cd8 -_0804B9C0: .4byte 0x00001cbc -_0804B9C4: .4byte 0x00001cc4 -_0804B9C8: .4byte 0x00001cc8 -_0804B9CC: .4byte 0x00001ca4 -_0804B9D0: .4byte 0x00001ca8 -_0804B9D4: .4byte 0x00001ccc -_0804B9D8: .4byte 0x00001cac -_0804B9DC: .4byte 0x00001cb4 -_0804B9E0: .4byte 0x00001cb8 -_0804B9E4: .4byte 0x00001cb0 -_0804B9E8: .4byte 0x00001cd0 -_0804B9EC: .4byte 0x0000fffc -_0804B9F0: .4byte 0x00001cdc -_0804B9F4: - lsls r0, r4, 2 - ldr r5, _0804BBE8 - add r5, sp - ldr r5, [r5] - adds r0, r5, r0 - ldr r2, [r0] - adds r0, r2, 0x1 - ldr r1, _0804BBEC - add r1, sp - ldr r1, [r1] - ldr r3, [r1] - adds r6, r3, 0x1 - adds r4, 0x1 - mov r8, r4 - lsls r1, r4, 2 - adds r1, r5, r1 - ldr r1, [r1] - subs r1, r2 - subs r1, 0x3 - ldr r5, _0804BBF0 - add r5, sp - ldr r5, [r5] - lsls r2, r5, 2 - ldr r4, _0804BBF4 - add r4, sp - ldr r4, [r4] - adds r2, r4, r2 - ldr r4, [r2] - subs r4, r3 - subs r4, 0x3 - adds r1, r0, r1 - bl sub_808411C - adds r5, r0, 0 - adds r4, r6, r4 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_808411C - adds r4, r0, 0 - strh r5, [r7] - adds r0, r5, 0x1 - strh r0, [r7, 0x4] - strh r4, [r7, 0x2] - adds r0, r4, 0x1 - strh r0, [r7, 0x6] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r1, [r0] - ldr r3, _0804BBF8 - adds r2, r3, 0 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0xFF - strb r1, [r0, 0x9] -_0804BA72: - mov r4, r8 - cmp r4, 0x6 - bge _0804BA7A - b _0804B898 -_0804BA7A: - ldr r4, _0804BBF0 - add r4, sp - ldr r4, [r4] - ldr r5, _0804BBFC - add r5, sp - str r4, [r5] - cmp r4, 0x4 - bge _0804BA8C - b _0804B85C -_0804BA8C: - add r1, sp, 0x8 - movs r6, 0 - movs r0, 0x1 - strb r0, [r1, 0x16] - ldr r1, _0804BC00 - add r1, sp - strb r0, [r1] - movs r1, 0xFF - lsls r1, 1 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC04 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC08 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC0C - add r1, sp - strb r0, [r1] - ldr r1, _0804BC10 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC14 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC18 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC1C - add r1, sp - strb r0, [r1] - add r1, sp, 0x8 - strb r0, [r1, 0x14] - ldr r5, _0804BC20 - add r5, sp - ldr r5, [r5] - strb r0, [r5] - ldr r1, _0804BC24 - add r1, sp - ldr r1, [r1] - strb r0, [r1] - ldr r2, _0804BC28 - add r2, sp - ldr r2, [r2] - strb r0, [r2] - movs r3, 0xE6 - lsls r3, 5 - add r3, sp - ldr r3, [r3] - strb r0, [r3] - ldr r4, _0804BC2C - add r4, sp - ldr r4, [r4] - strb r0, [r4] - ldr r5, _0804BC30 - add r5, sp - ldr r5, [r5] - strb r0, [r5] - ldr r1, _0804BC34 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC38 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC3C - add r1, sp - strb r0, [r1] - ldr r1, _0804BC40 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC44 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC48 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC4C - add r1, sp - strb r0, [r1] - ldr r1, _0804BC50 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC54 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC58 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC5C - add r1, sp - strb r0, [r1] - ldr r1, _0804BC60 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC64 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC68 - add r1, sp - strb r0, [r1] - ldr r1, _0804BC6C - add r1, sp - strb r0, [r1] - add r0, sp, 0x8 - movs r1, 0x6 - movs r2, 0x4 - movs r4, 0xE5 - lsls r4, 5 - add r4, sp - ldr r3, [r4] - bl sub_804D5B0 - ldr r5, _0804BC70 - add r5, sp - ldr r4, _0804BC74 - add r4, sp - str r4, [sp] - str r6, [sp, 0x4] - add r0, sp, 0x8 - movs r1, 0x6 - movs r2, 0x4 - adds r3, r5, 0 - bl sub_804D8C8 - str r4, [sp] - add r0, sp, 0x8 - movs r1, 0x6 - movs r2, 0x4 - adds r3, r5, 0 - bl sub_804E590 - ldr r0, _0804BC78 - movs r5, 0 - ldrsh r3, [r0, r5] - add r0, sp, 0x8 - movs r1, 0x6 - movs r2, 0x4 - bl sub_804EBC8 - ldr r0, _0804BC7C - movs r1, 0 - ldrsh r3, [r0, r1] - add r0, sp, 0x8 - movs r1, 0x6 - movs r2, 0x4 - bl sub_804EEE4 - movs r2, 0xE5 - lsls r2, 5 - add r2, sp - ldr r2, [r2] - ldrb r3, [r2, 0x13] - add r0, sp, 0x8 - movs r1, 0x6 - movs r2, 0x4 - bl sub_804CBEC - add r0, sp, 0x8 - movs r1, 0x6 - movs r2, 0x4 - bl sub_804E03C - movs r3, 0xE7 - lsls r3, 5 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804BBE8: .4byte 0x00001cac -_0804BBEC: .4byte 0x00001cb8 -_0804BBF0: .4byte 0x00001ccc -_0804BBF4: .4byte 0x00001cb4 -_0804BBF8: .4byte 0x0000fffc -_0804BBFC: .4byte 0x00001ca4 -_0804BC00: .4byte 0x000001fd -_0804BC04: .4byte 0x000003dd -_0804BC08: .4byte 0x000003de -_0804BC0C: .4byte 0x000005bd -_0804BC10: .4byte 0x000005be -_0804BC14: .4byte 0x0000079d -_0804BC18: .4byte 0x0000079e -_0804BC1C: .4byte 0x0000097d -_0804BC20: .4byte 0x00001cd4 -_0804BC24: .4byte 0x00001cd8 -_0804BC28: .4byte 0x00001cbc -_0804BC2C: .4byte 0x00001cc4 -_0804BC30: .4byte 0x00001cc8 -_0804BC34: .4byte 0x0000025d -_0804BC38: .4byte 0x0000025e -_0804BC3C: .4byte 0x0000043d -_0804BC40: .4byte 0x0000043e -_0804BC44: .4byte 0x0000061d -_0804BC48: .4byte 0x0000061e -_0804BC4C: .4byte 0x000007fd -_0804BC50: .4byte 0x000007fe -_0804BC54: .4byte 0x000009dd -_0804BC58: .4byte 0x0000097c -_0804BC5C: .4byte 0x0000099b -_0804BC60: .4byte 0x0000099c -_0804BC64: .4byte 0x000009bb -_0804BC68: .4byte 0x000009bc -_0804BC6C: .4byte 0x000009db -_0804BC70: .4byte 0x00001c28 -_0804BC74: .4byte 0x00001c64 -_0804BC78: .4byte gUnknown_202F1B0 -_0804BC7C: .4byte gUnknown_202F1B2 - thumb_func_end sub_804B72C - - thumb_func_start sub_804BC80 -sub_804BC80: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _0804BED0 - add sp, r4 - movs r1, 0xE5 - lsls r1, 5 - add r1, sp - str r0, [r1] - movs r4, 0x1 - movs r5, 0 - ldr r1, _0804BED4 - add r1, sp - str r5, [r1] - movs r0, 0xB - str r0, [r1, 0x4] - movs r0, 0x16 - str r0, [r1, 0x8] - movs r0, 0x21 - str r0, [r1, 0xC] - movs r0, 0x2C - str r0, [r1, 0x10] - movs r0, 0x38 - str r0, [r1, 0x14] - ldr r1, _0804BED8 - add r1, sp - str r4, [r1] - movs r0, 0x9 - str r0, [r1, 0x4] - movs r0, 0x10 - str r0, [r1, 0x8] - movs r0, 0x17 - str r0, [r1, 0xC] - movs r0, 0x1F - str r0, [r1, 0x10] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x4 - bl sub_804D084 - add r6, sp, 0x70 - add r1, sp, 0x68 - add r0, sp, 0x8 - movs r3, 0xF0 - lsls r3, 1 - movs r2, 0x5 -_0804BCE0: - strb r4, [r0, 0xA] - strb r4, [r1, 0xA] - adds r1, r3 - adds r0, r3 - subs r2, 0x1 - cmp r2, 0 - bne _0804BCE0 - movs r3, 0x5 - subs r3, 0x1 - movs r2, 0x4 - cmp r2, 0 - beq _0804BD1A - lsls r0, r3, 4 - subs r0, r3 - lsls r0, 5 - add r0, sp - adds r0, 0x8 - add r1, sp, 0x8 - mov r10, r2 -_0804BD06: - strb r4, [r1, 0xA] - strb r4, [r0, 0xA] - adds r0, 0x20 - adds r1, 0x20 - movs r2, 0x1 - negs r2, r2 - add r10, r2 - mov r2, r10 - cmp r2, 0 - bne _0804BD06 -_0804BD1A: - movs r2, 0x1 - cmp r2, r3 - bge _0804BD58 - movs r1, 0x3 -_0804BD22: - adds r4, r2, 0x1 - ldr r0, _0804BEDC - add r0, sp - str r4, [r0] - cmp r1, 0x1 - ble _0804BD4E - lsls r0, r2, 4 - subs r0, r2 - lsls r0, 5 - add r0, sp - adds r0, 0x8 - adds r0, 0x20 - subs r2, r1, 0x1 - mov r10, r2 -_0804BD3E: - strb r5, [r0, 0xA] - adds r0, 0x20 - movs r4, 0x1 - negs r4, r4 - add r10, r4 - mov r2, r10 - cmp r2, 0 - bne _0804BD3E -_0804BD4E: - ldr r4, _0804BEDC - add r4, sp - ldr r2, [r4] - cmp r2, r3 - blt _0804BD22 -_0804BD58: - add r0, sp, 0x8 - movs r1, 0x1 - strb r1, [r0, 0x8] - movs r0, 0xF2 - lsls r0, 3 - add r0, sp - strb r1, [r0] - strb r1, [r6] - movs r0, 0xFE - lsls r0, 3 - add r0, sp - strb r1, [r0] - movs r5, 0 - ldr r6, _0804BEE0 - add r6, sp - str r5, [r6] - mov r10, r5 - cmp r5, 0x4 - blt _0804BD80 - b _0804BFAC -_0804BD80: - movs r0, 0x4 - movs r1, 0xE6 - lsls r1, 5 - add r1, sp - str r0, [r1] -_0804BD8A: - movs r2, 0 - cmp r2, 0x5 - blt _0804BD92 - b _0804BF94 -_0804BD92: - ldr r3, _0804BED4 - add r3, sp - ldr r4, _0804BEE4 - add r4, sp - str r3, [r4] - ldr r5, _0804BED8 - add r5, sp - ldr r6, _0804BEE8 - add r6, sp - str r5, [r6] - mov r1, r10 - lsls r0, r1, 2 - adds r0, r5, r0 - ldr r3, _0804BEEC - add r3, sp - str r0, [r3] -_0804BDB2: - lsls r0, r2, 4 - subs r0, r2 - add r0, r10 - lsls r0, 5 - mov r7, sp - adds r7, r0 - adds r7, 0x8 - ldrb r0, [r7, 0x8] - adds r4, r2, 0x1 - ldr r5, _0804BEDC - add r5, sp - str r4, [r5] - cmp r0, 0 - beq _0804BDD0 - b _0804BF88 -_0804BDD0: - ldrb r0, [r7, 0xA] - cmp r0, 0 - bne _0804BDD8 - b _0804BF00 -_0804BDD8: - lsls r0, r2, 2 - ldr r6, _0804BEE4 - add r6, sp - ldr r6, [r6] - adds r0, r6, r0 - ldr r1, [r0] - adds r0, r1, 0x2 - mov r9, r0 - ldr r3, _0804BEEC - add r3, sp - ldr r3, [r3] - ldr r2, [r3] - adds r4, r2, 0x2 - ldr r5, _0804BEF0 - add r5, sp - str r4, [r5] - ldr r6, _0804BEDC - add r6, sp - ldr r6, [r6] - lsls r0, r6, 2 - ldr r3, _0804BEE4 - add r3, sp - ldr r3, [r3] - adds r0, r3, r0 - ldr r4, [r0] - subs r4, r1 - subs r4, 0x3 - ldr r5, _0804BEE8 - add r5, sp - ldr r5, [r5] - movs r6, 0xE6 - lsls r6, 5 - add r6, sp - ldr r6, [r6] - adds r0, r5, r6 - ldr r5, [r0] - subs r5, r2 - subs r5, 0x3 - movs r0, 0x5 - adds r1, r4, 0 - bl sub_808411C - mov r8, r0 - movs r0, 0x4 - adds r1, r5, 0 - bl sub_808411C - adds r6, r0, 0 - mov r0, r8 - subs r4, r0 - adds r0, r4, 0 - bl sub_8084100 - adds r4, r0, 0 - add r4, r9 - subs r5, r6 - adds r0, r5, 0 - bl sub_8084100 - ldr r2, _0804BEF0 - add r2, sp - ldr r1, [r2] - adds r1, r0 - mov r9, r1 - mov r5, r8 - adds r3, r4, r5 - add r6, r9 - strh r4, [r7] - strh r3, [r7, 0x4] - strh r1, [r7, 0x2] - strh r6, [r7, 0x6] - ldr r1, _0804BEE0 - add r1, sp - ldr r0, [r1] - adds r0, 0x1 - ldr r1, _0804BEF4 - add r1, sp - str r0, [r1] - cmp r4, r3 - bge _0804BEC0 -_0804BE78: - mov r5, r9 - adds r7, r4, 0x1 - cmp r5, r6 - bge _0804BEBA - ldr r2, _0804BEF8 - mov r8, r2 -_0804BE84: - adds r0, r4, 0 - adds r1, r5, 0 - ldr r2, _0804BEFC - add r2, sp - str r3, [r2] - bl sub_8049590 - ldrh r1, [r0] - mov r2, r8 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - ldr r1, _0804BEE0 - add r1, sp - ldrb r1, [r1] - strb r1, [r0, 0x9] - adds r5, 0x1 - ldr r2, _0804BEFC - add r2, sp - ldr r3, [r2] - cmp r5, r6 - blt _0804BE84 -_0804BEBA: - adds r4, r7, 0 - cmp r4, r3 - blt _0804BE78 -_0804BEC0: - ldr r3, _0804BEF4 - add r3, sp - ldr r3, [r3] - ldr r4, _0804BEE0 - add r4, sp - str r3, [r4] - b _0804BF88 - .align 2, 0 -_0804BED0: .4byte 0xffffe338 -_0804BED4: .4byte 0x00001c28 -_0804BED8: .4byte 0x00001c64 -_0804BEDC: .4byte 0x00001cb8 -_0804BEE0: .4byte 0x00001ca4 -_0804BEE4: .4byte 0x00001ca8 -_0804BEE8: .4byte 0x00001cb0 -_0804BEEC: .4byte 0x00001cb4 -_0804BEF0: .4byte 0x00001cac -_0804BEF4: .4byte 0x00001cbc -_0804BEF8: .4byte 0x0000fffc -_0804BEFC: .4byte 0x00001cc4 -_0804BF00: - lsls r0, r2, 2 - ldr r4, _0804C080 - add r4, sp - ldr r4, [r4] - adds r0, r4, r0 - ldr r2, [r0] - adds r0, r2, 0x1 - ldr r5, _0804C084 - add r5, sp - ldr r5, [r5] - ldr r3, [r5] - adds r6, r3, 0x1 - mov r8, r6 - ldr r4, _0804C088 - add r4, sp - ldr r4, [r4] - lsls r1, r4, 2 - ldr r5, _0804C080 - add r5, sp - ldr r5, [r5] - adds r1, r5, r1 - ldr r1, [r1] - subs r1, r2 - subs r1, 0x3 - ldr r6, _0804C08C - add r6, sp - ldr r6, [r6] - movs r4, 0xE6 - lsls r4, 5 - add r4, sp - ldr r4, [r4] - adds r2, r6, r4 - ldr r4, [r2] - subs r4, r3 - subs r4, 0x3 - adds r1, r0, r1 - bl sub_808411C - adds r5, r0, 0 - add r4, r8 - mov r0, r8 - adds r1, r4, 0 - bl sub_808411C - adds r4, r0, 0 - strh r5, [r7] - adds r0, r5, 0x1 - strh r0, [r7, 0x4] - strh r4, [r7, 0x2] - adds r0, r4, 0x1 - strh r0, [r7, 0x6] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r1, [r0] - ldr r6, _0804C090 - adds r2, r6, 0 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0xFF - strb r1, [r0, 0x9] -_0804BF88: - ldr r0, _0804C088 - add r0, sp - ldr r2, [r0] - cmp r2, 0x5 - bge _0804BF94 - b _0804BDB2 -_0804BF94: - movs r2, 0xE6 - lsls r2, 5 - add r2, sp - ldr r1, [r2] - adds r1, 0x4 - str r1, [r2] - movs r3, 0x1 - add r10, r3 - mov r4, r10 - cmp r4, 0x4 - bge _0804BFAC - b _0804BD8A -_0804BFAC: - movs r2, 0x1 - movs r1, 0x1 - movs r3, 0xF - add r4, sp, 0x1C -_0804BFB4: - movs r5, 0 - mov r10, r5 - lsls r0, r3, 5 - adds r0, r4 -_0804BFBC: - strb r1, [r0] - strb r1, [r0, 0x1F] - adds r0, 0x20 - movs r6, 0x1 - add r10, r6 - mov r5, r10 - cmp r5, 0x2 - ble _0804BFBC - movs r0, 0xF0 - lsls r0, 1 - adds r3, 0xF - adds r2, 0x1 - cmp r2, 0x3 - ble _0804BFB4 - mov r10, r6 - movs r5, 0x1 - adds r4, r0, 0 - mov r6, sp - adds r6, r4 - adds r6, 0x8 -_0804BFE4: - movs r2, 0 - mov r1, r10 - lsls r0, r1, 5 - mov r3, r10 - adds r3, 0x1 - adds r1, r0, r6 - add r0, sp - adds r0, 0x8 -_0804BFF4: - strb r5, [r0, 0x16] - strb r5, [r1, 0x15] - adds r1, r4 - adds r0, r4 - adds r2, 0x1 - cmp r2, 0x3 - ble _0804BFF4 - mov r10, r3 - cmp r3, 0x2 - ble _0804BFE4 - ldr r5, _0804C094 - add r5, sp - ldr r4, _0804C098 - add r4, sp - str r4, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x4 - adds r3, r5, 0 - bl sub_804D8C8 - str r4, [sp] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x4 - adds r3, r5, 0 - bl sub_804E590 - ldr r0, _0804C09C - movs r2, 0 - ldrsh r3, [r0, r2] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x4 - bl sub_804EBC8 - ldr r0, _0804C0A0 - movs r4, 0 - ldrsh r3, [r0, r4] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x4 - bl sub_804EEE4 - movs r5, 0xE5 - lsls r5, 5 - add r5, sp - ldr r5, [r5] - ldrb r3, [r5, 0x13] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x4 - bl sub_804CBEC - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x4 - bl sub_804E03C - ldr r3, _0804C0A4 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804C080: .4byte 0x00001ca8 -_0804C084: .4byte 0x00001cb4 -_0804C088: .4byte 0x00001cb8 -_0804C08C: .4byte 0x00001cb0 -_0804C090: .4byte 0x0000fffc -_0804C094: .4byte 0x00001c28 -_0804C098: .4byte 0x00001c64 -_0804C09C: .4byte gUnknown_202F1B0 -_0804C0A0: .4byte gUnknown_202F1B2 -_0804C0A4: .4byte 0x00001cc8 - thumb_func_end sub_804BC80 - - thumb_func_start sub_804C0A8 -sub_804C0A8: - push {r4-r6,lr} - mov r6, r8 - push {r6} - ldr r4, _0804C17C - add sp, r4 - adds r6, r0, 0 - ldr r4, _0804C180 - add r4, sp - movs r0, 0 - str r0, [r4] - movs r0, 0xB - str r0, [r4, 0x4] - movs r0, 0x16 - str r0, [r4, 0x8] - movs r0, 0x21 - str r0, [r4, 0xC] - movs r0, 0x2C - str r0, [r4, 0x10] - movs r0, 0x38 - str r0, [r4, 0x14] - ldr r5, _0804C184 - add r5, sp - movs r0, 0x4 - str r0, [r5] - movs r0, 0xF - str r0, [r5, 0x4] - movs r0, 0x1 - mov r8, r0 - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x1 - bl sub_804D084 - movs r3, 0x1 - ldrsb r3, [r6, r3] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x1 - bl sub_804D154 - str r5, [sp] - ldrb r0, [r6, 0xD] - str r0, [sp, 0x4] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x1 - adds r3, r4, 0 - bl sub_804D2D0 - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x1 - adds r3, r6, 0 - bl sub_804D5B0 - str r5, [sp] - mov r1, r8 - str r1, [sp, 0x4] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x1 - adds r3, r4, 0 - bl sub_804D8C8 - str r5, [sp] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x1 - adds r3, r4, 0 - bl sub_804E590 - ldr r0, _0804C188 - movs r1, 0 - ldrsh r3, [r0, r1] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x1 - bl sub_804EBC8 - ldr r0, _0804C18C - movs r1, 0 - ldrsh r3, [r0, r1] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x1 - bl sub_804EEE4 - ldrb r3, [r6, 0x13] - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x1 - bl sub_804CBEC - add r0, sp, 0x8 - movs r1, 0x5 - movs r2, 0x1 - bl sub_804E03C - movs r3, 0xE5 - lsls r3, 5 - add sp, r3 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804C17C: .4byte 0xffffe360 -_0804C180: .4byte 0x00001c28 -_0804C184: .4byte 0x00001c64 -_0804C188: .4byte gUnknown_202F1B0 -_0804C18C: .4byte gUnknown_202F1B2 - thumb_func_end sub_804C0A8 - - thumb_func_start sub_804C190 -sub_804C190: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _0804C2CC - add sp, r4 - mov r10, r0 - ldr r1, _0804C2D0 - add r1, sp - movs r2, 0xB - str r2, [r1] - movs r0, 0x16 - str r0, [r1, 0x4] - movs r0, 0x21 - str r0, [r1, 0x8] - movs r0, 0x2C - str r0, [r1, 0xC] - ldr r1, _0804C2D4 - add r1, sp - movs r0, 0x2 - str r0, [r1] - str r2, [r1, 0x4] - movs r0, 0x14 - str r0, [r1, 0x8] - movs r0, 0x1E - str r0, [r1, 0xC] - movs r0, 0x3 - mov r8, r0 - movs r7, 0x3 - add r0, sp, 0x8 - movs r1, 0x3 - movs r2, 0x3 - bl sub_804D084 - movs r1, 0 - add r5, sp, 0x50 - movs r0, 0x3E - add r0, sp - mov r9, r0 - mov r0, r10 - ldrb r0, [r0, 0xD] - mov r12, r0 -_0804C1E6: - adds r3, r1, 0x1 - cmp r7, 0 - beq _0804C204 - lsls r0, r1, 4 - subs r0, r1 - movs r2, 0x1 - lsls r0, 5 - add r0, sp - adds r0, 0x8 - adds r1, r7, 0 -_0804C1FA: - strb r2, [r0, 0xA] - adds r0, 0x20 - subs r1, 0x1 - cmp r1, 0 - bne _0804C1FA -_0804C204: - adds r1, r3, 0 - cmp r1, r8 - blt _0804C1E6 - add r0, sp, 0x8 - movs r4, 0x1 - strb r4, [r0, 0x8] - add r0, sp, 0x3D0 - strb r4, [r0] - strb r4, [r5] - movs r0, 0x82 - lsls r0, 3 - add r0, sp - strb r4, [r0] - ldr r6, _0804C2D0 - add r6, sp - ldr r5, _0804C2D4 - add r5, sp - str r5, [sp] - mov r1, r12 - str r1, [sp, 0x4] - add r0, sp, 0x8 - mov r1, r8 - adds r2, r7, 0 - adds r3, r6, 0 - bl sub_804D2D0 - mov r0, r9 - strb r4, [r0] - ldr r0, _0804C2D8 - add r0, sp - strb r4, [r0] - ldr r0, _0804C2DC - add r0, sp - strb r4, [r0] - ldr r0, _0804C2E0 - add r0, sp - strb r4, [r0] - add r0, sp, 0x1FC - strb r4, [r0] - ldr r0, _0804C2E4 - add r0, sp - strb r4, [r0] - add r0, sp, 0x21C - strb r4, [r0] - ldr r0, _0804C2E8 - add r0, sp - strb r4, [r0] - str r5, [sp] - str r4, [sp, 0x4] - add r0, sp, 0x8 - mov r1, r8 - adds r2, r7, 0 - adds r3, r6, 0 - bl sub_804D8C8 - str r5, [sp] - add r0, sp, 0x8 - mov r1, r8 - adds r2, r7, 0 - adds r3, r6, 0 - bl sub_804E590 - ldr r0, _0804C2EC - movs r1, 0 - ldrsh r3, [r0, r1] - add r0, sp, 0x8 - mov r1, r8 - adds r2, r7, 0 - bl sub_804EBC8 - ldr r0, _0804C2F0 - movs r1, 0 - ldrsh r3, [r0, r1] - add r0, sp, 0x8 - mov r1, r8 - adds r2, r7, 0 - bl sub_804EEE4 - mov r0, r10 - ldrb r3, [r0, 0x13] - add r0, sp, 0x8 - mov r1, r8 - adds r2, r7, 0 - bl sub_804CBEC - add r0, sp, 0x8 - mov r1, r8 - adds r2, r7, 0 - bl sub_804E03C - movs r3, 0xE5 - lsls r3, 5 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804C2CC: .4byte 0xffffe360 -_0804C2D0: .4byte 0x00001c28 -_0804C2D4: .4byte 0x00001c64 -_0804C2D8: .4byte 0x0000021d -_0804C2DC: .4byte 0x0000021e -_0804C2E0: .4byte 0x000003fd -_0804C2E4: .4byte 0x0000021b -_0804C2E8: .4byte 0x0000023b -_0804C2EC: .4byte gUnknown_202F1B0 -_0804C2F0: .4byte gUnknown_202F1B2 - thumb_func_end sub_804C190 - - thumb_func_start sub_804C2F4 -sub_804C2F4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _0804C420 - add sp, r4 - mov r8, r0 - ldr r1, _0804C424 - add r1, sp - movs r0, 0x5 - str r0, [r1] - movs r0, 0xF - str r0, [r1, 0x4] - movs r0, 0x23 - str r0, [r1, 0x8] - movs r0, 0x32 - str r0, [r1, 0xC] - ldr r1, _0804C428 - add r1, sp - movs r0, 0x2 - str r0, [r1] - movs r0, 0xB - str r0, [r1, 0x4] - movs r0, 0x14 - str r0, [r1, 0x8] - movs r0, 0x1E - str r0, [r1, 0xC] - movs r7, 0x3 - movs r6, 0x3 - add r0, sp, 0x8 - movs r1, 0x3 - movs r2, 0x3 - bl sub_804D084 - movs r1, 0 - mov r0, r8 - ldrb r4, [r0, 0xD] -_0804C33C: - adds r3, r1, 0x1 - cmp r6, 0 - beq _0804C35A - lsls r0, r1, 4 - subs r0, r1 - movs r2, 0x1 - lsls r0, 5 - add r0, sp - adds r0, 0x8 - adds r1, r6, 0 -_0804C350: - strb r2, [r0, 0xA] - adds r0, 0x20 - subs r1, 0x1 - cmp r1, 0 - bne _0804C350 -_0804C35A: - adds r1, r3, 0 - cmp r1, r7 - blt _0804C33C - ldr r3, _0804C424 - add r3, sp - ldr r0, _0804C428 - add r0, sp - str r0, [sp] - str r4, [sp, 0x4] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804D2D0 - movs r4, 0x1 - ldr r3, _0804C42C - add r3, sp - ldr r0, _0804C430 - add r0, sp - add r2, sp, 0x8 - movs r1, 0x2 -_0804C384: - strb r4, [r2, 0x16] - strb r4, [r0] - strb r4, [r0, 0x1] - strb r4, [r3] - adds r3, 0x20 - adds r0, 0x20 - adds r2, 0x20 - subs r1, 0x1 - cmp r1, 0 - bge _0804C384 - ldr r5, _0804C424 - add r5, sp - ldr r4, _0804C428 - add r4, sp - str r4, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - adds r3, r5, 0 - bl sub_804D8C8 - movs r0, 0x1 - movs r1, 0 - movs r2, 0x1 - add r3, sp, 0x8 - bl sub_804C43C - movs r0, 0x1 - movs r1, 0 - movs r2, 0x2 - add r3, sp, 0x8 - bl sub_804C43C - str r4, [sp] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - adds r3, r5, 0 - bl sub_804E590 - ldr r0, _0804C434 - movs r1, 0 - ldrsh r3, [r0, r1] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804EBC8 - ldr r0, _0804C438 - movs r1, 0 - ldrsh r3, [r0, r1] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804EEE4 - mov r0, r8 - ldrb r3, [r0, 0x13] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804CBEC - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804E03C - movs r3, 0xE5 - lsls r3, 5 - add sp, r3 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804C420: .4byte 0xffffe360 -_0804C424: .4byte 0x00001c28 -_0804C428: .4byte 0x00001c64 -_0804C42C: .4byte 0x000003dd -_0804C430: .4byte 0x000001fd -_0804C434: .4byte gUnknown_202F1B0 -_0804C438: .4byte gUnknown_202F1B2 - thumb_func_end sub_804C2F4 - - thumb_func_start sub_804C43C -sub_804C43C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - str r0, [sp] - str r3, [sp, 0x4] - lsls r7, r1, 5 - lsls r0, 4 - str r0, [sp, 0xC] - ldr r3, [sp] - subs r0, r3 - lsls r0, 5 - ldr r4, [sp, 0x4] - adds r0, r4 - adds r3, r7, r0 - adds r6, r1, r2 - lsls r1, r6, 5 - adds r2, r1, r0 - movs r5, 0 - ldrsh r1, [r2, r5] - adds r4, r1, 0 - ldrh r0, [r3] - mov r8, r0 - movs r5, 0 - ldrsh r0, [r3, r5] - cmp r1, r0 - ble _0804C478 - mov r4, r8 -_0804C478: - lsls r0, r4, 16 - asrs r0, 16 - str r0, [sp, 0x8] - movs r1, 0x2 - ldrsh r0, [r3, r1] - mov r10, r0 - movs r4, 0x4 - ldrsh r1, [r2, r4] - adds r4, r1, 0 - ldrh r5, [r3, 0x4] - mov r8, r5 - movs r5, 0x4 - ldrsh r0, [r3, r5] - cmp r1, r0 - bge _0804C498 - mov r4, r8 -_0804C498: - lsls r0, r4, 16 - asrs r0, 16 - str r0, [sp, 0x10] - movs r1, 0x6 - ldrsh r0, [r2, r1] - mov r8, r0 - movs r2, 0 - ldrsh r0, [r3, r2] - mov r1, r10 - bl sub_804954C - ldrb r0, [r0, 0x9] - mov r9, r0 - ldr r5, [sp, 0x8] - str r7, [sp, 0x1C] - ldr r3, [sp, 0xC] - str r3, [sp, 0x18] - str r6, [sp, 0x14] - ldr r4, [sp, 0x10] - cmp r5, r4 - bge _0804C4F2 -_0804C4C2: - mov r4, r10 - adds r6, r5, 0x1 - cmp r10, r8 - bge _0804C4EA - ldr r0, _0804C538 - adds r7, r0, 0 -_0804C4CE: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r1, [r0] - ands r1, r7 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - mov r1, r9 - strb r1, [r0, 0x9] - adds r4, 0x1 - cmp r4, r8 - blt _0804C4CE -_0804C4EA: - adds r5, r6, 0 - ldr r2, [sp, 0x10] - cmp r5, r2 - blt _0804C4C2 -_0804C4F2: - ldr r3, [sp, 0x18] - ldr r4, [sp] - subs r1, r3, r4 - lsls r1, 5 - ldr r5, [sp, 0x4] - adds r1, r5 - ldr r0, [sp, 0x1C] - adds r2, r0, r1 - movs r3, 0 - mov r4, sp - ldrh r4, [r4, 0x8] - strh r4, [r2] - mov r5, sp - ldrh r5, [r5, 0x10] - strh r5, [r2, 0x4] - mov r0, r10 - strh r0, [r2, 0x2] - mov r4, r8 - strh r4, [r2, 0x6] - ldr r5, [sp, 0x14] - lsls r0, r5, 5 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0, 0x12] - strb r1, [r2, 0x12] - strb r3, [r0, 0xB] - strb r1, [r0, 0x11] - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804C538: .4byte 0x0000fffc - thumb_func_end sub_804C43C - - thumb_func_start sub_804C53C -sub_804C53C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _0804C6F8 - add sp, r4 - mov r10, r2 - adds r7, r0, 0 - adds r6, r1, 0 - ldr r0, _0804C6FC - add r0, sp - ldr r1, _0804C700 - add r1, sp - adds r2, r7, 0 - adds r3, r6, 0 - bl sub_804D024 - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804D084 - movs r2, 0 - cmp r2, r7 - bge _0804C594 -_0804C570: - adds r3, r2, 0x1 - cmp r6, 0 - ble _0804C58E - lsls r0, r2, 4 - subs r0, r2 - movs r2, 0x1 - lsls r0, 5 - add r0, sp - adds r0, 0x8 - adds r1, r6, 0 -_0804C584: - strb r2, [r0, 0xA] - adds r0, 0x20 - subs r1, 0x1 - cmp r1, 0 - bne _0804C584 -_0804C58E: - adds r2, r3, 0 - cmp r2, r7 - blt _0804C570 -_0804C594: - movs r2, 0x1 - subs r0, r7, 0x1 - mov r8, r0 - subs r1, r6, 0x1 - mov r9, r1 - mov r0, r10 - ldrb r0, [r0, 0xD] - mov r12, r0 - cmp r2, r8 - bge _0804C5D2 - mov r4, r9 - mov r5, r8 -_0804C5AC: - adds r3, r2, 0x1 - cmp r4, 0x1 - ble _0804C5CC - lsls r0, r2, 4 - subs r0, r2 - movs r2, 0x1 - lsls r0, 5 - add r0, sp - adds r0, 0x8 - adds r0, 0x20 - subs r1, r4, 0x1 -_0804C5C2: - strb r2, [r0, 0x8] - adds r0, 0x20 - subs r1, 0x1 - cmp r1, 0 - bne _0804C5C2 -_0804C5CC: - adds r2, r3, 0 - cmp r2, r5 - blt _0804C5AC -_0804C5D2: - ldr r3, _0804C6FC - add r3, sp - ldr r0, _0804C700 - add r0, sp - str r0, [sp] - mov r1, r12 - str r1, [sp, 0x4] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804D2D0 - movs r2, 0 - cmp r2, r8 - bge _0804C636 - movs r4, 0x1 - mov r0, r9 - lsls r5, r0, 5 - subs r1, r7, 0x2 - mov r12, r1 -_0804C5FA: - cmp r2, 0 - beq _0804C614 - lsls r0, r2, 4 - subs r0, r2 - lsls r0, 5 - mov r1, sp - adds r1, r0 - adds r1, 0x8 - strb r4, [r1, 0x16] - adds r0, r5, r0 - add r0, sp - adds r0, 0x8 - strb r4, [r0, 0x16] -_0804C614: - adds r3, r2, 0x1 - cmp r2, r12 - bge _0804C630 - lsls r0, r3, 4 - subs r0, r3 - lsls r0, 5 - mov r1, sp - adds r1, r0 - adds r1, 0x8 - strb r4, [r1, 0x15] - adds r0, r5, r0 - add r0, sp - adds r0, 0x8 - strb r4, [r0, 0x15] -_0804C630: - adds r2, r3, 0 - cmp r2, r8 - blt _0804C5FA -_0804C636: - movs r1, 0 - cmp r1, r9 - bge _0804C66A - movs r3, 0x1 - mov r2, r8 - lsls r0, r2, 4 - subs r0, r2 - lsls r0, 5 - add r0, sp - adds r0, 0x8 - add r2, sp, 0x8 - subs r5, r6, 0x2 - mov r4, r9 -_0804C650: - cmp r1, 0 - beq _0804C658 - strb r3, [r2, 0x13] - strb r3, [r0, 0x13] -_0804C658: - cmp r1, r5 - bge _0804C660 - strb r3, [r2, 0x14] - strb r3, [r0, 0x14] -_0804C660: - adds r0, 0x20 - adds r2, 0x20 - adds r1, 0x1 - cmp r1, r4 - blt _0804C650 -_0804C66A: - ldr r5, _0804C6FC - add r5, sp - ldr r4, _0804C700 - add r4, sp - str r4, [sp] - movs r0, 0 - str r0, [sp, 0x4] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - adds r3, r5, 0 - bl sub_804D8C8 - str r4, [sp] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - adds r3, r5, 0 - bl sub_804E590 - mov r0, r10 - ldrb r3, [r0, 0x9] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804F0D0 - ldr r0, _0804C704 - movs r1, 0 - ldrsh r3, [r0, r1] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804EBC8 - ldr r0, _0804C708 - movs r2, 0 - ldrsh r3, [r0, r2] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804EEE4 - mov r0, r10 - ldrb r3, [r0, 0x13] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804CBEC - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804E03C - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_804D534 - movs r3, 0xE5 - lsls r3, 5 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804C6F8: .4byte 0xffffe360 -_0804C6FC: .4byte 0x00001c28 -_0804C700: .4byte 0x00001c64 -_0804C704: .4byte gUnknown_202F1B0 -_0804C708: .4byte gUnknown_202F1B2 - thumb_func_end sub_804C53C - - thumb_func_start sub_804C70C -sub_804C70C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r7, r0, 0 - mov r8, r1 - ldr r0, _0804C73C - ldr r0, [r0] - ldr r1, _0804C740 - adds r0, r1 - ldr r0, [r0] - ldr r1, [r0, 0x4] - lsls r0, r7, 2 - adds r0, r1 - ldr r0, [r0] - ldrb r5, [r0] - ldrb r6, [r0, 0x1] - cmp r5, 0 - beq _0804C736 - cmp r6, 0 - bne _0804C744 -_0804C736: - bl sub_804C918 - b _0804C782 - .align 2, 0 -_0804C73C: .4byte gUnknown_203B418 -_0804C740: .4byte 0x00013568 -_0804C744: - cmp r7, 0x31 - bgt _0804C752 - adds r0, r7, 0 - bl sub_8051288 - movs r0, 0x1 - b _0804C784 -_0804C752: - adds r1, r5, 0x4 - movs r0, 0x38 - bl __divsi3 - adds r4, r0, 0 - cmp r4, 0x1 - bgt _0804C762 - movs r4, 0x1 -_0804C762: - adds r1, r6, 0x4 - movs r0, 0x20 - bl __divsi3 - adds r1, r0, 0 - cmp r1, 0x1 - bgt _0804C772 - movs r1, 0x1 -_0804C772: - str r7, [sp] - mov r0, r8 - str r0, [sp, 0x4] - adds r0, r4, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_804C790 -_0804C782: - movs r0, 0 -_0804C784: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_804C70C - - thumb_func_start sub_804C790 -sub_804C790: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _0804C81C - add sp, r4 - adds r5, r0, 0 - adds r4, r1, 0 - ldr r0, _0804C820 - add r0, sp - str r2, [r0] - ldr r1, _0804C824 - add r1, sp - str r3, [r1] - movs r2, 0 - mov r10, r2 - mov r8, r2 - ldr r0, _0804C828 - add r0, sp - ldr r1, _0804C82C - add r1, sp - adds r2, r5, 0 - adds r3, r4, 0 - bl sub_804D024 - add r0, sp, 0x10 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_804D084 - ldr r0, _0804C830 - add r0, sp - ldr r0, [r0] - movs r3, 0x1 - ldrsb r3, [r0, r3] - add r0, sp, 0x10 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_804D154 - mov r6, r8 - cmp r8, r5 - bge _0804C818 -_0804C7E8: - movs r1, 0 - mov r8, r1 - adds r2, r6, 0x1 - cmp r8, r4 - bge _0804C812 - lsls r0, r6, 4 - subs r0, r6 - movs r1, 0x1 - lsls r0, 5 - add r0, sp - adds r0, 0x10 - mov r8, r4 -_0804C800: - strb r1, [r0, 0x1B] - adds r0, 0x20 - movs r3, 0x1 - negs r3, r3 - add r8, r3 - mov r3, r8 - cmp r3, 0 - bne _0804C800 - mov r8, r4 -_0804C812: - adds r6, r2, 0 - cmp r6, r5 - blt _0804C7E8 -_0804C818: - movs r7, 0 - b _0804C836 - .align 2, 0 -_0804C81C: .4byte 0xffffe350 -_0804C820: .4byte 0x00001ca8 -_0804C824: .4byte 0x00001cac -_0804C828: .4byte 0x00001c30 -_0804C82C: .4byte 0x00001c6c -_0804C830: .4byte 0x00001cd4 -_0804C834: - adds r7, 0x1 -_0804C836: - cmp r7, 0x3F - bgt _0804C864 - adds r0, r5, 0 - bl sub_8084100 - adds r6, r0, 0 - adds r0, r4, 0 - bl sub_8084100 - mov r8, r0 - mov r0, r8 - muls r0, r5 - adds r0, r6 - mov r10, r0 - lsls r0, r6, 4 - subs r0, r6 - add r0, r8 - lsls r0, 5 - add r0, sp - adds r0, 0x10 - ldrb r0, [r0, 0xA] - cmp r0, 0 - beq _0804C834 -_0804C864: - ldr r0, _0804C8FC - add r0, sp - mov r9, r0 - ldr r7, _0804C900 - add r7, sp - str r7, [sp] - mov r1, r10 - str r1, [sp, 0x4] - ldr r2, _0804C904 - add r2, sp - ldr r2, [r2] - str r2, [sp, 0x8] - ldr r3, _0804C908 - add r3, sp - ldr r3, [r3] - str r3, [sp, 0xC] - add r0, sp, 0x10 - adds r1, r5, 0 - adds r2, r4, 0 - mov r3, r9 - bl sub_8050F90 - cmp r5, 0x1 - bne _0804C898 - cmp r4, 0x1 - beq _0804C8D0 -_0804C898: - mov r0, r8 - str r0, [sp] - ldr r1, _0804C90C - add r1, sp - ldr r1, [r1] - str r1, [sp, 0x4] - add r0, sp, 0x10 - adds r1, r5, 0 - adds r2, r4, 0 - adds r3, r6, 0 - bl sub_804D5F0 - str r7, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - add r0, sp, 0x10 - adds r1, r5, 0 - adds r2, r4, 0 - mov r3, r9 - bl sub_804D8C8 - str r7, [sp] - add r0, sp, 0x10 - adds r1, r5, 0 - adds r2, r4, 0 - mov r3, r9 - bl sub_804E590 -_0804C8D0: - lsls r0, r6, 4 - subs r0, r6 - lsls r0, 5 - add r0, sp - adds r0, 0x10 - mov r2, r8 - lsls r1, r2, 5 - adds r0, r1 - ldr r3, _0804C910 - add r3, sp - ldr r1, [r3] - bl sub_8051438 - ldr r3, _0804C914 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804C8FC: .4byte 0x00001c30 -_0804C900: .4byte 0x00001c6c -_0804C904: .4byte 0x00001ca8 -_0804C908: .4byte 0x00001cac -_0804C90C: .4byte 0x00001cd4 -_0804C910: .4byte 0x00001cd0 -_0804C914: .4byte 0x00001cb0 - thumb_func_end sub_804C790 - - thumb_func_start sub_804C918 -sub_804C918: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r4, _0804C9C4 - add sp, r4 - mov r0, sp - movs r1, 0x1 - movs r2, 0x1 - bl sub_804D084 - mov r0, sp - movs r3, 0 - movs r2, 0x2 - strh r2, [r0] - mov r1, sp - movs r0, 0x36 - strh r0, [r1, 0x4] - mov r0, sp - strh r2, [r0, 0x2] - movs r0, 0x1E - strh r0, [r1, 0x6] - mov r0, sp - movs r1, 0x1 - strb r1, [r0, 0xA] - strb r1, [r0, 0xB] - strb r3, [r0, 0x8] - movs r1, 0 - ldrsh r5, [r0, r1] - movs r2, 0x4 - ldrsh r0, [r0, r2] - cmp r5, r0 - bge _0804C9A6 - mov r6, sp -_0804C95C: - movs r0, 0x2 - ldrsh r4, [r6, r0] - movs r1, 0x6 - ldrsh r0, [r6, r1] - adds r7, r5, 0x1 - cmp r4, r0 - bge _0804C99C - movs r2, 0 - mov r9, r2 - ldr r0, _0804C9C8 - mov r8, r0 -_0804C972: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r1, [r0] - mov r2, r8 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - mov r1, r9 - strb r1, [r0, 0x9] - adds r4, 0x1 - movs r2, 0x6 - ldrsh r0, [r6, r2] - cmp r4, r0 - blt _0804C972 -_0804C99C: - adds r5, r7, 0 - movs r1, 0x4 - ldrsh r0, [r6, r1] - cmp r5, r0 - blt _0804C95C -_0804C9A6: - ldr r3, _0804C9CC - mov r0, sp - movs r1, 0x1 - movs r2, 0x1 - bl sub_804EEE4 - movs r3, 0xE1 - lsls r3, 5 - add sp, r3 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804C9C4: .4byte 0xffffe3e0 -_0804C9C8: .4byte 0x0000fffc -_0804C9CC: .4byte 0x000003e7 - thumb_func_end sub_804C918 - - thumb_func_start sub_804C9D0 -sub_804C9D0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _0804CBB4 - add sp, r4 - movs r0, 0 - movs r1, 0xE5 - lsls r1, 5 - add r1, sp - str r0, [r1] - ldr r1, _0804CBB8 - add r1, sp - movs r2, 0x2 - str r2, [r1] - movs r0, 0x1C - str r0, [r1, 0x4] - movs r0, 0x36 - str r0, [r1, 0x8] - ldr r1, _0804CBBC - add r1, sp - str r2, [r1] - movs r0, 0x1E - str r0, [r1, 0x4] - add r0, sp, 0x8 - movs r1, 0x2 - movs r2, 0x1 - bl sub_804D084 - movs r0, 0 - ldr r2, _0804CBB8 - add r2, sp - ldr r3, _0804CBC0 - add r3, sp - str r2, [r3] - ldr r4, _0804CBBC - add r4, sp - ldr r1, _0804CBC4 - add r1, sp - str r4, [r1] -_0804CA22: - movs r7, 0 - lsls r2, r0, 2 - ldr r3, _0804CBC8 - add r3, sp - str r2, [r3] - adds r4, r0, 0x1 - ldr r1, _0804CBCC - add r1, sp - str r4, [r1] - lsls r0, 5 - ldr r2, _0804CBD0 - add r2, sp - str r0, [r2] -_0804CA3C: - lsls r0, r7, 2 - ldr r3, _0804CBC0 - add r3, sp - ldr r3, [r3] - adds r0, r3, r0 - ldr r1, [r0] - adds r4, r1, 0x1 - mov r10, r4 - ldr r2, _0804CBC4 - add r2, sp - ldr r2, [r2] - ldr r3, _0804CBC8 - add r3, sp - ldr r3, [r3] - adds r0, r2, r3 - ldr r2, [r0] - adds r4, r2, 0x1 - ldr r0, _0804CBD4 - add r0, sp - str r4, [r0] - adds r3, r7, 0x1 - mov r9, r3 - lsls r0, r3, 2 - ldr r4, _0804CBC0 - add r4, sp - ldr r4, [r4] - adds r0, r4, r0 - ldr r4, [r0] - subs r4, r1 - subs r4, 0x3 - ldr r1, _0804CBCC - add r1, sp - ldr r1, [r1] - lsls r0, r1, 2 - ldr r3, _0804CBC4 - add r3, sp - ldr r3, [r3] - adds r0, r3, r0 - ldr r5, [r0] - subs r5, r2 - subs r5, 0x3 - movs r0, 0xA - adds r1, r4, 0 - bl sub_808411C - mov r8, r0 - movs r0, 0x10 - adds r1, r5, 0 - bl sub_808411C - adds r6, r0, 0 - mov r0, r8 - subs r4, r0 - adds r0, r4, 0 - bl sub_8084100 - adds r4, r0, 0 - add r4, r10 - subs r5, r6 - adds r0, r5, 0 - bl sub_8084100 - ldr r2, _0804CBD4 - add r2, sp - ldr r1, [r2] - adds r1, r0 - mov r10, r1 - mov r0, r8 - adds r3, r4, r0 - add r6, r10 - lsls r0, r7, 4 - subs r0, r7 - lsls r0, 5 - ldr r1, _0804CBD0 - add r1, sp - ldr r1, [r1] - adds r0, r1, r0 - add r0, sp - adds r0, 0x8 - movs r1, 0x1 - strb r1, [r0, 0xA] - strh r4, [r0] - strh r3, [r0, 0x4] - mov r2, r10 - strh r2, [r0, 0x2] - strh r6, [r0, 0x6] - mov r0, r9 - ldr r1, _0804CBD8 - add r1, sp - str r0, [r1] - movs r0, 0xE5 - lsls r0, 5 - add r0, sp - ldr r2, [r0] - adds r2, 0x1 - mov r9, r2 - cmp r4, r3 - bge _0804CB4E -_0804CB00: - mov r5, r10 - adds r7, r4, 0x1 - cmp r5, r6 - bge _0804CB48 - ldr r1, _0804CBDC - mov r8, r1 -_0804CB0C: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0xE6 - lsls r2, 5 - add r2, sp - str r3, [r2] - bl sub_8049590 - ldrh r1, [r0] - mov r2, r8 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - movs r1, 0xE5 - lsls r1, 5 - add r1, sp - ldrb r1, [r1] - strb r1, [r0, 0x9] - adds r5, 0x1 - movs r2, 0xE6 - lsls r2, 5 - add r2, sp - ldr r3, [r2] - cmp r5, r6 - blt _0804CB0C -_0804CB48: - adds r4, r7, 0 - cmp r4, r3 - blt _0804CB00 -_0804CB4E: - mov r3, r9 - movs r4, 0xE5 - lsls r4, 5 - add r4, sp - str r3, [r4] - ldr r0, _0804CBD8 - add r0, sp - ldr r7, [r0] - cmp r7, 0x1 - bgt _0804CB64 - b _0804CA3C -_0804CB64: - ldr r1, _0804CBCC - add r1, sp - ldr r0, [r1] - cmp r0, 0 - bgt _0804CB70 - b _0804CA22 -_0804CB70: - add r0, sp, 0x8 - movs r2, 0 - movs r1, 0x1 - strb r1, [r0, 0x16] - ldr r0, _0804CBE0 - add r0, sp - strb r1, [r0] - ldr r3, _0804CBB8 - add r3, sp - ldr r0, _0804CBBC - add r0, sp - str r0, [sp] - str r2, [sp, 0x4] - add r0, sp, 0x8 - movs r1, 0x2 - movs r2, 0x1 - bl sub_804D8C8 - ldr r3, _0804CBE4 - add r0, sp, 0x8 - movs r1, 0x2 - movs r2, 0x1 - bl sub_804EEE4 - ldr r3, _0804CBE8 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804CBB4: .4byte 0xffffe33c -_0804CBB8: .4byte 0x00001c28 -_0804CBBC: .4byte 0x00001c64 -_0804CBC0: .4byte 0x00001ca4 -_0804CBC4: .4byte 0x00001cac -_0804CBC8: .4byte 0x00001cb0 -_0804CBCC: .4byte 0x00001cbc -_0804CBD0: .4byte 0x00001cb4 -_0804CBD4: .4byte 0x00001ca8 -_0804CBD8: .4byte 0x00001cb8 -_0804CBDC: .4byte 0x0000fffc -_0804CBE0: .4byte 0x000001fd -_0804CBE4: .4byte 0x000003e7 -_0804CBE8: .4byte 0x00001cc4 - thumb_func_end sub_804C9D0 - - thumb_func_start sub_804CBEC -sub_804CBEC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - str r0, [sp] - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r3, [sp, 0xC] - cmp r3, 0 - bne _0804CC06 - b _0804D006 -_0804CC06: - movs r5, 0 - cmp r5, r3 - blt _0804CC0E - b _0804D006 -_0804CC0E: - ldr r0, [sp, 0x4] - bl sub_8084100 - mov r9, r0 - ldr r0, [sp, 0x8] - bl sub_8084100 - mov r10, r0 - lsls r0, 5 - mov r2, r9 - lsls r1, r2, 4 - subs r1, r2 - lsls r1, 5 - ldr r3, [sp] - adds r1, r3 - adds r4, r0, r1 - ldrb r0, [r4, 0xA] - adds r5, 0x1 - str r5, [sp, 0x18] - cmp r0, 0 - bne _0804CC3A - b _0804CFFC -_0804CC3A: - ldrb r0, [r4, 0xB] - cmp r0, 0 - bne _0804CC42 - b _0804CFFC -_0804CC42: - ldrb r0, [r4, 0x8] - cmp r0, 0 - beq _0804CC4A - b _0804CFFC -_0804CC4A: - ldrb r0, [r4, 0x10] - cmp r0, 0 - beq _0804CC52 - b _0804CFFC -_0804CC52: - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x4 - ldrsh r1, [r4, r2] - bl sub_808411C - adds r7, r0, 0 - movs r3, 0x2 - ldrsh r0, [r4, r3] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_808411C - adds r6, r0, 0 - movs r0, 0x4 - bl sub_8084100 - lsls r0, 1 - mov r8, r0 - ldr r1, [sp, 0x8] - subs r1, 0x1 - movs r3, 0x2 - str r3, [sp, 0x10] - ldr r0, [sp, 0x4] - subs r0, 0x1 -_0804CC84: - mov r2, r8 - cmp r2, 0 - bne _0804CC92 - cmp r10, r1 - blt _0804CC92 - movs r3, 0x2 - mov r8, r3 -_0804CC92: - mov r2, r8 - cmp r2, 0x2 - bne _0804CCA0 - cmp r9, r0 - blt _0804CCA0 - movs r3, 0x4 - mov r8, r3 -_0804CCA0: - mov r2, r8 - cmp r2, 0x4 - bne _0804CCB0 - mov r3, r10 - cmp r3, 0 - bgt _0804CCB0 - movs r2, 0x6 - mov r8, r2 -_0804CCB0: - mov r3, r8 - cmp r3, 0x6 - bne _0804CCC0 - mov r2, r9 - cmp r2, 0 - bgt _0804CCC0 - movs r3, 0 - mov r8, r3 -_0804CCC0: - ldr r2, [sp, 0x10] - subs r2, 0x1 - str r2, [sp, 0x10] - cmp r2, 0 - bge _0804CC84 - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_804954C - ldrb r5, [r0, 0x9] - ldr r1, _0804CCE0 - mov r3, r8 - lsls r0, r3, 2 - adds r4, r0, r1 - b _0804CCF0 - .align 2, 0 -_0804CCE0: .4byte gUnknown_80F4448 -_0804CCE4: - movs r1, 0 - ldrsh r0, [r4, r1] - adds r7, r0 - movs r2, 0x2 - ldrsh r0, [r4, r2] - adds r6, r0 -_0804CCF0: - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_804954C - ldrb r0, [r0, 0x9] - cmp r5, r0 - beq _0804CCE4 - ldr r1, _0804CD08 - mov r3, r8 - lsls r0, r3, 2 - adds r4, r0, r1 - b _0804CD18 - .align 2, 0 -_0804CD08: .4byte gUnknown_80F4448 -_0804CD0C: - movs r1, 0 - ldrsh r0, [r4, r1] - adds r7, r0 - movs r2, 0x2 - ldrsh r0, [r4, r2] - adds r6, r0 -_0804CD18: - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_804954C - ldrh r1, [r0] - movs r5, 0x3 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0x1 - beq _0804CD0C - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_804954C - ldrh r1, [r0] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0x2 - bne _0804CD40 - b _0804CFFC -_0804CD40: - movs r3, 0 - subs r2, r7, 0x2 - adds r4, r7, 0x2 - b _0804CD4A -_0804CD48: - adds r2, 0x1 -_0804CD4A: - cmp r2, r4 - bgt _0804CD6C - subs r0, r6, 0x2 - adds r1, r6, 0x2 - b _0804CD56 -_0804CD54: - adds r0, 0x1 -_0804CD56: - cmp r0, r1 - bgt _0804CD68 - cmp r2, 0x37 - bhi _0804CD66 - cmp r0, 0 - blt _0804CD66 - cmp r0, 0x1F - ble _0804CD54 -_0804CD66: - movs r3, 0x1 -_0804CD68: - cmp r3, 0 - beq _0804CD48 -_0804CD6C: - cmp r3, 0 - beq _0804CD72 - b _0804CFFC -_0804CD72: - ldr r2, _0804CDD4 - mov r1, r8 - adds r1, 0x2 - movs r4, 0x6 - ands r1, r4 - lsls r1, 2 - adds r1, r2 - movs r3, 0 - ldrsh r0, [r1, r3] - movs r3, 0x2 - ldrsh r1, [r1, r3] - adds r0, r7, r0 - adds r1, r6, r1 - str r2, [sp, 0x1C] - bl sub_804954C - ldrh r1, [r0] - movs r5, 0x3 - adds r0, r5, 0 - ands r0, r1 - ldr r2, [sp, 0x1C] - cmp r0, 0x1 - bne _0804CDA2 - b _0804CFFC -_0804CDA2: - mov r1, r8 - subs r1, 0x2 - ands r1, r4 - lsls r1, 2 - adds r1, r2 - movs r2, 0 - ldrsh r0, [r1, r2] - movs r3, 0x2 - ldrsh r1, [r1, r3] - adds r0, r7, r0 - adds r1, r6, r1 - bl sub_804954C - ldrh r1, [r0] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0x1 - bne _0804CDC8 - b _0804CFFC -_0804CDC8: - movs r0, 0x3 - bl sub_8084100 - adds r0, 0x3 - str r0, [sp, 0x10] - b _0804CFD4 - .align 2, 0 -_0804CDD4: .4byte gUnknown_80F4448 -_0804CDD8: - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0804CDEC - b _0804CFFC -_0804CDEC: - movs r0, 0x1 - str r0, [sp, 0x14] - adds r4, r7, 0x1 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_804954C - ldrh r1, [r0] - mov r0, r10 - ands r0, r1 - mov r9, r4 - cmp r0, 0x1 - bne _0804CE32 - adds r5, r6, 0x1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_804954C - ldrh r0, [r0] - mov r4, r10 - ands r4, r0 - cmp r4, 0x1 - bne _0804CE32 - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_804954C - ldrh r0, [r0] - mov r1, r10 - ands r0, r1 - eors r0, r4 - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - str r1, [sp, 0x14] -_0804CE32: - mov r0, r9 - adds r1, r6, 0 - bl sub_804954C - ldrh r1, [r0] - movs r5, 0x3 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0x1 - bne _0804CE70 - subs r4, r6, 0x1 - mov r0, r9 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0x1 - bne _0804CE70 - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0x1 - bne _0804CE70 - movs r2, 0 - str r2, [sp, 0x14] -_0804CE70: - subs r4, r7, 0x1 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_804954C - ldrh r1, [r0] - movs r2, 0x3 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x1 - bne _0804CEB6 - adds r5, r6, 0x1 - adds r0, r4, 0 - adds r1, r5, 0 - str r2, [sp, 0x1C] - bl sub_804954C - ldrh r1, [r0] - ldr r2, [sp, 0x1C] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x1 - bne _0804CEB6 - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_804954C - ldrh r1, [r0] - ldr r2, [sp, 0x1C] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x1 - bne _0804CEB6 - movs r3, 0 - str r3, [sp, 0x14] -_0804CEB6: - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_804954C - ldrh r1, [r0] - movs r2, 0x3 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x1 - bne _0804CEFA - subs r5, r6, 0x1 - adds r0, r4, 0 - adds r1, r5, 0 - str r2, [sp, 0x1C] - bl sub_804954C - ldrh r1, [r0] - ldr r2, [sp, 0x1C] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x1 - bne _0804CEFA - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_804954C - ldrh r1, [r0] - ldr r2, [sp, 0x1C] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x1 - bne _0804CEFA - movs r0, 0 - str r0, [sp, 0x14] -_0804CEFA: - ldr r1, [sp, 0x14] - cmp r1, 0 - beq _0804CF16 - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_8049590 - ldrh r1, [r0] - ldr r3, _0804D018 - adds r2, r3, 0 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] -_0804CF16: - ldr r2, _0804D01C - movs r0, 0x2 - add r0, r8 - mov r9, r0 - movs r1, 0x6 - mov r10, r1 - mov r1, r9 - mov r3, r10 - ands r1, r3 - lsls r1, 2 - adds r1, r2 - movs r3, 0 - ldrsh r0, [r1, r3] - movs r3, 0x2 - ldrsh r1, [r1, r3] - adds r0, r7, r0 - adds r1, r6, r1 - str r2, [sp, 0x1C] - bl sub_804954C - ldrh r1, [r0] - movs r5, 0x3 - adds r0, r5, 0 - ands r0, r1 - ldr r2, [sp, 0x1C] - cmp r0, 0x1 - beq _0804CFFC - mov r4, r8 - subs r4, 0x2 - adds r1, r4, 0 - mov r0, r10 - ands r1, r0 - lsls r1, 2 - adds r1, r2 - movs r2, 0 - ldrsh r0, [r1, r2] - movs r3, 0x2 - ldrsh r1, [r1, r3] - adds r0, r7, r0 - adds r1, r6, r1 - bl sub_804954C - ldrh r1, [r0] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0x1 - beq _0804CFFC - ldr r0, [sp, 0x10] - subs r0, 0x1 - str r0, [sp, 0x10] - cmp r0, 0 - bne _0804CFC0 - movs r0, 0x3 - bl sub_8084100 - adds r0, 0x3 - str r0, [sp, 0x10] - movs r0, 0x64 - bl sub_8084100 - mov r8, r4 - cmp r0, 0x31 - bgt _0804CF96 - mov r8, r9 -_0804CF96: - mov r1, r8 - mov r2, r10 - ands r1, r2 - mov r8, r1 - cmp r7, 0x1F - ble _0804CFAE - ldr r0, _0804D020 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0804CFAE - cmp r1, 0x2 - beq _0804CFFC -_0804CFAE: - cmp r7, 0x2F - ble _0804CFC0 - ldr r0, _0804D020 - ldrb r0, [r0] - cmp r0, 0x2 - bne _0804CFC0 - mov r3, r8 - cmp r3, 0x2 - beq _0804CFFC -_0804CFC0: - ldr r0, _0804D01C - mov r2, r8 - lsls r1, r2, 2 - adds r1, r0 - movs r3, 0 - ldrsh r0, [r1, r3] - adds r7, r0 - movs r2, 0x2 - ldrsh r0, [r1, r2] - adds r6, r0 -_0804CFD4: - cmp r7, 0x1 - ble _0804CFFC - cmp r6, 0x1 - ble _0804CFFC - cmp r7, 0x36 - bgt _0804CFFC - cmp r6, 0x1E - bgt _0804CFFC - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_804954C - ldrh r1, [r0] - movs r3, 0x3 - mov r10, r3 - mov r0, r10 - ands r0, r1 - cmp r0, 0x1 - beq _0804CFFC - b _0804CDD8 -_0804CFFC: - ldr r5, [sp, 0x18] - ldr r0, [sp, 0xC] - cmp r5, r0 - bge _0804D006 - b _0804CC0E -_0804D006: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804D018: .4byte 0x0000fffc -_0804D01C: .4byte gUnknown_80F4448 -_0804D020: .4byte gUnknown_202F1AE - thumb_func_end sub_804CBEC - - thumb_func_start sub_804D024 -sub_804D024: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - mov r8, r1 - adds r5, r2, 0 - adds r6, r3, 0 - movs r4, 0 - cmp r4, r5 - bge _0804D04E - movs r0, 0x38 - adds r1, r5, 0 - bl __divsi3 - adds r2, r7, 0 - adds r1, r5, 0 -_0804D044: - stm r2!, {r4} - adds r4, r0 - subs r1, 0x1 - cmp r1, 0 - bne _0804D044 -_0804D04E: - lsls r0, r5, 2 - adds r0, r7 - str r4, [r0] - movs r4, 0 - lsls r5, r6, 2 - cmp r4, r6 - bge _0804D072 - movs r0, 0x20 - adds r1, r6, 0 - bl __divsi3 - mov r2, r8 - adds r1, r6, 0 -_0804D068: - stm r2!, {r4} - adds r4, r0 - subs r1, 0x1 - cmp r1, 0 - bne _0804D068 -_0804D072: - mov r1, r8 - adds r0, r5, r1 - str r4, [r0] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804D024 - - thumb_func_start sub_804D084 -sub_804D084: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r8, r0 - adds r5, r1, 0 - mov r9, r2 - movs r2, 0 - cmp r2, r5 - bge _0804D144 - lsrs r0, r5, 31 - adds r0, r5, r0 - asrs r0, 1 - str r0, [sp] - movs r3, 0 -_0804D0A6: - adds r0, r2, 0x1 - mov r10, r0 - mov r4, r9 - cmp r4, 0 - ble _0804D13E - ldr r6, _0804D0D8 - ldrb r6, [r6] - str r6, [sp, 0x4] - lsls r0, r2, 4 - subs r0, r2 - lsls r0, 5 - mov r4, r8 - adds r1, r0, r4 - movs r7, 0 - movs r6, 0x1 - mov r12, r6 - mov r4, r9 -_0804D0C8: - ldr r0, [sp, 0x4] - cmp r0, 0x1 - bne _0804D0DC - ldr r6, [sp] - cmp r2, r6 - blt _0804D0DC - strb r0, [r1, 0x8] - b _0804D102 - .align 2, 0 -_0804D0D8: .4byte gUnknown_202F1AE -_0804D0DC: - ldr r6, _0804D0FC - ldrb r0, [r6] - cmp r0, 0x2 - bne _0804D100 - lsls r0, r5, 1 - adds r0, r5 - cmp r0, 0 - bge _0804D0EE - adds r0, 0x3 -_0804D0EE: - asrs r0, 2 - cmp r2, r0 - blt _0804D100 - mov r0, r12 - strb r0, [r1, 0x8] - b _0804D102 - .align 2, 0 -_0804D0FC: .4byte gUnknown_202F1AE -_0804D100: - strb r3, [r1, 0x8] -_0804D102: - lsls r0, r2, 4 - subs r0, r2 - lsls r0, 5 - add r0, r8 - adds r0, r7, r0 - mov r6, r12 - strb r6, [r0, 0xA] - strb r3, [r0, 0xB] - strb r3, [r0, 0xF] - strb r3, [r0, 0xE] - strb r3, [r0, 0xC] - strb r3, [r0, 0x16] - strb r3, [r0, 0x15] - strb r3, [r0, 0x14] - strb r3, [r0, 0x13] - strb r3, [r0, 0x1A] - strb r3, [r0, 0x19] - strb r3, [r0, 0x18] - strb r3, [r0, 0x17] - strb r3, [r0, 0x9] - strb r3, [r0, 0x11] - strb r3, [r0, 0x10] - strb r3, [r0, 0x12] - strb r3, [r0, 0x1C] - strb r3, [r0, 0x1D] - adds r1, 0x20 - adds r7, 0x20 - subs r4, 0x1 - cmp r4, 0 - bne _0804D0C8 -_0804D13E: - mov r2, r10 - cmp r2, r5 - blt _0804D0A6 -_0804D144: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804D084 - - thumb_func_start sub_804D154 -sub_804D154: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x114 - str r0, [sp, 0x100] - mov r9, r1 - mov r8, r2 - adds r4, r3, 0 - movs r0, 0x3 - bl sub_8084100 - adds r3, r0, 0 - cmp r4, 0 - bge _0804D17E - negs r4, r4 - b _0804D180 -_0804D178: - movs r0, 0x1 - strb r0, [r4, 0xA] - b _0804D2B6 -_0804D17E: - adds r4, r3 -_0804D180: - movs r3, 0 - mov r0, r8 - mov r2, r9 - muls r2, r0 - cmp r3, r4 - bge _0804D19A - movs r1, 0x1 -_0804D18E: - mov r5, sp - adds r0, r5, r3 - strb r1, [r0] - adds r3, 0x1 - cmp r3, r4 - blt _0804D18E -_0804D19A: - cmp r3, 0xFF - bgt _0804D1AC - movs r1, 0 -_0804D1A0: - mov r6, sp - adds r0, r6, r3 - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0xFF - ble _0804D1A0 -_0804D1AC: - adds r5, r2, 0 - movs r6, 0x3F -_0804D1B0: - adds r0, r5, 0 - bl sub_8084100 - adds r4, r0, 0 - adds r0, r5, 0 - bl sub_8084100 - mov r1, sp - adds r2, r1, r4 - ldrb r3, [r2] - adds r1, r0 - ldrb r0, [r1] - strb r0, [r2] - strb r3, [r1] - subs r6, 0x1 - cmp r6, 0 - bge _0804D1B0 - movs r3, 0 - ldr r0, _0804D24C - str r3, [r0] - movs r7, 0 - mov r12, r0 - cmp r7, r9 - bge _0804D262 -_0804D1E0: - movs r5, 0 - adds r4, r7, 0x1 - str r4, [sp, 0x104] - cmp r5, r8 - bge _0804D25C - lsls r2, r7, 4 - subs r2, r7 - lsls r2, 5 - ldr r6, [sp, 0x100] - adds r0, r2, r6 - mov r1, r9 - movs r4, 0x1 - ands r1, r4 - str r1, [sp, 0x110] - mov r1, r9 - subs r1, 0x1 - adds r0, 0x20 - mov r10, r0 - adds r0, r6, 0 - adds r0, 0x8 - adds r2, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 -_0804D210: - ldrb r4, [r2] - cmp r4, 0 - bne _0804D254 - mov r6, r12 - ldr r0, [r6] - cmp r0, 0x1F - ble _0804D220 - strb r4, [r2, 0x2] -_0804D220: - mov r6, sp - adds r0, r6, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0804D250 - movs r0, 0x1 - strb r0, [r2, 0x2] - mov r6, r12 - ldr r0, [r6] - adds r0, 0x1 - str r0, [r6] - ldr r0, [sp, 0x110] - cmp r0, 0 - beq _0804D252 - cmp r7, r1 - bne _0804D252 - cmp r5, 0x1 - bne _0804D252 - mov r6, r10 - strb r4, [r6, 0xA] - b _0804D252 - .align 2, 0 -_0804D24C: .4byte gUnknown_202F1CC -_0804D250: - strb r0, [r2, 0x2] -_0804D252: - adds r3, 0x1 -_0804D254: - adds r2, 0x20 - adds r5, 0x1 - cmp r5, r8 - blt _0804D210 -_0804D25C: - ldr r7, [sp, 0x104] - cmp r7, r9 - blt _0804D1E0 -_0804D262: - mov r1, r12 - ldr r0, [r1] - cmp r0, 0x1 - bgt _0804D2BC - movs r1, 0 - movs r2, 0 -_0804D26E: - movs r7, 0 - cmp r2, r9 - bge _0804D2AC - movs r6, 0 -_0804D276: - movs r5, 0 - cmp r5, r8 - bge _0804D2A4 - lsls r0, r6, 5 - ldr r3, [sp, 0x100] - adds r4, r0, r3 -_0804D282: - ldrb r0, [r4, 0x8] - cmp r0, 0 - bne _0804D29C - movs r0, 0x64 - str r1, [sp, 0x108] - str r2, [sp, 0x10C] - bl sub_8084100 - ldr r1, [sp, 0x108] - ldr r2, [sp, 0x10C] - cmp r0, 0x3B - bgt _0804D29C - b _0804D178 -_0804D29C: - adds r4, 0x20 - adds r5, 0x1 - cmp r5, r8 - blt _0804D282 -_0804D2A4: - adds r6, 0xF - adds r7, 0x1 - cmp r7, r9 - blt _0804D276 -_0804D2AC: - cmp r2, 0 - bne _0804D2B6 - adds r1, 0x1 - cmp r1, 0xC7 - ble _0804D26E -_0804D2B6: - ldr r1, _0804D2CC - movs r0, 0 - strb r0, [r1] -_0804D2BC: - add sp, 0x114 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804D2CC: .4byte gUnknown_202F1AD - thumb_func_end sub_804D154 - - thumb_func_start sub_804D2D0 -sub_804D2D0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x38 - str r0, [sp] - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r3, [sp, 0xC] - movs r0, 0 - str r0, [sp, 0x10] - movs r1, 0 - str r1, [sp, 0x14] - cmp r1, r2 - blt _0804D2F2 - b _0804D520 -_0804D2F2: - movs r2, 0 - mov r10, r2 - ldr r3, [sp, 0x14] - adds r3, 0x1 - str r3, [sp, 0x28] - ldr r4, [sp, 0x4] - cmp r10, r4 - blt _0804D304 - b _0804D514 -_0804D304: - ldr r5, [sp, 0x14] - lsls r5, 5 - str r5, [sp, 0x1C] -_0804D30A: - mov r1, r10 - lsls r0, r1, 2 - ldr r2, [sp, 0xC] - adds r0, r2 - ldr r3, [r0] - adds r4, r3, 0x2 - mov r9, r4 - ldr r5, [sp, 0x14] - lsls r1, r5, 2 - ldr r2, [sp, 0x58] - adds r1, r2 - ldr r2, [r1] - adds r4, r2, 0x2 - str r4, [sp, 0x18] - ldr r0, [r0, 0x4] - subs r0, r3 - subs r4, r0, 0x4 - ldr r0, [r1, 0x4] - subs r0, r2 - subs r0, 0x3 - mov r8, r0 - mov r5, r10 - lsls r1, r5, 4 - subs r0, r1, r5 - lsls r0, 5 - ldr r2, [sp] - adds r0, r2 - ldr r3, [sp, 0x1C] - adds r7, r3, r0 - ldrb r0, [r7, 0x8] - str r1, [sp, 0x2C] - adds r5, 0x1 - str r5, [sp, 0x24] - cmp r0, 0 - beq _0804D352 - b _0804D508 -_0804D352: - ldrb r0, [r7, 0xA] - cmp r0, 0 - bne _0804D35A - b _0804D48C -_0804D35A: - movs r0, 0x5 - adds r1, r4, 0 - bl sub_808411C - adds r6, r0, 0 - movs r0, 0x4 - mov r1, r8 - bl sub_808411C - adds r5, r0, 0 - movs r1, 0x1 - adds r0, r6, 0 - orrs r0, r1 - cmp r0, r4 - bge _0804D37A - adds r6, r0, 0 -_0804D37A: - adds r0, r5, 0 - orrs r0, r1 - cmp r0, r8 - bge _0804D384 - adds r5, r0, 0 -_0804D384: - lsls r0, r5, 1 - adds r0, r5 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - cmp r6, r0 - ble _0804D394 - adds r6, r0, 0 -_0804D394: - lsls r0, r6, 1 - adds r0, r6 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - cmp r5, r0 - ble _0804D3A4 - adds r5, r0, 0 -_0804D3A4: - subs r0, r4, r6 - bl sub_8084100 - adds r4, r0, 0 - add r4, r9 - mov r1, r8 - subs r0, r1, r5 - bl sub_8084100 - ldr r2, [sp, 0x18] - adds r0, r2 - mov r8, r0 - adds r3, r4, r6 - adds r6, r0, r5 - strh r4, [r7] - strh r3, [r7, 0x4] - mov r5, r8 - strh r5, [r7, 0x2] - strh r6, [r7, 0x6] - ldr r0, [sp, 0x10] - adds r0, 0x1 - str r0, [sp, 0x20] - cmp r4, r3 - bge _0804D412 -_0804D3D4: - mov r5, r8 - adds r7, r4, 0x1 - cmp r5, r6 - bge _0804D40C - ldr r1, _0804D484 - mov r9, r1 -_0804D3E0: - adds r0, r4, 0 - adds r1, r5, 0 - str r3, [sp, 0x34] - bl sub_8049590 - ldrh r1, [r0] - mov r2, r9 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - mov r1, sp - ldrb r1, [r1, 0x10] - strb r1, [r0, 0x9] - adds r5, 0x1 - ldr r3, [sp, 0x34] - cmp r5, r6 - blt _0804D3E0 -_0804D40C: - adds r4, r7, 0 - cmp r4, r3 - blt _0804D3D4 -_0804D412: - movs r5, 0x1 - movs r0, 0x64 - bl sub_8084100 - movs r1, 0 - cmp r0, 0x4F - bgt _0804D422 - movs r1, 0x1 -_0804D422: - adds r4, r1, 0 - ldr r0, _0804D488 - ldr r0, [r0] - cmp r0, 0 - bne _0804D42E - movs r4, 0 -_0804D42E: - movs r0, 0x4 - ldr r2, [sp, 0x5C] - ands r0, r2 - cmp r0, 0 - bne _0804D43A - movs r5, 0 -_0804D43A: - cmp r5, 0 - beq _0804D466 - cmp r4, 0 - beq _0804D44E - movs r0, 0x64 - bl sub_8084100 - cmp r0, 0x31 - ble _0804D466 - movs r4, 0 -_0804D44E: - cmp r5, 0 - beq _0804D466 - ldr r3, [sp, 0x2C] - mov r5, r10 - subs r0, r3, r5 - lsls r0, 5 - ldr r1, [sp] - adds r0, r1 - ldr r2, [sp, 0x1C] - adds r0, r2, r0 - movs r1, 0x1 - strb r1, [r0, 0x1C] -_0804D466: - cmp r4, 0 - beq _0804D47E - ldr r3, [sp, 0x2C] - mov r4, r10 - subs r0, r3, r4 - lsls r0, 5 - ldr r5, [sp] - adds r0, r5 - ldr r1, [sp, 0x1C] - adds r0, r1, r0 - movs r1, 0x1 - strb r1, [r0, 0x1D] -_0804D47E: - ldr r2, [sp, 0x20] - str r2, [sp, 0x10] - b _0804D508 - .align 2, 0 -_0804D484: .4byte 0x0000fffc -_0804D488: .4byte gUnknown_202F1C8 -_0804D48C: - movs r1, 0x2 - movs r3, 0x4 - movs r6, 0x2 - movs r2, 0x4 - mov r5, r10 - cmp r5, 0 - bne _0804D49C - movs r1, 0x1 -_0804D49C: - ldr r0, [sp, 0x14] - cmp r0, 0 - bne _0804D4A4 - movs r6, 0x1 -_0804D4A4: - ldr r0, [sp, 0x4] - subs r0, 0x1 - cmp r10, r0 - bne _0804D4AE - movs r3, 0x2 -_0804D4AE: - ldr r0, [sp, 0x8] - subs r0, 0x1 - ldr r5, [sp, 0x14] - cmp r5, r0 - bne _0804D4BA - movs r2, 0x2 -_0804D4BA: - mov r5, r9 - adds r0, r5, r1 - adds r1, r5, r4 - subs r1, r3 - str r2, [sp, 0x30] - bl sub_808411C - adds r5, r0, 0 - ldr r1, [sp, 0x18] - adds r0, r1, r6 - add r1, r8 - ldr r2, [sp, 0x30] - subs r1, r2 - bl sub_808411C - adds r4, r0, 0 - strh r5, [r7] - adds r0, r5, 0x1 - strh r0, [r7, 0x4] - strh r4, [r7, 0x2] - adds r0, r4, 0x1 - strh r0, [r7, 0x6] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r1, [r0] - ldr r3, _0804D530 - adds r2, r3, 0 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0xFE - strb r1, [r0, 0x9] -_0804D508: - ldr r4, [sp, 0x24] - mov r10, r4 - ldr r5, [sp, 0x4] - cmp r10, r5 - bge _0804D514 - b _0804D30A -_0804D514: - ldr r0, [sp, 0x28] - str r0, [sp, 0x14] - ldr r1, [sp, 0x8] - cmp r0, r1 - bge _0804D520 - b _0804D2F2 -_0804D520: - add sp, 0x38 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804D530: .4byte 0x0000fffc - thumb_func_end sub_804D2D0 - - thumb_func_start sub_804D534 -sub_804D534: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r3, r0, 0 - adds r7, r1, 0 - mov r9, r2 - movs r1, 0 - cmp r1, r9 - bge _0804D5A0 -_0804D54A: - adds r0, r1, 0x1 - mov r8, r0 - cmp r7, 0 - ble _0804D59A - lsls r1, 5 - adds r0, r1, 0 - adds r0, 0x8 - adds r4, r3, r0 - adds r5, r3, r1 - adds r6, r7, 0 -_0804D55E: - ldrb r0, [r4] - cmp r0, 0 - bne _0804D58C - ldrb r0, [r4, 0x6] - cmp r0, 0 - bne _0804D58C - ldrb r0, [r4, 0xA] - cmp r0, 0 - bne _0804D58C - ldrb r0, [r4, 0x2] - cmp r0, 0 - beq _0804D58C - ldrb r0, [r4, 0x14] - cmp r0, 0 - bne _0804D58C - ldrb r0, [r4, 0x15] - cmp r0, 0 - beq _0804D58C - adds r0, r5, 0 - str r3, [sp] - bl sub_804F694 - ldr r3, [sp] -_0804D58C: - movs r0, 0xF0 - lsls r0, 1 - adds r4, r0 - adds r5, r0 - subs r6, 0x1 - cmp r6, 0 - bne _0804D55E -_0804D59A: - mov r1, r8 - cmp r1, r9 - blt _0804D54A -_0804D5A0: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804D534 - - thumb_func_start sub_804D5B0 -sub_804D5B0: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x8 - mov r9, r0 - adds r4, r1, 0 - adds r5, r2, 0 - adds r6, r3, 0 - adds r0, r4, 0 - bl sub_8084100 - mov r8, r0 - adds r0, r5, 0 - bl sub_8084100 - str r0, [sp] - str r6, [sp, 0x4] - mov r0, r9 - adds r1, r4, 0 - adds r2, r5, 0 - mov r3, r8 - bl sub_804D5F0 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_804D5B0 - - thumb_func_start sub_804D5F0 -sub_804D5F0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - str r0, [sp] - str r1, [sp, 0x4] - str r2, [sp, 0x8] - adds r7, r3, 0 - ldr r6, [sp, 0x40] - ldr r0, [sp, 0x44] - ldrb r0, [r0, 0x5] - str r0, [sp, 0xC] - movs r0, 0x4 - bl sub_8084100 - adds r5, r0, 0 - movs r1, 0 - mov r10, r1 - ldr r2, [sp, 0xC] - cmp r10, r2 - blt _0804D620 - b _0804D726 -_0804D620: - lsls r4, r6, 5 - mov r9, r4 - lsls r0, r7, 4 - subs r0, r7 - lsls r0, 5 - ldr r1, [sp] - adds r0, r1 - mov r8, r0 -_0804D630: - movs r0, 0x8 - bl sub_8084100 - adds r4, r0, 0 - movs r0, 0x4 - bl sub_8084100 - cmp r4, 0x3 - bgt _0804D644 - adds r5, r0, 0 -_0804D644: - mov r4, r10 - adds r4, 0x1 -_0804D648: - movs r1, 0 - movs r0, 0x3 - ands r0, r5 - cmp r0, 0x1 - beq _0804D670 - cmp r0, 0x1 - bgt _0804D65C - cmp r0, 0 - beq _0804D666 - b _0804D686 -_0804D65C: - cmp r0, 0x2 - beq _0804D676 - cmp r0, 0x3 - beq _0804D67C - b _0804D686 -_0804D666: - ldr r0, [sp, 0x4] - subs r0, 0x1 - cmp r7, r0 - blt _0804D68A - b _0804D684 -_0804D670: - cmp r6, 0 - bgt _0804D68A - b _0804D684 -_0804D676: - cmp r7, 0 - bgt _0804D68A - b _0804D684 -_0804D67C: - ldr r0, [sp, 0x8] - subs r0, 0x1 - cmp r6, r0 - blt _0804D68A -_0804D684: - adds r5, 0x1 -_0804D686: - cmp r1, 0 - beq _0804D648 -_0804D68A: - movs r1, 0x3 - ands r1, r5 - cmp r1, 0x1 - beq _0804D6C6 - cmp r1, 0x1 - bgt _0804D69C - cmp r1, 0 - beq _0804D6A6 - b _0804D71E -_0804D69C: - cmp r1, 0x2 - beq _0804D6E2 - cmp r1, 0x3 - beq _0804D704 - b _0804D71E -_0804D6A6: - mov r1, r9 - add r1, r8 - movs r0, 0xF0 - lsls r0, 1 - adds r2, r1, r0 - ldrb r0, [r2, 0x8] - cmp r0, 0 - bne _0804D71E - movs r0, 0x1 - strb r0, [r1, 0x16] - strb r0, [r2, 0x15] - movs r1, 0xF0 - lsls r1, 1 - add r8, r1 - adds r7, 0x1 - b _0804D71E -_0804D6C6: - mov r2, r9 - add r2, r8 - adds r3, r2, 0 - subs r3, 0x20 - ldrb r0, [r3, 0x8] - cmp r0, 0 - bne _0804D71E - strb r1, [r2, 0x13] - strb r1, [r3, 0x14] - movs r2, 0x20 - negs r2, r2 - add r9, r2 - subs r6, 0x1 - b _0804D71E -_0804D6E2: - mov r1, r9 - add r1, r8 - ldr r0, _0804D700 - adds r2, r1, r0 - ldrb r0, [r2, 0x8] - cmp r0, 0 - bne _0804D71E - movs r0, 0x1 - strb r0, [r1, 0x15] - strb r0, [r2, 0x16] - ldr r1, _0804D700 - add r8, r1 - subs r7, 0x1 - b _0804D71E - .align 2, 0 -_0804D700: .4byte 0xfffffe20 -_0804D704: - mov r1, r9 - add r1, r8 - adds r2, r1, 0 - adds r2, 0x20 - ldrb r0, [r2, 0x8] - cmp r0, 0 - bne _0804D71E - movs r0, 0x1 - strb r0, [r1, 0x14] - strb r0, [r2, 0x13] - movs r1, 0x20 - add r9, r1 - adds r6, 0x1 -_0804D71E: - mov r10, r4 - ldr r2, [sp, 0xC] - cmp r10, r2 - blt _0804D630 -_0804D726: - ldr r4, [sp, 0x44] - ldrb r0, [r4, 0xB] - cmp r0, 0 - beq _0804D730 - b _0804D8B8 -_0804D730: - movs r0, 0 - mov r9, r0 - movs r7, 0 - ldr r1, [sp, 0x4] - cmp r9, r1 - blt _0804D73E - b _0804D8B0 -_0804D73E: - movs r2, 0x1 - mov r8, r2 -_0804D742: - movs r6, 0 - adds r4, r7, 0x1 - str r4, [sp, 0x14] - ldr r0, [sp, 0x8] - cmp r6, r0 - blt _0804D750 - b _0804D8A6 -_0804D750: - lsls r1, r7, 4 - str r1, [sp, 0x10] - subs r0, r1, r7 - lsls r0, 5 - ldr r2, [sp] - adds r3, r0, r2 -_0804D75C: - lsls r0, r6, 5 - adds r2, r0, r3 - ldrb r1, [r2, 0x8] - adds r4, r0, 0 - adds r0, r6, 0x1 - str r0, [sp, 0x18] - cmp r1, 0 - beq _0804D76E - b _0804D89C -_0804D76E: - ldrb r0, [r2, 0xA] - cmp r0, 0 - beq _0804D776 - b _0804D89C -_0804D776: - ldrb r0, [r2, 0x13] - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - ldrb r0, [r2, 0x14] - cmp r0, 0 - beq _0804D786 - adds r1, 0x1 -_0804D786: - ldrb r0, [r2, 0x15] - cmp r0, 0 - beq _0804D78E - adds r1, 0x1 -_0804D78E: - ldrb r0, [r2, 0x16] - cmp r0, 0 - beq _0804D796 - adds r1, 0x1 -_0804D796: - cmp r1, 0x1 - beq _0804D79C - b _0804D89C -_0804D79C: - movs r0, 0x4 - str r3, [sp, 0x1C] - bl sub_8084100 - adds r5, r0, 0 - movs r2, 0 - mov r10, r2 - ldr r1, [sp, 0x10] - subs r0, r1, r7 - lsls r0, 5 - ldr r1, [sp] - adds r0, r1 - adds r1, r4, r0 - ldr r3, [sp, 0x1C] -_0804D7B8: - movs r0, 0x3 - ands r0, r5 - cmp r0, 0x1 - beq _0804D7E0 - cmp r0, 0x1 - bgt _0804D7CA - cmp r0, 0 - beq _0804D7D4 - b _0804D800 -_0804D7CA: - cmp r0, 0x2 - beq _0804D7E8 - cmp r0, 0x3 - beq _0804D7F0 - b _0804D800 -_0804D7D4: - ldr r0, [sp, 0x4] - subs r0, 0x1 - cmp r7, r0 - bge _0804D7FE - ldrb r0, [r1, 0x16] - b _0804D7FA -_0804D7E0: - cmp r6, 0 - ble _0804D7FE - ldrb r0, [r1, 0x13] - b _0804D7FA -_0804D7E8: - cmp r7, 0 - ble _0804D7FE - ldrb r0, [r1, 0x15] - b _0804D7FA -_0804D7F0: - ldr r0, [sp, 0x8] - subs r0, 0x1 - cmp r6, r0 - bge _0804D7FE - ldrb r0, [r1, 0x14] -_0804D7FA: - cmp r0, 0 - beq _0804D80E -_0804D7FE: - adds r5, 0x1 -_0804D800: - mov r0, r10 - cmp r0, 0 - bne _0804D80E - adds r2, 0x1 - cmp r2, 0x7 - ble _0804D7B8 - b _0804D89C -_0804D80E: - movs r2, 0x3 - ands r2, r5 - cmp r2, 0x1 - beq _0804D844 - cmp r2, 0x1 - bgt _0804D820 - cmp r2, 0 - beq _0804D82A - b _0804D89C -_0804D820: - cmp r2, 0x2 - beq _0804D85C - cmp r2, 0x3 - beq _0804D880 - b _0804D89C -_0804D82A: - adds r1, r4, r3 - movs r4, 0xF0 - lsls r4, 1 - adds r2, r1, r4 - ldrb r0, [r2, 0x8] - cmp r0, 0 - bne _0804D89C - mov r0, r8 - strb r0, [r1, 0x16] - strb r0, [r2, 0x15] - movs r1, 0x1 - mov r9, r1 - b _0804D89C -_0804D844: - adds r1, r4, r3 - movs r4, 0xF0 - lsls r4, 1 - adds r0, r1, r4 - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _0804D89C - strb r2, [r1, 0x13] - adds r0, r1, 0 - subs r0, 0x20 - strb r2, [r0, 0x14] - b _0804D898 -_0804D85C: - adds r1, r4, r3 - movs r2, 0xF0 - lsls r2, 1 - adds r0, r1, r2 - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _0804D89C - mov r4, r8 - strb r4, [r1, 0x15] - ldr r2, _0804D87C - adds r0, r1, r2 - strb r4, [r0, 0x16] - movs r4, 0x1 - mov r9, r4 - b _0804D89C - .align 2, 0 -_0804D87C: .4byte 0xfffffe20 -_0804D880: - adds r1, r4, r3 - movs r2, 0xF0 - lsls r2, 1 - adds r0, r1, r2 - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _0804D89C - mov r4, r8 - strb r4, [r1, 0x14] - adds r0, r1, 0 - adds r0, 0x20 - strb r4, [r0, 0x13] -_0804D898: - movs r0, 0x1 - mov r9, r0 -_0804D89C: - ldr r6, [sp, 0x18] - ldr r1, [sp, 0x8] - cmp r6, r1 - bge _0804D8A6 - b _0804D75C -_0804D8A6: - ldr r7, [sp, 0x14] - ldr r2, [sp, 0x4] - cmp r7, r2 - bge _0804D8B0 - b _0804D742 -_0804D8B0: - mov r4, r9 - cmp r4, 0 - beq _0804D8B8 - b _0804D730 -_0804D8B8: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804D5F0 - - thumb_func_start sub_804D8C8 -sub_804D8C8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x58 - str r0, [sp, 0xC] - str r1, [sp, 0x10] - str r2, [sp, 0x14] - str r3, [sp, 0x18] - ldr r0, [sp, 0x7C] - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x1C] - movs r0, 0 - str r0, [sp, 0x20] - cmp r0, r1 - bge _0804D968 -_0804D8EC: - movs r1, 0 - mov r10, r1 - ldr r2, [sp, 0x20] - adds r2, 0x1 - str r2, [sp, 0x38] - ldr r3, [sp, 0x14] - cmp r10, r3 - bge _0804D95E - ldr r4, [sp, 0x20] - lsls r1, r4, 4 - subs r1, r4 - movs r3, 0 - lsls r1, 5 - ldr r0, [sp, 0xC] - adds r0, 0x8 - adds r1, r0 -_0804D90C: - ldrb r2, [r1] - cmp r2, 0 - beq _0804D91C - strb r3, [r1, 0xF] - strb r3, [r1, 0x10] - strb r3, [r1, 0x11] - strb r3, [r1, 0x12] - b _0804D952 -_0804D91C: - ldr r5, [sp, 0x20] - cmp r5, 0 - bgt _0804D924 - strb r2, [r1, 0xD] -_0804D924: - mov r6, r10 - cmp r6, 0 - bgt _0804D92C - strb r2, [r1, 0xB] -_0804D92C: - ldr r0, [sp, 0x10] - subs r0, 0x1 - ldr r7, [sp, 0x20] - cmp r7, r0 - blt _0804D938 - strb r2, [r1, 0xE] -_0804D938: - ldr r0, [sp, 0x14] - subs r0, 0x1 - cmp r10, r0 - blt _0804D942 - strb r2, [r1, 0xC] -_0804D942: - ldrb r0, [r1, 0xB] - strb r0, [r1, 0xF] - ldrb r0, [r1, 0xC] - strb r0, [r1, 0x10] - ldrb r0, [r1, 0xD] - strb r0, [r1, 0x11] - ldrb r0, [r1, 0xE] - strb r0, [r1, 0x12] -_0804D952: - adds r1, 0x20 - movs r0, 0x1 - add r10, r0 - ldr r2, [sp, 0x14] - cmp r10, r2 - blt _0804D90C -_0804D95E: - ldr r3, [sp, 0x38] - str r3, [sp, 0x20] - ldr r4, [sp, 0x10] - cmp r3, r4 - blt _0804D8EC -_0804D968: - movs r5, 0 - str r5, [sp, 0x20] - ldr r6, [sp, 0x10] - cmp r5, r6 - blt _0804D974 - b _0804DBC6 -_0804D974: - movs r7, 0 - mov r10, r7 - ldr r0, [sp, 0x20] - adds r0, 0x1 - str r0, [sp, 0x38] - ldr r1, [sp, 0x14] - cmp r10, r1 - blt _0804D986 - b _0804DBBA -_0804D986: - ldr r2, [sp, 0x20] - lsls r2, 4 - str r2, [sp, 0x40] - ldr r3, [sp, 0x20] - subs r1, r2, r3 - lsls r1, 5 - movs r4, 0 - str r4, [sp, 0x48] - ldr r5, [sp, 0xC] - movs r6, 0xF0 - lsls r6, 1 - adds r0, r5, r6 - adds r0, r1 - mov r8, r0 - adds r5, r1, r5 - ldr r7, [sp, 0xC] - ldr r2, _0804DA0C - adds r0, r7, r2 - adds r7, r1, r0 - ldr r3, [sp, 0x78] - str r3, [sp, 0x4C] - ldr r0, [sp, 0xC] - adds r0, 0x20 - adds r0, r1, r0 - str r0, [sp, 0x50] - ldr r0, [sp, 0xC] - subs r0, 0x20 - adds r6, r1, r0 - ldr r4, [sp, 0x20] - lsls r0, r4, 2 - ldr r1, [sp, 0x18] - adds r0, r1 - str r0, [sp, 0x24] -_0804D9C8: - ldr r2, [sp, 0x20] - lsls r0, r2, 4 - subs r0, r2 - lsls r0, 5 - ldr r3, [sp, 0xC] - adds r0, r3 - ldr r1, [sp, 0x48] - adds r4, r1, r0 - ldrb r0, [r4, 0x8] - cmp r0, 0 - beq _0804D9E0 - b _0804DB92 -_0804D9E0: - ldrb r0, [r4, 0xA] - cmp r0, 0 - beq _0804DA10 - movs r2, 0 - ldrsh r0, [r4, r2] - adds r0, 0x1 - movs r3, 0x4 - ldrsh r1, [r4, r3] - subs r1, 0x1 - bl sub_808411C - mov r9, r0 - movs r1, 0x2 - ldrsh r0, [r4, r1] - adds r0, 0x1 - movs r2, 0x6 - ldrsh r1, [r4, r2] - subs r1, 0x1 - bl sub_808411C - adds r4, r0, 0 - b _0804DA1A - .align 2, 0 -_0804DA0C: .4byte 0xfffffe20 -_0804DA10: - movs r0, 0 - ldrsh r3, [r4, r0] - mov r9, r3 - movs r1, 0x2 - ldrsh r4, [r4, r1] -_0804DA1A: - ldrb r0, [r5, 0x17] - cmp r0, 0 - beq _0804DA74 - ldrb r0, [r6, 0x8] - cmp r0, 0 - bne _0804DA68 - ldrb r0, [r6, 0xA] - cmp r0, 0 - beq _0804DA40 - movs r2, 0 - ldrsh r0, [r6, r2] - adds r0, 0x1 - movs r3, 0x4 - ldrsh r1, [r6, r3] - subs r1, 0x1 - bl sub_808411C - adds r2, r0, 0 - b _0804DA44 -_0804DA40: - movs r0, 0 - ldrsh r2, [r6, r0] -_0804DA44: - movs r3, 0x2 - ldrsh r1, [r5, r3] - movs r0, 0x6 - ldrsh r3, [r6, r0] - subs r3, 0x1 - mov r12, r3 - movs r3, 0x1 - str r3, [sp] - ldr r3, [sp, 0x24] - ldr r0, [r3] - str r0, [sp, 0x4] - ldr r3, [sp, 0x4C] - ldr r0, [r3] - str r0, [sp, 0x8] - mov r0, r9 - mov r3, r12 - bl sub_804E328 -_0804DA68: - movs r0, 0 - strb r0, [r5, 0x17] - strb r0, [r6, 0x18] - movs r1, 0x1 - strb r1, [r5, 0xB] - strb r1, [r6, 0xB] -_0804DA74: - ldrb r0, [r5, 0x18] - cmp r0, 0 - beq _0804DAD4 - ldr r2, [sp, 0x50] - ldrb r0, [r2, 0x8] - cmp r0, 0 - bne _0804DAC6 - ldrb r0, [r2, 0xA] - cmp r0, 0 - beq _0804DA9C - movs r3, 0x20 - ldrsh r0, [r5, r3] - adds r0, 0x1 - movs r2, 0x24 - ldrsh r1, [r5, r2] - subs r1, 0x1 - bl sub_808411C - adds r2, r0, 0 - b _0804DAA0 -_0804DA9C: - movs r3, 0x20 - ldrsh r2, [r5, r3] -_0804DAA0: - movs r0, 0x6 - ldrsh r1, [r5, r0] - subs r1, 0x1 - movs r0, 0x22 - ldrsh r3, [r5, r0] - mov r12, r3 - movs r3, 0x1 - str r3, [sp] - ldr r3, [sp, 0x24] - ldr r0, [r3] - str r0, [sp, 0x4] - ldr r3, [sp, 0x4C] - ldr r0, [r3, 0x4] - subs r0, 0x1 - str r0, [sp, 0x8] - mov r0, r9 - mov r3, r12 - bl sub_804E328 -_0804DAC6: - movs r0, 0 - strb r0, [r5, 0x18] - ldr r1, [sp, 0x50] - strb r0, [r1, 0x17] - movs r2, 0x1 - strb r2, [r5, 0xB] - strb r2, [r1, 0xB] -_0804DAD4: - ldrb r0, [r5, 0x19] - cmp r0, 0 - beq _0804DB2E - ldrb r0, [r7, 0x8] - cmp r0, 0 - bne _0804DB22 - ldrb r0, [r7, 0xA] - cmp r0, 0 - beq _0804DAFA - movs r3, 0x2 - ldrsh r0, [r7, r3] - adds r0, 0x1 - movs r2, 0x6 - ldrsh r1, [r7, r2] - subs r1, 0x1 - bl sub_808411C - adds r3, r0, 0 - b _0804DAFE -_0804DAFA: - movs r0, 0x2 - ldrsh r3, [r7, r0] -_0804DAFE: - movs r1, 0 - ldrsh r0, [r5, r1] - movs r1, 0 - ldrsh r2, [r7, r1] - subs r2, 0x1 - mov r9, r2 - movs r2, 0 - str r2, [sp] - ldr r2, [sp, 0x24] - ldr r1, [r2] - str r1, [sp, 0x4] - ldr r2, [sp, 0x4C] - ldr r1, [r2] - str r1, [sp, 0x8] - adds r1, r4, 0 - mov r2, r9 - bl sub_804E328 -_0804DB22: - movs r3, 0 - strb r3, [r5, 0x19] - strb r3, [r7, 0x1A] - movs r0, 0x1 - strb r0, [r5, 0xB] - strb r0, [r7, 0xB] -_0804DB2E: - ldrb r0, [r5, 0x1A] - cmp r0, 0 - beq _0804DB92 - mov r1, r8 - ldrb r0, [r1, 0x8] - cmp r0, 0 - bne _0804DB84 - ldrb r0, [r1, 0xA] - cmp r0, 0 - beq _0804DB56 - movs r2, 0x2 - ldrsh r0, [r1, r2] - adds r0, 0x1 - movs r3, 0x6 - ldrsh r1, [r1, r3] - subs r1, 0x1 - bl sub_808411C - adds r3, r0, 0 - b _0804DB5C -_0804DB56: - mov r0, r8 - movs r1, 0x2 - ldrsh r3, [r0, r1] -_0804DB5C: - movs r2, 0x4 - ldrsh r0, [r5, r2] - subs r0, 0x1 - mov r1, r8 - movs r2, 0 - ldrsh r1, [r1, r2] - mov r9, r1 - movs r1, 0 - str r1, [sp] - ldr r2, [sp, 0x24] - ldr r1, [r2, 0x4] - subs r1, 0x1 - str r1, [sp, 0x4] - ldr r2, [sp, 0x4C] - ldr r1, [r2] - str r1, [sp, 0x8] - adds r1, r4, 0 - mov r2, r9 - bl sub_804E328 -_0804DB84: - movs r3, 0 - strb r3, [r5, 0x1A] - mov r4, r8 - strb r3, [r4, 0x19] - movs r0, 0x1 - strb r0, [r5, 0xB] - strb r0, [r4, 0xB] -_0804DB92: - ldr r1, [sp, 0x48] - adds r1, 0x20 - str r1, [sp, 0x48] - movs r2, 0x20 - add r8, r2 - adds r5, 0x20 - adds r7, 0x20 - ldr r3, [sp, 0x4C] - adds r3, 0x4 - str r3, [sp, 0x4C] - ldr r4, [sp, 0x50] - adds r4, 0x20 - str r4, [sp, 0x50] - adds r6, 0x20 - movs r0, 0x1 - add r10, r0 - ldr r1, [sp, 0x14] - cmp r10, r1 - bge _0804DBBA - b _0804D9C8 -_0804DBBA: - ldr r2, [sp, 0x38] - str r2, [sp, 0x20] - ldr r3, [sp, 0x10] - cmp r2, r3 - bge _0804DBC6 - b _0804D974 -_0804DBC6: - ldr r4, [sp, 0x1C] - cmp r4, 0 - beq _0804DBCE - b _0804E026 -_0804DBCE: - movs r5, 0 - str r5, [sp, 0x20] - ldr r6, [sp, 0x10] - cmp r5, r6 - blt _0804DBDA - b _0804E026 -_0804DBDA: - movs r7, 0 - mov r10, r7 - ldr r0, [sp, 0x20] - adds r0, 0x1 - str r0, [sp, 0x38] - ldr r1, [sp, 0x14] - cmp r10, r1 - blt _0804DBEC - b _0804E018 -_0804DBEC: - movs r0, 0x64 - bl sub_8084100 - mov r2, r10 - adds r2, 0x1 - str r2, [sp, 0x3C] - cmp r0, 0x4 - ble _0804DBFE - b _0804E00C -_0804DBFE: - mov r3, r10 - lsls r1, r3, 5 - ldr r4, [sp, 0x20] - lsls r2, r4, 4 - subs r0, r2, r4 - lsls r0, 5 - ldr r5, [sp, 0xC] - adds r0, r5 - adds r4, r1, r0 - ldrb r0, [r4, 0x8] - str r1, [sp, 0x44] - str r2, [sp, 0x40] - cmp r0, 0 - beq _0804DC1C - b _0804E00C -_0804DC1C: - ldrb r0, [r4, 0xB] - cmp r0, 0 - bne _0804DC24 - b _0804E00C -_0804DC24: - ldrb r0, [r4, 0x12] - cmp r0, 0 - beq _0804DC2C - b _0804E00C -_0804DC2C: - ldrb r0, [r4, 0x9] - cmp r0, 0 - beq _0804DC34 - b _0804E00C -_0804DC34: - ldrb r0, [r4, 0xA] - cmp r0, 0 - bne _0804DC3C - b _0804E00C -_0804DC3C: - movs r0, 0x4 - bl sub_8084100 - cmp r0, 0x1 - bne _0804DC48 - b _0804DD50 -_0804DC48: - cmp r0, 0x1 - bgt _0804DC52 - cmp r0, 0 - beq _0804DC60 - b _0804E00C -_0804DC52: - cmp r0, 0x2 - bne _0804DC58 - b _0804DE3C -_0804DC58: - cmp r0, 0x3 - bne _0804DC5E - b _0804DF30 -_0804DC5E: - b _0804E00C -_0804DC60: - ldr r6, [sp, 0x20] - cmp r6, 0 - bgt _0804DC68 - b _0804E00C -_0804DC68: - ldr r7, _0804DD48 - adds r2, r4, r7 - ldrb r0, [r2, 0xB] - cmp r0, 0 - bne _0804DC74 - b _0804E00C -_0804DC74: - ldrb r0, [r2, 0x8] - cmp r0, 0 - beq _0804DC7C - b _0804E00C -_0804DC7C: - ldrb r0, [r2, 0xA] - cmp r0, 0 - bne _0804DC84 - b _0804E00C -_0804DC84: - ldrb r0, [r2, 0x9] - cmp r0, 0 - beq _0804DC8C - b _0804E00C -_0804DC8C: - ldrb r0, [r2, 0x12] - cmp r0, 0 - beq _0804DC94 - b _0804E00C -_0804DC94: - movs r1, 0 - ldrsh r0, [r2, r1] - str r0, [sp, 0x28] - ldrh r3, [r4, 0x2] - movs r5, 0x2 - ldrsh r1, [r4, r5] - ldrh r5, [r2, 0x2] - movs r6, 0x2 - ldrsh r0, [r2, r6] - cmp r1, r0 - ble _0804DCAC - adds r3, r5, 0 -_0804DCAC: - lsls r0, r3, 16 - asrs r0, 16 - mov r9, r0 - movs r0, 0x4 - ldrsh r7, [r4, r0] - mov r10, r7 - ldrh r3, [r4, 0x6] - movs r5, 0x6 - ldrsh r1, [r4, r5] - ldrh r5, [r2, 0x6] - movs r6, 0x6 - ldrsh r0, [r2, r6] - cmp r1, r0 - bge _0804DCCA - adds r3, r5, 0 -_0804DCCA: - lsls r0, r3, 16 - asrs r7, r0, 16 - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - ldrb r0, [r0, 0x9] - mov r8, r0 - ldr r5, [sp, 0x28] - cmp r5, r10 - bge _0804DD16 -_0804DCE4: - mov r4, r9 - adds r6, r5, 0x1 - cmp r9, r7 - bge _0804DD10 - ldr r0, _0804DD4C - adds r3, r0, 0 -_0804DCF0: - adds r0, r5, 0 - adds r1, r4, 0 - str r3, [sp, 0x54] - bl sub_8049590 - ldrh r1, [r0] - ldr r3, [sp, 0x54] - ands r1, r3 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - mov r1, r8 - strb r1, [r0, 0x9] - adds r4, 0x1 - cmp r4, r7 - blt _0804DCF0 -_0804DD10: - adds r5, r6, 0 - cmp r5, r10 - blt _0804DCE4 -_0804DD16: - ldr r2, [sp, 0x40] - ldr r3, [sp, 0x20] - subs r0, r2, r3 - lsls r0, 5 - ldr r4, [sp, 0xC] - adds r0, r4 - ldr r5, [sp, 0x44] - adds r0, r5, r0 - ldr r6, _0804DD48 - adds r3, r0, r6 - mov r1, sp - ldrh r1, [r1, 0x28] - strh r1, [r3] - mov r2, r10 - strh r2, [r3, 0x4] - mov r4, r9 - strh r4, [r3, 0x2] - strh r7, [r3, 0x6] - movs r5, 0x1 - strb r5, [r0, 0x12] - strb r5, [r3, 0x12] - movs r6, 0 - strb r6, [r0, 0xB] - strb r5, [r0, 0x11] - b _0804E00C - .align 2, 0 -_0804DD48: .4byte 0xfffffe20 -_0804DD4C: .4byte 0x0000fffc -_0804DD50: - mov r7, r10 - cmp r7, 0 - bgt _0804DD58 - b _0804E00C -_0804DD58: - adds r2, r4, 0 - subs r2, 0x20 - ldrb r0, [r2, 0xB] - cmp r0, 0 - bne _0804DD64 - b _0804E00C -_0804DD64: - ldrb r0, [r2, 0x8] - cmp r0, 0 - beq _0804DD6C - b _0804E00C -_0804DD6C: - ldrb r0, [r2, 0xA] - cmp r0, 0 - bne _0804DD74 - b _0804E00C -_0804DD74: - ldrb r0, [r2, 0x9] - cmp r0, 0 - beq _0804DD7C - b _0804E00C -_0804DD7C: - ldrb r0, [r2, 0x12] - cmp r0, 0 - beq _0804DD84 - b _0804E00C -_0804DD84: - ldrh r3, [r4] - movs r0, 0 - ldrsh r1, [r4, r0] - ldrh r5, [r2] - movs r6, 0 - ldrsh r0, [r2, r6] - cmp r1, r0 - ble _0804DD96 - adds r3, r5, 0 -_0804DD96: - lsls r0, r3, 16 - asrs r0, 16 - str r0, [sp, 0x2C] - movs r0, 0x2 - ldrsh r7, [r2, r0] - mov r10, r7 - ldrh r3, [r4, 0x4] - movs r5, 0x4 - ldrsh r1, [r4, r5] - ldrh r5, [r2, 0x4] - movs r6, 0x4 - ldrsh r0, [r2, r6] - cmp r1, r0 - bge _0804DDB4 - adds r3, r5, 0 -_0804DDB4: - lsls r0, r3, 16 - asrs r0, 16 - mov r8, r0 - movs r0, 0x6 - ldrsh r7, [r4, r0] - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - ldrb r0, [r0, 0x9] - mov r9, r0 - ldr r5, [sp, 0x2C] - cmp r5, r8 - bge _0804DE06 -_0804DDD4: - mov r4, r10 - adds r6, r5, 0x1 - cmp r10, r7 - bge _0804DE00 - ldr r0, _0804DE38 - adds r3, r0, 0 -_0804DDE0: - adds r0, r5, 0 - adds r1, r4, 0 - str r3, [sp, 0x54] - bl sub_8049590 - ldrh r1, [r0] - ldr r3, [sp, 0x54] - ands r1, r3 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - mov r1, r9 - strb r1, [r0, 0x9] - adds r4, 0x1 - cmp r4, r7 - blt _0804DDE0 -_0804DE00: - adds r5, r6, 0 - cmp r5, r8 - blt _0804DDD4 -_0804DE06: - ldr r2, [sp, 0x40] - ldr r3, [sp, 0x20] - subs r0, r2, r3 - lsls r0, 5 - ldr r4, [sp, 0xC] - adds r0, r4 - ldr r5, [sp, 0x44] - adds r0, r5, r0 - adds r3, r0, 0 - subs r3, 0x20 - mov r6, sp - ldrh r6, [r6, 0x2C] - strh r6, [r3] - mov r1, r8 - strh r1, [r3, 0x4] - mov r2, r10 - strh r2, [r3, 0x2] - strh r7, [r3, 0x6] - movs r4, 0x1 - strb r4, [r0, 0x12] - strb r4, [r3, 0x12] - movs r5, 0 - strb r5, [r0, 0xB] - strb r4, [r0, 0x11] - b _0804E00C - .align 2, 0 -_0804DE38: .4byte 0x0000fffc -_0804DE3C: - ldr r0, [sp, 0x10] - subs r0, 0x2 - ldr r6, [sp, 0x20] - cmp r6, r0 - ble _0804DE48 - b _0804E00C -_0804DE48: - movs r7, 0xF0 - lsls r7, 1 - adds r2, r4, r7 - ldrb r0, [r2, 0xB] - cmp r0, 0 - bne _0804DE56 - b _0804E00C -_0804DE56: - ldrb r0, [r2, 0x8] - cmp r0, 0 - beq _0804DE5E - b _0804E00C -_0804DE5E: - ldrb r0, [r2, 0xA] - cmp r0, 0 - bne _0804DE66 - b _0804E00C -_0804DE66: - ldrb r0, [r2, 0x9] - cmp r0, 0 - beq _0804DE6E - b _0804E00C -_0804DE6E: - ldrb r0, [r2, 0x12] - cmp r0, 0 - beq _0804DE76 - b _0804E00C -_0804DE76: - movs r1, 0 - ldrsh r0, [r4, r1] - str r0, [sp, 0x30] - ldrh r3, [r2, 0x2] - movs r5, 0x2 - ldrsh r1, [r2, r5] - ldrh r5, [r4, 0x2] - movs r6, 0x2 - ldrsh r0, [r4, r6] - cmp r1, r0 - ble _0804DE8E - adds r3, r5, 0 -_0804DE8E: - lsls r0, r3, 16 - asrs r0, 16 - mov r9, r0 - movs r0, 0x4 - ldrsh r7, [r2, r0] - mov r10, r7 - ldrh r3, [r2, 0x6] - movs r5, 0x6 - ldrsh r1, [r2, r5] - ldrh r2, [r4, 0x6] - movs r6, 0x6 - ldrsh r0, [r4, r6] - cmp r1, r0 - bge _0804DEAC - adds r3, r2, 0 -_0804DEAC: - lsls r0, r3, 16 - asrs r7, r0, 16 - movs r0, 0x2 - ldrsh r1, [r4, r0] - ldr r0, [sp, 0x30] - bl sub_804954C - ldrb r0, [r0, 0x9] - mov r8, r0 - ldr r5, [sp, 0x30] - cmp r5, r10 - bge _0804DEF6 -_0804DEC4: - mov r4, r9 - adds r6, r5, 0x1 - cmp r9, r7 - bge _0804DEF0 - ldr r1, _0804DF2C - adds r3, r1, 0 -_0804DED0: - adds r0, r5, 0 - adds r1, r4, 0 - str r3, [sp, 0x54] - bl sub_8049590 - ldrh r1, [r0] - ldr r3, [sp, 0x54] - ands r1, r3 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - mov r2, r8 - strb r2, [r0, 0x9] - adds r4, 0x1 - cmp r4, r7 - blt _0804DED0 -_0804DEF0: - adds r5, r6, 0 - cmp r5, r10 - blt _0804DEC4 -_0804DEF6: - ldr r3, [sp, 0x40] - ldr r4, [sp, 0x20] - subs r0, r3, r4 - lsls r0, 5 - ldr r5, [sp, 0xC] - adds r0, r5 - ldr r6, [sp, 0x44] - adds r0, r6, r0 - mov r1, sp - ldrh r1, [r1, 0x30] - strh r1, [r0] - mov r2, r10 - strh r2, [r0, 0x4] - mov r3, r9 - strh r3, [r0, 0x2] - strh r7, [r0, 0x6] - movs r4, 0xF0 - lsls r4, 1 - adds r1, r0, r4 - movs r5, 0x1 - strb r5, [r1, 0x12] - strb r5, [r0, 0x12] - movs r6, 0 - strb r6, [r1, 0xB] - strb r5, [r1, 0x11] - b _0804E00C - .align 2, 0 -_0804DF2C: .4byte 0x0000fffc -_0804DF30: - ldr r0, [sp, 0x14] - subs r0, 0x2 - cmp r10, r0 - bgt _0804E00C - adds r3, r4, 0 - adds r3, 0x20 - ldrb r0, [r3, 0xB] - cmp r0, 0 - beq _0804E00C - ldrb r0, [r3, 0x8] - cmp r0, 0 - bne _0804E00C - ldrb r0, [r3, 0xA] - cmp r0, 0 - beq _0804E00C - ldrb r0, [r3, 0x9] - cmp r0, 0 - bne _0804E00C - ldrb r0, [r3, 0x12] - cmp r0, 0 - bne _0804E00C - ldrh r2, [r4, 0x20] - movs r7, 0x20 - ldrsh r1, [r4, r7] - ldrh r5, [r4] - movs r6, 0 - ldrsh r0, [r4, r6] - cmp r1, r0 - ble _0804DF6C - adds r2, r5, 0 -_0804DF6C: - lsls r0, r2, 16 - asrs r0, 16 - str r0, [sp, 0x34] - movs r7, 0x2 - ldrsh r6, [r4, r7] - ldrh r2, [r3, 0x4] - movs r0, 0x4 - ldrsh r1, [r3, r0] - ldrh r5, [r4, 0x4] - movs r7, 0x4 - ldrsh r0, [r4, r7] - cmp r1, r0 - bge _0804DF88 - adds r2, r5, 0 -_0804DF88: - lsls r0, r2, 16 - asrs r0, 16 - mov r8, r0 - movs r0, 0x6 - ldrsh r3, [r3, r0] - movs r1, 0 - ldrsh r0, [r4, r1] - adds r1, r6, 0 - str r3, [sp, 0x54] - bl sub_804954C - ldrb r0, [r0, 0x9] - mov r10, r0 - ldr r5, [sp, 0x34] - ldr r3, [sp, 0x54] - cmp r5, r8 - bge _0804DFDE -_0804DFAA: - adds r4, r6, 0 - adds r7, r5, 0x1 - cmp r6, r3 - bge _0804DFD8 - ldr r2, _0804E038 - mov r9, r2 -_0804DFB6: - adds r0, r5, 0 - adds r1, r4, 0 - str r3, [sp, 0x54] - bl sub_8049590 - ldrh r1, [r0] - mov r2, r9 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - mov r1, r10 - strb r1, [r0, 0x9] - adds r4, 0x1 - ldr r3, [sp, 0x54] - cmp r4, r3 - blt _0804DFB6 -_0804DFD8: - adds r5, r7, 0 - cmp r5, r8 - blt _0804DFAA -_0804DFDE: - ldr r2, [sp, 0x40] - ldr r4, [sp, 0x20] - subs r0, r2, r4 - lsls r0, 5 - ldr r5, [sp, 0xC] - adds r0, r5 - ldr r7, [sp, 0x44] - adds r0, r7, r0 - mov r1, sp - ldrh r1, [r1, 0x34] - strh r1, [r0] - mov r2, r8 - strh r2, [r0, 0x4] - strh r6, [r0, 0x2] - strh r3, [r0, 0x6] - adds r1, r0, 0 - adds r1, 0x20 - movs r3, 0x1 - strb r3, [r1, 0x12] - strb r3, [r0, 0x12] - movs r4, 0 - strb r4, [r1, 0xB] - strb r3, [r1, 0x11] -_0804E00C: - ldr r5, [sp, 0x3C] - mov r10, r5 - ldr r6, [sp, 0x14] - cmp r10, r6 - bge _0804E018 - b _0804DBEC -_0804E018: - ldr r7, [sp, 0x38] - str r7, [sp, 0x20] - adds r0, r7, 0 - ldr r1, [sp, 0x10] - cmp r0, r1 - bge _0804E026 - b _0804DBDA -_0804E026: - add sp, 0x58 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804E038: .4byte 0x0000fffc - thumb_func_end sub_804D8C8 - - thumb_func_start sub_804E03C -sub_804E03C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x44 - str r0, [sp] - str r1, [sp, 0x4] - str r2, [sp, 0x8] - movs r0, 0 - str r0, [sp, 0xC] - cmp r0, r1 - blt _0804E058 - b _0804E318 -_0804E058: - movs r2, 0 - ldr r1, [sp, 0xC] - adds r1, 0x1 - str r1, [sp, 0x28] - ldr r3, [sp, 0x8] - cmp r2, r3 - blt _0804E068 - b _0804E30C -_0804E068: - ldr r4, [sp, 0xC] - lsls r4, 4 - str r4, [sp, 0x14] - ldr r6, [sp, 0xC] - subs r0, r4, r6 - lsls r0, 5 - ldr r1, [sp] - adds r0, r1 - str r0, [sp, 0x18] -_0804E07A: - lsls r0, r2, 5 - ldr r3, [sp, 0x18] - adds r4, r0, r3 - ldrb r1, [r4, 0x8] - str r0, [sp, 0x34] - adds r2, 0x1 - str r2, [sp, 0x2C] - cmp r1, 0 - beq _0804E08E - b _0804E302 -_0804E08E: - ldrb r0, [r4, 0x11] - cmp r0, 0 - beq _0804E096 - b _0804E302 -_0804E096: - ldrb r0, [r4, 0x12] - cmp r0, 0 - beq _0804E09E - b _0804E302 -_0804E09E: - ldrb r0, [r4, 0xB] - cmp r0, 0 - bne _0804E0A6 - b _0804E302 -_0804E0A6: - ldrb r0, [r4, 0xA] - cmp r0, 0 - bne _0804E0AE - b _0804E302 -_0804E0AE: - ldrb r0, [r4, 0x9] - cmp r0, 0 - beq _0804E0B6 - b _0804E302 -_0804E0B6: - ldrb r0, [r4, 0x10] - cmp r0, 0 - beq _0804E0BE - b _0804E302 -_0804E0BE: - ldrb r0, [r4, 0x1C] - cmp r0, 0 - bne _0804E0C6 - b _0804E302 -_0804E0C6: - movs r0, 0x64 - bl sub_8084100 - cmp r0, 0x3B - bgt _0804E0D2 - b _0804E302 -_0804E0D2: - movs r6, 0x4 - ldrsh r2, [r4, r6] - movs r1, 0 - ldrsh r0, [r4, r1] - subs r2, r0 - movs r3, 0x6 - ldrsh r0, [r4, r3] - movs r6, 0x2 - ldrsh r1, [r4, r6] - subs r0, r1 - adds r2, r0 - str r2, [sp, 0x10] - adds r0, r2, 0 - cmp r2, 0 - bge _0804E0F2 - adds r0, 0x3 -_0804E0F2: - asrs r0, 2 - str r0, [sp, 0x10] - cmp r0, 0 - bne _0804E0FE - movs r0, 0x1 - str r0, [sp, 0x10] -_0804E0FE: - movs r1, 0 - ldr r2, [sp, 0x10] - cmp r1, r2 - blt _0804E108 - b _0804E302 -_0804E108: - ldr r3, [sp, 0x14] - ldr r4, [sp, 0xC] - subs r0, r3, r4 - lsls r0, 5 - ldr r6, [sp] - adds r0, r6 - ldr r2, [sp, 0x34] - adds r0, r2, r0 - str r0, [sp, 0x20] -_0804E11A: - movs r4, 0 - adds r1, 0x1 - str r1, [sp, 0x30] -_0804E120: - movs r0, 0x4 - bl sub_8084100 - str r0, [sp, 0x1C] - cmp r0, 0x1 - beq _0804E14A - cmp r0, 0x1 - ble _0804E138 - cmp r0, 0x2 - beq _0804E168 - cmp r0, 0x3 - beq _0804E182 -_0804E138: - ldr r3, [sp, 0x20] - movs r6, 0 - ldrsh r7, [r3, r6] - movs r1, 0x2 - ldrsh r0, [r3, r1] - mov r8, r0 - cmp r4, 0 - bne _0804E19C - b _0804E15C -_0804E14A: - ldr r2, [sp, 0x20] - movs r3, 0x4 - ldrsh r0, [r2, r3] - subs r7, r0, 0x1 - movs r0, 0x2 - ldrsh r6, [r2, r0] - mov r8, r6 - cmp r4, 0 - beq _0804E162 -_0804E15C: - movs r3, 0 - movs r2, 0x1 - b _0804E1A0 -_0804E162: - movs r3, 0x1 - negs r3, r3 - b _0804E19E -_0804E168: - ldr r1, [sp, 0x20] - movs r2, 0x4 - ldrsh r0, [r1, r2] - subs r7, r0, 0x1 - movs r3, 0x6 - ldrsh r0, [r1, r3] - subs r0, 0x1 - mov r8, r0 - cmp r4, 0 - beq _0804E194 - movs r3, 0x1 - negs r3, r3 - b _0804E19E -_0804E182: - ldr r6, [sp, 0x20] - movs r0, 0 - ldrsh r7, [r6, r0] - movs r1, 0x6 - ldrsh r0, [r6, r1] - subs r0, 0x1 - mov r8, r0 - cmp r4, 0 - beq _0804E19C -_0804E194: - movs r3, 0 - movs r2, 0x1 - negs r2, r2 - b _0804E1A0 -_0804E19C: - movs r3, 0x1 -_0804E19E: - movs r2, 0 -_0804E1A0: - movs r6, 0 - mov r9, r6 - ldr r5, [sp, 0x34] - ldr r0, [sp, 0x14] - str r0, [sp, 0x40] - ldr r6, [sp, 0x18] - adds r1, r5, r6 - movs r6, 0 - ldrsh r0, [r1, r6] - mov r10, r0 - adds r4, 0x1 - str r4, [sp, 0x24] - cmp r7, r10 - bge _0804E1BE - b _0804E2F0 -_0804E1BE: - movs r4, 0x4 - ldrsh r0, [r1, r4] - cmp r7, r0 - blt _0804E1C8 - b _0804E2F0 -_0804E1C8: - ldr r6, [sp, 0x40] - ldr r1, [sp, 0xC] - subs r0, r6, r1 - lsls r0, 5 - ldr r4, [sp] - adds r0, r4 - adds r4, r5, r0 - movs r6, 0x2 - ldrsh r0, [r4, r6] - cmp r8, r0 - bge _0804E1E0 - b _0804E2F0 -_0804E1E0: - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r8, r0 - blt _0804E1EA - b _0804E2F0 -_0804E1EA: - adds r0, r7, 0 - mov r1, r8 - str r2, [sp, 0x38] - str r3, [sp, 0x3C] - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - ldr r2, [sp, 0x38] - ldr r3, [sp, 0x3C] - cmp r0, 0x1 - bne _0804E2D0 - movs r6, 0 -_0804E206: - ldr r1, _0804E228 - lsls r0, r6, 2 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r1, r7 - mov r10, r1 - movs r3, 0x2 - ldrsh r0, [r0, r3] - add r0, r8 - mov r9, r0 - movs r3, 0 - movs r5, 0x1 - negs r5, r5 -_0804E222: - movs r4, 0x1 - negs r4, r4 - b _0804E22E - .align 2, 0 -_0804E228: .4byte gUnknown_80F4448 -_0804E22C: - adds r4, 0x1 -_0804E22E: - cmp r4, 0x1 - bgt _0804E25A - mov r1, r10 - adds r0, r1, r4 - mov r2, r9 - adds r1, r2, r5 - str r3, [sp, 0x3C] - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - ldr r3, [sp, 0x3C] - cmp r0, 0x1 - bne _0804E22C - ldrb r0, [r2, 0x9] - cmp r0, 0xFF - bne _0804E256 - movs r3, 0x1 -_0804E256: - cmp r3, 0 - beq _0804E22C -_0804E25A: - cmp r3, 0 - bne _0804E26A - adds r5, 0x1 - cmp r5, 0x1 - ble _0804E222 - adds r6, 0x1 - cmp r6, 0x7 - ble _0804E206 -_0804E26A: - cmp r6, 0x8 - bne _0804E2F0 - movs r6, 0 - ldr r3, [sp, 0x1C] - lsls r1, r3, 3 - ldr r0, _0804E2C4 - adds r4, r1, r0 -_0804E278: - ldr r0, _0804E2C8 - lsls r1, r6, 2 - adds r1, r0 - movs r2, 0 - ldrsh r0, [r1, r2] - movs r3, 0x2 - ldrsh r1, [r1, r3] - adds r0, r7, r0 - add r1, r8 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - movs r1, 0 - cmp r0, 0x1 - bne _0804E29C - movs r1, 0x1 -_0804E29C: - ldrb r0, [r4] - cmp r0, r1 - bne _0804E2AA - adds r4, 0x2 - adds r6, 0x2 - cmp r6, 0x7 - ble _0804E278 -_0804E2AA: - cmp r6, 0x8 - bne _0804E2F0 - adds r0, r7, 0 - mov r1, r8 - bl sub_8049590 - ldrh r2, [r0] - ldr r4, _0804E2CC - adds r1, r4, 0 - ands r2, r1 - strh r2, [r0] - b _0804E2F0 - .align 2, 0 -_0804E2C4: .4byte gUnknown_80F6DD5 -_0804E2C8: .4byte gUnknown_80F4448 -_0804E2CC: .4byte 0x0000fffc -_0804E2D0: - adds r7, r3 - add r8, r2 - movs r6, 0x1 - add r9, r6 - mov r0, r9 - cmp r0, 0x9 - bgt _0804E2F0 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r7, r0 - blt _0804E2F0 - movs r6, 0x4 - ldrsh r0, [r4, r6] - cmp r7, r0 - bge _0804E2F0 - b _0804E1C8 -_0804E2F0: - ldr r4, [sp, 0x24] - cmp r4, 0x1 - bgt _0804E2F8 - b _0804E120 -_0804E2F8: - ldr r1, [sp, 0x30] - ldr r0, [sp, 0x10] - cmp r1, r0 - bge _0804E302 - b _0804E11A -_0804E302: - ldr r2, [sp, 0x2C] - ldr r1, [sp, 0x8] - cmp r2, r1 - bge _0804E30C - b _0804E07A -_0804E30C: - ldr r2, [sp, 0x28] - str r2, [sp, 0xC] - ldr r3, [sp, 0x4] - cmp r2, r3 - bge _0804E318 - b _0804E058 -_0804E318: - add sp, 0x44 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804E03C - - thumb_func_start sub_804E328 -sub_804E328: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r5, r0, 0 - adds r4, r1, 0 - str r2, [sp] - str r3, [sp, 0x4] - ldr r0, [sp, 0x28] - lsls r0, 24 - mov r10, r5 - mov r9, r4 - ldr r1, [sp, 0x2C] - mov r8, r1 - ldr r7, [sp, 0x30] - cmp r0, 0 - bne _0804E350 - b _0804E470 -_0804E350: - movs r6, 0 -_0804E352: - cmp r4, r7 - beq _0804E3A8 - adds r0, r6, 0 - adds r6, 0x1 - cmp r0, 0x37 - ble _0804E360 - b _0804E57E -_0804E360: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0804E390 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0] - ldr r3, _0804E38C - adds r1, r3, 0 - ands r2, r1 - movs r1, 0x1 - orrs r2, r1 - strh r2, [r0] - b _0804E39C - .align 2, 0 -_0804E38C: .4byte 0x0000fffc -_0804E390: - cmp r5, r10 - beq _0804E396 - b _0804E57E -_0804E396: - cmp r4, r9 - beq _0804E39C - b _0804E57E -_0804E39C: - cmp r4, r7 - bge _0804E3A4 - adds r4, 0x1 - b _0804E352 -_0804E3A4: - subs r4, 0x1 - b _0804E352 -_0804E3A8: - movs r6, 0 - ldr r0, [sp] - cmp r5, r0 - beq _0804E40A - movs r7, 0 -_0804E3B2: - adds r0, r6, 0 - adds r6, 0x1 - cmp r0, 0x37 - ble _0804E3BC - b _0804E57E -_0804E3BC: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0804E3EC - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0] - ldr r3, _0804E3E8 - adds r1, r3, 0 - ands r2, r1 - movs r1, 0x1 - orrs r2, r1 - strh r2, [r0] - b _0804E3F8 - .align 2, 0 -_0804E3E8: .4byte 0x0000fffc -_0804E3EC: - cmp r5, r10 - beq _0804E3F2 - b _0804E57E -_0804E3F2: - cmp r4, r9 - beq _0804E3F8 - b _0804E57E -_0804E3F8: - ldr r0, [sp] - cmp r5, r0 - bge _0804E402 - adds r5, 0x1 - b _0804E404 -_0804E402: - subs r5, 0x1 -_0804E404: - ldr r1, [sp] - cmp r5, r1 - bne _0804E3B2 -_0804E40A: - movs r6, 0 - ldr r3, [sp, 0x4] - cmp r4, r3 - bne _0804E414 - b _0804E57E -_0804E414: - movs r7, 0 -_0804E416: - adds r0, r6, 0 - adds r6, 0x1 - cmp r0, 0x37 - ble _0804E420 - b _0804E57E -_0804E420: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0804E450 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0] - ldr r3, _0804E44C - adds r1, r3, 0 - ands r2, r1 - movs r1, 0x1 - orrs r2, r1 - strh r2, [r0] - b _0804E45C - .align 2, 0 -_0804E44C: .4byte 0x0000fffc -_0804E450: - cmp r5, r10 - beq _0804E456 - b _0804E57E -_0804E456: - cmp r4, r9 - beq _0804E45C - b _0804E57E -_0804E45C: - ldr r0, [sp, 0x4] - cmp r4, r0 - bge _0804E466 - adds r4, 0x1 - b _0804E468 -_0804E466: - subs r4, 0x1 -_0804E468: - ldr r1, [sp, 0x4] - cmp r4, r1 - bne _0804E416 - b _0804E57E -_0804E470: - movs r6, 0 - cmp r5, r8 - beq _0804E4C6 - movs r7, 0 -_0804E478: - adds r0, r6, 0 - adds r6, 0x1 - cmp r0, 0x37 - ble _0804E482 - b _0804E57E -_0804E482: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0804E4B0 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0] - ldr r3, _0804E4AC - adds r1, r3, 0 - ands r2, r1 - movs r1, 0x1 - orrs r2, r1 - strh r2, [r0] - b _0804E4B8 - .align 2, 0 -_0804E4AC: .4byte 0x0000fffc -_0804E4B0: - cmp r5, r10 - bne _0804E57E - cmp r4, r9 - bne _0804E57E -_0804E4B8: - cmp r5, r8 - bge _0804E4C0 - adds r5, 0x1 - b _0804E4C2 -_0804E4C0: - subs r5, 0x1 -_0804E4C2: - cmp r5, r8 - bne _0804E478 -_0804E4C6: - movs r6, 0 - ldr r0, [sp, 0x4] - cmp r4, r0 - beq _0804E522 - movs r7, 0 -_0804E4D0: - adds r0, r6, 0 - adds r6, 0x1 - cmp r0, 0x37 - bgt _0804E57E - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0804E508 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0] - ldr r3, _0804E504 - adds r1, r3, 0 - ands r2, r1 - movs r1, 0x1 - orrs r2, r1 - strh r2, [r0] - b _0804E510 - .align 2, 0 -_0804E504: .4byte 0x0000fffc -_0804E508: - cmp r5, r10 - bne _0804E57E - cmp r4, r9 - bne _0804E57E -_0804E510: - ldr r0, [sp, 0x4] - cmp r4, r0 - bge _0804E51A - adds r4, 0x1 - b _0804E51C -_0804E51A: - subs r4, 0x1 -_0804E51C: - ldr r1, [sp, 0x4] - cmp r4, r1 - bne _0804E4D0 -_0804E522: - movs r6, 0 - ldr r3, [sp] - cmp r5, r3 - beq _0804E57E - movs r7, 0 -_0804E52C: - adds r0, r6, 0 - adds r6, 0x1 - cmp r0, 0x37 - bgt _0804E57E - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0804E564 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0] - ldr r3, _0804E560 - adds r1, r3, 0 - ands r2, r1 - movs r1, 0x1 - orrs r2, r1 - strh r2, [r0] - b _0804E56C - .align 2, 0 -_0804E560: .4byte 0x0000fffc -_0804E564: - cmp r5, r10 - bne _0804E57E - cmp r4, r9 - bne _0804E57E -_0804E56C: - ldr r0, [sp] - cmp r5, r0 - bge _0804E576 - adds r5, 0x1 - b _0804E578 -_0804E576: - subs r5, 0x1 -_0804E578: - ldr r1, [sp] - cmp r5, r1 - bne _0804E52C -_0804E57E: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804E328 - - thumb_func_start sub_804E590 -sub_804E590: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x40 - str r0, [sp, 0xC] - str r1, [sp, 0x10] - str r2, [sp, 0x14] - str r3, [sp, 0x18] - movs r0, 0 - str r0, [sp, 0x1C] - cmp r0, r1 - blt _0804E5AE - b _0804E8AA -_0804E5AE: - movs r1, 0x1 - mov r10, r1 -_0804E5B2: - movs r2, 0 - str r2, [sp, 0x20] - ldr r3, [sp, 0x1C] - adds r3, 0x1 - str r3, [sp, 0x2C] - ldr r4, [sp, 0x14] - cmp r2, r4 - blt _0804E5C4 - b _0804E89E -_0804E5C4: - ldr r5, [sp, 0x1C] - lsls r5, 4 - ldr r6, [sp, 0x1C] - subs r1, r5, r6 - lsls r1, 5 - ldr r2, [sp, 0xC] - movs r3, 0xF0 - lsls r3, 1 - adds r0, r2, r3 - adds r0, r1 - mov r8, r0 - adds r6, r1, r2 - ldr r4, _0804E6A4 - adds r0, r2, r4 - adds r7, r1, r0 - adds r0, r2, 0 - adds r0, 0x20 - adds r0, r1 - mov r9, r0 - ldr r5, [sp, 0x60] - str r5, [sp, 0x34] - adds r0, r2, 0 - subs r0, 0x20 - adds r1, r0 - str r1, [sp, 0x38] - movs r0, 0 - str r0, [sp, 0x3C] - ldr r1, [sp, 0x1C] - lsls r0, r1, 2 - ldr r2, [sp, 0x18] - adds r0, r2 - str r0, [sp, 0x28] -_0804E604: - ldr r3, [sp, 0x1C] - lsls r0, r3, 4 - subs r0, r3 - lsls r0, 5 - ldr r4, [sp, 0xC] - adds r0, r4 - ldr r5, [sp, 0x3C] - adds r4, r5, r0 - ldrb r0, [r4, 0x8] - cmp r0, 0 - beq _0804E61C - b _0804E874 -_0804E61C: - ldrb r0, [r4, 0x11] - cmp r0, 0 - beq _0804E624 - b _0804E874 -_0804E624: - ldrb r0, [r4, 0xB] - cmp r0, 0 - beq _0804E62C - b _0804E874 -_0804E62C: - ldrb r0, [r4, 0xA] - cmp r0, 0 - bne _0804E634 - b _0804E848 -_0804E634: - ldrb r0, [r4, 0x9] - cmp r0, 0 - beq _0804E63C - b _0804E848 -_0804E63C: - movs r1, 0 - ldrsh r0, [r4, r1] - adds r0, 0x1 - movs r2, 0x4 - ldrsh r1, [r4, r2] - subs r1, 0x1 - bl sub_808411C - str r0, [sp, 0x24] - movs r3, 0x2 - ldrsh r0, [r4, r3] - adds r0, 0x1 - movs r5, 0x6 - ldrsh r1, [r4, r5] - subs r1, 0x1 - bl sub_808411C - adds r5, r0, 0 - ldr r0, [sp, 0x20] - cmp r0, 0 - ble _0804E6DC - subs r4, 0x20 - ldrb r0, [r4, 0x8] - cmp r0, 0 - bne _0804E6DC - ldrb r0, [r4, 0x12] - cmp r0, 0 - bne _0804E6DC - ldrb r0, [r4, 0xB] - cmp r0, 0 - beq _0804E6DC - ldrb r0, [r4, 0xA] - cmp r0, 0 - beq _0804E6A8 - movs r1, 0 - ldrsh r0, [r4, r1] - adds r0, 0x1 - movs r2, 0x4 - ldrsh r1, [r4, r2] - subs r1, 0x1 - bl sub_808411C - adds r5, r0, 0 - movs r3, 0x2 - ldrsh r0, [r4, r3] - adds r0, 0x1 - movs r2, 0x6 - ldrsh r1, [r4, r2] - subs r1, 0x1 - bl sub_808411C - b _0804E6AC - .align 2, 0 -_0804E6A4: .4byte 0xfffffe20 -_0804E6A8: - movs r3, 0 - ldrsh r5, [r4, r3] -_0804E6AC: - movs r4, 0x2 - ldrsh r1, [r6, r4] - ldr r0, [sp, 0x38] - movs r2, 0x6 - ldrsh r3, [r0, r2] - subs r3, 0x1 - mov r4, r10 - str r4, [sp] - ldr r2, [sp, 0x28] - ldr r0, [r2] - str r0, [sp, 0x4] - ldr r4, [sp, 0x34] - ldr r0, [r4] - str r0, [sp, 0x8] - ldr r0, [sp, 0x24] - adds r2, r5, 0 - bl sub_804E328 - mov r5, r10 - strb r5, [r6, 0xB] - strb r5, [r6, 0x13] - ldr r0, [sp, 0x38] - strb r5, [r0, 0x14] - b _0804E874 -_0804E6DC: - ldr r0, [sp, 0x14] - subs r0, 0x1 - ldr r1, [sp, 0x20] - cmp r1, r0 - bge _0804E758 - mov r2, r9 - ldrb r0, [r2, 0x8] - cmp r0, 0 - bne _0804E758 - ldrb r0, [r2, 0x12] - cmp r0, 0 - bne _0804E758 - ldrb r0, [r2, 0xB] - cmp r0, 0 - beq _0804E758 - ldrb r0, [r2, 0xA] - cmp r0, 0 - beq _0804E724 - movs r3, 0x20 - ldrsh r0, [r6, r3] - adds r0, 0x1 - movs r4, 0x24 - ldrsh r1, [r6, r4] - subs r1, 0x1 - bl sub_808411C - adds r5, r0, 0 - movs r1, 0x22 - ldrsh r0, [r6, r1] - adds r0, 0x1 - movs r2, 0x26 - ldrsh r1, [r6, r2] - subs r1, 0x1 - bl sub_808411C - b _0804E728 -_0804E724: - movs r3, 0x20 - ldrsh r5, [r6, r3] -_0804E728: - movs r4, 0x6 - ldrsh r1, [r6, r4] - subs r1, 0x1 - movs r0, 0x22 - ldrsh r3, [r6, r0] - mov r2, r10 - str r2, [sp] - ldr r4, [sp, 0x28] - ldr r0, [r4] - str r0, [sp, 0x4] - ldr r2, [sp, 0x34] - ldr r0, [r2, 0x4] - subs r0, 0x1 - str r0, [sp, 0x8] - ldr r0, [sp, 0x24] - adds r2, r5, 0 - bl sub_804E328 - mov r3, r10 - strb r3, [r6, 0xB] - strb r3, [r6, 0x14] - mov r4, r9 - strb r3, [r4, 0x13] - b _0804E874 -_0804E758: - ldr r0, [sp, 0x1C] - cmp r0, 0 - ble _0804E7C8 - ldrb r0, [r7, 0x8] - cmp r0, 0 - bne _0804E7C8 - ldrb r0, [r7, 0x12] - cmp r0, 0 - bne _0804E7C8 - ldrb r0, [r7, 0xB] - cmp r0, 0 - beq _0804E7C8 - ldrb r0, [r7, 0xA] - cmp r0, 0 - beq _0804E79A - movs r1, 0 - ldrsh r0, [r7, r1] - adds r0, 0x1 - movs r2, 0x4 - ldrsh r1, [r7, r2] - subs r1, 0x1 - bl sub_808411C - movs r3, 0x2 - ldrsh r0, [r7, r3] - adds r0, 0x1 - movs r4, 0x6 - ldrsh r1, [r7, r4] - subs r1, 0x1 - bl sub_808411C - adds r3, r0, 0 - b _0804E79E -_0804E79A: - movs r0, 0x2 - ldrsh r3, [r7, r0] -_0804E79E: - movs r1, 0 - ldrsh r0, [r6, r1] - movs r4, 0 - ldrsh r2, [r7, r4] - subs r2, 0x1 - movs r1, 0 - str r1, [sp] - ldr r4, [sp, 0x28] - ldr r1, [r4] - str r1, [sp, 0x4] - ldr r4, [sp, 0x34] - ldr r1, [r4] - str r1, [sp, 0x8] - adds r1, r5, 0 - bl sub_804E328 - mov r5, r10 - strb r5, [r6, 0xB] - strb r5, [r6, 0x15] - strb r5, [r7, 0x16] - b _0804E874 -_0804E7C8: - ldr r0, [sp, 0x10] - subs r0, 0x1 - ldr r1, [sp, 0x1C] - cmp r1, r0 - bge _0804E874 - mov r2, r8 - ldrb r0, [r2, 0x8] - cmp r0, 0 - bne _0804E874 - ldrb r0, [r2, 0x12] - cmp r0, 0 - bne _0804E874 - ldrb r0, [r2, 0xB] - cmp r0, 0 - beq _0804E874 - ldrb r0, [r2, 0xA] - cmp r0, 0 - beq _0804E812 - movs r3, 0 - ldrsh r0, [r2, r3] - adds r0, 0x1 - movs r4, 0x4 - ldrsh r1, [r2, r4] - subs r1, 0x1 - bl sub_808411C - mov r1, r8 - movs r2, 0x2 - ldrsh r0, [r1, r2] - adds r0, 0x1 - movs r3, 0x6 - ldrsh r1, [r1, r3] - subs r1, 0x1 - bl sub_808411C - adds r3, r0, 0 - b _0804E818 -_0804E812: - mov r4, r8 - movs r0, 0x2 - ldrsh r3, [r4, r0] -_0804E818: - movs r1, 0x4 - ldrsh r0, [r6, r1] - subs r0, 0x1 - mov r4, r8 - movs r1, 0 - ldrsh r2, [r4, r1] - movs r1, 0 - str r1, [sp] - ldr r4, [sp, 0x28] - ldr r1, [r4, 0x4] - subs r1, 0x1 - str r1, [sp, 0x4] - ldr r4, [sp, 0x34] - ldr r1, [r4] - str r1, [sp, 0x8] - adds r1, r5, 0 - bl sub_804E328 - mov r5, r10 - strb r5, [r6, 0xB] - strb r5, [r6, 0x16] - mov r0, r8 - strb r5, [r0, 0x15] - b _0804E874 -_0804E848: - movs r1, 0 - ldrsh r0, [r6, r1] - movs r2, 0x2 - ldrsh r1, [r6, r2] - bl sub_8049590 - ldrh r1, [r0] - ldr r3, _0804E99C - adds r2, r3, 0 - ands r1, r2 - strh r1, [r0] - ldrh r1, [r0, 0x4] - ldr r4, _0804E9A0 - adds r2, r4, 0 - ands r1, r2 - ldr r5, _0804E9A4 - adds r2, r5, 0 - ands r1, r2 - subs r3, 0x1 - adds r2, r3, 0 - ands r1, r2 - strh r1, [r0, 0x4] -_0804E874: - movs r4, 0x20 - add r8, r4 - adds r6, 0x20 - adds r7, 0x20 - add r9, r4 - ldr r5, [sp, 0x34] - adds r5, 0x4 - str r5, [sp, 0x34] - ldr r0, [sp, 0x38] - adds r0, 0x20 - str r0, [sp, 0x38] - ldr r1, [sp, 0x3C] - adds r1, 0x20 - str r1, [sp, 0x3C] - ldr r2, [sp, 0x20] - adds r2, 0x1 - str r2, [sp, 0x20] - ldr r3, [sp, 0x14] - cmp r2, r3 - bge _0804E89E - b _0804E604 -_0804E89E: - ldr r4, [sp, 0x2C] - str r4, [sp, 0x1C] - ldr r5, [sp, 0x10] - cmp r4, r5 - bge _0804E8AA - b _0804E5B2 -_0804E8AA: - movs r6, 0 - str r6, [sp, 0x1C] - ldr r0, [sp, 0x10] - cmp r6, r0 - bge _0804E98A -_0804E8B4: - movs r1, 0 - str r1, [sp, 0x20] - ldr r2, [sp, 0x1C] - adds r2, 0x1 - str r2, [sp, 0x2C] - ldr r3, [sp, 0x14] - cmp r1, r3 - bge _0804E980 - ldr r4, [sp, 0x1C] - lsls r4, 4 - mov r9, r4 -_0804E8CA: - ldr r5, [sp, 0x20] - lsls r2, r5, 5 - ldr r6, [sp, 0x1C] - lsls r3, r6, 4 - subs r0, r3, r6 - lsls r0, 5 - ldr r1, [sp, 0xC] - adds r4, r0, r1 - adds r1, r2, r4 - ldrb r0, [r1, 0x8] - mov r8, r2 - adds r5, 0x1 - str r5, [sp, 0x30] - cmp r0, 0 - bne _0804E976 - ldrb r0, [r1, 0x11] - cmp r0, 0 - bne _0804E976 - ldrb r0, [r1, 0xB] - cmp r0, 0 - bne _0804E976 - ldrb r0, [r1, 0xF] - cmp r0, 0 - bne _0804E976 - movs r6, 0 - ldrsh r5, [r1, r6] - movs r6, 0x4 - ldrsh r0, [r1, r6] - cmp r5, r0 - bge _0804E976 - mov r10, r4 -_0804E908: - ldr r1, [sp, 0x1C] - subs r0, r3, r1 - lsls r0, 5 - ldr r3, [sp, 0xC] - adds r0, r3 - adds r0, r2, r0 - movs r6, 0x2 - ldrsh r4, [r0, r6] - movs r1, 0x6 - ldrsh r0, [r0, r1] - adds r7, r5, 0x1 - cmp r4, r0 - bge _0804E95C - mov r6, r8 - add r6, r10 -_0804E926: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0] - ldr r3, _0804E99C - adds r1, r3, 0 - ands r2, r1 - strh r2, [r0] - ldrh r2, [r0, 0x4] - adds r3, 0x1 - adds r1, r3, 0 - ands r2, r1 - adds r3, 0x1 - adds r1, r3, 0 - ands r2, r1 - subs r3, 0x3 - adds r1, r3, 0 - ands r2, r1 - strh r2, [r0, 0x4] - movs r1, 0xFF - strb r1, [r0, 0x9] - adds r4, 0x1 - movs r1, 0x6 - ldrsh r0, [r6, r1] - cmp r4, r0 - blt _0804E926 -_0804E95C: - adds r5, r7, 0 - mov r2, r8 - mov r3, r9 - ldr r4, [sp, 0x1C] - subs r0, r3, r4 - lsls r0, 5 - ldr r6, [sp, 0xC] - adds r0, r6 - adds r0, r2, r0 - movs r1, 0x4 - ldrsh r0, [r0, r1] - cmp r5, r0 - blt _0804E908 -_0804E976: - ldr r2, [sp, 0x30] - str r2, [sp, 0x20] - ldr r3, [sp, 0x14] - cmp r2, r3 - blt _0804E8CA -_0804E980: - ldr r4, [sp, 0x2C] - str r4, [sp, 0x1C] - ldr r5, [sp, 0x10] - cmp r4, r5 - blt _0804E8B4 -_0804E98A: - add sp, 0x40 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804E99C: .4byte 0x0000fffc -_0804E9A0: .4byte 0x0000fffe -_0804E9A4: .4byte 0x0000fffd - thumb_func_end sub_804E590 - - thumb_func_start sub_804E9A8 -sub_804E9A8: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r1, 24 - lsls r2, 24 - lsrs r2, 24 - ldrh r0, [r4] - ldr r5, _0804E9D8 - adds r3, r5, 0 - ands r3, r0 - strh r3, [r4] - cmp r1, 0 - beq _0804E9D0 - ldrb r0, [r4, 0x9] - cmp r0, r2 - bne _0804E9D0 - adds r0, r3, 0 - ands r0, r5 - movs r1, 0x2 - orrs r0, r1 - strh r0, [r4] -_0804E9D0: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0804E9D8: .4byte 0x0000fffc - thumb_func_end sub_804E9A8 - - thumb_func_start sub_804E9DC -sub_804E9DC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r5, 0 - movs r0, 0x3 - mov r8, r0 - movs r7, 0x8 - ldr r3, _0804EAF0 - mov r9, r3 -_0804E9F2: - movs r4, 0 - adds r6, r5, 0x1 - mov r10, r6 -_0804E9F8: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - adds r6, r4, 0x1 - cmp r0, 0x1 - beq _0804EA0E - b _0804EB0E -_0804EA0E: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrb r0, [r0, 0x9] - cmp r0, 0xFF - bne _0804EAF4 - cmp r5, 0 - ble _0804EA4E - subs r0, r5, 0x1 - adds r1, r4, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrb r0, [r2, 0x9] - cmp r0, 0xFF - beq _0804EA4E - ldrh r0, [r2] - adds r1, r0, 0 - orrs r1, r7 - movs r3, 0 - strh r1, [r2] - adds r0, r1, 0 - mov r6, r8 - ands r0, r6 - cmp r0, 0x2 - bne _0804EA4E - mov r0, r9 - ands r1, r0 - movs r0, 0x1 - orrs r1, r0 - strh r1, [r2] -_0804EA4E: - cmp r4, 0 - ble _0804EA82 - subs r1, r4, 0x1 - adds r0, r5, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrb r0, [r2, 0x9] - cmp r0, 0xFF - beq _0804EA82 - ldrh r0, [r2] - adds r1, r0, 0 - orrs r1, r7 - movs r3, 0 - orrs r1, r7 - strh r1, [r2] - adds r0, r1, 0 - mov r6, r8 - ands r0, r6 - cmp r0, 0x2 - bne _0804EA82 - mov r0, r9 - ands r1, r0 - movs r0, 0x1 - orrs r1, r0 - strh r1, [r2] -_0804EA82: - adds r6, r4, 0x1 - cmp r4, 0x1E - bgt _0804EABA - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrb r0, [r2, 0x9] - cmp r0, 0xFF - beq _0804EABA - ldrh r0, [r2] - adds r1, r0, 0 - orrs r1, r7 - movs r3, 0 - mov r12, r3 - orrs r1, r7 - strh r1, [r2] - adds r0, r1, 0 - mov r3, r8 - ands r0, r3 - cmp r0, 0x2 - bne _0804EABA - mov r0, r9 - ands r1, r0 - movs r0, 0x1 - orrs r1, r0 - strh r1, [r2] -_0804EABA: - cmp r5, 0x36 - bgt _0804EB0E - mov r0, r10 - adds r1, r4, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrb r0, [r2, 0x9] - cmp r0, 0xFF - beq _0804EB0E - ldrh r0, [r2] - adds r1, r0, 0 - orrs r1, r7 - movs r3, 0 - orrs r1, r7 - strh r1, [r2] - adds r0, r1, 0 - mov r4, r8 - ands r0, r4 - cmp r0, 0x2 - bne _0804EB0E - mov r0, r9 - ands r1, r0 - movs r0, 0x1 - orrs r1, r0 - strh r1, [r2] - b _0804EB0E - .align 2, 0 -_0804EAF0: .4byte 0x0000fffc -_0804EAF4: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrb r0, [r0, 0x9] - cmp r0, 0xFE - bne _0804EB0E - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0xFF - strb r1, [r0, 0x9] -_0804EB0E: - adds r4, r6, 0 - cmp r4, 0x1F - bgt _0804EB16 - b _0804E9F8 -_0804EB16: - mov r5, r10 - cmp r5, 0x37 - bgt _0804EB1E - b _0804E9F2 -_0804EB1E: - bl sub_804EB30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804E9DC - - thumb_func_start sub_804EB30 -sub_804EB30: - push {r4-r7,lr} - ldr r0, _0804EBB4 - ldr r6, [r0] - movs r2, 0 - movs r1, 0x1F - ldr r3, _0804EBB8 - adds r0, r6, r3 -_0804EB3E: - strh r2, [r0] - subs r0, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _0804EB3E - movs r5, 0 -_0804EB4A: - movs r4, 0 - adds r7, r5, 0x1 -_0804EB4E: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0804EBA2 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrb r3, [r0, 0x9] - cmp r3, 0x1F - bhi _0804EBA2 - lsls r0, r3, 1 - ldr r2, _0804EBBC - adds r1, r6, r2 - adds r2, r1, r0 - movs r1, 0 - ldrsh r0, [r2, r1] - cmp r0, 0x1F - bgt _0804EBA2 - lsls r0, 2 - lsls r1, r3, 7 - adds r0, r1 - adds r0, r6, r0 - ldr r3, _0804EBC0 - adds r0, r3 - strh r5, [r0] - movs r3, 0 - ldrsh r0, [r2, r3] - lsls r0, 2 - adds r0, r1 - adds r0, r6, r0 - ldr r1, _0804EBC4 - adds r0, r1 - strh r4, [r0] - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] -_0804EBA2: - adds r4, 0x1 - cmp r4, 0x1F - ble _0804EB4E - adds r5, r7, 0 - cmp r5, 0x37 - ble _0804EB4A - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804EBB4: .4byte gUnknown_203B418 -_0804EBB8: .4byte 0x00010882 -_0804EBBC: .4byte 0x00010844 -_0804EBC0: .4byte 0x00010884 -_0804EBC4: .4byte 0x00010886 - thumb_func_end sub_804EB30 - - thumb_func_start sub_804EBC8 -sub_804EBC8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x58 - str r0, [sp, 0x40] - str r1, [sp, 0x44] - mov r10, r2 - adds r4, r3, 0 - ldr r0, _0804EE90 - ldr r0, [r0] - mov r8, r0 - ldr r1, _0804EE94 - ldr r0, _0804EE98 - strh r0, [r1] - movs r0, 0x1 - negs r0, r0 - strh r0, [r1, 0x2] - ldr r0, _0804EE9C - ldrb r0, [r0] - cmp r0, 0 - beq _0804EBF8 - b _0804EED4 -_0804EBF8: - bl sub_8043D10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _0804EC06 - b _0804EED4 -_0804EC06: - cmp r4, 0 - bne _0804EC0C - b _0804EED4 -_0804EC0C: - movs r0, 0x64 - bl sub_8084100 - cmp r4, r0 - bgt _0804EC18 - b _0804EED4 -_0804EC18: - movs r5, 0 - add r7, sp, 0x20 - adds r1, r7, 0 - mov r0, sp -_0804EC20: - strh r5, [r0] - strh r5, [r1] - adds r1, 0x2 - adds r0, 0x2 - adds r5, 0x1 - cmp r5, 0xE - ble _0804EC20 - movs r5, 0xC7 -_0804EC30: - movs r0, 0xF - bl sub_8084100 - adds r4, r0, 0 - movs r0, 0xF - bl sub_8084100 - lsls r4, 1 - mov r1, sp - adds r2, r1, r4 - movs r4, 0 - ldrsh r3, [r2, r4] - lsls r0, 1 - adds r1, r0 - ldrh r0, [r1] - strh r0, [r2] - strh r3, [r1] - subs r5, 0x1 - cmp r5, 0 - bge _0804EC30 - adds r6, r7, 0 - movs r5, 0xC7 -_0804EC5C: - movs r0, 0xF - bl sub_8084100 - adds r4, r0, 0 - movs r0, 0xF - bl sub_8084100 - lsls r4, 1 - adds r4, r6, r4 - movs r1, 0 - ldrsh r2, [r4, r1] - lsls r0, 1 - adds r0, r6, r0 - ldrh r1, [r0] - strh r1, [r4] - strh r2, [r0] - subs r5, 0x1 - cmp r5, 0 - bge _0804EC5C - movs r5, 0 -_0804EC84: - lsls r0, r5, 1 - add r0, sp - movs r3, 0 - ldrsh r2, [r0, r3] - mov r9, r2 - ldr r4, [sp, 0x44] - cmp r9, r4 - blt _0804EC96 - b _0804EECC -_0804EC96: - movs r4, 0 -_0804EC98: - lsls r0, r4, 1 - adds r0, r7, r0 - movs r2, 0 - ldrsh r1, [r0, r2] - cmp r1, r10 - blt _0804ECA6 - b _0804EEC4 -_0804ECA6: - lsls r1, 5 - mov r3, r9 - lsls r2, r3, 4 - subs r0, r2, r3 - lsls r0, 5 - ldr r3, [sp, 0x40] - adds r0, r3 - adds r3, r1, r0 - ldrb r0, [r3, 0x8] - str r1, [sp, 0x4C] - str r2, [sp, 0x48] - cmp r0, 0 - beq _0804ECC2 - b _0804EEC4 -_0804ECC2: - ldrb r0, [r3, 0x11] - cmp r0, 0 - beq _0804ECCA - b _0804EEC4 -_0804ECCA: - ldrb r0, [r3, 0x12] - cmp r0, 0 - beq _0804ECD2 - b _0804EEC4 -_0804ECD2: - ldrb r0, [r3, 0xB] - cmp r0, 0 - bne _0804ECDA - b _0804EEC4 -_0804ECDA: - ldrb r0, [r3, 0xA] - cmp r0, 0 - bne _0804ECE2 - b _0804EEC4 -_0804ECE2: - ldrb r0, [r3, 0x9] - cmp r0, 0 - beq _0804ECEA - b _0804EEC4 -_0804ECEA: - ldrb r0, [r3, 0x10] - cmp r0, 0 - beq _0804ECF2 - b _0804EEC4 -_0804ECF2: - ldrb r0, [r3, 0x1D] - cmp r0, 0 - beq _0804ECFA - b _0804EEC4 -_0804ECFA: - movs r0, 0x4 - ldrsh r1, [r3, r0] - movs r2, 0 - ldrsh r0, [r3, r2] - subs r1, r0 - cmp r1, 0 - bge _0804ED0A - negs r1, r1 -_0804ED0A: - cmp r1, 0x4 - bgt _0804ED10 - b _0804EEC4 -_0804ED10: - movs r0, 0x6 - ldrsh r1, [r3, r0] - movs r2, 0x2 - ldrsh r0, [r3, r2] - subs r1, r0 - cmp r1, 0 - bge _0804ED20 - negs r1, r1 -_0804ED20: - cmp r1, 0x3 - bgt _0804ED26 - b _0804EEC4 -_0804ED26: - ldr r1, _0804EEA0 - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x1 - strb r0, [r3, 0xC] - ldr r2, _0804EEA4 - movs r4, 0 - ldrsh r0, [r3, r4] - adds r0, 0x1 - str r0, [r2] - movs r7, 0x4 - ldrsh r0, [r3, r7] - subs r0, 0x1 - str r0, [r2, 0x8] - movs r0, 0x2 - ldrsh r1, [r3, r0] - adds r1, 0x1 - str r1, [r2, 0x4] - movs r4, 0x6 - ldrsh r3, [r3, r4] - subs r0, r3, 0x1 - str r0, [r2, 0xC] - subs r0, r1 - mov r10, r2 - cmp r0, 0x2 - bgt _0804ED5C - str r3, [r2, 0xC] -_0804ED5C: - ldr r0, _0804EEA8 - add r0, r8 - ldr r1, _0804EEAC - str r1, [r0] - ldr r0, _0804EEB0 - add r0, r8 - str r1, [r0] - ldr r0, _0804EEB4 - add r0, r8 - ldr r1, _0804EEB8 - str r1, [r0] - ldr r0, _0804EEBC - add r0, r8 - str r1, [r0] - mov r7, r10 - ldr r5, [r7] - ldr r0, [r7, 0x8] - cmp r5, r0 - bge _0804EDFA - mov r3, r10 -_0804ED84: - ldr r4, [r3, 0x4] - ldr r0, [r3, 0xC] - adds r1, r5, 0x1 - str r1, [sp, 0x54] - cmp r4, r0 - bge _0804EDF0 - ldr r6, _0804EEA8 - add r6, r8 - ldr r2, _0804EEA4 - mov r10, r2 -_0804ED98: - adds r0, r5, 0 - adds r1, r4, 0 - str r3, [sp, 0x50] - bl sub_8049590 - ldrh r2, [r0] - movs r1, 0x20 - orrs r1, r2 - strh r1, [r0] - ldrh r2, [r0, 0x4] - ldr r7, _0804EEC0 - adds r1, r7, 0 - ands r2, r1 - adds r7, 0x7 - adds r1, r7, 0 - ands r2, r1 - strh r2, [r0, 0x4] - ldr r0, [r6] - ldr r3, [sp, 0x50] - cmp r0, r5 - ble _0804EDC4 - str r5, [r6] -_0804EDC4: - ldr r1, _0804EEB0 - add r1, r8 - ldr r0, [r1] - cmp r0, r4 - ble _0804EDD0 - str r4, [r1] -_0804EDD0: - ldr r1, _0804EEB4 - add r1, r8 - ldr r0, [r1] - cmp r0, r5 - bge _0804EDDC - str r5, [r1] -_0804EDDC: - ldr r1, _0804EEBC - add r1, r8 - ldr r0, [r1] - cmp r0, r4 - bge _0804EDE8 - str r4, [r1] -_0804EDE8: - adds r4, 0x1 - ldr r0, [r3, 0xC] - cmp r4, r0 - blt _0804ED98 -_0804EDF0: - ldr r5, [sp, 0x54] - mov r1, r10 - ldr r0, [r1, 0x8] - cmp r5, r0 - blt _0804ED84 -_0804EDFA: - ldr r3, [sp, 0x4C] - ldr r2, [sp, 0x48] - mov r4, r9 - subs r0, r2, r4 - lsls r0, 5 - ldr r7, [sp, 0x40] - adds r1, r0, r7 - adds r0, r3, r1 - movs r4, 0 - ldrsh r5, [r0, r4] - movs r7, 0x4 - ldrsh r0, [r0, r7] - cmp r5, r0 - bge _0804EE6C - mov r8, r1 -_0804EE18: - mov r1, r9 - subs r0, r2, r1 - lsls r0, 5 - ldr r2, [sp, 0x40] - adds r0, r2 - adds r0, r3, r0 - movs r3, 0x2 - ldrsh r4, [r0, r3] - movs r7, 0x6 - ldrsh r0, [r0, r7] - adds r1, r5, 0x1 - str r1, [sp, 0x54] - cmp r4, r0 - bge _0804EE52 - ldr r6, [sp, 0x4C] - add r6, r8 -_0804EE38: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0, 0x4] - movs r1, 0x10 - orrs r1, r2 - strh r1, [r0, 0x4] - adds r4, 0x1 - movs r2, 0x6 - ldrsh r0, [r6, r2] - cmp r4, r0 - blt _0804EE38 -_0804EE52: - ldr r5, [sp, 0x54] - ldr r3, [sp, 0x4C] - ldr r2, [sp, 0x48] - mov r4, r9 - subs r0, r2, r4 - lsls r0, 5 - ldr r7, [sp, 0x40] - adds r0, r7 - adds r0, r3, r0 - movs r1, 0x4 - ldrsh r0, [r0, r1] - cmp r5, r0 - blt _0804EE18 -_0804EE6C: - ldr r2, _0804EEA4 - ldr r0, [r2] - ldr r1, [r2, 0x8] - adds r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r5, r0, 1 - ldr r0, [r2, 0x4] - ldr r1, [r2, 0xC] - adds r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r4, r0, 1 - ldr r0, _0804EE94 - strh r5, [r0] - strh r4, [r0, 0x2] - b _0804EED4 - .align 2, 0 -_0804EE90: .4byte gUnknown_203B418 -_0804EE94: .4byte gUnknown_202F1D8 -_0804EE98: .4byte 0x0000ffff -_0804EE9C: .4byte gUnknown_202F1AB -_0804EEA0: .4byte gUnknown_202F1AA -_0804EEA4: .4byte gUnknown_202F1B8 -_0804EEA8: .4byte 0x0000e240 -_0804EEAC: .4byte 0x0000270f -_0804EEB0: .4byte 0x0000e244 -_0804EEB4: .4byte 0x0000e248 -_0804EEB8: .4byte 0xffffd8f1 -_0804EEBC: .4byte 0x0000e24c -_0804EEC0: .4byte 0x0000fff7 -_0804EEC4: - adds r4, 0x1 - cmp r4, 0xE - bgt _0804EECC - b _0804EC98 -_0804EECC: - adds r5, 0x1 - cmp r5, 0xE - bgt _0804EED4 - b _0804EC84 -_0804EED4: - add sp, 0x58 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804EBC8 - - thumb_func_start sub_804EEE4 -sub_804EEE4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x108 - str r0, [sp, 0x100] - mov r8, r1 - adds r7, r2, 0 - adds r4, r3, 0 - ldr r5, _0804F094 - ldr r0, [r5] - str r0, [sp, 0x104] - cmp r4, 0 - bne _0804EF04 - b _0804F0C0 -_0804EF04: - movs r0, 0x64 - bl sub_8084100 - cmp r4, r0 - bgt _0804EF10 - b _0804F0C0 -_0804EF10: - ldr r0, _0804F098 - ldrb r0, [r0] - cmp r0, 0 - beq _0804EF1A - b _0804F0C0 -_0804EF1A: - ldr r0, [r5] - movs r1, 0xD1 - lsls r1, 3 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - beq _0804EF2C - b _0804F0C0 -_0804EF2C: - bl sub_8043D10 - lsls r0, 24 - cmp r0, 0 - beq _0804EF38 - b _0804F0C0 -_0804EF38: - movs r6, 0 - movs r1, 0 - cmp r1, r8 - bge _0804EF94 -_0804EF40: - adds r2, r1, 0x1 - cmp r7, 0 - ble _0804EF8E - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - ldr r1, [sp, 0x100] - adds r1, 0x8 - adds r1, r0, r1 - adds r3, r7, 0 -_0804EF54: - ldrb r0, [r1] - cmp r0, 0 - bne _0804EF86 - ldrb r0, [r1, 0x9] - cmp r0, 0 - bne _0804EF86 - ldrb r0, [r1, 0x3] - cmp r0, 0 - beq _0804EF86 - ldrb r0, [r1, 0x2] - cmp r0, 0 - beq _0804EF86 - ldrb r0, [r1, 0x4] - cmp r0, 0 - bne _0804EF86 - ldrb r0, [r1, 0x7] - cmp r0, 0 - bne _0804EF86 - ldrb r0, [r1, 0x8] - cmp r0, 0 - bne _0804EF86 - ldrb r0, [r1, 0x1] - cmp r0, 0 - bne _0804EF86 - adds r6, 0x1 -_0804EF86: - adds r1, 0x20 - subs r3, 0x1 - cmp r3, 0 - bne _0804EF54 -_0804EF8E: - adds r1, r2, 0 - cmp r1, r8 - blt _0804EF40 -_0804EF94: - cmp r6, 0 - bne _0804EF9A - b _0804F0C0 -_0804EF9A: - movs r1, 0 - mov r0, sp - adds r0, 0xFF -_0804EFA0: - strb r1, [r0] - subs r0, 0x1 - cmp r0, sp - bge _0804EFA0 - mov r1, sp - movs r0, 0x1 - strb r0, [r1] - movs r5, 0x3F -_0804EFB0: - adds r0, r6, 0 - bl sub_8084100 - adds r4, r0, 0 - adds r0, r6, 0 - bl sub_8084100 - mov r3, sp - adds r2, r3, r4 - ldrb r3, [r2] - mov r4, sp - adds r1, r4, r0 - ldrb r0, [r1] - strb r0, [r2] - strb r3, [r1] - subs r5, 0x1 - cmp r5, 0 - bge _0804EFB0 - movs r5, 0 - movs r1, 0 - cmp r1, r8 - bge _0804F0C0 - ldr r6, [sp, 0x100] - mov r9, r6 - movs r4, 0 -_0804EFE2: - movs r3, 0 - cmp r3, r7 - bge _0804F0B2 - mov r10, r3 - lsls r0, r4, 5 - ldr r6, [sp, 0x100] - adds r2, r0, r6 -_0804EFF0: - ldrb r0, [r2, 0x8] - cmp r0, 0 - bne _0804F0A6 - ldrb r0, [r2, 0x11] - cmp r0, 0 - bne _0804F0A6 - ldrb r0, [r2, 0xB] - cmp r0, 0 - beq _0804F0A6 - ldrb r0, [r2, 0xA] - cmp r0, 0 - beq _0804F0A6 - ldrb r0, [r2, 0xC] - cmp r0, 0 - bne _0804F0A6 - ldrb r0, [r2, 0xF] - cmp r0, 0 - bne _0804F0A6 - ldrb r0, [r2, 0x10] - cmp r0, 0 - bne _0804F0A6 - ldrb r0, [r2, 0x9] - cmp r0, 0 - bne _0804F0A6 - mov r6, sp - adds r0, r6, r5 - ldrb r0, [r0] - cmp r0, 0 - beq _0804F0A4 - ldr r1, _0804F09C - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x1 - strb r0, [r2, 0xE] - movs r0, 0 - ldrsh r5, [r2, r0] - movs r1, 0x4 - ldrsh r0, [r2, r1] - cmp r5, r0 - bge _0804F0C0 - mov r2, r10 - add r2, r9 - mov r8, r2 -_0804F046: - mov r1, r10 - add r1, r9 - movs r3, 0x2 - ldrsh r4, [r1, r3] - movs r6, 0x6 - ldrsh r0, [r1, r6] - adds r7, r5, 0x1 - cmp r4, r0 - bge _0804F086 - adds r6, r1, 0 -_0804F05A: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0] - movs r1, 0x40 - orrs r1, r2 - strh r1, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrb r1, [r0, 0x9] - ldr r2, [sp, 0x104] - ldr r3, _0804F0A0 - adds r0, r2, r3 - strb r1, [r0] - adds r4, 0x1 - movs r1, 0x6 - ldrsh r0, [r6, r1] - cmp r4, r0 - blt _0804F05A -_0804F086: - adds r5, r7, 0 - mov r2, r8 - movs r3, 0x4 - ldrsh r0, [r2, r3] - cmp r5, r0 - blt _0804F046 - b _0804F0C0 - .align 2, 0 -_0804F094: .4byte gUnknown_203B418 -_0804F098: .4byte gUnknown_202F1AA -_0804F09C: .4byte gUnknown_202F1AB -_0804F0A0: .4byte 0x00003a0c -_0804F0A4: - adds r5, 0x1 -_0804F0A6: - movs r6, 0x20 - add r10, r6 - adds r2, 0x20 - adds r3, 0x1 - cmp r3, r7 - blt _0804EFF0 -_0804F0B2: - movs r0, 0xF0 - lsls r0, 1 - add r9, r0 - adds r4, 0xF - adds r1, 0x1 - cmp r1, r8 - blt _0804EFE2 -_0804F0C0: - add sp, 0x108 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804EEE4 - - thumb_func_start sub_804F0D0 -sub_804F0D0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x104 - str r0, [sp, 0x100] - mov r10, r1 - mov r9, r2 - adds r4, r3, 0 - ldr r0, _0804F244 - ldr r5, [r0] - cmp r4, 0 - bne _0804F0EE - b _0804F266 -_0804F0EE: - movs r0, 0x64 - bl sub_8084100 - cmp r4, r0 - bgt _0804F0FA - b _0804F266 -_0804F0FA: - ldr r1, _0804F248 - adds r0, r5, r1 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r0, 0 - blt _0804F108 - b _0804F266 -_0804F108: - movs r5, 0 - movs r6, 0 - cmp r6, r10 - bge _0804F184 -_0804F110: - adds r7, r6, 0x1 - mov r4, r9 - cmp r4, 0 - ble _0804F17E - lsls r0, r6, 4 - subs r0, r6 - lsls r0, 5 - ldr r6, [sp, 0x100] - adds r2, r0, r6 -_0804F122: - ldrb r0, [r2, 0x8] - cmp r0, 0 - bne _0804F176 - ldrb r0, [r2, 0x11] - cmp r0, 0 - bne _0804F176 - ldrb r0, [r2, 0xB] - cmp r0, 0 - beq _0804F176 - ldrb r0, [r2, 0xA] - cmp r0, 0 - beq _0804F176 - ldrb r0, [r2, 0xC] - cmp r0, 0 - bne _0804F176 - ldrb r0, [r2, 0xF] - cmp r0, 0 - bne _0804F176 - ldrb r0, [r2, 0xE] - cmp r0, 0 - bne _0804F176 - ldrb r0, [r2, 0x9] - cmp r0, 0 - bne _0804F176 - movs r1, 0x4 - ldrsh r0, [r2, r1] - movs r3, 0 - ldrsh r1, [r2, r3] - subs r0, r1 - movs r3, 0x1 - ands r0, r3 - cmp r0, 0 - beq _0804F176 - movs r6, 0x6 - ldrsh r0, [r2, r6] - movs r6, 0x2 - ldrsh r1, [r2, r6] - subs r0, r1 - ands r0, r3 - cmp r0, 0 - beq _0804F176 - adds r5, 0x1 -_0804F176: - adds r2, 0x20 - subs r4, 0x1 - cmp r4, 0 - bne _0804F122 -_0804F17E: - adds r6, r7, 0 - cmp r6, r10 - blt _0804F110 -_0804F184: - cmp r5, 0 - beq _0804F266 - movs r1, 0 - mov r0, sp - adds r0, 0xFF -_0804F18E: - strb r1, [r0] - subs r0, 0x1 - cmp r0, sp - bge _0804F18E - mov r1, sp - movs r0, 0x1 - strb r0, [r1] - movs r7, 0x3F - mov r8, r7 -_0804F1A0: - adds r0, r5, 0 - bl sub_8084100 - adds r4, r0, 0 - adds r0, r5, 0 - bl sub_8084100 - mov r1, sp - adds r2, r1, r4 - ldrb r3, [r2] - adds r1, r0 - ldrb r0, [r1] - strb r0, [r2] - strb r3, [r1] - movs r3, 0x1 - negs r3, r3 - add r8, r3 - mov r4, r8 - cmp r4, 0 - bge _0804F1A0 - movs r6, 0 - mov r8, r6 - cmp r6, r10 - bge _0804F266 - ldr r7, [sp, 0x100] - mov r12, r7 -_0804F1D4: - movs r4, 0 - cmp r4, r9 - bge _0804F25A - mov r2, r12 - mov r5, r12 -_0804F1DE: - ldrb r0, [r2, 0x8] - cmp r0, 0 - bne _0804F250 - ldrb r0, [r2, 0x11] - cmp r0, 0 - bne _0804F250 - ldrb r0, [r2, 0xB] - cmp r0, 0 - beq _0804F250 - ldrb r0, [r2, 0xA] - cmp r0, 0 - beq _0804F250 - ldrb r0, [r2, 0xC] - cmp r0, 0 - bne _0804F250 - ldrb r0, [r2, 0xF] - cmp r0, 0 - bne _0804F250 - ldrb r0, [r2, 0xE] - cmp r0, 0 - bne _0804F250 - ldrb r0, [r2, 0x9] - cmp r0, 0 - bne _0804F250 - movs r1, 0x4 - ldrsh r0, [r2, r1] - movs r3, 0 - ldrsh r1, [r2, r3] - subs r0, r1 - movs r3, 0x1 - ands r0, r3 - cmp r0, 0 - beq _0804F250 - movs r7, 0x6 - ldrsh r0, [r2, r7] - movs r7, 0x2 - ldrsh r1, [r2, r7] - subs r0, r1 - ands r0, r3 - cmp r0, 0 - beq _0804F250 - mov r0, sp - add r0, r8 - ldrb r0, [r0] - cmp r0, 0 - beq _0804F24C - adds r0, r5, 0 - movs r1, 0 - bl sub_804F278 - b _0804F266 - .align 2, 0 -_0804F244: .4byte gUnknown_203B418 -_0804F248: .4byte 0x00003a16 -_0804F24C: - movs r0, 0x1 - add r8, r0 -_0804F250: - adds r2, 0x20 - adds r5, 0x20 - adds r4, 0x1 - cmp r4, r9 - blt _0804F1DE -_0804F25A: - movs r1, 0xF0 - lsls r1, 1 - add r12, r1 - adds r6, 0x1 - cmp r6, r10 - blt _0804F1D4 -_0804F266: - add sp, 0x104 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804F0D0 - - thumb_func_start sub_804F278 -sub_804F278: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - adds r4, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - ldr r1, _0804F2B0 - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x1 - strb r0, [r4, 0x10] - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - ldrb r0, [r0, 0x9] - mov r9, r0 - movs r5, 0 - ldrsh r0, [r4, r5] - adds r6, r0, 0x1 - b _0804F2F0 - .align 2, 0 -_0804F2B0: .4byte gUnknown_202F1AC -_0804F2B4: - movs r2, 0x2 - ldrsh r1, [r4, r2] - subs r1, 0x1 - adds r0, r6, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0804F2EE - movs r5, 0x2 - ldrsh r3, [r4, r5] - subs r1, r3, 0x1 - movs r0, 0 - ldrsh r2, [r4, r0] - movs r5, 0x4 - ldrsh r0, [r4, r5] - str r0, [sp] - movs r5, 0x6 - ldrsh r0, [r4, r5] - str r0, [sp, 0x4] - mov r0, r8 - str r0, [sp, 0x8] - mov r5, r9 - str r5, [sp, 0xC] - adds r0, r6, 0 - bl sub_804F494 -_0804F2EE: - adds r6, 0x2 -_0804F2F0: - movs r1, 0x4 - ldrsh r0, [r4, r1] - subs r0, 0x1 - cmp r6, r0 - blt _0804F2B4 - movs r2, 0x2 - ldrsh r0, [r4, r2] - adds r5, r0, 0x1 - movs r6, 0x6 - ldrsh r0, [r4, r6] - b _0804F342 -_0804F306: - movs r1, 0x4 - ldrsh r0, [r4, r1] - adds r1, r5, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0804F33C - movs r2, 0x4 - ldrsh r0, [r4, r2] - movs r6, 0 - ldrsh r2, [r4, r6] - movs r1, 0x2 - ldrsh r3, [r4, r1] - str r0, [sp] - movs r6, 0x6 - ldrsh r1, [r4, r6] - str r1, [sp, 0x4] - mov r1, r8 - str r1, [sp, 0x8] - mov r6, r9 - str r6, [sp, 0xC] - adds r1, r5, 0 - bl sub_804F494 -_0804F33C: - adds r5, 0x2 - movs r1, 0x6 - ldrsh r0, [r4, r1] -_0804F342: - subs r0, 0x1 - cmp r5, r0 - blt _0804F306 - movs r2, 0 - ldrsh r0, [r4, r2] - adds r6, r0, 0x1 - movs r5, 0x4 - ldrsh r0, [r4, r5] - b _0804F392 -_0804F354: - movs r0, 0x6 - ldrsh r1, [r4, r0] - adds r0, r6, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0804F38C - movs r2, 0x6 - ldrsh r1, [r4, r2] - movs r5, 0 - ldrsh r2, [r4, r5] - movs r0, 0x2 - ldrsh r3, [r4, r0] - movs r5, 0x4 - ldrsh r0, [r4, r5] - str r0, [sp] - adds r0, r1, 0 - str r0, [sp, 0x4] - mov r0, r8 - str r0, [sp, 0x8] - mov r5, r9 - str r5, [sp, 0xC] - adds r0, r6, 0 - bl sub_804F494 -_0804F38C: - adds r6, 0x2 - movs r1, 0x4 - ldrsh r0, [r4, r1] -_0804F392: - subs r0, 0x1 - cmp r6, r0 - blt _0804F354 - movs r2, 0x2 - ldrsh r0, [r4, r2] - adds r5, r0, 0x1 - movs r6, 0x6 - ldrsh r0, [r4, r6] - b _0804F3E4 -_0804F3A4: - movs r1, 0 - ldrsh r0, [r4, r1] - subs r0, 0x1 - adds r1, r5, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0804F3DE - movs r6, 0 - ldrsh r2, [r4, r6] - subs r0, r2, 0x1 - movs r1, 0x2 - ldrsh r3, [r4, r1] - movs r6, 0x4 - ldrsh r1, [r4, r6] - str r1, [sp] - movs r6, 0x6 - ldrsh r1, [r4, r6] - str r1, [sp, 0x4] - mov r1, r8 - str r1, [sp, 0x8] - mov r6, r9 - str r6, [sp, 0xC] - adds r1, r5, 0 - bl sub_804F494 -_0804F3DE: - adds r5, 0x2 - movs r1, 0x6 - ldrsh r0, [r4, r1] -_0804F3E4: - subs r0, 0x1 - cmp r5, r0 - blt _0804F3A4 - movs r2, 0 - ldrsh r0, [r4, r2] - adds r6, r0, 0x3 - b _0804F478 -_0804F3F2: - movs r1, 0x2 - ldrsh r0, [r4, r1] - adds r5, r0, 0x3 - movs r2, 0x6 - ldrsh r0, [r4, r2] - subs r0, 0x3 - adds r1, r6, 0x2 - mov r10, r1 - cmp r5, r0 - bge _0804F476 - ldr r2, _0804F434 - adds r7, r2, 0 -_0804F40A: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _0804F46A - mov r0, r8 - cmp r0, 0 - beq _0804F438 - subs r0, r6, 0x1 - adds r1, r5, 0 - bl sub_8049590 - ldrh r1, [r0] - ands r1, r7 - movs r2, 0x2 - orrs r1, r2 - b _0804F444 - .align 2, 0 -_0804F434: .4byte 0x0000fffc -_0804F438: - subs r0, r6, 0x1 - adds r1, r5, 0 - bl sub_8049590 - ldrh r1, [r0] - ands r1, r7 -_0804F444: - strh r1, [r0] - movs r1, 0 - ldrsh r2, [r4, r1] - movs r0, 0x2 - ldrsh r3, [r4, r0] - movs r1, 0x4 - ldrsh r0, [r4, r1] - str r0, [sp] - movs r1, 0x6 - ldrsh r0, [r4, r1] - str r0, [sp, 0x4] - mov r0, r8 - str r0, [sp, 0x8] - mov r1, r9 - str r1, [sp, 0xC] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804F494 -_0804F46A: - adds r5, 0x2 - movs r2, 0x6 - ldrsh r0, [r4, r2] - subs r0, 0x3 - cmp r5, r0 - blt _0804F40A -_0804F476: - mov r6, r10 -_0804F478: - movs r5, 0x4 - ldrsh r0, [r4, r5] - subs r0, 0x3 - cmp r6, r0 - blt _0804F3F2 - 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_804F278 - - thumb_func_start sub_804F494 -sub_804F494: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r5, r0, 0 - adds r4, r1, 0 - str r2, [sp] - str r3, [sp, 0x4] - ldr r0, [sp, 0x30] - ldr r1, [sp, 0x34] - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 24 - mov r8, r1 - movs r0, 0x3 - mov r10, r0 -_0804F4BA: - movs r0, 0x4 - bl sub_8084100 - adds r6, r0, 0 - movs r7, 0 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - mov r1, r9 - mov r3, r8 - lsrs r2, r3, 24 - bl sub_804E9A8 -_0804F4D6: - adds r0, r6, 0 - mov r1, r10 - ands r0, r1 - cmp r0, 0x1 - beq _0804F4F6 - cmp r0, 0x1 - bgt _0804F4EA - cmp r0, 0 - beq _0804F4F0 - b _0804F506 -_0804F4EA: - cmp r0, 0x2 - beq _0804F4FE - b _0804F506 -_0804F4F0: - movs r0, 0x2 - movs r1, 0 - b _0804F50A -_0804F4F6: - movs r0, 0 - movs r1, 0x2 - negs r1, r1 - b _0804F50A -_0804F4FE: - movs r0, 0x2 - negs r0, r0 - movs r1, 0 - b _0804F50A -_0804F506: - movs r0, 0 - movs r1, 0x2 -_0804F50A: - adds r0, r5, r0 - ldr r2, [sp] - cmp r2, r0 - bgt _0804F534 - ldr r3, [sp, 0x28] - cmp r3, r0 - ble _0804F534 - adds r1, r4, r1 - ldr r2, [sp, 0x4] - cmp r2, r1 - bgt _0804F534 - ldr r3, [sp, 0x2C] - cmp r3, r1 - ble _0804F534 - bl sub_804954C - ldrh r1, [r0] - mov r0, r10 - ands r0, r1 - cmp r0, 0x1 - beq _0804F53E -_0804F534: - adds r6, 0x1 - adds r7, 0x1 - cmp r7, 0x3 - bgt _0804F5B2 - b _0804F4D6 -_0804F53E: - mov r0, r10 - ands r0, r6 - cmp r0, 0x1 - beq _0804F570 - cmp r0, 0x1 - bgt _0804F550 - cmp r0, 0 - beq _0804F55A - b _0804F4BA -_0804F550: - cmp r0, 0x2 - beq _0804F586 - cmp r0, 0x3 - beq _0804F59C - b _0804F4BA -_0804F55A: - adds r0, r5, 0x1 - adds r1, r4, 0 - bl sub_8049590 - mov r1, r9 - mov r3, r8 - lsrs r2, r3, 24 - bl sub_804E9A8 - adds r5, 0x2 - b _0804F4BA -_0804F570: - subs r1, r4, 0x1 - adds r0, r5, 0 - bl sub_8049590 - mov r1, r9 - mov r3, r8 - lsrs r2, r3, 24 - bl sub_804E9A8 - subs r4, 0x2 - b _0804F4BA -_0804F586: - subs r0, r5, 0x1 - adds r1, r4, 0 - bl sub_8049590 - mov r1, r9 - mov r3, r8 - lsrs r2, r3, 24 - bl sub_804E9A8 - subs r5, 0x2 - b _0804F4BA -_0804F59C: - adds r1, r4, 0x1 - adds r0, r5, 0 - bl sub_8049590 - mov r1, r9 - mov r3, r8 - lsrs r2, r3, 24 - bl sub_804E9A8 - adds r4, 0x2 - b _0804F4BA -_0804F5B2: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804F494 - - thumb_func_start sub_804F5C4 -sub_804F5C4: - ldrh r3, [r0] - ldr r2, _0804F5D4 - ands r2, r3 - movs r3, 0x2 - orrs r2, r3 - orrs r2, r1 - strh r2, [r0] - bx lr - .align 2, 0 -_0804F5D4: .4byte 0x0000fffc - thumb_func_end sub_804F5C4 - - thumb_func_start sub_804F5D8 -sub_804F5D8: - push {r4-r7,lr} - adds r5, r0, 0 - movs r0, 0 - ldrsh r6, [r5, r0] - b _0804F60C -_0804F5E2: - movs r0, 0x2 - ldrsh r4, [r5, r0] - movs r1, 0x6 - ldrsh r0, [r5, r1] - adds r7, r6, 0x1 - cmp r4, r0 - bge _0804F60A -_0804F5F0: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0, 0x4] - movs r1, 0x20 - orrs r1, r2 - strh r1, [r0, 0x4] - adds r4, 0x1 - movs r1, 0x6 - ldrsh r0, [r5, r1] - cmp r4, r0 - blt _0804F5F0 -_0804F60A: - adds r6, r7, 0 -_0804F60C: - movs r1, 0x4 - ldrsh r0, [r5, r1] - cmp r6, r0 - blt _0804F5E2 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804F5D8 - - thumb_func_start sub_804F61C -sub_804F61C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r9, r0 - mov r8, r1 - movs r7, 0x1 - negs r7, r7 - b _0804F67A -_0804F62E: - movs r5, 0x1 - negs r5, r5 - b _0804F666 -_0804F634: - cmp r7, 0 - beq _0804F63C - cmp r5, 0 - bne _0804F660 -_0804F63C: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _0804F660 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_804954C - ldrb r0, [r0, 0x9] - cmp r0, 0xFF - bne _0804F660 - movs r0, 0x1 - b _0804F686 -_0804F660: - adds r5, 0x1 - cmp r5, 0x1 - bgt _0804F672 -_0804F666: - mov r0, r8 - adds r4, r0, r5 - cmp r4, 0 - blt _0804F660 - cmp r4, 0x1F - ble _0804F634 -_0804F672: - adds r7, 0x1 - cmp r7, 0x1 - bgt _0804F684 - mov r0, r9 -_0804F67A: - adds r6, r0, r7 - cmp r6, 0 - blt _0804F672 - cmp r6, 0x37 - ble _0804F62E -_0804F684: - movs r0, 0 -_0804F686: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_804F61C - - thumb_func_start sub_804F694 -sub_804F694: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r7, r0, 0 - movs r0, 0x6 - bl sub_8084100 - subs r0, 0x1 - cmp r0, 0x4 - bls _0804F6B0 - b _0804FBD6 -_0804F6B0: - lsls r0, 2 - ldr r1, _0804F6BC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0804F6BC: .4byte _0804F6C0 - .align 2, 0 -_0804F6C0: - .4byte _0804FB24 - .4byte _0804FA98 - .4byte _0804F9DC - .4byte _0804F826 - .4byte _0804F6D4 -_0804F6D4: - ldr r1, _0804F70C - ldr r0, [r1] - cmp r0, 0 - bne _0804F6DE - b _0804FBD6 -_0804F6DE: - subs r0, 0x1 - str r0, [r1] - adds r0, r7, 0 - bl sub_804F5D8 - movs r0, 0x2 - bl sub_8084100 - cmp r0, 0 - beq _0804F78E - movs r5, 0 - movs r1, 0 - ldrsh r0, [r7, r1] - movs r2, 0x4 - ldrsh r1, [r7, r2] - adds r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - mov r8, r0 - movs r3, 0x2 - ldrsh r4, [r7, r3] - b _0804F712 - .align 2, 0 -_0804F70C: .4byte gUnknown_202F1C8 -_0804F710: - adds r4, 0x1 -_0804F712: - movs r1, 0x6 - ldrsh r0, [r7, r1] - cmp r4, r0 - bge _0804F72A - mov r0, r8 - adds r1, r4, 0 - bl sub_804F61C - lsls r0, 24 - cmp r0, 0 - beq _0804F710 - movs r5, 0x1 -_0804F72A: - cmp r5, 0 - beq _0804F730 - b _0804FBD6 -_0804F730: - movs r2, 0x2 - ldrsh r4, [r7, r2] - movs r3, 0x6 - ldrsh r0, [r7, r3] - cmp r4, r0 - bge _0804F754 -_0804F73C: - mov r0, r8 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0 - bl sub_804F5C4 - adds r4, 0x1 - movs r5, 0x6 - ldrsh r0, [r7, r5] - cmp r4, r0 - blt _0804F73C -_0804F754: - movs r0, 0 - ldrsh r5, [r7, r0] - cmp r5, r8 - blt _0804F75E - b _0804FBD2 -_0804F75E: - movs r1, 0x2 - ldrsh r4, [r7, r1] - movs r2, 0x6 - ldrsh r0, [r7, r2] - adds r6, r5, 0x1 - cmp r4, r0 - bge _0804F786 -_0804F76C: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0] - movs r1, 0x80 - orrs r1, r2 - strh r1, [r0] - adds r4, 0x1 - movs r3, 0x6 - ldrsh r0, [r7, r3] - cmp r4, r0 - blt _0804F76C -_0804F786: - adds r5, r6, 0 - cmp r5, r8 - blt _0804F75E - b _0804FBD2 -_0804F78E: - movs r5, 0 - movs r4, 0x2 - ldrsh r0, [r7, r4] - movs r2, 0x6 - ldrsh r1, [r7, r2] - adds r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - mov r8, r0 - movs r3, 0 - ldrsh r4, [r7, r3] - b _0804F7AA -_0804F7A8: - adds r4, 0x1 -_0804F7AA: - movs r1, 0x4 - ldrsh r0, [r7, r1] - cmp r4, r0 - bge _0804F7C2 - adds r0, r4, 0 - mov r1, r8 - bl sub_804F61C - lsls r0, 24 - cmp r0, 0 - beq _0804F7A8 - movs r5, 0x1 -_0804F7C2: - cmp r5, 0 - beq _0804F7C8 - b _0804FBD6 -_0804F7C8: - movs r2, 0 - ldrsh r4, [r7, r2] - movs r3, 0x4 - ldrsh r0, [r7, r3] - cmp r4, r0 - bge _0804F7EC -_0804F7D4: - adds r0, r4, 0 - mov r1, r8 - bl sub_8049590 - movs r1, 0 - bl sub_804F5C4 - adds r4, 0x1 - movs r5, 0x4 - ldrsh r0, [r7, r5] - cmp r4, r0 - blt _0804F7D4 -_0804F7EC: - movs r0, 0x2 - ldrsh r5, [r7, r0] - cmp r5, r8 - blt _0804F7F6 - b _0804FBD2 -_0804F7F6: - movs r1, 0 - ldrsh r4, [r7, r1] - movs r2, 0x4 - ldrsh r0, [r7, r2] - adds r6, r5, 0x1 - cmp r4, r0 - bge _0804F81E -_0804F804: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - ldrh r2, [r0] - movs r1, 0x80 - orrs r1, r2 - strh r1, [r0] - adds r4, 0x1 - movs r3, 0x4 - ldrsh r0, [r7, r3] - cmp r4, r0 - blt _0804F804 -_0804F81E: - adds r5, r6, 0 - cmp r5, r8 - blt _0804F7F6 - b _0804FBD2 -_0804F826: - movs r4, 0x4 - ldrsh r3, [r7, r4] - movs r5, 0 - ldrsh r1, [r7, r5] - subs r0, r3, r1 - cmp r0, 0x5 - bgt _0804F836 - b _0804FBD6 -_0804F836: - movs r0, 0x6 - ldrsh r4, [r7, r0] - movs r5, 0x2 - ldrsh r2, [r7, r5] - subs r0, r4, r2 - cmp r0, 0x5 - bgt _0804F846 - b _0804FBD6 -_0804F846: - adds r0, r1, r3 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [sp] - adds r0, r2, r4 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [sp, 0x4] - ldr r1, _0804F9D8 - ldr r0, [r1] - cmp r0, 0 - bne _0804F864 - b _0804FBD6 -_0804F864: - subs r0, 0x1 - str r0, [r1] - adds r0, r7, 0 - bl sub_804F5D8 - ldr r5, [sp] - subs r5, 0x2 - ldr r0, [sp, 0x4] - subs r0, 0x2 - mov r10, r0 - adds r0, r5, 0 - mov r1, r10 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - ldr r1, [sp] - subs r1, 0x1 - mov r9, r1 - mov r0, r9 - mov r1, r10 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - ldr r0, [sp] - mov r1, r10 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - ldr r2, [sp] - adds r2, 0x1 - mov r8, r2 - mov r0, r8 - mov r1, r10 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - ldr r6, [sp, 0x4] - subs r6, 0x1 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - adds r0, r5, 0 - ldr r1, [sp, 0x4] - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - ldr r4, [sp, 0x4] - adds r4, 0x1 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - mov r0, r9 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - ldr r0, [sp] - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - mov r0, r8 - mov r1, r10 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - mov r0, r8 - adds r1, r6, 0 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - mov r0, r8 - ldr r1, [sp, 0x4] - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - mov r0, r8 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0x4 - bl sub_804F5C4 - mov r0, r9 - adds r1, r6, 0 - bl sub_8049590 - ldrh r2, [r0, 0x4] - movs r1, 0x4 - orrs r1, r2 - strh r1, [r0, 0x4] - mov r0, r9 - adds r1, r6, 0 - bl sub_8049590 - ldrh r1, [r0, 0x4] - movs r2, 0x40 - orrs r1, r2 - strh r1, [r0, 0x4] - ldr r0, [sp] - adds r1, r6, 0 - bl sub_8049590 - ldrh r1, [r0, 0x4] - movs r4, 0x2 - orrs r1, r4 - strh r1, [r0, 0x4] - mov r0, r9 - ldr r1, [sp, 0x4] - bl sub_8049590 - ldrh r1, [r0, 0x4] - orrs r1, r4 - strh r1, [r0, 0x4] - ldr r0, [sp] - ldr r1, [sp, 0x4] - bl sub_8049590 - ldrh r1, [r0, 0x4] - orrs r1, r4 - strh r1, [r0, 0x4] - mov r0, r9 - adds r1, r6, 0 - bl sub_8049590 - ldrh r1, [r0, 0x4] - movs r4, 0x10 - orrs r1, r4 - strh r1, [r0, 0x4] - ldr r0, [sp] - adds r1, r6, 0 - bl sub_8049590 - ldrh r1, [r0, 0x4] - orrs r1, r4 - strh r1, [r0, 0x4] - mov r0, r9 - ldr r1, [sp, 0x4] - bl sub_8049590 - ldrh r1, [r0, 0x4] - orrs r1, r4 - strh r1, [r0, 0x4] - ldr r0, [sp] - ldr r1, [sp, 0x4] - bl sub_8049590 - ldrh r1, [r0, 0x4] - orrs r4, r1 - strh r4, [r0, 0x4] - b _0804FBD2 - .align 2, 0 -_0804F9D8: .4byte gUnknown_202F1C8 -_0804F9DC: - movs r4, 0x4 - ldrsh r3, [r7, r4] - movs r5, 0 - ldrsh r2, [r7, r5] - subs r0, r3, r2 - cmp r0, 0x4 - bgt _0804F9EC - b _0804FBD6 -_0804F9EC: - movs r1, 0x6 - ldrsh r0, [r7, r1] - movs r4, 0x2 - ldrsh r1, [r7, r4] - subs r0, r1 - cmp r0, 0x4 - bgt _0804F9FC - b _0804FBD6 -_0804F9FC: - adds r0, r2, 0x2 - subs r1, r3, 0x3 - bl sub_808411C - adds r4, r0, 0 - movs r5, 0x2 - ldrsh r0, [r7, r5] - adds r0, 0x2 - movs r2, 0x6 - ldrsh r1, [r7, r2] - subs r1, 0x3 - bl sub_808411C - mov r10, r0 - movs r3, 0 - ldrsh r0, [r7, r3] - adds r0, 0x2 - movs r5, 0x4 - ldrsh r1, [r7, r5] - subs r1, 0x3 - bl sub_808411C - mov r9, r0 - movs r1, 0x2 - ldrsh r0, [r7, r1] - adds r0, 0x2 - movs r2, 0x6 - ldrsh r1, [r7, r2] - subs r1, 0x3 - bl sub_808411C - adds r6, r0, 0 - ldr r1, _0804FA94 - ldr r0, [r1] - cmp r0, 0 - bne _0804FA46 - b _0804FBD6 -_0804FA46: - subs r0, 0x1 - str r0, [r1] - adds r0, r7, 0 - bl sub_804F5D8 - cmp r4, r9 - ble _0804FA5A - adds r0, r4, 0 - mov r4, r9 - mov r9, r0 -_0804FA5A: - cmp r10, r6 - ble _0804FA64 - mov r0, r10 - mov r10, r6 - adds r6, r0, 0 -_0804FA64: - adds r5, r4, 0 - cmp r5, r9 - ble _0804FA6C - b _0804FBD2 -_0804FA6C: - mov r4, r10 - adds r3, r5, 0x1 - mov r8, r3 - cmp r4, r6 - bgt _0804FA8A -_0804FA76: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0 - bl sub_804F5C4 - adds r4, 0x1 - cmp r4, r6 - ble _0804FA76 -_0804FA8A: - mov r5, r8 - cmp r5, r9 - ble _0804FA6C - b _0804FBD2 - .align 2, 0 -_0804FA94: .4byte gUnknown_202F1C8 -_0804FA98: - movs r4, 0x4 - ldrsh r0, [r7, r4] - movs r5, 0 - ldrsh r1, [r7, r5] - subs r0, r1 - movs r2, 0x1 - ands r0, r2 - cmp r0, 0 - bne _0804FAAC - b _0804FBD6 -_0804FAAC: - movs r1, 0x6 - ldrsh r0, [r7, r1] - movs r3, 0x2 - ldrsh r1, [r7, r3] - subs r0, r1 - ands r0, r2 - cmp r0, 0 - bne _0804FABE - b _0804FBD6 -_0804FABE: - ldr r1, _0804FB20 - ldr r0, [r1] - cmp r0, 0 - bne _0804FAC8 - b _0804FBD6 -_0804FAC8: - subs r0, 0x1 - str r0, [r1] - adds r0, r7, 0 - bl sub_804F5D8 - movs r6, 0x3F -_0804FAD4: - movs r4, 0x4 - ldrsh r0, [r7, r4] - movs r5, 0 - ldrsh r1, [r7, r5] - subs r0, r1 - bl sub_8084100 - adds r4, r0, 0 - movs r1, 0x6 - ldrsh r0, [r7, r1] - movs r2, 0x2 - ldrsh r1, [r7, r2] - subs r0, r1 - bl sub_8084100 - adds r2, r0, 0 - adds r0, r4, r2 - movs r5, 0x1 - ands r0, r5 - cmp r0, 0 - beq _0804FB14 - movs r3, 0 - ldrsh r0, [r7, r3] - adds r0, r4 - movs r4, 0x2 - ldrsh r1, [r7, r4] - adds r1, r2 - bl sub_8049590 - movs r1, 0 - bl sub_804F5C4 -_0804FB14: - subs r6, 0x1 - cmp r6, 0 - bge _0804FAD4 - strb r5, [r7, 0x9] - b _0804FBD6 - .align 2, 0 -_0804FB20: .4byte gUnknown_202F1C8 -_0804FB24: - ldr r1, _0804FBC0 - ldr r0, [r1] - cmp r0, 0 - beq _0804FBD6 - subs r0, 0x1 - str r0, [r1] - movs r5, 0x4 - ldrsh r3, [r7, r5] - movs r0, 0 - ldrsh r2, [r7, r0] - subs r6, r3, r2 - movs r4, 0x1 - adds r0, r6, 0 - ands r0, r4 - cmp r0, 0 - beq _0804FB54 - movs r1, 0x6 - ldrsh r0, [r7, r1] - movs r5, 0x2 - ldrsh r1, [r7, r5] - subs r0, r1 - ands r0, r4 - cmp r0, 0 - bne _0804FBC4 -_0804FB54: - adds r0, r2, r3 - lsrs r1, r0, 31 - adds r0, r1 - asrs r5, r0, 1 - movs r0, 0x2 - ldrsh r3, [r7, r0] - movs r1, 0x6 - ldrsh r2, [r7, r1] - adds r0, r3, r2 - lsrs r1, r0, 31 - adds r0, r1 - asrs r4, r0, 1 - cmp r6, 0x4 - ble _0804FBAE - subs r0, r2, r3 - cmp r0, 0x4 - ble _0804FBAE - adds r0, r5, 0x1 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0 - bl sub_804F5C4 - adds r1, r4, 0x1 - adds r0, r5, 0 - bl sub_8049590 - movs r1, 0 - bl sub_804F5C4 - subs r0, r5, 0x1 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0 - bl sub_804F5C4 - subs r1, r4, 0x1 - adds r0, r5, 0 - bl sub_8049590 - movs r1, 0 - bl sub_804F5C4 -_0804FBAE: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0 - bl sub_804F5C4 - b _0804FBD2 - .align 2, 0 -_0804FBC0: .4byte gUnknown_202F1C8 -_0804FBC4: - adds r0, r7, 0 - bl sub_804F5D8 - adds r0, r7, 0 - movs r1, 0x1 - bl sub_804F278 -_0804FBD2: - movs r0, 0x1 - strb r0, [r7, 0x9] -_0804FBD6: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804F694 - - thumb_func_start sub_804FBE8 -sub_804FBE8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r6, 0 - ldr r0, _0804FC6C - adds r5, r0, 0 -_0804FBF4: - movs r4, 0 - adds r3, r6, 0x1 - mov r8, r3 -_0804FBFA: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0804FC2A - movs r7, 0x88 - lsls r7, 1 - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _0804FC24 - ldrh r0, [r2, 0x4] - ldr r3, _0804FC70 - adds r1, r3, 0 - ands r0, r1 - strh r0, [r2, 0x4] -_0804FC24: - ldrh r0, [r2, 0x4] - ands r0, r5 - strh r0, [r2, 0x4] -_0804FC2A: - ldrh r3, [r2, 0x4] - movs r0, 0x1 - ands r0, r3 - cmp r0, 0 - beq _0804FC46 - ldrh r0, [r2] - movs r7, 0x80 - lsls r7, 2 - adds r1, r7, 0 - orrs r1, r0 - strh r1, [r2] - adds r0, r3, 0 - ands r0, r5 - strh r0, [r2, 0x4] -_0804FC46: - ldrh r1, [r2, 0x4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0804FC56 - adds r0, r1, 0 - ands r0, r5 - strh r0, [r2, 0x4] -_0804FC56: - adds r4, 0x1 - cmp r4, 0x1F - ble _0804FBFA - mov r6, r8 - cmp r6, 0x37 - ble _0804FBF4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804FC6C: .4byte 0x0000fffb -_0804FC70: .4byte 0x0000fffd - thumb_func_end sub_804FBE8 - - thumb_func_start sub_804FC74 -sub_804FC74: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r5, 0 - movs r0, 0x3 - mov r8, r0 - ldr r0, _0804FCC8 - adds r7, r0, 0 -_0804FC86: - movs r4, 0 - adds r6, r5, 0x1 -_0804FC8A: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x2 - bne _0804FCAE - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r1, [r0] - ands r1, r7 - mov r2, r8 - orrs r1, r2 - strh r1, [r0] -_0804FCAE: - adds r4, 0x1 - cmp r4, 0x1F - ble _0804FC8A - adds r5, r6, 0 - cmp r5, 0x37 - ble _0804FC86 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804FCC8: .4byte 0x0000fffc - thumb_func_end sub_804FC74 - - thumb_func_start sub_804FCCC -sub_804FCCC: - push {r4-r7,lr} - movs r5, 0 - ldr r0, _0804FD0C - adds r7, r0, 0 -_0804FCD4: - movs r4, 0 - adds r6, r5, 0x1 -_0804FCD8: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0804FCF8 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r1, [r0] - ands r1, r7 - strh r1, [r0] -_0804FCF8: - adds r4, 0x1 - cmp r4, 0x1F - ble _0804FCD8 - adds r5, r6, 0 - cmp r5, 0x37 - ble _0804FCD4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804FD0C: .4byte 0x0000fffc - thumb_func_end sub_804FCCC - - thumb_func_start sub_804FD10 -sub_804FD10: - movs r2, 0 - movs r3, 0 - strh r3, [r0] - strh r3, [r0, 0x4] - movs r1, 0xFF - strb r1, [r0, 0x9] - strb r2, [r0, 0x8] - strb r2, [r0, 0xA] - strb r2, [r0, 0xB] - strb r2, [r0, 0xC] - strb r2, [r0, 0xD] - strb r2, [r0, 0xE] - str r3, [r0, 0x10] - str r3, [r0, 0x14] - bx lr - thumb_func_end sub_804FD10 - - thumb_func_start sub_804FD30 -sub_804FD30: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - movs r6, 0 -_0804FD3A: - movs r7, 0 - adds r4, r6, 0x1 -_0804FD3E: - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8049590 - bl sub_804FD10 - subs r3, r7, 0x1 - cmp r6, 0 - blt _0804FD5C - cmp r3, 0 - blt _0804FD5C - cmp r6, 0x37 - bgt _0804FD5C - cmp r3, 0x1F - ble _0804FD60 -_0804FD5C: - movs r0, 0x1 - b _0804FD62 -_0804FD60: - movs r0, 0 -_0804FD62: - cmp r0, 0 - bne _0804FE24 - cmp r4, 0 - blt _0804FD76 - cmp r3, 0 - blt _0804FD76 - cmp r4, 0x37 - bgt _0804FD76 - cmp r3, 0x1F - ble _0804FD7A -_0804FD76: - movs r0, 0x1 - b _0804FD7C -_0804FD7A: - movs r0, 0 -_0804FD7C: - cmp r0, 0 - bne _0804FE24 - cmp r4, 0 - blt _0804FD90 - cmp r3, 0 - blt _0804FD90 - cmp r4, 0x37 - bgt _0804FD90 - cmp r3, 0x1F - ble _0804FD94 -_0804FD90: - movs r0, 0x1 - b _0804FD96 -_0804FD94: - movs r0, 0 -_0804FD96: - cmp r0, 0 - bne _0804FE24 - adds r2, r7, 0x1 - cmp r4, 0 - blt _0804FDAC - cmp r2, 0 - blt _0804FDAC - cmp r4, 0x37 - bgt _0804FDAC - cmp r2, 0x1F - ble _0804FDB0 -_0804FDAC: - movs r0, 0x1 - b _0804FDB2 -_0804FDB0: - movs r0, 0 -_0804FDB2: - cmp r0, 0 - bne _0804FE24 - cmp r6, 0 - blt _0804FDC6 - cmp r2, 0 - blt _0804FDC6 - cmp r6, 0x37 - bgt _0804FDC6 - cmp r2, 0x1F - ble _0804FDCA -_0804FDC6: - movs r0, 0x1 - b _0804FDCC -_0804FDCA: - movs r0, 0 -_0804FDCC: - cmp r0, 0 - bne _0804FE24 - adds r0, r2, 0 - subs r1, r6, 0x1 - cmp r1, 0 - blt _0804FDE4 - cmp r0, 0 - blt _0804FDE4 - cmp r1, 0x37 - bgt _0804FDE4 - cmp r2, 0x1F - ble _0804FDE8 -_0804FDE4: - movs r0, 0x1 - b _0804FDEA -_0804FDE8: - movs r0, 0 -_0804FDEA: - cmp r0, 0 - bne _0804FE24 - cmp r1, 0 - blt _0804FDFE - cmp r7, 0 - blt _0804FDFE - cmp r1, 0x37 - bgt _0804FDFE - cmp r7, 0x1F - ble _0804FE02 -_0804FDFE: - movs r0, 0x1 - b _0804FE04 -_0804FE02: - movs r0, 0 -_0804FE04: - cmp r0, 0 - bne _0804FE24 - adds r0, r3, 0 - cmp r1, 0 - blt _0804FE1A - cmp r0, 0 - blt _0804FE1A - cmp r1, 0x37 - bgt _0804FE1A - cmp r3, 0x1F - ble _0804FE1E -_0804FE1A: - movs r0, 0x1 - b _0804FE20 -_0804FE1E: - movs r0, 0 -_0804FE20: - cmp r0, 0 - beq _0804FE34 -_0804FE24: - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8049590 - ldrh r2, [r0] - movs r1, 0x10 - orrs r1, r2 - strh r1, [r0] -_0804FE34: - adds r7, 0x1 - cmp r7, 0x1F - ble _0804FD3E - adds r6, 0x1 - cmp r6, 0x37 - bgt _0804FE42 - b _0804FD3A -_0804FE42: - ldr r3, _0804FEB4 - ldr r1, [r3] - ldr r0, _0804FEB8 - adds r2, r1, r0 - ldr r0, _0804FEBC - strh r0, [r2] - ldr r2, _0804FEC0 - adds r1, r2 - movs r0, 0x1 - negs r0, r0 - strh r0, [r1] - movs r6, 0 - mov r8, r3 - ldr r1, _0804FEC4 -_0804FE5E: - adds r5, r1, 0 - movs r4, 0 - movs r7, 0x7 -_0804FE64: - mov r2, r8 - ldr r0, [r2] - adds r0, r5 - adds r0, r4 - str r1, [sp] - bl sub_804FD10 - adds r4, 0x18 - subs r7, 0x1 - ldr r1, [sp] - cmp r7, 0 - bge _0804FE64 - adds r1, 0xC0 - adds r6, 0x1 - cmp r6, 0x7 - ble _0804FE5E - ldr r0, _0804FEB4 - ldr r1, [r0] - ldr r2, _0804FEC8 - adds r1, r2 - movs r2, 0 - strh r2, [r1] - movs r6, 0 - adds r4, r0, 0 - ldr r3, _0804FECC -_0804FE96: - ldr r0, [r4] - lsls r1, r6, 2 - adds r0, r3 - adds r0, r1 - ldr r0, [r0] - str r2, [r0] - adds r6, 0x1 - cmp r6, 0x3F - ble _0804FE96 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804FEB4: .4byte gUnknown_203B418 -_0804FEB8: .4byte 0x0000e21c -_0804FEBC: .4byte 0x0000ffff -_0804FEC0: .4byte 0x0000e21e -_0804FEC4: .4byte 0x0000e27c -_0804FEC8: .4byte 0x00003904 -_0804FECC: .4byte 0x0001371c - thumb_func_end sub_804FD30 - - thumb_func_start sub_804FED0 -sub_804FED0: - push {r4-r7,lr} - adds r7, r0, 0 - adds r5, r1, 0 - movs r6, 0 - b _0804FEFA -_0804FEDA: - adds r0, r5, 0 - bl sub_8084100 - adds r4, r0, 0 - adds r0, r5, 0 - bl sub_8084100 - lsls r4, 2 - adds r4, r7 - ldr r2, [r4] - lsls r0, 2 - adds r0, r7 - ldr r1, [r0] - str r1, [r4] - str r2, [r0] - adds r6, 0x1 -_0804FEFA: - lsls r0, r5, 1 - cmp r6, r0 - blt _0804FEDA - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804FED0 - - thumb_func_start sub_804FF08 -sub_804FF08: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _08050234 - add sp, r4 - mov r10, r0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0xE0 - lsls r0, 5 - add r0, sp - str r1, [r0] - ldr r0, _08050238 - ldr r0, [r0] - mov r9, r0 - ldr r0, _0805023C - add r0, r9 - movs r1, 0 - ldrsh r0, [r0, r1] - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _0804FF46 - ldr r0, _08050240 - add r0, r9 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, r1 - bne _08050038 -_0804FF46: - movs r0, 0 - mov r8, r0 - movs r6, 0 -_0804FF4C: - movs r5, 0 - mov r1, r8 - lsls r0, r1, 2 - mov r2, sp - adds r4, r0, r2 -_0804FF56: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - adds r1, r0, 0 - ldrh r2, [r1] - movs r0, 0x3 - ands r0, r2 - cmp r0, 0x1 - bne _0804FFAA - ldrb r0, [r1, 0x9] - cmp r0, 0xFF - beq _0804FFAA - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - bne _0804FFAA - ldrh r1, [r1, 0x4] - movs r3, 0x8 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0804FFAA - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0804FFAA - adds r0, r3, 0 - ands r0, r2 - cmp r0, 0 - bne _0804FFAA - movs r1, 0x80 - lsls r1, 1 - adds r0, r1, 0 - ands r0, r2 - cmp r0, 0 - bne _0804FFAA - strb r6, [r4] - strb r5, [r4, 0x1] - adds r4, 0x4 - movs r2, 0x1 - add r8, r2 -_0804FFAA: - adds r5, 0x1 - cmp r5, 0x1F - ble _0804FF56 - adds r6, 0x1 - cmp r6, 0x37 - ble _0804FF4C - mov r0, r8 - cmp r0, 0 - beq _08050038 - bl sub_8084100 - lsls r0, 2 - mov r1, sp - adds r4, r1, r0 - ldrb r0, [r4] - ldrb r1, [r4, 0x1] - bl sub_8049590 - adds r5, r0, 0 - ldrh r1, [r5, 0x4] - movs r0, 0x1 - orrs r0, r1 - ldr r1, _08050244 - ands r0, r1 - strh r0, [r5, 0x4] - ldr r1, _08050248 - ldrb r0, [r5, 0x9] - strb r0, [r1] - ldrb r1, [r4] - ldr r0, _0805023C - add r0, r9 - strh r1, [r0] - ldrb r1, [r4, 0x1] - ldr r0, _08050240 - add r0, r9 - strh r1, [r0] - bl sub_8043D10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08050038 - ldrb r4, [r5, 0x9] - movs r6, 0 -_08050002: - movs r5, 0 -_08050004: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8049590 - adds r1, r0, 0 - ldrh r2, [r1] - movs r0, 0x3 - ands r0, r2 - cmp r0, 0x1 - bne _0805002C - ldrb r0, [r1, 0x9] - cmp r0, r4 - bne _0805002C - movs r0, 0x40 - orrs r0, r2 - strh r0, [r1] - ldrb r1, [r1, 0x9] - ldr r0, _0805024C - add r0, r9 - strb r1, [r0] -_0805002C: - adds r5, 0x1 - cmp r5, 0x1F - ble _08050004 - adds r6, 0x1 - cmp r6, 0x37 - ble _08050002 -_08050038: - movs r2, 0 - mov r8, r2 - movs r6, 0 -_0805003E: - movs r5, 0 - adds r7, r6, 0x1 - mov r1, r8 - lsls r0, r1, 2 - mov r2, sp - adds r4, r0, r2 -_0805004A: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - adds r1, r0, 0 - ldrh r2, [r1] - movs r0, 0x3 - ands r0, r2 - cmp r0, 0x1 - bne _08050092 - ldrb r0, [r1, 0x9] - cmp r0, 0xFF - beq _08050092 - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - bne _08050092 - movs r0, 0x40 - ands r0, r2 - cmp r0, 0 - bne _08050092 - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - bne _08050092 - movs r1, 0x80 - lsls r1, 1 - adds r0, r1, 0 - ands r0, r2 - cmp r0, 0 - bne _08050092 - strb r6, [r4] - strb r5, [r4, 0x1] - adds r4, 0x4 - movs r2, 0x1 - add r8, r2 -_08050092: - adds r5, 0x1 - cmp r5, 0x1F - ble _0805004A - adds r6, r7, 0 - cmp r6, 0x37 - ble _0805003E - mov r0, r8 - cmp r0, 0 - beq _080500FA - mov r1, r10 - ldrb r4, [r1, 0xF] - cmp r4, 0 - beq _080500FA - subs r0, r4, 0x2 - adds r1, r4, 0x2 - bl sub_808411C - adds r4, r0, 0 - cmp r4, 0 - bgt _080500BC - movs r4, 0x1 -_080500BC: - mov r0, sp - mov r1, r8 - bl sub_804FED0 - mov r0, r8 - bl sub_8084100 - adds r5, r0, 0 - cmp r4, 0 - ble _080500FA - adds r6, r4, 0 - lsls r0, r5, 2 - mov r2, sp - adds r4, r0, r2 -_080500D8: - ldrb r0, [r4] - ldrb r1, [r4, 0x1] - bl sub_8049590 - ldrh r2, [r0, 0x4] - movs r1, 0x2 - orrs r1, r2 - strh r1, [r0, 0x4] - adds r4, 0x4 - adds r5, 0x1 - cmp r5, r8 - bne _080500F4 - mov r4, sp - movs r5, 0 -_080500F4: - subs r6, 0x1 - cmp r6, 0 - bne _080500D8 -_080500FA: - movs r0, 0 - mov r8, r0 - movs r6, 0 -_08050100: - movs r5, 0 - adds r7, r6, 0x1 - mov r1, r8 - lsls r0, r1, 2 - mov r2, sp - adds r4, r0, r2 -_0805010C: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _08050128 - strb r6, [r4] - strb r5, [r4, 0x1] - adds r4, 0x4 - movs r0, 0x1 - add r8, r0 -_08050128: - adds r5, 0x1 - cmp r5, 0x1F - ble _0805010C - adds r6, r7, 0 - cmp r6, 0x37 - ble _08050100 - mov r1, r8 - cmp r1, 0 - beq _0805018E - mov r2, r10 - ldrb r4, [r2, 0x14] - cmp r4, 0 - beq _0805018E - subs r0, r4, 0x2 - adds r1, r4, 0x2 - bl sub_808411C - adds r4, r0, 0 - cmp r4, 0 - ble _0805018E - mov r0, sp - mov r1, r8 - bl sub_804FED0 - mov r0, r8 - bl sub_8084100 - adds r5, r0, 0 - cmp r4, 0 - ble _0805018E - adds r6, r4, 0 - lsls r0, r5, 2 - mov r1, sp - adds r4, r0, r1 -_0805016C: - ldrb r0, [r4] - ldrb r1, [r4, 0x1] - bl sub_8049590 - ldrh r2, [r0, 0x4] - movs r1, 0x2 - orrs r1, r2 - strh r1, [r0, 0x4] - adds r4, 0x4 - adds r5, 0x1 - cmp r5, r8 - bne _08050188 - mov r4, sp - movs r5, 0 -_08050188: - subs r6, 0x1 - cmp r6, 0 - bne _0805016C -_0805018E: - movs r2, 0 - mov r8, r2 - movs r0, 0xE0 - lsls r0, 5 - add r0, sp - ldr r0, [r0] - cmp r0, 0 - bne _080501E4 - movs r6, 0 -_080501A0: - movs r5, 0 - adds r7, r6, 0x1 - mov r1, r8 - lsls r0, r1, 2 - mov r2, sp - adds r4, r0, r2 -_080501AC: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _080501D8 - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080501D8 - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080501D8 - strb r6, [r4] - strb r5, [r4, 0x1] - adds r4, 0x4 - movs r0, 0x1 - add r8, r0 -_080501D8: - adds r5, 0x1 - cmp r5, 0x1F - ble _080501AC - adds r6, r7, 0 - cmp r6, 0x37 - ble _080501A0 -_080501E4: - mov r1, r8 - cmp r1, 0 - beq _08050294 - lsrs r4, r1, 31 - add r4, r8 - asrs r4, 1 - lsls r0, r1, 3 - movs r1, 0xA - bl __divsi3 - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_808411C - adds r4, r0, 0 - cmp r4, 0x5 - bgt _08050208 - movs r4, 0x6 -_08050208: - ldr r0, _08050250 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r4, r0 - blt _08050214 - adds r4, r0, 0 -_08050214: - mov r0, sp - mov r1, r8 - bl sub_804FED0 - mov r0, r8 - bl sub_8084100 - adds r5, r0, 0 - cmp r4, 0 - ble _08050294 - adds r6, r4, 0 - lsls r0, r5, 2 - mov r1, sp - adds r7, r0, r1 -_08050230: - ldrb r0, [r7] - b _08050254 - .align 2, 0 -_08050234: .4byte 0xffffe3fc -_08050238: .4byte gUnknown_203B418 -_0805023C: .4byte 0x0000e21c -_08050240: .4byte 0x0000e21e -_08050244: .4byte 0x0000fffd -_08050248: .4byte gUnknown_202F1B4 -_0805024C: .4byte 0x00003a0c -_08050250: .4byte gUnknown_80F4DA0 -_08050254: - ldrb r1, [r7, 0x1] - bl sub_8049590 - adds r4, r0, 0 - movs r0, 0x2 - bl sub_8084100 - cmp r0, 0 - beq _0805026C - ldrh r0, [r4, 0x4] - movs r1, 0x2 - b _0805027E -_0805026C: - ldr r0, _08050424 - ldr r0, [r0] - ldr r2, _08050428 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08050282 - ldrh r0, [r4, 0x4] - movs r1, 0x4 -_0805027E: - orrs r0, r1 - strh r0, [r4, 0x4] -_08050282: - adds r7, 0x4 - adds r5, 0x1 - cmp r5, r8 - bne _0805028E - mov r7, sp - movs r5, 0 -_0805028E: - subs r6, 0x1 - cmp r6, 0 - bne _08050230 -_08050294: - movs r0, 0 - mov r8, r0 - movs r6, 0 -_0805029A: - movs r5, 0 - adds r7, r6, 0x1 - mov r1, r8 - lsls r0, r1, 2 - mov r2, sp - adds r4, r0, r2 -_080502A6: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - adds r1, r0, 0 - ldrh r2, [r1] - movs r0, 0x3 - ands r0, r2 - cmp r0, 0x1 - bne _080502F0 - ldrb r0, [r1, 0x9] - cmp r0, 0xFF - beq _080502F0 - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - bne _080502F0 - ldrh r1, [r1, 0x4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080502F0 - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - bne _080502F0 - movs r1, 0x80 - lsls r1, 1 - adds r0, r1, 0 - ands r0, r2 - cmp r0, 0 - bne _080502F0 - strb r6, [r4] - strb r5, [r4, 0x1] - adds r4, 0x4 - movs r2, 0x1 - add r8, r2 -_080502F0: - adds r5, 0x1 - cmp r5, 0x1F - ble _080502A6 - adds r6, r7, 0 - cmp r6, 0x37 - ble _0805029A - mov r0, r8 - cmp r0, 0 - beq _08050356 - mov r2, r10 - ldrb r1, [r2, 0x10] - lsrs r0, r1, 1 - bl sub_808411C - adds r4, r0, 0 - cmp r4, 0 - ble _08050356 - cmp r4, 0x37 - ble _08050318 - movs r4, 0x38 -_08050318: - mov r0, sp - mov r1, r8 - bl sub_804FED0 - mov r0, r8 - bl sub_8084100 - adds r5, r0, 0 - cmp r4, 0 - ble _08050356 - adds r6, r4, 0 - lsls r0, r5, 2 - mov r1, sp - adds r4, r0, r1 -_08050334: - ldrb r0, [r4] - ldrb r1, [r4, 0x1] - bl sub_8049590 - ldrh r2, [r0, 0x4] - movs r1, 0x4 - orrs r1, r2 - strh r1, [r0, 0x4] - adds r4, 0x4 - adds r5, 0x1 - cmp r5, r8 - bne _08050350 - mov r4, sp - movs r5, 0 -_08050350: - subs r6, 0x1 - cmp r6, 0 - bne _08050334 -_08050356: - ldr r0, _0805042C - add r0, r9 - movs r2, 0 - ldrsh r0, [r0, r2] - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _08050372 - ldr r0, _08050430 - add r0, r9 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, r1 - bne _08050410 -_08050372: - movs r0, 0 - mov r8, r0 - movs r6, 0 -_08050378: - movs r5, 0 - adds r7, r6, 0x1 - mov r1, r8 - lsls r0, r1, 2 - mov r2, sp - adds r4, r0, r2 -_08050384: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _080503E2 - ldrb r0, [r2, 0x9] - cmp r0, 0xFF - beq _080503E2 - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _080503E2 - movs r3, 0x8 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _080503E2 - movs r0, 0x80 - lsls r0, 1 - mov r10, r0 - mov r0, r10 - ands r0, r1 - cmp r0, 0 - bne _080503E2 - ldrh r1, [r2, 0x4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080503E2 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _080503E2 - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080503E2 - strb r6, [r4] - strb r5, [r4, 0x1] - adds r4, 0x4 - movs r1, 0x1 - add r8, r1 -_080503E2: - adds r5, 0x1 - cmp r5, 0x1F - ble _08050384 - adds r6, r7, 0 - cmp r6, 0x37 - ble _08050378 - mov r2, r8 - cmp r2, 0 - beq _08050410 - mov r0, r8 - bl sub_8084100 - lsls r0, 2 - mov r1, sp - adds r2, r1, r0 - ldrb r1, [r2] - ldr r0, _0805042C - add r0, r9 - strh r1, [r0] - ldrb r1, [r2, 0x1] - ldr r0, _08050430 - add r0, r9 - strh r1, [r0] -_08050410: - ldr r3, _08050434 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08050424: .4byte gUnknown_203B418 -_08050428: .4byte 0x0000065c -_0805042C: .4byte 0x0000e218 -_08050430: .4byte 0x0000e21a -_08050434: .4byte 0x00001c04 - thumb_func_end sub_804FF08 - - thumb_func_start sub_8050438 -sub_8050438: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _08050470 - add sp, r4 - lsls r1, 24 - lsrs r1, 24 - movs r2, 0xE0 - lsls r2, 5 - add r2, sp - str r1, [r2] - ldr r1, _08050474 - ldr r1, [r1] - mov r10, r1 - ldrb r1, [r0, 0x6] - cmp r1, 0 - ble _08050478 - lsrs r0, r1, 1 - bl sub_808411C - adds r7, r0, 0 - cmp r7, 0 - bgt _0805047A - movs r7, 0x1 - b _0805047A - .align 2, 0 -_08050470: .4byte 0xffffe3f8 -_08050474: .4byte gUnknown_203B418 -_08050478: - adds r7, r1, 0 -_0805047A: - movs r0, 0 - mov r8, r0 - movs r6, 0 -_08050480: - movs r5, 0 - adds r1, r6, 0x1 - mov r9, r1 - mov r2, r8 - lsls r0, r2, 2 - mov r1, sp - adds r4, r0, r1 -_0805048E: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - adds r1, r0, 0 - ldrh r3, [r1] - movs r2, 0x3 - ands r2, r3 - cmp r2, 0x1 - bne _080504F6 - ldrb r0, [r1, 0x9] - cmp r0, 0xFF - beq _080504F6 - movs r0, 0x20 - ands r0, r3 - cmp r0, 0 - bne _080504F6 - ldrh r1, [r1, 0x4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080504F6 - ands r2, r1 - cmp r2, 0 - bne _080504F6 - movs r0, 0x8 - ands r0, r3 - cmp r0, 0 - bne _080504F6 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - ands r0, r3 - cmp r0, 0 - bne _080504F6 - ldr r0, _080506A0 - add r0, r10 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r6, r0 - bne _080504EC - ldr r0, _080506A4 - add r0, r10 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r5, r0 - beq _080504F6 -_080504EC: - strb r6, [r4] - strb r5, [r4, 0x1] - adds r4, 0x4 - movs r0, 0x1 - add r8, r0 -_080504F6: - adds r5, 0x1 - cmp r5, 0x1F - ble _0805048E - mov r6, r9 - cmp r6, 0x37 - ble _08050480 - mov r1, r8 - cmp r1, 0 - beq _0805055E - ldr r0, _080506A8 - ldr r0, [r0] - movs r2, 0xD1 - lsls r2, 3 - adds r0, r2 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _0805051C - adds r7, 0x1 -_0805051C: - cmp r7, 0 - beq _0805055E - mov r0, sp - mov r1, r8 - bl sub_804FED0 - mov r0, r8 - bl sub_8084100 - adds r5, r0, 0 - cmp r7, 0 - ble _0805055E - adds r6, r7, 0 - lsls r0, r5, 2 - mov r2, sp - adds r4, r0, r2 -_0805053C: - ldrb r0, [r4] - ldrb r1, [r4, 0x1] - bl sub_8049590 - ldrh r2, [r0, 0x4] - movs r1, 0x8 - orrs r1, r2 - strh r1, [r0, 0x4] - adds r4, 0x4 - adds r5, 0x1 - cmp r5, r8 - bne _08050558 - mov r4, sp - movs r5, 0 -_08050558: - subs r6, 0x1 - cmp r6, 0 - bne _0805053C -_0805055E: - ldr r0, _080506AC - add r0, r10 - ldrb r0, [r0] - cmp r0, 0 - bne _0805056A - b _0805068C -_0805056A: - ldr r0, _080506B0 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r2, _080506B4 - add r2, sp - str r1, [r2] - movs r0, 0 - mov r8, r0 - movs r1, 0xE0 - lsls r1, 5 - add r1, sp - ldr r1, [r1] - cmp r1, 0 - beq _0805058A - movs r0, 0x3 - str r0, [r2] -_0805058A: - ldr r1, _080506B4 - add r1, sp - ldr r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - ldr r1, _080506B4 - add r1, sp - str r0, [r1] - movs r6, 0 -_080505A2: - movs r5, 0 - adds r2, r6, 0x1 - mov r9, r2 - mov r1, r8 - lsls r0, r1, 2 - mov r2, sp - adds r4, r0, r2 -_080505B0: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - adds r1, r0, 0 - ldrh r2, [r1] - movs r0, 0x3 - ands r0, r2 - cmp r0, 0x1 - bne _08050608 - ldrb r0, [r1, 0x9] - cmp r0, 0xFF - beq _08050608 - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - bne _08050608 - movs r1, 0x80 - lsls r1, 1 - adds r0, r1, 0 - ands r0, r2 - cmp r0, 0 - bne _08050608 - movs r0, 0x40 - ands r0, r2 - cmp r0, 0 - beq _08050608 - ldr r0, _080506A0 - add r0, r10 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r6, r0 - bne _080505FE - ldr r0, _080506A4 - add r0, r10 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r5, r0 - beq _08050608 -_080505FE: - strb r6, [r4] - strb r5, [r4, 0x1] - adds r4, 0x4 - movs r2, 0x1 - add r8, r2 -_08050608: - adds r5, 0x1 - cmp r5, 0x1F - ble _080505B0 - mov r6, r9 - cmp r6, 0x37 - ble _080505A2 - mov r0, r8 - cmp r0, 0 - beq _0805068C - lsls r4, r0, 3 - subs r0, r4, r0 - movs r1, 0xA - bl __divsi3 - adds r5, r0, 0 - adds r0, r4, 0 - movs r1, 0xA - bl __divsi3 - adds r1, r0, 0 - adds r0, r5, 0 - bl sub_808411C - adds r7, r0, 0 - cmp r7, 0 - bne _0805063E - movs r7, 0x1 -_0805063E: - ldr r1, _080506B4 - add r1, sp - ldr r1, [r1] - cmp r7, r1 - blt _0805064E - ldr r2, _080506B4 - add r2, sp - ldr r7, [r2] -_0805064E: - mov r0, sp - mov r1, r8 - bl sub_804FED0 - mov r0, r8 - bl sub_8084100 - adds r5, r0, 0 - cmp r7, 0 - ble _0805068C - adds r6, r7, 0 - lsls r0, r5, 2 - mov r1, sp - adds r4, r0, r1 -_0805066A: - ldrb r0, [r4] - ldrb r1, [r4, 0x1] - bl sub_8049590 - ldrh r2, [r0, 0x4] - movs r1, 0x8 - orrs r1, r2 - strh r1, [r0, 0x4] - adds r4, 0x4 - adds r5, 0x1 - cmp r5, r8 - bne _08050686 - mov r4, sp - movs r5, 0 -_08050686: - subs r6, 0x1 - cmp r6, 0 - bne _0805066A -_0805068C: - ldr r3, _080506B8 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080506A0: .4byte 0x0000e218 -_080506A4: .4byte 0x0000e21a -_080506A8: .4byte gUnknown_203B418 -_080506AC: .4byte 0x00003a08 -_080506B0: .4byte gUnknown_80F4DA4 -_080506B4: .4byte 0x00001c04 -_080506B8: .4byte 0x00001c08 - thumb_func_end sub_8050438 - - thumb_func_start sub_80506BC -sub_80506BC: - push {lr} - adds r3, r0, 0 - movs r2, 0x1 - ldrh r1, [r3] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _080506CE - movs r2, 0 -_080506CE: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080506D8 - movs r2, 0 -_080506D8: - cmp r2, 0 - beq _080506E6 - ldr r0, _080506EC - ands r0, r1 - movs r1, 0x2 - orrs r0, r1 - strh r0, [r3] -_080506E6: - pop {r0} - bx r0 - .align 2, 0 -_080506EC: .4byte 0x0000fffc - thumb_func_end sub_80506BC - - thumb_func_start sub_80506F0 -sub_80506F0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xA4 - str r1, [sp, 0x64] - ldrb r1, [r1, 0xD] - ands r1, r0 - cmp r1, 0 - bne _08050708 - b _08050C20 -_08050708: - ldr r4, _08050738 - movs r0, 0x8 - bl sub_8084100 - lsls r0, 2 - adds r0, r4 - ldr r4, [r0] - cmp r4, 0 - bne _0805071C - b _08050A7C -_0805071C: - movs r0, 0x64 - bl sub_8084100 - cmp r0, 0x31 - bgt _0805073C - movs r0, 0x1 - str r0, [sp, 0x74] - movs r1, 0x1F - mov r10, r1 - movs r2, 0x1 - negs r2, r2 - str r2, [sp, 0x70] - b _08050746 - .align 2, 0 -_08050738: .4byte gUnknown_80F6DF8 -_0805073C: - movs r0, 0 - str r0, [sp, 0x74] - mov r10, r0 - movs r1, 0x1 - str r1, [sp, 0x70] -_08050746: - movs r0, 0x32 - bl sub_8084100 - adds r0, 0xA - str r0, [sp, 0x78] - movs r0, 0x2 - movs r1, 0x36 - bl sub_808411C - mov r9, r0 - movs r2, 0 - str r2, [sp, 0x6C] - subs r4, 0x1 - str r4, [sp, 0x98] -_08050762: - movs r0, 0x6 - bl sub_8084100 - adds r0, 0x2 - str r0, [sp, 0x68] - cmp r0, 0 - bne _08050772 - b _08050A38 -_08050772: - mov r0, r9 - cmp r0, 0x37 - bhi _080507B8 - mov r1, r10 - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x2 - bne _0805078A - b _08050A74 -_0805078A: - mov r1, r9 - cmp r1, 0 - blt _080507A2 - mov r2, r10 - cmp r2, 0 - blt _080507A2 - mov r0, r9 - cmp r0, 0x37 - bgt _080507A2 - mov r1, r10 - cmp r1, 0x1F - ble _080507A6 -_080507A2: - movs r0, 0x1 - b _080507A8 -_080507A6: - movs r0, 0 -_080507A8: - cmp r0, 0 - bne _080507B8 - mov r0, r9 - mov r1, r10 - bl sub_8049590 - bl sub_80506BC -_080507B8: - ldr r2, [sp, 0x68] - subs r2, 0x1 - str r2, [sp, 0x68] - ldr r0, [sp, 0x6C] - add r9, r0 - ldr r1, [sp, 0x70] - add r10, r1 - mov r2, r10 - cmp r2, 0x1F - bls _080507CE - b _08050A38 -_080507CE: - ldr r0, [sp, 0x78] - subs r0, 0x1 - str r0, [sp, 0x78] - cmp r0, 0 - beq _080507DA - b _08050A30 -_080507DA: - movs r1, 0x3F - str r1, [sp, 0x7C] -_080507DE: - movs r0, 0x7 - bl sub_8084100 - subs r0, 0x3 - str r0, [sp, 0x84] - movs r0, 0x7 - bl sub_8084100 - subs r1, r0, 0x3 - ldr r6, [sp, 0x84] - add r6, r9 - subs r0, r6, 0x2 - cmp r0, 0x33 - bhi _080508DA - mov r2, r10 - adds r5, r1, r2 - cmp r5, 0x1 - ble _080508DA - cmp r5, 0x1D - bgt _080508DA - adds r4, r6, 0x1 - adds r0, r5, 0x1 - mov r8, r0 - adds r0, r4, 0 - mov r1, r8 - bl sub_804954C - ldrh r1, [r0] - movs r2, 0x3 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x2 - beq _080508B2 - adds r0, r4, 0 - adds r1, r5, 0 - str r2, [sp, 0x9C] - bl sub_804954C - ldrh r1, [r0] - ldr r2, [sp, 0x9C] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x2 - beq _080508B2 - subs r7, r5, 0x1 - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_804954C - ldrh r1, [r0] - ldr r2, [sp, 0x9C] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x2 - beq _080508B2 - adds r0, r6, 0 - mov r1, r8 - bl sub_804954C - ldrh r1, [r0] - ldr r2, [sp, 0x9C] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x2 - beq _080508B2 - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_804954C - ldrh r1, [r0] - ldr r2, [sp, 0x9C] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x2 - beq _080508B2 - subs r4, r6, 0x1 - adds r0, r4, 0 - mov r1, r8 - bl sub_804954C - ldrh r1, [r0] - ldr r2, [sp, 0x9C] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x2 - beq _080508B2 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_804954C - ldrh r1, [r0] - ldr r2, [sp, 0x9C] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x2 - beq _080508B2 - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_804954C - ldrh r1, [r0] - ldr r2, [sp, 0x9C] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0x2 - bne _080508DA -_080508B2: - ldr r0, [sp, 0x84] - add r0, r9 - cmp r0, 0 - blt _080508C6 - cmp r5, 0 - blt _080508C6 - cmp r0, 0x37 - bgt _080508C6 - cmp r5, 0x1F - ble _080508CA -_080508C6: - movs r1, 0x1 - b _080508CC -_080508CA: - movs r1, 0 -_080508CC: - cmp r1, 0 - bne _080508DA - adds r1, r5, 0 - bl sub_8049590 - bl sub_80506BC -_080508DA: - ldr r1, [sp, 0x7C] - subs r1, 0x1 - str r1, [sp, 0x7C] - cmp r1, 0 - blt _080508E6 - b _080507DE -_080508E6: - movs r0, 0x3 - negs r0, r0 -_080508EA: - movs r2, 0x3 - negs r2, r2 - str r2, [sp, 0x80] - mov r1, r9 - adds r1, r0, r1 - str r1, [sp, 0x90] - adds r0, 0x1 - str r0, [sp, 0x8C] - adds r7, r1, 0 - mov r5, r10 - subs r5, 0x3 -_08050900: - movs r6, 0 - subs r0, r7, 0x2 - cmp r0, 0x33 - bls _0805090A - b _08050A1A -_0805090A: - str r5, [sp, 0x88] - str r5, [sp, 0x94] - cmp r5, 0x1 - bgt _08050914 - b _08050A1A -_08050914: - cmp r5, 0x1D - ble _0805091A - b _08050A1A -_0805091A: - adds r4, r7, 0x1 - adds r3, r5, 0x1 - adds r0, r4, 0 - adds r1, r3, 0 - str r3, [sp, 0xA0] - bl sub_804954C - ldrh r1, [r0] - movs r2, 0x3 - mov r8, r2 - mov r0, r8 - ands r0, r1 - ldr r3, [sp, 0xA0] - cmp r0, 0x2 - bne _0805093A - movs r6, 0x1 -_0805093A: - adds r0, r4, 0 - adds r1, r5, 0 - str r3, [sp, 0xA0] - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - ldr r3, [sp, 0xA0] - cmp r0, 0x2 - bne _08050952 - adds r6, 0x1 -_08050952: - subs r2, r5, 0x1 - adds r0, r4, 0 - adds r1, r2, 0 - str r2, [sp, 0x9C] - str r3, [sp, 0xA0] - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - ldr r2, [sp, 0x9C] - ldr r3, [sp, 0xA0] - cmp r0, 0x2 - bne _08050970 - adds r6, 0x1 -_08050970: - adds r0, r7, 0 - adds r1, r3, 0 - str r2, [sp, 0x9C] - str r3, [sp, 0xA0] - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - ldr r2, [sp, 0x9C] - ldr r3, [sp, 0xA0] - cmp r0, 0x2 - bne _0805098C - adds r6, 0x1 -_0805098C: - adds r0, r7, 0 - adds r1, r2, 0 - str r2, [sp, 0x9C] - str r3, [sp, 0xA0] - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - ldr r2, [sp, 0x9C] - ldr r3, [sp, 0xA0] - cmp r0, 0x2 - bne _080509A8 - adds r6, 0x1 -_080509A8: - subs r4, r7, 0x1 - adds r0, r4, 0 - adds r1, r3, 0 - str r2, [sp, 0x9C] - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - ldr r2, [sp, 0x9C] - cmp r0, 0x2 - bne _080509C2 - adds r6, 0x1 -_080509C2: - adds r0, r4, 0 - adds r1, r5, 0 - str r2, [sp, 0x9C] - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - ldr r2, [sp, 0x9C] - cmp r0, 0x2 - bne _080509DA - adds r6, 0x1 -_080509DA: - adds r0, r4, 0 - adds r1, r2, 0 - bl sub_804954C - ldrh r1, [r0] - mov r0, r8 - ands r0, r1 - cmp r0, 0x2 - bne _080509EE - adds r6, 0x1 -_080509EE: - cmp r6, 0x3 - ble _08050A1A - cmp r7, 0 - blt _08050A04 - cmp r5, 0 - blt _08050A04 - cmp r7, 0x37 - bgt _08050A04 - ldr r0, [sp, 0x88] - cmp r0, 0x1F - ble _08050A08 -_08050A04: - movs r0, 0x1 - b _08050A0A -_08050A08: - movs r0, 0 -_08050A0A: - cmp r0, 0 - bne _08050A1A - ldr r0, [sp, 0x90] - ldr r1, [sp, 0x94] - bl sub_8049590 - bl sub_80506BC -_08050A1A: - adds r5, 0x1 - ldr r1, [sp, 0x80] - adds r1, 0x1 - str r1, [sp, 0x80] - cmp r1, 0x3 - bgt _08050A28 - b _08050900 -_08050A28: - ldr r0, [sp, 0x8C] - cmp r0, 0x3 - bgt _08050A30 - b _080508EA -_08050A30: - ldr r2, [sp, 0x68] - cmp r2, 0 - beq _08050A38 - b _08050772 -_08050A38: - ldr r0, [sp, 0x6C] - cmp r0, 0 - beq _08050A54 - movs r1, 0x1 - str r1, [sp, 0x70] - ldr r2, [sp, 0x74] - cmp r2, 0 - beq _08050A4E - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0x70] -_08050A4E: - movs r1, 0 - str r1, [sp, 0x6C] - b _08050A6C -_08050A54: - movs r0, 0x64 - bl sub_8084100 - movs r2, 0x1 - str r2, [sp, 0x6C] - cmp r0, 0x31 - bgt _08050A68 - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0x6C] -_08050A68: - movs r1, 0 - str r1, [sp, 0x70] -_08050A6C: - mov r2, r10 - cmp r2, 0x1F - bhi _08050A74 - b _08050762 -_08050A74: - ldr r4, [sp, 0x98] - cmp r4, 0 - beq _08050A7C - b _0805071C -_08050A7C: - movs r0, 0 - ldr r1, [sp, 0x64] - ldrb r1, [r1, 0x15] - cmp r0, r1 - blt _08050A88 - b _08050BAE -_08050A88: - movs r2, 0 - mov r8, r2 - mov r9, r2 - movs r5, 0 - adds r0, 0x1 - mov r10, r0 - b _08050A98 -_08050A96: - adds r5, 0x1 -_08050A98: - cmp r5, 0xC7 - bgt _08050AC2 - movs r0, 0 - movs r1, 0x38 - bl sub_808411C - mov r9, r0 - movs r0, 0 - movs r1, 0x20 - bl sub_808411C - mov r8, r0 - mov r0, r9 - subs r0, 0x1 - cmp r0, 0x35 - bhi _08050A96 - mov r0, r8 - cmp r0, 0 - ble _08050A96 - cmp r0, 0x1E - bgt _08050A96 -_08050AC2: - cmp r5, 0xC8 - beq _08050BA2 - movs r7, 0 - movs r3, 0x1 - movs r1, 0 -_08050ACC: - movs r2, 0 - lsls r0, r7, 2 - adds r4, r7, 0x1 - adds r0, r7 - lsls r0, 1 - add r0, sp -_08050AD8: - cmp r7, 0 - beq _08050AE8 - cmp r7, 0x9 - beq _08050AE8 - cmp r2, 0 - beq _08050AE8 - cmp r2, 0x9 - bne _08050AEC -_08050AE8: - strb r3, [r0] - b _08050AEE -_08050AEC: - strb r1, [r0] -_08050AEE: - adds r0, 0x1 - adds r2, 0x1 - cmp r2, 0x9 - ble _08050AD8 - adds r7, r4, 0 - cmp r7, 0x9 - ble _08050ACC - movs r5, 0x4F -_08050AFE: - movs r0, 0x8 - bl sub_8084100 - adds r4, r0, 0 - adds r7, r4, 0x1 - movs r0, 0x8 - bl sub_8084100 - adds r2, r0, 0x1 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 1 - adds r0, r2, r0 - add r0, sp - ldrb r0, [r0] - cmp r0, 0 - bne _08050B50 - adds r1, r7, 0x1 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 1 - adds r0, r2, r0 - add r0, sp - ldrb r0, [r0] - cmp r0, 0 - bne _08050B50 - lsls r0, r7, 2 - adds r0, r7 - lsls r1, r0, 1 - subs r0, r1, 0x1 - adds r0, r2, r0 - add r0, sp - ldrb r0, [r0] - cmp r0, 0 - bne _08050B50 - adds r0, r1, 0x1 - adds r0, r2, r0 - add r0, sp - ldrb r0, [r0] - cmp r0, 0 - beq _08050B60 -_08050B50: - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 1 - adds r0, r2, r0 - mov r2, sp - adds r1, r2, r0 - movs r0, 0x1 - strb r0, [r1] -_08050B60: - subs r5, 0x1 - cmp r5, 0 - bge _08050AFE - movs r7, 0 -_08050B68: - lsls r0, r7, 2 - adds r4, r7, 0x1 - adds r0, r7 - lsls r0, 1 - mov r6, r8 - subs r6, 0x5 - mov r1, sp - adds r5, r0, r1 - add r7, r9 - movs r2, 0x9 -_08050B7C: - ldrb r0, [r5] - cmp r0, 0 - bne _08050B92 - subs r0, r7, 0x5 - adds r1, r6, 0 - str r2, [sp, 0x9C] - bl sub_8049590 - bl sub_80506BC - ldr r2, [sp, 0x9C] -_08050B92: - adds r6, 0x1 - adds r5, 0x1 - subs r2, 0x1 - cmp r2, 0 - bge _08050B7C - adds r7, r4, 0 - cmp r7, 0x9 - ble _08050B68 -_08050BA2: - mov r0, r10 - ldr r2, [sp, 0x64] - ldrb r2, [r2, 0x15] - cmp r0, r2 - bge _08050BAE - b _08050A88 -_08050BAE: - movs r0, 0 - mov r9, r0 - movs r6, 0x1 - ldr r1, _08050BF4 - adds r5, r1, 0 -_08050BB8: - movs r2, 0 - mov r10, r2 - mov r4, r9 - adds r4, 0x1 -_08050BC0: - mov r0, r9 - mov r1, r10 - bl sub_8049590 - adds r2, r0, 0 - ldrh r3, [r2] - movs r0, 0x3 - ands r0, r3 - cmp r0, 0x2 - bne _08050C10 - movs r1, 0xB0 - lsls r1, 1 - adds r0, r1, 0 - ands r0, r3 - cmp r0, 0 - bne _08050BEA - ldrh r1, [r2, 0x4] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08050BF8 -_08050BEA: - adds r0, r3, 0 - ands r0, r5 - orrs r0, r6 - b _08050C0E - .align 2, 0 -_08050BF4: .4byte 0x0000fffc -_08050BF8: - mov r0, r9 - subs r0, 0x2 - cmp r0, 0x34 - bhi _08050C0A - mov r0, r10 - cmp r0, 0x1 - ble _08050C0A - cmp r0, 0x1E - ble _08050C10 -_08050C0A: - ldrh r0, [r2] - ands r0, r5 -_08050C0E: - strh r0, [r2] -_08050C10: - movs r1, 0x1 - add r10, r1 - mov r2, r10 - cmp r2, 0x1F - ble _08050BC0 - mov r9, r4 - cmp r4, 0x37 - ble _08050BB8 -_08050C20: - add sp, 0xA4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80506F0 - - thumb_func_start sub_8050C30 -sub_8050C30: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _08050F3C - add sp, r4 - mov r8, r0 - mov r9, r1 - lsls r2, 24 - lsrs r2, 24 - movs r0, 0xE0 - lsls r0, 3 - add r0, sp - str r2, [r0] - movs r7, 0 - mov r1, r8 - lsls r1, 5 - movs r2, 0xE2 - lsls r2, 3 - add r2, sp - str r1, [r2] -_08050C5C: - movs r6, 0 - lsls r2, r7, 5 - adds r3, r7, 0x1 - mov r10, r3 - mov r5, sp - adds r4, r2, r5 -_08050C68: - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrh r0, [r2] - movs r3, 0x3 - ands r3, r0 - movs r0, 0 - strb r0, [r4] - movs r0, 0xE0 - lsls r0, 3 - add r0, sp - ldr r0, [r0] - cmp r0, 0 - beq _08050C92 - ldrh r0, [r2] - ldr r5, _08050F40 - adds r1, r5, 0 - ands r0, r1 - strh r0, [r2] -_08050C92: - cmp r3, 0x1 - beq _08050CA8 - ldrh r1, [r2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _08050CA8 - ldrb r0, [r4] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r4] -_08050CA8: - cmp r3, 0x2 - bne _08050CBE - ldrh r1, [r2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _08050CBE - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] -_08050CBE: - adds r4, 0x1 - adds r6, 0x1 - cmp r6, 0x1F - ble _08050C68 - mov r7, r10 - cmp r7, 0x37 - ble _08050C5C - movs r1, 0xE2 - lsls r1, 3 - add r1, sp - ldr r0, [r1] - add r0, r9 - mov r3, sp - adds r2, r3, r0 - ldrb r1, [r2] - movs r0, 0x50 - orrs r0, r1 - strb r0, [r2] - ldr r0, _08050F44 - ldr r1, [r0] - ldr r5, _08050F48 - adds r0, r1, r5 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, r8 - beq _08050CF4 - b _08050F36 -_08050CF4: - ldr r3, _08050F4C - adds r0, r1, r3 - movs r5, 0 - ldrsh r0, [r0, r5] - cmp r0, r9 - beq _08050D02 - b _08050F36 -_08050D02: - ldr r1, _08050F50 - movs r0, 0 - str r0, [r1] - movs r0, 0x40 - mov r9, r0 -_08050D0C: - movs r1, 0 - ldr r2, _08050F54 - add r2, sp - str r1, [r2] - ldr r3, _08050F50 - ldr r0, [r3] - adds r0, 0x1 - str r0, [r3] - movs r7, 0 -_08050D1E: - movs r6, 0 - lsls r2, r7, 5 - adds r5, r7, 0x1 - mov r10, r5 - subs r0, r7, 0x1 - movs r1, 0xE1 - lsls r1, 3 - add r1, sp - str r0, [r1] - lsls r0, 5 - mov r1, sp - subs r1, 0x1 - adds r5, r2, r1 - add r0, sp - mov r8, r0 - mov r2, r10 - ldr r3, _08050F58 - add r3, sp - str r2, [r3] - lsls r0, r2, 5 - add r0, sp - mov r12, r0 -_08050D4A: - ldrb r1, [r5, 0x1] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08050D56 - b _08050EDA -_08050D56: - movs r3, 0x40 - mov r0, r9 - ands r0, r1 - cmp r0, 0 - bne _08050D62 - b _08050EDA -_08050D62: - ldr r2, _08050F54 - add r2, sp - ldr r0, [r2] - adds r0, 0x1 - str r0, [r2] - movs r0, 0xBF - ands r0, r1 - movs r2, 0 - movs r1, 0x80 - orrs r0, r1 - strb r0, [r5, 0x1] - cmp r7, 0 - ble _08050D90 - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x83 - ands r0, r1 - cmp r0, 0 - bne _08050D90 - adds r0, r1, 0 - orrs r0, r3 - mov r1, r8 - strb r0, [r1] -_08050D90: - cmp r6, 0 - ble _08050DA4 - ldrb r1, [r5] - movs r0, 0x83 - ands r0, r1 - cmp r0, 0 - bne _08050DA4 - mov r0, r9 - orrs r0, r1 - strb r0, [r5] -_08050DA4: - cmp r7, 0x36 - bgt _08050DBA - mov r2, r12 - ldrb r1, [r2] - movs r0, 0x83 - ands r0, r1 - cmp r0, 0 - bne _08050DBA - mov r0, r9 - orrs r0, r1 - strb r0, [r2] -_08050DBA: - cmp r6, 0x1E - bgt _08050DCE - ldrb r1, [r5, 0x2] - movs r0, 0x83 - ands r0, r1 - cmp r0, 0 - bne _08050DCE - mov r0, r9 - orrs r0, r1 - strb r0, [r5, 0x2] -_08050DCE: - cmp r7, 0 - ble _08050E12 - cmp r6, 0 - ble _08050E12 - movs r3, 0xE1 - lsls r3, 3 - add r3, sp - ldr r3, [r3] - lsls r1, r3, 5 - subs r0, r1, 0x1 - adds r0, r6, r0 - mov r2, sp - adds r4, r2, r0 - ldrb r3, [r4] - movs r0, 0x87 - ands r0, r3 - cmp r0, 0 - bne _08050E12 - adds r0, r6, r1 - add r0, sp - ldrb r1, [r0] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08050E12 - ldrb r1, [r5] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08050E12 - mov r0, r9 - orrs r0, r3 - strb r0, [r4] -_08050E12: - cmp r7, 0x36 - bgt _08050E54 - cmp r6, 0 - ble _08050E54 - ldr r3, _08050F58 - add r3, sp - ldr r3, [r3] - lsls r1, r3, 5 - subs r0, r1, 0x1 - adds r0, r6, r0 - mov r2, sp - adds r4, r2, r0 - ldrb r3, [r4] - movs r0, 0x87 - ands r0, r3 - cmp r0, 0 - bne _08050E54 - adds r0, r6, r1 - add r0, sp - ldrb r1, [r0] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08050E54 - ldrb r1, [r5] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08050E54 - mov r0, r9 - orrs r0, r3 - strb r0, [r4] -_08050E54: - cmp r7, 0 - ble _08050E98 - cmp r6, 0x1E - bgt _08050E98 - movs r3, 0xE1 - lsls r3, 3 - add r3, sp - ldr r3, [r3] - lsls r1, r3, 5 - adds r0, r1, 0x1 - adds r0, r6, r0 - mov r2, sp - adds r4, r2, r0 - ldrb r3, [r4] - movs r0, 0x87 - ands r0, r3 - cmp r0, 0 - bne _08050E98 - adds r0, r6, r1 - add r0, sp - ldrb r1, [r0] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08050E98 - ldrb r1, [r5, 0x2] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08050E98 - mov r0, r9 - orrs r0, r3 - strb r0, [r4] -_08050E98: - cmp r7, 0x36 - bgt _08050EDA - cmp r6, 0x1E - bgt _08050EDA - ldr r3, _08050F58 - add r3, sp - ldr r3, [r3] - lsls r1, r3, 5 - adds r0, r1, 0x1 - adds r0, r6, r0 - mov r2, sp - adds r4, r2, r0 - ldrb r3, [r4] - movs r0, 0x87 - ands r0, r3 - cmp r0, 0 - bne _08050EDA - adds r0, r6, r1 - add r0, sp - ldrb r1, [r0] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08050EDA - ldrb r1, [r5, 0x2] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08050EDA - mov r0, r9 - orrs r0, r3 - strb r0, [r4] -_08050EDA: - adds r5, 0x1 - movs r3, 0x1 - add r8, r3 - add r12, r3 - adds r6, 0x1 - cmp r6, 0x1F - bgt _08050EEA - b _08050D4A -_08050EEA: - mov r7, r10 - cmp r7, 0x37 - bgt _08050EF2 - b _08050D1E -_08050EF2: - ldr r5, _08050F54 - add r5, sp - ldr r5, [r5] - cmp r5, 0 - beq _08050EFE - b _08050D0C -_08050EFE: - movs r7, 0 -_08050F00: - movs r6, 0 - lsls r2, r7, 5 - mov r0, sp - adds r4, r2, r0 -_08050F08: - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrb r1, [r4] - movs r0, 0x87 - ands r0, r1 - cmp r0, 0 - bne _08050F68 - movs r1, 0xE0 - lsls r1, 3 - add r1, sp - ldr r1, [r1] - cmp r1, 0 - bne _08050F5C - ldrh r0, [r2] - movs r2, 0x80 - lsls r2, 1 - adds r1, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08050F68 -_08050F36: - movs r0, 0 - b _08050F78 - .align 2, 0 -_08050F3C: .4byte 0xfffff8ec -_08050F40: .4byte 0x00007fff -_08050F44: .4byte gUnknown_203B418 -_08050F48: .4byte 0x0000e21c -_08050F4C: .4byte 0x0000e21e -_08050F50: .4byte gUnknown_202F1D4 -_08050F54: .4byte 0x00000704 -_08050F58: .4byte 0x0000070c -_08050F5C: - ldrh r1, [r2] - movs r3, 0x80 - lsls r3, 8 - adds r0, r3, 0 - orrs r0, r1 - strh r0, [r2] -_08050F68: - adds r4, 0x1 - adds r6, 0x1 - cmp r6, 0x1F - ble _08050F08 - adds r7, 0x1 - cmp r7, 0x37 - ble _08050F00 - movs r0, 0x1 -_08050F78: - ldr r3, _08050F8C - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08050F8C: .4byte 0x00000714 - thumb_func_end sub_8050C30 - - thumb_func_start sub_8050F90 -sub_8050F90: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x3C - str r0, [sp] - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r3, [sp, 0xC] - movs r0, 0 - str r0, [sp, 0x10] - movs r1, 0 - str r1, [sp, 0x14] - movs r2, 0 - b _080511D0 -_08050FB0: - movs r4, 0 - str r4, [sp, 0x18] - ldr r5, [sp, 0x1C] - adds r5, 0x1 - str r5, [sp, 0x28] - ldr r6, [sp, 0x4] - cmp r4, r6 - blt _08050FC2 - b _080511CE -_08050FC2: - ldr r1, [sp, 0x18] - lsls r0, r1, 2 - ldr r2, [sp, 0xC] - adds r0, r2 - ldr r3, [r0] - adds r4, r3, 0x2 - mov r9, r4 - ldr r5, [sp, 0x1C] - lsls r1, r5, 2 - ldr r6, [sp, 0x5C] - adds r1, r6 - ldr r2, [r1] - adds r4, r2, 0x2 - mov r10, r4 - ldr r0, [r0, 0x4] - subs r0, r3 - subs r4, r0, 0x4 - ldr r0, [r1, 0x4] - subs r0, r2 - subs r7, r0, 0x4 - movs r3, 0x5 - movs r5, 0x5 - ldr r6, [sp, 0x4] - cmp r6, 0x2 - bgt _08050FF8 - movs r3, 0xA - movs r4, 0xE -_08050FF8: - ldr r0, [sp, 0x8] - cmp r0, 0x1 - bne _08051002 - movs r5, 0x10 - movs r7, 0x18 -_08051002: - ldr r2, [sp, 0x1C] - lsls r1, r2, 5 - ldr r6, [sp, 0x18] - lsls r2, r6, 4 - subs r0, r2, r6 - lsls r0, 5 - ldr r6, [sp] - adds r0, r6 - adds r6, r1, r0 - ldrb r0, [r6, 0xA] - str r1, [sp, 0x30] - str r2, [sp, 0x2C] - cmp r0, 0 - bne _08051020 - b _08051130 -_08051020: - ldr r0, [sp, 0x14] - ldr r1, [sp, 0x60] - cmp r0, r1 - beq _0805108C - adds r0, r3, 0 - adds r1, r4, 0 - bl sub_808411C - adds r6, r0, 0 - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_808411C - adds r5, r0, 0 - movs r1, 0x1 - adds r0, r6, 0 - orrs r0, r1 - cmp r0, r4 - bge _08051048 - adds r6, r0, 0 -_08051048: - adds r0, r5, 0 - orrs r0, r1 - cmp r0, r7 - bge _08051052 - adds r5, r0, 0 -_08051052: - lsls r0, r5, 1 - adds r0, r5 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - cmp r6, r0 - ble _08051062 - adds r6, r0, 0 -_08051062: - lsls r0, r6, 1 - adds r0, r6 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - cmp r5, r0 - ble _08051072 - adds r5, r0, 0 -_08051072: - subs r0, r4, r6 - bl sub_8084100 - mov r2, r9 - adds r4, r0, r2 - subs r0, r7, r5 - bl sub_8084100 - mov r3, r10 - adds r7, r0, r3 - adds r3, r4, r6 - adds r6, r7, r5 - b _08051098 -_0805108C: - mov r4, r9 - mov r7, r10 - ldr r5, [sp, 0x64] - adds r3, r4, r5 - ldr r0, [sp, 0x68] - adds r6, r7, r0 -_08051098: - ldr r1, [sp, 0x2C] - ldr r2, [sp, 0x18] - subs r0, r1, r2 - lsls r0, 5 - ldr r5, [sp] - adds r0, r5 - ldr r1, [sp, 0x30] - adds r0, r1, r0 - strh r4, [r0] - strh r3, [r0, 0x4] - strh r7, [r0, 0x2] - strh r6, [r0, 0x6] - adds r5, r4, 0 - ldr r2, [sp, 0x10] - adds r2, 0x1 - str r2, [sp, 0x20] - ldr r4, [sp, 0x14] - adds r4, 0x1 - str r4, [sp, 0x24] - ldr r0, [sp, 0x18] - adds r0, 0x1 - mov r10, r0 - cmp r5, r3 - bge _08051108 -_080510C8: - adds r4, r7, 0 - adds r1, r5, 0x1 - mov r8, r1 - cmp r4, r6 - bge _08051102 - ldr r2, _0805112C - mov r9, r2 -_080510D6: - adds r0, r5, 0 - adds r1, r4, 0 - str r3, [sp, 0x38] - bl sub_8049590 - ldrh r1, [r0] - mov r2, r9 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - mov r1, sp - ldrb r1, [r1, 0x10] - strb r1, [r0, 0x9] - adds r4, 0x1 - ldr r3, [sp, 0x38] - cmp r4, r6 - blt _080510D6 -_08051102: - mov r5, r8 - cmp r5, r3 - blt _080510C8 -_08051108: - ldr r2, [sp, 0x14] - ldr r3, [sp, 0x60] - cmp r2, r3 - beq _08051124 - ldr r4, [sp, 0x2C] - ldr r5, [sp, 0x18] - subs r0, r4, r5 - lsls r0, 5 - ldr r6, [sp] - adds r0, r6 - ldr r1, [sp, 0x30] - adds r0, r1, r0 - movs r1, 0x1 - strb r1, [r0, 0x1D] -_08051124: - ldr r2, [sp, 0x20] - str r2, [sp, 0x10] - b _080511BE - .align 2, 0 -_0805112C: .4byte 0x0000fffc -_08051130: - movs r1, 0x2 - movs r3, 0x4 - movs r2, 0x2 - mov r8, r3 - ldr r5, [sp, 0x18] - cmp r5, 0 - bne _08051140 - movs r1, 0x1 -_08051140: - ldr r0, [sp, 0x1C] - cmp r0, 0 - bne _08051148 - movs r2, 0x1 -_08051148: - ldr r0, [sp, 0x4] - subs r0, 0x1 - ldr r5, [sp, 0x18] - cmp r5, r0 - bne _08051154 - movs r3, 0x2 -_08051154: - ldr r0, [sp, 0x8] - subs r0, 0x1 - ldr r5, [sp, 0x1C] - cmp r5, r0 - bne _08051162 - movs r0, 0x2 - mov r8, r0 -_08051162: - mov r5, r9 - adds r0, r5, r1 - adds r1, r5, r4 - subs r1, r3 - str r2, [sp, 0x34] - bl sub_808411C - adds r5, r0, 0 - ldr r2, [sp, 0x34] - mov r1, r10 - adds r0, r1, r2 - adds r1, r7 - mov r2, r8 - subs r1, r2 - bl sub_808411C - adds r4, r0, 0 - strh r5, [r6] - adds r0, r5, 0x1 - strh r0, [r6, 0x4] - strh r4, [r6, 0x2] - adds r0, r4, 0x1 - strh r0, [r6, 0x6] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r1, [r0] - ldr r3, _080511EC - adds r2, r3, 0 - ands r1, r2 - movs r2, 0x1 - orrs r1, r2 - strh r1, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - movs r1, 0xFF - strb r1, [r0, 0x9] - ldr r4, [sp, 0x14] - adds r4, 0x1 - str r4, [sp, 0x24] - ldr r5, [sp, 0x18] - adds r5, 0x1 - mov r10, r5 -_080511BE: - ldr r6, [sp, 0x24] - str r6, [sp, 0x14] - mov r0, r10 - str r0, [sp, 0x18] - ldr r1, [sp, 0x4] - cmp r0, r1 - bge _080511CE - b _08050FC2 -_080511CE: - ldr r2, [sp, 0x28] -_080511D0: - str r2, [sp, 0x1C] - ldr r3, [sp, 0x8] - cmp r2, r3 - bge _080511DA - b _08050FB0 -_080511DA: - add sp, 0x3C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080511EC: .4byte 0x0000fffc - thumb_func_end sub_8050F90 - - thumb_func_start sub_80511F0 -sub_80511F0: - push {r4-r6,lr} - ldr r6, _08051204 - ldrb r0, [r6] - cmp r0, 0 - beq _0805120C - subs r0, 0x1 - strb r0, [r6] - ldr r0, _08051208 - ldrb r0, [r0] - b _08051244 - .align 2, 0 -_08051204: .4byte gUnknown_202F1E1 -_08051208: .4byte gUnknown_202F1E0 -_0805120C: - ldr r1, _0805122C - ldr r5, _08051230 - ldr r2, [r5] - ldrb r3, [r2] - strb r3, [r1] - adds r4, r2, 0x1 - str r4, [r5] - lsls r0, r3, 24 - lsrs r0, 24 - cmp r0, 0xE - bne _08051234 - ldrb r0, [r2, 0x1] - strb r0, [r1] - adds r0, r4, 0x1 - str r0, [r5] - b _08051242 - .align 2, 0 -_0805122C: .4byte gUnknown_202F1E0 -_08051230: .4byte gUnknown_202F1DC -_08051234: - movs r0, 0xF - ands r0, r3 - strb r0, [r6] - movs r0, 0xF0 - ands r0, r3 - lsrs r0, 4 - strb r0, [r1] -_08051242: - ldrb r0, [r1] -_08051244: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80511F0 - - thumb_func_start sub_805124C -sub_805124C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - ldr r5, [sp, 0x1C] - lsls r1, 24 - lsrs r1, 24 - lsls r5, 24 - lsrs r5, 24 - ldrh r6, [r0] - movs r7, 0x80 - lsls r7, 1 - adds r4, r7, 0 - movs r7, 0 - mov r8, r7 - orrs r4, r6 - strh r4, [r0] - mov r4, r8 - strb r4, [r0, 0xE] - str r5, [sp] - bl sub_8051A74 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805124C - - thumb_func_start sub_8051288 -sub_8051288: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - str r0, [sp, 0x4] - ldr r0, _08051374 - ldr r7, [r0] - ldr r0, _08051378 - adds r3, r7, r0 - ldr r0, [r3] - ldr r0, [r0, 0x4] - ldr r2, [sp, 0x4] - lsls r1, r2, 2 - adds r0, r1, r0 - ldr r0, [r0] - ldrb r2, [r0] - mov r10, r2 - ldrb r0, [r0, 0x1] - mov r9, r0 - ldr r2, _0805137C - adds r0, r7, r2 - movs r4, 0 - mov r2, r10 - strh r2, [r0] - ldr r2, _08051380 - adds r0, r7, r2 - mov r2, r9 - strh r2, [r0] - ldr r2, _08051384 - ldr r0, [r3] - ldr r0, [r0, 0x4] - adds r1, r0 - ldr r0, [r1] - adds r0, 0x3 - str r0, [r2] - ldr r0, _08051388 - strb r4, [r0] - movs r6, 0x5 - mov r0, r9 - adds r0, 0x5 - cmp r6, r0 - bge _0805132E - movs r1, 0x5 - add r1, r10 - mov r8, r1 - str r0, [sp, 0x8] -_080512E8: - movs r5, 0x5 - cmp r5, r8 - bge _08051326 -_080512EE: - bl sub_80511F0 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8049590 - movs r1, 0x1 - str r1, [sp] - adds r1, r4, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_805124C - lsls r0, 24 - cmp r0, 0 - beq _08051320 - ldr r2, _0805138C - adds r0, r7, r2 - strh r5, [r0] - ldr r1, _08051390 - adds r0, r7, r1 - strh r6, [r0] -_08051320: - adds r5, 0x1 - cmp r5, r8 - blt _080512EE -_08051326: - adds r6, 0x1 - ldr r2, [sp, 0x8] - cmp r6, r2 - blt _080512E8 -_0805132E: - movs r6, 0 - ldr r0, _08051394 - adds r7, r0, 0 -_08051334: - movs r5, 0 - adds r4, r6, 0x1 -_08051338: - cmp r5, 0x4 - ble _08051350 - mov r0, r10 - adds r0, 0x5 - cmp r5, r0 - bge _08051350 - cmp r6, 0x4 - ble _08051350 - mov r0, r9 - adds r0, 0x5 - cmp r6, r0 - blt _080513A0 -_08051350: - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x10 - movs r3, 0 - orrs r1, r0 - strh r1, [r2] - ldr r0, _08051398 - ldrb r0, [r0] - cmp r0, 0 - beq _0805139C - ands r1, r7 - movs r0, 0x3 - orrs r1, r0 - b _0805139E - .align 2, 0 -_08051374: .4byte gUnknown_203B418 -_08051378: .4byte 0x00013568 -_0805137C: .4byte 0x0000e260 -_08051380: .4byte 0x0000e262 -_08051384: .4byte gUnknown_202F1DC -_08051388: .4byte gUnknown_202F1E1 -_0805138C: .4byte 0x0000e21c -_08051390: .4byte 0x0000e21e -_08051394: .4byte 0x0000fffc -_08051398: .4byte gUnknown_202F1A8 -_0805139C: - ands r1, r7 -_0805139E: - strh r1, [r2] -_080513A0: - adds r5, 0x1 - cmp r5, 0x37 - ble _08051338 - adds r6, r4, 0 - cmp r6, 0x1F - ble _08051334 - ldr r1, [sp, 0x4] - cmp r1, 0x4 - bne _080513DA - movs r6, 0x5 - ldr r2, _0805142C - adds r7, r2, 0 -_080513B8: - movs r5, 0x2 - adds r4, r6, 0x1 -_080513BC: - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8049590 - ldrh r2, [r0] - movs r1, 0x10 - orrs r1, r2 - ands r1, r7 - strh r1, [r0] - adds r5, 0x1 - cmp r5, 0x4 - ble _080513BC - adds r6, r4, 0 - cmp r6, 0x10 - ble _080513B8 -_080513DA: - ldr r0, _08051430 - ldr r0, [r0] - ldr r1, _08051434 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0x3F - ble _08051416 - movs r6, 0 -_080513EC: - movs r5, 0 - adds r4, r6, 0x1 -_080513F0: - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _0805140A - movs r0, 0x10 - orrs r0, r1 - strh r0, [r2] -_0805140A: - adds r5, 0x1 - cmp r5, 0x37 - ble _080513F0 - adds r6, r4, 0 - cmp r6, 0x1F - ble _080513EC -_08051416: - bl sub_804E9DC - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0805142C: .4byte 0x0000fffc -_08051430: .4byte gUnknown_203B418 -_08051434: .4byte 0x00003a0e - thumb_func_end sub_8051288 - - thumb_func_start sub_8051438 -sub_8051438: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - mov r9, r0 - ldr r0, _080515AC - ldr r0, [r0] - str r0, [sp, 0x4] - ldr r2, _080515B0 - ldr r4, _080515B4 - adds r3, r0, r4 - ldr r0, [r3] - ldr r0, [r0, 0x4] - lsls r1, 2 - adds r0, r1, r0 - ldr r0, [r0] - adds r0, 0x3 - str r0, [r2] - ldr r2, _080515B8 - movs r0, 0 - strb r0, [r2] - ldr r0, [r3] - ldr r0, [r0, 0x4] - adds r1, r0 - ldr r0, [r1] - ldrb r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0805147A - b _080515D8 -_0805147A: - ldr r5, [sp, 0x4] - ldr r0, _080515BC - adds r1, r5, r0 - mov r2, r9 - movs r3, 0 - ldrsh r0, [r2, r3] - str r0, [r1] - ldr r4, _080515C0 - adds r1, r5, r4 - movs r5, 0x2 - ldrsh r0, [r2, r5] - str r0, [r1] - ldr r0, [sp, 0x4] - ldr r2, _080515C4 - adds r1, r0, r2 - mov r3, r9 - movs r4, 0x4 - ldrsh r0, [r3, r4] - str r0, [r1] - ldr r5, [sp, 0x4] - ldr r0, _080515C8 - adds r1, r5, r0 - movs r2, 0x6 - ldrsh r0, [r3, r2] - str r0, [r1] - movs r3, 0 - str r3, [sp, 0x8] - mov r4, r9 - movs r5, 0x2 - ldrsh r4, [r4, r5] - mov r8, r4 - mov r1, r9 - movs r2, 0x6 - ldrsh r0, [r1, r2] - cmp r8, r0 - blt _080514C4 - b _08051640 -_080514C4: - mov r3, r9 - movs r4, 0 - ldrsh r7, [r3, r4] - movs r5, 0x4 - ldrsh r0, [r3, r5] - ldr r1, [sp, 0x8] - adds r1, 0x1 - str r1, [sp, 0x10] - mov r2, r8 - adds r2, 0x1 - str r2, [sp, 0xC] - cmp r7, r0 - bge _08051598 - ldr r4, _080515CC - ldr r3, [sp, 0x4] - adds r4, r3, r4 - str r4, [sp, 0x14] - movs r5, 0 - str r5, [sp, 0x18] - ldr r0, [sp, 0x8] - mov r10, r0 -_080514EE: - bl sub_80511F0 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - adds r0, r7, 0 - mov r1, r8 - bl sub_8049590 - adds r6, r0, 0 - ldr r1, [sp, 0x4] - ldr r2, _080515D0 - adds r0, r1, r2 - add r0, r10 - strb r5, [r0] - ldr r3, [sp, 0x8] - lsls r4, r3, 1 - adds r4, r3 - lsls r4, 3 - ldr r1, [sp, 0x14] - adds r0, r1, r4 - movs r2, 0 - str r2, [sp] - adds r1, r5, 0 - adds r2, r7, 0 - mov r3, r8 - bl sub_805124C - ldrb r1, [r6, 0x9] - ldr r3, [sp, 0x18] - adds r4, r3 - ldr r5, [sp, 0x4] - adds r4, r5, r4 - adds r0, r6, 0 - ldr r2, _080515CC - adds r4, r2 - ldm r4!, {r2,r3,r5} - stm r0!, {r2,r3,r5} - ldm r4!, {r2,r3,r5} - stm r0!, {r2,r3,r5} - mov r3, r9 - movs r4, 0 - ldrsh r0, [r3, r4] - adds r0, 0x2 - cmp r7, r0 - blt _08051572 - movs r5, 0x4 - ldrsh r0, [r3, r5] - subs r0, 0x2 - cmp r7, r0 - bge _08051572 - movs r2, 0x2 - ldrsh r0, [r3, r2] - adds r0, 0x2 - cmp r8, r0 - blt _08051572 - movs r4, 0x6 - ldrsh r0, [r3, r4] - subs r0, 0x2 - cmp r8, r0 - bge _08051572 - movs r0, 0x88 - lsls r0, 1 - strh r0, [r6] - movs r0, 0xE - strb r0, [r6, 0xE] -_08051572: - strb r1, [r6, 0x9] - ldr r5, [sp, 0x4] - ldr r2, _080515D4 - adds r0, r5, r2 - strb r1, [r0] - ldr r3, [sp, 0x14] - adds r3, 0xC0 - str r3, [sp, 0x14] - ldr r4, [sp, 0x18] - adds r4, 0xC0 - str r4, [sp, 0x18] - movs r5, 0x8 - add r10, r5 - adds r7, 0x1 - mov r1, r9 - movs r2, 0x4 - ldrsh r0, [r1, r2] - cmp r7, r0 - blt _080514EE -_08051598: - ldr r3, [sp, 0x10] - str r3, [sp, 0x8] - ldr r4, [sp, 0xC] - mov r8, r4 - mov r5, r9 - movs r1, 0x6 - ldrsh r0, [r5, r1] - cmp r8, r0 - blt _080514C4 - b _08051640 - .align 2, 0 -_080515AC: .4byte gUnknown_203B418 -_080515B0: .4byte gUnknown_202F1DC -_080515B4: .4byte 0x00013568 -_080515B8: .4byte gUnknown_202F1E1 -_080515BC: .4byte 0x0000e250 -_080515C0: .4byte 0x0000e254 -_080515C4: .4byte 0x0000e258 -_080515C8: .4byte 0x0000e25c -_080515CC: .4byte 0x0000e27c -_080515D0: .4byte 0x0000e87c -_080515D4: .4byte 0x0000e8bc -_080515D8: - mov r2, r9 - movs r3, 0x2 - ldrsh r2, [r2, r3] - mov r8, r2 - b _08051636 -_080515E2: - mov r0, r9 - movs r1, 0 - ldrsh r7, [r0, r1] - movs r2, 0x4 - ldrsh r0, [r0, r2] - mov r3, r8 - adds r3, 0x1 - str r3, [sp, 0xC] - cmp r7, r0 - bge _08051632 -_080515F6: - bl sub_80511F0 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r7, 0 - mov r1, r8 - bl sub_8049590 - adds r5, r0, 0 - ldrb r6, [r5, 0x9] - movs r0, 0x1 - str r0, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - adds r2, r7, 0 - mov r3, r8 - bl sub_805124C - strb r6, [r5, 0x9] - ldr r4, [sp, 0x4] - ldr r5, _08051650 - adds r0, r4, r5 - strb r6, [r0] - adds r7, 0x1 - mov r1, r9 - movs r2, 0x4 - ldrsh r0, [r1, r2] - cmp r7, r0 - blt _080515F6 -_08051632: - ldr r3, [sp, 0xC] - mov r8, r3 -_08051636: - mov r4, r9 - movs r5, 0x6 - ldrsh r0, [r4, r5] - cmp r8, r0 - blt _080515E2 -_08051640: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08051650: .4byte 0x0000e8bc - thumb_func_end sub_8051438 - - thumb_func_start sub_8051654 -sub_8051654: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - str r0, [sp] - ldr r4, _080516EC - ldr r1, [r4, 0x8] - ldr r0, [r4] - subs r1, r0 - subs r1, 0x2 - movs r0, 0x3 - bl sub_808411C - mov r8, r0 - cmp r0, 0x2 - bgt _0805167C - movs r0, 0x3 - mov r8, r0 -_0805167C: - ldr r1, [r4, 0xC] - ldr r0, [r4, 0x4] - subs r1, r0 - subs r1, 0x2 - movs r0, 0x3 - bl sub_808411C - mov r9, r0 - cmp r0, 0x2 - bgt _08051694 - movs r1, 0x3 - mov r9, r1 -_08051694: - movs r0, 0x2 - movs r1, 0x4 - bl sub_808411C - mov r10, r0 - movs r5, 0 - cmp r5, r10 - bge _08051734 - ldr r0, [r4, 0x8] - ldr r1, [r4] - subs r0, r1 - cmp r0, r8 - ble _08051734 - adds r6, r4, 0 -_080516B0: - movs r0, 0x64 - bl sub_8084100 - cmp r0, 0x31 - bgt _080516F4 - ldr r4, [r6, 0x4] - ldr r0, [r6, 0xC] - adds r7, r5, 0x1 - cmp r4, r0 - bge _080516E4 - ldr r5, _080516EC - ldr r0, _080516F0 - adds r2, r0, 0 -_080516CA: - ldr r0, [r5] - adds r1, r4, 0 - str r2, [sp, 0xC] - bl sub_8049590 - ldrh r1, [r0] - ldr r2, [sp, 0xC] - ands r1, r2 - strh r1, [r0] - adds r4, 0x1 - ldr r0, [r5, 0xC] - cmp r4, r0 - blt _080516CA -_080516E4: - ldr r0, [r6] - adds r0, 0x1 - str r0, [r6] - b _08051724 - .align 2, 0 -_080516EC: .4byte gUnknown_202F1B8 -_080516F0: .4byte 0x0000ffdf -_080516F4: - ldr r0, [r6, 0x8] - subs r0, 0x1 - str r0, [r6, 0x8] - ldr r4, [r6, 0x4] - ldr r0, [r6, 0xC] - adds r7, r5, 0x1 - cmp r4, r0 - bge _08051724 - ldr r5, _08051784 - ldr r1, _08051788 - adds r2, r1, 0 -_0805170A: - ldr r0, [r5, 0x8] - adds r1, r4, 0 - str r2, [sp, 0xC] - bl sub_8049590 - ldrh r1, [r0] - ldr r2, [sp, 0xC] - ands r1, r2 - strh r1, [r0] - adds r4, 0x1 - ldr r0, [r5, 0xC] - cmp r4, r0 - blt _0805170A -_08051724: - adds r5, r7, 0 - cmp r5, r10 - bge _08051734 - ldr r0, [r6, 0x8] - ldr r1, [r6] - subs r0, r1 - cmp r0, r8 - bgt _080516B0 -_08051734: - movs r5, 0 - ldr r3, _08051784 - cmp r5, r10 - bge _080517CE - ldr r0, [r3, 0xC] - ldr r1, [r3, 0x4] - subs r0, r1 - cmp r0, r9 - ble _080517CE - adds r6, r3, 0 -_08051748: - movs r0, 0x64 - bl sub_8084100 - cmp r0, 0x31 - bgt _0805178C - ldr r4, [r6] - ldr r0, [r6, 0x8] - adds r7, r5, 0x1 - cmp r4, r0 - bge _0805177C - ldr r5, _08051784 - ldr r0, _08051788 - adds r2, r0, 0 -_08051762: - ldr r1, [r5, 0x4] - adds r0, r4, 0 - str r2, [sp, 0xC] - bl sub_8049590 - ldrh r1, [r0] - ldr r2, [sp, 0xC] - ands r1, r2 - strh r1, [r0] - adds r4, 0x1 - ldr r0, [r5, 0x8] - cmp r4, r0 - blt _08051762 -_0805177C: - ldr r0, [r6, 0x4] - adds r0, 0x1 - str r0, [r6, 0x4] - b _080517BC - .align 2, 0 -_08051784: .4byte gUnknown_202F1B8 -_08051788: .4byte 0x0000ffdf -_0805178C: - ldr r0, [r6, 0xC] - subs r0, 0x1 - str r0, [r6, 0xC] - ldr r4, [r6] - ldr r0, [r6, 0x8] - adds r7, r5, 0x1 - cmp r4, r0 - bge _080517BC - ldr r5, _080518E4 - ldr r1, _080518E8 - adds r2, r1, 0 -_080517A2: - ldr r1, [r5, 0xC] - adds r0, r4, 0 - str r2, [sp, 0xC] - bl sub_8049590 - ldrh r1, [r0] - ldr r2, [sp, 0xC] - ands r1, r2 - strh r1, [r0] - adds r4, 0x1 - ldr r0, [r5, 0x8] - cmp r4, r0 - blt _080517A2 -_080517BC: - adds r5, r7, 0 - ldr r3, _080518E4 - cmp r5, r10 - bge _080517CE - ldr r1, [r6, 0xC] - ldr r0, [r6, 0x4] - subs r1, r0 - cmp r1, r9 - bgt _08051748 -_080517CE: - ldr r7, [r3] - ldr r0, [r3, 0x8] - cmp r7, r0 - bge _08051824 - adds r4, r3, 0 - mov r9, r3 -_080517DA: - ldr r5, [r4, 0x4] - ldr r0, [r4, 0xC] - adds r1, r7, 0x1 - mov r8, r1 - cmp r5, r0 - bge _0805181A - ldr r3, _080518E4 - ldr r0, _080518E8 - adds r6, r0, 0 -_080517EC: - adds r0, r7, 0 - adds r1, r5, 0 - str r3, [sp, 0x10] - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x20 - ands r0, r1 - ldr r3, [sp, 0x10] - cmp r0, 0 - beq _08051812 - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08051812 - adds r0, r1, 0 - ands r0, r6 - strh r0, [r2] -_08051812: - adds r5, 0x1 - ldr r0, [r4, 0xC] - cmp r5, r0 - blt _080517EC -_0805181A: - mov r7, r8 - mov r1, r9 - ldr r0, [r1, 0x8] - cmp r7, r0 - blt _080517DA -_08051824: - ldr r0, [r3] - ldr r1, [r3, 0x8] - adds r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r2, r0, 1 - ldr r0, [r3, 0x4] - ldr r1, [r3, 0xC] - adds r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - subs r0, 0x1 - mov r10, r0 - movs r0, 0 - mov r9, r0 - subs r7, r2, 0x1 - adds r0, r2, 0x2 - cmp r7, r0 - bge _080518D2 - adds r2, r0, 0 - str r2, [sp, 0x4] -_08051850: - mov r5, r10 - adds r0, r5, 0x3 - adds r1, r7, 0x1 - mov r8, r1 - mov r1, r9 - adds r1, 0x1 - str r1, [sp, 0x8] - cmp r5, r0 - bge _080518C6 - movs r3, 0 -_08051864: - adds r0, r7, 0 - adds r1, r5, 0 - str r3, [sp, 0x10] - bl sub_8049590 - adds r6, r0, 0 - ldrh r1, [r6] - movs r0, 0x20 - ands r0, r1 - ldr r3, [sp, 0x10] - cmp r0, 0 - beq _080518BA - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _080518BA - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080518BA - mov r0, r9 - lsls r2, r0, 1 - adds r2, r3 - ldr r0, [sp] - ldrb r1, [r0, 0x18] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - adds r2, r0 - ldr r1, _080518EC - adds r2, r1 - movs r0, 0 - ldrsh r4, [r2, r0] - movs r0, 0x64 - bl sub_8084100 - ldr r3, [sp, 0x10] - cmp r4, r0 - ble _080518BA - ldrh r1, [r6, 0x4] - movs r0, 0x2 - orrs r0, r1 - strh r0, [r6, 0x4] -_080518BA: - adds r5, 0x1 - adds r3, 0x6 - mov r0, r10 - adds r0, 0x3 - cmp r5, r0 - blt _08051864 -_080518C6: - mov r7, r8 - ldr r1, [sp, 0x8] - mov r9, r1 - ldr r0, [sp, 0x4] - cmp r7, r0 - blt _08051850 -_080518D2: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080518E4: .4byte gUnknown_202F1B8 -_080518E8: .4byte 0x0000ffdf -_080518EC: .4byte gUnknown_80F57D4 - thumb_func_end sub_8051654 - - thumb_func_start sub_80518F0 -sub_80518F0: - push {r4-r7,lr} - movs r5, 0 - movs r6, 0x10 - movs r7, 0 -_080518F8: - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8049590 - adds r4, r0, 0 - bl sub_804FD10 - cmp r5, 0 - beq _0805190E - cmp r5, 0x37 - bne _08051914 -_0805190E: - ldrh r0, [r4] - orrs r0, r6 - strh r0, [r4] -_08051914: - adds r0, r5, 0 - movs r1, 0x1E - bl sub_8049590 - adds r4, r0, 0 - bl sub_804FD10 - cmp r5, 0 - beq _0805192A - cmp r5, 0x37 - bne _08051930 -_0805192A: - ldrh r0, [r4] - orrs r0, r6 - strh r0, [r4] -_08051930: - adds r5, 0x1 - cmp r5, 0x37 - ble _080518F8 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80518F0 - - thumb_func_start sub_805193C -sub_805193C: - push {r4-r6,lr} - sub sp, 0x8 - adds r6, r3, 0 - ldr r4, [sp, 0x18] - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 16 - lsls r2, 16 - lsrs r1, 16 - orrs r1, r2 - str r1, [sp, 0x4] - adds r0, r5, 0 - bl sub_805210C - lsls r0, 24 - cmp r0, 0 - beq _0805196A - mov r0, sp - movs r1, 0x76 - movs r2, 0 - bl sub_8090A8C - b _08051974 -_0805196A: - mov r0, sp - adds r1, r5, 0 - movs r2, 0 - bl sub_8090A8C -_08051974: - mov r0, sp - ldrb r0, [r0] - orrs r4, r0 - mov r0, sp - strb r4, [r0] - cmp r6, 0 - beq _08051984 - strb r6, [r0, 0x1] -_08051984: - add r0, sp, 0x4 - mov r1, sp - movs r2, 0x1 - bl sub_80460F8 - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_805193C - - thumb_func_start sub_8051998 -sub_8051998: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x14 - mov r8, r1 - mov r9, r2 - lsls r0, 16 - asrs r0, 16 - adds r1, r0, 0 - lsls r3, 24 - lsrs r6, r3, 24 - adds r7, r6, 0 - ldr r0, _080519E4 - cmp r1, r0 - bne _080519E8 - mov r1, sp - movs r5, 0 - movs r4, 0 - movs r0, 0x3C - strh r0, [r1] - bl sub_803DA20 - mov r1, sp - strh r0, [r1, 0x8] - mov r0, sp - strb r6, [r0, 0x2] - str r4, [sp, 0x4] - strb r5, [r0, 0x10] - mov r1, r8 - strh r1, [r0, 0xC] - mov r1, r9 - strh r1, [r0, 0xE] - movs r1, 0x1 - bl sub_806B7F8 - b _08051A14 - .align 2, 0 -_080519E4: .4byte 0x000001a5 -_080519E8: - cmp r1, 0 - beq _08051A14 - mov r0, sp - movs r5, 0 - movs r4, 0 - strh r1, [r0] - adds r0, r1, 0 - bl sub_803DA20 - mov r1, sp - strh r0, [r1, 0x8] - mov r0, sp - strb r7, [r0, 0x2] - str r4, [sp, 0x4] - strb r5, [r0, 0x10] - mov r1, r8 - strh r1, [r0, 0xC] - mov r1, r9 - strh r1, [r0, 0xE] - movs r1, 0x1 - bl sub_806B7F8 -_08051A14: - add sp, 0x14 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8051998 - - thumb_func_start sub_8051A24 -sub_8051A24: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - lsls r6, 24 - lsrs r6, 24 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - adds r7, r0, 0 - lsls r4, 16 - lsls r5, 16 - lsrs r4, 16 - orrs r4, r5 - str r4, [sp] - adds r0, r6, 0 - mov r1, sp - movs r2, 0 - bl sub_8045684 - cmp r0, 0 - beq _08051A66 - str r0, [r7, 0x14] - adds r0, 0x20 - mov r1, r8 - strb r1, [r0] -_08051A66: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8051A24 - - thumb_func_start sub_8051A74 -sub_8051A74: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r6, r2, 0 - adds r7, r3, 0 - ldr r0, [sp, 0x20] - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - cmp r1, 0xF - bls _08051AA2 - ldrh r0, [r4] - ldr r1, _08051AB4 - ands r1, r0 - movs r0, 0x1 - orrs r1, r0 - strh r1, [r4] -_08051AA2: - mov r0, r8 - cmp r0, 0x45 - bls _08051AAA - b _08051D68 -_08051AAA: - lsls r0, 2 - ldr r1, _08051AB8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08051AB4: .4byte 0x0000fffc -_08051AB8: .4byte _08051ABC - .align 2, 0 -_08051ABC: - .4byte _08051BF0 - .4byte _08051C0C - .4byte _08051D50 - .4byte _08051E1A - .4byte _08051C20 - .4byte _08051C54 - .4byte _08051C64 - .4byte _08051C74 - .4byte _08051C94 - .4byte _08051D00 - .4byte _08051C7E - .4byte _08051D10 - .4byte _08051D24 - .4byte _08051D50 - .4byte _08051D50 - .4byte _08051E1A - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051D68 - .4byte _08051C94 - .4byte _08051CD4 - .4byte _08051BD4 -_08051BD4: - ldr r0, _08051BFC - ldr r0, [r0] - ldr r2, _08051C00 - adds r1, r0, r2 - strh r6, [r1] - ldr r3, _08051C04 - adds r0, r3 - strh r7, [r0] - movs r0, 0xB - adds r1, r6, 0 - adds r2, r7, 0 - movs r3, 0 - bl sub_8051A24 -_08051BF0: - ldrh r1, [r4] - ldr r0, _08051C08 - ands r0, r1 - movs r1, 0x1 - movs r2, 0 - b _08051D42 - .align 2, 0 -_08051BFC: .4byte gUnknown_203B418 -_08051C00: .4byte 0x00000684 -_08051C04: .4byte 0x00000686 -_08051C08: .4byte 0x0000fffc -_08051C0C: - ldrh r1, [r4] - ldr r0, _08051C18 - ands r0, r1 - ldr r1, _08051C1C - ands r0, r1 - b _08051D5A - .align 2, 0 -_08051C18: .4byte 0x0000fffc -_08051C1C: .4byte 0x0000feff -_08051C20: - ldrh r1, [r4] - ldr r0, _08051C44 - ands r0, r1 - movs r1, 0x1 - movs r2, 0 - orrs r0, r1 - strh r0, [r4] - ldr r0, _08051C48 - ldr r0, [r0] - ldr r3, _08051C4C - adds r1, r0, r3 - strh r6, [r1] - ldr r1, _08051C50 - adds r0, r1 - strh r7, [r0] - strb r2, [r4, 0x9] - b _08051E1A - .align 2, 0 -_08051C44: .4byte 0x0000fffc -_08051C48: .4byte gUnknown_203B418 -_08051C4C: .4byte 0x0000e218 -_08051C50: .4byte 0x0000e21a -_08051C54: - ldrh r1, [r4] - ldr r0, _08051C60 - ands r0, r1 - movs r2, 0 - movs r1, 0x2 - b _08051D42 - .align 2, 0 -_08051C60: .4byte 0x0000fffc -_08051C64: - ldrh r1, [r4] - ldr r0, _08051C70 - ands r0, r1 - movs r1, 0x3 - b _08051D58 - .align 2, 0 -_08051C70: .4byte 0x0000fffc -_08051C74: - ldr r1, _08051C8C - movs r0, 0x1 - strb r0, [r1] - bl sub_8049840 -_08051C7E: - ldrh r1, [r4] - ldr r0, _08051C90 - ands r0, r1 - movs r1, 0x3 - orrs r0, r1 - b _08051D56 - .align 2, 0 -_08051C8C: .4byte gUnknown_202F1A8 -_08051C90: .4byte 0x0000fffc -_08051C94: - ldrh r1, [r4] - ldr r0, _08051CC0 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strh r0, [r4] - ldrh r0, [r4, 0x4] - movs r2, 0 - orrs r0, r1 - ldr r1, _08051CC4 - ands r0, r1 - strh r0, [r4, 0x4] - strb r2, [r4, 0x9] - ldr r0, _08051CC8 - ldr r0, [r0] - ldr r2, _08051CCC - adds r1, r0, r2 - strh r6, [r1] - ldr r3, _08051CD0 - adds r0, r3 - strh r7, [r0] - b _08051E1A - .align 2, 0 -_08051CC0: .4byte 0x0000fffc -_08051CC4: .4byte 0x0000fffd -_08051CC8: .4byte gUnknown_203B418 -_08051CCC: .4byte 0x0000e21c -_08051CD0: .4byte 0x0000e21e -_08051CD4: - ldrh r1, [r4] - movs r2, 0x80 - lsls r2, 4 - adds r0, r2, 0 - orrs r0, r1 - ldr r1, _08051CF8 - ands r0, r1 - movs r1, 0x1 - movs r2, 0 - orrs r0, r1 - strh r0, [r4] - ldrh r1, [r4, 0x4] - ldr r0, _08051CFC - ands r0, r1 - strh r0, [r4, 0x4] - strb r2, [r4, 0x9] - b _08051E1A - .align 2, 0 -_08051CF8: .4byte 0x0000fffc -_08051CFC: .4byte 0x0000fffd -_08051D00: - ldrh r1, [r4] - ldr r0, _08051D0C - ands r0, r1 - movs r1, 0x1 - b _08051D58 - .align 2, 0 -_08051D0C: .4byte 0x0000fffc -_08051D10: - ldrh r1, [r4] - ldr r0, _08051D20 - ands r0, r1 - movs r1, 0x1 - movs r2, 0 - orrs r0, r1 - b _08051D3C - .align 2, 0 -_08051D20: .4byte 0x0000fffc -_08051D24: - ldrh r1, [r4] - ldr r0, _08051D4C - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - movs r2, 0x80 - lsls r2, 5 - adds r1, r2, 0 - orrs r0, r1 - movs r1, 0x10 - orrs r0, r1 - movs r2, 0 -_08051D3C: - movs r3, 0x80 - lsls r3, 4 - adds r1, r3, 0 -_08051D42: - orrs r0, r1 - strh r0, [r4] - strb r2, [r4, 0x9] - b _08051E1A - .align 2, 0 -_08051D4C: .4byte 0x0000fffc -_08051D50: - ldrh r1, [r4] - ldr r0, _08051D64 - ands r0, r1 -_08051D56: - movs r1, 0x10 -_08051D58: - orrs r0, r1 -_08051D5A: - strh r0, [r4] - movs r0, 0xFF - strb r0, [r4, 0x9] - b _08051E1A - .align 2, 0 -_08051D64: .4byte 0x0000fffc -_08051D68: - mov r0, r8 - subs r0, 0x10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xCB - bhi _08051E1A - mov r1, r8 - lsls r0, r1, 4 - ldr r1, _08051DA0 - adds r5, r0, r1 - ldrb r0, [r5, 0xC] - strb r0, [r4, 0x9] - ldrb r1, [r5] - cmp r1, 0 - beq _08051DB8 - mov r2, r9 - cmp r2, 0 - beq _08051DA4 - ldrb r0, [r5] - movs r1, 0x2 - ldrsh r3, [r5, r1] - ldr r1, [r5, 0x4] - str r1, [sp] - adds r1, r6, 0 - adds r2, r7, 0 - bl sub_805193C - b _08051DDC - .align 2, 0 -_08051DA0: .4byte gUnknown_80F6D20 -_08051DA4: - ldr r0, _08051DB0 - ldr r0, [r0] - ldr r2, _08051DB4 - adds r0, r2 - strb r1, [r0] - b _08051DDC - .align 2, 0 -_08051DB0: .4byte gUnknown_203B418 -_08051DB4: .4byte 0x0000068b -_08051DB8: - ldr r2, [r5, 0x4] - cmp r2, 0 - beq _08051DDC - ldr r0, _08051E2C - ldr r1, [r0] - subs r0, r2, 0x1 - lsls r0, 2 - adds r0, r1, r0 - ldr r3, _08051E30 - adds r0, r3 - strh r6, [r0] - ldr r0, [r5, 0x4] - subs r0, 0x1 - lsls r0, 2 - adds r1, r0 - ldr r0, _08051E34 - adds r1, r0 - strh r7, [r1] -_08051DDC: - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _08051DF2 - ldrb r3, [r5, 0xA] - mov r1, r8 - str r1, [sp] - adds r1, r6, 0 - adds r2, r7, 0 - bl sub_8051998 -_08051DF2: - ldrb r0, [r5, 0xB] - cmp r0, 0x14 - beq _08051E08 - mov r2, r9 - cmp r2, 0 - beq _08051E08 - ldrb r3, [r5, 0xD] - adds r1, r6, 0 - adds r2, r7, 0 - bl sub_8051A24 -_08051E08: - ldrb r0, [r5, 0xE] - cmp r0, 0 - beq _08051E1A - ldrh r0, [r4] - ldr r1, _08051E38 - ands r1, r0 - movs r0, 0x2 - orrs r1, r0 - strh r1, [r4] -_08051E1A: - movs r0, 0 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08051E2C: .4byte gUnknown_203B418 -_08051E30: .4byte 0x0000e220 -_08051E34: .4byte 0x0000e222 -_08051E38: .4byte 0x0000fffc - thumb_func_end sub_8051A74 - - thumb_func_start sub_8051E3C -sub_8051E3C: - push {r4-r6,lr} - sub sp, 0x4 - movs r5, 0 -_08051E42: - movs r4, 0 - adds r6, r5, 0x1 -_08051E46: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrb r0, [r2, 0xE] - cmp r0, 0xF - bls _08051E66 - adds r1, r0, 0 - movs r0, 0 - str r0, [sp] - adds r0, r2, 0 - adds r2, r4, 0 - adds r3, r5, 0 - bl sub_8051A74 -_08051E66: - adds r4, 0x1 - cmp r4, 0x37 - ble _08051E46 - adds r5, r6, 0 - cmp r5, 0x1F - ble _08051E42 - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8051E3C - - thumb_func_start sub_8051E7C -sub_8051E7C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - mov r9, r0 - movs r1, 0x4 - ldrsh r0, [r0, r1] - mov r2, r9 - movs r3, 0x6 - ldrsh r1, [r2, r3] - subs r1, 0x1 - bl sub_8049590 - str r0, [sp, 0x8] - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 5 - ands r0, r1 - cmp r0, 0 - bne _08051EB8 - ldr r0, _08051EB4 - ldr r1, [r0] - mov r0, r9 - bl sub_80522A8 - b _080520F6 - .align 2, 0 -_08051EB4: .4byte gUnknown_80FDDF0 -_08051EB8: - ldr r0, _08051EF0 - ldr r0, [r0] - ldr r1, _08051EF4 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08051EC8 - b _080520EC -_08051EC8: - mov r2, r9 - ldrh r1, [r2, 0x6] - subs r1, 0x1 - lsls r1, 16 - ldrh r0, [r2, 0x4] - orrs r0, r1 - str r0, [sp, 0x4] - mov r0, r9 - bl sub_80450FC - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0xC] - mov r3, r9 - movs r1, 0x6 - ldrsh r0, [r3, r1] - adds r6, r0, 0 - subs r6, 0x15 - b _08051FE0 - .align 2, 0 -_08051EF0: .4byte gUnknown_203B418 -_08051EF4: .4byte 0x00003a09 -_08051EF8: - mov r2, r9 - movs r3, 0x4 - ldrsh r0, [r2, r3] - adds r5, r0, 0 - subs r5, 0x14 - adds r0, 0x14 - adds r1, r6, 0x1 - str r1, [sp, 0x10] - cmp r5, r0 - bgt _08051FD8 - ldr r2, _080520C0 - mov r10, r2 -_08051F10: - mov r0, r10 - ldr r3, [r0] - ldr r1, _080520C4 - adds r0, r3, r1 - ldr r1, [r0] - subs r2, r5, r1 - mov r8, r2 - ldr r2, _080520C8 - adds r0, r3, r2 - ldr r2, [r0] - subs r7, r6, r2 - mov r0, r8 - cmp r0, 0 - blt _08051FCA - cmp r7, 0 - blt _08051FCA - cmp r0, 0x7 - bgt _08051FCA - cmp r7, 0x7 - bgt _08051FCA - adds r0, r1, 0x1 - cmp r5, r0 - blt _08051FCA - adds r0, r2, 0x1 - cmp r6, r0 - blt _08051FCA - ldr r1, _080520CC - adds r0, r3, r1 - ldr r0, [r0] - subs r0, 0x1 - cmp r5, r0 - bge _08051FCA - ldr r2, _080520D0 - adds r0, r3, r2 - ldr r0, [r0] - subs r0, 0x1 - cmp r6, r0 - bge _08051FCA - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8049590 - adds r4, r0, 0 - ldrh r0, [r4] - movs r3, 0x80 - lsls r3, 1 - adds r1, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08051F9A - mov r0, r10 - ldr r2, [r0] - lsls r1, r7, 1 - adds r1, r7 - lsls r1, 3 - mov r3, r8 - lsls r0, r3, 1 - add r0, r8 - lsls r0, 6 - adds r1, r0 - adds r2, r1 - ldr r1, _080520D4 - adds r0, r2, r1 - ldrh r0, [r0] - strh r0, [r4] - ldr r3, _080520D8 - adds r2, r3 - ldrh r0, [r2] - strh r0, [r4, 0x4] -_08051F9A: - mov r1, r10 - ldr r0, [r1] - mov r2, r8 - lsls r1, r2, 3 - adds r1, r7, r1 - ldr r3, _080520DC - adds r0, r3 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_8051A74 - ldrh r1, [r4, 0x4] - movs r0, 0x3 - orrs r0, r1 - strh r0, [r4, 0x4] - ldr r0, [sp, 0xC] - cmp r0, 0xFF - beq _08051FCA - strb r0, [r4, 0x9] -_08051FCA: - adds r5, 0x1 - mov r2, r9 - movs r3, 0x4 - ldrsh r0, [r2, r3] - adds r0, 0x14 - cmp r5, r0 - ble _08051F10 -_08051FD8: - ldr r6, [sp, 0x10] - mov r1, r9 - movs r2, 0x6 - ldrsh r0, [r1, r2] -_08051FE0: - adds r0, 0x13 - cmp r6, r0 - ble _08051EF8 - mov r3, r9 - movs r1, 0x6 - ldrsh r0, [r3, r1] - adds r6, r0, 0 - subs r6, 0x15 - adds r0, 0x13 - ldr r7, _080520C0 - cmp r6, r0 - bgt _0805207A -_08051FF8: - mov r2, r9 - movs r3, 0x4 - ldrsh r0, [r2, r3] - adds r5, r0, 0 - subs r5, 0x14 - adds r0, 0x14 - adds r1, r6, 0x1 - str r1, [sp, 0x10] - cmp r5, r0 - bgt _0805206C - ldr r7, _080520C0 -_0805200E: - ldr r0, _080520C0 - ldr r4, [r0] - ldr r2, _080520C4 - adds r0, r4, r2 - ldr r2, [r0] - subs r1, r5, r2 - ldr r3, _080520C8 - adds r0, r4, r3 - ldr r3, [r0] - subs r0, r6, r3 - cmp r1, 0 - blt _0805205E - cmp r0, 0 - blt _0805205E - cmp r1, 0x7 - bgt _0805205E - cmp r0, 0x7 - bgt _0805205E - adds r0, r2, 0x1 - cmp r5, r0 - blt _0805205E - adds r0, r3, 0x1 - cmp r6, r0 - blt _0805205E - ldr r1, _080520CC - adds r0, r4, r1 - ldr r0, [r0] - subs r0, 0x1 - cmp r5, r0 - bge _0805205E - ldr r2, _080520D0 - adds r0, r4, r2 - ldr r0, [r0] - subs r0, 0x1 - cmp r6, r0 - bge _0805205E - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80498A8 -_0805205E: - adds r5, 0x1 - mov r3, r9 - movs r1, 0x4 - ldrsh r0, [r3, r1] - adds r0, 0x14 - cmp r5, r0 - ble _0805200E -_0805206C: - ldr r6, [sp, 0x10] - mov r2, r9 - movs r3, 0x6 - ldrsh r0, [r2, r3] - adds r0, 0x13 - cmp r6, r0 - ble _08051FF8 -_0805207A: - ldr r0, [r7] - ldr r1, _080520E0 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r2, [sp, 0x8] - ldrh r1, [r2] - ldr r0, _080520E4 - ands r0, r1 - strh r0, [r2] - mov r3, r9 - movs r1, 0x4 - ldrsh r0, [r3, r1] - movs r2, 0x6 - ldrsh r1, [r3, r2] - subs r1, 0x1 - bl sub_80498A8 - bl sub_8049B8C - bl sub_8049ED4 - add r0, sp, 0x4 - bl sub_80429FC - ldr r0, _080520E8 - ldr r1, [r0] - mov r0, r9 - bl sub_80522A8 - movs r0, 0x14 - movs r1, 0x3C - bl sub_803E708 - b _080520F6 - .align 2, 0 -_080520C0: .4byte gUnknown_203B418 -_080520C4: .4byte 0x0000e250 -_080520C8: .4byte 0x0000e254 -_080520CC: .4byte 0x0000e258 -_080520D0: .4byte 0x0000e25c -_080520D4: .4byte 0x0000e27c -_080520D8: .4byte 0x0000e280 -_080520DC: .4byte 0x0000e87c -_080520E0: .4byte 0x00003a09 -_080520E4: .4byte 0x0000efef -_080520E8: .4byte gUnknown_80FDDD0 -_080520EC: - ldr r0, _08052108 - ldr r1, [r0] - mov r0, r9 - bl sub_80522A8 -_080520F6: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08052108: .4byte gUnknown_80FDDF0 - thumb_func_end sub_8051E7C - - thumb_func_start sub_805210C -sub_805210C: - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r3, 0 - ldr r7, _080521B4 - movs r4, 0x1 - ldr r2, [r7] -_0805211A: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0805212A - ldrb r0, [r2, 0x2] - cmp r0, r5 - beq _080521C8 -_0805212A: - adds r2, 0x4 - adds r3, 0x1 - cmp r3, 0x13 - ble _0805211A - movs r3, 0 - ldr r0, _080521B8 - ldr r4, [r0] - movs r6, 0x1 -_0805213A: - movs r0, 0x64 - adds r2, r3, 0 - muls r2, r0 - adds r0, r2, r4 - ldr r1, _080521BC - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0805216C - adds r0, r2, r4 - ldr r1, _080521C0 - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - ands r0, r1 - adds r1, r2, r4 - cmp r0, 0 - beq _0805216C - ldr r2, _080521C4 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, r5 - beq _080521C8 -_0805216C: - adds r3, 0x1 - cmp r3, 0x3 - ble _0805213A - movs r3, 0 - ldr r0, _080521B8 - ldr r4, [r0] -_08052178: - movs r0, 0x58 - muls r0, r3 - adds r2, r0, r4 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08052196 - adds r0, r2, 0 - adds r0, 0x28 - ldrb r0, [r0] - cmp r0, 0 - beq _08052196 - cmp r0, r5 - beq _080521C8 -_08052196: - adds r3, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r3, r0 - ble _08052178 - ldr r0, [r7] - lsls r1, r5, 1 - adds r0, 0x50 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0 - bne _080521C8 - movs r0, 0 - b _080521CA - .align 2, 0 -_080521B4: .4byte gUnknown_203B460 -_080521B8: .4byte gUnknown_203B45C -_080521BC: .4byte 0x00008df8 -_080521C0: .4byte 0x00008e38 -_080521C4: .4byte 0x00008e3a -_080521C8: - movs r0, 0x1 -_080521CA: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805210C - - thumb_func_start sub_80521D0 -sub_80521D0: - push {r4-r6,lr} - movs r1, 0 - ldr r5, _08052200 - ldr r6, _08052204 - ldr r4, _08052208 - ldr r3, _0805220C - movs r2, 0 -_080521DE: - ldr r0, [r4] - adds r0, r3 - adds r0, r1 - strb r2, [r0] - adds r1, 0x1 - cmp r1, 0x9 - ble _080521DE - movs r0, 0 - str r0, [r5] - movs r0, 0x1 - strb r0, [r6] - movs r0, 0 - bl sub_8052210 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08052200: .4byte gUnknown_202F1E8 -_08052204: .4byte gUnknown_203B434 -_08052208: .4byte gUnknown_203B418 -_0805220C: .4byte 0x0001c054 - thumb_func_end sub_80521D0 - - thumb_func_start sub_8052210 -sub_8052210: - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r4, 0 - ldr r5, _08052280 -_0805221A: - lsls r0, r4, 6 - ldr r1, [r5] - adds r0, r1 - ldr r1, _08052284 - adds r0, r1 - ldr r1, _08052288 - bl strcpy - adds r4, 0x1 - cmp r4, 0x9 - ble _0805221A - ldr r1, _08052280 - ldr r0, [r1] - ldr r2, _0805228C - adds r0, r2 - movs r3, 0 - strb r3, [r0] - ldr r0, [r1] - adds r2, 0x1 - adds r1, r0, r2 - strh r3, [r1] - adds r2, 0x2 - adds r1, r0, r2 - strh r3, [r1] - adds r2, 0x2 - adds r1, r0, r2 - strh r3, [r1] - ldr r1, _08052290 - adds r2, r0, r1 - movs r1, 0x4 - strh r1, [r2] - ldr r2, _08052294 - adds r0, r2 - str r3, [r0] - cmp r6, 0 - beq _08052278 - ldr r0, _08052298 - ldr r0, [r0] - cmp r0, 0x3 - bne _08052278 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0xB - bl sub_803E46C -_08052278: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08052280: .4byte gUnknown_203B418 -_08052284: .4byte 0x0001bdd4 -_08052288: .4byte gUnknown_80F7AE8 -_0805228C: .4byte 0x0001c05f -_08052290: .4byte 0x0001c066 -_08052294: .4byte 0x0001c06c -_08052298: .4byte gUnknown_202EDD0 - thumb_func_end sub_8052210 - - thumb_func_start sub_805229C -sub_805229C: - push {lr} - movs r0, 0x50 - bl sub_80526D0 - pop {r0} - bx r0 - thumb_func_end sub_805229C - - thumb_func_start sub_80522A8 -sub_80522A8: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _080522C2 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80523A8 -_080522C2: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80522A8 - - thumb_func_start sub_80522C8 -sub_80522C8: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _080522E2 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_80523A8 -_080522E2: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80522C8 - - thumb_func_start sub_80522E8 -sub_80522E8: - push {lr} - movs r2, 0 - bl sub_80523A8 - pop {r0} - bx r0 - thumb_func_end sub_80522E8 - - thumb_func_start sub_80522F4 -sub_80522F4: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r7, r2, 0 - bl sub_8045888 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r5, r1, 31 - adds r0, r4, 0 - bl sub_8052DC0 - lsls r0, 24 - cmp r0, 0 - beq _08052318 - movs r5, 0x1 -_08052318: - cmp r5, 0 - beq _08052326 - adds r0, r6, 0 - adds r1, r7, 0 - movs r2, 0x1 - bl sub_80523A8 -_08052326: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80522F4 - - thumb_func_start sub_805232C -sub_805232C: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r7, r2, 0 - bl sub_8045888 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r5, r1, 31 - adds r0, r4, 0 - bl sub_8052DC0 - lsls r0, 24 - cmp r0, 0 - beq _08052350 - movs r5, 0x1 -_08052350: - cmp r5, 0 - beq _0805235E - adds r0, r6, 0 - adds r1, r7, 0 - movs r2, 0 - bl sub_80523A8 -_0805235E: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_805232C - - thumb_func_start sub_8052364 -sub_8052364: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r7, r2, 0 - bl sub_8045888 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r5, r1, 31 - adds r0, r4, 0 - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - beq _08052388 - movs r5, 0x1 -_08052388: - cmp r5, 0 - beq _08052396 - adds r0, r6, 0 - adds r1, r7, 0 - movs r2, 0x1 - bl sub_80523A8 -_08052396: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8052364 - - thumb_func_start sub_805239C -sub_805239C: - push {lr} - movs r2, 0x1 - bl sub_80523A8 - pop {r0} - bx r0 - thumb_func_end sub_805239C - - thumb_func_start sub_80523A8 -sub_80523A8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x40 - adds r3, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - mov r10, r2 - ldr r0, _080523D0 - ldr r1, [r0] - adds r2, r0, 0 - cmp r1, r3 - beq _080523D8 - movs r7, 0x1 - ldr r1, _080523D4 - b _080523DE - .align 2, 0 -_080523D0: .4byte gUnknown_202F1E8 -_080523D4: .4byte gUnknown_203B434 -_080523D8: - ldr r0, _080523F0 - ldrb r7, [r0] - adds r1, r0, 0 -_080523DE: - movs r0, 0x1 - mov r8, r0 - str r3, [r2] - movs r0, 0 - strb r0, [r1] - movs r1, 0 - mov r9, r1 - b _080523FA - .align 2, 0 -_080523F0: .4byte gUnknown_203B434 -_080523F4: - movs r0, 0 - bl sub_803E46C -_080523FA: - ldr r6, _0805249C - ldr r2, [r6] - ldr r3, _080524A0 - adds r0, r2, r3 - movs r3, 0 - ldrsh r1, [r0, r3] - adds r1, 0x1 - cmp r1, 0xA - bne _0805240E - movs r1, 0 -_0805240E: - ldr r3, _080524A4 - adds r0, r2, r3 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r1, r0 - beq _080523F4 - ldrb r0, [r4] - cmp r0, 0 - beq _080524B0 - ldr r5, _080524A0 - adds r0, r2, r5 - movs r3, 0 - ldrsh r1, [r0, r3] - ldr r3, _080524A8 - adds r0, r2, r3 - adds r0, r1 - strb r7, [r0] - adds r0, r4, 0 - mov r1, sp - mov r2, sp - adds r2, 0x3E - movs r3, 0x80 - bl xxx_format_string - adds r4, r0, 0 - ldrb r0, [r4] - cmp r0, 0xD - bne _08052448 - adds r4, 0x1 -_08052448: - ldrb r0, [r4] - cmp r0, 0xA - bne _08052450 - adds r4, 0x1 -_08052450: - mov r0, sp - adds r1, r7, 0 - mov r2, r8 - bl sub_8053210 - movs r7, 0 - movs r0, 0 - mov r8, r0 - mov r1, r10 - cmp r1, 0 - beq _080523FA - movs r2, 0x1 - mov r9, r2 - ldr r1, [r6] - adds r0, r1, r5 - movs r3, 0 - ldrsh r0, [r0, r3] - lsls r0, 6 - adds r0, r1 - ldr r1, _080524AC - adds r0, r1 - mov r1, sp - movs r2, 0x40 - bl strncpy - ldr r0, [r6] - adds r1, r0, r5 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA - bne _080523FA - mov r2, r8 - strh r2, [r1] - b _080523FA - .align 2, 0 -_0805249C: .4byte gUnknown_203B418 -_080524A0: .4byte 0x0001c060 -_080524A4: .4byte 0x0001c062 -_080524A8: .4byte 0x0001c054 -_080524AC: .4byte 0x0001bdd4 -_080524B0: - mov r3, r9 - cmp r3, 0 - beq _080524D4 - ldr r0, _080524E4 - ldr r2, [r0] - ldr r3, _080524E8 - adds r1, r2, r3 - movs r0, 0xF0 - strh r0, [r1] - ldr r0, _080524EC - adds r2, r0 - ldr r0, [r2] - cmp r0, 0 - bne _080524D0 - movs r0, 0x1 - str r0, [r2] -_080524D0: - bl sub_805E804 -_080524D4: - add sp, 0x40 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080524E4: .4byte gUnknown_203B418 -_080524E8: .4byte 0x0001c064 -_080524EC: .4byte 0x0001c06c - thumb_func_end sub_80523A8 - - thumb_func_start xxx_draw_string_80524F0 -xxx_draw_string_80524F0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x3C - ldr r0, _0805251C - ldr r0, [r0] - ldr r1, _08052520 - adds r7, r0, r1 - ldr r2, _08052524 - adds r5, r0, r2 - ldr r1, [r5] - cmp r1, 0x1 - beq _08052528 - cmp r1, 0x1 - bcs _08052510 - b _0805267C -_08052510: - cmp r1, 0x2 - beq _0805253C - cmp r1, 0x3 - bne _0805251A - b _0805265C -_0805251A: - b _0805267C - .align 2, 0 -_0805251C: .4byte gUnknown_203B418 -_08052520: .4byte 0x0001bdd4 -_08052524: .4byte 0x0001c06c -_08052528: - bl sub_800EC74 - lsls r0, 24 - cmp r0, 0 - beq _08052534 - b _0805267C -_08052534: - movs r0, 0x3 - movs r1, 0 - bl sub_803EAF0 -_0805253C: - ldr r3, _08052560 - adds r0, r7, r3 - movs r1, 0 - ldrsh r4, [r0, r1] - movs r2, 0xA3 - lsls r2, 2 - adds r0, r7, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r4, r0 - bne _08052564 - movs r0, 0xA6 - lsls r0, 2 - adds r1, r7, r0 - movs r0, 0 - str r0, [r1] - b _0805267C - .align 2, 0 -_08052560: .4byte 0x0000028e -_08052564: - lsls r0, r4, 6 - adds r5, r7, r0 - add r1, sp, 0x4 - movs r0, 0x4 - strh r0, [r1] - ldr r2, _080525B0 - adds r6, r7, r2 - ldrh r0, [r6] - strh r0, [r1, 0x2] - movs r3, 0x7 - mov r8, r3 - str r3, [sp, 0x14] - movs r0, 0 - bl sub_80073B8 - movs r1, 0xA0 - lsls r1, 2 - adds r0, r7, r1 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _080525AA - movs r2, 0 - ldrsh r0, [r6, r2] - cmp r0, 0x7 - ble _080525AA - adds r2, r0, 0 - subs r2, 0x1 - mov r0, r8 - str r0, [sp] - movs r0, 0 - movs r1, 0 - movs r3, 0xE0 - bl sub_80078A4 -_080525AA: - adds r6, r4, 0x1 - b _080525F2 - .align 2, 0 -_080525B0: .4byte 0x00000292 -_080525B4: - add r1, sp, 0x38 - adds r0, r5, 0 - bl xxx_get_next_char_from_string - adds r5, r0, 0 - ldr r4, [sp, 0x38] - cmp r4, 0x60 - bne _080525D0 - add r1, sp, 0x4 - adds r0, r1, 0 - ldrh r0, [r0] - adds r0, 0x6 - strh r0, [r1] - b _080525F2 -_080525D0: - add r0, sp, 0x4 - movs r1, 0 - ldrsh r0, [r0, r1] - add r1, sp, 0x4 - movs r2, 0x2 - ldrsh r1, [r1, r2] - ldr r3, [sp, 0x14] - movs r2, 0 - str r2, [sp] - adds r2, r4, 0 - bl xxx_call_draw_char - add r2, sp, 0x4 - adds r1, r2, 0 - ldrh r1, [r1] - adds r1, r0 - strh r1, [r2] -_080525F2: - adds r0, r5, 0 - add r1, sp, 0x4 - bl sub_8009190 - adds r5, r0, 0 - ldrb r0, [r5] - cmp r0, 0 - beq _0805260A - cmp r0, 0xD - beq _0805260A - cmp r0, 0xA - bne _080525B4 -_0805260A: - movs r0, 0 - bl sub_80073E0 - movs r3, 0xA4 - lsls r3, 2 - adds r1, r7, r3 - movs r0, 0xF0 - strh r0, [r1] - adds r4, r6, 0 - cmp r4, 0xA - bne _08052622 - movs r4, 0 -_08052622: - ldr r1, _08052654 - adds r0, r7, r1 - strh r4, [r0] - ldr r2, _08052658 - adds r1, r7, r2 - ldrh r0, [r1] - adds r0, 0xB - strh r0, [r1] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2F - ble _0805267C - movs r0, 0x25 - strh r0, [r1] - movs r3, 0xA5 - lsls r3, 2 - adds r1, r7, r3 - movs r0, 0 - strh r0, [r1] - movs r0, 0xA6 - lsls r0, 2 - adds r1, r7, r0 - movs r0, 0x3 - str r0, [r1] - b _0805267C - .align 2, 0 -_08052654: .4byte 0x0000028e -_08052658: .4byte 0x00000292 -_0805265C: - ldr r1, _080526C4 - adds r4, r0, r1 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - ldr r0, _080526C8 - ldr r1, [r0] - movs r0, 0 - bl _call_via_r1 - movs r2, 0 - ldrsh r0, [r4, r2] - cmp r0, 0xA - ble _0805267C - movs r0, 0x2 - str r0, [r5] -_0805267C: - ldr r3, _080526CC - adds r0, r7, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _080526B8 - movs r0, 0xA4 - lsls r0, 2 - adds r1, r7, r0 - ldrh r2, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - beq _080526B8 - subs r0, r2, 0x1 - strh r0, [r1] - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - bne _080526B8 - movs r2, 0xA6 - lsls r2, 2 - adds r0, r7, r2 - str r1, [r0] - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0 - bl sub_8052210 -_080526B8: - add sp, 0x3C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080526C4: .4byte 0x0001c068 -_080526C8: .4byte gUnknown_203B08C -_080526CC: .4byte 0x0000028a - thumb_func_end xxx_draw_string_80524F0 - - thumb_func_start sub_80526D0 -sub_80526D0: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, _0805272C - ldr r1, [r0] - ldr r0, _08052730 - adds r4, r1, r0 - ldr r2, _08052734 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, 0 - bne _080526FA - ldr r3, _08052738 - adds r0, r1, r3 - subs r2, 0xA - adds r1, r2 - movs r3, 0 - ldrsh r2, [r0, r3] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r2, r0 - beq _08052724 -_080526FA: - adds r0, r5, 0 - bl sub_803E46C - movs r1, 0xA6 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - cmp r0, 0 - bne _080526FA - ldr r0, _0805272C - ldr r0, [r0] - ldr r2, _08052738 - adds r1, r0, r2 - ldr r3, _0805273C - adds r0, r3 - movs r2, 0 - ldrsh r1, [r1, r2] - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r1, r0 - bne _080526FA -_08052724: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0805272C: .4byte gUnknown_203B418 -_08052730: .4byte 0x0001bdd4 -_08052734: .4byte 0x0001c06c -_08052738: .4byte 0x0001c060 -_0805273C: .4byte 0x0001c062 - thumb_func_end sub_80526D0 - - thumb_func_start sub_8052740 -sub_8052740: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - ldr r0, _080527B0 - ldr r4, [r0] - ldr r0, _080527B4 - adds r7, r4, r0 - adds r0, r5, 0 - bl sub_80526D0 - movs r6, 0 - ldr r1, _080527B8 - adds r4, r1 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0xB3 - ble _080527A4 - ldr r2, _080527BC - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x3 - beq _080527A4 - adds r4, r2, 0 - ldr r0, _080527C0 - mov r8, r0 -_08052776: - ldrh r0, [r4, 0x2] - mov r1, r8 - ands r0, r1 - cmp r0, 0 - bne _080527A4 - adds r0, r5, 0 - bl sub_803E46C - adds r6, 0x1 - cmp r6, 0xEF - bgt _080527A4 - movs r1, 0xA4 - lsls r1, 2 - adds r0, r7, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0xB3 - ble _080527A4 - ldrh r1, [r4] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x3 - bne _08052776 -_080527A4: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080527B0: .4byte gUnknown_203B418 -_080527B4: .4byte 0x0001bdd4 -_080527B8: .4byte 0x0001c064 -_080527BC: .4byte gUnknown_20255F0 -_080527C0: .4byte 0x0000030f - thumb_func_end sub_8052740 - - thumb_func_start PrintFieldMessage -PrintFieldMessage: - push {r4-r7,lr} - sub sp, 0x28 - adds r4, r0, 0 - adds r7, r1, 0 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r0, _08052858 - ldrb r0, [r0] - cmp r0, 0 - beq _080527DE - movs r0, 0xA - bl sub_8052740 -_080527DE: - movs r0, 0x2 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0 - bl sub_8052210 - movs r5, 0 - str r5, [sp, 0x14] - str r5, [sp, 0x18] - ldr r0, _0805285C - ldr r1, [r0] - ldr r2, _08052860 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08052844 - adds r2, 0x6 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08052844 - cmp r4, 0 - beq _08052844 - movs r1, 0 - ldrsh r0, [r4, r1] - ldrb r1, [r4, 0x2] - bl sub_808DE10 - lsls r0, 24 - cmp r0, 0 - beq _08052844 - movs r2, 0 - ldrsh r0, [r4, r2] - bl sub_808DDD0 - str r0, [sp, 0x14] - ldr r0, [r0, 0x4] - str r0, [sp, 0x18] - add r1, sp, 0x14 - movs r2, 0 - movs r0, 0x2 - strh r0, [r1, 0x8] - movs r0, 0x9 - strh r0, [r1, 0xA] - ldrb r0, [r4, 0x2] - strb r0, [r1, 0xC] - adds r0, r1, 0 - strb r2, [r0, 0xD] - strb r2, [r0, 0xE] - adds r5, r0, 0 -_08052844: - movs r1, 0 - str r1, [sp] - movs r0, 0x3 - str r0, [sp, 0x4] - str r1, [sp, 0x8] - str r5, [sp, 0xC] - cmp r6, 0 - beq _08052868 - ldr r0, _08052864 - b _0805286C - .align 2, 0 -_08052858: .4byte gUnknown_203B40C -_0805285C: .4byte gUnknown_203B418 -_08052860: .4byte 0x0001820a -_08052864: .4byte 0x00000701 -_08052868: - movs r0, 0x80 - lsls r0, 3 -_0805286C: - str r0, [sp, 0x10] - adds r0, r7, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_8014248 - ldr r0, _080528D0 - ldr r0, [r0] - ldr r1, _080528D4 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - add r4, sp, 0x24 -_08052888: - bl xxx_draw_string_80144C4 - movs r0, 0x9 - bl sub_803E46C - adds r0, r4, 0 - bl sub_80144A4 - adds r1, r0, 0 - cmp r1, 0 - bne _08052888 - ldr r0, _080528D0 - ldr r0, [r0] - ldr r2, _080528D4 - adds r0, r2 - strb r1, [r0] - ldr r0, [sp, 0x14] - cmp r0, 0 - beq _080528B2 - bl CloseFile -_080528B2: - cmp r6, 0 - beq _080528E4 - bl sub_805E804 - bl sub_8040238 - ldr r0, _080528D8 - ldrb r0, [r0] - cmp r0, 0 - beq _080528DC - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - b _080528E4 - .align 2, 0 -_080528D0: .4byte gUnknown_203B418 -_080528D4: .4byte 0x0001c05f -_080528D8: .4byte gUnknown_202EE01 -_080528DC: - movs r0, 0x1 - movs r1, 0 - bl sub_803EAF0 -_080528E4: - movs r0, 0x8 - movs r1, 0x9 - bl sub_803E708 - add sp, 0x28 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end PrintFieldMessage - - thumb_func_start sub_80528F4 -sub_80528F4: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522E8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80528F4 - - thumb_func_start sub_8052910 -sub_8052910: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x14 - adds r6, r0, 0 - bl sub_8085480 - adds r4, r0, 0 - bl sub_808548C - adds r5, r0, 0 - movs r0, 0 - mov r9, r0 - cmp r4, 0 - beq _0805295C - ldr r4, [r4, 0x70] - ldr r2, _08052950 - ldrb r1, [r4, 0xA] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08052954 - adds r0, r1 - ldr r1, [r2] - adds r1, r0 - ldr r0, _08052958 - bl sub_808DA0C - movs r2, 0x4 - ldrsh r7, [r4, r2] - b _08052966 - .align 2, 0 -_08052950: .4byte gUnknown_203B45C -_08052954: .4byte 0x00008df8 -_08052958: .4byte gUnknown_202DF98 -_0805295C: - movs r7, 0 - ldr r0, _08052988 - ldr r1, _0805298C - bl strcpy -_08052966: - cmp r5, 0 - beq _0805299C - ldr r4, [r5, 0x70] - ldr r2, _08052990 - ldrb r1, [r4, 0xA] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08052994 - adds r0, r1 - ldr r1, [r2] - adds r1, r0 - ldr r0, _08052998 - bl sub_808DA0C - movs r2, 0x4 - ldrsh r4, [r4, r2] - b _080529A6 - .align 2, 0 -_08052988: .4byte gUnknown_202DF98 -_0805298C: .4byte gUnknown_80F7AF8 -_08052990: .4byte gUnknown_203B45C -_08052994: .4byte 0x00008df8 -_08052998: .4byte gUnknown_202DFE8 -_0805299C: - movs r4, 0 - ldr r0, _080529C0 - ldr r1, _080529C4 - bl strcpy -_080529A6: - movs r0, 0x4 - ldrsh r1, [r6, r0] - movs r0, 0xD5 - lsls r0, 1 - cmp r1, r0 - beq _080529F0 - cmp r1, r0 - bgt _080529C8 - subs r0, 0x1 - cmp r1, r0 - beq _080529D4 - b _08052A1C - .align 2, 0 -_080529C0: .4byte gUnknown_202DFE8 -_080529C4: .4byte gUnknown_80F7AF8 -_080529C8: - ldr r0, _080529D0 - cmp r1, r0 - beq _08052A08 - b _08052A1C - .align 2, 0 -_080529D0: .4byte 0x000001ab -_080529D4: - adds r4, r7, 0 - ldr r0, _080529E4 - ldr r1, _080529E8 - ldr r2, _080529EC - bl sub_800D158 - b _08052A28 - .align 2, 0 -_080529E4: .4byte gUnknown_202E5D8 -_080529E8: .4byte gUnknown_80F7AFC -_080529EC: .4byte gUnknown_202DF98 -_080529F0: - ldr r0, _080529FC - ldr r1, _08052A00 - ldr r2, _08052A04 - bl sub_800D158 - b _08052A28 - .align 2, 0 -_080529FC: .4byte gUnknown_202E5D8 -_08052A00: .4byte gUnknown_80F7AFC -_08052A04: .4byte gUnknown_202DFE8 -_08052A08: - movs r4, 0 - ldr r0, _08052A14 - ldr r1, _08052A18 - bl strcpy - b _08052A28 - .align 2, 0 -_08052A14: .4byte gUnknown_202E5D8 -_08052A18: .4byte gUnknown_80F7B04 -_08052A1C: - movs r1, 0x4 - ldrsh r4, [r6, r1] - ldr r0, _08052A48 - adds r1, r4, 0 - bl sub_808D8E0 -_08052A28: - ldrh r0, [r6] - subs r0, 0x2 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _08052A3C - ldr r0, _08052A48 - ldr r1, _08052A4C - bl strcpy -_08052A3C: - movs r2, 0x6 - ldrsh r0, [r6, r2] - ldr r2, _08052A50 - add r7, sp, 0x10 - b _08052A8E - .align 2, 0 -_08052A48: .4byte gUnknown_202E5D8 -_08052A4C: .4byte gUnknown_80F7B04 -_08052A50: .4byte gUnknown_203B418 -_08052A54: - movs r0, 0x6 - ldrsh r1, [r6, r0] - cmp r1, 0x1 - bne _08052A78 - cmp r4, 0x1 - beq _08052A9E - cmp r4, 0x9B - beq _08052A9E - ldr r0, _08052B08 - cmp r4, r0 - beq _08052A9E - cmp r4, 0x19 - beq _08052A9E - cmp r4, 0x4 - beq _08052A9E - subs r0, 0x6 - cmp r4, r0 - beq _08052A9E -_08052A78: - movs r0, 0x8C - lsls r0, 1 - cmp r1, r0 - bne _08052A88 - cmp r4, r1 - beq _08052A9E - cmp r4, 0x98 - beq _08052A9E -_08052A88: - adds r6, 0xC - movs r1, 0x6 - ldrsh r0, [r6, r1] -_08052A8E: - cmp r0, 0 - beq _08052A9E - cmp r0, 0x7 - bne _08052A54 - cmp r4, 0x7 - beq _08052A9E - cmp r4, 0x9E - bne _08052A54 -_08052A9E: - ldr r1, [r2] - ldr r2, _08052B0C - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08052B14 - adds r2, 0x6 - adds r0, r1, r2 - ldrb r0, [r0] - mov r8, r0 - cmp r0, 0 - bne _08052B14 - ldrh r0, [r6] - cmp r0, 0x4 - beq _08052B14 - ldrb r0, [r6, 0x2] - cmp r0, 0x80 - beq _08052B14 - cmp r4, 0 - beq _08052B14 - ldrb r0, [r6, 0x3] - bl sub_808CDB0 - adds r5, r0, 0 - mov r9, sp - adds r0, r4, 0 - bl sub_808DDD0 - str r0, [sp] - cmp r0, 0 - beq _08052B10 - ldr r0, [r0, 0x4] - str r0, [sp, 0x4] - mov r1, r8 - mov r0, r9 - strb r1, [r0, 0xE] - ldrb r0, [r6, 0x2] - mov r2, r9 - strb r0, [r2, 0xC] - ldrb r0, [r5, 0x4] - strb r0, [r2, 0xD] - ldrh r0, [r5] - strh r0, [r2, 0x8] - ldrh r0, [r5, 0x2] - strh r0, [r2, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - bgt _08052B14 - movs r0, 0x2 - strh r0, [r2, 0xA] - b _08052B14 - .align 2, 0 -_08052B08: .4byte 0x0000011b -_08052B0C: .4byte 0x0001820a -_08052B10: - movs r0, 0 - mov r9, r0 -_08052B14: - movs r0, 0xA - bl sub_8052740 - movs r0, 0x2 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0 - bl sub_8052210 - ldr r0, [r6, 0x8] - ldr r2, _08052B88 - ldrh r1, [r6] - lsls r1, 1 - adds r1, r2 - ldrh r3, [r1] - movs r1, 0 - mov r2, r9 - bl sub_80141B4 -_08052B3C: - bl xxx_draw_string_80144C4 - movs r0, 0x9 - bl sub_803E46C - adds r0, r7, 0 - bl sub_80144A4 - cmp r0, 0 - bne _08052B3C - mov r1, r9 - cmp r1, 0 - beq _08052B5C - ldr r0, [r1] - bl CloseFile -_08052B5C: - ldrh r0, [r6] - cmp r0, 0x1 - beq _08052B72 - cmp r0, 0x3 - beq _08052B72 - bl sub_8040238 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 -_08052B72: - movs r0, 0x8 - movs r1, 0x9 - bl sub_803E708 - add sp, 0x14 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08052B88: .4byte gUnknown_80F7AEA - thumb_func_end sub_8052910 - - thumb_func_start sub_8052B8C -sub_8052B8C: - push {r4-r7,lr} - sub sp, 0x14 - adds r4, r0, 0 - adds r6, r1, 0 - adds r7, r2, 0 - movs r0, 0xA - bl sub_8052740 - movs r0, 0x2 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0 - bl sub_8052210 - movs r5, 0 - str r5, [sp] - str r5, [sp, 0x4] - ldr r0, _08052C14 - ldr r1, [r0] - ldr r2, _08052C18 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08052C02 - adds r2, 0x6 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08052C02 - cmp r4, 0 - beq _08052C02 - movs r1, 0 - ldrsh r0, [r4, r1] - ldrb r1, [r4, 0x2] - bl sub_808DE10 - lsls r0, 24 - cmp r0, 0 - beq _08052C02 - movs r2, 0 - ldrsh r0, [r4, r2] - bl sub_808DDD0 - str r0, [sp] - ldr r0, [r0, 0x4] - str r0, [sp, 0x4] - mov r1, sp - movs r2, 0 - movs r0, 0x2 - strh r0, [r1, 0x8] - movs r0, 0x9 - strh r0, [r1, 0xA] - ldrb r0, [r4, 0x2] - strb r0, [r1, 0xC] - mov r0, sp - strb r2, [r0, 0xD] - strb r2, [r0, 0xE] - mov r5, sp -_08052C02: - cmp r7, 0x1 - bne _08052C1C - movs r2, 0xC0 - lsls r2, 2 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80141E0 - b _08052C28 - .align 2, 0 -_08052C14: .4byte gUnknown_203B418 -_08052C18: .4byte 0x0001820a -_08052C1C: - movs r2, 0xC0 - lsls r2, 2 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8014214 -_08052C28: - add r4, sp, 0x10 -_08052C2A: - bl xxx_draw_string_80144C4 - movs r0, 0x9 - bl sub_803E46C - adds r0, r4, 0 - bl sub_80144A4 - cmp r0, 0 - bne _08052C2A - ldr r0, [sp] - cmp r0, 0 - beq _08052C48 - bl CloseFile -_08052C48: - bl sub_8040238 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - ldr r0, [sp, 0x10] - cmp r0, 0x1 - beq _08052C5E - movs r0, 0 - b _08052C60 -_08052C5E: - movs r0, 0x1 -_08052C60: - add sp, 0x14 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8052B8C - - thumb_func_start sub_8052C68 -sub_8052C68: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x28 - adds r4, r0, 0 - adds r7, r1, 0 - mov r8, r2 - lsls r3, 16 - lsrs r6, r3, 16 - movs r0, 0xA - bl sub_8052740 - movs r0, 0x2 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0 - bl sub_8052210 - movs r5, 0 - str r5, [sp, 0x14] - str r5, [sp, 0x18] - ldr r0, _08052D3C - ldr r1, [r0] - ldr r2, _08052D40 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08052CE6 - adds r2, 0x6 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08052CE6 - cmp r4, 0 - beq _08052CE6 - movs r1, 0 - ldrsh r0, [r4, r1] - ldrb r1, [r4, 0x2] - bl sub_808DE10 - lsls r0, 24 - cmp r0, 0 - beq _08052CE6 - movs r2, 0 - ldrsh r0, [r4, r2] - bl sub_808DDD0 - str r0, [sp, 0x14] - ldr r0, [r0, 0x4] - str r0, [sp, 0x18] - add r1, sp, 0x14 - movs r2, 0 - movs r0, 0x2 - strh r0, [r1, 0x8] - movs r0, 0x9 - strh r0, [r1, 0xA] - ldrb r0, [r4, 0x2] - strb r0, [r1, 0xC] - adds r0, r1, 0 - strb r2, [r0, 0xD] - strb r2, [r0, 0xE] - adds r5, r0, 0 -_08052CE6: - movs r2, 0x1 - negs r2, r2 - movs r1, 0 - str r1, [sp] - movs r0, 0x3 - str r0, [sp, 0x4] - str r1, [sp, 0x8] - str r5, [sp, 0xC] - str r6, [sp, 0x10] - adds r0, r7, 0 - mov r3, r8 - bl sub_8014248 - add r4, sp, 0x24 -_08052D02: - bl xxx_draw_string_80144C4 - movs r0, 0x9 - bl sub_803E46C - adds r0, r4, 0 - bl sub_80144A4 - cmp r0, 0 - bne _08052D02 - ldr r0, [sp, 0x14] - cmp r0, 0 - beq _08052D20 - bl CloseFile -_08052D20: - bl sub_8040238 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - ldr r0, [sp, 0x24] - add sp, 0x28 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08052D3C: .4byte gUnknown_203B418 -_08052D40: .4byte 0x0001820a - thumb_func_end sub_8052C68 - - thumb_func_start sub_8052D44 -sub_8052D44: - push {r4-r7,lr} - adds r7, r0, 0 - adds r4, r1, 0 - adds r6, r2, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _08052D70 - ldr r0, _08052D6C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, [r4, 0x70] - ldrh r0, [r0, 0x4] - strh r0, [r7] - b _08052D7A - .align 2, 0 -_08052D6C: .4byte gUnknown_202DF98 -_08052D70: - ldr r0, _08052D9C - ldr r1, _08052DA0 - bl strcpy - strh r5, [r7] -_08052D7A: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08052DA8 - ldr r0, _08052DA4 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, [r6, 0x70] - ldrh r0, [r0, 0x4] - strh r0, [r7, 0x2] - b _08052DB2 - .align 2, 0 -_08052D9C: .4byte gUnknown_202DF98 -_08052DA0: .4byte gUnknown_80F7AF8 -_08052DA4: .4byte gUnknown_202DFE8 -_08052DA8: - ldr r0, _08052DB8 - ldr r1, _08052DBC - bl strcpy - strh r4, [r7, 0x2] -_08052DB2: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08052DB8: .4byte gUnknown_202DFE8 -_08052DBC: .4byte gUnknown_80F7AF8 - thumb_func_end sub_8052D44 - - thumb_func_start sub_8052DC0 -sub_8052DC0: - push {lr} - bl sub_8045888 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_8052DC0 - - thumb_func_start sub_8052DD0 -sub_8052DD0: - push {r4-r6,lr} - bl sub_8083600 - adds r5, r0, 0 - ldr r6, _08052E68 - ldr r4, [r6] - adds r0, r4, 0 - bl sub_80981A0 - lsls r0, 24 - cmp r0, 0 - beq _08052E46 - ldr r6, _08052E6C - ldr r4, [r6] - adds r0, r4, 0 - bl sub_80981A0 - lsls r0, 24 - cmp r0, 0 - beq _08052E46 - ldr r6, _08052E70 - ldr r4, [r6] - adds r0, r4, 0 - bl sub_80981A0 - lsls r0, 24 - cmp r0, 0 - beq _08052E46 - ldr r0, _08052E74 - ldr r0, [r0] - ldr r1, _08052E78 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08052EB6 - ldr r6, _08052E7C - ldr r4, [r6] - adds r0, r4, 0 - bl sub_80981A0 - lsls r0, 24 - cmp r0, 0 - beq _08052E46 - ldr r6, _08052E80 - ldr r4, [r6] - adds r0, r4, 0 - bl sub_80981A0 - lsls r0, 24 - cmp r0, 0 - beq _08052E46 - ldr r6, _08052E84 - ldr r4, [r6] - adds r0, r4, 0 - bl sub_80981A0 - lsls r0, 24 - cmp r0, 0 - bne _08052E88 -_08052E46: - adds r0, r4, 0 - bl sub_8098170 - bl sub_8083E28 - ldr r4, [r6, 0x4] - movs r0, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl PrintFieldMessage - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522E8 - b _08052EB6 - .align 2, 0 -_08052E68: .4byte gUnknown_80FF020 -_08052E6C: .4byte gUnknown_80FF080 -_08052E70: .4byte gUnknown_80FF0D8 -_08052E74: .4byte gUnknown_203B418 -_08052E78: .4byte 0x00000644 -_08052E7C: .4byte gUnknown_80FF13C -_08052E80: .4byte gUnknown_80FF1B4 -_08052E84: .4byte gUnknown_80FF22C -_08052E88: - ldr r6, _08052EBC - ldr r4, [r6] - adds r0, r4, 0 - bl sub_80981A0 - lsls r0, 24 - cmp r0, 0 - bne _08052EB6 - adds r0, r4, 0 - bl sub_8098170 - bl sub_8083E28 - ldr r4, [r6, 0x4] - movs r0, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl PrintFieldMessage - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522E8 -_08052EB6: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08052EBC: .4byte gUnknown_80FF290 - thumb_func_end sub_8052DD0 - - thumb_func_start sub_8052EC0 -sub_8052EC0: - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - adds r0, r4, 0 - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _08052EE0 - ldr r5, _08052EDC - b _08052F22 - .align 2, 0 -_08052EDC: .4byte gUnknown_80FF310 -_08052EE0: - cmp r4, 0x37 - bne _08052EEC - ldr r5, _08052EE8 - b _08052F22 - .align 2, 0 -_08052EE8: .4byte gUnknown_80FF394 -_08052EEC: - cmp r4, 0x43 - bne _08052EF8 - ldr r5, _08052EF4 - b _08052F22 - .align 2, 0 -_08052EF4: .4byte gUnknown_80FF3E8 -_08052EF8: - cmp r4, 0x48 - bne _08052F04 - ldr r5, _08052F00 - b _08052F22 - .align 2, 0 -_08052F00: .4byte gUnknown_80FF440 -_08052F04: - cmp r4, 0x7 - bne _08052F10 - ldr r5, _08052F0C - b _08052F22 - .align 2, 0 -_08052F0C: .4byte gUnknown_80FF4A0 -_08052F10: - cmp r4, 0x42 - bne _08052F1C - ldr r5, _08052F18 - b _08052F22 - .align 2, 0 -_08052F18: .4byte gUnknown_80FF518 -_08052F1C: - cmp r4, 0x45 - bne _08052F4C - ldr r5, _08052F48 -_08052F22: - ldr r4, [r5] - adds r0, r4, 0 - bl sub_80981A0 - lsls r0, 24 - cmp r0, 0 - bne _08052F74 - adds r0, r4, 0 - bl sub_8098170 - bl sub_8083E28 - ldr r1, [r5, 0x4] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _08052F74 - .align 2, 0 -_08052F48: .4byte gUnknown_80FF57C -_08052F4C: - cmp r5, 0x69 - bne _08052F74 - ldr r5, _08052F7C - ldr r4, [r5] - adds r0, r4, 0 - bl sub_80981A0 - lsls r0, 24 - cmp r0, 0 - bne _08052F74 - adds r0, r4, 0 - bl sub_8098170 - bl sub_8083E28 - ldr r1, [r5, 0x4] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_08052F74: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08052F7C: .4byte gUnknown_80FF5E8 - thumb_func_end sub_8052EC0 - - thumb_func_start sub_8052F80 -sub_8052F80: - push {lr} - ldr r0, _08052F9C - ldr r0, [r0] - ldrb r0, [r0, 0xA] - cmp r0, 0 - beq _08052FA4 - ldr r0, _08052FA0 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _08052FB0 - .align 2, 0 -_08052F9C: .4byte gUnknown_203B418 -_08052FA0: .4byte gUnknown_80FF6F8 -_08052FA4: - ldr r0, _08052FB4 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_08052FB0: - pop {r0} - bx r0 - .align 2, 0 -_08052FB4: .4byte gUnknown_80FF6A4 - thumb_func_end sub_8052F80 - - thumb_func_start sub_8052FB8 -sub_8052FB8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - adds r3, r0, 0 - movs r0, 0 - mov r8, r0 - ldr r0, _08053030 - movs r2, 0 - adds r0, 0x2 - movs r1, 0x1C -_08052FD2: - strh r2, [r0] - adds r0, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _08052FD2 - movs r0, 0 - str r0, [sp] - movs r1, 0x2 - str r1, [sp, 0x4] - str r0, [sp, 0x8] - str r0, [sp, 0xC] - movs r0, 0x30 - str r0, [sp, 0x10] - adds r0, r3, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_8014248 - movs r1, 0 - mov r9, r1 - ldr r7, _08053034 - ldr r2, _08053038 - mov r10, r2 -_08053002: - mov r3, r8 - cmp r3, 0x3D - bgt _08053040 - movs r4, 0x1 - add r8, r4 - movs r5, 0 - mov r1, r8 - lsrs r0, r1, 31 - adds r6, r1, r0 - ldr r4, _0805303C -_08053016: - adds r0, r5, 0 - adds r0, 0xF0 - adds r1, r4, 0 - asrs r2, r6, 1 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - adds r4, 0x4 - adds r5, 0x1 - cmp r5, 0x7 - ble _08053016 - b _080530CA - .align 2, 0 -_08053030: .4byte gUnknown_202B038 -_08053034: .4byte gUnknown_202F1F0 -_08053038: .4byte 0x0000f3ff -_0805303C: .4byte gUnknown_202D038 -_08053040: - movs r2, 0x1 - add r9, r2 - movs r0, 0x8 - mov r3, r9 - ands r0, r3 - cmp r0, 0 - beq _080530BE - ldrh r0, [r7] - ldr r4, _080530D8 - adds r1, r4, 0 - ands r0, r1 - ldr r2, _080530DC - adds r1, r2, 0 - ands r0, r1 - mov r3, r10 - ands r0, r3 - ldr r4, _080530E0 - adds r1, r4, 0 - ands r0, r1 - ldr r2, _080530E4 - adds r1, r2, 0 - ands r0, r1 - ldr r3, _080530E8 - ands r0, r3 - movs r4, 0x80 - lsls r4, 7 - orrs r0, r4 - strh r0, [r7] - movs r2, 0xFC - lsls r2, 2 - ldrh r0, [r7, 0x4] - movs r3, 0xFC - lsls r3, 8 - adds r1, r3, 0 - ands r0, r1 - orrs r0, r2 - movs r4, 0 - orrs r0, r4 - mov r1, r10 - ands r0, r1 - movs r2, 0xF - movs r3, 0xF0 - lsls r3, 8 - ldr r4, _080530EC - adds r1, r4, 0 - ands r0, r1 - orrs r0, r3 - strh r0, [r7, 0x4] - movs r1, 0xF0 - lsls r1, 3 - ldrh r0, [r7, 0x6] - ands r2, r0 - orrs r2, r1 - strh r2, [r7, 0x6] - movs r0, 0x70 - strh r0, [r7, 0x2] - adds r0, r7, 0 - movs r1, 0x80 - lsls r1, 1 - movs r2, 0 - movs r3, 0 - bl AddSprite -_080530BE: - ldr r0, _080530F0 - ldrh r1, [r0, 0x2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _080530F4 -_080530CA: - bl xxx_draw_string_80144C4 - movs r0, 0x9 - bl sub_803E46C - b _08053002 - .align 2, 0 -_080530D8: .4byte 0x0000feff -_080530DC: .4byte 0x0000fdff -_080530E0: .4byte 0x0000efff -_080530E4: .4byte 0x0000dfff -_080530E8: .4byte 0x00003fff -_080530EC: .4byte 0x00000fff -_080530F0: .4byte gUnknown_20255F0 -_080530F4: - mov r0, r8 - cmp r0, 0 - blt _08053134 - ldr r1, _08053178 - mov r9, r1 -_080530FE: - movs r5, 0 - mov r7, r8 - subs r7, 0x1 - mov r2, r8 - lsrs r0, r2, 31 - adds r6, r2, r0 - mov r4, r9 -_0805310C: - adds r0, r5, 0 - adds r0, 0xF0 - adds r1, r4, 0 - asrs r2, r6, 1 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - adds r4, 0x4 - adds r5, 0x1 - cmp r5, 0x7 - ble _0805310C - bl xxx_draw_string_80144C4 - movs r0, 0x9 - bl sub_803E46C - mov r8, r7 - mov r3, r8 - cmp r3, 0 - bge _080530FE -_08053134: - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0x9 - bl sub_803E46C - bl sub_8040238 - movs r5, 0 - ldr r4, _08053178 -_0805314C: - adds r0, r5, 0 - adds r0, 0xF0 - adds r1, r4, 0 - bl SetBGPaletteBufferColorArray - adds r4, 0x4 - adds r5, 0x1 - cmp r5, 0x7 - ble _0805314C - movs r0, 0x8 - movs r1, 0x9 - bl sub_803E708 - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08053178: .4byte gUnknown_202D038 - thumb_func_end sub_8052FB8 - - thumb_func_start sub_805317C -sub_805317C: - push {lr} - ldr r0, _08053198 - ldr r1, [r0] - movs r2, 0xCF - lsls r2, 3 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0805319C - subs r2, 0x34 - adds r0, r1, r2 - ldrb r0, [r0] - b _0805319E - .align 2, 0 -_08053198: .4byte gUnknown_203B418 -_0805319C: - movs r0, 0x3F -_0805319E: - bl sub_809009C - pop {r1} - bx r1 - thumb_func_end sub_805317C - - thumb_func_start sub_80531A8 -sub_80531A8: - push {r4-r6,lr} - ldr r2, _080531F0 - ldr r1, [r2] - movs r0, 0 - strh r0, [r1, 0x16] - movs r0, 0x1 - strb r0, [r1, 0xB] - movs r4, 0 - movs r3, 0 - ldr r5, _080531F4 -_080531BC: - ldr r0, [r2] - lsls r1, r4, 6 - adds r0, r1 - adds r0, r5 - strb r3, [r0] - ldr r0, [r2] - adds r0, r1 - ldr r6, _080531F8 - adds r0, r6 - strb r3, [r0] - ldr r0, [r2] - adds r0, r1 - adds r6, 0x1 - adds r0, r6 - strb r3, [r0] - ldr r0, [r2] - adds r0, r1 - ldr r1, _080531FC - adds r0, r1 - strb r3, [r0] - adds r4, 0x1 - cmp r4, 0x13 - ble _080531BC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080531F0: .4byte gUnknown_203B418 -_080531F4: .4byte 0x0001c073 -_080531F8: .4byte 0x0001c070 -_080531FC: .4byte 0x0001c072 - thumb_func_end sub_80531A8 - - thumb_func_start sub_8053200 -sub_8053200: - ldr r0, _0805320C - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0xB] - bx lr - .align 2, 0 -_0805320C: .4byte gUnknown_203B418 - thumb_func_end sub_8053200 - - thumb_func_start sub_8053210 -sub_8053210: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - ldr r0, _08053264 - mov r12, r0 - ldr r3, [r0] - movs r0, 0x16 - ldrsh r4, [r3, r0] - lsls r4, 6 - ldr r5, _08053268 - adds r0, r4, r5 - adds r0, r3, r0 - adds r7, r0, 0x3 - adds r0, 0x3E - mov r8, r0 - adds r3, r4 - adds r3, r5 - movs r0, 0x1 - strb r0, [r3] - mov r4, r12 - ldr r3, [r4] - movs r4, 0x16 - ldrsh r0, [r3, r4] - lsls r0, 6 - adds r3, r0 - ldr r0, _0805326C - adds r3, r0 - strb r1, [r3] - mov r3, r12 - ldr r1, [r3] - movs r4, 0x16 - ldrsh r0, [r1, r4] - lsls r0, 6 - adds r1, r0 - ldr r0, _08053270 - adds r1, r0 - strb r2, [r1] - ldrb r2, [r6] - adds r0, r2, 0 - mov r1, r12 - b _08053282 - .align 2, 0 -_08053264: .4byte gUnknown_203B418 -_08053268: .4byte 0x0001c070 -_0805326C: .4byte 0x0001c071 -_08053270: .4byte 0x0001c072 -_08053274: - cmp r7, r8 - bcs _0805327C - strb r2, [r7] - adds r7, 0x1 -_0805327C: - adds r6, 0x1 - ldrb r2, [r6] - adds r0, r2, 0 -_08053282: - cmp r0, 0 - beq _0805328A - cmp r0, 0xD - bne _08053274 -_0805328A: - movs r0, 0 - strb r0, [r7] - ldr r2, [r1] - ldrh r0, [r2, 0x16] - adds r0, 0x1 - strh r0, [r2, 0x16] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x13 - ble _080532A2 - movs r0, 0 - strh r0, [r2, 0x16] -_080532A2: - ldr r1, [r1] - movs r0, 0x1 - strb r0, [r1, 0xB] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8053210 - - thumb_func_start sub_80532B4 -sub_80532B4: - push {r4-r6,lr} - sub sp, 0xC - mov r0, sp - bl sub_801317C - movs r0, 0x9 - movs r1, 0 - bl sub_803EAF0 -_080532C6: - movs r0, 0xD - bl sub_803E46C - movs r0, 0 - bl sub_8008D8C - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _080532C6 - ldr r0, _08053374 - str r1, [r0] - ldr r4, _08053378 - strb r1, [r4] - bl sub_80533A4 - adds r6, r4, 0 -_080532E8: - movs r5, 0 - strb r5, [r6] - mov r0, sp - movs r1, 0 - bl nullsub_34 - movs r0, 0 - ldr r1, _0805337C - bl sub_8014140 - adds r4, r0, 0 - bl sub_8053430 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r5, r1, 31 - adds r0, r4, 0 - bl sub_8053540 - lsls r0, 24 - cmp r0, 0 - beq _0805331A - movs r5, 0x1 -_0805331A: - cmp r5, 0 - bne _08053324 - movs r0, 0xD - bl sub_803E46C -_08053324: - ldrb r1, [r6] - movs r5, 0x1 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0805333A - movs r0, 0x1 - movs r1, 0x8 - negs r1, r1 - bl sub_805363C -_0805333A: - ldrb r1, [r6] - movs r4, 0x2 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0805334E - movs r0, 0 - movs r1, 0x72 - bl sub_805363C -_0805334E: - bl sub_80048C8 - lsls r0, 24 - cmp r0, 0 - bne _080532E8 - ldr r0, _08053380 - ldrh r1, [r0, 0x2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - bne _0805336C - mov r0, sp - ldrb r0, [r0, 0x2] - cmp r0, 0 - beq _08053384 -_0805336C: - bl sub_8083D30 - b _08053390 - .align 2, 0 -_08053374: .4byte gUnknown_202F1F8 -_08053378: .4byte gUnknown_202F1FC -_0805337C: .4byte gUnknown_8106990 -_08053380: .4byte gUnknown_20255F0 -_08053384: - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _080532E8 - bl sub_8083D08 -_08053390: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0x1 - add sp, 0xC - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80532B4 - - thumb_func_start sub_80533A4 -sub_80533A4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - ldr r5, _08053428 - ldr r0, [r5] - movs r1, 0x16 - ldrsh r4, [r0, r1] - movs r6, 0x10 - subs r4, 0x8 - cmp r4, 0 - bge _080533BE - adds r4, 0x14 -_080533BE: - movs r0, 0 - bl sub_80073B8 - mov r8, r5 - movs r7, 0x7 -_080533C8: - lsls r0, r4, 6 - ldr r2, _0805342C - adds r0, r2 - mov r2, r8 - ldr r1, [r2] - adds r5, r1, r0 - ldrb r0, [r5] - cmp r0, 0 - beq _08053402 - ldrb r0, [r5, 0x1] - cmp r0, 0 - beq _080533F0 - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - movs r1, 0 - adds r2, r6, 0 - movs r3, 0xE0 - bl sub_80078A4 -_080533F0: - adds r1, r6, 0x3 - adds r2, r5, 0x3 - movs r0, 0xD - str r0, [sp] - movs r0, 0x8 - movs r3, 0 - bl xxx_call_draw_string - adds r6, 0xE -_08053402: - adds r4, 0x1 - cmp r4, 0x13 - ble _0805340A - movs r4, 0 -_0805340A: - subs r7, 0x1 - cmp r7, 0 - bge _080533C8 - movs r0, 0 - bl sub_80073E0 - movs r0, 0 - bl sub_8007334 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08053428: .4byte gUnknown_203B418 -_0805342C: .4byte 0x0001c070 - thumb_func_end sub_80533A4 - - thumb_func_start sub_8053430 -sub_8053430: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - ldr r3, _08053454 - ldr r0, [r3] - movs r2, 0x16 - ldrsh r1, [r0, r2] - ldr r2, _08053458 - ldr r0, [r2] - adds r1, r0 - movs r6, 0x2 - subs r1, 0x9 - cmp r1, 0 - bge _0805345E -_0805344C: - adds r1, 0x14 - cmp r1, 0 - blt _0805344C - b _0805345E - .align 2, 0 -_08053454: .4byte gUnknown_203B418 -_08053458: .4byte gUnknown_202F1F8 -_0805345C: - subs r1, 0x14 -_0805345E: - cmp r1, 0x13 - bgt _0805345C - ldr r0, [r3] - lsls r1, 6 - adds r0, r1 - ldr r3, _0805349C - adds r0, r3 - ldrb r0, [r0] - adds r4, r1, 0 - cmp r0, 0 - beq _08053498 - ldr r1, [r2] - movs r0, 0xC - negs r0, r0 - cmp r1, r0 - ble _08053498 - ldr r2, _080534A0 - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r0, _080534A4 - ldrh r1, [r0, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _080534A8 - cmp r5, 0x1 - beq _080534A8 -_08053498: - movs r0, 0 - b _08053528 - .align 2, 0 -_0805349C: .4byte 0x0001c070 -_080534A0: .4byte gUnknown_202F1FC -_080534A4: .4byte gUnknown_20255F0 -_080534A8: - movs r0, 0 - bl sub_8083CE0 - movs r0, 0 - bl sub_80073B8 - ldr r0, _08053530 - ldr r2, _08053534 - adds r1, r4, r2 - ldr r0, [r0] - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0 - beq _080534FA - movs r0, 0x10 - str r0, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0xD0 - bl sub_80087EC - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _080534EA - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - movs r1, 0 - adds r2, r6, 0 - movs r3, 0xE0 - bl sub_80078A4 -_080534EA: - adds r1, r6, 0x3 - adds r2, r4, 0x3 - movs r0, 0xD - str r0, [sp] - movs r0, 0x8 - movs r3, 0 - bl xxx_call_draw_string -_080534FA: - movs r0, 0 - bl sub_80073E0 - movs r0, 0xD - bl sub_803E46C - ldr r5, _08053538 - movs r4, 0x6 -_0805350A: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0xD - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _0805350A - ldr r1, _0805353C - ldr r0, [r1] - subs r0, 0x1 - str r0, [r1] - movs r0, 0x1 -_08053528: - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08053530: .4byte gUnknown_203B418 -_08053534: .4byte 0x0001c070 -_08053538: .4byte gUnknown_203B084 -_0805353C: .4byte gUnknown_202F1F8 - thumb_func_end sub_8053430 - - thumb_func_start sub_8053540 -sub_8053540: - push {r4,r5,lr} - sub sp, 0x4 - adds r3, r0, 0 - ldr r0, _08053564 - ldr r0, [r0] - movs r1, 0x16 - ldrsh r2, [r0, r1] - ldr r1, _08053568 - ldr r0, [r1] - adds r4, r2, r0 - movs r5, 0x80 - cmp r4, 0 - bge _0805356E -_0805355A: - adds r4, 0x14 - cmp r4, 0 - blt _0805355A - b _0805356E - .align 2, 0 -_08053564: .4byte gUnknown_203B418 -_08053568: .4byte gUnknown_202F1F8 -_0805356C: - subs r4, 0x14 -_0805356E: - cmp r4, 0x13 - bgt _0805356C - ldr r0, [r1] - cmp r0, 0 - bge _08053592 - ldr r2, _08053598 - ldrb r0, [r2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2] - ldr r0, _0805359C - ldrh r1, [r0, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080535A0 - cmp r3, 0x2 - beq _080535A0 -_08053592: - movs r0, 0 - b _08053622 - .align 2, 0 -_08053598: .4byte gUnknown_202F1FC -_0805359C: .4byte gUnknown_20255F0 -_080535A0: - movs r0, 0 - bl sub_8083CE0 - movs r0, 0 - bl sub_80073B8 - ldr r1, _0805362C - lsls r0, r4, 6 - ldr r2, _08053630 - adds r0, r2 - ldr r1, [r1] - adds r4, r1, r0 - ldrb r0, [r4] - cmp r0, 0 - beq _080535F4 - movs r0, 0x10 - str r0, [sp] - movs r0, 0 - movs r1, 0 - adds r2, r5, 0 - movs r3, 0x68 - bl sub_80087EC - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _080535E4 - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - movs r1, 0 - adds r2, r5, 0 - movs r3, 0xE0 - bl sub_80078A4 -_080535E4: - adds r1, r5, 0x3 - adds r2, r4, 0x3 - movs r0, 0xD - str r0, [sp] - movs r0, 0x8 - movs r3, 0 - bl xxx_call_draw_string -_080535F4: - movs r0, 0 - bl sub_80073E0 - movs r0, 0xD - bl sub_803E46C - ldr r5, _08053634 - movs r4, 0x6 -_08053604: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0xD - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08053604 - ldr r1, _08053638 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - movs r0, 0x1 -_08053622: - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805362C: .4byte gUnknown_203B418 -_08053630: .4byte 0x0001c070 -_08053634: .4byte gUnknown_203B080 -_08053638: .4byte gUnknown_202F1F8 - thumb_func_end sub_8053540 - - thumb_func_start sub_805363C -sub_805363C: - push {r4-r7,lr} - mov r12, r1 - lsls r0, 24 - lsrs r2, r0, 24 - ldr r7, _080536D0 - ldr r0, _080536D4 - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080536C8 - ldr r0, _080536D8 - ldrh r1, [r0] - ldr r3, _080536DC - ands r3, r1 - ldr r1, _080536E0 - ands r3, r1 - ldr r1, _080536E4 - ands r3, r1 - ldr r1, _080536E8 - ands r3, r1 - ldr r1, _080536EC - ands r3, r1 - negs r1, r2 - orrs r1, r2 - asrs r1, 31 - movs r2, 0x80 - lsls r2, 6 - ands r2, r1 - ldrh r1, [r0, 0x2] - ldr r4, _080536F0 - ands r4, r1 - orrs r4, r2 - movs r5, 0xF - ldr r2, _080536F4 - movs r6, 0x2 - ldrsh r1, [r7, r6] - lsls r1, 3 - add r1, r12 - ands r1, r2 - lsls r1, 4 - ldrh r2, [r0, 0x6] - ands r5, r2 - orrs r5, r1 - strh r5, [r0, 0x6] - movs r2, 0 - ldrsh r1, [r7, r2] - lsls r1, 3 - adds r1, 0x5C - ldr r2, _080536F8 - ands r1, r2 - movs r2, 0xFE - lsls r2, 8 - ands r4, r2 - orrs r4, r1 - movs r2, 0x80 - lsls r2, 7 - ldr r1, _080536FC - ands r3, r1 - orrs r3, r2 - strh r3, [r0] - ands r4, r1 - strh r4, [r0, 0x2] - ldr r1, _08053700 - strh r1, [r0, 0x4] - movs r1, 0x7F - movs r2, 0 - movs r3, 0 - bl AddSprite -_080536C8: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080536D0: .4byte gUnknown_2027370 -_080536D4: .4byte gUnknown_202EDCC -_080536D8: .4byte gUnknown_202F200 -_080536DC: .4byte 0x0000feff -_080536E0: .4byte 0x0000fdff -_080536E4: .4byte 0x0000f3ff -_080536E8: .4byte 0x0000efff -_080536EC: .4byte 0x0000dfff -_080536F0: .4byte 0x0000c1ff -_080536F4: .4byte 0x00000fff -_080536F8: .4byte 0x000001ff -_080536FC: .4byte 0x00003fff -_08053700: .4byte 0x0000f3f0 - thumb_func_end sub_805363C - - thumb_func_start sub_8053704 -sub_8053704: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x48 - str r0, [sp, 0x10] - adds r7, r1, 0 - mov r8, r2 - mov r9, r3 - movs r0, 0 - str r0, [sp, 0x14] - ldrh r1, [r2, 0x2] - str r1, [sp, 0x18] - bl _08055570 -_08053724: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08053734 - bl _0805556A -_08053734: - str r7, [sp, 0x1C] - ldr r2, [r5, 0x70] - str r2, [sp, 0x24] - movs r3, 0xAD - lsls r3, 1 - adds r0, r2, r3 - add r1, sp, 0x20 - ldrb r1, [r1] - strb r1, [r0] - ldr r0, [sp, 0x18] - bl sub_8092CD8 - lsls r0, 24 - cmp r0, 0 - beq _080537B4 - ldr r6, _080537A4 - ldr r0, [r6] - ldr r2, _080537A8 - adds r0, r2 - ldr r4, [r0] - cmp r4, 0 - beq _080537B4 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - beq _0805376C - b _08053A1C -_0805376C: - cmp r4, r7 - bne _08053772 - b _08053A1C -_08053772: - ldr r1, [r4, 0x70] - adds r1, 0x98 - ldr r0, [r6] - ldr r3, _080537AC - adds r0, r3 - ldr r1, [r1] - ldr r0, [r0] - cmp r1, r0 - beq _08053786 - b _08053A1C -_08053786: - ldr r0, [sp, 0x24] - adds r0, 0xFF - ldrb r0, [r0] - cmp r0, 0 - beq _08053792 - b _08053A1C -_08053792: - ldr r0, _080537B0 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - adds r5, r4, 0 - b _08053A1C - .align 2, 0 -_080537A4: .4byte gUnknown_203B418 -_080537A8: .4byte 0x00017b30 -_080537AC: .4byte 0x00017b3c -_080537B0: .4byte gUnknown_80FCD28 -_080537B4: - adds r0, r7, 0 - mov r1, r8 - bl sub_8071A1C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _08053854 - ldr r2, _08053844 - ldr r0, [r2] - ldr r1, _08053848 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - beq _08053854 - adds r4, r0, 0 - str r2, [sp, 0x44] - bl sub_80450F8 - ldr r2, [sp, 0x44] - cmp r0, 0x1 - beq _080537E2 - b _08053A1C -_080537E2: - ldr r6, [r4, 0x70] - adds r1, r6, 0 - adds r1, 0x98 - ldr r0, [r2] - ldr r2, _0805384C - adds r0, r2 - ldr r1, [r1] - ldr r0, [r0] - cmp r1, r0 - beq _080537F8 - b _08053A1C -_080537F8: - adds r0, r4, 0 - adds r1, r7, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0805380E - b _08053A1C -_0805380E: - ldr r0, [sp, 0x24] - adds r0, 0xFF - ldrb r0, [r0] - cmp r0, 0 - bne _08053822 - adds r0, r6, 0 - adds r0, 0xFF - ldrb r0, [r0] - cmp r0, 0 - beq _08053828 -_08053822: - cmp r5, r4 - beq _08053828 - b _08053A1C -_08053828: - adds r0, r4, 0 - bl sub_8042930 - ldr r0, _08053850 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - adds r5, r4, 0 - movs r3, 0x1 - str r3, [sp, 0x2C] - b _08053A1C - .align 2, 0 -_08053844: .4byte gUnknown_203B418 -_08053848: .4byte 0x00017b2c -_0805384C: .4byte 0x00017b38 -_08053850: .4byte gUnknown_80FCD0C -_08053854: - adds r0, r5, 0 - movs r1, 0x2C - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _08053864 - b _08053A1C -_08053864: - adds r0, r5, 0 - movs r1, 0 - bl sub_8070D04 - lsls r0, 24 - cmp r0, 0 - beq _08053874 - b _08053A1C -_08053874: - adds r0, r7, 0 - mov r1, r8 - movs r2, 0 - bl sub_807CD64 - movs r1, 0xF0 - ands r1, r0 - cmp r1, 0 - beq _08053888 - b _08053A1C -_08053888: - ldr r1, [sp, 0x24] - movs r2, 0x9E - lsls r2, 1 - adds r0, r1, r2 - ldr r0, [r0] - bl sub_8094450 - ldr r1, _080538C4 - movs r3, 0 - ldrsh r1, [r1, r3] - cmp r0, r1 - bge _080538A2 - b _08053A1C -_080538A2: - ldr r0, [sp, 0x24] - adds r0, 0xFF - ldrb r0, [r0] - cmp r0, 0 - beq _080538AE - b _08053A1C -_080538AE: - ldr r0, [sp, 0x24] - adds r0, 0x46 - ldrb r4, [r0] - mov r10, r4 - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - beq _080538CC - ldr r0, _080538C8 - b _080539FA - .align 2, 0 -_080538C4: .4byte gUnknown_80F5006 -_080538C8: .4byte gUnknown_80FDD88 -_080538CC: - movs r0, 0 - str r0, [sp, 0x34] - movs r2, 0x9E - lsls r2, 1 - ldr r1, [sp, 0x24] - adds r2, r1, r2 - str r2, [sp, 0x3C] -_080538DA: - movs r3, 0x1 - add r10, r3 - movs r0, 0x7 - mov r1, r10 - ands r1, r0 - mov r10, r1 - movs r2, 0x4 - ldrsh r0, [r5, r2] - ldr r1, _080539B4 - mov r3, r10 - lsls r2, r3, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r5, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - ldr r0, [r0, 0x10] - str r0, [sp, 0x38] - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080539DC - ldr r0, [sp, 0x38] - bl sub_80450F8 - cmp r0, 0x1 - bne _080539DC - adds r0, r5, 0 - bl sub_8045888 - lsls r0, 24 - mov r1, sp - adds r1, 0xC - str r1, [sp, 0x40] - cmp r0, 0 - beq _0805397C - movs r6, 0x17 -_08053932: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_806CE68 - movs r0, 0x2 - movs r1, 0x43 - bl sub_803E708 - adds r4, 0x1 - movs r2, 0x7 - ands r4, r2 - subs r6, 0x1 - cmp r6, 0 - bge _08053932 - cmp r4, r10 - beq _0805396C - movs r6, 0x7 -_08053954: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_806CE68 - movs r0, 0x2 - movs r1, 0x43 - bl sub_803E708 - adds r4, 0x1 - ands r4, r6 - cmp r4, r10 - bne _08053954 -_0805396C: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_806CE68 - movs r0, 0x2 - movs r1, 0x43 - bl sub_803E708 -_0805397C: - ldr r3, [sp, 0x3C] - ldr r4, [r3] - ldr r0, _080539B8 - movs r2, 0 - ldrsh r1, [r0, r2] - add r0, sp, 0x8 - bl sub_80943A0 - ldr r2, [sp, 0x8] - ldr r0, [sp, 0x40] - adds r1, r4, 0 - bl sub_80942C0 - ldr r0, [sp, 0xC] - ldr r3, [sp, 0x3C] - str r0, [r3] - mov r0, r8 - ldrh r1, [r0, 0x2] - ldr r0, _080539BC - cmp r1, r0 - bne _080539C4 - ldr r0, _080539C0 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _080539D0 - .align 2, 0 -_080539B4: .4byte gUnknown_80F4448 -_080539B8: .4byte gUnknown_80F5006 -_080539BC: .4byte 0x00000163 -_080539C0: .4byte gUnknown_80FDDA8 -_080539C4: - ldr r0, _080539D8 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_080539D0: - str r5, [sp, 0x20] - ldr r5, [sp, 0x38] - b _080539E8 - .align 2, 0 -_080539D8: .4byte gUnknown_80FDD20 -_080539DC: - ldr r1, [sp, 0x34] - adds r1, 0x1 - str r1, [sp, 0x34] - cmp r1, 0x7 - bgt _080539E8 - b _080538DA -_080539E8: - ldr r2, [sp, 0x34] - cmp r2, 0x8 - bne _08053A1C - mov r3, r8 - ldrh r1, [r3, 0x2] - ldr r0, _08053A08 - cmp r1, r0 - bne _08053A10 - ldr r0, _08053A0C -_080539FA: - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _08053A1C - .align 2, 0 -_08053A08: .4byte 0x00000163 -_08053A0C: .4byte gUnknown_80FDDAC -_08053A10: - ldr r0, _08053AD8 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08053A1C: - ldr r1, _08053ADC - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r1, _08053AE0 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r0, [r5, 0x70] - str r0, [sp, 0x24] - movs r6, 0xAD - lsls r6, 1 - adds r1, r0, r6 - movs r0, 0 - strb r0, [r1] - ldr r1, [sp, 0x24] - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _08053A4C - movs r2, 0xB6 - lsls r2, 1 - adds r1, r2 - ldr r0, [r7, 0x4] - str r0, [r1] -_08053A4C: - adds r0, r5, 0 - bl sub_806A1E8 - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_807A96C - movs r4, 0 - adds r0, r7, 0 - mov r1, r8 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - bne _08053A7E - mov r3, r8 - ldrh r1, [r3, 0x2] - adds r0, r7, 0 - bl sub_805755C - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 -_08053A7E: - ldr r0, [sp, 0x2C] - cmp r0, 0 - beq _08053A86 - b _08053BAE -_08053A86: - ldr r0, [sp, 0x24] - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x5 - bne _08053AE8 - ldr r0, [sp, 0x18] - bl sub_8092CC0 - lsls r0, 24 - cmp r0, 0 - beq _08053B5C - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_8055988 - lsls r0, 24 - cmp r0, 0 - beq _08053B5C - ldr r0, _08053AE4 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - adds r0, r5, 0 - bl sub_8041B48 - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_80559DC - adds r5, r7, 0 - ldr r1, [r7, 0x70] - str r1, [sp, 0x24] - adds r0, r1, r6 - add r2, sp, 0x2C - ldrb r2, [r2] - strb r2, [r0] - movs r3, 0x1 - str r3, [sp, 0x30] - b _08053B5C - .align 2, 0 -_08053AD8: .4byte gUnknown_80FDD48 -_08053ADC: .4byte gUnknown_202F208 -_08053AE0: .4byte gUnknown_202F20C -_08053AE4: .4byte gUnknown_80FC52C -_08053AE8: - cmp r0, 0xB - bne _08053B5C - adds r0, r7, 0 - mov r1, r8 - movs r2, 0 - bl sub_807CD64 - lsls r0, 16 - asrs r1, r0, 16 - ldr r0, _08053C88 - ldr r2, [sp, 0x18] - cmp r2, r0 - beq _08053B5C - adds r0, 0x32 - cmp r2, r0 - beq _08053B5C - cmp r4, 0 - bne _08053B5C - movs r0, 0xF - ands r0, r1 - cmp r0, 0 - beq _08053B20 - cmp r0, 0x4 - beq _08053B20 - cmp r0, 0x5 - beq _08053B20 - cmp r0, 0x2 - bne _08053B5C -_08053B20: - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_8055988 - lsls r0, 24 - cmp r0, 0 - beq _08053B5C - ldr r0, _08053C8C - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - adds r0, r5, 0 - bl sub_8041BA8 - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_80559DC - adds r5, r7, 0 - ldr r3, [r7, 0x70] - str r3, [sp, 0x24] - movs r0, 0xAD - lsls r0, 1 - adds r1, r3, r0 - movs r0, 0 - strb r0, [r1] - movs r1, 0x1 - str r1, [sp, 0x30] -_08053B5C: - ldr r2, [sp, 0x2C] - cmp r2, 0 - bne _08053BAE - ldr r0, [sp, 0x24] - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x7 - bne _08053BAE - adds r0, r7, 0 - mov r1, r8 - movs r2, 0 - bl sub_807CD64 - lsls r0, 16 - movs r1, 0xF0 - lsls r1, 12 - ands r1, r0 - asrs r1, 16 - cmp r1, 0 - beq _08053B90 - cmp r1, 0x4 - beq _08053B90 - cmp r1, 0x5 - beq _08053B90 - cmp r1, 0x2 - bne _08053BAE -_08053B90: - cmp r4, 0 - bne _08053BAE - ldr r0, _08053C90 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08053C94 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - movs r3, 0 - str r3, [sp, 0x28] -_08053BAE: - adds r0, r5, 0 - mov r1, r8 - bl sub_80571F0 - lsls r0, 24 - cmp r0, 0 - beq _08053BC0 - movs r0, 0 - str r0, [sp, 0x28] -_08053BC0: - ldr r1, [sp, 0x28] - cmp r1, 0 - beq _08053C4A - adds r0, r5, 0 - movs r1, 0x3C - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08053BFA - mov r0, r8 - bl sub_8092D08 - lsls r0, 24 - cmp r0, 0 - beq _08053BFA - ldr r0, _08053C90 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08053C98 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - movs r2, 0 - str r2, [sp, 0x28] -_08053BFA: - ldr r3, [sp, 0x28] - cmp r3, 0 - beq _08053C4A - movs r0, 0 - ldr r1, [sp, 0x30] - cmp r1, 0 - bne _08053C0A - movs r0, 0x1 -_08053C0A: - adds r2, r0, 0 - mov r3, r8 - ldrh r1, [r3, 0x2] - cmp r1, 0x68 - beq _08053C20 - ldr r0, _08053C9C - cmp r1, r0 - beq _08053C20 - subs r0, 0x4 - cmp r1, r0 - bne _08053C22 -_08053C20: - movs r2, 0 -_08053C22: - str r2, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - movs r3, 0 - bl sub_8056B34 - lsls r0, 24 - cmp r0, 0 - bne _08053C3A - movs r0, 0 - str r0, [sp, 0x28] -_08053C3A: - ldr r1, [sp, 0x28] - cmp r1, 0 - beq _08053C4A - ldr r2, [sp, 0x2C] - cmp r2, 0 - beq _08053C4A - movs r3, 0 - str r3, [sp, 0x28] -_08053C4A: - adds r0, r5, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _08053C6A - movs r0, 0x4 - movs r1, 0x4A - bl sub_803E708 - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - movs r3, 0 - bl sub_8041168 -_08053C6A: - ldr r0, [sp, 0x28] - cmp r0, 0 - beq _08053C72 - b _08053D72 -_08053C72: - ldr r0, [r7, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _08053CA0 - movs r1, 0xAB - lsls r1, 1 - adds r0, r7, 0 - bl sub_80421C0 - b _08053CA8 - .align 2, 0 -_08053C88: .4byte 0x00000163 -_08053C8C: .4byte gUnknown_80FC558 -_08053C90: .4byte gUnknown_202DFE8 -_08053C94: .4byte gUnknown_80FC574 -_08053C98: .4byte gUnknown_8100524 -_08053C9C: .4byte 0x00000131 -_08053CA0: - ldr r1, _08053CC4 - adds r0, r7, 0 - bl sub_80421C0 -_08053CA8: - ldr r0, _08053CC8 - ldr r1, [r5, 0x70] - movs r2, 0 - bl sub_80708B4 - cmp r7, r5 - bne _08053CD0 - ldr r0, _08053CCC - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_80522F4 - b _08053D10 - .align 2, 0 -_08053CC4: .4byte 0x00000157 -_08053CC8: .4byte gUnknown_202DFE8 -_08053CCC: .4byte gUnknown_80F9380 -_08053CD0: - adds r0, r7, 0 - adds r1, r5, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - cmp r0, 0 - bne _08053CEC - ldr r0, _08053CE8 - b _08053CF4 - .align 2, 0 -_08053CE8: .4byte gUnknown_80F9384 -_08053CEC: - ldr r1, [sp, 0x2C] - cmp r1, 0 - beq _08053D04 - ldr r0, _08053D00 -_08053CF4: - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _08053D10 - .align 2, 0 -_08053D00: .4byte gUnknown_80F93A4 -_08053D04: - ldr r0, _08053D48 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08053D10: - adds r0, r5, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _08053D2A - ldr r0, _08053D4C - movs r3, 0x1 - negs r3, r3 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_803ED30 -_08053D2A: - ldr r2, [sp, 0x18] - cmp r2, 0xCC - beq _08053D50 - cmp r2, 0xCE - bne _08053D60 - movs r0, 0x1 - str r0, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059FC8 - b _08053D60 - .align 2, 0 -_08053D48: .4byte gUnknown_80F9364 -_08053D4C: .4byte 0x0000270f -_08053D50: - movs r0, 0x1 - str r0, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059E54 -_08053D60: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08053D6E - bl _080555A2 -_08053D6E: - bl _08055568 -_08053D72: - ldr r0, [sp, 0x24] - adds r0, 0xFB - ldrb r3, [r0] - mov r10, r3 - ldr r2, [sp, 0x24] - ldrb r1, [r2, 0x6] - adds r6, r0, 0 - cmp r1, 0 - beq _08053DA8 - mov r3, r8 - ldrh r1, [r3, 0x2] - ldr r0, _08053E88 - cmp r1, r0 - beq _08053D9E - mov r0, r9 - cmp r0, 0 - bne _08053D9E - mov r1, r10 - cmp r1, 0 - bne _08053D9E - movs r0, 0x1 - strb r0, [r6] -_08053D9E: - ldr r2, [sp, 0x68] - cmp r2, 0x1 - bne _08053DA8 - movs r0, 0x2 - strb r0, [r6] -_08053DA8: - ldr r3, [sp, 0x24] - movs r0, 0xB2 - lsls r0, 1 - adds r4, r3, r0 - ldrb r0, [r4] - cmp r0, 0xFF - bne _08053DCE - adds r0, r5, 0 - movs r1, 0xE3 - bl sub_80717A4 - lsls r0, 24 - cmp r0, 0 - beq _08053DCE - adds r0, r5, 0x4 - adds r1, r7, 0x4 - bl sub_80983D8 - strb r0, [r4] -_08053DCE: - ldr r1, [sp, 0x24] - ldr r2, _08053E8C - adds r4, r1, r2 - ldrb r0, [r4] - cmp r0, 0xFF - bne _08053DF2 - adds r0, r5, 0 - movs r1, 0x19 - bl sub_80717A4 - lsls r0, 24 - cmp r0, 0 - beq _08053DF2 - adds r0, r5, 0x4 - adds r1, r7, 0x4 - bl sub_80983D8 - strb r0, [r4] -_08053DF2: - adds r0, r5, 0 - movs r1, 0x39 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08053E4A - adds r0, r7, 0 - adds r1, r5, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08053E4A - mov r3, r8 - ldrh r1, [r3, 0x2] - ldr r0, _08053E88 - cmp r1, r0 - beq _08053E4A - subs r0, 0x3 - cmp r1, r0 - beq _08053E4A - mov r0, r9 - cmp r0, 0 - bne _08053E4A - ldrb r0, [r3, 0x4] - cmp r0, 0 - beq _08053E4A - ldrb r1, [r3, 0x1] - movs r4, 0x10 - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08053E42 - adds r0, r7, 0 - bl sub_8042950 -_08053E42: - mov r1, r8 - ldrb r0, [r1, 0x1] - orrs r0, r4 - strb r0, [r1, 0x1] -_08053E4A: - adds r0, r7, 0 - mov r1, r8 - movs r2, 0 - bl sub_807CD64 - movs r1, 0xF - ands r1, r0 - cmp r1, 0 - bne _08053E64 - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_806F450 -_08053E64: - ldr r2, [sp, 0x24] - movs r3, 0xAC - lsls r3, 1 - adds r0, r2, r3 - movs r1, 0x1 - strb r1, [r0] - movs r0, 0xCE - lsls r0, 1 - ldr r1, [sp, 0x18] - cmp r1, r0 - bls _08053E7E - bl _080554C0 -_08053E7E: - lsls r0, r1, 2 - ldr r1, _08053E90 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08053E88: .4byte 0x00000163 -_08053E8C: .4byte 0x00000165 -_08053E90: .4byte _08053E94 - .align 2, 0 -_08053E94: - .4byte _08054520 - .4byte _08054DB8 - .4byte _08054C18 - .4byte _08054888 - .4byte _08054878 - .4byte _08054D80 - .4byte _08054D8E - .4byte _08054FB0 - .4byte _08054FE8 - .4byte _08054508 - .4byte _08054FF6 - .4byte _08055270 - .4byte _08055190 - .4byte _080548C8 - .4byte _080552B6 - .4byte _08054E1A - .4byte _0805527E - .4byte _080551F2 - .4byte _08054508 - .4byte _080549C8 - .4byte _08054EEC - .4byte _08054968 - .4byte _08054EDE - .4byte _0805528C - .4byte _08054B18 - .4byte _08055422 - .4byte _08054E1A - .4byte _08054AB8 - .4byte _08054508 - .4byte _0805529A - .4byte _080547A8 - .4byte _08055200 - .4byte _0805460A - .4byte _08054948 - .4byte _08054878 - .4byte _0805519E - .4byte _080545AE - .4byte _0805514A - .4byte _08054CD4 - .4byte _08054508 - .4byte _08055396 - .4byte _08054EB4 - .4byte _08054A68 - .4byte _08054C28 - .4byte _08054A58 - .4byte _08054E8A - .4byte _080547A8 - .4byte _08054DD4 - .4byte _080553DC - .4byte _0805504A - .4byte _080554A0 - .4byte _08054CD4 - .4byte _0805455E - .4byte _0805456E - .4byte _080552D2 - .4byte _080549B8 - .4byte _08055004 - .4byte _0805453E - .4byte _08054F94 - .4byte _08054818 - .4byte _08054D56 - .4byte _08054CE2 - .4byte _080547B8 - .4byte _08054788 - .4byte _08054868 - .4byte _08054868 - .4byte _08054F16 - .4byte _08055112 - .4byte _080545AE - .4byte _080545FA - .4byte _08054F94 - .4byte _080546D8 - .4byte _08054F86 - .4byte _08054928 - .4byte _0805459E - .4byte _08054D64 - .4byte _08054AD8 - .4byte _080550DA - .4byte _08054E52 - .4byte _08054878 - .4byte _08054AD8 - .4byte _080545AE - .4byte _080546E8 - .4byte _08054ED0 - .4byte _08054878 - .4byte _080550CC - .4byte _0805462A - .4byte _080545AE - .4byte _08054E28 - .4byte _0805462A - .4byte _080545AE - .4byte _08054B78 - .4byte _08055120 - .4byte _080546E8 - .4byte _08054C48 - .4byte _08054CC6 - .4byte _080551D6 - .4byte _08054928 - .4byte _08054FA2 - .4byte _08054A38 - .4byte _08054B58 - .4byte _0805457E - .4byte _08055090 - .4byte _080547E8 - .4byte _08055238 - .4byte _08054C18 - .4byte _08054A88 - .4byte _080546F8 - .4byte _08054DF0 - .4byte _0805464A - .4byte _08054A78 - .4byte _08054878 - .4byte _08054B98 - .4byte _0805512E - .4byte _080546F8 - .4byte _08055414 - .4byte _08054AF8 - .4byte _08054C78 - .4byte _0805452E - .4byte _0805536C - .4byte _08054768 - .4byte _080550DA - .4byte _08054DC6 - .4byte _080550E8 - .4byte _08054858 - .4byte _080545FA - .4byte _08054508 - .4byte _080547B8 - .4byte _08055104 - .4byte _08054898 - .4byte _08054BF8 - .4byte _080545CA - .4byte _08054508 - .4byte _08054778 - .4byte _08054BE8 - .4byte _08054B08 - .4byte _08054508 - .4byte _080553B2 - .4byte _08055388 - .4byte _08054798 - .4byte _08054AE8 - .4byte _08054BD8 - .4byte _08054EA6 - .4byte _080545FA - .4byte _08054768 - .4byte _08054508 - .4byte _08054EA6 - .4byte _08054738 - .4byte _080549F8 - .4byte _08054748 - .4byte _080545DA - .4byte _08054B48 - .4byte _08054838 - .4byte _08054FBE - .4byte _08054508 - .4byte _080550F6 - .4byte _08054FDA - .4byte _0805456E - .4byte _08054508 - .4byte _08054A48 - .4byte _08055166 - .4byte _08054508 - .4byte _080546C8 - .4byte _08054508 - .4byte _08054B38 - .4byte _08054C38 - .4byte _08054508 - .4byte _08054508 - .4byte _08054508 - .4byte _08054988 - .4byte _08054AC8 - .4byte _080548C8 - .4byte _080550BE - .4byte _08054C58 - .4byte _08054508 - .4byte _08054508 - .4byte _08054508 - .4byte _080548B8 - .4byte _08054508 - .4byte _08054508 - .4byte _08054508 - .4byte _080549D8 - .4byte _08054508 - .4byte _080553C0 - .4byte _08055468 - .4byte _08055246 - .4byte _08054A28 - .4byte _08054F5C - .4byte _08054758 - .4byte _08054508 - .4byte _08054508 - .4byte _080548C8 - .4byte _080548E8 - .4byte _08054908 - .4byte _080548A8 - .4byte _080549B8 - .4byte _080548D8 - .4byte _08054EC2 - .4byte _08054BA8 - .4byte _080548D8 - .4byte _0805463A - .4byte _08054508 - .4byte _08054A28 - .4byte _08054AF8 - .4byte _0805509E - .4byte _08054FCC - .4byte _08054D28 - .4byte _080547D8 - .4byte _08054508 - .4byte _08054C98 - .4byte _08054B28 - .4byte _08054508 - .4byte _08054DAA - .4byte _08054E98 - .4byte _08054CB8 - .4byte _08054A08 - .4byte _08054AC8 - .4byte _08054A98 - .4byte _08054C78 - .4byte _0805461A - .4byte _080553A4 - .4byte _08054788 - .4byte _08054508 - .4byte _0805520E - .4byte _08054DC6 - .4byte _08054E7C - .4byte _08054828 - .4byte _08054D0C - .4byte _0805521C - .4byte _08055066 - .4byte _0805456E - .4byte _08054878 - .4byte _08054C68 - .4byte _08054DE2 - .4byte _080546F8 - .4byte _08054768 - .4byte _08055182 - .4byte _08054D1A - .4byte _0805458E - .4byte _0805458E - .4byte _08054508 - .4byte _08054508 - .4byte _0805458E - .4byte _08054918 - .4byte _0805469C - .4byte _08055174 - .4byte _08054938 - .4byte _080545DA - .4byte _08054508 - .4byte _08055012 - .4byte _08054508 - .4byte _080545AE - .4byte _08054F24 - .4byte _08054B78 - .4byte _080552E0 - .4byte _080546D8 - .4byte _08055074 - .4byte _08055254 - .4byte _08054A28 - .4byte _08054C08 - .4byte _08054508 - .4byte _08054778 - .4byte _0805456E - .4byte _0805535E - .4byte _080547C8 - .4byte _080549A8 - .4byte _08055326 - .4byte _08054AA8 - .4byte _08054958 - .4byte _0805530A - .4byte _0805457E - .4byte _08054788 - .4byte _08054D3A - .4byte _08054EA6 - .4byte _080548C8 - .4byte _08054728 - .4byte _080547F8 - .4byte _08054BB8 - .4byte _0805513C - .4byte _0805463A - .4byte _0805463A - .4byte _080548F8 - .4byte _080552A8 - .4byte _080546B8 - .4byte _08054958 - .4byte _08054508 - .4byte _080553F8 - .4byte _08054CB8 - .4byte _08054978 - .4byte _08054778 - .4byte _08054508 - .4byte _080545FA - .4byte _0805456E - .4byte _080551C8 - .4byte _08054B88 - .4byte _08054E0C - .4byte _08054E60 - .4byte _08054508 - .4byte _08054D72 - .4byte _08054928 - .4byte _08054508 - .4byte _080550B0 - .4byte _08054A18 - .4byte _08054788 - .4byte _08055090 - .4byte _080550B0 - .4byte _08054508 - .4byte _08054DAA - .4byte _08054508 - .4byte _08054708 - .4byte _080547C8 - .4byte _08054508 - .4byte _08054508 - .4byte _080551E4 - .4byte _08054EFA - .4byte _080552D2 - .4byte _080551BA - .4byte _08055074 - .4byte _08054C38 - .4byte _080549E8 - .4byte _08054AD8 - .4byte _08054508 - .4byte _08054508 - .4byte _08054508 - .4byte _08054D48 - .4byte _08054680 - .4byte _08054808 - .4byte _08055492 - .4byte _08055406 - .4byte _08054DFE - .4byte _0805544C - .4byte _08054F32 - .4byte _08054664 - .4byte _080549B8 - .4byte _080553EA - .4byte _08054718 - .4byte _080545AE - .4byte _08055430 - .4byte _08054BC8 - .4byte _08054E1A - .4byte _08054CE2 - .4byte _08054848 - .4byte _08054768 - .4byte _08054998 - .4byte _0805457E - .4byte _0805457E - .4byte _08054508 - .4byte _08054508 - .4byte _08054E6E - .4byte _08054FA2 - .4byte _08054508 - .4byte _08054A88 - .4byte _0805454E - .4byte _08054508 - .4byte _08054AF8 - .4byte _08054512 - .4byte _080554C0 - .4byte _08054CF0 - .4byte _080554C0 - .4byte _080554C0 - .4byte _08054508 - .4byte _0805529A - .4byte _08054508 - .4byte _08055158 - .4byte _08054CA8 - .4byte _08055318 - .4byte _08054508 - .4byte _08054F24 - .4byte _08054958 - .4byte _08054F5C - .4byte _080552EE - .4byte _08054B68 - .4byte _08054CC6 - .4byte _08054F40 - .4byte _08055058 - .4byte _080552FC - .4byte _08055476 - .4byte _08055484 - .4byte _080553CE - .4byte _08055326 - .4byte _08055090 - .4byte _08054E44 - .4byte _080548C8 - .4byte _08054F08 - .4byte _0805543E - .4byte _08055350 - .4byte _08054C88 - .4byte _08054E36 - .4byte _08054F6A - .4byte _08055020 - .4byte _08055334 - .4byte _080551AC - .4byte _080545EA - .4byte _0805545A - .4byte _08054D9C - .4byte _08055342 - .4byte _08055082 - .4byte _080554AE - .4byte _08055262 - .4byte _0805522A - .4byte _08054F4E - .4byte _08054CFE - .4byte _080554C0 - .4byte _0805537A - .4byte _080554C0 - .4byte _080554C0 - .4byte _080554A0 - .4byte _080552C4 - .4byte _080554C0 - .4byte _08054F78 - .4byte _0805502E - .4byte _080554C0 - .4byte _0805503C -_08054508: - movs r3, 0x80 - lsls r3, 1 - mov r2, r9 - str r2, [sp] - b _080545B6 -_08054512: - mov r3, r9 - str r3, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - movs r3, 0x80 - b _080545BC -_08054520: - mov r0, r9 - str r0, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - movs r3, 0 - b _080545BC -_0805452E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058F04 - bl _080554BA -_0805453E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058270 - bl _080554BA -_0805454E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B968 - bl _080554BA -_0805455E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805816C - bl _080554BA -_0805456E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80581D0 - bl _080554BA -_0805457E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058B3C - bl _080554BA -_0805458E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A568 - bl _080554BA -_0805459E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057E1C - bl _080554BA -_080545AE: - movs r3, 0x80 - lsls r3, 1 - mov r1, r9 - str r1, [sp] -_080545B6: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 -_080545BC: - bl sub_8055640 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - bl _080554C2 -_080545CA: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80590D4 - bl _080554BA -_080545DA: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80595EC - bl _080554BA -_080545EA: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C138 - bl _080554BA -_080545FA: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B17C - bl _080554BA -_0805460A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057D20 - bl _080554BA -_0805461A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A2E8 - bl _080554BA -_0805462A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805889C - bl _080554BA -_0805463A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059E0C - bl _080554BA -_0805464A: - ldr r0, _08054660 - ldr r3, [r0] - mov r2, r9 - str r2, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_8058C98 - bl _080554BA - .align 2, 0 -_08054660: .4byte gUnknown_8106A50 -_08054664: - ldr r0, _0805467C - ldr r3, [r0] - mov r0, r9 - str r0, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_8058C98 - bl _080554BA - .align 2, 0 -_0805467C: .4byte gUnknown_8106A4C -_08054680: - ldr r0, _08054698 - ldr r3, [r0] - mov r1, r9 - str r1, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_805B3FC - bl _080554BA - .align 2, 0 -_08054698: .4byte gUnknown_8106A4C -_0805469C: - ldr r0, _080546B4 - ldr r3, [r0] - mov r2, r9 - str r2, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_805A5E8 - bl _080554BA - .align 2, 0 -_080546B4: .4byte gUnknown_8106A4C -_080546B8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B074 - bl _080554BA -_080546C8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059928 - bl _080554BA -_080546D8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058580 - bl _080554BA -_080546E8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058930 - bl _080554BA -_080546F8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058C00 - bl _080554BA -_08054708: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B324 - bl _080554BA -_08054718: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B910 - bl _080554BA -_08054728: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AE74 - bl _080554BA -_08054738: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059540 - bl _080554BA -_08054748: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80595A0 - bl _080554BA -_08054758: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059D00 - bl _080554BA -_08054768: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058FBC - bl _080554BA -_08054778: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059190 - bl _080554BA -_08054788: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058430 - bl _080554BA -_08054798: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059424 - bl _080554BA -_080547A8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057C88 - bl _080554BA -_080547B8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80583D8 - bl _080554BA -_080547C8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AC90 - bl _080554BA -_080547D8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A0A8 - bl _080554BA -_080547E8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058B84 - bl _080554BA -_080547F8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AECC - bl _080554BA -_08054808: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B454 - bl _080554BA -_08054818: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80582C4 - bl _080554BA -_08054828: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A408 - bl _080554BA -_08054838: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059714 - bl _080554BA -_08054848: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B808 - bl _080554BA -_08054858: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059050 - bl _080554BA -_08054868: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058478 - bl _080554BA -_08054878: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80576F8 - bl _080554BA -_08054888: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80576D0 - bl _080554BA -_08054898: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059080 - bl _080554BA -_080548A8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059D98 - bl _080554BA -_080548B8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059AF8 - bl _080554BA -_080548C8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059AA8 - bl _080554BA -_080548D8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059DA4 - bl _080554BA -_080548E8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059D48 - bl _080554BA -_080548F8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B028 - bl _080554BA -_08054908: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059D58 - bl _080554BA -_08054918: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A588 - bl _080554BA -_08054928: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058638 - bl _080554BA -_08054938: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A688 - bl _080554BA -_08054948: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057D7C - bl _080554BA -_08054958: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B0BC - bl _080554BA -_08054968: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057A0C - bl _080554BA -_08054978: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B164 - bl _080554BA -_08054988: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059A18 - bl _080554BA -_08054998: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B884 - bl _080554BA -_080549A8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805ACD8 - bl _080554BA -_080549B8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80582D4 - bl _080554BA -_080549C8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057954 - bl _080554BA -_080549D8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059B94 - bl _080554BA -_080549E8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B3B4 - bl _080554BA -_080549F8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059588 - bl _080554BA -_08054A08: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A2B0 - bl _080554BA -_08054A18: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B2FC - bl _080554BA -_08054A28: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059CD8 - bl _080554BA -_08054A38: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058A7C - bl _080554BA -_08054A48: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80598CC - bl _080554BA -_08054A58: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057F7C - bl _080554BA -_08054A68: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057ED0 - bl _080554BA -_08054A78: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058CEC - bl _080554BA -_08054A88: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058BF0 - bl _080554BA -_08054A98: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A2C8 - bl _080554BA -_08054AA8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AD34 - bl _080554BA -_08054AB8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057C68 - bl _080554BA -_08054AC8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059A2C - bl _080554BA -_08054AD8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80586DC - bl _080554BA -_08054AE8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805946C - bl _080554BA -_08054AF8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058E5C - bl _080554BA -_08054B08: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80591E4 - bl _080554BA -_08054B18: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057BC4 - bl _080554BA -_08054B28: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A210 - bl _080554BA -_08054B38: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059988 - bl _080554BA -_08054B48: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805968C - bl _080554BA -_08054B58: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058AAC - bl _080554BA -_08054B68: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BE90 - bl _080554BA -_08054B78: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80588B8 - bl _080554BA -_08054B88: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B214 - bl _080554BA -_08054B98: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058D38 - bl _080554BA -_08054BA8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059DC4 - bl _080554BA -_08054BB8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AF30 - bl _080554BA -_08054BC8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B7FC - bl _080554BA -_08054BD8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80594E0 - bl _080554BA -_08054BE8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80591D8 - bl _080554BA -_08054BF8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80590C8 - bl _080554BA -_08054C08: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AB48 - bl _080554BA -_08054C18: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805768C - bl _080554BA -_08054C28: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057F24 - bl _080554BA -_08054C38: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80599EC - bl _080554BA -_08054C48: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80589D4 - bl _080554BA -_08054C58: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059AC4 - bl _080554BA -_08054C68: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A4D4 - bl _080554BA -_08054C78: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058EE0 - bl _080554BA -_08054C88: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BD70 - bl _080554BA -_08054C98: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A120 - bl _080554BA -_08054CA8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BA50 - bl _080554BA -_08054CB8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A2A0 - b _080554BA -_08054CC6: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058A08 - b _080554BA -_08054CD4: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805815C - b _080554BA -_08054CE2: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805834C - b _080554BA -_08054CF0: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805836C - b _080554BA -_08054CFE: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C3DC - b _080554BA -_08054D0C: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A450 - b _080554BA -_08054D1A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A55C - b _080554BA -_08054D28: - movs r0, 0 - str r0, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059FC8 - b _080554BA -_08054D3A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AE3C - b _080554BA -_08054D48: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B3E0 - b _080554BA -_08054D56: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80582EC - b _080554BA -_08054D64: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805867C - b _080554BA -_08054D72: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B2E4 - b _080554BA -_08054D80: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057720 - b _080554BA -_08054D8E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057748 - b _080554BA -_08054D9C: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C1BC - b _080554BA -_08054DAA: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A23C - b _080554BA -_08054DB8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057634 - b _080554BA -_08054DC6: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A3DC - b _080554BA -_08054DD4: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057FF4 - b _080554BA -_08054DE2: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A4FC - b _080554BA -_08054DF0: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058C48 - b _080554BA -_08054DFE: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B5F4 - b _080554BA -_08054E0C: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B220 - b _080554BA -_08054E1A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80578EC - b _080554BA -_08054E28: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80588A8 - b _080554BA -_08054E36: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BD7C - b _080554BA -_08054E44: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BC70 - b _080554BA -_08054E52: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80587E8 - b _080554BA -_08054E60: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B264 - b _080554BA -_08054E6E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B8B0 - b _080554BA -_08054E7C: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A3FC - b _080554BA -_08054E8A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057FCC - b _080554BA -_08054E98: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A258 - b _080554BA -_08054EA6: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059528 - b _080554BA -_08054EB4: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057E6C - b _080554BA -_08054EC2: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059DB4 - b _080554BA -_08054ED0: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058838 - b _080554BA -_08054EDE: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057A98 - b _080554BA -_08054EEC: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057974 - b _080554BA -_08054EFA: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B388 - b _080554BA -_08054F08: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BC98 - b _080554BA -_08054F16: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80584C0 - b _080554BA -_08054F24: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BB74 - b _080554BA -_08054F32: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B668 - b _080554BA -_08054F40: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BEA0 - b _080554BA -_08054F4E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C2AC - b _080554BA -_08054F5C: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059CF0 - b _080554BA -_08054F6A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BF34 - b _080554BA -_08054F78: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C474 - b _080554BA -_08054F86: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80585CC - b _080554BA -_08054F94: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80582AC - b _080554BA -_08054FA2: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058A54 - b _080554BA -_08054FB0: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805777C - b _080554BA -_08054FBE: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059790 - b _080554BA -_08054FCC: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059F38 - b _080554BA -_08054FDA: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805983C - b _080554BA -_08054FE8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057788 - b _080554BA -_08054FF6: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057824 - b _080554BA -_08055004: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805825C - b _080554BA -_08055012: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A6C8 - b _080554BA -_08055020: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BF40 - b _080554BA -_0805502E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C480 - b _080554BA -_0805503C: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C48C - b _080554BA -_0805504A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805810C - b _080554BA -_08055058: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BEAC - b _080554BA -_08055066: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A4C0 - b _080554BA -_08055074: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AAD0 - b _080554BA -_08055082: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C1F8 - b _080554BA -_08055090: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B314 - b _080554BA -_0805509E: - movs r0, 0 - str r0, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059E54 - b _080554BA -_080550B0: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B2F0 - b _080554BA -_080550BE: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059AB8 - b _080554BA -_080550CC: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058858 - b _080554BA -_080550DA: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058770 - b _080554BA -_080550E8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059004 - b _080554BA -_080550F6: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80597F0 - b _080554BA -_08055104: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059060 - b _080554BA -_08055112: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058548 - b _080554BA -_08055120: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80588F4 - b _080554BA -_0805512E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058D44 - b _080554BA -_0805513C: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AFA4 - b _080554BA -_0805514A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057E28 - b _080554BA -_08055158: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BA44 - b _080554BA -_08055166: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805991C - b _080554BA -_08055174: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A640 - b _080554BA -_08055182: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A508 - b _080554BA -_08055190: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805785C - b _080554BA -_0805519E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057D9C - b _080554BA -_080551AC: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C128 - b _080554BA -_080551BA: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B3A8 - b _080554BA -_080551C8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B208 - b _080554BA -_080551D6: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058A18 - b _080554BA -_080551E4: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B37C - b _080554BA -_080551F2: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057948 - b _080554BA -_08055200: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057CD0 - b _080554BA -_0805520E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A394 - b _080554BA -_0805521C: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A464 - b _080554BA -_0805522A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C2A0 - b _080554BA -_08055238: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058BE0 - b _080554BA -_08055246: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059C8C - b _080554BA -_08055254: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AAE0 - b _080554BA -_08055262: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C288 - b _080554BA -_08055270: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805783C - b _080554BA -_0805527E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80578FC - b _080554BA -_0805528C: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057BB4 - b _080554BA -_0805529A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B9E8 - b _080554BA -_080552A8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B038 - b _080554BA -_080552B6: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_80578A4 - b _080554BA -_080552C4: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C468 - b _080554BA -_080552D2: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058234 - b _080554BA -_080552E0: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A85C - b _080554BA -_080552EE: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BD88 - b _080554BA -_080552FC: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BB98 - b _080554BA -_0805530A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AD54 - b _080554BA -_08055318: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BB64 - b _080554BA -_08055326: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AD04 - b _080554BA -_08055334: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C080 - b _080554BA -_08055342: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C1E4 - b _080554BA -_08055350: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BED4 - b _080554BA -_0805535E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805AB54 - b _080554BA -_0805536C: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058F58 - b _080554BA -_0805537A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C3F8 - b _080554BA -_08055388: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059340 - b _080554BA -_08055396: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057E50 - b _080554BA -_080553A4: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805A31C - b _080554BA -_080553B2: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059290 - b _080554BA -_080553C0: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059BAC - b _080554BA -_080553CE: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BBA8 - b _080554BA -_080553DC: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805805C - b _080554BA -_080553EA: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B734 - b _080554BA -_080553F8: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B0D0 - b _080554BA -_08055406: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B53C - b _080554BA -_08055414: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8058DBC - b _080554BA -_08055422: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8057BEC - b _080554BA -_08055430: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B740 - b _080554BA -_0805543E: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BD64 - b _080554BA -_0805544C: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B618 - b _080554BA -_0805545A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C1B0 - b _080554BA -_08055468: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_8059C80 - b _080554BA -_08055476: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BEB8 - b _080554BA -_08055484: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805BEC8 - b _080554BA -_08055492: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805B464 - b _080554BA -_080554A0: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C45C - b _080554BA -_080554AE: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - mov r3, r9 - bl sub_805C208 -_080554BA: - lsls r0, 24 - lsrs r4, r0, 24 - b _080554C2 -_080554C0: - movs r4, 0 -_080554C2: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _080555A2 - ldr r0, [sp, 0x20] - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080554E6 - ldr r3, [sp, 0x20] - ldr r0, [r3, 0x70] - adds r0, 0x46 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_806CE68 -_080554E6: - cmp r4, 0 - bne _08055510 - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08055530 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08055530 - ldr r1, [sp, 0x24] - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _08055530 - mov r2, r10 - strb r2, [r6] - b _08055530 -_08055510: - mov r0, r8 - bl sub_8057088 - lsls r0, 24 - cmp r0, 0 - beq _08055530 - adds r0, r7, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _08055530 - ldr r1, _08055614 - movs r0, 0x1 - strb r0, [r1] -_08055530: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08055548 - ldr r3, [sp, 0x24] - movs r0, 0xAC - lsls r0, 1 - adds r1, r3, r0 - movs r0, 0x1 - strb r0, [r1] -_08055548: - ldr r1, [sp, 0x18] - cmp r1, 0x89 - beq _08055568 - adds r0, r7, 0 - bl sub_8055DDC - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_8069F9C - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_806A120 -_08055568: - ldr r7, [sp, 0x1C] -_0805556A: - ldr r2, [sp, 0x14] - adds r2, 0x1 - str r2, [sp, 0x14] -_08055570: - ldr r3, [sp, 0x14] - cmp r3, 0x3F - bgt _080555A2 - movs r0, 0 - str r0, [sp, 0x20] - lsls r0, r3, 2 - ldr r1, [sp, 0x10] - adds r0, r1 - ldr r5, [r0] - movs r2, 0x1 - str r2, [sp, 0x28] - movs r3, 0 - str r3, [sp, 0x2C] - movs r0, 0 - str r0, [sp, 0x30] - cmp r5, 0 - beq _080555A2 - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080555A2 - bl _08053724 -_080555A2: - bl sub_8044B28 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _08055604 - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080555D6 - ldr r0, [r7, 0x70] - movs r2, 0xAA - lsls r2, 1 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - beq _080555D6 - strb r4, [r1] - adds r0, r7, 0 - adds r1, r7, 0 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_080555D6: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08055604 - ldr r0, [r7, 0x70] - ldr r3, _08055618 - adds r1, r0, r3 - ldrb r0, [r1] - cmp r0, 0 - beq _08055604 - movs r0, 0 - strb r0, [r1] - ldr r1, _0805561C - ldr r2, [r1] - str r0, [sp] - str r0, [sp, 0x4] - adds r0, r7, 0 - adds r1, r7, 0 - movs r3, 0x2 - bl sub_8076E20 -_08055604: - add sp, 0x48 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08055614: .4byte gUnknown_202F222 -_08055618: .4byte 0x00000155 -_0805561C: .4byte gUnknown_8106A50 - thumb_func_end sub_8053704 - - thumb_func_start sub_8055620 -sub_8055620: - push {r4,lr} - sub sp, 0x4 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08055636 - movs r0, 0x1 -_08055636: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8055620 - - thumb_func_start sub_8055640 -sub_8055640: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - adds r6, r0, 0 - mov r10, r1 - adds r5, r2, 0 - mov r9, r3 - ldr r7, [sp, 0x44] - adds r1, r5, 0 - bl sub_8071A1C - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8071A44 - mov r8, r0 - adds r0, r5, 0 - bl sub_8092C24 - str r0, [sp] - add r0, sp, 0x14 - str r0, [sp, 0x4] - mov r0, r9 - str r0, [sp, 0x8] - ldrh r0, [r5, 0x2] - str r0, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - adds r0, r6, 0 - mov r1, r10 - adds r2, r4, 0 - mov r3, r8 - bl sub_806EAF4 - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - str r0, [sp] - adds r0, r6, 0 - mov r1, r10 - adds r2, r5, 0 - add r3, sp, 0x14 - bl sub_8055728 - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8055640 - - thumb_func_start sub_80556BC -sub_80556BC: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x24 - adds r6, r0, 0 - mov r9, r1 - adds r4, r2, 0 - adds r5, r3, 0 - ldr r7, [sp, 0x40] - lsls r4, 24 - lsrs r4, 24 - adds r1, r5, 0 - bl sub_8071A44 - mov r8, r0 - adds r0, r5, 0 - bl sub_8092C24 - str r0, [sp] - add r0, sp, 0x14 - str r0, [sp, 0x4] - str r7, [sp, 0x8] - ldrh r0, [r5, 0x2] - str r0, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - adds r0, r6, 0 - mov r1, r9 - adds r2, r4, 0 - mov r3, r8 - bl sub_806EAF4 - adds r0, r5, 0 - ldr r1, [sp, 0x44] - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - str r0, [sp] - adds r0, r6, 0 - mov r1, r9 - adds r2, r5, 0 - add r3, sp, 0x14 - bl sub_8055728 - add sp, 0x24 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80556BC - - thumb_func_start sub_8055728 -sub_8055728: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - mov r8, r3 - ldr r0, [sp, 0x30] - lsls r0, 16 - asrs r0, 16 - mov r9, r0 - movs r7, 0x1 - str r7, [sp] - adds r0, r6, 0 - movs r3, 0x1 - bl sub_8056B34 - lsls r0, 24 - cmp r0, 0 - beq _080557C0 - movs r0, 0 - mov r10, r0 - ldrh r1, [r5, 0x2] - movs r0, 0x9D - lsls r0, 1 - cmp r1, r0 - bne _08055768 - movs r1, 0x1 - mov r10, r1 -_08055768: - adds r0, r4, 0 - movs r1, 0x2E - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08055790 - ldr r0, _080557AC - ldr r1, [r0] - ldr r0, _080557B0 - adds r2, r1, r0 - ldr r0, _080557B4 - strh r0, [r2] - ldr r2, _080557B8 - adds r0, r1, r2 - str r4, [r0] - ldr r0, _080557BC - adds r1, r0 - ldrh r0, [r4, 0x26] - str r0, [r1] -_08055790: - str r7, [sp] - mov r1, r9 - str r1, [sp, 0x4] - str r7, [sp, 0x8] - movs r0, 0 - str r0, [sp, 0xC] - adds r0, r6, 0 - adds r1, r4, 0 - mov r2, r8 - mov r3, r10 - bl sub_806D010 - b _08055826 - .align 2, 0 -_080557AC: .4byte gUnknown_203B418 -_080557B0: .4byte 0x00000662 -_080557B4: .4byte 0x000003e7 -_080557B8: .4byte 0x00017b34 -_080557BC: .4byte 0x00017b40 -_080557C0: - ldr r0, _08055808 - ldr r1, [r4, 0x70] - movs r2, 0 - bl sub_80708B4 - adds r0, r6, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _08055814 - adds r0, r4, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _08055814 - ldr r0, _0805580C - movs r3, 0x1 - negs r3, r3 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_803ED30 - ldr r0, _08055810 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_805232C - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8042238 - b _08055820 - .align 2, 0 -_08055808: .4byte gUnknown_202DFE8 -_0805580C: .4byte 0x0000270f -_08055810: .4byte gUnknown_80F9688 -_08055814: - ldr r0, _08055834 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08055820: - movs r0, 0x1 - mov r2, r8 - strb r0, [r2, 0xF] -_08055826: - mov r1, r8 - ldrb r0, [r1, 0xF] - cmp r0, 0 - beq _08055838 - movs r0, 0 - b _08055854 - .align 2, 0 -_08055834: .4byte gUnknown_80F9688 -_08055838: - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08055850 - ldr r0, [r4, 0x70] - movs r2, 0xAD - lsls r2, 1 - adds r1, r0, r2 - movs r0, 0x1 - strb r0, [r1] -_08055850: - mov r1, r8 - ldr r0, [r1] -_08055854: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8055728 - - thumb_func_start sub_8055864 -sub_8055864: - push {r4-r7,lr} - sub sp, 0x20 - adds r4, r0, 0 - adds r7, r1, 0 - adds r5, r2, 0 - adds r6, r3, 0 - adds r1, r5, 0 - bl sub_8071A1C - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - add r0, sp, 0x10 - str r0, [sp] - adds r0, r4, 0 - adds r1, r7, 0 - adds r3, r6, 0 - bl sub_806F2BC - adds r0, r5, 0 - ldr r1, [sp, 0x34] - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - movs r5, 0x1 - str r5, [sp] - str r0, [sp, 0x4] - str r5, [sp, 0x8] - movs r0, 0 - str r0, [sp, 0xC] - adds r0, r4, 0 - adds r1, r7, 0 - add r2, sp, 0x10 - movs r3, 0 - bl sub_806D010 - add r0, sp, 0x10 - ldrb r0, [r0, 0xF] - cmp r0, 0 - beq _080558BA - movs r0, 0 - b _080558D2 -_080558BA: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080558D0 - ldr r0, [r7, 0x70] - movs r1, 0xAD - lsls r1, 1 - adds r0, r1 - strb r5, [r0] -_080558D0: - ldr r0, [sp, 0x10] -_080558D2: - add sp, 0x20 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8055864 - - thumb_func_start sub_80558DC -sub_80558DC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - movs r4, 0x1 - movs r2, 0 - mov r9, r2 - ldr r1, [r1, 0x70] - mov r10, r1 - bl sub_8092B00 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x1 - beq _08055902 - cmp r1, 0x7 - bne _08055906 -_08055902: - movs r5, 0x1 - mov r9, r5 -_08055906: - ldr r6, _08055944 - mov r8, r6 - mov r3, r10 - adds r3, 0x5C - ldr r7, _08055948 - mov r12, r7 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - str r0, [sp, 0x10] - adds r2, r3, 0 -_0805591C: - mov r0, sp - mov r1, r8 - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - ldr r1, [r1] - str r1, [r0] - mov r0, r9 - cmp r0, 0 - beq _0805594C - ldrb r0, [r2] - cmp r0, 0xE - bne _0805594C - mov r0, r10 - adds r0, 0xF5 - ldrb r0, [r0] - cmp r0, 0 - bne _0805594C - movs r0, 0 - b _0805595A - .align 2, 0 -_08055944: .4byte gUnknown_81069BC -_08055948: .4byte gUnknown_80F522C -_0805594C: - ldrb r0, [r2] - lsls r0, 1 - ldr r1, [sp, 0x10] - adds r0, r1 - add r0, r12 - movs r5, 0 - ldrsh r0, [r0, r5] -_0805595A: - lsls r0, 2 - add r0, sp - ldr r0, [r0] - muls r4, r0 - cmp r4, 0 - beq _0805596E - adds r2, 0x1 - adds r0, r3, 0x1 - cmp r2, r0 - ble _0805591C -_0805596E: - adds r0, r4, 0 - cmp r0, 0 - beq _08055976 - movs r0, 0x1 -_08055976: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80558DC - - thumb_func_start sub_8055988 -sub_8055988: - push {r4,lr} - adds r2, r0, 0 - adds r4, r1, 0 - cmp r2, r4 - beq _080559D4 - movs r0, 0x4 - ldrsh r1, [r2, r0] - movs r3, 0x4 - ldrsh r0, [r4, r3] - subs r1, r0 - cmp r1, 0 - bge _080559A2 - negs r1, r1 -_080559A2: - cmp r1, 0x1 - bgt _080559D4 - movs r0, 0x6 - ldrsh r1, [r2, r0] - movs r3, 0x6 - ldrsh r0, [r4, r3] - subs r1, r0 - cmp r1, 0 - bge _080559B6 - negs r1, r1 -_080559B6: - cmp r1, 0x1 - bgt _080559D4 - adds r0, r4, 0x4 - adds r1, r2, 0x4 - bl sub_80983D8 - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_8071138 - lsls r0, 24 - cmp r0, 0 - beq _080559D4 - movs r0, 0x1 - b _080559D6 -_080559D4: - movs r0, 0 -_080559D6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8055988 - - thumb_func_start sub_80559DC -sub_80559DC: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, [r5, 0x70] - adds r0, r5, 0x4 - adds r1, 0x4 - bl sub_80983D8 - adds r1, r0, 0 - movs r2, 0x7 - ands r0, r2 - adds r4, 0x46 - strb r0, [r4] - adds r0, r5, 0 - bl sub_806CE68 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80559DC - - thumb_func_start sub_8055A00 -sub_8055A00: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x34 - adds r5, r0, 0 - mov r9, r1 - str r2, [sp, 0x20] - str r3, [sp, 0x24] - ldr r0, [r5, 0x70] - mov r10, r0 - mov r7, r9 - cmp r7, 0x3 - ble _08055A22 - movs r0, 0 - b _08055DB4 -_08055A22: - movs r0, 0xBC - lsls r0, 1 - add r0, r10 - movs r1, 0 - movs r2, 0 - strh r2, [r0] - ldr r0, _08055A4C - add r0, r10 - strb r1, [r0] - mov r0, r10 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x1 - bne _08055A58 - ldr r0, _08055A50 - adds r1, r5, 0 - bl sub_8045B94 - ldr r0, _08055A54 - b _08055A8A - .align 2, 0 -_08055A4C: .4byte 0x00000159 -_08055A50: .4byte gUnknown_202DF98 -_08055A54: .4byte gUnknown_80FC714 -_08055A58: - cmp r0, 0x7 - bne _08055A74 - ldr r0, _08055A6C - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08055A70 - b _08055A8A - .align 2, 0 -_08055A6C: .4byte gUnknown_202DF98 -_08055A70: .4byte gUnknown_80FC718 -_08055A74: - mov r0, r10 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x4 - bne _08055AA0 - ldr r0, _08055A98 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08055A9C -_08055A8A: - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - movs r0, 0 - b _08055DB4 - .align 2, 0 -_08055A98: .4byte gUnknown_202DF98 -_08055A9C: .4byte gUnknown_80FC6A8 -_08055AA0: - ldr r0, _08055B24 - strb r1, [r0] - ldr r0, _08055B28 - str r2, [r0] - ldr r0, _08055B2C - strb r1, [r0] - adds r0, r7, 0x1 - movs r2, 0 - movs r6, 0x3 - movs r1, 0xC0 - lsls r1, 1 - add r1, r10 -_08055AB8: - strh r2, [r1] - subs r1, 0x2 - subs r6, 0x1 - cmp r6, 0 - bge _08055AB8 - movs r6, 0 - movs r3, 0x1 - adds r7, r0, 0 - cmp r7, 0x3 - bgt _08055B06 - lsls r2, r7, 3 - mov r1, r10 - adds r0, r1, r2 - movs r4, 0x8C - lsls r4, 1 - adds r0, r4 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08055B06 - movs r0, 0x2 - mov r8, r0 - adds r0, r2, r4 - mov r1, r10 - adds r2, r0, r1 -_08055AEC: - adds r6, 0x1 - cmp r6, 0x3 - bgt _08055B06 - adds r3, 0x1 - adds r2, 0x8 - adds r7, 0x1 - cmp r7, 0x3 - bgt _08055B06 - ldrb r1, [r2] - mov r0, r8 - ands r0, r1 - cmp r0, 0 - bne _08055AEC -_08055B06: - movs r0, 0 - str r0, [sp, 0x28] - cmp r3, 0x1 - ble _08055B12 - movs r1, 0x1 - str r1, [sp, 0x28] -_08055B12: - mov r7, r9 - lsls r0, r7, 3 - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - add r0, r10 - mov r8, r0 - b _08055CB4 - .align 2, 0 -_08055B24: .4byte gUnknown_202F222 -_08055B28: .4byte gUnknown_202F208 -_08055B2C: .4byte gUnknown_202F221 -_08055B30: - mov r1, r8 - ldrh r0, [r1, 0x2] - cmp r0, 0x19 - beq _08055B3C - cmp r0, 0xE3 - bne _08055B4E -_08055B3C: - adds r0, r5, 0 - bl sub_8070B28 - lsls r0, 24 - cmp r0, 0 - bne _08055B5E - adds r0, r5, 0 - movs r1, 0x1 - b _08055B52 -_08055B4E: - adds r0, r5, 0 - movs r1, 0 -_08055B52: - bl sub_8070D04 - lsls r0, 24 - cmp r0, 0 - beq _08055B5E - b _08055CCE -_08055B5E: - ldr r0, _08055B9C - ldrb r0, [r0] - cmp r0, 0 - beq _08055B68 - b _08055CCE -_08055B68: - ldrb r1, [r6] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08055B74 - b _08055C82 -_08055B74: - movs r2, 0x1 - movs r0, 0 - str r0, [sp, 0x2C] - adds r0, r5, 0 - adds r1, r6, 0 - str r2, [sp, 0x30] - bl sub_80570AC - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r0, [r6, 0x4] - ldr r2, [sp, 0x30] - cmp r0, 0 - beq _08055BA0 - cmp r4, 0 - bne _08055BBA - movs r1, 0x1 - str r1, [sp, 0x2C] - b _08055BBA - .align 2, 0 -_08055B9C: .4byte gUnknown_202F221 -_08055BA0: - cmp r4, 0 - bne _08055BBA - ldr r0, _08055C08 - adds r1, r6, 0 - movs r2, 0 - bl sub_80928C0 - ldr r0, _08055C0C - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - movs r2, 0 -_08055BBA: - cmp r2, 0 - beq _08055C82 - ldr r0, _08055C10 - ldr r0, [r0] - mov r9, r0 - ldr r0, _08055C14 - add r0, r10 - strb r4, [r0] - ldrh r0, [r6, 0x2] - cmp r0, 0xE5 - bne _08055C20 - ldr r0, [r6] - ldr r1, [r6, 0x4] - str r0, [sp, 0x8] - str r1, [sp, 0xC] - adds r0, r5, 0 - bl sub_8057144 - lsls r0, 16 - ldr r2, _08055C18 - ldr r1, [sp, 0x8] - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x8] - ldr r0, _08055C08 - add r1, sp, 0x8 - movs r2, 0 - bl sub_80928C0 - ldr r0, _08055C1C - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - ldr r0, [sp, 0x28] - str r0, [sp] - add r1, sp, 0x8 - str r1, [sp, 0x4] - b _08055C26 - .align 2, 0 -_08055C08: .4byte gUnknown_202DE58 -_08055C0C: .4byte gUnknown_80F93C8 -_08055C10: .4byte gUnknown_202F208 -_08055C14: .4byte 0x00000159 -_08055C18: .4byte 0x0000ffff -_08055C1C: .4byte gUnknown_80FD2DC -_08055C20: - ldr r0, [sp, 0x28] - str r0, [sp] - str r6, [sp, 0x4] -_08055C26: - adds r0, r5, 0 - ldr r1, [sp, 0x20] - ldr r2, [sp, 0x24] - ldr r3, [sp, 0x54] - bl sub_8055FA0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, [sp, 0x2C] - cmp r1, 0 - beq _08055C56 - cmp r0, 0 - beq _08055C56 - ldrb r1, [r6, 0x1] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08055C50 - movs r0, 0xFB - ands r0, r1 - b _08055C54 -_08055C50: - movs r0, 0x8 - orrs r0, r1 -_08055C54: - strb r0, [r6, 0x1] -_08055C56: - ldr r0, _08055C70 - ldr r0, [r0] - cmp r9, r0 - bne _08055C82 - ldr r0, [sp, 0x24] - cmp r0, 0 - bne _08055C78 - ldr r0, _08055C74 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _08055C82 - .align 2, 0 -_08055C70: .4byte gUnknown_202F208 -_08055C74: .4byte gUnknown_80FC690 -_08055C78: - ldr r0, _08055DC4 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_08055C82: - movs r0, 0x1 - bl sub_804178C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08055CCE - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08055CCE - movs r1, 0x8 - add r8, r1 - adds r7, 0x1 - cmp r7, 0x3 - bgt _08055CCE - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08055CCE -_08055CB4: - mov r6, r8 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08055CCE - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08055CCE - b _08055B30 -_08055CCE: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08055D54 - movs r6, 0 -_08055CDC: - lsls r0, r6, 1 - movs r1, 0xBD - lsls r1, 1 - add r1, r10 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - beq _08055D4E - add r4, sp, 0x10 - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_8092AA8 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08055D48 - ldrh r0, [r4, 0x2] - cmp r0, 0xE5 - bne _08055D36 - ldr r0, [sp, 0x10] - ldr r1, [sp, 0x14] - str r0, [sp, 0x18] - str r1, [sp, 0x1C] - adds r0, r5, 0 - bl sub_8057144 - lsls r0, 16 - ldr r2, _08055DC8 - ldr r1, [sp, 0x18] - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x18] - add r4, sp, 0x18 - ldr r0, _08055DCC - adds r1, r4, 0 - movs r2, 0 - bl sub_80928C0 - ldr r0, _08055DD0 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_08055D36: - ldr r1, [sp, 0x28] - str r1, [sp] - str r4, [sp, 0x4] - adds r0, r5, 0 - movs r1, 0 - ldr r2, [sp, 0x24] - ldr r3, [sp, 0x54] - bl sub_8055FA0 -_08055D48: - movs r0, 0x1 - bl sub_804178C -_08055D4E: - adds r6, 0x1 - cmp r6, 0x3 - ble _08055CDC -_08055D54: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08055DB2 - adds r0, r5, 0 - bl sub_8071DA4 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08055DB2 - ldr r1, _08055DD4 - ldrb r0, [r1] - cmp r0, 0 - beq _08055DB2 - movs r0, 0 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08055DB2 - ldr r4, [r5, 0x70] - ldr r1, _08055DD8 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r3, r0, 0 - movs r0, 0 - str r0, [sp] - adds r0, r5, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_8076090 - adds r4, 0xFB - ldrb r0, [r4] - cmp r0, 0 - bne _08055DB2 - movs r0, 0x1 - strb r0, [r4] -_08055DB2: - movs r0, 0x1 -_08055DB4: - add sp, 0x34 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08055DC4: .4byte gUnknown_80FC6A4 -_08055DC8: .4byte 0x0000ffff -_08055DCC: .4byte gUnknown_202DE58 -_08055DD0: .4byte gUnknown_80FD2DC -_08055DD4: .4byte gUnknown_202F222 -_08055DD8: .4byte gUnknown_80F4E70 - thumb_func_end sub_8055A00 - - thumb_func_start sub_8055DDC -sub_8055DDC: - push {r4-r7,lr} - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08055DEC - b _08055F62 -_08055DEC: - ldr r6, [r4, 0x70] - movs r7, 0xBC - lsls r7, 1 - adds r5, r6, r7 - ldrh r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08055E10 - ldr r0, _08055F68 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - adds r0, r4, 0 - adds r1, r4, 0 - bl sub_80769CC -_08055E10: - ldrh r1, [r5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08055E2C - ldr r0, _08055F6C - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - adds r0, r4, 0 - adds r1, r4, 0 - bl sub_80769CC -_08055E2C: - ldrh r1, [r5] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08055E48 - ldr r0, _08055F70 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - adds r0, r4, 0 - adds r1, r4, 0 - bl sub_80769CC -_08055E48: - ldrh r1, [r5] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08055E66 - ldr r0, _08055F74 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8077780 -_08055E66: - ldrh r1, [r5] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08055E84 - ldr r0, _08055F78 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8077780 -_08055E84: - ldrh r1, [r5] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08055EA2 - ldr r0, _08055F7C - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80763F8 -_08055EA2: - ldrh r1, [r5] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08055EC0 - ldr r0, _08055F80 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80763F8 -_08055EC0: - ldrh r1, [r5] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08055EEA - ldr r0, _08055F84 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - ldr r1, _08055F88 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r2, r0, 0 - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8075C58 -_08055EEA: - ldrh r1, [r5] - movs r0, 0x80 - lsls r0, 1 - ands r0, r1 - cmp r0, 0 - beq _08055F0C - ldr r0, _08055F8C - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_8076210 -_08055F0C: - ldrh r1, [r5] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _08055F2C - ldr r0, _08055F90 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_807614C -_08055F2C: - adds r5, r6, r7 - ldrh r1, [r5] - movs r0, 0x80 - lsls r0, 3 - ands r0, r1 - cmp r0, 0 - beq _08055F5E - ldr r0, _08055F94 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08055F98 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - adds r0, r4, 0 - bl sub_80428A0 - ldr r0, _08055F9C - ldrh r1, [r0] - adds r0, r6, 0 - adds r0, 0xFA - strb r1, [r0] -_08055F5E: - movs r0, 0 - strh r0, [r5] -_08055F62: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08055F68: .4byte gUnknown_80FEEA4 -_08055F6C: .4byte gUnknown_80FEEC8 -_08055F70: .4byte gUnknown_80FEEEC -_08055F74: .4byte gUnknown_80FEF0C -_08055F78: .4byte gUnknown_80FEF30 -_08055F7C: .4byte gUnknown_80FEF4C -_08055F80: .4byte gUnknown_80FEF50 -_08055F84: .4byte gUnknown_80FEF54 -_08055F88: .4byte gUnknown_80F4E74 -_08055F8C: .4byte gUnknown_80FEF74 -_08055F90: .4byte gUnknown_80FEF98 -_08055F94: .4byte gUnknown_202DF98 -_08055F98: .4byte gUnknown_80FEFD0 -_08055F9C: .4byte gUnknown_80F5004 - thumb_func_end sub_8055DDC - - thumb_func_start sub_8055FA0 -sub_8055FA0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x130 - adds r5, r0, 0 - adds r6, r1, 0 - mov r10, r2 - str r3, [sp, 0x120] - ldr r7, [sp, 0x154] - movs r0, 0 - mov r8, r0 - str r0, [sp, 0xC] - movs r0, 0x1 - bl sub_804178C - ldrh r1, [r7, 0x2] - movs r0, 0xA5 - lsls r0, 1 - cmp r1, r0 - bne _08056010 - movs r0, 0x69 - bl sub_8084100 - ldr r1, _08056004 - str r0, [r1] - add r4, sp, 0x110 - ldr r1, _08056008 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0] - adds r0, r4, 0 - bl sub_8092A88 - ldrb r1, [r7] - add r0, sp, 0x110 - strb r1, [r0] - ldrb r0, [r7, 0x1] - strb r0, [r4, 0x1] - ldr r0, _0805600C - ldr r2, [r0] - mov r1, r10 - str r1, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - mov r0, r8 - str r0, [sp, 0x8] - b _08056056 - .align 2, 0 -_08056004: .4byte gUnknown_202F228 -_08056008: .4byte gUnknown_80F59C8 -_0805600C: .4byte gUnknown_80FECBC -_08056010: - cmp r1, 0x77 - bne _08056068 - ldr r0, _08056108 - ldr r0, [r0] - ldr r1, _0805610C - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - bge _08056026 - movs r0, 0 -_08056026: - cmp r0, 0x4A - ble _0805602C - movs r0, 0x4A -_0805602C: - add r4, sp, 0x118 - ldr r1, _08056110 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0] - adds r0, r4, 0 - bl sub_8092A88 - ldrb r1, [r7] - add r0, sp, 0x118 - strb r1, [r0] - ldrb r0, [r7, 0x1] - strb r0, [r4, 0x1] - ldr r0, _08056114 - ldr r2, [r0] - mov r0, r10 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - mov r1, r8 - str r1, [sp, 0x8] -_08056056: - adds r0, r5, 0 - adds r1, r7, 0 - add r3, sp, 0xC - bl sub_8056468 - movs r0, 0x1 - bl sub_804178C - adds r7, r4, 0 -_08056068: - movs r2, 0 - str r2, [sp, 0x128] - adds r0, r5, 0 - adds r1, r7, 0 - movs r2, 0x1 - bl sub_807CD64 - movs r4, 0xF0 - adds r1, r4, 0 - ands r1, r0 - cmp r1, 0x50 - bne _08056084 - movs r0, 0xA - str r0, [sp, 0x128] -_08056084: - adds r0, r5, 0 - adds r1, r7, 0 - movs r2, 0x1 - bl sub_807CD64 - adds r1, r4, 0 - ands r1, r0 - cmp r1, 0x80 - bne _080560CC - movs r1, 0x1 - str r1, [sp, 0x128] - ldrh r0, [r7, 0x2] - cmp r0, 0x97 - bne _080560AE - adds r0, r5, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080560CC -_080560AE: - ldrh r0, [r7, 0x2] - bl sub_809422C - lsls r0, 24 - cmp r0, 0 - beq _080560CC - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - bne _080560CC - movs r2, 0 - str r2, [sp, 0x128] -_080560CC: - ldr r0, _08056118 - ldr r1, [r5, 0x70] - movs r2, 0 - bl sub_80708B4 - ldr r0, _0805611C - adds r1, r7, 0 - movs r2, 0 - bl sub_80928C0 - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _08056124 - ldr r0, _08056120 - ldr r0, [r0] - mov r8, r0 - ldr r0, [r5, 0x70] - adds r0, 0xFF - movs r1, 0 - strb r1, [r0] - adds r0, r5, 0 - adds r1, r7, 0 - movs r2, 0x1 - bl sub_805744C - b _08056142 - .align 2, 0 -_08056108: .4byte gUnknown_203B418 -_0805610C: .4byte 0x00003a0e -_08056110: .4byte gUnknown_80F5D10 -_08056114: .4byte gUnknown_80FECE0 -_08056118: .4byte gUnknown_202DF98 -_0805611C: .4byte gUnknown_202DE58 -_08056120: .4byte gUnknown_80FC72C -_08056124: - mov r0, r10 - cmp r0, 0 - bne _08056132 - ldrh r0, [r7, 0x2] - bl sub_8092CA8 - b _08056136 -_08056132: - ldr r0, _08056194 - ldr r0, [r0] -_08056136: - mov r8, r0 - adds r0, r5, 0 - adds r1, r7, 0 - movs r2, 0x1 - bl sub_80573CC -_08056142: - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08056156 - cmp r6, 0 - beq _08056156 - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_806ACE8 -_08056156: - ldr r0, [r5, 0x70] - adds r0, 0xEC - ldrb r0, [r0] - cmp r0, 0x1 - bne _080561A0 - ldrh r0, [r7, 0x2] - bl sub_8092CF0 - lsls r0, 24 - cmp r0, 0 - beq _080561A0 - ldr r0, _08056198 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - mov r1, r8 - bl sub_80522A8 - movs r0, 0xA - movs r1, 0x3F - bl sub_803E708 - ldr r0, _0805619C -_08056188: - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_08056190: - movs r0, 0 - b _08056446 - .align 2, 0 -_08056194: .4byte gUnknown_80F9158 -_08056198: .4byte gUnknown_202DF98 -_0805619C: .4byte gUnknown_80FC710 -_080561A0: - cmp r4, 0 - bne _08056214 - ldr r0, _080561D4 - ldr r1, [r5, 0x70] - movs r2, 0 - bl sub_80708B4 - mov r1, r10 - cmp r1, 0 - bne _080561E0 - ldr r0, _080561D8 - adds r1, r7, 0 - movs r2, 0 - bl sub_80928C0 - adds r0, r5, 0 - mov r1, r8 - bl sub_80522A8 - movs r0, 0xA - movs r1, 0x3F - bl sub_803E708 - ldr r0, _080561DC - b _08056188 - .align 2, 0 -_080561D4: .4byte gUnknown_202DF98 -_080561D8: .4byte gUnknown_202DE58 -_080561DC: .4byte gUnknown_80FC6D0 -_080561E0: - ldr r0, _0805620C - mov r2, r10 - lsls r1, r2, 24 - lsrs r1, 24 - movs r2, 0 - bl sub_8090DC4 - adds r0, r5, 0 - mov r1, r8 - bl sub_80522A8 - movs r0, 0xA - movs r1, 0x3F - bl sub_803E708 - ldr r0, _08056210 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _08056190 - .align 2, 0 -_0805620C: .4byte gUnknown_202DE58 -_08056210: .4byte gUnknown_80FC6FC -_08056214: - ldr r0, _0805625C - movs r1, 0 - str r1, [r0] - ldr r0, _08056260 - str r1, [r0] - ldr r0, _08056264 - str r1, [r0] - ldr r0, _08056268 - strb r1, [r0] - ldr r0, _0805626C - strb r1, [r0] - ldr r0, _08056270 - strb r1, [r0] - ldr r0, _08056274 - str r1, [r0] - ldr r0, _08056278 - strb r1, [r0] - ldr r0, [sp, 0x150] - cmp r0, 0 - beq _0805624C - ldr r0, [r5, 0x70] - ldr r2, _0805627C - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0x3 - bhi _0805624C - adds r0, 0x1 - strb r0, [r1] -_0805624C: - adds r0, r7, 0 - bl sub_8057070 - str r0, [sp, 0x124] - movs r0, 0 - mov r9, r0 - b _080563E4 - .align 2, 0 -_0805625C: .4byte gUnknown_202F214 -_08056260: .4byte gUnknown_202F20C -_08056264: .4byte gUnknown_202F210 -_08056268: .4byte gUnknown_202F218 -_0805626C: .4byte gUnknown_202F219 -_08056270: .4byte gUnknown_202F21A -_08056274: .4byte gUnknown_202F21C -_08056278: .4byte gUnknown_202F220 -_0805627C: .4byte 0x00000153 -_08056280: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0805628E - b _08056444 -_0805628E: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _0805629A - b _08056444 -_0805629A: - ldr r4, [r5, 0x70] - ldr r0, [sp, 0x120] - cmp r0, 0 - bne _080562AC - ldrh r0, [r7, 0x2] - cmp r0, 0x19 - beq _080562AC - cmp r0, 0xE3 - bne _080562BE -_080562AC: - adds r0, r5, 0 - bl sub_8070B28 - lsls r0, 24 - cmp r0, 0 - bne _080562CE - adds r0, r5, 0 - movs r1, 0x1 - b _080562C2 -_080562BE: - adds r0, r5, 0 - movs r1, 0 -_080562C2: - bl sub_8070D04 - lsls r0, 24 - cmp r0, 0 - beq _080562CE - b _08056400 -_080562CE: - movs r1, 0xA5 - lsls r1, 1 - adds r0, r4, r1 - movs r6, 0 - strb r6, [r0] - ldrh r0, [r7, 0x2] - cmp r0, 0x9 - bne _080562F4 - ldr r4, [r5, 0x70] - movs r0, 0x8 - bl sub_8084100 - adds r4, 0x46 - strb r0, [r4] - adds r0, r5, 0 - bl sub_8069DCC - movs r2, 0 - str r2, [sp, 0x12C] -_080562F4: - ldr r0, _080563A0 - str r6, [r0] - str r6, [sp, 0xC] - ldr r0, [sp, 0x128] - cmp r0, 0x1 - bhi _08056324 - add r0, sp, 0xC - adds r1, r5, 0 - adds r2, r7, 0 - bl sub_8056CE8 - add r0, sp, 0xC - adds r1, r5, 0 - bl sub_80574C4 - mov r1, r9 - cmp r1, 0 - beq _08056324 - ldr r2, [sp, 0x12C] - cmp r2, 0 - beq _08056324 - ldr r0, [sp, 0xC] - cmp r0, 0 - beq _08056400 -_08056324: - mov r0, r10 - str r0, [sp] - movs r0, 0 - mov r1, r9 - cmp r1, 0 - bne _08056332 - movs r0, 0x1 -_08056332: - str r0, [sp, 0x4] - ldr r2, [sp, 0x128] - str r2, [sp, 0x8] - adds r0, r5, 0 - adds r1, r7, 0 - mov r2, r8 - add r3, sp, 0xC - bl sub_8056468 - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0 - mov r8, r0 - ldr r0, _080563A0 - ldr r0, [r0] - cmp r0, 0 - beq _08056358 - bl sub_806A1E8 -_08056358: - ldr r1, [r5, 0x70] - adds r0, r1, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - beq _0805637C - cmp r0, 0x4 - beq _0805637C - movs r2, 0xB6 - lsls r2, 1 - adds r0, r1, r2 - mov r2, r8 - strh r2, [r0] - movs r2, 0xB7 - lsls r2, 1 - adds r0, r1, r2 - mov r1, r8 - strh r1, [r0] -_0805637C: - ldr r1, _080563A4 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r2, [sp, 0x128] - cmp r2, 0 - beq _080563A8 - mov r0, r10 - str r0, [sp] - ldr r1, [sp, 0x150] - str r1, [sp, 0x4] - adds r0, r5, 0 - adds r1, r7, 0 - adds r3, r4, 0 - bl sub_80566F8 - b _080563B8 - .align 2, 0 -_080563A0: .4byte gUnknown_203B438 -_080563A4: .4byte gUnknown_202F214 -_080563A8: - ldr r2, [sp, 0x150] - str r2, [sp] - add r0, sp, 0xC - adds r1, r5, 0 - adds r2, r7, 0 - mov r3, r10 - bl sub_8053704 -_080563B8: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08056400 - adds r0, r5, 0 - bl sub_806CF18 - ldr r0, [r5, 0x70] - movs r2, 0xA5 - lsls r2, 1 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - bne _080563E0 - strb r0, [r1] - adds r0, r5, 0 - bl sub_8079764 -_080563E0: - movs r0, 0x1 - add r9, r0 -_080563E4: - ldr r1, [sp, 0x124] - cmp r9, r1 - bge _08056400 - movs r2, 0x1 - str r2, [sp, 0x12C] - ldr r0, _08056458 - ldrb r0, [r0] - cmp r0, 0 - bne _08056400 - ldr r0, _0805645C - ldrb r0, [r0] - cmp r0, 0 - bne _08056400 - b _08056280 -_08056400: - ldr r0, _08056460 - ldrb r0, [r0] - cmp r0, 0 - beq _08056418 - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A324 - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A6C8 -_08056418: - ldr r0, _08056464 - ldrb r0, [r0] - cmp r0, 0 - beq _08056444 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08056444 - ldr r4, [r5, 0x70] - adds r0, r5, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_8077AE4 - adds r4, 0xFB - ldrb r0, [r4] - cmp r0, 0 - bne _08056444 - movs r0, 0x1 - strb r0, [r4] -_08056444: - movs r0, 0x1 -_08056446: - add sp, 0x130 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08056458: .4byte gUnknown_202F220 -_0805645C: .4byte gUnknown_202F221 -_08056460: .4byte gUnknown_202F21A -_08056464: .4byte gUnknown_202F219 - thumb_func_end sub_8055FA0 - - thumb_func_start sub_8056468 -sub_8056468: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r0, 0 - mov r8, r1 - mov r9, r2 - adds r4, r3, 0 - ldr r0, [sp, 0x28] - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - movs r0, 0 - mov r10, r0 - adds r0, r6, 0 - bl sub_8045888 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r7, r1, 31 - mov r2, r9 - cmp r2, 0 - beq _08056518 - movs r5, 0 - b _080564A6 -_080564A2: - adds r4, 0x4 - adds r5, 0x1 -_080564A6: - cmp r5, 0x40 - bgt _080564BC - ldr r0, [r4] - cmp r0, 0 - beq _080564BC - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _080564A2 - movs r7, 0x1 -_080564BC: - cmp r7, 0 - beq _080564F2 - ldr r0, _080564DC - ldr r1, [r6, 0x70] - movs r2, 0 - bl sub_80708B4 - ldr r0, [sp, 0x24] - cmp r0, 0 - bne _080564E4 - ldr r0, _080564E0 - mov r1, r8 - movs r2, 0 - bl sub_80928C0 - b _080564F2 - .align 2, 0 -_080564DC: .4byte gUnknown_202DF98 -_080564E0: .4byte gUnknown_202DE58 -_080564E4: - ldr r0, _08056508 - ldr r2, [sp, 0x24] - lsls r1, r2, 24 - lsrs r1, 24 - movs r2, 0 - bl sub_8090DC4 -_080564F2: - mov r0, r8 - ldrh r1, [r0, 0x2] - ldr r0, _0805650C - cmp r1, r0 - beq _08056510 - adds r0, r6, 0 - mov r1, r9 - bl sub_805239C - b _08056518 - .align 2, 0 -_08056508: .4byte gUnknown_202DE58 -_0805650C: .4byte 0x00000163 -_08056510: - adds r0, r6, 0 - mov r1, r9 - bl sub_80522E8 -_08056518: - cmp r7, 0 - beq _08056544 - ldr r2, [sp] - cmp r2, 0 - beq _0805652A - adds r0, r6, 0 - mov r1, r8 - movs r2, 0x1 - b _08056530 -_0805652A: - adds r0, r6, 0 - mov r1, r8 - movs r2, 0 -_08056530: - bl sub_8040BB0 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - adds r0, r6, 0 - mov r1, r8 - bl sub_8040DA0 - b _08056550 -_08056544: - ldr r0, [r6, 0x70] - adds r0, 0x46 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_806CE68 -_08056550: - mov r0, r10 - 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_8056468 - - thumb_func_start sub_8056564 -sub_8056564: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x18 - adds r6, r0, 0 - adds r5, r1, 0 - adds r7, r2, 0 - adds r4, r3, 0 - ldr r0, [r6, 0x70] - mov r8, r0 - ldr r0, _08056680 - ldr r0, [r0] - ldr r1, _08056684 - adds r0, r1 - ldrb r0, [r0] - mov r9, r0 - cmp r0, 0 - beq _0805658C - b _080566E4 -_0805658C: - mov r2, r8 - movs r1, 0x4 - ldrsh r0, [r2, r1] - bl sub_808DACC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bls _080565A4 - cmp r4, 0x1 - bne _080565A4 - b _080566E4 -_080565A4: - ldrh r4, [r7, 0x2] - adds r0, r6, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_80412E0 - lsls r0, 16 - lsrs r0, 16 - bl sub_800ECB8 - movs r2, 0x6 - ldrsh r4, [r0, r2] - movs r1, 0 - ldrsh r0, [r5, r1] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 11 - movs r0, 0x2 - ldrsh r2, [r5, r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 11 - movs r2, 0x80 - lsls r2, 5 - adds r3, r0, r2 - movs r2, 0xC0 - lsls r2, 4 - adds r0, r1, r2 - cmp r0, 0 - bge _080565EC - adds r0, 0xFF -_080565EC: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _08056688 - ldr r2, [sp, 0x14] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x14] - adds r0, r3, 0 - cmp r0, 0 - bge _08056602 - adds r0, 0xFF -_08056602: - lsls r0, 8 - lsrs r0, 16 - lsls r0, 16 - ldr r1, _0805668C - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x14] - cmp r4, 0 - beq _080566E4 - ldrh r4, [r7, 0x2] - adds r0, r6, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_80412E0 - lsls r0, 16 - lsrs r0, 16 - bl sub_800EF10 - bl sub_800EF64 - movs r0, 0x5E - bl sub_803E46C - mov r0, r8 - movs r1, 0x4 - ldrsh r5, [r0, r1] - ldrh r4, [r7, 0x2] - adds r0, r6, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_80412E0 - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r5, 0 - bl sub_800E710 - adds r2, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _08056690 - add r0, sp, 0x8 - adds r1, r6, 0 - adds r1, 0x28 - lsls r2, 24 - lsrs r2, 24 - bl sub_800569C - b _08056694 - .align 2, 0 -_08056680: .4byte gUnknown_203B418 -_08056684: .4byte 0x0001820a -_08056688: .4byte 0xffff0000 -_0805668C: .4byte 0x0000ffff -_08056690: - mov r2, r9 - str r2, [sp, 0x8] -_08056694: - ldrh r4, [r7, 0x2] - adds r0, r6, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_80412E0 - mov r1, sp - strh r0, [r1] - mov r2, r8 - ldrh r0, [r2, 0x4] - strh r0, [r1, 0x2] - ldr r0, [r6, 0xC] - cmp r0, 0 - bge _080566BC - adds r0, 0xFF -_080566BC: - asrs r0, 8 - strh r0, [r1, 0x4] - mov r1, sp - ldr r0, [r6, 0x10] - cmp r0, 0 - bge _080566CA - adds r0, 0xFF -_080566CA: - asrs r0, 8 - strh r0, [r1, 0x6] - mov r0, r8 - adds r0, 0x46 - ldrb r0, [r0] - str r0, [sp, 0xC] - movs r0, 0 - str r0, [sp, 0x10] - add r1, sp, 0x14 - mov r0, sp - bl sub_800E308 - b _080566E8 -_080566E4: - movs r0, 0x1 - negs r0, r0 -_080566E8: - add sp, 0x18 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8056564 - - thumb_func_start sub_80566F8 -sub_80566F8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x54 - mov r10, r0 - str r1, [sp, 0x1C] - str r2, [sp, 0x20] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x24] - movs r0, 0 - str r0, [sp, 0x34] - movs r7, 0 - mov r1, r10 - ldr r6, [r1, 0x70] - ldr r2, [sp, 0x1C] - ldrh r0, [r2, 0x2] - bl sub_800ED20 - movs r1, 0x2 - str r1, [sp, 0x44] - cmp r0, 0x1 - beq _08056736 - movs r2, 0x6 - str r2, [sp, 0x44] - cmp r0, 0x2 - bne _08056736 - movs r0, 0x3 - str r0, [sp, 0x44] -_08056736: - mov r1, r10 - ldrh r0, [r1, 0x6] - lsls r0, 16 - ldrh r3, [r1, 0x4] - orrs r3, r0 - str r3, [sp, 0xC] - ldr r1, _08056814 - adds r2, r6, 0 - adds r2, 0x46 - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - movs r1, 0 - ldrsh r6, [r0, r1] - str r6, [sp, 0x28] - movs r1, 0x2 - ldrsh r6, [r0, r1] - str r6, [sp, 0x2C] - movs r6, 0 - str r6, [sp, 0x30] - mov r8, r2 - ldr r0, [sp, 0x20] - cmp r6, r0 - bge _080567EC - add r0, sp, 0xC - movs r2, 0 - ldrsh r1, [r0, r2] - cmp r1, 0 - blt _080567EC - asrs r0, r3, 16 - cmp r0, 0 - blt _080567EC - cmp r1, 0x37 - bgt _080567EC - cmp r0, 0x1F - bgt _080567EC - add r6, sp, 0xC -_08056780: - ldrh r0, [r6] - ldr r1, [sp, 0x28] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r2, _08056818 - ands r2, r3 - orrs r2, r0 - asrs r0, r2, 16 - ldr r1, [sp, 0x2C] - adds r0, r1 - lsls r0, 16 - ldr r1, _0805681C - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0xC] - adds r7, 0x1 - movs r2, 0 - ldrsh r0, [r6, r2] - asrs r1, 16 - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _080567EC - ldr r0, [r2, 0x10] - cmp r0, 0 - beq _080567C6 - bl sub_80450F8 - cmp r0, 0x1 - beq _080567EC -_080567C6: - ldr r0, [sp, 0x30] - adds r0, 0x1 - str r0, [sp, 0x30] - ldr r1, [sp, 0x20] - cmp r0, r1 - bge _080567EC - movs r0, 0 - ldrsh r2, [r6, r0] - cmp r2, 0 - blt _080567EC - ldr r0, [sp, 0xC] - asrs r1, r0, 16 - adds r3, r0, 0 - cmp r1, 0 - blt _080567EC - cmp r2, 0x37 - bgt _080567EC - cmp r1, 0x1F - ble _08056780 -_080567EC: - ldr r2, [sp, 0x1C] - ldrh r1, [r2, 0x2] - mov r0, r10 - bl sub_805755C - lsls r0, 24 - cmp r0, 0 - beq _08056820 - mov r0, r10 - ldr r1, [sp, 0x1C] - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - bne _08056820 - movs r6, 0x1 - negs r6, r6 - str r6, [sp, 0x40] - b _0805682E - .align 2, 0 -_08056814: .4byte gUnknown_80F4448 -_08056818: .4byte 0xffff0000 -_0805681C: .4byte 0x0000ffff -_08056820: - mov r0, r10 - add r1, sp, 0xC - ldr r2, [sp, 0x1C] - ldr r3, [sp, 0x20] - bl sub_8056564 - str r0, [sp, 0x40] -_0805682E: - mov r0, r10 - ldrh r1, [r0, 0x4] - add r0, sp, 0xC - strh r1, [r0] - mov r2, r10 - ldrh r1, [r2, 0x6] - strh r1, [r0, 0x2] - ldr r1, _08056874 - mov r6, r8 - ldrb r0, [r6] - lsls r0, 2 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - str r1, [sp, 0x28] - movs r1, 0x2 - ldrsh r6, [r0, r1] - str r6, [sp, 0x2C] - movs r0, 0x18 - ldr r1, [sp, 0x44] - bl __divsi3 - adds r1, r7, 0 - muls r1, r0 - ldr r2, [sp, 0x20] - cmp r2, 0x1 - ble _08056878 - adds r6, r1, 0 - adds r6, 0x8 - str r6, [sp, 0x38] - cmp r6, 0x3F - ble _0805687C - movs r0, 0x40 - str r0, [sp, 0x38] - b _0805687C - .align 2, 0 -_08056874: .4byte gUnknown_80F4448 -_08056878: - movs r2, 0x20 - str r2, [sp, 0x38] -_0805687C: - movs r6, 0 - mov r9, r6 - movs r0, 0x80 - lsls r0, 12 - bl __divsi3 - str r0, [sp, 0x48] - ldr r1, _0805696C - mov r2, r8 - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [sp, 0x3C] - ldr r0, _08056970 - ldr r0, [r0] - ldr r6, _08056974 - adds r0, r6 - movs r1, 0x1 - strb r1, [r0] - movs r0, 0 - str r0, [sp, 0x30] - ldr r1, [sp, 0x20] - cmp r0, r1 - blt _080568B0 - b _08056AB6 -_080568B0: - add r0, sp, 0xC - movs r2, 0 - ldrsh r1, [r0, r2] - cmp r1, 0 - bge _080568BC - b _08056AB6 -_080568BC: - ldrh r0, [r0, 0x2] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _080568C8 - b _08056AB6 -_080568C8: - cmp r1, 0x37 - ble _080568CE - b _08056AB6 -_080568CE: - cmp r0, 0x1F - ble _080568D4 - b _08056AB6 -_080568D4: - add r7, sp, 0xC -_080568D6: - ldr r6, [sp, 0xC] - ldrh r0, [r7] - ldr r1, [sp, 0x28] - adds r0, r1 - strh r0, [r7] - ldrh r0, [r7, 0x2] - ldr r2, [sp, 0x2C] - adds r0, r2 - strh r0, [r7, 0x2] - add r0, sp, 0xC - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - bne _080568F6 - b _08056A00 -_080568F6: - ldr r0, _08056970 - ldr r0, [r0] - ldr r1, _08056978 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08056906 - b _08056A00 -_08056906: - lsls r1, r6, 16 - asrs r1, 16 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r2, 0xC0 - lsls r2, 4 - adds r4, r0, r2 - asrs r1, r6, 16 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r6, 0x80 - lsls r6, 5 - adds r5, r0, r6 - ldr r1, [sp, 0x28] - lsls r0, r1, 8 - ldr r6, [sp, 0x44] - adds r2, r6, 0 - muls r2, r0 - str r2, [sp, 0x4C] - ldr r1, [sp, 0x2C] - lsls r0, r1, 8 - adds r2, r6, 0 - muls r2, r0 - str r2, [sp, 0x50] - movs r6, 0 - movs r0, 0x18 - ldr r1, [sp, 0x44] - bl __divsi3 - mov r8, r0 - cmp r6, r8 - bge _08056A0E -_0805694A: - ldr r0, [sp, 0x40] - cmp r0, 0 - blt _080569D4 - ldr r1, [sp, 0x24] - cmp r1, 0 - beq _0805697C - mov r0, r9 - cmp r0, 0 - bge _0805695E - adds r0, 0xFF -_0805695E: - asrs r0, 8 - bl sub_8009C7C - ldr r2, [sp, 0x38] - adds r3, r0, 0 - muls r3, r2 - b _0805697E - .align 2, 0 -_0805696C: .4byte gUnknown_81069D4 -_08056970: .4byte gUnknown_203B418 -_08056974: .4byte 0x0001c05e -_08056978: .4byte 0x0001820a -_0805697C: - movs r3, 0 -_0805697E: - adds r0, r4, 0 - cmp r4, 0 - bge _08056986 - adds r0, 0xFF -_08056986: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _080569F0 - ldr r2, [sp, 0x10] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x10] - subs r0, r5, r3 - cmp r0, 0 - bge _0805699C - adds r0, 0xFF -_0805699C: - lsls r0, 8 - lsrs r0, 16 - lsls r0, 16 - ldr r1, _080569F4 - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x10] - adds r2, r5, 0 - cmp r2, 0 - bge _080569B2 - adds r2, 0xFF -_080569B2: - asrs r2, 8 - ldr r0, _080569F8 - ldr r0, [r0] - ldr r1, _080569FC - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - subs r2, r0 - lsrs r0, r2, 31 - adds r2, r0 - asrs r2, 1 - ldr r0, [sp, 0x3C] - adds r2, r0 - ldr r0, [sp, 0x40] - add r1, sp, 0x10 - bl sub_800E3AC -_080569D4: - movs r0, 0x30 - bl sub_803E46C - ldr r1, [sp, 0x4C] - adds r4, r1 - ldr r2, [sp, 0x50] - adds r5, r2 - ldr r0, [sp, 0x48] - add r9, r0 - adds r6, 0x1 - cmp r6, r8 - blt _0805694A - b _08056A0E - .align 2, 0 -_080569F0: .4byte 0xffff0000 -_080569F4: .4byte 0x0000ffff -_080569F8: .4byte gUnknown_203B418 -_080569FC: .4byte 0x000181f2 -_08056A00: - movs r0, 0x18 - ldr r1, [sp, 0x44] - bl __divsi3 - ldr r1, [sp, 0x48] - muls r0, r1 - add r9, r0 -_08056A0E: - movs r2, 0 - ldrsh r0, [r7, r2] - movs r6, 0x2 - ldrsh r1, [r7, r6] - bl sub_804954C - adds r6, r0, 0 - ldrh r1, [r6] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _08056AB6 - ldr r0, [r6, 0x10] - cmp r0, 0 - beq _08056A8E - bl sub_80450F8 - cmp r0, 0x1 - bne _08056A8E - ldr r0, [r6, 0x10] - ldr r1, [sp, 0x1C] - bl sub_80571F0 - lsls r0, 24 - cmp r0, 0 - bne _08056A8E - ldr r0, [sp, 0x34] - cmp r0, 0 - bgt _08056AB6 - movs r4, 0 - mov r2, r10 - ldr r1, [r2, 0x70] - adds r0, r1, 0 - adds r0, 0xBC - ldrb r2, [r0] - cmp r2, 0x2 - beq _08056A64 - adds r0, 0x2C - ldrb r0, [r0] - cmp r0, 0x1 - beq _08056A64 - cmp r2, 0x4 - bne _08056A66 -_08056A64: - movs r4, 0x1 -_08056A66: - mov r0, r10 - ldr r1, [sp, 0x1C] - movs r2, 0 - bl sub_807CD64 - adds r2, r0, 0 - lsls r2, 16 - asrs r2, 16 - ldr r0, [r6, 0x10] - str r0, [sp] - ldr r6, [sp, 0x1C] - str r6, [sp, 0x4] - str r4, [sp, 0x8] - ldr r0, [sp, 0x34] - add r1, sp, 0x14 - mov r3, r10 - bl sub_8056F80 - str r0, [sp, 0x34] - b _08056AB6 -_08056A8E: - ldr r0, [sp, 0x30] - adds r0, 0x1 - str r0, [sp, 0x30] - ldr r1, [sp, 0x20] - cmp r0, r1 - bge _08056AB6 - movs r2, 0 - ldrsh r1, [r7, r2] - cmp r1, 0 - blt _08056AB6 - ldrh r0, [r7, 0x2] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - blt _08056AB6 - cmp r1, 0x37 - bgt _08056AB6 - cmp r0, 0x1F - bgt _08056AB6 - b _080568D6 -_08056AB6: - ldr r6, [sp, 0x40] - cmp r6, 0 - blt _08056AC2 - adds r0, r6, 0 - bl sub_800DC14 -_08056AC2: - movs r0, 0x1 - bl sub_804178C - ldr r0, _08056AF4 - ldr r0, [r0] - ldr r1, _08056AF8 - adds r0, r1 - movs r2, 0 - strb r2, [r0] - ldr r6, [sp, 0x34] - cmp r6, 0 - ble _08056AFC - lsls r1, r6, 2 - add r0, sp, 0x14 - adds r1, r0 - str r2, [r1] - ldr r1, [sp, 0x78] - str r1, [sp] - mov r1, r10 - ldr r2, [sp, 0x1C] - ldr r3, [sp, 0x74] - bl sub_8053704 - b _08056B22 - .align 2, 0 -_08056AF4: .4byte gUnknown_203B418 -_08056AF8: .4byte 0x0001c05e -_08056AFC: - ldr r0, [sp, 0x20] - cmp r0, 0x1 - bne _08056B22 - add r0, sp, 0xC - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - beq _08056B22 - movs r0, 0x1 - movs r1, 0x4A - bl sub_803E708 - mov r0, r10 - movs r1, 0 - ldr r2, [sp, 0x1C] - add r3, sp, 0xC - bl sub_8041168 -_08056B22: - add sp, 0x54 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80566F8 - - thumb_func_start sub_8056B34 -sub_8056B34: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r7, r0, 0 - adds r6, r1, 0 - mov r8, r2 - adds r1, r3, 0 - ldr r4, [sp, 0x24] - lsls r4, 24 - lsrs r4, 24 - mov r0, r8 - bl sub_8092BD8 - adds r5, r0, 0 - movs r0, 0x64 - bl sub_8084100 - str r0, [sp] - ldr r0, [r7, 0x70] - mov r9, r0 - ldr r1, [r6, 0x70] - mov r10, r1 - cmp r4, 0 - beq _08056B70 - cmp r7, r6 - bne _08056B70 - b _08056CD4 -_08056B70: - mov r0, r8 - ldrh r1, [r0, 0x2] - ldr r0, _08056CC4 - cmp r1, r0 - bne _08056B8A - adds r0, r7, 0 - movs r1, 0x4 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08056B8A - b _08056CD4 -_08056B8A: - mov r0, r9 - adds r0, 0xDC - ldrb r0, [r0] - cmp r0, 0x1 - bne _08056B96 - b _08056CD4 -_08056B96: - cmp r0, 0x2 - bne _08056B9C - b _08056CBE -_08056B9C: - cmp r5, 0x64 - ble _08056BA2 - b _08056CD4 -_08056BA2: - adds r0, r6, 0 - movs r1, 0x23 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08056BB6 - ldr r0, _08056CC8 - ldr r0, [r0] - subs r5, r0 -_08056BB6: - adds r0, r6, 0 - movs r1, 0x5 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08056BCA - ldr r0, _08056CCC - ldr r0, [r0] - subs r5, r0 -_08056BCA: - mov r1, r9 - movs r0, 0x24 - ldrsh r4, [r1, r0] - adds r0, r7, 0 - movs r1, 0x33 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08056BE0 - adds r4, 0x2 -_08056BE0: - mov r1, r8 - ldrh r0, [r1, 0x2] - cmp r0, 0x40 - bne _08056BFC - adds r0, r7, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - beq _08056CD4 - cmp r0, 0x1 - bne _08056BFC - subs r4, 0x2 -_08056BFC: - cmp r4, 0 - bge _08056C02 - movs r4, 0 -_08056C02: - cmp r4, 0x14 - ble _08056C08 - movs r4, 0x14 -_08056C08: - ldr r1, _08056CD0 - lsls r0, r4, 2 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - bge _08056C16 - movs r0, 0 -_08056C16: - movs r1, 0xC8 - lsls r1, 7 - cmp r0, r1 - ble _08056C20 - adds r0, r1, 0 -_08056C20: - muls r5, r0 - adds r0, r5, 0 - cmp r5, 0 - bge _08056C2A - adds r0, 0xFF -_08056C2A: - asrs r5, r0, 8 - mov r0, r10 - movs r1, 0x26 - ldrsh r4, [r0, r1] - adds r0, 0xF5 - ldrb r0, [r0] - cmp r0, 0 - beq _08056C3C - movs r4, 0xA -_08056C3C: - adds r0, r6, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08056C5A - adds r0, r6, 0 - movs r1, 0x1D - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08056C5A - adds r4, 0x2 -_08056C5A: - adds r0, r7, 0 - movs r1, 0x30 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08056C86 - mov r0, r8 - bl sub_8092B00 - lsls r0, 24 - lsrs r0, 24 - bl sub_8092354 - movs r1, 0 - lsls r0, 24 - cmp r0, 0 - bne _08056C80 - movs r1, 0x1 -_08056C80: - cmp r1, 0 - bne _08056C86 - adds r4, 0x2 -_08056C86: - cmp r4, 0 - bge _08056C8C - movs r4, 0 -_08056C8C: - cmp r4, 0x14 - ble _08056C92 - movs r4, 0x14 -_08056C92: - ldr r0, _08056CD0 - lsls r1, r4, 2 - adds r0, 0x54 - adds r1, r0 - ldr r0, [r1] - cmp r0, 0 - bge _08056CA2 - movs r0, 0 -_08056CA2: - movs r1, 0xC8 - lsls r1, 7 - cmp r0, r1 - ble _08056CAC - adds r0, r1, 0 -_08056CAC: - muls r5, r0 - adds r0, r5, 0 - cmp r5, 0 - bge _08056CB6 - adds r0, 0xFF -_08056CB6: - asrs r5, r0, 8 - ldr r0, [sp] - cmp r0, r5 - blt _08056CD4 -_08056CBE: - movs r0, 0 - b _08056CD6 - .align 2, 0 -_08056CC4: .4byte 0x00000163 -_08056CC8: .4byte gUnknown_80F519C -_08056CCC: .4byte gUnknown_80F51A0 -_08056CD0: .4byte gUnknown_80F50F4 -_08056CD4: - movs r0, 0x1 -_08056CD6: - 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_8056B34 - - thumb_func_start sub_8056CE8 -sub_8056CE8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - str r0, [sp, 0x10] - adds r5, r1, 0 - mov r8, r2 - movs r0, 0 - mov r9, r0 - movs r3, 0 - ldr r1, [r5, 0x70] - adds r0, r1, 0 - adds r0, 0xBC - ldrb r2, [r0] - cmp r2, 0x2 - beq _08056D18 - adds r0, 0x2C - ldrb r0, [r0] - cmp r0, 0x1 - beq _08056D18 - cmp r2, 0x4 - bne _08056D1A -_08056D18: - movs r3, 0x1 -_08056D1A: - mov r10, r3 - movs r1, 0 - ldr r0, [r5, 0x70] - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - beq _08056D2C - cmp r0, 0x4 - bne _08056D2E -_08056D2C: - movs r1, 0x1 -_08056D2E: - str r1, [sp, 0x14] - adds r0, r5, 0 - movs r1, 0x7 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08056D44 - movs r1, 0 - str r1, [sp, 0x14] - mov r10, r1 -_08056D44: - adds r0, r5, 0 - mov r1, r8 - movs r2, 0 - bl sub_807CD64 - lsls r0, 16 - asrs r7, r0, 16 - movs r0, 0xF - ands r0, r7 - cmp r0, 0x4 - bne _08056D86 - adds r0, r5, 0 - mov r1, r8 - bl sub_80570AC - lsls r0, 24 - lsrs r4, r0, 24 - mov r2, r8 - ldrh r0, [r2, 0x2] - cmp r0, 0x97 - bne _08056D7E - adds r0, r5, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08056D7E - movs r4, 0x1 -_08056D7E: - movs r7, 0x73 - cmp r4, 0 - beq _08056D86 - movs r7, 0 -_08056D86: - movs r1, 0xF0 - ands r1, r7 - cmp r1, 0 - bne _08056DA6 - adds r0, r5, 0 - bl sub_80696A8 - cmp r0, 0 - bne _08056D9A - b _08056F64 -_08056D9A: - str r0, [sp] - mov r0, r8 - str r0, [sp, 0x4] - mov r1, r10 - str r1, [sp, 0x8] - b _08056F56 -_08056DA6: - cmp r1, 0x10 - beq _08056DAE - cmp r1, 0x20 - bne _08056E34 -_08056DAE: - ldr r0, [r5, 0x70] - cmp r1, 0x20 - bne _08056DBC - adds r0, 0x46 - ldrb r4, [r0] - movs r0, 0x8 - b _08056DCA -_08056DBC: - adds r0, 0x46 - ldrb r0, [r0] - subs r4, r0, 0x1 - movs r0, 0x3 - cmp r0, 0 - bne _08056DCA - b _08056F64 -_08056DCA: - adds r6, r0, 0 -_08056DCC: - movs r0, 0x7 - ands r4, r0 - ldr r0, _08056E28 - lsls r3, r4, 2 - adds r3, r0 - ldrh r0, [r3] - ldrh r2, [r5, 0x4] - adds r0, r2 - lsls r0, 16 - lsrs r0, 16 - ldr r2, _08056E2C - ldr r1, [sp, 0xC] - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0xC] - ldrh r2, [r3, 0x2] - ldrh r0, [r5, 0x6] - adds r2, r0 - lsls r2, 16 - ldr r0, _08056E30 - ands r1, r0 - orrs r1, r2 - str r1, [sp, 0xC] - add r0, sp, 0xC - bl sub_804AD0C - cmp r0, 0 - beq _08056E1C - str r0, [sp] - mov r1, r8 - str r1, [sp, 0x4] - mov r2, r10 - str r2, [sp, 0x8] - mov r0, r9 - ldr r1, [sp, 0x10] - adds r2, r7, 0 - adds r3, r5, 0 - bl sub_8056F80 - mov r9, r0 -_08056E1C: - subs r6, 0x1 - adds r4, 0x1 - cmp r6, 0 - bne _08056DCC - b _08056F64 - .align 2, 0 -_08056E28: .4byte gUnknown_80F4448 -_08056E2C: .4byte 0xffff0000 -_08056E30: .4byte 0x0000ffff -_08056E34: - cmp r1, 0x30 - bne _08056E9C - movs r6, 0 -_08056E3A: - ldr r0, _08056E74 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _08056E78 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08056E94 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8045A70 - lsls r0, 24 - cmp r0, 0 - beq _08056E94 - cmp r4, r5 - bne _08056E7C - str r5, [sp] - mov r0, r8 - str r0, [sp, 0x4] - ldr r1, [sp, 0x14] - str r1, [sp, 0x8] - b _08056E86 - .align 2, 0 -_08056E74: .4byte gUnknown_203B418 -_08056E78: .4byte 0x000135cc -_08056E7C: - str r4, [sp] - mov r2, r8 - str r2, [sp, 0x4] - mov r0, r10 - str r0, [sp, 0x8] -_08056E86: - mov r0, r9 - ldr r1, [sp, 0x10] - adds r2, r7, 0 - adds r3, r5, 0 - bl sub_8056F80 - mov r9, r0 -_08056E94: - adds r6, 0x1 - cmp r6, 0x13 - ble _08056E3A - b _08056F64 -_08056E9C: - cmp r1, 0x40 - bne _08056EEA - movs r4, 0 - adds r0, r5, 0 - bl sub_80696FC - cmp r0, 0 - beq _08056ED0 - mov r4, r9 - str r0, [sp] - mov r1, r8 - str r1, [sp, 0x4] - mov r2, r10 - str r2, [sp, 0x8] - adds r0, r4, 0 - ldr r1, [sp, 0x10] - adds r2, r7, 0 - adds r3, r5, 0 - bl sub_8056F80 - mov r9, r0 - mov r1, r9 - eors r1, r4 - negs r0, r1 - orrs r0, r1 - lsrs r4, r0, 31 -_08056ED0: - cmp r4, 0 - bne _08056F64 - adds r0, r5, 0 - bl sub_806977C - cmp r0, 0 - beq _08056F64 - str r0, [sp] - mov r0, r8 - str r0, [sp, 0x4] - mov r1, r10 - str r1, [sp, 0x8] - b _08056F56 -_08056EEA: - cmp r1, 0x50 - beq _08056F64 - cmp r1, 0x80 - bne _08056F00 - adds r0, r5, 0 - bl sub_80696FC - cmp r0, 0 - beq _08056F64 - str r0, [sp] - b _08056F4E -_08056F00: - cmp r1, 0x60 - bne _08056F48 - movs r6, 0 -_08056F06: - ldr r0, _08056F40 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _08056F44 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08056F38 - str r4, [sp] - mov r0, r8 - str r0, [sp, 0x4] - mov r1, r10 - str r1, [sp, 0x8] - mov r0, r9 - ldr r1, [sp, 0x10] - adds r2, r7, 0 - adds r3, r5, 0 - bl sub_8056F80 - mov r9, r0 -_08056F38: - adds r6, 0x1 - cmp r6, 0x13 - ble _08056F06 - b _08056F64 - .align 2, 0 -_08056F40: .4byte gUnknown_203B418 -_08056F44: .4byte 0x000135cc -_08056F48: - cmp r1, 0x70 - bne _08056F64 - str r5, [sp] -_08056F4E: - mov r2, r8 - str r2, [sp, 0x4] - mov r0, r10 - str r0, [sp, 0x8] -_08056F56: - mov r0, r9 - ldr r1, [sp, 0x10] - adds r2, r7, 0 - adds r3, r5, 0 - bl sub_8056F80 - mov r9, r0 -_08056F64: - mov r1, r9 - lsls r0, r1, 2 - ldr r2, [sp, 0x10] - adds r0, r2 - movs r1, 0 - str r1, [r0] - 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_8056CE8 - - thumb_func_start sub_8056F80 -sub_8056F80: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - mov r8, r1 - adds r4, r3, 0 - ldr r7, [sp, 0x18] - ldr r0, [sp, 0x20] - lsls r2, 16 - asrs r2, 16 - lsls r0, 24 - lsrs r0, 24 - mov r12, r0 - movs r6, 0 - ldr r1, [r7, 0x70] - ldr r3, [sp, 0x1C] - ldrh r0, [r3, 0x2] - cmp r0, 0xFC - bne _08056FAA - cmp r4, r7 - beq _08057060 -_08056FAA: - ldrb r0, [r1, 0x8] - cmp r0, 0x1 - beq _08057060 - adds r0, r1, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x4 - beq _08057060 - cmp r0, 0x1 - beq _08057060 - mov r0, r12 - cmp r0, 0 - bne _0805702C - movs r0, 0xF - ands r0, r2 - cmp r0, 0 - beq _08056FD0 - cmp r0, 0x4 - bne _08056FE6 -_08056FD0: - adds r0, r4, 0 - adds r1, r7, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0805702E - b _0805702C -_08056FE6: - cmp r0, 0x1 - bne _08056FFE - adds r0, r4, 0 - adds r1, r7, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - cmp r0, 0 - bne _0805702E - b _0805702C -_08056FFE: - cmp r0, 0x2 - beq _0805702C - cmp r0, 0x5 - bne _0805700C - cmp r4, r7 - beq _0805702E - b _0805702C -_0805700C: - cmp r0, 0x6 - bne _08057028 - adds r0, r4, 0 - adds r1, r7, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - cmp r0, 0 - bne _0805702E - cmp r4, r7 - beq _0805702E - b _0805702C -_08057028: - cmp r0, 0x3 - bne _0805702E -_0805702C: - movs r6, 0x1 -_0805702E: - adds r0, r7, 0 - ldr r1, [sp, 0x1C] - bl sub_80571F0 - lsls r0, 24 - cmp r0, 0 - beq _0805703E - movs r6, 0 -_0805703E: - cmp r6, 0 - beq _08057060 - cmp r5, 0x3F - bgt _08057060 - lsls r0, r5, 2 - add r0, r8 - str r7, [r0] - ldr r0, [r7, 0x70] - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _0805705E - ldr r1, _0805706C - ldr r0, [r1] - cmp r0, 0 - bne _0805705E - str r7, [r1] -_0805705E: - adds r5, 0x1 -_08057060: - adds r0, r5, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805706C: .4byte gUnknown_203B438 - thumb_func_end sub_8056F80 - - thumb_func_start sub_8057070 -sub_8057070: - push {lr} - bl sub_8092BA8 - cmp r0, 0 - bne _08057082 - movs r0, 0x2 - movs r1, 0x6 - bl sub_808411C -_08057082: - pop {r1} - bx r1 - thumb_func_end sub_8057070 - - thumb_func_start sub_8057088 -sub_8057088: - push {lr} - ldrh r1, [r0, 0x2] - cmp r1, 0xEE - beq _080570A4 - cmp r1, 0xEF - beq _080570A4 - cmp r1, 0xF2 - beq _080570A4 - movs r0, 0x88 - lsls r0, 1 - cmp r1, r0 - beq _080570A4 - movs r0, 0 - b _080570A6 -_080570A4: - movs r0, 0x1 -_080570A6: - pop {r1} - bx r1 - thumb_func_end sub_8057088 - - thumb_func_start sub_80570AC -sub_80570AC: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080570C2 - b _080570E8 -_080570BE: - movs r0, 0x1 - b _080570EA -_080570C2: - ldr r0, [r4, 0x70] - movs r3, 0 - ldr r2, _080570F0 - adds r4, r0, 0 - adds r4, 0xC0 -_080570CC: - ldrh r1, [r2] - cmp r1, 0 - beq _080570E8 - ldrh r0, [r5, 0x2] - cmp r0, r1 - bne _080570E0 - ldrb r0, [r4] - ldrb r1, [r2, 0x2] - cmp r0, r1 - beq _080570BE -_080570E0: - adds r2, 0x4 - adds r3, 0x1 - cmp r3, 0x63 - ble _080570CC -_080570E8: - movs r0, 0 -_080570EA: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080570F0: .4byte gUnknown_81069F4 - thumb_func_end sub_80570AC - - thumb_func_start sub_80570F4 -sub_80570F4: - push {r4-r7,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r7, r1, 24 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805713C - ldr r3, [r4, 0x70] - movs r4, 0 - adds r6, r3, 0 - adds r6, 0xC0 - ldr r2, _08057138 -_08057110: - ldrb r1, [r2] - cmp r1, 0 - beq _0805713C - ldrb r0, [r6] - adds r5, r3, 0 - adds r5, 0xC0 - cmp r0, r1 - beq _08057132 - adds r2, 0x4 - adds r4, 0x1 - cmp r4, 0x63 - ble _08057110 - cmp r7, 0 - beq _0805713C - ldrb r0, [r5] - cmp r0, 0xB - bne _0805713C -_08057132: - movs r0, 0x1 - b _0805713E - .align 2, 0 -_08057138: .4byte gUnknown_8106A1C -_0805713C: - movs r0, 0 -_0805713E: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80570F4 - - thumb_func_start sub_8057144 -sub_8057144: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x144 - mov r9, r0 - movs r7, 0 - movs r5, 0 -_08057154: - ldr r0, _080571D4 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080571D8 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - adds r5, 0x1 - mov r8, r5 - cmp r0, 0 - beq _080571B8 - ldr r0, [r4, 0x70] - movs r1, 0x8C - lsls r1, 1 - adds r5, r0, r1 - adds r4, r5, 0 - lsls r0, r7, 2 - mov r1, sp - adds r2, r0, r1 - movs r6, 0x3 -_08057184: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080571AE - ldrh r1, [r4, 0x2] - mov r0, r9 - str r2, [sp, 0x140] - bl sub_805755C - lsls r0, 24 - ldr r2, [sp, 0x140] - cmp r0, 0 - bne _080571AE - ldrh r0, [r4, 0x2] - cmp r0, 0x8A - beq _080571AE - cmp r7, 0x4F - bgt _080571AE - stm r2!, {r5} - adds r7, 0x1 -_080571AE: - adds r4, 0x8 - adds r5, 0x8 - subs r6, 0x1 - cmp r6, 0 - bge _08057184 -_080571B8: - mov r5, r8 - cmp r5, 0x13 - ble _08057154 - cmp r7, 0 - beq _080571DC - adds r0, r7, 0 - bl sub_8084100 - lsls r0, 2 - add r0, sp - ldr r0, [r0] - ldrh r0, [r0, 0x2] - b _080571DE - .align 2, 0 -_080571D4: .4byte gUnknown_203B418 -_080571D8: .4byte 0x000135cc -_080571DC: - ldr r0, _080571EC -_080571DE: - add sp, 0x144 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080571EC: .4byte 0x00000163 - thumb_func_end sub_8057144 - - thumb_func_start sub_80571F0 -sub_80571F0: - push {lr} - ldr r0, [r0, 0x70] - adds r2, r0, 0 - adds r2, 0xFF - ldrb r2, [r2] - cmp r2, 0x1 - bne _08057212 - ldrh r1, [r1, 0x2] - cmp r1, 0x88 - beq _08057274 - cmp r1, 0xA2 - beq _08057274 - cmp r1, 0x39 - beq _08057274 - cmp r1, 0x40 - beq _08057274 - b _08057264 -_08057212: - cmp r2, 0x2 - bne _08057274 - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, 0x9 - bne _0805722A - ldrh r1, [r1, 0x2] - cmp r1, 0x20 - beq _08057274 - cmp r1, 0xDB - bne _08057264 - b _08057274 -_0805722A: - cmp r0, 0xA - bne _08057264 - ldrh r1, [r1, 0x2] - cmp r1, 0x76 - beq _08057274 - movs r0, 0x94 - lsls r0, 1 - cmp r1, r0 - beq _08057274 - cmp r1, 0x77 - bne _08057264 - ldr r0, _08057268 - ldr r0, [r0] - ldr r1, _0805726C - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - cmp r1, 0 - bge _08057252 - movs r1, 0 -_08057252: - cmp r1, 0x4A - ble _08057258 - movs r1, 0x4A -_08057258: - ldr r0, _08057270 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0x76 - beq _08057274 -_08057264: - movs r0, 0x1 - b _08057276 - .align 2, 0 -_08057268: .4byte gUnknown_203B418 -_0805726C: .4byte 0x00003a0e -_08057270: .4byte gUnknown_80F5D10 -_08057274: - movs r0, 0 -_08057276: - pop {r1} - bx r1 - thumb_func_end sub_80571F0 - - thumb_func_start sub_805727C -sub_805727C: - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - adds r4, r2, 0 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _080572FC - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080572FC - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080572FC - ldr r1, [r5, 0x70] - movs r2, 0xAC - lsls r2, 1 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _080572FC - movs r2, 0xE - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _080572FC - cmp r4, 0 - beq _080572DE - adds r0, r6, 0 - movs r1, 0x26 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _080572D2 - lsls r0, r4, 1 - b _080572D4 -_080572D2: - adds r0, r4, 0 -_080572D4: - bl sub_8084160 - lsls r0, 24 - lsrs r4, r0, 24 - b _080572E0 -_080572DE: - movs r4, 0x1 -_080572E0: - cmp r4, 0 - beq _08057300 - cmp r6, r5 - beq _08057300 - adds r0, r5, 0 - movs r1, 0x4C - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08057300 - adds r0, r5, 0 - bl sub_80429C8 -_080572FC: - movs r0, 0 - b _08057302 -_08057300: - adds r0, r4, 0 -_08057302: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805727C - - thumb_func_start sub_8057308 -sub_8057308: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0805731C - movs r0, 0 - b _08057340 -_0805731C: - cmp r4, 0 - bne _08057324 - movs r0, 0x1 - b _08057340 -_08057324: - adds r0, r5, 0 - movs r1, 0x26 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _08057336 - adds r0, r4, 0 - b _08057338 -_08057336: - lsls r0, r4, 1 -_08057338: - bl sub_8084160 - lsls r0, 24 - lsrs r0, 24 -_08057340: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8057308 - - thumb_func_start sub_8057348 -sub_8057348: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - ldr r6, [r7, 0x70] - lsls r1, 3 - movs r0, 0x8C - lsls r0, 1 - adds r1, r0 - adds r4, r6, r1 - ldrb r1, [r4] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _080573BE - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080573BE - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _080573BE - ldrb r1, [r4, 0x1] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0805738E - b _080573BE -_0805738A: - movs r0, 0x1 - b _080573C0 -_0805738E: - movs r5, 0 - b _08057394 -_08057392: - adds r5, 0x1 -_08057394: - cmp r5, 0x3 - bgt _080573BE - adds r0, r7, 0 - adds r1, r4, 0 - mov r2, r8 - bl sub_80573CC - lsls r0, 24 - cmp r0, 0 - bne _0805738A - adds r4, 0x8 - movs r1, 0x9C - lsls r1, 1 - adds r0, r6, r1 - cmp r4, r0 - bcs _080573BE - ldrb r1, [r4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08057392 -_080573BE: - movs r0, 0 -_080573C0: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8057348 - - thumb_func_start sub_80573CC -sub_80573CC: - push {r4-r6,lr} - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - ldr r6, [r0, 0x70] - ldrh r1, [r4, 0x2] - ldr r0, _08057430 - cmp r1, r0 - beq _08057442 - ldrb r1, [r4] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _0805743E - ldrb r1, [r4, 0x1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0805743E - cmp r2, 0 - beq _08057442 - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _0805743E - adds r0, r6, 0 - adds r0, 0xBC - ldrb r1, [r0] - adds r5, r0, 0 - cmp r1, 0x5 - bne _08057414 - adds r0, r4, 0 - bl sub_8092C54 - lsls r0, 24 - cmp r0, 0 - beq _0805743E -_08057414: - ldrb r0, [r5] - cmp r0, 0x6 - bne _08057442 - ldrh r1, [r4, 0x2] - movs r0, 0xB0 - lsls r0, 1 - cmp r1, r0 - bne _08057434 - movs r1, 0x9C - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - b _08057436 - .align 2, 0 -_08057430: .4byte 0x00000163 -_08057434: - ldrb r1, [r4] -_08057436: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08057442 -_0805743E: - movs r0, 0 - b _08057444 -_08057442: - movs r0, 0x1 -_08057444: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80573CC - - thumb_func_start sub_805744C -sub_805744C: - push {r4-r6,lr} - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - ldr r6, [r0, 0x70] - ldrh r1, [r4, 0x2] - ldr r0, _080574A8 - cmp r1, r0 - beq _080574BA - ldrb r1, [r4] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _080574B6 - ldrb r1, [r4, 0x1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080574B6 - cmp r2, 0 - beq _080574BA - adds r0, r6, 0 - adds r0, 0xBC - ldrb r1, [r0] - adds r5, r0, 0 - cmp r1, 0x5 - bne _0805748E - adds r0, r4, 0 - bl sub_8092C54 - lsls r0, 24 - cmp r0, 0 - beq _080574B6 -_0805748E: - ldrb r0, [r5] - cmp r0, 0x6 - bne _080574BA - ldrh r1, [r4, 0x2] - movs r0, 0xB0 - lsls r0, 1 - cmp r1, r0 - bne _080574AC - movs r1, 0x9C - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - b _080574AE - .align 2, 0 -_080574A8: .4byte 0x00000163 -_080574AC: - ldrb r1, [r4] -_080574AE: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _080574BA -_080574B6: - movs r0, 0 - b _080574BC -_080574BA: - movs r0, 0x1 -_080574BC: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805744C - - thumb_func_start sub_80574C4 -sub_80574C4: - push {r4-r6,lr} - sub sp, 0x104 - adds r4, r0, 0 - adds r5, r1, 0 - movs r3, 0 - movs r2, 0 - ldr r0, [r4] - cmp r0, 0 - beq _08057502 - cmp r0, r5 - beq _080574EA -_080574DA: - lsls r0, r3, 2 - mov r6, sp - adds r1, r6, r0 - lsls r0, r2, 2 - adds r0, r4 - ldr r0, [r0] - str r0, [r1] - adds r3, 0x1 -_080574EA: - adds r2, 0x1 - cmp r2, 0x40 - bgt _08057502 - lsls r0, r2, 2 - adds r0, r4 - ldr r0, [r0] - cmp r0, 0 - beq _08057502 - cmp r0, r5 - beq _080574EA - cmp r3, 0x3F - ble _080574DA -_08057502: - movs r2, 0 - ldr r0, [r4] - b _08057524 -_08057508: - lsls r0, r3, 2 - mov r6, sp - adds r1, r6, r0 - lsls r0, r2, 2 - adds r0, r4 - ldr r0, [r0] - str r0, [r1] - adds r3, 0x1 -_08057518: - adds r2, 0x1 - cmp r2, 0x40 - bgt _08057530 - lsls r0, r2, 2 - adds r0, r4 - ldr r0, [r0] -_08057524: - cmp r0, 0 - beq _08057530 - cmp r0, r5 - bne _08057518 - cmp r3, 0x3F - ble _08057508 -_08057530: - cmp r3, 0x40 - bgt _08057542 - movs r1, 0 - lsls r0, r3, 2 - add r0, sp -_0805753A: - stm r0!, {r1} - adds r3, 0x1 - cmp r3, 0x40 - ble _0805753A -_08057542: - mov r3, sp - adds r1, r4, 0 - movs r2, 0x40 -_08057548: - ldm r3!, {r0} - stm r1!, {r0} - subs r2, 0x1 - cmp r2, 0 - bge _08057548 - add sp, 0x104 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80574C4 - - thumb_func_start sub_805755C -sub_805755C: - push {r4,lr} - lsls r1, 16 - lsrs r4, r1, 16 - cmp r4, 0x97 - bne _08057576 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08057576 - movs r0, 0 - b _08057580 -_08057576: - adds r0, r4, 0 - bl sub_809422C - lsls r0, 24 - lsrs r0, 24 -_08057580: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805755C - - thumb_func_start sub_8057588 -sub_8057588: - push {r4-r6,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080575F8 - ldr r5, [r4, 0x70] - movs r3, 0 -_0805759E: - lsls r0, r3, 3 - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - adds r2, r5, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - adds r4, r3, 0x1 - cmp r0, 0 - beq _080575F2 - movs r3, 0x1 - ldrb r1, [r2, 0x1] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080575C8 - movs r0, 0xEF - ands r0, r1 - strb r0, [r2, 0x1] - movs r3, 0x2 -_080575C8: - ldrb r1, [r2, 0x1] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080575F2 - movs r0, 0xF7 - ands r0, r1 - strb r0, [r2, 0x1] - cmp r6, 0 - beq _080575F2 - cmp r3, 0 - beq _080575F2 - adds r1, r3, 0 -_080575E2: - ldrb r0, [r2, 0x4] - cmp r0, 0 - beq _080575EC - subs r0, 0x1 - strb r0, [r2, 0x4] -_080575EC: - subs r1, 0x1 - cmp r1, 0 - bne _080575E2 -_080575F2: - adds r3, r4, 0 - cmp r3, 0x3 - ble _0805759E -_080575F8: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8057588 - - thumb_func_start sub_8057600 -sub_8057600: - push {r4,lr} - ldrh r4, [r0, 0x2] - adds r0, r1, 0 - bl sub_8057620 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_8094828 - lsls r0, 16 - asrs r0, 16 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8057600 - - thumb_func_start sub_8057620 -sub_8057620: - push {lr} - cmp r0, 0 - beq _0805762C - lsls r0, 24 - lsrs r0, 24 - b _0805762E -_0805762C: - movs r0, 0 -_0805762E: - pop {r1} - bx r1 - thumb_func_end sub_8057620 - - thumb_func_start sub_8057634 -sub_8057634: - push {r4-r7,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08057678 - movs r7, 0x1 - ldr r0, _08057684 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08057678 - ldr r0, _08057688 - ldr r2, [r0] - str r7, [sp] - movs r0, 0 - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0x1 - bl sub_8076F80 -_08057678: - adds r0, r7, 0 - add sp, 0x8 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057684: .4byte gUnknown_80F4DB4 -_08057688: .4byte gUnknown_8106A4C - thumb_func_end sub_8057634 - - thumb_func_start sub_805768C -sub_805768C: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r3, 0 - movs r6, 0 - ldr r4, _080576B8 - ldr r3, [r4] - adds r3, 0x1 - str r3, [r4] - ldr r4, _080576BC - lsls r3, 2 - adds r3, r4 - ldr r3, [r3] - str r5, [sp] - bl sub_8055640 - cmp r0, 0 - bne _080576C4 - ldr r1, _080576C0 - movs r0, 0x1 - strb r0, [r1] - b _080576C6 - .align 2, 0 -_080576B8: .4byte gUnknown_202F21C -_080576BC: .4byte gUnknown_8106A54 -_080576C0: .4byte gUnknown_202F220 -_080576C4: - movs r6, 0x1 -_080576C6: - adds r0, r6, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805768C - - thumb_func_start sub_80576D0 -sub_80576D0: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _080576F4 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r2, r0, 0 - adds r2, 0x1 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8075F34 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080576F4: .4byte gUnknown_80F4F28 - thumb_func_end sub_80576D0 - - thumb_func_start sub_80576F8 -sub_80576F8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _0805771C - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r2, r0, 0 - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8075C58 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805771C: .4byte gUnknown_80F4E74 - thumb_func_end sub_80576F8 - - thumb_func_start sub_8057720 -sub_8057720: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _08057744 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r2, r0, 0 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8075DBC - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08057744: .4byte gUnknown_80F4E78 - thumb_func_end sub_8057720 - - thumb_func_start sub_8057748 -sub_8057748: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - ldr r4, _08057778 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 23 - adds r0, r4 - movs r1, 0 - ldrsh r2, [r0, r1] - movs r0, 0x1 - str r0, [sp] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0 - bl sub_8077C44 - movs r0, 0x1 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08057778: .4byte gUnknown_80F502A - thumb_func_end sub_8057748 - - thumb_func_start sub_805777C -sub_805777C: - push {lr} - bl sub_8079DB8 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805777C - - thumb_func_start sub_8057788 -sub_8057788: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r7, r1, 0 - adds r6, r2, 0 - mov r8, r3 - movs r0, 0 - mov r9, r0 - adds r0, r4, 0 - bl sub_8045128 - adds r5, r0, 0 - bl sub_804AF20 - lsls r0, 24 - cmp r0, 0 - beq _080577BA - ldrh r1, [r5] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _080577CC -_080577BA: - ldr r0, _080577C8 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_80522F4 - b _0805780E - .align 2, 0 -_080577C8: .4byte gUnknown_80FD14C -_080577CC: - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _080577F8 - ldr r0, _080577F4 - ldr r3, [r0] - mov r0, r8 - str r0, [sp] - adds r0, r4, 0 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_8055640 - adds r0, r4, 0 - bl sub_8079764 - b _0805780A - .align 2, 0 -_080577F4: .4byte gUnknown_80F4F68 -_080577F8: - ldr r0, _08057820 - ldr r0, [r0] - str r0, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0xA - adds r3, r6, 0 - bl sub_8079618 -_0805780A: - movs r0, 0x1 - mov r9, r0 -_0805780E: - mov r0, r9 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057820: .4byte gUnknown_80FAD4C - thumb_func_end sub_8057788 - - thumb_func_start sub_8057824 -sub_8057824: - push {lr} - ldr r2, _08057838 - ldr r2, [r2] - movs r3, 0x1 - bl sub_80775DC - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_08057838: .4byte gUnknown_8106A50 - thumb_func_end sub_8057824 - - thumb_func_start sub_805783C -sub_805783C: - push {lr} - sub sp, 0x4 - ldr r2, _08057858 - ldr r2, [r2] - movs r3, 0x1 - str r3, [sp] - movs r3, 0x80 - bl sub_80772C0 - movs r0, 0x1 - add sp, 0x4 - pop {r1} - bx r1 - .align 2, 0 -_08057858: .4byte gUnknown_8106A4C - thumb_func_end sub_805783C - - thumb_func_start sub_805785C -sub_805785C: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, _08057894 - ldr r0, [r0] - ldr r1, _08057898 - ldrh r1, [r1] - ldr r2, _0805789C - adds r0, r2 - strb r1, [r0] - movs r0, 0x1 - movs r1, 0 - bl sub_807EAA0 - lsls r0, 24 - cmp r0, 0 - bne _0805788A - ldr r0, _080578A0 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0805788A: - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08057894: .4byte gUnknown_203B418 -_08057898: .4byte gUnknown_80F4F42 -_0805789C: .4byte 0x0000e26b -_080578A0: .4byte gUnknown_80FCF74 - thumb_func_end sub_805785C - - thumb_func_start sub_80578A4 -sub_80578A4: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, _080578DC - ldr r0, [r0] - ldr r1, _080578E0 - ldrh r1, [r1] - ldr r2, _080578E4 - adds r0, r2 - strb r1, [r0] - movs r0, 0x1 - movs r1, 0 - bl sub_807EAA0 - lsls r0, 24 - cmp r0, 0 - bne _080578D2 - ldr r0, _080578E8 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 -_080578D2: - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080578DC: .4byte gUnknown_203B418 -_080578E0: .4byte gUnknown_80F4F42 -_080578E4: .4byte 0x0000e26c -_080578E8: .4byte gUnknown_80FCF80 - thumb_func_end sub_80578A4 - - thumb_func_start sub_80578EC -sub_80578EC: - push {lr} - movs r2, 0x1 - movs r3, 0 - bl sub_8079F20 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_80578EC - - thumb_func_start sub_80578FC -sub_80578FC: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08057938 - movs r7, 0x1 - ldr r0, _08057944 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08057938 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_80779F0 -_08057938: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057944: .4byte gUnknown_80F4DB6 - thumb_func_end sub_80578FC - - thumb_func_start sub_8057948 -sub_8057948: - push {lr} - bl sub_8078968 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8057948 - - thumb_func_start sub_8057954 -sub_8057954: - push {lr} - sub sp, 0x4 - adds r3, r2, 0 - ldr r2, _08057970 - ldr r2, [r2] - str r2, [sp] - movs r2, 0xC - bl sub_8079618 - movs r0, 0x1 - add sp, 0x4 - pop {r1} - bx r1 - .align 2, 0 -_08057970: .4byte gUnknown_80FAC88 - thumb_func_end sub_8057954 - - thumb_func_start sub_8057974 -sub_8057974: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - mov r10, r0 - adds r5, r1, 0 - adds r7, r2, 0 - mov r9, r3 - ldr r0, [r5, 0x70] - movs r1, 0xE - ldrsh r0, [r0, r1] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - mov r8, r0 - movs r6, 0 - add r0, sp, 0x18 - strb r6, [r0] - mov r0, r8 - cmp r0, 0 - beq _080579E8 - adds r0, r7, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r7, 0 - mov r1, r9 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r6, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r6, [sp, 0x14] - mov r0, r10 - adds r1, r5, 0 - mov r2, r8 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _080579E4 - movs r2, 0x1 -_080579E4: - strb r2, [r1] - b _080579F4 -_080579E8: - ldr r0, _08057A08 - ldr r2, [r0] - mov r0, r10 - adds r1, r5, 0 - bl sub_80522F4 -_080579F4: - add r0, sp, 0x18 - ldrb r0, [r0] - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057A08: .4byte gUnknown_80FD018 - thumb_func_end sub_8057974 - - thumb_func_start sub_8057A0C -sub_8057A0C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - adds r6, r1, 0 - ldr r2, [r5, 0x70] - mov r8, r2 - ldr r0, [r6, 0x70] - adds r3, r0, 0 - movs r1, 0xE - ldrsh r0, [r2, r1] - movs r4, 0xE - ldrsh r1, [r3, r4] - adds r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - strh r0, [r2, 0xE] - strh r0, [r3, 0xE] - movs r7, 0xE - ldrsh r1, [r2, r7] - ldrh r4, [r2, 0x10] - movs r7, 0x10 - ldrsh r0, [r2, r7] - cmp r1, r0 - ble _08057A42 - strh r4, [r2, 0xE] -_08057A42: - movs r0, 0xE - ldrsh r1, [r3, r0] - ldrh r2, [r3, 0x10] - movs r4, 0x10 - ldrsh r0, [r3, r4] - cmp r1, r0 - ble _08057A52 - strh r2, [r3, 0xE] -_08057A52: - ldr r4, _08057A90 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - mov r1, r8 - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _08057A78 - movs r0, 0x1 - strb r0, [r1] -_08057A78: - ldr r0, _08057A94 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80522F4 - movs r0, 0x1 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057A90: .4byte gUnknown_202DF98 -_08057A94: .4byte gUnknown_80FC7EC - thumb_func_end sub_8057A0C - - thumb_func_start sub_8057A98 -sub_8057A98: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - mov r10, r0 - mov r8, r1 - ldr r0, [r1, 0x70] - str r0, [sp, 0x8] - movs r1, 0 - str r1, [sp, 0xC] - movs r1, 0x8C - lsls r1, 1 - adds r4, r0, r1 - adds r5, r4, 0 - movs r0, 0x10 - mov r9, r0 - movs r7, 0x3 -_08057ABE: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08057B12 - movs r6, 0x20 - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _08057B04 - mov r0, r9 - ands r0, r1 - cmp r0, 0 - beq _08057B12 - ldr r0, _08057AFC - adds r1, r5, 0 - movs r2, 0 - bl sub_80928C0 - ldr r0, _08057B00 - ldr r2, [r0] - mov r0, r10 - mov r1, r8 - bl sub_80522F4 - ldrb r0, [r4] - orrs r0, r6 - strb r0, [r4] - movs r1, 0x1 - str r1, [sp, 0xC] - b _08057B12 - .align 2, 0 -_08057AFC: .4byte gUnknown_202DE58 -_08057B00: .4byte gUnknown_80FCFBC -_08057B04: - mov r0, r9 - ands r0, r1 - cmp r0, 0 - bne _08057B12 - movs r0, 0xDF - ands r0, r1 - strb r0, [r4] -_08057B12: - adds r4, 0x8 - adds r5, 0x8 - subs r7, 0x1 - cmp r7, 0 - bge _08057ABE - ldr r0, [sp, 0x8] - movs r1, 0x9C - lsls r1, 1 - adds r4, r0, r1 - ldrb r1, [r4] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _08057B6C - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08057B7A - movs r1, 0xB0 - lsls r1, 1 - mov r0, sp - bl sub_8092A88 - ldrb r1, [r4] - movs r0, 0x20 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x1 - str r0, [sp, 0xC] - ldr r0, _08057B64 - mov r1, sp - movs r2, 0 - bl sub_80928C0 - ldr r0, _08057B68 - ldr r2, [r0] - mov r0, r10 - mov r1, r8 - bl sub_80522F4 - b _08057B7A - .align 2, 0 -_08057B64: .4byte gUnknown_202DE58 -_08057B68: .4byte gUnknown_80FCFBC -_08057B6C: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08057B7A - movs r0, 0xDF - ands r0, r1 - strb r0, [r4] -_08057B7A: - ldr r1, [sp, 0xC] - cmp r1, 0 - beq _08057B90 - ldr r1, [sp, 0x8] - adds r1, 0xC0 - ldrb r0, [r1] - cmp r0, 0x1 - bne _08057B9C - movs r0, 0 - strb r0, [r1] - b _08057B9C -_08057B90: - ldr r0, _08057BB0 - ldr r2, [r0] - mov r0, r10 - mov r1, r8 - bl sub_80522F4 -_08057B9C: - ldr r0, [sp, 0xC] - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057BB0: .4byte gUnknown_80FCFE4 - thumb_func_end sub_8057A98 - - thumb_func_start sub_8057BB4 -sub_8057BB4: - push {lr} - movs r2, 0x1 - movs r3, 0x1 - bl sub_80779F0 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8057BB4 - - thumb_func_start sub_8057BC4 -sub_8057BC4: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8077AE4 - ldr r0, _08057BE8 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0x2 - bl sub_8077084 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08057BE8: .4byte gUnknown_8106A4C - thumb_func_end sub_8057BC4 - - thumb_func_start sub_8057BEC -sub_8057BEC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - adds r7, r2, 0 - adds r6, r3, 0 - movs r0, 0 - mov r8, r0 - adds r0, r4, 0 - bl sub_8070B28 - lsls r0, 24 - cmp r0, 0 - beq _08057C48 - movs r3, 0x80 - lsls r3, 1 - str r6, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r7, 0 - bl sub_8055640 - cmp r0, 0 - beq _08057C54 - movs r1, 0x1 - mov r8, r1 - ldr r0, _08057C44 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08057C54 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_80776C0 - b _08057C54 - .align 2, 0 -_08057C44: .4byte gUnknown_80F4E0A -_08057C48: - ldr r0, _08057C64 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08057C54: - mov r0, r8 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057C64: .4byte gUnknown_80FC734 - thumb_func_end sub_8057BEC - - thumb_func_start sub_8057C68 -sub_8057C68: - push {lr} - sub sp, 0x4 - ldr r2, _08057C84 - ldr r2, [r2] - movs r3, 0x1 - str r3, [sp] - movs r3, 0x40 - bl sub_8077434 - movs r0, 0x1 - add sp, 0x4 - pop {r1} - bx r1 - .align 2, 0 -_08057C84: .4byte gUnknown_8106A4C - thumb_func_end sub_8057C68 - - thumb_func_start sub_8057C88 -sub_8057C88: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08057CC2 - movs r7, 0x1 - ldr r0, _08057CCC - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08057CC2 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80776C0 -_08057CC2: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057CCC: .4byte gUnknown_80F4DF6 - thumb_func_end sub_8057C88 - - thumb_func_start sub_8057CD0 -sub_8057CD0: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x8 - adds r4, r0, 0 - adds r6, r1, 0 - mov r8, r2 - adds r5, r3, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08057D18 - adds r1, r0, r1 - ldrb r2, [r1] - ldr r1, _08057D1C - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [sp] - str r5, [sp, 0x4] - adds r0, r4, 0 - adds r1, r6, 0 - mov r3, r8 - bl sub_80556BC - cmp r0, 0 - beq _08057D0A - movs r0, 0x1 -_08057D0A: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08057D18: .4byte gUnknown_80F51E4 -_08057D1C: .4byte gUnknown_80F51EC - thumb_func_end sub_8057CD0 - - thumb_func_start sub_8057D20 -sub_8057D20: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r4, r1, 0 - movs r7, 0 - ldr r0, [r4, 0x70] - adds r0, 0xC0 - ldrb r0, [r0] - movs r6, 0x80 - lsls r6, 1 - cmp r0, 0x9 - bne _08057D3C - movs r6, 0x80 - lsls r6, 2 -_08057D3C: - str r3, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - adds r3, r6, 0 - bl sub_8055640 - cmp r0, 0 - beq _08057D6E - movs r7, 0x1 - ldr r0, _08057D78 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08057D6E - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x3B - movs r3, 0 - bl sub_80768DC -_08057D6E: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057D78: .4byte gUnknown_80F4E08 - thumb_func_end sub_8057D20 - - thumb_func_start sub_8057D7C -sub_8057D7C: - push {lr} - sub sp, 0x8 - ldr r2, _08057D98 - ldr r2, [r2] - movs r3, 0x1 - str r3, [sp] - str r3, [sp, 0x4] - movs r3, 0x2 - bl sub_8076F80 - movs r0, 0x1 - add sp, 0x8 - pop {r1} - bx r1 - .align 2, 0 -_08057D98: .4byte gUnknown_8106A50 - thumb_func_end sub_8057D7C - - thumb_func_start sub_8057D9C -sub_8057D9C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - ldr r0, [r4, 0x70] - movs r5, 0 - ldr r1, _08057DF8 - mov r8, r1 - movs r1, 0x8C - lsls r1, 1 - adds r2, r0, r1 - movs r0, 0x1 - mov r12, r0 - movs r7, 0x10 - movs r3, 0x3 -_08057DBC: - ldrb r1, [r2] - mov r0, r12 - ands r0, r1 - cmp r0, 0 - beq _08057DD4 - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08057DD4 - movs r0, 0 - strb r0, [r2, 0x4] - movs r5, 0x1 -_08057DD4: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08057DBC - mov r0, r8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - cmp r5, 0 - beq _08057E00 - ldr r0, _08057DFC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08057E0C - .align 2, 0 -_08057DF8: .4byte gUnknown_202DFE8 -_08057DFC: .4byte gUnknown_80FD350 -_08057E00: - ldr r0, _08057E18 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08057E0C: - adds r0, r5, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057E18: .4byte gUnknown_80FD370 - thumb_func_end sub_8057D9C - - thumb_func_start sub_8057E1C -sub_8057E1C: - push {lr} - bl sub_8078348 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8057E1C - - thumb_func_start sub_8057E28 -sub_8057E28: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _08057E4C - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r2, r0, 0 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807824C - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08057E4C: .4byte gUnknown_80F4EDC - thumb_func_end sub_8057E28 - - thumb_func_start sub_8057E50 -sub_8057E50: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_807A9D8 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8079CA0 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8057E50 - - thumb_func_start sub_8057E6C -sub_8057E6C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r7, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - adds r4, r3, 0 - movs r0, 0 - mov r8, r0 - ldr r1, [r7, 0x70] - mov r9, r1 - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_807A9D8 - movs r3, 0x80 - lsls r3, 1 - str r4, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_8055640 - cmp r0, 0 - beq _08057EBC - movs r0, 0x1 - mov r8, r0 - adds r0, r7, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _08057EBC - ldr r0, _08057ECC - add r0, r9 - mov r1, r8 - strb r1, [r0] -_08057EBC: - mov r0, r8 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057ECC: .4byte 0x00000155 - thumb_func_end sub_8057E6C - - thumb_func_start sub_8057ED0 -sub_8057ED0: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08057F12 - movs r7, 0x1 - ldr r0, _08057F1C - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08057F12 - ldr r0, _08057F20 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0x80 - bl sub_80772C0 -_08057F12: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057F1C: .4byte gUnknown_80F4E04 -_08057F20: .4byte gUnknown_8106A4C - thumb_func_end sub_8057ED0 - - thumb_func_start sub_8057F24 -sub_8057F24: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r6, r0, 0 - mov r8, r1 - ldr r5, [r6, 0x70] - movs r0, 0x1 - mov r9, r0 - movs r4, 0x1 - strh r4, [r5, 0xE] - ldr r0, _08057F74 - ldr r2, [r0] - str r4, [sp] - adds r0, r6, 0 - movs r3, 0x40 - bl sub_80772C0 - ldr r0, _08057F78 - ldr r2, [r0] - str r4, [sp] - adds r0, r6, 0 - mov r1, r8 - movs r3, 0x40 - bl sub_80772C0 - movs r0, 0xAA - lsls r0, 1 - adds r5, r0 - mov r0, r9 - strb r0, [r5] - movs r0, 0x1 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08057F74: .4byte gUnknown_8106A4C -_08057F78: .4byte gUnknown_8106A50 - thumb_func_end sub_8057F24 - - thumb_func_start sub_8057F7C -sub_8057F7C: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08057FBA - movs r7, 0x1 - ldr r0, _08057FC4 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08057FBA - ldr r0, _08057FC8 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0 - bl sub_80775DC -_08057FBA: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08057FC4: .4byte gUnknown_80F4E02 -_08057FC8: .4byte gUnknown_8106A4C - thumb_func_end sub_8057F7C - - thumb_func_start sub_8057FCC -sub_8057FCC: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8077AE4 - ldr r0, _08057FF0 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0x1 - bl sub_8077084 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08057FF0: .4byte gUnknown_8106A50 - thumb_func_end sub_8057FCC - - thumb_func_start sub_8057FF4 -sub_8057FF4: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_807723C - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - beq _08058048 - ldr r0, [r4, 0x70] - movs r2, 0xA9 - lsls r2, 1 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - bne _08058054 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _0805802C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - cmp r6, 0x1 - bne _08058034 - ldr r0, _08058030 - b _08058036 - .align 2, 0 -_0805802C: .4byte gUnknown_202DFE8 -_08058030: .4byte gUnknown_80FAE00 -_08058034: - ldr r0, _08058044 -_08058036: - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08058054 - .align 2, 0 -_08058044: .4byte gUnknown_80FADD8 -_08058048: - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8076210 -_08058054: - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8057FF4 - - thumb_func_start sub_805805C -sub_805805C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - mov r10, r0 - mov r9, r1 - adds r5, r2, 0 - mov r8, r3 - ldr r1, [r0, 0x70] - movs r6, 0x1 - movs r2, 0 - ldr r4, _08058098 - movs r3, 0 - ldrsh r0, [r4, r3] - cmp r0, 0 - blt _080580B0 - movs r7, 0xC - ldrsh r3, [r1, r7] - adds r1, r4, 0 - ldr r4, _0805809C -_08058088: - movs r7, 0 - ldrsh r0, [r1, r7] - cmp r3, r0 - bge _080580A0 - movs r0, 0x2 - ldrsh r6, [r1, r0] - b _080580B0 - .align 2, 0 -_08058098: .4byte gUnknown_80F55BC -_0805809C: .4byte 0x000003e6 -_080580A0: - adds r1, 0x4 - adds r2, 0x1 - cmp r2, r4 - bgt _080580B0 - movs r7, 0 - ldrsh r0, [r1, r7] - cmp r0, 0 - bge _08058088 -_080580B0: - adds r0, r5, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - mov r1, r8 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - movs r1, 0 - str r1, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r1, [sp, 0x14] - mov r0, r10 - mov r1, r9 - adds r2, r6, 0 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _080580F4 - movs r2, 0x1 -_080580F4: - strb r2, [r1] - add r0, sp, 0x18 - ldrb r0, [r0] - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805805C - - thumb_func_start sub_805810C -sub_805810C: - push {r4-r7,lr} - adds r6, r0, 0 - adds r5, r1, 0 - movs r7, 0 - ldr r4, [r5, 0x70] - ldr r0, _08058134 - movs r2, 0 - bl sub_8045B94 - adds r4, 0xF4 - ldrb r0, [r4] - cmp r0, 0 - beq _0805813C - ldr r0, _08058138 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _0805814E - .align 2, 0 -_08058134: .4byte gUnknown_202DFE8 -_08058138: .4byte gUnknown_80FD2B4 -_0805813C: - movs r0, 0x1 - strb r0, [r4] - movs r7, 0x1 - ldr r0, _08058158 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0805814E: - adds r0, r7, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058158: .4byte gUnknown_80FD294 - thumb_func_end sub_805810C - - thumb_func_start sub_805815C -sub_805815C: - push {lr} - movs r2, 0x4 - bl sub_80797A0 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805815C - - thumb_func_start sub_805816C -sub_805816C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r6, r0, 0 - adds r7, r1, 0 - adds r5, r2, 0 - adds r4, r3, 0 - movs r0, 0 - mov r8, r0 - adds r0, r6, 0 - bl sub_807A9D8 - movs r3, 0x80 - lsls r3, 1 - str r4, [sp] - adds r0, r6, 0 - adds r1, r7, 0 - adds r2, r5, 0 - bl sub_8055640 - cmp r0, 0 - beq _080581BE - movs r1, 0x1 - mov r8, r1 - ldr r0, _080581CC - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _080581BE - adds r0, r6, 0 - adds r1, r7, 0 - movs r2, 0 - movs r3, 0 - bl sub_8076210 -_080581BE: - mov r0, r8 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080581CC: .4byte gUnknown_80F4DB8 - thumb_func_end sub_805816C - - thumb_func_start sub_80581D0 -sub_80581D0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r6, r0, 0 - adds r7, r1, 0 - adds r5, r2, 0 - adds r4, r3, 0 - movs r0, 0 - mov r8, r0 - adds r0, r6, 0 - bl sub_807A9D8 - movs r3, 0x80 - lsls r3, 1 - str r4, [sp] - adds r0, r6, 0 - adds r1, r7, 0 - adds r2, r5, 0 - bl sub_8055640 - cmp r0, 0 - beq _08058222 - movs r1, 0x1 - mov r8, r1 - ldr r0, _08058230 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08058222 - adds r0, r6, 0 - adds r1, r7, 0 - movs r2, 0 - movs r3, 0 - bl sub_8076210 -_08058222: - mov r0, r8 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058230: .4byte gUnknown_80F4DBA - thumb_func_end sub_80581D0 - - thumb_func_start sub_8058234 -sub_8058234: - push {r4,lr} - adds r3, r0, 0 - adds r4, r1, 0 - ldrh r1, [r2, 0x2] - ldr r0, _08058258 - movs r2, 0x51 - cmp r1, r0 - bne _08058246 - movs r2, 0x7A -_08058246: - adds r0, r3, 0 - adds r1, r4, 0 - bl sub_8078FDC - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08058258: .4byte 0x0000013b - thumb_func_end sub_8058234 - - thumb_func_start sub_805825C -sub_805825C: - push {lr} - ldr r2, _0805826C - ldr r2, [r2] - bl sub_8077540 - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_0805826C: .4byte gUnknown_8106A50 - thumb_func_end sub_805825C - - thumb_func_start sub_8058270 -sub_8058270: - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r2, 0 - adds r2, r3, 0 - movs r3, 0x1 - ldr r0, [r1, 0x70] - adds r0, 0xC0 - ldrb r0, [r0] - subs r0, 0x7 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0805828E - movs r3, 0x2 -_0805828E: - lsls r3, 8 - str r2, [sp] - adds r0, r4, 0 - adds r2, r5, 0 - bl sub_8055640 - adds r1, r0, 0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8058270 - - thumb_func_start sub_80582AC -sub_80582AC: - push {lr} - ldr r2, _080582C0 - ldr r2, [r2] - movs r3, 0x1 - bl sub_8077160 - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_080582C0: .4byte gUnknown_8106A4C - thumb_func_end sub_80582AC - - thumb_func_start sub_80582C4 -sub_80582C4: - push {lr} - movs r2, 0x1 - bl sub_8077780 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_80582C4 - - thumb_func_start sub_80582D4 -sub_80582D4: - push {lr} - ldr r2, _080582E8 - ldr r2, [r2] - movs r3, 0x1 - bl sub_8077084 - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_080582E8: .4byte gUnknown_8106A4C - thumb_func_end sub_80582D4 - - thumb_func_start sub_80582EC -sub_80582EC: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r7, r1, 0 - adds r4, r2, 0 - adds r6, r3, 0 - adds r1, r4, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _08058328 - ldr r0, _08058324 - ldr r3, [r0] - str r6, [sp] - adds r0, r5, 0 - adds r1, r7, 0 - adds r2, r4, 0 - bl sub_8055640 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - adds r0, r5, 0 - bl sub_8079764 - b _0805833C - .align 2, 0 -_08058324: .4byte gUnknown_80F4F50 -_08058328: - ldr r0, _08058348 - ldr r0, [r0] - str r0, [sp] - adds r0, r5, 0 - adds r1, r5, 0 - movs r2, 0x4 - adds r3, r4, 0 - bl sub_8079618 - movs r4, 0x1 -_0805833C: - adds r0, r4, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058348: .4byte gUnknown_80FAC54 - thumb_func_end sub_80582EC - - thumb_func_start sub_805834C -sub_805834C: - push {lr} - sub sp, 0x4 - adds r3, r2, 0 - ldr r2, _08058368 - ldr r2, [r2] - str r2, [sp] - movs r2, 0x1 - bl sub_8079618 - movs r0, 0x1 - add sp, 0x4 - pop {r1} - bx r1 - .align 2, 0 -_08058368: .4byte gUnknown_80FAC74 - thumb_func_end sub_805834C - - thumb_func_start sub_805836C -sub_805836C: - push {r4-r7,lr} - sub sp, 0x1C - adds r6, r0, 0 - adds r7, r1, 0 - movs r5, 0 - add r0, sp, 0x18 - strb r5, [r0] - ldr r0, [r6, 0x70] - adds r0, 0xA0 - ldr r0, [r0] - lsls r4, r0, 1 - ldr r0, _080583D0 - cmp r4, r0 - ble _0805838A - adds r4, r0, 0 -_0805838A: - adds r0, r2, 0 - bl sub_8092B00 - lsls r0, 24 - lsrs r0, 24 - add r1, sp, 0x18 - str r1, [sp] - str r0, [sp, 0x4] - ldr r0, _080583D4 - str r0, [sp, 0x8] - str r5, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r5, [sp, 0x14] - adds r0, r6, 0 - adds r1, r7, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _080583C0 - movs r2, 0x1 -_080583C0: - strb r2, [r1] - add r0, sp, 0x18 - ldrb r0, [r0] - add sp, 0x1C - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080583D0: .4byte 0x000003e7 -_080583D4: .4byte 0x000001ff - thumb_func_end sub_805836C - - thumb_func_start sub_80583D8 -sub_80583D8: - push {r4-r7,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805841C - movs r7, 0x1 - ldr r0, _08058428 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805841C - ldr r0, _0805842C - ldr r2, [r0] - str r7, [sp] - movs r0, 0 - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0x1 - bl sub_8076F80 -_0805841C: - adds r0, r7, 0 - add sp, 0x8 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058428: .4byte gUnknown_80F4DC2 -_0805842C: .4byte gUnknown_8106A50 - thumb_func_end sub_80583D8 - - thumb_func_start sub_8058430 -sub_8058430: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805846A - movs r7, 0x1 - ldr r0, _08058474 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805846A - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80776C0 -_0805846A: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058474: .4byte gUnknown_80F4DEE - thumb_func_end sub_8058430 - - thumb_func_start sub_8058478 -sub_8058478: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _080584B2 - movs r7, 0x1 - ldr r0, _080584BC - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _080584B2 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077780 -_080584B2: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080584BC: .4byte gUnknown_80F4DE6 - thumb_func_end sub_8058478 - - thumb_func_start sub_80584C0 -sub_80584C0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - mov r9, r0 - mov r10, r1 - adds r6, r2, 0 - mov r8, r3 - movs r7, 0 - add r0, sp, 0x18 - strb r7, [r0] - mov r0, r9 - ldr r2, [r0, 0x70] - ldr r0, [r1, 0x70] - movs r3, 0xE - ldrsh r1, [r0, r3] - movs r3, 0xE - ldrsh r0, [r2, r3] - subs r5, r1, r0 - cmp r5, 0 - bge _080584F0 - movs r5, 0 -_080584F0: - adds r0, r6, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - mov r1, r8 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r7, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r7, [sp, 0x14] - mov r0, r9 - mov r1, r10 - adds r2, r5, 0 - movs r3, 0 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _08058532 - movs r2, 0x1 -_08058532: - strb r2, [r1] - add r0, sp, 0x18 - ldrb r0, [r0] - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80584C0 - - thumb_func_start sub_8058548 -sub_8058548: - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - movs r5, 0x80 - lsls r5, 1 - ldr r0, [r4, 0x70] - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0 - beq _08058560 - ldr r0, _0805857C - ldr r5, [r0] -_08058560: - str r3, [sp] - adds r0, r4, 0 - adds r3, r5, 0 - bl sub_8055640 - adds r1, r0, 0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805857C: .4byte gUnknown_80F4F6C - thumb_func_end sub_8058548 - - thumb_func_start sub_8058580 -sub_8058580: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _080585BC - movs r7, 0x1 - ldr r0, _080585C8 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _080585BC - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_80779F0 -_080585BC: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080585C8: .4byte gUnknown_80F4DD4 - thumb_func_end sub_8058580 - - thumb_func_start sub_80585CC -sub_80585CC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r5, r0, 0 - adds r4, r1, 0 - mov r8, r2 - adds r7, r3, 0 - movs r6, 0 - ldr r0, [r4, 0x70] - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080585EC - cmp r0, 0x3 - bne _08058602 -_080585EC: - ldr r0, _08058620 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807A4C8 - movs r6, 0x1 -_08058602: - movs r3, 0x80 - lsls r3, 1 - str r7, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - mov r2, r8 - bl sub_8055640 - cmp r0, 0 - beq _08058624 - movs r0, 0x1 - orrs r0, r6 - lsls r0, 24 - b _08058626 - .align 2, 0 -_08058620: .4byte gUnknown_80FD104 -_08058624: - lsls r0, r6, 24 -_08058626: - lsrs r0, 24 - adds r6, r0, 0 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80585CC - - thumb_func_start sub_8058638 -sub_8058638: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08058670 - movs r7, 0x1 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08058670 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_80779F0 -_08058670: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8058638 - - thumb_func_start sub_805867C -sub_805867C: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r7, r1, 0 - adds r4, r2, 0 - adds r6, r3, 0 - adds r1, r4, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _080586B8 - ldr r0, _080586B4 - ldr r3, [r0] - str r6, [sp] - adds r0, r5, 0 - adds r1, r7, 0 - adds r2, r4, 0 - bl sub_8055640 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - adds r0, r5, 0 - bl sub_8079764 - b _080586CC - .align 2, 0 -_080586B4: .4byte gUnknown_80F4F54 -_080586B8: - ldr r0, _080586D8 - ldr r0, [r0] - str r0, [sp] - adds r0, r5, 0 - adds r1, r5, 0 - movs r2, 0x5 - adds r3, r4, 0 - bl sub_8079618 - movs r4, 0x1 -_080586CC: - adds r0, r4, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080586D8: .4byte gUnknown_80FACA4 - thumb_func_end sub_805867C - - thumb_func_start sub_80586DC -sub_80586DC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r7, r0, 0 - adds r4, r1, 0 - adds r6, r2, 0 - adds r5, r3, 0 - adds r0, r4, 0 - movs r1, 0x3A - bl sub_8071824 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - movs r3, 0x80 - lsls r3, 1 - str r5, [sp] - adds r0, r7, 0 - adds r1, r4, 0 - adds r2, r6, 0 - bl sub_8055640 - adds r4, r0, 0 - negs r0, r4 - orrs r0, r4 - lsrs r5, r0, 31 - cmp r5, 0 - beq _08058762 - adds r0, r7, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _08058762 - lsrs r0, r4, 31 - adds r0, r4, r0 - asrs r2, r0, 1 - ldr r0, [r7, 0x70] - movs r5, 0x1 - cmp r2, 0 - bgt _08058734 - movs r2, 0x1 -_08058734: - adds r1, r0, 0 - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _08058740 - strb r5, [r1] -_08058740: - mov r0, r8 - cmp r0, 0 - beq _08058756 - movs r3, 0xFD - lsls r3, 1 - adds r0, r7, 0 - adds r1, r2, 0 - movs r2, 0xD - bl sub_806F324 - b _08058762 -_08058756: - str r5, [sp] - adds r0, r7, 0 - adds r1, r7, 0 - movs r3, 0 - bl sub_8077C44 -_08058762: - adds r0, r5, 0 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80586DC - - thumb_func_start sub_8058770 -sub_8058770: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r6, r1, 0 - mov r12, r2 - adds r5, r3, 0 - ldr r2, [r4, 0x70] - movs r0, 0x10 - ldrsh r3, [r2, r0] - adds r0, r3, 0 - cmp r3, 0 - bge _0805878A - adds r0, r3, 0x3 -_0805878A: - movs r7, 0xE - ldrsh r1, [r2, r7] - asrs r0, 2 - cmp r1, r0 - bgt _08058798 - movs r3, 0 - b _080587BE -_08058798: - movs r0, 0xE - ldrsh r1, [r2, r0] - lsrs r0, r3, 31 - adds r0, r3, r0 - asrs r0, 1 - cmp r1, r0 - bgt _080587AA - movs r3, 0x1 - b _080587BE -_080587AA: - lsls r0, r3, 1 - adds r0, r3 - cmp r0, 0 - bge _080587B4 - adds r0, 0x3 -_080587B4: - asrs r0, 2 - movs r3, 0x3 - cmp r1, r0 - bgt _080587BE - movs r3, 0x2 -_080587BE: - ldr r1, _080587E4 - lsls r0, r3, 2 - adds r0, r1 - ldr r3, [r0] - str r5, [sp] - adds r0, r4, 0 - adds r1, r6, 0 - mov r2, r12 - bl sub_8055640 - adds r1, r0, 0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080587E4: .4byte gUnknown_80F51A4 - thumb_func_end sub_8058770 - - thumb_func_start sub_80587E8 -sub_80587E8: - push {r4-r6,lr} - sub sp, 0x4 - adds r6, r0, 0 - adds r5, r1, 0 - adds r1, r3, 0 - ldr r0, [r5, 0x70] - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x4 - bne _0805881A - movs r3, 0x80 - lsls r3, 2 - str r1, [sp] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8055640 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_807A290 - b _0805882E -_0805881A: - movs r3, 0x80 - lsls r3, 1 - str r1, [sp] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8055640 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 -_0805882E: - adds r0, r4, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80587E8 - - thumb_func_start sub_8058838 -sub_8058838: - push {lr} - sub sp, 0x8 - ldr r2, _08058854 - ldr r2, [r2] - movs r3, 0x1 - str r3, [sp] - str r3, [sp, 0x4] - movs r3, 0x3 - bl sub_8076F80 - movs r0, 0x1 - add sp, 0x8 - pop {r1} - bx r1 - .align 2, 0 -_08058854: .4byte gUnknown_8106A50 - thumb_func_end sub_8058838 - - thumb_func_start sub_8058858 -sub_8058858: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x8 - adds r6, r0, 0 - mov r8, r1 - ldr r0, _08058898 - ldr r5, [r0] - movs r4, 0x1 - str r4, [sp] - str r4, [sp, 0x4] - adds r0, r6, 0 - adds r2, r5, 0 - movs r3, 0x1 - bl sub_8076E20 - str r4, [sp] - str r4, [sp, 0x4] - adds r0, r6, 0 - mov r1, r8 - adds r2, r5, 0 - movs r3, 0x1 - bl sub_8076F80 - movs r0, 0x1 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08058898: .4byte gUnknown_8106A4C - thumb_func_end sub_8058858 - - thumb_func_start sub_805889C -sub_805889C: - push {lr} - bl sub_80769CC - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805889C - - thumb_func_start sub_80588A8 -sub_80588A8: - push {lr} - movs r2, 0x1 - bl sub_8079E34 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_80588A8 - - thumb_func_start sub_80588B8 -sub_80588B8: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - movs r6, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _080588E4 - movs r6, 0x1 - adds r0, r5, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _080588E4 - ldr r0, _080588F0 - strb r6, [r0] -_080588E4: - adds r0, r6, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080588F0: .4byte gUnknown_202F219 - thumb_func_end sub_80588B8 - - thumb_func_start sub_80588F4 -sub_80588F4: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - adds r6, r0, 0 - adds r5, r1, 0 - mov r8, r2 - adds r4, r3, 0 - ldr r0, [r5, 0x70] - movs r1, 0x4 - ldrsh r0, [r0, r1] - bl sub_808DB78 - adds r3, r0, 0 - str r4, [sp] - adds r0, r6, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_8055640 - adds r1, r0, 0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80588F4 - - thumb_func_start sub_8058930 -sub_8058930: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r7, r0, 0 - movs r0, 0 - mov r8, r0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r0, r7, 0 - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _080589B8 - movs r2, 0x1 - mov r8, r2 - ldr r0, _080589C8 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r7, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _080589B8 - ldr r6, [r7, 0x70] - adds r0, r7, 0 - adds r1, r7, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8077910 - ldr r0, _080589CC - ldr r5, [r0] - adds r0, r7, 0 - adds r1, r7, 0 - adds r2, r5, 0 - movs r3, 0x1 - bl sub_8077084 - ldr r0, _080589D0 - ldr r4, [r0] - adds r0, r7, 0 - adds r1, r7, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8077084 - adds r0, r7, 0 - adds r1, r7, 0 - adds r2, r5, 0 - movs r3, 0x1 - bl sub_8077160 - adds r0, r7, 0 - adds r1, r7, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8077160 - adds r6, 0xFB - ldrb r0, [r6] - cmp r0, 0 - bne _080589B8 - mov r0, r8 - strb r0, [r6] -_080589B8: - mov r0, r8 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080589C8: .4byte gUnknown_80F4DD6 -_080589CC: .4byte gUnknown_8106A4C -_080589D0: .4byte gUnknown_8106A50 - thumb_func_end sub_8058930 - - thumb_func_start sub_80589D4 -sub_80589D4: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - ldr r4, _08058A04 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 23 - adds r0, r4 - movs r1, 0 - ldrsh r2, [r0, r1] - movs r0, 0x1 - str r0, [sp] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0 - bl sub_8077C44 - movs r0, 0x1 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08058A04: .4byte gUnknown_80F500A - thumb_func_end sub_80589D4 - - thumb_func_start sub_8058A08 -sub_8058A08: - push {lr} - movs r2, 0 - movs r3, 0x1 - bl sub_8077910 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8058A08 - - thumb_func_start sub_8058A18 -sub_8058A18: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - movs r6, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08058A44 - movs r6, 0x1 - adds r0, r5, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _08058A44 - ldr r0, _08058A50 - strb r6, [r0] -_08058A44: - adds r0, r6, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08058A50: .4byte gUnknown_202F21A - thumb_func_end sub_8058A18 - - thumb_func_start sub_8058A54 -sub_8058A54: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _08058A78 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r2, r0, 0 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80781DC - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08058A78: .4byte gUnknown_80F4EB8 - thumb_func_end sub_8058A54 - - thumb_func_start sub_8058A7C -sub_8058A7C: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, _08058AA4 - ldr r2, [r0] - adds r0, r4, 0 - movs r3, 0x1 - bl sub_8077160 - ldr r0, _08058AA8 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0x1 - bl sub_8077160 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08058AA4: .4byte gUnknown_8106A4C -_08058AA8: .4byte gUnknown_8106A50 - thumb_func_end sub_8058A7C - - thumb_func_start sub_8058AAC -sub_8058AAC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r6, r1, 0 - adds r5, r2, 0 - adds r7, r3, 0 - movs r0, 0 - mov r8, r0 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _08058B14 - ldr r0, _08058B0C - ldr r3, [r0] - str r7, [sp] - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_8055640 - cmp r0, 0 - beq _08058B04 - movs r1, 0x1 - mov r8, r1 - ldr r0, _08058B10 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08058B04 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80776C0 -_08058B04: - adds r0, r4, 0 - bl sub_8079764 - b _08058B2A - .align 2, 0 -_08058B0C: .4byte gUnknown_80F4F4C -_08058B10: .4byte gUnknown_80F4DF4 -_08058B14: - ldr r0, _08058B38 - ldr r0, [r0] - str r0, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0x3 - adds r3, r5, 0 - bl sub_8079618 - movs r0, 0x1 - mov r8, r0 -_08058B2A: - mov r0, r8 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058B38: .4byte gUnknown_80FACC4 - thumb_func_end sub_8058AAC - - thumb_func_start sub_8058B3C -sub_8058B3C: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08058B76 - movs r7, 0x1 - ldr r0, _08058B80 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08058B76 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80767B0 -_08058B76: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058B80: .4byte gUnknown_80F4DBC - thumb_func_end sub_8058B3C - - thumb_func_start sub_8058B84 -sub_8058B84: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - movs r6, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08058BCC - movs r6, 0x1 - ldr r0, _08058BD8 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08058BCC - ldr r4, [r5, 0x70] - ldr r0, _08058BDC - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r5, 0 - movs r3, 0x1 - bl sub_8077084 - adds r4, 0xFB - ldrb r0, [r4] - cmp r0, 0 - bne _08058BCC - strb r6, [r4] -_08058BCC: - adds r0, r6, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08058BD8: .4byte gUnknown_80F4DD0 -_08058BDC: .4byte gUnknown_8106A4C - thumb_func_end sub_8058B84 - - thumb_func_start sub_8058BE0 -sub_8058BE0: - push {lr} - adds r1, r0, 0 - bl sub_8079C24 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8058BE0 - - thumb_func_start sub_8058BF0 -sub_8058BF0: - push {lr} - movs r2, 0x1 - movs r3, 0x1 - bl sub_80779F0 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8058BF0 - - thumb_func_start sub_8058C00 -sub_8058C00: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08058C3A - movs r7, 0x1 - ldr r0, _08058C44 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08058C3A - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077AE4 -_08058C3A: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058C44: .4byte gUnknown_80F4DF8 - thumb_func_end sub_8058C00 - - thumb_func_start sub_8058C48 -sub_8058C48: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r6, r1, 0 - adds r7, r2, 0 - adds r5, r3, 0 - movs r1, 0xC0 - lsls r1, 1 - movs r0, 0x80 - bl sub_808411C - adds r3, r0, 0 - ldr r0, [r4, 0x70] - ldrb r0, [r0, 0x9] - muls r0, r3 - cmp r0, 0 - bge _08058C6C - adds r0, 0xFF -_08058C6C: - asrs r3, r0, 8 - cmp r3, 0 - bge _08058C74 - movs r3, 0x1 -_08058C74: - cmp r3, 0xC7 - ble _08058C7A - movs r3, 0xC7 -_08058C7A: - str r5, [sp] - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r7, 0 - bl sub_8055864 - adds r1, r0, 0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8058C48 - - thumb_func_start sub_8058C98 -sub_8058C98: - push {r4-r7,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r5, r1, 0 - adds r7, r3, 0 - ldr r0, [sp, 0x1C] - movs r6, 0 - movs r3, 0x80 - lsls r3, 1 - str r0, [sp] - adds r0, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08058CDE - movs r6, 0x1 - ldr r0, _08058CE8 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08058CDE - str r6, [sp] - movs r0, 0 - str r0, [sp, 0x4] - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r7, 0 - movs r3, 0x1 - bl sub_8076F80 -_08058CDE: - adds r0, r6, 0 - add sp, 0x8 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058CE8: .4byte gUnknown_80F4DC0 - thumb_func_end sub_8058C98 - - thumb_func_start sub_8058CEC -sub_8058CEC: - push {r4-r6,lr} - sub sp, 0x8 - adds r5, r0, 0 - movs r6, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08058D28 - movs r6, 0x1 - adds r0, r5, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _08058D28 - ldr r0, _08058D34 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r5, 0 - movs r3, 0x2 - bl sub_8076E20 -_08058D28: - adds r0, r6, 0 - add sp, 0x8 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08058D34: .4byte gUnknown_8106A50 - thumb_func_end sub_8058CEC - - thumb_func_start sub_8058D38 -sub_8058D38: - push {lr} - bl sub_8075FCC - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8058D38 - - thumb_func_start sub_8058D44 -sub_8058D44: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r6, r1, 0 - mov r12, r2 - adds r5, r3, 0 - ldr r2, [r4, 0x70] - movs r0, 0x10 - ldrsh r3, [r2, r0] - adds r0, r3, 0 - cmp r3, 0 - bge _08058D5E - adds r0, r3, 0x3 -_08058D5E: - movs r7, 0xE - ldrsh r1, [r2, r7] - asrs r0, 2 - cmp r1, r0 - bgt _08058D6C - movs r3, 0 - b _08058D92 -_08058D6C: - movs r0, 0xE - ldrsh r1, [r2, r0] - lsrs r0, r3, 31 - adds r0, r3, r0 - asrs r0, 1 - cmp r1, r0 - bgt _08058D7E - movs r3, 0x1 - b _08058D92 -_08058D7E: - lsls r0, r3, 1 - adds r0, r3 - cmp r0, 0 - bge _08058D88 - adds r0, 0x3 -_08058D88: - asrs r0, 2 - movs r3, 0x3 - cmp r1, r0 - bgt _08058D92 - movs r3, 0x2 -_08058D92: - ldr r1, _08058DB8 - lsls r0, r3, 2 - adds r0, r1 - ldr r3, [r0] - str r5, [sp] - adds r0, r4, 0 - adds r1, r6, 0 - mov r2, r12 - bl sub_8055640 - adds r1, r0, 0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058DB8: .4byte gUnknown_80F51B4 - thumb_func_end sub_8058D44 - - thumb_func_start sub_8058DBC -sub_8058DBC: - push {r4-r7,lr} - adds r7, r0, 0 - adds r6, r1, 0 - ldr r5, [r7, 0x70] - ldr r4, [r6, 0x70] - adds r0, r6, 0 - bl nullsub_92 - movs r3, 0 -_08058DCE: - lsls r2, r3, 1 - adds r1, r5, 0 - adds r1, 0x1C - adds r1, r2 - adds r0, r4, 0 - adds r0, 0x1C - adds r0, r2 - ldrh r0, [r0] - strh r0, [r1] - adds r1, r5, 0 - adds r1, 0x20 - adds r1, r2 - adds r0, r4, 0 - adds r0, 0x20 - adds r0, r2 - ldrh r0, [r0] - strh r0, [r1] - adds r1, r5, 0 - adds r1, 0x24 - adds r1, r2 - adds r0, r4, 0 - adds r0, 0x24 - adds r0, r2 - ldrh r0, [r0] - strh r0, [r1] - lsls r2, r3, 2 - adds r1, r5, 0 - adds r1, 0x2C - adds r1, r2 - adds r0, r4, 0 - adds r0, 0x2C - adds r0, r2 - ldr r0, [r0] - str r0, [r1] - adds r1, r5, 0 - adds r1, 0x34 - adds r1, r2 - adds r0, r4, 0 - adds r0, 0x34 - adds r0, r2 - ldr r0, [r0] - str r0, [r1] - adds r3, 0x1 - cmp r3, 0x1 - ble _08058DCE - ldr r0, _08058E54 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08058E58 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_80522F4 - adds r1, r5, 0 - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _08058E4C - movs r0, 0x1 - strb r0, [r1] -_08058E4C: - movs r0, 0x1 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058E54: .4byte gUnknown_202DF98 -_08058E58: .4byte gUnknown_80FBD58 - thumb_func_end sub_8058DBC - - thumb_func_start sub_8058E5C -sub_8058E5C: - push {r4-r7,lr} - sub sp, 0x18 - adds r5, r0, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08058ED0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08058ED0 - ldr r0, [r5, 0x70] - movs r1, 0x10 - ldrsh r2, [r0, r1] - cmp r2, 0 - bge _08058E8C - adds r2, 0x7 -_08058E8C: - asrs r6, r2, 3 - cmp r6, 0 - bne _08058E94 - movs r6, 0x1 -_08058E94: - movs r7, 0x1 - adds r0, r5, 0 - movs r1, 0x7 - bl sub_8071824 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _08058ED0 - adds r0, r5, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _08058ED0 - str r4, [sp] - str r4, [sp, 0x4] - ldr r0, _08058EDC - str r0, [sp, 0x8] - movs r0, 0x14 - str r0, [sp, 0xC] - str r7, [sp, 0x10] - str r4, [sp, 0x14] - adds r0, r5, 0 - adds r1, r5, 0 - adds r2, r6, 0 - movs r3, 0 - bl sub_806F370 -_08058ED0: - adds r0, r7, 0 - add sp, 0x18 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058EDC: .4byte 0x000001fd - thumb_func_end sub_8058E5C - - thumb_func_start sub_8058EE0 -sub_8058EE0: - push {lr} - sub sp, 0x4 - ldr r2, [r1, 0x70] - movs r3, 0x10 - ldrsh r2, [r2, r3] - lsrs r3, r2, 31 - adds r2, r3 - asrs r2, 1 - movs r3, 0x1 - str r3, [sp] - movs r3, 0 - bl sub_8077C44 - movs r0, 0x1 - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8058EE0 - - thumb_func_start sub_8058F04 -sub_8058F04: - push {r4-r7,lr} - sub sp, 0x4 - adds r7, r0, 0 - adds r4, r1, 0 - mov r12, r2 - adds r5, r3, 0 - ldr r3, [r4, 0x70] - movs r6, 0x1 - ldr r0, _08058F50 - ldr r1, [r0] - movs r0, 0xC1 - lsls r0, 9 - adds r2, r1, r0 - movs r0, 0xC - str r0, [r2] - ldr r0, _08058F54 - adds r1, r0 - movs r0, 0 - str r0, [r1] - adds r3, 0xC0 - ldrb r0, [r3] - cmp r0, 0xA - bne _08058F34 - movs r6, 0x2 -_08058F34: - lsls r3, r6, 8 - str r5, [sp] - adds r0, r7, 0 - adds r1, r4, 0 - mov r2, r12 - bl sub_8055640 - cmp r0, 0 - beq _08058F48 - movs r0, 0x1 -_08058F48: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058F50: .4byte gUnknown_203B418 -_08058F54: .4byte 0x00018204 - thumb_func_end sub_8058F04 - - thumb_func_start sub_8058F58 -sub_8058F58: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r6, r0, 0 - adds r7, r1, 0 - mov r8, r3 - ldr r0, _08058FB0 - ldr r0, [r0] - ldr r1, _08058FB4 - adds r0, r1 - movs r1, 0 - ldrsh r5, [r0, r1] - cmp r5, 0 - bge _08058F78 - movs r5, 0 -_08058F78: - cmp r5, 0x4A - ble _08058F7E - movs r5, 0x4A -_08058F7E: - ldr r4, _08058FB8 - lsls r5, 3 - adds r0, r5, r4 - ldrh r1, [r0] - mov r0, sp - bl sub_8092A88 - adds r4, 0x4 - adds r5, r4 - ldr r4, [r5] - adds r0, r6, 0 - adds r1, r7, 0 - mov r2, sp - mov r3, r8 - bl _call_via_r4 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08058FB0: .4byte gUnknown_203B418 -_08058FB4: .4byte 0x00003a0e -_08058FB8: .4byte gUnknown_80F5D10 - thumb_func_end sub_8058F58 - - thumb_func_start sub_8058FBC -sub_8058FBC: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08058FF6 - movs r7, 0x1 - ldr r0, _08059000 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08058FF6 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077780 -_08058FF6: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059000: .4byte gUnknown_80F4DE4 - thumb_func_end sub_8058FBC - - thumb_func_start sub_8059004 -sub_8059004: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x8 - mov r9, r0 - mov r8, r1 - adds r5, r2, 0 - adds r6, r3, 0 - adds r0, r5, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - mov r2, r8 - adds r2, 0x4 - str r4, [sp] - str r0, [sp, 0x4] - mov r0, r9 - mov r1, r8 - movs r3, 0x1 - bl sub_807DF38 - movs r0, 0x1 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8059004 - - thumb_func_start sub_8059050 -sub_8059050: - push {lr} - movs r2, 0x1 - bl sub_8077780 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8059050 - - thumb_func_start sub_8059060 -sub_8059060: - push {lr} - sub sp, 0x4 - adds r3, r2, 0 - ldr r2, _0805907C - ldr r2, [r2] - str r2, [sp] - movs r2, 0xB - bl sub_8079618 - movs r0, 0x1 - add sp, 0x4 - pop {r1} - bx r1 - .align 2, 0 -_0805907C: .4byte gUnknown_80FAD6C - thumb_func_end sub_8059060 - - thumb_func_start sub_8059080 -sub_8059080: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _080590BA - movs r7, 0x1 - ldr r0, _080590C4 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _080590BA - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077780 -_080590BA: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080590C4: .4byte gUnknown_80F4DE8 - thumb_func_end sub_8059080 - - thumb_func_start sub_80590C8 -sub_80590C8: - push {lr} - bl sub_80798B0 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_80590C8 - - thumb_func_start sub_80590D4 -sub_80590D4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x1C - mov r8, r0 - adds r6, r1, 0 - adds r5, r2, 0 - adds r7, r3, 0 - movs r0, 0 - mov r9, r0 - add r0, sp, 0x18 - mov r1, r9 - strb r1, [r0] - adds r0, r5, 0 - bl sub_8092B00 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - bl sub_806F4A4 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - adds r0, r6, 0 - movs r1, 0x37 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0805911C - movs r4, 0 -_0805911C: - cmp r4, 0 - bne _08059134 - ldr r0, _08059130 - ldr r2, [r0] - mov r0, r8 - adds r1, r6, 0 - bl sub_80522F4 - b _0805917A - .align 2, 0 -_08059130: .4byte gUnknown_80FEB88 -_08059134: - adds r0, r5, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - ldr r2, _0805918C - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - mov r0, r9 - str r0, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r0, [sp, 0x14] - mov r0, r8 - adds r1, r6, 0 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _08059178 - movs r2, 0x1 -_08059178: - strb r2, [r1] -_0805917A: - add r0, sp, 0x18 - ldrb r0, [r0] - add sp, 0x1C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805918C: .4byte 0x0000270f - thumb_func_end sub_80590D4 - - thumb_func_start sub_8059190 -sub_8059190: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _080591CA - movs r7, 0x1 - ldr r0, _080591D4 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _080591CA - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80776C0 -_080591CA: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080591D4: .4byte gUnknown_80F4DEA - thumb_func_end sub_8059190 - - thumb_func_start sub_80591D8 -sub_80591D8: - push {lr} - bl sub_8079834 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_80591D8 - - thumb_func_start sub_80591E4 -sub_80591E4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r7, r0, 0 - adds r4, r1, 0 - adds r6, r2, 0 - adds r5, r3, 0 - movs r0, 0 - mov r8, r0 - adds r0, r4, 0 - movs r1, 0x3A - bl sub_8071824 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r3, 0x80 - lsls r3, 1 - str r5, [sp] - adds r0, r7, 0 - adds r1, r4, 0 - adds r2, r6, 0 - bl sub_8055640 - adds r1, r0, 0 - cmp r1, 0 - beq _0805927E - lsrs r0, r1, 31 - adds r0, r1, r0 - asrs r4, r0, 1 - cmp r4, 0 - bgt _0805922A - movs r4, 0x1 -_0805922A: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805927E - ldr r0, [r7, 0x70] - movs r1, 0x1 - mov r8, r1 - adds r1, r0, 0 - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _0805924A - mov r0, r8 - strb r0, [r1] -_0805924A: - adds r0, r7, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _0805927E - mov r1, r9 - cmp r1, 0 - beq _0805926E - movs r3, 0xFD - lsls r3, 1 - adds r0, r7, 0 - adds r1, r4, 0 - movs r2, 0xD - bl sub_806F324 - b _0805927E -_0805926E: - mov r0, r8 - str r0, [sp] - adds r0, r7, 0 - adds r1, r7, 0 - adds r2, r4, 0 - movs r3, 0 - bl sub_8077C44 -_0805927E: - mov r0, r8 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80591E4 - - thumb_func_start sub_8059290 -sub_8059290: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - adds r6, r1, 0 - ldr r7, [r4, 0x70] - ldr r5, [r6, 0x70] - adds r0, r6, 0 - movs r1, 0x35 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _080592BA - adds r0, r4, 0 - movs r1, 0x35 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _080592D0 -_080592BA: - ldr r0, _080592CC - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_80522F4 - movs r0, 0 - b _0805932E - .align 2, 0 -_080592CC: .4byte gUnknown_80FC8C0 -_080592D0: - movs r0, 0x5E - adds r0, r5 - mov r12, r0 - ldrb r3, [r0] - mov r8, r3 - adds r1, r5, 0 - adds r1, 0x5F - ldrb r2, [r1] - adds r5, r7, 0 - adds r5, 0x5E - ldrb r0, [r5] - mov r3, r12 - strb r0, [r3] - movs r0, 0x5F - adds r0, r7 - mov r12, r0 - ldrb r0, [r0] - strb r0, [r1] - mov r3, r8 - strb r3, [r5] - mov r0, r12 - strb r2, [r0] - ldr r0, _08059338 - ldr r0, [r0] - movs r5, 0x1 - strb r5, [r0, 0xC] - ldr r0, _0805933C - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_80522F4 - adds r1, r7, 0 - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _0805931C - strb r5, [r1] -_0805931C: - adds r0, r4, 0 - adds r1, r4, 0 - bl sub_806ABAC - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_806ABAC - movs r0, 0x1 -_0805932E: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059338: .4byte gUnknown_203B418 -_0805933C: .4byte gUnknown_80FC888 - thumb_func_end sub_8059290 - - thumb_func_start sub_8059340 -sub_8059340: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r0, 0 - adds r7, r1, 0 - adds r5, r2, 0 - movs r0, 0 - mov r10, r0 - ldr r1, [r6, 0x70] - str r1, [sp] - ldr r0, [r7, 0x70] - movs r2, 0 - mov r12, r2 - movs r4, 0 - movs r1, 0x8C - lsls r1, 1 - adds r3, r0, r1 - adds r1, r0, 0 - movs r2, 0x1 - mov r9, r2 - movs r0, 0x10 - mov r8, r0 -_08059372: - ldrb r2, [r3] - mov r0, r9 - ands r0, r2 - cmp r0, 0 - beq _08059384 - mov r0, r8 - ands r0, r2 - cmp r0, 0 - bne _080593A8 -_08059384: - adds r3, 0x8 - adds r1, 0x8 - adds r4, 0x1 - cmp r4, 0x3 - ble _08059372 - movs r0, 0 - cmp r0, 0 - bne _080593B2 - ldr r0, _080593A4 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_80522F4 - movs r0, 0 - b _0805940A - .align 2, 0 -_080593A4: .4byte gUnknown_80FE3BC -_080593A8: - movs r2, 0x8D - lsls r2, 1 - adds r0, r1, r2 - ldrh r0, [r0] - mov r12, r0 -_080593B2: - mov r0, r12 - cmp r0, 0 - bne _080593CC - ldr r0, _080593C8 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_80522F4 - b _08059408 - .align 2, 0 -_080593C8: .4byte gUnknown_80FE3BC -_080593CC: - adds r0, r5, 0 - mov r1, r12 - bl sub_8092A88 - ldr r0, _0805941C - adds r1, r5, 0 - movs r2, 0 - bl sub_80928C0 - ldrb r1, [r5, 0x1] - movs r0, 0x4 - orrs r0, r1 - movs r1, 0x20 - orrs r0, r1 - strb r0, [r5, 0x1] - ldr r0, _08059420 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_80522F4 - ldr r1, [sp] - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _08059404 - movs r0, 0x1 - strb r0, [r1] -_08059404: - movs r1, 0x1 - mov r10, r1 -_08059408: - mov r0, r10 -_0805940A: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805941C: .4byte gUnknown_202DE58 -_08059420: .4byte gUnknown_80FE38C - thumb_func_end sub_8059340 - - thumb_func_start sub_8059424 -sub_8059424: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805945E - movs r7, 0x1 - ldr r0, _08059468 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805945E - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80776C0 -_0805945E: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059468: .4byte gUnknown_80F4DF0 - thumb_func_end sub_8059424 - - thumb_func_start sub_805946C -sub_805946C: - push {r4-r6,lr} - sub sp, 0x18 - adds r5, r0, 0 - movs r6, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _080594D2 - movs r6, 0x1 - adds r0, r5, 0 - movs r1, 0x7 - bl sub_8071824 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080594D2 - adds r0, r5, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _080594D2 - ldr r0, [r5, 0x70] - movs r1, 0x10 - ldrsh r2, [r0, r1] - cmp r2, 0 - bge _080594B0 - adds r2, 0x7 -_080594B0: - asrs r2, 3 - cmp r2, 0 - bne _080594B8 - movs r2, 0x1 -_080594B8: - str r4, [sp] - str r4, [sp, 0x4] - ldr r0, _080594DC - str r0, [sp, 0x8] - movs r0, 0x14 - str r0, [sp, 0xC] - str r6, [sp, 0x10] - str r4, [sp, 0x14] - adds r0, r5, 0 - adds r1, r5, 0 - movs r3, 0 - bl sub_806F370 -_080594D2: - adds r0, r6, 0 - add sp, 0x18 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080594DC: .4byte 0x000001fd - thumb_func_end sub_805946C - - thumb_func_start sub_80594E0 -sub_80594E0: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, _08059518 - ldr r0, [r0] - ldr r1, _0805951C - ldrh r1, [r1] - ldr r2, _08059520 - adds r0, r2 - strb r1, [r0] - movs r0, 0x1 - movs r1, 0 - bl sub_807EAA0 - lsls r0, 24 - cmp r0, 0 - bne _0805950E - ldr r0, _08059524 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0805950E: - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08059518: .4byte gUnknown_203B418 -_0805951C: .4byte gUnknown_80F4F42 -_08059520: .4byte 0x0000e269 -_08059524: .4byte gUnknown_80FCF78 - thumb_func_end sub_80594E0 - - thumb_func_start sub_8059528 -sub_8059528: - push {lr} - ldr r2, _0805953C - ldr r2, [r2] - movs r3, 0x1 - bl sub_80775DC - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_0805953C: .4byte gUnknown_8106A4C - thumb_func_end sub_8059528 - - thumb_func_start sub_8059540 -sub_8059540: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805957A - movs r7, 0x1 - ldr r0, _08059584 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805957A - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80763F8 -_0805957A: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059584: .4byte gUnknown_80F4DC4 - thumb_func_end sub_8059540 - - thumb_func_start sub_8059588 -sub_8059588: - push {lr} - ldr r2, _0805959C - ldr r2, [r2] - movs r3, 0x1 - bl sub_8077084 - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_0805959C: .4byte gUnknown_8106A50 - thumb_func_end sub_8059588 - - thumb_func_start sub_80595A0 -sub_80595A0: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _080595DC - movs r7, 0x1 - ldr r0, _080595E8 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _080595DC - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl sub_8076210 -_080595DC: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080595E8: .4byte gUnknown_80F4DE0 - thumb_func_end sub_80595A0 - - thumb_func_start sub_80595EC -sub_80595EC: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x1C - mov r9, r0 - adds r6, r1, 0 - adds r5, r2, 0 - mov r8, r3 - movs r7, 0 - add r0, sp, 0x18 - strb r7, [r0] - adds r0, r5, 0 - bl sub_8092B00 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - bl sub_806F4A4 - lsls r0, 24 - cmp r0, 0 - bne _08059630 - ldr r0, _0805962C - ldr r2, [r0] - mov r0, r9 - adds r1, r6, 0 - bl sub_80522F4 - movs r0, 0 - b _08059678 - .align 2, 0 -_0805962C: .4byte gUnknown_80FEB8C -_08059630: - adds r0, r5, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - mov r1, r8 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - ldr r2, _08059688 - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r7, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r7, [sp, 0x14] - mov r0, r9 - adds r1, r6, 0 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _08059672 - movs r2, 0x1 -_08059672: - strb r2, [r1] - add r0, sp, 0x18 - ldrb r0, [r0] -_08059678: - add sp, 0x1C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059688: .4byte 0x0000270f - thumb_func_end sub_80595EC - - thumb_func_start sub_805968C -sub_805968C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r5, r0, 0 - mov r8, r1 - adds r6, r2, 0 - adds r7, r3, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x1 - beq _080596B6 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _080596EC -_080596B6: - ldr r0, _080596E8 - ldr r3, [r0] - cmp r4, 0x2 - beq _080596C6 - cmp r4, 0x4 - beq _080596C6 - cmp r4, 0x5 - bne _080596CC -_080596C6: - lsrs r0, r3, 31 - adds r0, r3, r0 - asrs r3, r0, 1 -_080596CC: - str r7, [sp] - adds r0, r5, 0 - mov r1, r8 - adds r2, r6, 0 - bl sub_8055640 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - adds r0, r5, 0 - bl sub_8079764 - b _08059700 - .align 2, 0 -_080596E8: .4byte gUnknown_80F4F48 -_080596EC: - ldr r0, _08059710 - ldr r0, [r0] - str r0, [sp] - adds r0, r5, 0 - adds r1, r5, 0 - movs r2, 0x2 - adds r3, r6, 0 - bl sub_8079618 - movs r4, 0x1 -_08059700: - adds r0, r4, 0 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059710: .4byte gUnknown_80FACE4 - thumb_func_end sub_805968C - - thumb_func_start sub_8059714 -sub_8059714: - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x1C - mov r9, r0 - mov r10, r1 - adds r6, r2, 0 - mov r8, r3 - movs r5, 0 - add r0, sp, 0x18 - strb r5, [r0] - adds r0, r6, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - mov r1, r8 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - ldr r1, _0805978C - movs r3, 0 - ldrsh r2, [r1, r3] - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r5, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r5, [sp, 0x14] - mov r0, r9 - mov r1, r10 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _08059774 - movs r2, 0x1 -_08059774: - strb r2, [r1] - add r0, sp, 0x18 - ldrb r0, [r0] - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805978C: .4byte gUnknown_80F4F7C - thumb_func_end sub_8059714 - - thumb_func_start sub_8059790 -sub_8059790: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r7, r1, 0 - adds r4, r2, 0 - adds r6, r3, 0 - adds r1, r4, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _080597CC - ldr r0, _080597C8 - ldr r3, [r0] - str r6, [sp] - adds r0, r5, 0 - adds r1, r7, 0 - adds r2, r4, 0 - bl sub_8055640 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - adds r0, r5, 0 - bl sub_8079764 - b _080597E0 - .align 2, 0 -_080597C8: .4byte gUnknown_80F4F5C -_080597CC: - ldr r0, _080597EC - ldr r0, [r0] - str r0, [sp] - adds r0, r5, 0 - adds r1, r5, 0 - movs r2, 0x7 - adds r3, r4, 0 - bl sub_8079618 - movs r4, 0x1 -_080597E0: - adds r0, r4, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080597EC: .4byte gUnknown_80FACFC - thumb_func_end sub_8059790 - - thumb_func_start sub_80597F0 -sub_80597F0: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x8 - mov r9, r0 - mov r8, r1 - adds r5, r2, 0 - adds r6, r3, 0 - adds r0, r5, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - mov r2, r8 - adds r2, 0x4 - str r4, [sp] - str r0, [sp, 0x4] - mov r0, r9 - mov r1, r8 - movs r3, 0x2 - bl sub_807DF38 - movs r0, 0x1 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80597F0 - - thumb_func_start sub_805983C -sub_805983C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r7, r1, 0 - adds r5, r2, 0 - mov r8, r3 - movs r6, 0 - bl sub_8045128 - bl sub_804AF20 - lsls r0, 24 - cmp r0, 0 - beq _08059870 - ldr r0, _0805986C - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_80522F4 - b _080598B8 - .align 2, 0 -_0805986C: .4byte gUnknown_80FD128 -_08059870: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _080598A4 - ldr r0, _080598A0 - ldr r3, [r0] - mov r0, r8 - str r0, [sp] - adds r0, r4, 0 - adds r1, r7, 0 - adds r2, r5, 0 - bl sub_8055640 - negs r1, r0 - orrs r1, r0 - lsrs r6, r1, 31 - adds r0, r4, 0 - bl sub_8079764 - b _080598B8 - .align 2, 0 -_080598A0: .4byte gUnknown_80F4F64 -_080598A4: - ldr r0, _080598C8 - ldr r0, [r0] - str r0, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0x9 - adds r3, r5, 0 - bl sub_8079618 - movs r6, 0x1 -_080598B8: - adds r0, r6, 0 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080598C8: .4byte gUnknown_80FAD2C - thumb_func_end sub_805983C - - thumb_func_start sub_80598CC -sub_80598CC: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805990A - movs r7, 0x1 - ldr r0, _08059914 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805990A - ldr r0, _08059918 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0 - bl sub_80775DC -_0805990A: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059914: .4byte gUnknown_80F4E00 -_08059918: .4byte gUnknown_8106A4C - thumb_func_end sub_80598CC - - thumb_func_start sub_805991C -sub_805991C: - push {lr} - bl sub_80787E4 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805991C - - thumb_func_start sub_8059928 -sub_8059928: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r4, r1, 0 - adds r1, r3, 0 - movs r3, 0x1 - movs r6, 0 - ldr r0, [r4, 0x70] - adds r0, 0xC0 - ldrb r0, [r0] - subs r0, 0x7 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08059948 - movs r3, 0x2 -_08059948: - lsls r3, 8 - str r1, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08059978 - movs r6, 0x1 - ldr r0, _08059984 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08059978 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - bl sub_80776C0 -_08059978: - adds r0, r6, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08059984: .4byte gUnknown_80F4DEC - thumb_func_end sub_8059928 - - thumb_func_start sub_8059988 -sub_8059988: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _080599A8 - movs r7, 0x1 - ldr r0, _080599E0 - strb r7, [r0] -_080599A8: - ldr r0, _080599E0 - ldrb r0, [r0] - cmp r0, 0 - beq _080599D6 - ldr r0, _080599E4 - ldr r0, [r0] - cmp r0, 0x2 - bne _080599D6 - ldr r0, _080599E8 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _080599D6 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80763F8 -_080599D6: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080599E0: .4byte gUnknown_202F218 -_080599E4: .4byte gUnknown_202F214 -_080599E8: .4byte gUnknown_80F4DC8 - thumb_func_end sub_8059988 - - thumb_func_start sub_80599EC -sub_80599EC: - push {r4,lr} - sub sp, 0x4 - adds r3, r0, 0 - ldr r0, [r1, 0x70] - movs r4, 0x10 - ldrsh r2, [r0, r4] - cmp r2, 0 - bge _080599FE - adds r2, 0x3 -_080599FE: - asrs r2, 2 - movs r0, 0x1 - str r0, [sp] - adds r0, r3, 0 - movs r3, 0 - bl sub_8077C44 - movs r0, 0x1 - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80599EC - - thumb_func_start sub_8059A18 -sub_8059A18: - push {lr} - ldr r2, _08059A28 - ldr r2, [r2] - bl sub_8077540 - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_08059A28: .4byte gUnknown_8106A50 - thumb_func_end sub_8059A18 - - thumb_func_start sub_8059A2C -sub_8059A2C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - mov r9, r0 - adds r7, r1, 0 - adds r6, r2, 0 - mov r8, r3 - movs r5, 0 - add r0, sp, 0x18 - strb r5, [r0] - mov r1, r9 - ldr r0, [r1, 0x70] - ldrb r0, [r0, 0x9] - mov r10, r0 - adds r0, r6, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - mov r1, r8 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r5, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r5, [sp, 0x14] - mov r0, r9 - adds r1, r7, 0 - mov r2, r10 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _08059A90 - movs r2, 0x1 -_08059A90: - strb r2, [r1] - add r0, sp, 0x18 - ldrb r0, [r0] - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8059A2C - - thumb_func_start sub_8059AA8 -sub_8059AA8: - push {lr} - movs r2, 0x1 - bl sub_8077AE4 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8059AA8 - - thumb_func_start sub_8059AB8 -sub_8059AB8: - push {lr} - bl sub_8078758 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8059AB8 - - thumb_func_start sub_8059AC4 -sub_8059AC4: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - ldr r4, _08059AF4 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 23 - adds r0, r4 - movs r1, 0 - ldrsh r2, [r0, r1] - movs r0, 0x1 - str r0, [sp] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0 - bl sub_8077C44 - movs r0, 0x1 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08059AF4: .4byte gUnknown_80F501A - thumb_func_end sub_8059AC4 - - thumb_func_start sub_8059AF8 -sub_8059AF8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x1C - mov r9, r0 - adds r6, r1, 0 - adds r5, r2, 0 - mov r8, r3 - movs r7, 0 - add r0, sp, 0x18 - strb r7, [r0] - adds r0, r5, 0 - bl sub_8092B00 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - bl sub_806F4A4 - lsls r0, 24 - cmp r0, 0 - bne _08059B3C - ldr r0, _08059B38 - ldr r2, [r0] - mov r0, r9 - adds r1, r6, 0 - bl sub_80522F4 - movs r0, 0 - b _08059B82 - .align 2, 0 -_08059B38: .4byte gUnknown_80FEB90 -_08059B3C: - adds r0, r5, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - mov r1, r8 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - ldr r2, _08059B90 - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r7, [sp, 0xC] - str r7, [sp, 0x10] - str r7, [sp, 0x14] - mov r0, r9 - adds r1, r6, 0 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _08059B7C - movs r2, 0x1 -_08059B7C: - strb r2, [r1] - add r0, sp, 0x18 - ldrb r0, [r0] -_08059B82: - add sp, 0x1C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059B90: .4byte 0x0000270f - thumb_func_end sub_8059AF8 - - thumb_func_start sub_8059B94 -sub_8059B94: - push {lr} - ldr r2, _08059BA8 - ldr r2, [r2] - movs r3, 0x2 - bl sub_8077084 - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_08059BA8: .4byte gUnknown_8106A4C - thumb_func_end sub_8059B94 - - thumb_func_start sub_8059BAC -sub_8059BAC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - mov r10, r0 - adds r5, r1, 0 - movs r0, 0 - mov r8, r0 - ldr r7, [r5, 0x70] - adds r0, r5, 0 - movs r1, 0x25 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08059BD8 - ldr r0, _08059BD4 - b _08059C5E - .align 2, 0 -_08059BD4: .4byte gUnknown_81006F8 -_08059BD8: - movs r1, 0x8C - lsls r1, 1 - adds r4, r7, r1 - mov r9, sp - movs r6, 0x3 -_08059BE2: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08059C08 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8071A1C - lsls r0, 24 - cmp r0, 0 - beq _08059C08 - mov r0, r9 - adds r0, 0x4 - mov r9, r0 - subs r0, 0x4 - stm r0!, {r4} - movs r1, 0x1 - add r8, r1 -_08059C08: - adds r4, 0x8 - subs r6, 0x1 - cmp r6, 0 - bge _08059BE2 - mov r0, r8 - cmp r0, 0 - beq _08059C5C - bl sub_8084100 - lsls r0, 2 - mov r1, sp - adds r4, r1, r0 - ldr r1, [r4] - adds r0, r5, 0 - bl sub_8071A1C - adds r1, r7, 0 - adds r1, 0x5C - movs r2, 0 - strb r0, [r1] - adds r0, r7, 0 - adds r0, 0x5D - strb r2, [r0] - adds r1, 0x9A - movs r0, 0x1 - strb r0, [r1] - ldr r0, _08059C54 - ldr r1, [r4] - bl sub_80928C0 - ldr r0, _08059C58 - ldr r2, [r0] - mov r0, r10 - adds r1, r5, 0 - bl sub_80522F4 - movs r0, 0x1 - b _08059C6A - .align 2, 0 -_08059C54: .4byte gUnknown_202DE58 -_08059C58: .4byte gUnknown_80FE330 -_08059C5C: - ldr r0, _08059C7C -_08059C5E: - ldr r2, [r0] - mov r0, r10 - adds r1, r5, 0 - bl sub_80522F4 - movs r0, 0 -_08059C6A: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059C7C: .4byte gUnknown_80FE36C - thumb_func_end sub_8059BAC - - thumb_func_start sub_8059C80 -sub_8059C80: - push {lr} - bl sub_8079D1C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8059C80 - - thumb_func_start sub_8059C8C -sub_8059C8C: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r6, 0 - cmp r5, r4 - bne _08059CA8 - ldr r0, _08059CA4 - ldr r2, [r0] - adds r0, r4, 0 - bl sub_80522F4 - b _08059CC6 - .align 2, 0 -_08059CA4: .4byte gUnknown_80FEB60 -_08059CA8: - ldr r0, _08059CD0 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8077084 - ldr r0, _08059CD4 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8077084 - movs r6, 0x1 -_08059CC6: - adds r0, r6, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08059CD0: .4byte gUnknown_8106A4C -_08059CD4: .4byte gUnknown_8106A50 - thumb_func_end sub_8059C8C - - thumb_func_start sub_8059CD8 -sub_8059CD8: - push {lr} - ldr r2, _08059CEC - ldr r2, [r2] - movs r3, 0x2 - bl sub_8077160 - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_08059CEC: .4byte gUnknown_8106A4C - thumb_func_end sub_8059CD8 - - thumb_func_start sub_8059CF0 -sub_8059CF0: - push {lr} - movs r2, 0 - movs r3, 0 - bl sub_807D148 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8059CF0 - - thumb_func_start sub_8059D00 -sub_8059D00: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08059D3A - movs r7, 0x1 - ldr r0, _08059D44 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08059D3A - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077780 -_08059D3A: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059D44: .4byte gUnknown_80F4DE2 - thumb_func_end sub_8059D00 - - thumb_func_start sub_8059D48 -sub_8059D48: - push {lr} - movs r2, 0x1 - bl sub_8077780 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8059D48 - - thumb_func_start sub_8059D58 -sub_8059D58: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08059D8E - movs r7, 0x1 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08059D8E - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077780 -_08059D8E: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8059D58 - - thumb_func_start sub_8059D98 -sub_8059D98: - push {lr} - bl sub_80769CC - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8059D98 - - thumb_func_start sub_8059DA4 -sub_8059DA4: - push {lr} - movs r2, 0x1 - bl sub_80763F8 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8059DA4 - - thumb_func_start sub_8059DB4 -sub_8059DB4: - push {lr} - movs r2, 0x1 - bl sub_80765E0 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8059DB4 - - thumb_func_start sub_8059DC4 -sub_8059DC4: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08059DFE - movs r7, 0x1 - ldr r0, _08059E08 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08059DFE - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80765E0 -_08059DFE: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059E08: .4byte gUnknown_80F4DCA - thumb_func_end sub_8059DC4 - - thumb_func_start sub_8059E0C -sub_8059E0C: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _08059E46 - movs r7, 0x1 - ldr r0, _08059E50 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08059E46 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80763F8 -_08059E46: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059E50: .4byte gUnknown_80F4DBE - thumb_func_end sub_8059E0C - - thumb_func_start sub_8059E54 -sub_8059E54: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x2C - adds r6, r0, 0 - mov r8, r1 - adds r7, r2, 0 - adds r1, r3, 0 - ldr r0, [sp, 0x48] - lsls r0, 24 - movs r2, 0 - mov r9, r2 - cmp r0, 0 - bne _08059E8A - movs r3, 0x80 - lsls r3, 1 - str r1, [sp] - adds r0, r6, 0 - mov r1, r8 - adds r2, r7, 0 - bl sub_8055640 - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - mov r9, r1 -_08059E8A: - mov r0, r9 - cmp r0, 0 - bne _08059F1A - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8071A1C - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8071A44 - adds r5, r0, 0 - adds r0, r7, 0 - bl sub_8092C24 - str r0, [sp] - add r2, sp, 0x18 - str r2, [sp, 0x4] - movs r0, 0x80 - lsls r0, 1 - str r0, [sp, 0x8] - ldrh r0, [r7, 0x2] - str r0, [sp, 0xC] - mov r0, r9 - str r0, [sp, 0x10] - adds r0, r6, 0 - mov r1, r8 - adds r2, r4, 0 - adds r3, r5, 0 - bl sub_806EAF4 - ldr r0, _08059F2C - ldr r1, [r6, 0x70] - movs r2, 0 - bl sub_80708B4 - ldr r0, _08059F30 - ldr r2, [r0] - adds r0, r6, 0 - mov r1, r8 - bl sub_80522F4 - ldr r0, [sp, 0x18] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [sp, 0x18] - cmp r0, 0 - bne _08059EF6 - movs r0, 0x1 - str r0, [sp, 0x18] -_08059EF6: - ldr r2, [sp, 0x18] - add r0, sp, 0x28 - str r0, [sp] - mov r0, r9 - str r0, [sp, 0x4] - ldr r0, _08059F34 - str r0, [sp, 0x8] - movs r0, 0x13 - str r0, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - mov r0, r9 - str r0, [sp, 0x14] - adds r0, r6, 0 - adds r1, r6, 0 - movs r3, 0 - bl sub_806F370 -_08059F1A: - mov r0, r9 - add sp, 0x2C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059F2C: .4byte gUnknown_202DF98 -_08059F30: .4byte gUnknown_80FC7C8 -_08059F34: .4byte 0x000001f7 - thumb_func_end sub_8059E54 - - thumb_func_start sub_8059F38 -sub_8059F38: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r6, r1, 0 - adds r5, r2, 0 - adds r7, r3, 0 - movs r0, 0 - mov r8, r0 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _08059FA0 - ldr r0, _08059F98 - ldr r3, [r0] - str r7, [sp] - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_8055640 - cmp r0, 0 - beq _08059F90 - movs r1, 0x1 - mov r8, r1 - ldr r0, _08059F9C - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _08059F90 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077780 -_08059F90: - adds r0, r4, 0 - bl sub_8079764 - b _08059FB6 - .align 2, 0 -_08059F98: .4byte gUnknown_80F4F60 -_08059F9C: .4byte gUnknown_80F4DCC -_08059FA0: - ldr r0, _08059FC4 - ldr r0, [r0] - str r0, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0x8 - adds r3, r5, 0 - bl sub_8079618 - movs r0, 0x1 - mov r8, r0 -_08059FB6: - mov r0, r8 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08059FC4: .4byte gUnknown_80FAD10 - thumb_func_end sub_8059F38 - - thumb_func_start sub_8059FC8 -sub_8059FC8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x2C - adds r6, r0, 0 - mov r8, r1 - adds r7, r2, 0 - adds r1, r3, 0 - ldr r0, [sp, 0x48] - lsls r0, 24 - movs r2, 0 - mov r9, r2 - cmp r0, 0 - bne _08059FFE - movs r3, 0x80 - lsls r3, 2 - str r1, [sp] - adds r0, r6, 0 - mov r1, r8 - adds r2, r7, 0 - bl sub_8055640 - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - mov r9, r1 -_08059FFE: - mov r0, r9 - cmp r0, 0 - bne _0805A090 - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8071A1C - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8071A44 - adds r5, r0, 0 - adds r0, r7, 0 - bl sub_8092C24 - str r0, [sp] - add r2, sp, 0x18 - str r2, [sp, 0x4] - movs r0, 0x80 - lsls r0, 2 - str r0, [sp, 0x8] - ldrh r0, [r7, 0x2] - str r0, [sp, 0xC] - mov r0, r9 - str r0, [sp, 0x10] - adds r0, r6, 0 - mov r1, r8 - adds r2, r4, 0 - adds r3, r5, 0 - bl sub_806EAF4 - ldr r0, _0805A0A0 - ldr r1, [r6, 0x70] - movs r2, 0 - bl sub_80708B4 - ldr r0, _0805A0A4 - ldr r2, [r0] - adds r0, r6, 0 - mov r1, r8 - bl sub_80522F4 - ldr r0, [sp, 0x18] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [sp, 0x18] - cmp r0, 0 - bne _0805A06A - movs r0, 0x1 - str r0, [sp, 0x18] -_0805A06A: - ldr r2, [sp, 0x18] - add r0, sp, 0x28 - str r0, [sp] - mov r0, r9 - str r0, [sp, 0x4] - movs r0, 0xFC - lsls r0, 1 - str r0, [sp, 0x8] - movs r0, 0x13 - str r0, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - mov r0, r9 - str r0, [sp, 0x14] - adds r0, r6, 0 - adds r1, r6, 0 - movs r3, 0 - bl sub_806F370 -_0805A090: - mov r0, r9 - add sp, 0x2C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805A0A0: .4byte gUnknown_202DF98 -_0805A0A4: .4byte gUnknown_80FC7C8 - thumb_func_end sub_8059FC8 - - thumb_func_start sub_805A0A8 -sub_805A0A8: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805A114 - movs r7, 0x1 - ldr r0, _0805A0F8 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805A114 - movs r0, 0x3 - bl sub_8084100 - cmp r0, 0x1 - beq _0805A0FC - cmp r0, 0x1 - ble _0805A0EA - cmp r0, 0x2 - beq _0805A10A -_0805A0EA: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077780 - b _0805A114 - .align 2, 0 -_0805A0F8: .4byte gUnknown_80F4DFC -_0805A0FC: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl sub_8076210 - b _0805A114 -_0805A10A: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80767B0 -_0805A114: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805A0A8 - - thumb_func_start sub_805A120 -sub_805A120: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r0, 0 - adds r5, r1, 0 - movs r0, 0 - mov r10, r0 - ldr r1, [r6, 0x70] - mov r9, r1 - mov r7, r9 - ldr r2, [r5, 0x70] - mov r8, r2 - mov r0, r8 - str r0, [sp] - ldr r4, _0805A16C - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - movs r1, 0x2C - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0805A174 - ldr r0, _0805A170 - b _0805A1B8 - .align 2, 0 -_0805A16C: .4byte gUnknown_202DF98 -_0805A170: .4byte gUnknown_80FCCE4 -_0805A174: - adds r0, r5, 0 - movs r1, 0x24 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0805A18C - ldr r0, _0805A188 - b _0805A1B8 - .align 2, 0 -_0805A188: .4byte gUnknown_80FD578 -_0805A18C: - mov r0, r9 - adds r0, 0x60 - mov r2, r8 - adds r2, 0x60 - ldrb r1, [r0] - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - bne _0805A1A2 - mov r10, r4 -_0805A1A2: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - bne _0805A1B0 - movs r1, 0x1 - mov r10, r1 -_0805A1B0: - mov r2, r10 - cmp r2, 0 - beq _0805A1CC - ldr r0, _0805A1C8 -_0805A1B8: - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - movs r0, 0 - b _0805A1FC - .align 2, 0 -_0805A1C8: .4byte gUnknown_80FC7AC -_0805A1CC: - ldr r0, [r7, 0x60] - ldr r2, [sp] - ldr r1, [r2, 0x60] - str r1, [r7, 0x60] - str r0, [r2, 0x60] - adds r0, r6, 0 - bl sub_806A6E8 - adds r0, r5, 0 - bl sub_806A6E8 - adds r1, r7, 0 - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _0805A1EE - strb r4, [r1] -_0805A1EE: - ldr r0, _0805A20C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - movs r0, 0x1 -_0805A1FC: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805A20C: .4byte gUnknown_80FC790 - thumb_func_end sub_805A120 - - thumb_func_start sub_805A210 -sub_805A210: - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r3, 0 - ldr r4, _0805A238 - ldr r3, [r4] - adds r3, 0x1 - str r3, [r4] - lsls r3, 8 - str r5, [sp] - bl sub_8055640 - adds r1, r0, 0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805A238: .4byte gUnknown_202F210 - thumb_func_end sub_805A210 - - thumb_func_start sub_805A23C -sub_805A23C: - push {lr} - ldrh r0, [r2, 0x2] - cmp r0, 0xD4 - bne _0805A24C - movs r0, 0 - bl sub_807EA30 - b _0805A252 -_0805A24C: - movs r0, 0x1 - bl sub_807EA30 -_0805A252: - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805A23C - - thumb_func_start sub_805A258 -sub_805A258: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805A292 - movs r7, 0x1 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805A292 - ldr r0, _0805A29C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0 - bl sub_80775DC -_0805A292: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805A29C: .4byte gUnknown_8106A4C - thumb_func_end sub_805A258 - - thumb_func_start sub_805A2A0 -sub_805A2A0: - push {lr} - bl sub_805BA50 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_805A2A0 - - thumb_func_start sub_805A2B0 -sub_805A2B0: - push {lr} - ldr r2, _0805A2C4 - ldr r2, [r2] - movs r3, 0x2 - bl sub_8077160 - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_0805A2C4: .4byte gUnknown_8106A50 - thumb_func_end sub_805A2B0 - - thumb_func_start sub_805A2C8 -sub_805A2C8: - push {lr} - sub sp, 0x8 - ldr r2, _0805A2E4 - ldr r2, [r2] - movs r3, 0x1 - str r3, [sp] - str r3, [sp, 0x4] - bl sub_8076E20 - movs r0, 0x1 - add sp, 0x8 - pop {r1} - bx r1 - .align 2, 0 -_0805A2E4: .4byte gUnknown_8106A4C - thumb_func_end sub_805A2C8 - - thumb_func_start sub_805A2E8 -sub_805A2E8: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - movs r6, 0 - ldr r0, [r1, 0x70] - adds r0, 0xC0 - ldrb r0, [r0] - movs r4, 0x80 - lsls r4, 1 - cmp r0, 0x9 - bne _0805A302 - movs r4, 0x80 - lsls r4, 2 -_0805A302: - str r3, [sp] - adds r0, r5, 0 - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805A312 - movs r6, 0x1 -_0805A312: - adds r0, r6, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805A2E8 - - thumb_func_start sub_805A31C -sub_805A31C: - push {r4-r7,lr} - adds r5, r0, 0 - adds r6, r1, 0 - ldr r4, [r5, 0x70] - ldr r7, [r6, 0x70] - adds r0, r6, 0 - movs r1, 0x35 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0805A348 - ldr r0, _0805A344 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80522F4 - movs r0, 0 - b _0805A386 - .align 2, 0 -_0805A344: .4byte gUnknown_80FC854 -_0805A348: - adds r0, r7, 0 - adds r0, 0x5E - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x5E - strb r0, [r1] - adds r0, r7, 0 - adds r0, 0x5F - ldrb r0, [r0] - adds r1, 0x1 - strb r0, [r1] - ldr r0, _0805A38C - ldr r0, [r0] - movs r2, 0x1 - strb r2, [r0, 0xC] - adds r1, 0x9C - ldrb r0, [r1] - cmp r0, 0 - bne _0805A370 - strb r2, [r1] -_0805A370: - ldr r0, _0805A390 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80522F4 - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_806ABAC - movs r0, 0x1 -_0805A386: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805A38C: .4byte gUnknown_203B418 -_0805A390: .4byte gUnknown_80FC81C - thumb_func_end sub_805A31C - - thumb_func_start sub_805A394 -sub_805A394: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, _0805A3CC - ldr r0, [r0] - ldr r1, _0805A3D0 - ldrh r1, [r1] - ldr r2, _0805A3D4 - adds r0, r2 - strb r1, [r0] - movs r0, 0x1 - movs r1, 0 - bl sub_807EAA0 - lsls r0, 24 - cmp r0, 0 - bne _0805A3C2 - ldr r0, _0805A3D8 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0805A3C2: - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805A3CC: .4byte gUnknown_203B418 -_0805A3D0: .4byte gUnknown_80F4F42 -_0805A3D4: .4byte 0x0000e268 -_0805A3D8: .4byte gUnknown_80FCF7C - thumb_func_end sub_805A394 - - thumb_func_start sub_805A3DC -sub_805A3DC: - push {lr} - sub sp, 0x8 - ldr r2, _0805A3F8 - ldr r2, [r2] - movs r3, 0x1 - str r3, [sp] - str r3, [sp, 0x4] - bl sub_8076F80 - movs r0, 0x1 - add sp, 0x8 - pop {r1} - bx r1 - .align 2, 0 -_0805A3F8: .4byte gUnknown_8106A4C - thumb_func_end sub_805A3DC - - thumb_func_start sub_805A3FC -sub_805A3FC: - push {lr} - bl sub_807992C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805A3FC - - thumb_func_start sub_805A408 -sub_805A408: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805A442 - movs r7, 0x1 - ldr r0, _0805A44C - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805A442 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80776C0 -_0805A442: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805A44C: .4byte gUnknown_80F4DF2 - thumb_func_end sub_805A408 - - thumb_func_start sub_805A450 -sub_805A450: - push {lr} - ldr r2, _0805A460 - ldr r2, [r2] - bl sub_80522F4 - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_0805A460: .4byte gUnknown_80FC730 - thumb_func_end sub_805A450 - - thumb_func_start sub_805A464 -sub_805A464: - push {r4-r7,lr} - sub sp, 0xC - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805A4B4 - movs r7, 0x1 - adds r0, r5, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _0805A4B4 - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0805A4B4 - str r0, [sp, 0x8] - add r0, sp, 0x4 - movs r1, 0x69 - movs r2, 0x2 - bl sub_8045C28 - add r3, sp, 0x8 - adds r0, r5, 0 - adds r1, r6, 0 - add r2, sp, 0x4 - bl sub_805A7D4 -_0805A4B4: - adds r0, r7, 0 - add sp, 0xC - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805A464 - - thumb_func_start sub_805A4C0 -sub_805A4C0: - push {lr} - ldr r2, _0805A4D0 - ldr r2, [r2] - bl sub_80522F4 - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_0805A4D0: .4byte gUnknown_80FC74C - thumb_func_end sub_805A4C0 - - thumb_func_start sub_805A4D4 -sub_805A4D4: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _0805A4F8 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r2, r0, 0 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8075E74 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805A4F8: .4byte gUnknown_80F4E94 - thumb_func_end sub_805A4D4 - - thumb_func_start sub_805A4FC -sub_805A4FC: - push {lr} - bl sub_8076AA4 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805A4FC - - thumb_func_start sub_805A508 -sub_805A508: - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r3, r1, 0 - ldr r0, [r3, 0x70] - movs r1, 0x89 - lsls r1, 1 - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0 - beq _0805A540 - ldr r1, _0805A53C - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - movs r0, 0x1 - str r0, [sp] - adds r0, r5, 0 - adds r1, r3, 0 - movs r3, 0 - bl sub_8077C44 - movs r0, 0 - strb r0, [r4] - b _0805A54C - .align 2, 0 -_0805A53C: .4byte gUnknown_80F51D4 -_0805A540: - ldr r0, _0805A558 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r3, 0 - bl sub_80522F4 -_0805A54C: - movs r0, 0x1 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805A558: .4byte gUnknown_80FC770 - thumb_func_end sub_805A508 - - thumb_func_start sub_805A55C -sub_805A55C: - push {lr} - bl sub_8078594 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805A55C - - thumb_func_start sub_805A568 -sub_805A568: - push {r4,lr} - sub sp, 0x4 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - adds r1, r0, 0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805A568 - - thumb_func_start sub_805A588 -sub_805A588: - push {r4-r7,lr} - sub sp, 0x8 - adds r6, r0, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805A5D8 - movs r7, 0x1 - adds r0, r6, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805A5D8 - ldr r0, _0805A5E4 - ldr r5, [r0] - movs r4, 0 - str r4, [sp] - str r4, [sp, 0x4] - adds r0, r6, 0 - adds r1, r6, 0 - adds r2, r5, 0 - movs r3, 0x1 - bl sub_8076E20 - str r4, [sp] - str r4, [sp, 0x4] - adds r0, r6, 0 - adds r1, r6, 0 - adds r2, r5, 0 - movs r3, 0x1 - bl sub_8076F80 -_0805A5D8: - adds r0, r7, 0 - add sp, 0x8 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805A5E4: .4byte gUnknown_8106A4C - thumb_func_end sub_805A588 - - thumb_func_start sub_805A5E8 -sub_805A5E8: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r7, r3, 0 - ldr r0, [sp, 0x18] - movs r6, 0 - movs r3, 0x80 - lsls r3, 1 - str r0, [sp] - adds r0, r5, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805A632 - movs r6, 0x1 - ldr r0, _0805A63C - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805A632 - ldr r4, [r5, 0x70] - adds r0, r5, 0 - adds r1, r5, 0 - adds r2, r7, 0 - movs r3, 0x1 - bl sub_8077160 - adds r4, 0xFB - ldrb r0, [r4] - cmp r0, 0 - bne _0805A632 - strb r6, [r4] -_0805A632: - adds r0, r6, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805A63C: .4byte gUnknown_80F4DD2 - thumb_func_end sub_805A5E8 - - thumb_func_start sub_805A640 -sub_805A640: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - adds r1, r3, 0 - ldr r0, [r5, 0x70] - movs r3, 0x89 - lsls r3, 1 - adds r4, r0, r3 - ldrb r0, [r4] - cmp r0, 0 - beq _0805A66C - adds r3, r0, 0 - lsls r3, 8 - str r1, [sp] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8055640 - movs r0, 0 - strb r0, [r4] - b _0805A678 -_0805A66C: - ldr r0, _0805A684 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80522F4 -_0805A678: - movs r0, 0x1 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805A684: .4byte gUnknown_80FCA3C - thumb_func_end sub_805A640 - - thumb_func_start sub_805A688 -sub_805A688: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805A6BE - movs r7, 0x1 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805A6BE - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077AE4 -_0805A6BE: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805A688 - - thumb_func_start sub_805A6C8 -sub_805A6C8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - adds r6, r0, 0 - adds r5, r1, 0 - ldr r0, [r6, 0x70] - mov r9, r0 - ldr r7, [r5, 0x70] - mov r8, r7 - ldr r4, _0805A708 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - movs r1, 0x2C - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0805A710 - ldr r0, _0805A70C - b _0805A73A - .align 2, 0 -_0805A708: .4byte gUnknown_202DF98 -_0805A70C: .4byte gUnknown_80FCCE8 -_0805A710: - adds r0, r5, 0 - movs r1, 0x24 - bl sub_8046CB0 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _0805A728 - ldr r0, _0805A724 - b _0805A73A - .align 2, 0 -_0805A724: .4byte gUnknown_80FD57C -_0805A728: - ldr r0, [r7, 0x60] - str r0, [sp] - mov r0, sp - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0805A74C - ldr r0, _0805A748 -_0805A73A: - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - movs r0, 0 - b _0805A7B4 - .align 2, 0 -_0805A748: .4byte gUnknown_80FD18C -_0805A74C: - mov r0, r8 - adds r0, 0x60 - strb r2, [r0, 0x2] - strb r2, [r0, 0x1] - strb r2, [r0] - ldr r0, _0805A7C4 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - ldr r4, _0805A7C8 - mov r3, r9 - adds r3, 0x46 - ldrb r0, [r3] - lsls r0, 2 - adds r0, r4 - ldrh r2, [r0] - ldr r0, _0805A7CC - ldr r1, [sp, 0x4] - ands r1, r0 - orrs r1, r2 - str r1, [sp, 0x4] - ldrb r0, [r3] - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x2] - lsls r0, 16 - ldr r2, _0805A7D0 - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x4] - add r3, sp, 0x4 - adds r0, r6, 0 - adds r1, r5, 0 - mov r2, sp - bl sub_805A7D4 - adds r1, r5, 0x4 - adds r0, r5, 0 - bl sub_80706A4 - lsls r0, 24 - cmp r0, 0 - beq _0805A7B2 - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_0805A7B2: - movs r0, 0x1 -_0805A7B4: - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805A7C4: .4byte gUnknown_80FD170 -_0805A7C8: .4byte gUnknown_80F4448 -_0805A7CC: .4byte 0xffff0000 -_0805A7D0: .4byte 0x0000ffff - thumb_func_end sub_805A6C8 - - thumb_func_start sub_805A7D4 -sub_805A7D4: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x78 - mov r8, r0 - adds r4, r1, 0 - adds r6, r2, 0 - movs r0, 0x3 - str r0, [sp, 0x4] - add r0, sp, 0x28 - movs r5, 0 - strb r5, [r0] - add r1, sp, 0x24 - movs r0, 0x1 - strb r0, [r1] - mov r0, sp - adds r0, 0x26 - strb r5, [r0] - str r6, [sp, 0x74] - add r1, sp, 0x4 - ldrh r0, [r3] - ldrh r2, [r4, 0x4] - adds r0, r2 - strh r0, [r1, 0x4] - ldrh r0, [r3, 0x2] - ldrh r2, [r4, 0x6] - adds r0, r2 - strh r0, [r1, 0x6] - movs r1, 0x4 - ldrsh r0, [r4, r1] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, 0x4 - lsls r1, 8 - movs r2, 0x6 - ldrsh r0, [r4, r2] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 3 - adds r2, 0x4 - lsls r2, 8 - add r0, sp, 0x4 - bl sub_8045394 - add r0, sp, 0x4 - strh r5, [r0, 0x26] - ldr r0, _0805A858 - add r1, sp, 0x4 - movs r2, 0 - bl sub_8045B94 - str r5, [sp] - mov r0, r8 - add r1, sp, 0x4 - adds r2, r6, 0 - movs r3, 0x1 - bl sub_804652C - add sp, 0x78 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0805A858: .4byte gUnknown_202DE58 - thumb_func_end sub_805A7D4 - - thumb_func_start sub_805A85C -sub_805A85C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - mov r8, r0 - adds r6, r1, 0 - mov r10, r2 - str r3, [sp, 0x24] - ldr r0, [r6, 0x4] - str r0, [sp, 0x18] - adds r0, r6, 0 - movs r1, 0xA - movs r2, 0x8 - bl sub_806CDD4 - movs r5, 0 -_0805A880: - movs r0, 0x3 - bl sub_8084100 - adds r4, r0, 0 - movs r0, 0x3 - bl sub_8084100 - adds r2, r0, 0 - subs r4, 0x1 - subs r2, 0x1 - cmp r4, 0 - bne _0805A89C - cmp r2, 0 - beq _0805A8BC -_0805A89C: - ldrh r0, [r6, 0x4] - adds r0, r4 - lsls r0, 16 - ldrh r1, [r6, 0x6] - adds r1, r2 - lsls r1, 16 - lsrs r0, 16 - orrs r0, r1 - str r0, [sp, 0x18] - adds r0, r6, 0 - add r1, sp, 0x18 - bl sub_80705F0 - lsls r0, 24 - cmp r0, 0 - beq _0805A8C2 -_0805A8BC: - adds r5, 0x1 - cmp r5, 0x27 - ble _0805A880 -_0805A8C2: - cmp r5, 0x28 - bne _0805A8DC - ldr r0, _0805A8D8 - ldr r2, [r0] - mov r0, r8 - adds r1, r6, 0 - bl sub_80522F4 - movs r0, 0 - b _0805AAB8 - .align 2, 0 -_0805A8D8: .4byte gUnknown_80FEBDC -_0805A8DC: - add r0, sp, 0x18 - movs r2, 0 - ldrsh r1, [r0, r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r3, 0xC0 - lsls r3, 4 - adds r0, r3 - ldr r1, [r6, 0xC] - subs r0, r1 - movs r1, 0xC - bl __divsi3 - str r0, [sp, 0x28] - add r0, sp, 0x18 - movs r2, 0x2 - ldrsh r1, [r0, r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r3, 0x80 - lsls r3, 5 - adds r0, r3 - ldr r1, [r6, 0x10] - subs r0, r1 - movs r1, 0xC - bl __divsi3 - str r0, [sp, 0x2C] - adds r4, r6, 0x4 - adds r0, r4, 0 - bl sub_803F428 - lsls r0, 24 - mov r9, r4 - cmp r0, 0 - bne _0805A934 - add r0, sp, 0x18 - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - beq _0805A94C -_0805A934: - movs r5, 0xB -_0805A936: - adds r0, r6, 0 - ldr r1, [sp, 0x28] - ldr r2, [sp, 0x2C] - bl sub_804539C - movs r0, 0x2C - bl sub_803E46C - subs r5, 0x1 - cmp r5, 0 - bge _0805A936 -_0805A94C: - add r0, sp, 0x18 - movs r1, 0 - ldrsh r0, [r0, r1] - add r4, sp, 0x18 - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_8049590 - ldr r5, [r0, 0x10] - cmp r5, 0 - beq _0805AA4C - adds r0, r5, 0 - bl sub_80450F8 - adds r7, r0, 0 - cmp r7, 0x1 - bne _0805A9FE - add r4, sp, 0x1C - ldr r1, _0805AA44 - adds r0, r4, 0 - bl sub_8092A88 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80571F0 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0805A9B0 - mov r0, r10 - ldr r1, [sp, 0x24] - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - ldr r1, _0805AA48 - movs r3, 0 - ldrsh r2, [r1, r3] - str r4, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r4, [sp, 0xC] - str r7, [sp, 0x10] - str r4, [sp, 0x14] - mov r0, r8 - adds r1, r5, 0 - movs r3, 0 - bl sub_806F370 -_0805A9B0: - bl sub_8044B28 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0805AAB6 - mov r0, r8 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805AAB6 - ldr r0, _0805AA48 - movs r1, 0 - ldrsh r2, [r0, r1] - str r4, [sp] - str r4, [sp, 0x4] - movs r0, 0xFF - lsls r0, 1 - str r0, [sp, 0x8] - str r4, [sp, 0xC] - str r4, [sp, 0x10] - str r4, [sp, 0x14] - mov r0, r8 - mov r1, r8 - movs r3, 0 - bl sub_806F370 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0805AAB6 - mov r0, r8 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805AAB6 -_0805A9FE: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805AAB6 - mov r0, r9 - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - bne _0805AA22 - add r0, sp, 0x18 - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - beq _0805AA5E -_0805AA22: - ldr r2, [sp, 0x28] - negs r7, r2 - ldr r3, [sp, 0x2C] - negs r4, r3 - movs r5, 0xB -_0805AA2C: - adds r0, r6, 0 - adds r1, r7, 0 - adds r2, r4, 0 - bl sub_804539C - movs r0, 0x2C - bl sub_803E46C - subs r5, 0x1 - cmp r5, 0 - bge _0805AA2C - b _0805AA5E - .align 2, 0 -_0805AA44: .4byte 0x00000163 -_0805AA48: .4byte gUnknown_80F4F82 -_0805AA4C: - add r0, sp, 0x18 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r3, 0x2 - ldrsh r2, [r4, r3] - adds r0, r6, 0 - movs r3, 0 - bl sub_80694C0 -_0805AA5E: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805AAB6 - adds r0, r6, 0 - movs r1, 0 - bl sub_804535C - mov r1, r9 - adds r0, r6, 0 - bl sub_80706A4 - lsls r0, 24 - cmp r0, 0 - beq _0805AA8C - mov r0, r8 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_0805AA8C: - ldr r0, [r6, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0805AAA0 - mov r0, r9 - bl sub_804AC20 - movs r0, 0 - bl sub_807EC28 -_0805AAA0: - adds r0, r6, 0 - bl sub_806A5B8 - ldr r0, _0805AAC8 - ldr r0, [r0] - ldr r1, _0805AACC - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_8075900 -_0805AAB6: - movs r0, 0x1 -_0805AAB8: - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805AAC8: .4byte gUnknown_203B418 -_0805AACC: .4byte 0x00003a08 - thumb_func_end sub_805A85C - - thumb_func_start sub_805AAD0 -sub_805AAD0: - push {lr} - adds r1, r0, 0 - bl sub_80782CC - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805AAD0 - - thumb_func_start sub_805AAE0 -sub_805AAE0: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r6, r1, 0 - ldr r0, [r4, 0x70] - movs r7, 0 - movs r1, 0x9E - lsls r1, 1 - adds r5, r0, r1 - ldr r0, [r5] - bl sub_8094450 - cmp r0, 0x1 - ble _0805AB20 - ldr r0, _0805AB1C - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - movs r3, 0x63 - bl sub_8077084 - mov r0, sp - movs r1, 0x1 - bl sub_80943A0 - ldr r0, [sp] - str r0, [r5] - movs r7, 0x1 - b _0805AB36 - .align 2, 0 -_0805AB1C: .4byte gUnknown_8106A4C -_0805AB20: - ldr r0, _0805AB40 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0805AB44 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_80522F4 -_0805AB36: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805AB40: .4byte gUnknown_202DF98 -_0805AB44: .4byte gUnknown_80FC5CC - thumb_func_end sub_805AAE0 - - thumb_func_start sub_805AB48 -sub_805AB48: - push {lr} - bl sub_8079A24 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805AB48 - - thumb_func_start sub_805AB54 -sub_805AB54: - push {r4-r7,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - bne _0805AB70 - b _0805AC86 -_0805AB70: - movs r7, 0x1 - ldr r0, _0805ABA8 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - bne _0805AB88 - b _0805AC86 -_0805AB88: - ldr r1, _0805ABAC - ldr r0, _0805ABB0 - ldr r0, [r0] - ldr r2, _0805ABB4 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x8 - bhi _0805AC7C - lsls r0, 2 - ldr r1, _0805ABB8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0805ABA8: .4byte gUnknown_80F4E06 -_0805ABAC: .4byte gUnknown_80F5978 -_0805ABB0: .4byte gUnknown_203B418 -_0805ABB4: .4byte 0x00003a0e -_0805ABB8: .4byte _0805ABBC - .align 2, 0 -_0805ABBC: - .4byte _0805ABE0 - .4byte _0805ABEC - .4byte _0805AC08 - .4byte _0805AC16 - .4byte _0805AC34 - .4byte _0805AC50 - .4byte _0805AC64 - .4byte _0805AC70 - .4byte _0805AC7C -_0805ABE0: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80763F8 - b _0805AC86 -_0805ABEC: - ldr r1, _0805AC04 - adds r0, r6, 0 - movs r2, 0x1 - bl sub_808417C - adds r2, r0, 0 - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0 - bl sub_8075C58 - b _0805AC86 - .align 2, 0 -_0805AC04: .4byte gUnknown_80F4E74 -_0805AC08: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_80779F0 - b _0805AC86 -_0805AC16: - ldr r0, _0805AC30 - ldr r2, [r0] - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0x1 - bl sub_8076E20 - b _0805AC86 - .align 2, 0 -_0805AC30: .4byte gUnknown_8106A4C -_0805AC34: - ldr r0, _0805AC4C - ldr r2, [r0] - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0x1 - bl sub_8076F80 - b _0805AC86 - .align 2, 0 -_0805AC4C: .4byte gUnknown_8106A4C -_0805AC50: - ldr r0, _0805AC60 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0 - bl sub_80775DC - b _0805AC86 - .align 2, 0 -_0805AC60: .4byte gUnknown_8106A4C -_0805AC64: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077AE4 - b _0805AC86 -_0805AC70: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80776C0 - b _0805AC86 -_0805AC7C: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077780 -_0805AC86: - adds r0, r7, 0 - add sp, 0x8 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805AB54 - - thumb_func_start sub_805AC90 -sub_805AC90: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805ACCA - movs r7, 0x1 - ldr r0, _0805ACD4 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805ACCA - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8077AE4 -_0805ACCA: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805ACD4: .4byte gUnknown_80F4DFA - thumb_func_end sub_805AC90 - - thumb_func_start sub_805ACD8 -sub_805ACD8: - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - ldr r0, _0805AD00 - ldr r4, [r0] - adds r0, r5, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8077084 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8077160 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805AD00: .4byte gUnknown_8106A4C - thumb_func_end sub_805ACD8 - - thumb_func_start sub_805AD04 -sub_805AD04: - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _0805AD30 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r3, r0, 0 - movs r0, 0x1 - str r0, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8076090 - movs r0, 0x1 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805AD30: .4byte gUnknown_80F4EE0 - thumb_func_end sub_805AD04 - - thumb_func_start sub_805AD34 -sub_805AD34: - push {lr} - sub sp, 0x8 - ldr r2, _0805AD50 - ldr r2, [r2] - movs r3, 0x1 - str r3, [sp] - str r3, [sp, 0x4] - movs r3, 0x2 - bl sub_8076E20 - movs r0, 0x1 - add sp, 0x8 - pop {r1} - bx r1 - .align 2, 0 -_0805AD50: .4byte gUnknown_8106A4C - thumb_func_end sub_805AD34 - - thumb_func_start sub_805AD54 -sub_805AD54: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r5, r0, 0 - mov r9, r1 - movs r0, 0 - mov r10, r0 - ldr r1, [r5, 0x70] - mov r8, r1 - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _0805AD88 - ldr r0, _0805AD80 - ldr r0, [r0] - ldr r1, _0805AD84 - adds r7, r0, r1 - movs r0, 0x10 - b _0805AD92 - .align 2, 0 -_0805AD80: .4byte gUnknown_203B418 -_0805AD84: .4byte 0x0001358c -_0805AD88: - ldr r0, _0805AD98 - ldr r0, [r0] - ldr r1, _0805AD9C - adds r7, r0, r1 - movs r0, 0x4 -_0805AD92: - str r0, [sp] - movs r6, 0 - b _0805AE0E - .align 2, 0 -_0805AD98: .4byte gUnknown_203B418 -_0805AD9C: .4byte 0x0001357c -_0805ADA0: - lsls r0, r6, 2 - adds r0, r7 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805AE0C - cmp r5, r4 - beq _0805AE0C - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - cmp r0, 0 - bne _0805AE0C - ldr r1, [r4, 0x70] - adds r0, r1, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0805AE0C - adds r0, r1, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _0805ADE2 - cmp r0, 0x47 - bne _0805ADE6 -_0805ADE2: - movs r0, 0x1 - b _0805ADE8 -_0805ADE6: - movs r0, 0 -_0805ADE8: - cmp r0, 0 - bne _0805AE0C - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x2 - mov r3, r9 - adds r3, 0x4 - bl sub_807D148 - movs r0, 0x1 - mov r10, r0 - mov r1, r8 - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _0805AE0C - mov r0, r10 - strb r0, [r1] -_0805AE0C: - adds r6, 0x1 -_0805AE0E: - ldr r1, [sp] - cmp r6, r1 - blt _0805ADA0 - mov r0, r10 - cmp r0, 0 - bne _0805AE26 - ldr r0, _0805AE38 - ldr r2, [r0] - adds r0, r5, 0 - mov r1, r9 - bl sub_80522F4 -_0805AE26: - mov r0, r10 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805AE38: .4byte gUnknown_81004EC - thumb_func_end sub_805AD54 - - thumb_func_start sub_805AE3C -sub_805AE3C: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - mov r8, r2 - adds r4, r3, 0 - bl sub_807A9D8 - movs r3, 0x80 - lsls r3, 2 - str r4, [sp] - adds r0, r5, 0 - adds r1, r6, 0 - mov r2, r8 - bl sub_8055640 - adds r1, r0, 0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805AE3C - - thumb_func_start sub_805AE74 -sub_805AE74: - push {r4-r7,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805AEB8 - movs r7, 0x1 - ldr r0, _0805AEC4 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805AEB8 - ldr r0, _0805AEC8 - ldr r2, [r0] - str r7, [sp] - movs r0, 0 - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0x1 - bl sub_8076F80 -_0805AEB8: - adds r0, r7, 0 - add sp, 0x8 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805AEC4: .4byte gUnknown_80F4DDA -_0805AEC8: .4byte gUnknown_8106A4C - thumb_func_end sub_805AE74 - - thumb_func_start sub_805AECC -sub_805AECC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r6, r0, 0 - adds r7, r1, 0 - adds r5, r2, 0 - adds r4, r3, 0 - movs r0, 0 - mov r8, r0 - adds r0, r6, 0 - bl sub_807A9D8 - movs r3, 0x80 - lsls r3, 1 - str r4, [sp] - adds r0, r6, 0 - adds r1, r7, 0 - adds r2, r5, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805AF1E - movs r1, 0x1 - mov r8, r1 - ldr r0, _0805AF2C - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805AF1E - adds r0, r6, 0 - adds r1, r7, 0 - movs r2, 0 - movs r3, 0 - bl sub_8076210 -_0805AF1E: - mov r0, r8 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805AF2C: .4byte gUnknown_80F4DFE - thumb_func_end sub_805AECC - - thumb_func_start sub_805AF30 -sub_805AF30: - push {r4-r7,lr} - sub sp, 0x4 - adds r7, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - adds r4, r3, 0 - movs r0, 0x64 - bl sub_8084100 - adds r1, r0, 0 - cmp r0, 0x9 - bgt _0805AF54 - str r4, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - adds r2, r6, 0 - movs r3, 0x78 - b _0805AF92 -_0805AF54: - cmp r0, 0x1D - bgt _0805AF78 - ldr r0, [r5, 0x70] - movs r1, 0x10 - ldrsh r2, [r0, r1] - cmp r2, 0 - bge _0805AF64 - adds r2, 0x3 -_0805AF64: - asrs r2, 2 - movs r0, 0x1 - str r0, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - movs r3, 0 - bl sub_8077C44 - movs r0, 0x1 - b _0805AF9C -_0805AF78: - cmp r1, 0x3B - bgt _0805AF88 - str r4, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - adds r2, r6, 0 - movs r3, 0x50 - b _0805AF92 -_0805AF88: - str r4, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - adds r2, r6, 0 - movs r3, 0x28 -_0805AF92: - bl sub_8055864 - negs r1, r0 - orrs r1, r0 - lsrs r0, r1, 31 -_0805AF9C: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805AF30 - - thumb_func_start sub_805AFA4 -sub_805AFA4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - mov r8, r2 - adds r6, r3, 0 - bl sub_807A9D8 - ldr r3, [r4, 0x70] - movs r0, 0x10 - ldrsh r2, [r3, r0] - adds r0, r2, 0 - cmp r2, 0 - bge _0805AFC6 - adds r0, r2, 0x3 -_0805AFC6: - movs r7, 0xE - ldrsh r1, [r3, r7] - asrs r0, 2 - cmp r1, r0 - bgt _0805AFD4 - movs r2, 0 - b _0805AFFA -_0805AFD4: - movs r0, 0xE - ldrsh r1, [r3, r0] - lsrs r0, r2, 31 - adds r0, r2, r0 - asrs r0, 1 - cmp r1, r0 - bgt _0805AFE6 - movs r2, 0x1 - b _0805AFFA -_0805AFE6: - lsls r0, r2, 1 - adds r0, r2 - cmp r0, 0 - bge _0805AFF0 - adds r0, 0x3 -_0805AFF0: - asrs r0, 2 - movs r2, 0x3 - cmp r1, r0 - bgt _0805AFFA - movs r2, 0x2 -_0805AFFA: - ldr r1, _0805B024 - lsls r0, r2, 2 - adds r0, r1 - ldr r3, [r0] - str r6, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_8055640 - adds r1, r0, 0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B024: .4byte gUnknown_80F51C4 - thumb_func_end sub_805AFA4 - - thumb_func_start sub_805B028 -sub_805B028: - push {lr} - movs r2, 0x1 - bl sub_8077780 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B028 - - thumb_func_start sub_805B038 -sub_805B038: - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - adds r4, r2, 0 - bl sub_80441BC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0805B05A - strb r0, [r4, 0x4] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8078E18 - movs r0, 0x1 - b _0805B068 -_0805B05A: - ldr r0, _0805B070 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80522F4 - movs r0, 0 -_0805B068: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805B070: .4byte gUnknown_80FEFF4 - thumb_func_end sub_805B038 - - thumb_func_start sub_805B074 -sub_805B074: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805B0AE - movs r7, 0x1 - ldr r0, _0805B0B8 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805B0AE - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80763F8 -_0805B0AE: - adds r0, r7, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B0B8: .4byte gUnknown_80F4DC6 - thumb_func_end sub_805B074 - - thumb_func_start sub_805B0BC -sub_805B0BC: - push {lr} - ldr r2, [r0, 0x70] - adds r2, 0x46 - ldrb r2, [r2] - bl sub_807CD9C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B0BC - - thumb_func_start sub_805B0D0 -sub_805B0D0: - push {r4-r7,lr} - adds r7, r0, 0 - adds r5, r1, 0 - ldr r4, [r5, 0x70] - ldr r1, _0805B134 - ldr r0, _0805B138 - ldr r0, [r0] - ldr r2, _0805B13C - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r0, r1 - ldrb r6, [r0] - adds r0, r5, 0 - movs r1, 0x25 - bl sub_8071824 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805B14C - adds r0, r4, 0 - adds r0, 0x5C - strb r6, [r0] - adds r0, 0x1 - strb r1, [r0] - adds r1, r4, 0 - adds r1, 0xF6 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _0805B140 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r6, 0 - bl sub_8092334 - adds r1, r0, 0 - ldr r0, _0805B144 - bl strcpy - ldr r0, _0805B148 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - movs r0, 0x1 - b _0805B15A - .align 2, 0 -_0805B134: .4byte gUnknown_80F561C -_0805B138: .4byte gUnknown_203B418 -_0805B13C: .4byte 0x00003a0e -_0805B140: .4byte gUnknown_202DFE8 -_0805B144: .4byte gUnknown_202DE58 -_0805B148: .4byte gUnknown_80FEB08 -_0805B14C: - ldr r0, _0805B160 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - movs r0, 0 -_0805B15A: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B160: .4byte gUnknown_81006F8 - thumb_func_end sub_805B0D0 - - thumb_func_start sub_805B164 -sub_805B164: - push {lr} - ldr r2, _0805B178 - ldr r2, [r2] - movs r3, 0x2 - bl sub_8077084 - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_0805B178: .4byte gUnknown_8106A50 - thumb_func_end sub_805B164 - - thumb_func_start sub_805B17C -sub_805B17C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - adds r7, r2, 0 - mov r8, r3 - movs r0, 0 - mov r9, r0 - ldrh r1, [r7, 0x2] - ldr r0, _0805B1A8 - cmp r1, r0 - bne _0805B1AC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_807A9D8 - movs r6, 0x9E - lsls r6, 1 - b _0805B1BA - .align 2, 0 -_0805B1A8: .4byte 0x00000123 -_0805B1AC: - movs r6, 0x75 - cmp r1, 0x45 - beq _0805B1BA - movs r6, 0xF1 - cmp r1, 0x7D - bne _0805B1BA - movs r6, 0x7E -_0805B1BA: - movs r3, 0x80 - lsls r3, 1 - mov r1, r8 - str r1, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r7, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805B1F4 - movs r0, 0x1 - mov r9, r0 - ldr r0, _0805B204 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805B1F4 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - movs r3, 0 - bl sub_80768DC -_0805B1F4: - mov r0, r9 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B204: .4byte gUnknown_80F4E08 - thumb_func_end sub_805B17C - - thumb_func_start sub_805B208 -sub_805B208: - push {lr} - bl sub_80788E8 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B208 - - thumb_func_start sub_805B214 -sub_805B214: - push {lr} - bl sub_8076B48 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B214 - - thumb_func_start sub_805B220 -sub_805B220: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r6, 0 - ldr r0, [r4, 0x70] - ldrb r0, [r0, 0x6] - movs r2, 0x1 - cmp r0, 0 - beq _0805B234 - movs r2, 0x2 -_0805B234: - adds r0, r4, 0x4 - movs r1, 0x13 - bl sub_807FCD4 - lsls r0, 24 - cmp r0, 0 - beq _0805B246 - movs r6, 0x1 - b _0805B252 -_0805B246: - ldr r0, _0805B260 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0805B252: - bl sub_8049ED4 - adds r0, r6, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805B260: .4byte gUnknown_80FC5A8 - thumb_func_end sub_805B220 - - thumb_func_start sub_805B264 -sub_805B264: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - mov r8, r0 - adds r7, r1, 0 - mov r9, r2 - mov r12, r3 - ldr r4, [r7, 0x70] - ldr r0, _0805B2D0 - ldr r3, [r0] - movs r6, 0 - ldr r0, _0805B2D4 - ldr r1, [r0] - movs r0, 0xC1 - lsls r0, 9 - adds r5, r1, r0 - ldr r2, _0805B2D8 - lsls r0, r3, 2 - adds r0, r2 - ldr r0, [r0] - str r0, [r5] - ldr r0, _0805B2DC - adds r1, r0 - str r6, [r1] - ldr r0, _0805B2E0 - lsls r3, 1 - adds r3, r0 - movs r0, 0 - ldrsh r3, [r3, r0] - adds r4, 0xC0 - ldrb r0, [r4] - cmp r0, 0xA - bne _0805B2AC - lsls r3, 1 -_0805B2AC: - mov r0, r12 - str r0, [sp] - mov r0, r8 - adds r1, r7, 0 - mov r2, r9 - bl sub_8055864 - negs r1, r0 - orrs r1, r0 - lsrs r6, r1, 31 - adds r0, r6, 0 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B2D0: .4byte gUnknown_202F224 -_0805B2D4: .4byte gUnknown_203B418 -_0805B2D8: .4byte gUnknown_8106A8C -_0805B2DC: .4byte 0x00018204 -_0805B2E0: .4byte gUnknown_80F4F94 - thumb_func_end sub_805B264 - - thumb_func_start sub_805B2E4 -sub_805B2E4: - push {lr} - bl sub_80799A8 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B2E4 - - thumb_func_start sub_805B2F0 -sub_805B2F0: - push {lr} - bl sub_8079B1C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B2F0 - - thumb_func_start sub_805B2FC -sub_805B2FC: - push {lr} - ldr r2, _0805B310 - ldr r2, [r2] - movs r3, 0x1 - bl sub_8077160 - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_0805B310: .4byte gUnknown_8106A4C - thumb_func_end sub_805B2FC - - thumb_func_start sub_805B314 -sub_805B314: - push {lr} - movs r2, 0x1 - bl sub_80783C4 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B314 - - thumb_func_start sub_805B324 -sub_805B324: - push {r4-r7,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805B368 - movs r7, 0x1 - ldr r0, _0805B374 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805B368 - ldr r0, _0805B378 - ldr r2, [r0] - str r7, [sp] - movs r0, 0 - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0x1 - bl sub_8076E20 -_0805B368: - adds r0, r7, 0 - add sp, 0x8 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B374: .4byte gUnknown_80F4DD8 -_0805B378: .4byte gUnknown_8106A50 - thumb_func_end sub_805B324 - - thumb_func_start sub_805B37C -sub_805B37C: - push {lr} - bl sub_80780E4 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B37C - - thumb_func_start sub_805B388 -sub_805B388: - push {r4,lr} - sub sp, 0x4 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805B39E - movs r0, 0x1 -_0805B39E: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805B388 - - thumb_func_start sub_805B3A8 -sub_805B3A8: - push {lr} - bl sub_8079BA8 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B3A8 - - thumb_func_start sub_805B3B4 -sub_805B3B4: - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - ldr r0, _0805B3DC - ldr r4, [r0] - adds r0, r5, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8077084 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8077160 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805B3DC: .4byte gUnknown_8106A50 - thumb_func_end sub_805B3B4 - - thumb_func_start sub_805B3E0 -sub_805B3E0: - push {r4,lr} - sub sp, 0x4 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - movs r0, 0x1 - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805B3E0 - - thumb_func_start sub_805B3FC -sub_805B3FC: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r7, r3, 0 - ldr r0, [sp, 0x18] - movs r6, 0 - movs r3, 0x80 - lsls r3, 1 - str r0, [sp] - adds r0, r5, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805B446 - movs r6, 0x1 - ldr r0, _0805B450 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805B446 - ldr r4, [r5, 0x70] - adds r0, r5, 0 - adds r1, r5, 0 - adds r2, r7, 0 - movs r3, 0x1 - bl sub_8077084 - adds r4, 0xFB - ldrb r0, [r4] - cmp r0, 0 - bne _0805B446 - strb r6, [r4] -_0805B446: - adds r0, r6, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B450: .4byte gUnknown_80F4DCE - thumb_func_end sub_805B3FC - - thumb_func_start sub_805B454 -sub_805B454: - push {lr} - movs r2, 0x1 - bl sub_807614C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B454 - - thumb_func_start sub_805B464 -sub_805B464: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r0, 0 - mov r9, r1 - movs r0, 0 - str r0, [sp] - ldr r1, [r6, 0x70] - mov r8, r1 - mov r1, r9 - ldr r0, [r1, 0x70] - movs r5, 0 - ldr r1, _0805B50C - mov r10, r1 - subs r1, 0x2F - adds r4, r0, r1 - movs r7, 0x3 -_0805B48C: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805B4D4 - ldrh r1, [r4, 0x2] - adds r0, r6, 0 - bl sub_805755C - lsls r0, 24 - cmp r0, 0 - bne _0805B4D4 - ldrh r2, [r4, 0x2] - adds r0, r2, 0 - cmp r0, r10 - beq _0805B4D4 - cmp r0, 0xE5 - beq _0805B4D4 - cmp r0, 0x8A - beq _0805B4D4 - cmp r0, 0x28 - beq _0805B4D4 - cmp r0, 0x11 - beq _0805B4D4 - ldrb r1, [r4] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0805B4D4 - lsls r1, r5, 1 - movs r0, 0xBD - lsls r0, 1 - add r0, r8 - adds r0, r1 - strh r2, [r0] - adds r5, 0x1 -_0805B4D4: - adds r4, 0x8 - subs r7, 0x1 - cmp r7, 0 - bge _0805B48C - ldr r0, _0805B510 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - cmp r5, 0 - beq _0805B518 - mov r1, r8 - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _0805B4F8 - movs r0, 0x1 - strb r0, [r1] -_0805B4F8: - ldr r0, _0805B514 - ldr r2, [r0] - adds r0, r6, 0 - mov r1, r9 - bl sub_80522F4 - movs r0, 0x1 - str r0, [sp] - b _0805B524 - .align 2, 0 -_0805B50C: .4byte 0x00000147 -_0805B510: .4byte gUnknown_202DF98 -_0805B514: .4byte gUnknown_80FDCE4 -_0805B518: - ldr r0, _0805B538 - ldr r2, [r0] - adds r0, r6, 0 - mov r1, r9 - bl sub_80522F4 -_0805B524: - ldr r0, [sp] - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B538: .4byte gUnknown_80FDD00 - thumb_func_end sub_805B464 - - thumb_func_start sub_805B53C -sub_805B53C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - mov r10, r0 - mov r9, r1 - adds r6, r2, 0 - mov r8, r3 - movs r0, 0 - add r1, sp, 0x18 - strb r0, [r1] - mov r0, r10 - ldr r1, [r0, 0x70] - movs r5, 0x1 - movs r2, 0 - ldr r4, _0805B580 - movs r3, 0 - ldrsh r0, [r4, r3] - cmp r0, 0 - blt _0805B598 - movs r7, 0xC - ldrsh r3, [r1, r7] - adds r1, r4, 0 - ldr r4, _0805B584 -_0805B570: - movs r7, 0 - ldrsh r0, [r1, r7] - cmp r3, r0 - bge _0805B588 - movs r0, 0x2 - ldrsh r5, [r1, r0] - b _0805B598 - .align 2, 0 -_0805B580: .4byte gUnknown_80F55EC -_0805B584: .4byte 0x000003e6 -_0805B588: - adds r1, 0x4 - adds r2, 0x1 - cmp r2, r4 - bgt _0805B598 - movs r7, 0 - ldrsh r0, [r1, r7] - cmp r0, 0 - bge _0805B570 -_0805B598: - adds r0, r6, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - mov r1, r8 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - movs r1, 0 - str r1, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r1, [sp, 0x14] - mov r0, r10 - mov r1, r9 - adds r2, r5, 0 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _0805B5DC - movs r2, 0x1 -_0805B5DC: - strb r2, [r1] - add r0, sp, 0x18 - ldrb r0, [r0] - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805B53C - - thumb_func_start sub_805B5F4 -sub_805B5F4: - push {r4,lr} - adds r4, r0, 0 - movs r2, 0x1 - bl sub_8077F40 - ldr r0, [r4, 0x70] - adds r1, r0, 0 - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _0805B60E - movs r0, 0x1 - strb r0, [r1] -_0805B60E: - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805B5F4 - - thumb_func_start sub_805B618 -sub_805B618: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x8 - adds r6, r0, 0 - mov r8, r1 - mov r9, r3 - ldr r0, _0805B660 - ldr r4, [r0] - ldr r5, _0805B664 - lsls r4, 3 - adds r0, r4, r5 - ldrh r1, [r0] - mov r0, sp - bl sub_8092A88 - adds r5, 0x4 - adds r4, r5 - ldr r4, [r4] - adds r0, r6, 0 - mov r1, r8 - mov r2, sp - mov r3, r9 - bl _call_via_r4 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805B660: .4byte gUnknown_202F228 -_0805B664: .4byte gUnknown_80F59C8 - thumb_func_end sub_805B618 - - thumb_func_start sub_805B668 -sub_805B668: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r5, r0, 0 - adds r4, r1, 0 - adds r7, r2, 0 - adds r6, r3, 0 - movs r0, 0 - mov r8, r0 - adds r0, r4, 0 - movs r1, 0x3A - bl sub_8071824 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - adds r0, r4, 0 - bl sub_8070B28 - lsls r0, 24 - cmp r0, 0 - beq _0805B712 - movs r3, 0x80 - lsls r3, 1 - str r6, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - adds r2, r7, 0 - bl sub_8055640 - adds r1, r0, 0 - cmp r1, 0 - beq _0805B71E - movs r0, 0x1 - mov r8, r0 - lsrs r0, r1, 31 - adds r0, r1, r0 - asrs r4, r0, 1 - cmp r4, 0 - bgt _0805B6BE - movs r4, 0x1 -_0805B6BE: - adds r0, r5, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _0805B71E - ldr r0, [r5, 0x70] - adds r1, r0, 0 - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _0805B6DC - mov r0, r8 - strb r0, [r1] -_0805B6DC: - adds r0, r5, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _0805B71E - mov r0, r9 - cmp r0, 0 - beq _0805B700 - movs r3, 0xFD - lsls r3, 1 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0xD - bl sub_806F324 - b _0805B71E -_0805B700: - mov r0, r8 - str r0, [sp] - adds r0, r5, 0 - adds r1, r5, 0 - adds r2, r4, 0 - movs r3, 0 - bl sub_8077C44 - b _0805B71E -_0805B712: - ldr r0, _0805B730 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_0805B71E: - mov r0, r8 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B730: .4byte gUnknown_810024C - thumb_func_end sub_805B668 - - thumb_func_start sub_805B734 -sub_805B734: - push {lr} - bl sub_8078678 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B734 - - thumb_func_start sub_805B740 -sub_805B740: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r9, r0 - adds r6, r1, 0 - ldr r5, [r6, 0x70] - movs r7, 0 - ldrb r0, [r5, 0x6] - cmp r0, 0 - bne _0805B7C2 - movs r4, 0 - movs r0, 0x60 - adds r0, r5 - mov r8, r0 -_0805B75E: - lsls r1, r4, 2 - ldr r0, _0805B7D4 - ldr r0, [r0] - adds r2, r1, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805B790 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0805B790 - ldrb r0, [r2, 0x2] - cmp r0, 0x7C - bne _0805B790 - ldrb r1, [r2, 0x1] - adds r1, 0x7D - lsls r1, 24 - lsrs r1, 24 - adds r0, r2, 0 - movs r2, 0 - bl sub_8090A8C - movs r7, 0x1 -_0805B790: - adds r4, 0x1 - cmp r4, 0x13 - ble _0805B75E - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805B7C2 - adds r0, r5, 0 - adds r0, 0x62 - ldrb r0, [r0] - cmp r0, 0x7C - bne _0805B7C2 - adds r0, r5, 0 - adds r0, 0x61 - ldrb r1, [r0] - adds r1, 0x7D - lsls r1, 24 - lsrs r1, 24 - mov r0, r8 - movs r2, 0 - bl sub_8090A8C - movs r7, 0x1 -_0805B7C2: - cmp r7, 0 - beq _0805B7DC - ldr r0, _0805B7D8 - ldr r2, [r0] - mov r0, r9 - adds r1, r6, 0 - bl sub_80522F4 - b _0805B7E8 - .align 2, 0 -_0805B7D4: .4byte gUnknown_203B460 -_0805B7D8: .4byte gUnknown_80FDC9C -_0805B7DC: - ldr r0, _0805B7F8 - ldr r2, [r0] - mov r0, r9 - adds r1, r6, 0 - bl sub_80522F4 -_0805B7E8: - adds r0, r7, 0 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B7F8: .4byte gUnknown_80FDCA0 - thumb_func_end sub_805B740 - - thumb_func_start sub_805B7FC -sub_805B7FC: - push {lr} - bl sub_8079AA0 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805B7FC - - thumb_func_start sub_805B808 -sub_805B808: - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x1C - mov r9, r0 - mov r10, r1 - adds r6, r2, 0 - mov r8, r3 - movs r5, 0 - add r0, sp, 0x18 - strb r5, [r0] - adds r0, r6, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - mov r1, r8 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - ldr r1, _0805B880 - movs r3, 0 - ldrsh r2, [r1, r3] - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r5, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r5, [sp, 0x14] - mov r0, r9 - mov r1, r10 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _0805B868 - movs r2, 0x1 -_0805B868: - strb r2, [r1] - add r0, sp, 0x18 - ldrb r0, [r0] - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805B880: .4byte gUnknown_80F4F7E - thumb_func_end sub_805B808 - - thumb_func_start sub_805B884 -sub_805B884: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, _0805B8AC - ldr r2, [r0] - adds r0, r4, 0 - movs r3, 0x1 - bl sub_8077084 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8077910 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805B8AC: .4byte gUnknown_8106A4C - thumb_func_end sub_805B884 - - thumb_func_start sub_805B8B0 -sub_805B8B0: - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r7, r1, 0 - adds r4, r2, 0 - adds r6, r3, 0 - adds r1, r4, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _0805B8EC - ldr r0, _0805B8E8 - ldr r3, [r0] - str r6, [sp] - adds r0, r5, 0 - adds r1, r7, 0 - adds r2, r4, 0 - bl sub_8055640 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - adds r0, r5, 0 - bl sub_8079764 - b _0805B900 - .align 2, 0 -_0805B8E8: .4byte gUnknown_80F4F58 -_0805B8EC: - ldr r0, _0805B90C - ldr r0, [r0] - str r0, [sp] - adds r0, r5, 0 - adds r1, r7, 0 - movs r2, 0x6 - adds r3, r4, 0 - bl sub_8079618 - movs r4, 0x1 -_0805B900: - adds r0, r4, 0 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B90C: .4byte gUnknown_80FAFF0 - thumb_func_end sub_805B8B0 - - thumb_func_start sub_805B910 -sub_805B910: - push {r4-r7,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r6, r1, 0 - movs r7, 0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805B954 - movs r7, 0x1 - ldr r0, _0805B960 - movs r1, 0 - ldrsh r2, [r0, r1] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805B954 - ldr r0, _0805B964 - ldr r2, [r0] - str r7, [sp] - movs r0, 0 - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0x1 - bl sub_8076F80 -_0805B954: - adds r0, r7, 0 - add sp, 0x8 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805B960: .4byte gUnknown_80F4DDC -_0805B964: .4byte gUnknown_8106A50 - thumb_func_end sub_805B910 - - thumb_func_start sub_805B968 -sub_805B968: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x18 - adds r5, r0, 0 - adds r6, r2, 0 - adds r7, r3, 0 - movs r0, 0 - mov r8, r0 - movs r3, 0x80 - lsls r3, 1 - str r7, [sp] - adds r0, r5, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805B9D8 - movs r1, 0x1 - mov r8, r1 - adds r0, r5, 0 - movs r1, 0 - bl sub_8057308 - lsls r0, 24 - cmp r0, 0 - beq _0805B9D8 - ldr r0, [r5, 0x70] - movs r1, 0x10 - ldrsh r2, [r0, r1] - cmp r2, 0 - bge _0805B9A8 - adds r2, 0x3 -_0805B9A8: - asrs r4, r2, 2 - cmp r4, 0 - bgt _0805B9B0 - movs r4, 0x1 -_0805B9B0: - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - str r0, [sp, 0x8] - str r1, [sp, 0xC] - mov r0, r8 - str r0, [sp, 0x10] - str r1, [sp, 0x14] - adds r0, r5, 0 - adds r1, r5, 0 - adds r2, r4, 0 - movs r3, 0 - bl sub_806F370 -_0805B9D8: - mov r0, r8 - add sp, 0x18 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805B968 - - thumb_func_start sub_805B9E8 -sub_805B9E8: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r4, r1, 0 - movs r6, 0 - mov r0, sp - bl sub_8069D18 - lsls r0, 24 - cmp r0, 0 - beq _0805BA08 - ldr r0, _0805BA04 - b _0805BA18 - .align 2, 0 -_0805BA04: .4byte gUnknown_80FD430 -_0805BA08: - mov r0, sp - bl sub_804AD34 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - beq _0805BA28 - ldr r0, _0805BA24 -_0805BA18: - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _0805BA34 - .align 2, 0 -_0805BA24: .4byte gUnknown_80FD3F0 -_0805BA28: - ldr r0, _0805BA40 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_0805BA34: - adds r0, r6, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805BA40: .4byte gUnknown_80FD40C - thumb_func_end sub_805B9E8 - - thumb_func_start sub_805BA44 -sub_805BA44: - push {lr} - bl sub_807D3CC - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BA44 - - thumb_func_start sub_805BA50 -sub_805BA50: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r6, r0, 0 - adds r5, r1, 0 - movs r0, 0 - mov r9, r0 - movs r4, 0x80 - lsls r4, 1 - str r3, [sp] - adds r0, r6, 0 - adds r3, r4, 0 - bl sub_8055640 - cmp r0, 0 - beq _0805BB4C - movs r1, 0x1 - mov r9, r1 - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_805727C - lsls r0, 24 - cmp r0, 0 - beq _0805BB4C - ldr r0, [r6, 0x70] - mov r8, r0 - mov r10, r8 - ldr r7, [r5, 0x70] - str r7, [sp, 0x4] - ldr r4, _0805BAC0 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - movs r1, 0x2C - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0805BAC4 - movs r0, 0x1 - b _0805BB4E - .align 2, 0 -_0805BAC0: .4byte gUnknown_202DF98 -_0805BAC4: - adds r0, r5, 0 - movs r1, 0x24 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0805BADC - ldr r0, _0805BAD8 - b _0805BB04 - .align 2, 0 -_0805BAD8: .4byte gUnknown_80FD574 -_0805BADC: - mov r0, r8 - adds r0, 0x60 - adds r3, r7, 0 - adds r3, 0x60 - ldrb r0, [r0] - mov r2, r9 - ands r2, r0 - cmp r2, 0 - beq _0805BAF8 - ldr r0, _0805BAF4 - b _0805BB04 - .align 2, 0 -_0805BAF4: .4byte gUnknown_80FC654 -_0805BAF8: - ldrb r1, [r3] - mov r0, r9 - ands r0, r1 - cmp r0, 0 - bne _0805BB18 - ldr r0, _0805BB14 -_0805BB04: - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - movs r0, 0x1 - b _0805BB4E - .align 2, 0 -_0805BB14: .4byte gUnknown_80FC678 -_0805BB18: - ldr r1, [sp, 0x4] - ldr r0, [r1, 0x60] - mov r1, r10 - str r0, [r1, 0x60] - strb r2, [r3, 0x2] - strb r2, [r3, 0x1] - strb r2, [r3] - adds r0, r6, 0 - bl sub_806A6E8 - adds r0, r5, 0 - bl sub_806A6E8 - mov r1, r10 - adds r1, 0xFB - ldrb r0, [r1] - cmp r0, 0 - bne _0805BB40 - mov r0, r9 - strb r0, [r1] -_0805BB40: - ldr r0, _0805BB60 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0805BB4C: - mov r0, r9 -_0805BB4E: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805BB60: .4byte gUnknown_80FC614 - thumb_func_end sub_805BA50 - - thumb_func_start sub_805BB64 -sub_805BB64: - push {lr} - movs r2, 0xA - bl sub_80797A0 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BB64 - - thumb_func_start sub_805BB74 -sub_805BB74: - push {lr} - adds r3, r0, 0 - ldr r0, [r3, 0x70] - adds r2, r0, 0 - adds r2, 0xFB - ldrb r0, [r2] - cmp r0, 0 - bne _0805BB88 - movs r0, 0x1 - strb r0, [r2] -_0805BB88: - adds r0, r3, 0 - movs r2, 0x1 - bl sub_807E254 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BB74 - - thumb_func_start sub_805BB98 -sub_805BB98: - push {lr} - movs r2, 0x1 - movs r3, 0 - bl sub_807D148 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BB98 - - thumb_func_start sub_805BBA8 -sub_805BBA8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r6, r1, 0 - ldr r0, [r6, 0x70] - movs r7, 0 - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _0805BC30 - movs r5, 0 - ldr r3, _0805BC44 -_0805BBC0: - lsls r1, r5, 2 - ldr r0, [r3] - adds r1, r0 - ldrb r2, [r1] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _0805BBE8 - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - bne _0805BBE8 - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _0805BBE8 - movs r0, 0xF7 - ands r0, r2 - strb r0, [r1] - movs r7, 0x1 -_0805BBE8: - adds r5, 0x1 - cmp r5, 0x13 - ble _0805BBC0 - movs r5, 0 -_0805BBF0: - ldr r0, _0805BC48 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0805BC4C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805BC2A - ldr r0, [r4, 0x70] - adds r2, r0, 0 - adds r2, 0x60 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805BC2A - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0805BC2A - movs r0, 0xF7 - ands r0, r1 - strb r0, [r2] - movs r7, 0x1 -_0805BC2A: - adds r5, 0x1 - cmp r5, 0x3 - ble _0805BBF0 -_0805BC30: - cmp r7, 0 - beq _0805BC54 - ldr r0, _0805BC50 - ldr r2, [r0] - mov r0, r8 - adds r1, r6, 0 - bl sub_80522F4 - b _0805BC60 - .align 2, 0 -_0805BC44: .4byte gUnknown_203B460 -_0805BC48: .4byte gUnknown_203B418 -_0805BC4C: .4byte 0x0001357c -_0805BC50: .4byte gUnknown_80FC8F0 -_0805BC54: - ldr r0, _0805BC6C - ldr r2, [r0] - mov r0, r8 - adds r1, r6, 0 - bl sub_80522F4 -_0805BC60: - adds r0, r7, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805BC6C: .4byte gUnknown_80FC920 - thumb_func_end sub_805BBA8 - - thumb_func_start sub_805BC70 -sub_805BC70: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _0805BC94 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r2, r0, 0 - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8075C58 - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805BC94: .4byte gUnknown_80F4E74 - thumb_func_end sub_805BC70 - - thumb_func_start sub_805BC98 -sub_805BC98: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - adds r6, r0, 0 - mov r8, r1 - mov r10, r2 - str r3, [sp, 0x1C] - movs r5, 0 - add r0, sp, 0x18 - strb r5, [r0] - mov r7, sp - adds r7, 0x19 - strb r5, [r7] - ldr r0, [r6, 0x70] - mov r9, r0 - ldr r0, [r1, 0x70] - movs r1, 0xE - ldrsh r0, [r0, r1] - subs r4, r0, 0x1 - cmp r4, 0 - bge _0805BCCA - movs r4, 0 -_0805BCCA: - mov r0, r10 - ldr r1, [sp, 0x1C] - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - add r2, sp, 0x18 - str r2, [sp] - str r5, [sp, 0x4] - str r0, [sp, 0x8] - str r5, [sp, 0xC] - str r5, [sp, 0x10] - str r5, [sp, 0x14] - adds r0, r6, 0 - mov r1, r8 - adds r2, r4, 0 - movs r3, 0 - bl sub_806F370 - mov r1, r9 - movs r2, 0xE - ldrsh r0, [r1, r2] - lsrs r1, r0, 31 - adds r0, r1 - asrs r4, r0, 1 - cmp r4, 0 - bge _0805BD02 - movs r4, 0 -_0805BD02: - mov r0, r10 - ldr r1, [sp, 0x1C] - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - str r7, [sp] - str r5, [sp, 0x4] - str r0, [sp, 0x8] - str r5, [sp, 0xC] - str r5, [sp, 0x10] - str r5, [sp, 0x14] - adds r0, r6, 0 - adds r1, r6, 0 - adds r2, r4, 0 - movs r3, 0 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _0805BD34 - movs r2, 0x1 -_0805BD34: - strb r2, [r1] - movs r1, 0 - ldrb r0, [r7] - cmp r0, 0 - bne _0805BD40 - movs r1, 0x1 -_0805BD40: - strb r1, [r7] - movs r2, 0 - add r0, sp, 0x18 - ldrb r0, [r0] - cmp r0, 0 - bne _0805BD50 - cmp r1, 0 - beq _0805BD52 -_0805BD50: - movs r2, 0x1 -_0805BD52: - adds r0, r2, 0 - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805BC98 - - thumb_func_start sub_805BD64 -sub_805BD64: - push {lr} - bl sub_8078D8C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BD64 - - thumb_func_start sub_805BD70 -sub_805BD70: - push {lr} - bl sub_8077DDC - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BD70 - - thumb_func_start sub_805BD7C -sub_805BD7C: - push {lr} - bl sub_8077ED0 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BD7C - - thumb_func_start sub_805BD88 -sub_805BD88: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r10, r0 - adds r7, r1, 0 - movs r0, 0 - str r0, [sp] - ldr r1, [r7, 0x70] - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _0805BE60 - mov r9, r1 - movs r2, 0x2 - ldrsh r5, [r1, r2] - mov r8, r5 - ldr r0, _0805BDD0 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - mov r0, r9 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0 - beq _0805BDD8 - ldr r0, _0805BDD4 - ldr r2, [r0] - mov r0, r10 - adds r1, r7, 0 - bl sub_80522F4 - movs r0, 0 - b _0805BE78 - .align 2, 0 -_0805BDD0: .4byte gUnknown_202DF98 -_0805BDD4: .4byte gUnknown_80FD450 -_0805BDD8: - movs r6, 0 - b _0805BDDE -_0805BDDC: - adds r6, 0x1 -_0805BDDE: - cmp r6, 0x1D - bgt _0805BE14 - movs r0, 0 - bl sub_803D970 - lsls r0, 16 - asrs r5, r0, 16 - adds r0, r5, 0 - movs r1, 0 - bl sub_806AA0C - lsls r0, 24 - cmp r0, 0 - beq _0805BDDC - cmp r8, r5 - beq _0805BDDC - mov r0, r8 - bl sub_808DACC - adds r4, r0, 0 - adds r0, r5, 0 - bl sub_808DACC - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - bne _0805BDDC -_0805BE14: - cmp r6, 0x1E - beq _0805BE22 - mov r1, r9 - movs r2, 0x2 - ldrsh r0, [r1, r2] - cmp r0, r5 - bne _0805BE34 -_0805BE22: - ldr r0, _0805BE30 - ldr r2, [r0] - mov r0, r10 - adds r1, r7, 0 - bl sub_80522F4 - b _0805BE76 - .align 2, 0 -_0805BE30: .4byte gUnknown_80FD450 -_0805BE34: - ldr r0, _0805BE58 - adds r1, r5, 0 - bl sub_808D908 - ldr r0, _0805BE5C - ldr r2, [r0] - mov r0, r10 - adds r1, r7, 0 - bl sub_80522F4 - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_806BB6C - movs r0, 0x1 - str r0, [sp] - b _0805BE76 - .align 2, 0 -_0805BE58: .4byte gUnknown_202DFE8 -_0805BE5C: .4byte gUnknown_80FD434 -_0805BE60: - ldr r0, _0805BE88 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0805BE8C - ldr r2, [r0] - mov r0, r10 - adds r1, r7, 0 - bl sub_80522F4 -_0805BE76: - ldr r0, [sp] -_0805BE78: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805BE88: .4byte gUnknown_202DF98 -_0805BE8C: .4byte gUnknown_80FD450 - thumb_func_end sub_805BD88 - - thumb_func_start sub_805BE90 -sub_805BE90: - push {lr} - movs r2, 0x1 - movs r3, 0x1 - bl sub_80779F0 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BE90 - - thumb_func_start sub_805BEA0 -sub_805BEA0: - push {lr} - bl sub_804002C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BEA0 - - thumb_func_start sub_805BEAC -sub_805BEAC: - push {lr} - bl sub_8076D10 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BEAC - - thumb_func_start sub_805BEB8 -sub_805BEB8: - push {lr} - movs r2, 0x8 - bl sub_807DA14 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BEB8 - - thumb_func_start sub_805BEC8 -sub_805BEC8: - push {lr} - bl sub_807D510 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BEC8 - - thumb_func_start sub_805BED4 -sub_805BED4: - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r1, 0 - ldr r0, _0805BF00 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r5, _0805BF04 - ldr r0, [r5] - ldr r1, _0805BF08 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0805BF10 - ldr r0, _0805BF0C - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_80522F4 - b _0805BF26 - .align 2, 0 -_0805BF00: .4byte gUnknown_202DF98 -_0805BF04: .4byte gUnknown_203B418 -_0805BF08: .4byte 0x0000066e -_0805BF0C: .4byte gUnknown_80FD4DC -_0805BF10: - ldr r0, _0805BF30 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_80522F4 - ldr r0, [r5] - movs r1, 0x1 - strb r1, [r0, 0x4] - ldr r0, [r5] - strb r1, [r0, 0x11] -_0805BF26: - movs r0, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805BF30: .4byte gUnknown_80FD4C4 - thumb_func_end sub_805BED4 - - thumb_func_start sub_805BF34 -sub_805BF34: - push {lr} - bl sub_807DB74 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805BF34 - - thumb_func_start sub_805BF40 -sub_805BF40: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - str r0, [sp, 0x4] - str r1, [sp, 0x8] - movs r0, 0 - str r0, [sp, 0x10] - adds r0, r1, 0 - bl sub_8045128 - adds r4, r0, 0 - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - beq _0805BF78 - ldr r0, _0805BF74 - ldr r1, [r0] - ldr r0, [sp, 0x4] - bl sub_80522A8 - movs r0, 0 - b _0805C06A - .align 2, 0 -_0805BF74: .4byte gUnknown_80FD1EC -_0805BF78: - ldrb r0, [r4, 0x9] - cmp r0, 0xFF - bne _0805BFAC - ldr r2, [sp, 0x8] - movs r3, 0x4 - ldrsh r1, [r2, r3] - ldr r0, _0805BFA4 - ldr r0, [r0] - ldr r4, _0805BFA8 - adds r0, r4 - ldrb r0, [r0] - subs r2, r1, r0 - ldr r3, [sp, 0x8] - movs r4, 0x6 - ldrsh r1, [r3, r4] - subs r1, r0 - str r1, [sp, 0xC] - adds r1, r2, r0 - mov r10, r1 - ldr r3, [sp, 0xC] - adds r7, r3, r0 - b _0805BFDA - .align 2, 0 -_0805BFA4: .4byte gUnknown_203B418 -_0805BFA8: .4byte 0x00018209 -_0805BFAC: - ldr r2, _0805C050 - ldrb r1, [r4, 0x9] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r4, _0805C054 - adds r0, r4 - ldr r1, [r2] - adds r1, r0 - movs r2, 0x2 - ldrsh r0, [r1, r2] - subs r2, r0, 0x1 - movs r3, 0x4 - ldrsh r0, [r1, r3] - subs r0, 0x1 - str r0, [sp, 0xC] - movs r4, 0x6 - ldrsh r0, [r1, r4] - adds r0, 0x1 - mov r10, r0 - movs r3, 0x8 - ldrsh r0, [r1, r3] - adds r7, r0, 0x1 -_0805BFDA: - adds r6, r2, 0 - cmp r6, r10 - bgt _0805C034 -_0805BFE0: - ldr r5, [sp, 0xC] - adds r4, r6, 0x1 - mov r9, r4 - cmp r5, r7 - bgt _0805C02E - lsls r0, r6, 16 - lsrs r0, 16 - mov r8, r0 -_0805BFF0: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8049590 - ldr r4, [r0, 0x14] - cmp r4, 0 - beq _0805C028 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x2 - bne _0805C028 - adds r0, r4, 0 - bl sub_8045104 - ldrb r0, [r0] - cmp r0, 0x11 - beq _0805C028 - lsls r0, r5, 16 - mov r1, r8 - orrs r0, r1 - str r0, [sp] - mov r0, sp - movs r1, 0 - bl sub_807FE04 - movs r2, 0x1 - str r2, [sp, 0x10] -_0805C028: - adds r5, 0x1 - cmp r5, r7 - ble _0805BFF0 -_0805C02E: - mov r6, r9 - cmp r6, r10 - ble _0805BFE0 -_0805C034: - ldr r3, [sp, 0x10] - cmp r3, 0 - beq _0805C05C - ldr r0, _0805C058 - ldr r2, [r0] - ldr r0, [sp, 0x4] - ldr r1, [sp, 0x8] - bl sub_80522F4 - bl sub_8040A84 - bl sub_8049ED4 - b _0805C068 - .align 2, 0 -_0805C050: .4byte gUnknown_203B418 -_0805C054: .4byte 0x000104c4 -_0805C058: .4byte gUnknown_80FD1B0 -_0805C05C: - ldr r0, _0805C07C - ldr r2, [r0] - ldr r0, [sp, 0x4] - ldr r1, [sp, 0x8] - bl sub_80522F4 -_0805C068: - ldr r0, [sp, 0x10] -_0805C06A: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805C07C: .4byte gUnknown_80FD1CC - thumb_func_end sub_805BF40 - - thumb_func_start sub_805C080 -sub_805C080: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r5, r0, 0 - mov r9, r1 - movs r0, 0 - mov r8, r0 - ldr r0, [r5, 0x70] - ldrb r0, [r0, 0x6] - cmp r0, 0 - beq _0805C0AC - ldr r0, _0805C0A4 - ldr r0, [r0] - ldr r1, _0805C0A8 - adds r0, r1 - movs r1, 0x10 - b _0805C0BA - .align 2, 0 -_0805C0A4: .4byte gUnknown_203B418 -_0805C0A8: .4byte 0x0001358c -_0805C0AC: - ldr r0, _0805C11C - ldr r0, [r0] - ldr r1, _0805C120 - adds r0, r1 - movs r1, 0x4 - cmp r1, 0 - beq _0805C0FA -_0805C0BA: - adds r6, r0, 0 - adds r7, r1, 0 -_0805C0BE: - ldr r4, [r6] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805C0F2 - cmp r5, r4 - beq _0805C0F2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - cmp r0, 0 - bne _0805C0F2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x2 - adds r3, r5, 0x4 - bl sub_807D148 - movs r0, 0x1 - mov r8, r0 -_0805C0F2: - adds r6, 0x4 - subs r7, 0x1 - cmp r7, 0 - bne _0805C0BE -_0805C0FA: - mov r1, r8 - cmp r1, 0 - bne _0805C10C - ldr r0, _0805C124 - ldr r2, [r0] - adds r0, r5, 0 - mov r1, r9 - bl sub_80522F4 -_0805C10C: - mov r0, r8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805C11C: .4byte gUnknown_203B418 -_0805C120: .4byte 0x0001357c -_0805C124: .4byte gUnknown_81004F0 - thumb_func_end sub_805C080 - - thumb_func_start sub_805C128 -sub_805C128: - push {lr} - adds r1, r0, 0 - bl sub_807885C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805C128 - - thumb_func_start sub_805C138 -sub_805C138: - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x1C - mov r9, r0 - mov r10, r1 - adds r6, r2, 0 - mov r8, r3 - movs r5, 0 - add r0, sp, 0x18 - strb r5, [r0] - adds r0, r6, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - mov r1, r8 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - ldr r2, _0805C1AC - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r5, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r5, [sp, 0x14] - mov r0, r9 - mov r1, r10 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _0805C194 - movs r2, 0x1 -_0805C194: - strb r2, [r1] - add r0, sp, 0x18 - ldrb r0, [r0] - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805C1AC: .4byte 0x0000270f - thumb_func_end sub_805C138 - - thumb_func_start sub_805C1B0 -sub_805C1B0: - push {lr} - bl sub_80790C8 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805C1B0 - - thumb_func_start sub_805C1BC -sub_805C1BC: - push {r4,r5,lr} - sub sp, 0x4 - ldr r4, _0805C1E0 - movs r5, 0 - ldrsh r4, [r4, r5] - str r3, [sp] - adds r3, r4, 0 - bl sub_8055864 - adds r1, r0, 0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805C1E0: .4byte gUnknown_80F4F80 - thumb_func_end sub_805C1BC - - thumb_func_start sub_805C1E4 -sub_805C1E4: - push {lr} - ldr r2, _0805C1F4 - ldr r2, [r2] - bl sub_80522F4 - movs r0, 0 - pop {r1} - bx r1 - .align 2, 0 -_0805C1F4: .4byte gUnknown_80FD454 - thumb_func_end sub_805C1E4 - - thumb_func_start sub_805C1F8 -sub_805C1F8: - push {lr} - movs r2, 0x1 - bl sub_8077BB4 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805C1F8 - - thumb_func_start sub_805C208 -sub_805C208: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - adds r7, r0, 0 - mov r9, r1 - adds r6, r2, 0 - mov r8, r3 - movs r5, 0 - add r0, sp, 0x18 - strb r5, [r0] - ldr r0, [r1, 0x70] - movs r1, 0x4 - ldrsh r0, [r0, r1] - bl sub_808DB90 - mov r10, r0 - adds r0, r6, 0 - bl sub_8092B00 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - mov r1, r8 - bl sub_8057600 - lsls r0, 16 - asrs r0, 16 - add r1, sp, 0x18 - str r1, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r5, [sp, 0xC] - movs r0, 0x1 - str r0, [sp, 0x10] - str r5, [sp, 0x14] - adds r0, r7, 0 - mov r1, r9 - mov r2, r10 - movs r3, 0x1 - bl sub_806F370 - add r1, sp, 0x18 - movs r2, 0 - adds r0, r1, 0 - ldrb r0, [r0] - cmp r0, 0 - bne _0805C270 - movs r2, 0x1 -_0805C270: - strb r2, [r1] - add r0, sp, 0x18 - ldrb r0, [r0] - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805C208 - - thumb_func_start sub_805C288 -sub_805C288: - push {lr} - ldr r2, _0805C29C - movs r3, 0 - ldrsh r2, [r2, r3] - movs r3, 0 - bl sub_8078A58 - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_0805C29C: .4byte gUnknown_80F4FC6 - thumb_func_end sub_805C288 - - thumb_func_start sub_805C2A0 -sub_805C2A0: - push {lr} - bl sub_807DC68 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805C2A0 - - thumb_func_start sub_805C2AC -sub_805C2AC: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - mov r8, r0 - adds r7, r1, 0 - movs r0, 0 - mov r9, r0 - ldr r5, [r7, 0x70] - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - beq _0805C2DC - ldr r0, _0805C2D8 - ldr r1, [r0] - mov r0, r8 - bl sub_80522A8 - movs r0, 0 - b _0805C3CA - .align 2, 0 -_0805C2D8: .4byte gUnknown_80FD0B8 -_0805C2DC: - ldr r4, _0805C3A0 - adds r3, r5, 0 - adds r3, 0x46 - ldrb r0, [r3] - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0] - ldrh r1, [r7, 0x4] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r2, _0805C3A4 - ldr r1, [sp] - ands r1, r2 - orrs r1, r0 - str r1, [sp] - ldrb r0, [r3] - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x2] - ldrh r2, [r7, 0x6] - adds r0, r2 - lsls r0, 16 - ldr r2, _0805C3A8 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r4, sp - mov r0, sp - bl sub_8042A54 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x2 - bne _0805C36C - ldr r0, _0805C3AC - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strh r0, [r2] - movs r5, 0x1 - negs r5, r5 - mov r6, sp -_0805C344: - movs r4, 0x1 - negs r4, r4 -_0805C348: - movs r1, 0 - ldrsh r0, [r6, r1] - adds r0, r4 - movs r2, 0x2 - ldrsh r1, [r6, r2] - adds r1, r5 - bl sub_80498A8 - adds r4, 0x1 - cmp r4, 0x1 - ble _0805C348 - adds r5, 0x1 - cmp r5, 0x1 - ble _0805C344 - movs r0, 0x1 - mov r9, r0 - bl sub_806CF60 -_0805C36C: - movs r5, 0 -_0805C36E: - movs r4, 0 - adds r6, r5, 0x1 -_0805C372: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049BB0 - adds r4, 0x1 - cmp r4, 0x37 - ble _0805C372 - adds r5, r6, 0 - cmp r5, 0x1F - ble _0805C36E - mov r1, r9 - cmp r1, 0 - beq _0805C3B4 - mov r0, sp - bl sub_8042A64 - ldr r0, _0805C3B0 - ldr r2, [r0] - mov r0, r8 - adds r1, r7, 0 - bl sub_80522F4 - b _0805C3C0 - .align 2, 0 -_0805C3A0: .4byte gUnknown_80F4448 -_0805C3A4: .4byte 0xffff0000 -_0805C3A8: .4byte 0x0000ffff -_0805C3AC: .4byte 0x0000fffc -_0805C3B0: .4byte gUnknown_80FD0B4 -_0805C3B4: - ldr r0, _0805C3D8 - ldr r2, [r0] - mov r0, r8 - adds r1, r7, 0 - bl sub_80522F4 -_0805C3C0: - bl sub_8040A84 - bl sub_8049ED4 - mov r0, r9 -_0805C3CA: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805C3D8: .4byte gUnknown_80FD0B8 - thumb_func_end sub_805C2AC - - thumb_func_start sub_805C3DC -sub_805C3DC: - push {lr} - ldr r0, [r1, 0x70] - ldrb r0, [r0, 0x6] - movs r2, 0x1 - cmp r0, 0 - beq _0805C3EA - movs r2, 0x2 -_0805C3EA: - adds r0, r1, 0x4 - movs r1, 0x14 - bl sub_807FC3C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805C3DC - - thumb_func_start sub_805C3F8 -sub_805C3F8: - push {r4,r5,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r4, r1, 0 - ldr r0, [r4, 0x4] - str r0, [sp, 0x4] - ldr r0, [r4, 0x70] - adds r0, 0xA4 - ldrb r1, [r0] - cmp r1, 0 - bne _0805C442 - adds r0, r4, 0 - adds r0, 0x20 - strb r1, [r0] - movs r0, 0 - bl sub_803D73C - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r0, sp - movs r2, 0 - bl sub_8045C28 - add r1, sp, 0x4 - adds r0, r5, 0 - mov r2, sp - bl sub_80464C8 - movs r1, 0x86 - lsls r1, 2 - adds r0, r4, 0 - adds r2, r5, 0 - bl sub_8068FE0 - movs r0, 0x1 - b _0805C450 -_0805C442: - ldr r0, _0805C458 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - movs r0, 0 -_0805C450: - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805C458: .4byte gUnknown_80FF678 - thumb_func_end sub_805C3F8 - - thumb_func_start sub_805C45C -sub_805C45C: - push {lr} - bl sub_807F43C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805C45C - - thumb_func_start sub_805C468 -sub_805C468: - push {lr} - bl sub_8078F50 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805C468 - - thumb_func_start sub_805C474 -sub_805C474: - push {lr} - bl sub_8077E4C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805C474 - - thumb_func_start sub_805C480 -sub_805C480: - push {lr} - bl sub_8079570 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805C480 - - thumb_func_start sub_805C48C -sub_805C48C: - push {lr} - bl sub_80795C4 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_805C48C - - thumb_func_start sub_805C498 -sub_805C498: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r2, [r5, 0x70] - ldrh r0, [r1, 0x2] - subs r1, r0, 0x7 - ldr r0, _0805C4B8 - cmp r1, r0 - bls _0805C4AC - bl _0805CEA8 -_0805C4AC: - lsls r0, r1, 2 - ldr r1, _0805C4BC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0805C4B8: .4byte 0x0000018f -_0805C4BC: .4byte _0805C4C0 - .align 2, 0 -_0805C4C0: - .4byte _0805CDE8 - .4byte _0805CCE4 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CC70 - .4byte _0805CEA8 - .4byte _0805CB00 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB0C - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB12 - .4byte _0805CEA8 - .4byte _0805CB18 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CDE8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CD48 - .4byte _0805CEA8 - .4byte _0805CB12 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB1E - .4byte _0805CD8A - .4byte _0805CEA8 - .4byte _0805CB40 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB46 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB40 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CCA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB4C - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB56 - .4byte _0805CB5C - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CD50 - .4byte _0805CEA8 - .4byte _0805CB62 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB72 - .4byte _0805CEA8 - .4byte _0805CB80 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CC94 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CC7C - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CD90 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CCD8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CD64 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB94 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CD96 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CDF4 - .4byte _0805CE00 - .4byte _0805CB40 - .4byte _0805CDE8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB1E - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB40 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CD20 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CDD2 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CC88 - .4byte _0805CEA8 - .4byte _0805CD9C - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CCC2 - .4byte _0805CB9A - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CBBA - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CBD0 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CBDA - .4byte _0805CB24 - .4byte _0805CB40 - .4byte _0805CB8E - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CBE0 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CDE8 - .4byte _0805CDE8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CDB0 - .4byte _0805CEA8 - .4byte _0805CDE8 - .4byte _0805CEA8 - .4byte _0805CBF0 - .4byte _0805CEA8 - .4byte _0805CC18 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CDBC - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CC54 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CC62 - .4byte _0805CB40 - .4byte _0805CEA8 - .4byte _0805CD50 - .4byte _0805CC62 - .4byte _0805CEA8 - .4byte _0805CD34 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CC1E - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CC24 - .4byte _0805CBDA - .4byte _0805CEA8 - .4byte _0805CDCA - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB1E - .4byte _0805CDDC - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CC32 - .4byte _0805CEA8 - .4byte _0805CB46 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CC38 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CB56 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CCB6 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CDE8 - .4byte _0805CDE8 - .4byte _0805CDE8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CDE8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CD74 - .4byte _0805CEA8 - .4byte _0805CD50 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CD06 - .4byte _0805CEA8 - .4byte _0805CC9A - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CEA8 - .4byte _0805CDE8 -_0805CB00: - adds r0, r5, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - b _0805CC5A -_0805CB0C: - adds r0, r2, 0 - adds r0, 0xC0 - b _0805CDF8 -_0805CB12: - adds r0, r2, 0 - adds r0, 0xC4 - b _0805CCAC -_0805CB18: - adds r0, r2, 0 - adds r0, 0xC4 - b _0805CB76 -_0805CB1E: - movs r1, 0x1C - ldrsh r0, [r2, r1] - b _0805CDD6 -_0805CB24: - movs r3, 0x1C - ldrsh r0, [r2, r3] - cmp r0, 0x13 - bgt _0805CB6E - movs r1, 0x9E - lsls r1, 1 - adds r0, r2, r1 - ldr r0, [r0] - bl sub_8094450 - cmp r0, 0 - ble _0805CB3E - b _0805CEA8 -_0805CB3E: - b _0805CB6E -_0805CB40: - movs r3, 0x20 - ldrsh r0, [r2, r3] - b _0805CDD6 -_0805CB46: - adds r0, r2, 0 - adds r0, 0xC0 - b _0805CC9E -_0805CB4C: - ldr r0, [r5, 0x70] - movs r2, 0x82 - lsls r2, 1 - adds r0, r2 - b _0805CC4A -_0805CB56: - adds r0, r2, 0 - adds r0, 0xDC - b _0805CC9E -_0805CB5C: - movs r3, 0x20 - ldrsh r0, [r2, r3] - b _0805CDCE -_0805CB62: - adds r0, r2, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x9 - beq _0805CB6E - b _0805CEA8 -_0805CB6E: - movs r0, 0 - b _0805CEAA -_0805CB72: - adds r0, r2, 0 - adds r0, 0xC0 -_0805CB76: - ldrb r0, [r0] - cmp r0, 0xB - beq _0805CB7E - b _0805CEA8 -_0805CB7E: - b _0805CB6E -_0805CB80: - adds r0, r2, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0xE - beq _0805CB8C - b _0805CEA8 -_0805CB8C: - b _0805CB6E -_0805CB8E: - adds r0, r2, 0 - adds r0, 0xC4 - b _0805CDE0 -_0805CB94: - movs r3, 0x26 - ldrsh r0, [r2, r3] - b _0805CDD6 -_0805CB9A: - adds r0, r2, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x5 - beq _0805CB6E - movs r1, 0x10 - ldrsh r0, [r2, r1] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - movs r3, 0xE - ldrsh r1, [r2, r3] - cmp r0, r1 - blt _0805CBB8 - b _0805CEA8 -_0805CBB8: - b _0805CB6E -_0805CBBA: - movs r0, 0x10 - ldrsh r1, [r2, r0] - movs r3, 0xE - ldrsh r0, [r2, r3] - cmp r1, r0 - ble _0805CB6E - movs r1, 0x89 - lsls r1, 1 - adds r0, r2, r1 - ldrb r0, [r0] - b _0805CDC4 -_0805CBD0: - movs r3, 0x89 - lsls r3, 1 - adds r0, r2, r3 - ldrb r0, [r0] - b _0805CDC4 -_0805CBDA: - adds r0, r2, 0 - adds r0, 0xDC - b _0805CDE0 -_0805CBE0: - movs r1, 0x1C - ldrsh r0, [r2, r1] - cmp r0, 0x13 - bgt _0805CBEA - b _0805CEA8 -_0805CBEA: - movs r3, 0x20 - ldrsh r0, [r2, r3] - b _0805CDD6 -_0805CBF0: - ldr r1, _0805CC0C - ldr r0, _0805CC10 - ldr r0, [r0] - ldr r2, _0805CC14 - adds r0, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8071858 - b _0805CDEC - .align 2, 0 -_0805CC0C: .4byte gUnknown_80F561C -_0805CC10: .4byte gUnknown_203B418 -_0805CC14: .4byte 0x00003a0e -_0805CC18: - movs r1, 0x1E - ldrsh r0, [r2, r1] - b _0805CDD6 -_0805CC1E: - adds r0, r2, 0 - adds r0, 0xD0 - b _0805CDB4 -_0805CC24: - adds r0, r2, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x8 - beq _0805CC30 - b _0805CEA8 -_0805CC30: - b _0805CB6E -_0805CC32: - adds r0, r2, 0 - adds r0, 0xC4 - b _0805CC9E -_0805CC38: - movs r3, 0x1C - ldrsh r0, [r2, r3] - cmp r0, 0x13 - bgt _0805CC42 - b _0805CEA8 -_0805CC42: - ldr r0, [r5, 0x70] - movs r1, 0x82 - lsls r1, 1 - adds r0, r1 -_0805CC4A: - ldr r0, [r0] - cmp r0, 0x3 - bgt _0805CC52 - b _0805CEA8 -_0805CC52: - b _0805CB6E -_0805CC54: - adds r0, r2, 0 - adds r0, 0xC4 - ldrb r0, [r0] -_0805CC5A: - cmp r0, 0x5 - beq _0805CC60 - b _0805CEA8 -_0805CC60: - b _0805CB6E -_0805CC62: - adds r0, r2, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x7 - beq _0805CC6E - b _0805CEA8 -_0805CC6E: - b _0805CB6E -_0805CC70: - adds r0, r5, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - b _0805CCAE -_0805CC7C: - adds r0, r5, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - b _0805CDB6 -_0805CC88: - adds r0, r5, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - b _0805CCA0 -_0805CC94: - adds r0, r2, 0 - adds r0, 0xC4 - b _0805CDB4 -_0805CC9A: - adds r0, r2, 0 - adds r0, 0xE4 -_0805CC9E: - ldrb r0, [r0] -_0805CCA0: - cmp r0, 0x1 - beq _0805CCA6 - b _0805CEA8 -_0805CCA6: - b _0805CB6E -_0805CCA8: - adds r0, r2, 0 - adds r0, 0xDC -_0805CCAC: - ldrb r0, [r0] -_0805CCAE: - cmp r0, 0x4 - beq _0805CCB4 - b _0805CEA8 -_0805CCB4: - b _0805CB6E -_0805CCB6: - adds r0, r2, 0 - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - b _0805CDEE -_0805CCC2: - adds r0, r5, 0 - bl sub_8070B48 - lsls r0, 24 - cmp r0, 0 - beq _0805CCD0 - b _0805CEA8 -_0805CCD0: - adds r0, r5, 0 - bl sub_8070A58 - b _0805CDC2 -_0805CCD8: - adds r0, r5, 0 - bl sub_8045128 - bl sub_804AF20 - b _0805CDEC -_0805CCE4: - adds r0, r5, 0 - bl sub_8045128 - adds r4, r0, 0 - bl sub_804AF20 - lsls r0, 24 - cmp r0, 0 - bne _0805CCF8 - b _0805CB6E -_0805CCF8: - ldrh r1, [r4] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _0805CD04 - b _0805CEA8 -_0805CD04: - b _0805CB6E -_0805CD06: - adds r0, r5, 0 - bl sub_8045128 - ldr r0, [r0, 0x14] - cmp r0, 0 - bne _0805CD14 - b _0805CB6E -_0805CD14: - bl sub_80450F8 - cmp r0, 0x2 - bne _0805CD1E - b _0805CEA8 -_0805CD1E: - b _0805CB6E -_0805CD20: - ldr r0, _0805CD2C - ldr r0, [r0] - ldr r2, _0805CD30 - adds r0, r2 - ldrb r0, [r0] - b _0805CDEE - .align 2, 0 -_0805CD2C: .4byte gUnknown_203B418 -_0805CD30: .4byte 0x0000e277 -_0805CD34: - ldr r0, _0805CD40 - ldr r0, [r0] - ldr r3, _0805CD44 - adds r0, r3 - ldrb r0, [r0] - b _0805CDEE - .align 2, 0 -_0805CD40: .4byte gUnknown_203B418 -_0805CD44: .4byte 0x0000e278 -_0805CD48: - adds r0, r2, 0 - adds r0, 0xF4 - ldrb r0, [r0] - b _0805CDEE -_0805CD50: - ldr r0, _0805CD5C - ldr r0, [r0] - ldr r1, _0805CD60 - adds r0, r1 - ldrb r0, [r0] - b _0805CDEE - .align 2, 0 -_0805CD5C: .4byte gUnknown_203B418 -_0805CD60: .4byte 0x000037fc -_0805CD64: - movs r3, 0x89 - lsls r3, 1 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, 0x2 - bhi _0805CD72 - b _0805CEA8 -_0805CD72: - b _0805CB6E -_0805CD74: - adds r0, r2, 0 - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0805CD84 - b _0805CEA8 -_0805CD84: - movs r0, 0x8 - ands r0, r1 - b _0805CDC4 -_0805CD8A: - movs r1, 0x26 - ldrsh r0, [r2, r1] - b _0805CDD6 -_0805CD90: - movs r3, 0x1E - ldrsh r0, [r2, r3] - b _0805CDD6 -_0805CD96: - movs r1, 0x1C - ldrsh r0, [r2, r1] - b _0805CDD6 -_0805CD9C: - ldrb r0, [r2, 0x6] - cmp r0, 0 - beq _0805CDA4 - b _0805CB6E -_0805CDA4: - adds r0, r2, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x6 - bne _0805CEA8 - b _0805CB6E -_0805CDB0: - adds r0, r2, 0 - adds r0, 0xE4 -_0805CDB4: - ldrb r0, [r0] -_0805CDB6: - cmp r0, 0x2 - bne _0805CEA8 - b _0805CB6E -_0805CDBC: - adds r0, r5, 0x4 - bl sub_807FC80 -_0805CDC2: - lsls r0, 24 -_0805CDC4: - cmp r0, 0 - bne _0805CEA8 - b _0805CB6E -_0805CDCA: - movs r3, 0x1E - ldrsh r0, [r2, r3] -_0805CDCE: - cmp r0, 0x13 - ble _0805CEA8 -_0805CDD2: - movs r1, 0x22 - ldrsh r0, [r2, r1] -_0805CDD6: - cmp r0, 0x13 - ble _0805CEA8 - b _0805CB6E -_0805CDDC: - adds r0, r2, 0 - adds r0, 0xC8 -_0805CDE0: - ldrb r0, [r0] - cmp r0, 0x3 - bne _0805CEA8 - b _0805CB6E -_0805CDE8: - bl sub_80441BC -_0805CDEC: - lsls r0, 24 -_0805CDEE: - cmp r0, 0 - beq _0805CEA8 - b _0805CB6E -_0805CDF4: - adds r0, r2, 0 - adds r0, 0xC4 -_0805CDF8: - ldrb r0, [r0] - cmp r0, 0xC - bne _0805CEA8 - b _0805CB6E -_0805CE00: - ldrb r0, [r2, 0x6] - cmp r0, 0 - beq _0805CE5C - movs r6, 0 -_0805CE08: - ldr r0, _0805CE54 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0805CE58 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805CE46 - cmp r4, r5 - beq _0805CE46 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - beq _0805CE46 - ldr r1, [r4, 0x70] - movs r3, 0x1C - ldrsh r0, [r1, r3] - cmp r0, 0x13 - bgt _0805CE46 - movs r2, 0x1E - ldrsh r0, [r1, r2] - cmp r0, 0x13 - ble _0805CE4C -_0805CE46: - adds r6, 0x1 - cmp r6, 0xF - ble _0805CE08 -_0805CE4C: - cmp r6, 0x10 - bne _0805CEA8 - b _0805CB6E - .align 2, 0 -_0805CE54: .4byte gUnknown_203B418 -_0805CE58: .4byte 0x0001358c -_0805CE5C: - movs r6, 0 -_0805CE5E: - ldr r0, _0805CEB0 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r3, _0805CEB4 - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805CE9C - cmp r4, r5 - beq _0805CE9C - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - beq _0805CE9C - ldr r1, [r4, 0x70] - movs r2, 0x1C - ldrsh r0, [r1, r2] - cmp r0, 0x13 - bgt _0805CE9C - movs r3, 0x1E - ldrsh r0, [r1, r3] - cmp r0, 0x13 - ble _0805CEA2 -_0805CE9C: - adds r6, 0x1 - cmp r6, 0x3 - ble _0805CE5E -_0805CEA2: - cmp r6, 0x4 - bne _0805CEA8 - b _0805CB6E -_0805CEA8: - movs r0, 0x1 -_0805CEAA: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805CEB0: .4byte gUnknown_203B418 -_0805CEB4: .4byte 0x0001357c - thumb_func_end sub_805C498 - - thumb_func_start sub_805CEB8 -sub_805CEB8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r6, r1, 0 - adds r7, r2, 0 - ldr r5, [r0, 0x70] - ldr r4, [r6, 0x70] - adds r0, r4, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0805CEE0 - adds r0, r7, 0 - bl sub_8092C3C - lsls r0, 24 - cmp r0, 0 - beq _0805CEE0 - b _0805D540 -_0805CEE0: - ldrh r0, [r7, 0x2] - subs r2, r0, 0x3 - ldr r0, _0805CEF8 - cmp r2, r0 - bls _0805CEEE - bl _0805D802 -_0805CEEE: - lsls r0, r2, 2 - ldr r1, _0805CEFC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0805CEF8: .4byte 0x0000017b -_0805CEFC: .4byte _0805CF00 - .align 2, 0 -_0805CF00: - .4byte _0805D4FA - .4byte _0805D4F0 - .4byte _0805D50E - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D516 - .4byte _0805D51C - .4byte _0805D802 - .4byte _0805D7F6 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D520 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D52C - .4byte _0805D532 - .4byte _0805D544 - .4byte _0805D55A - .4byte _0805D7F6 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D566 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D56A - .4byte _0805D4F0 - .4byte _0805D570 - .4byte _0805D802 - .4byte _0805D57E - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D584 - .4byte _0805D802 - .4byte _0805D7F6 - .4byte _0805D802 - .4byte _0805D596 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D59C - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D5C8 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D5D0 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D4F0 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D5E2 - .4byte _0805D4F0 - .4byte _0805D5E8 - .4byte _0805D5F8 - .4byte _0805D802 - .4byte _0805D5FE - .4byte _0805D5F8 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D55A - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D4F0 - .4byte _0805D662 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D668 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D5DC - .4byte _0805D802 - .4byte _0805D5C8 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D7AC - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D704 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D704 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D7F6 - .4byte _0805D70A - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D7F6 - .4byte _0805D5C8 - .4byte _0805D802 - .4byte _0805D5F8 - .4byte _0805D802 - .4byte _0805D7E4 - .4byte _0805D7DC - .4byte _0805D802 - .4byte _0805D7E4 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D716 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D740 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D74A - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D5DC - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D4F0 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D75C - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D734 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D782 - .4byte _0805D740 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D704 - .4byte _0805D7F6 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D5C8 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D7A0 - .4byte _0805D7CA - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D78A - .4byte _0805D59C - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D7BE - .4byte _0805D7AC - .4byte _0805D802 - .4byte _0805D794 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D55A - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D782 - .4byte _0805D802 - .4byte _0805D802 - .4byte _0805D7F6 -_0805D4F0: - adds r0, r6, 0 - bl sub_8070B28 - lsls r0, 24 - b _0805D7A6 -_0805D4FA: - adds r0, r4, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x4 - beq _0805D540 - adds r0, r6, 0 - bl sub_8070B28 - lsls r0, 24 - b _0805D7A6 -_0805D50E: - adds r0, r4, 0 - adds r0, 0xA8 - ldrb r0, [r0] - b _0805D7F0 -_0805D516: - movs r1, 0x26 - ldrsh r0, [r4, r1] - b _0805D744 -_0805D51C: - ldr r0, [r4, 0x2C] - b _0805D58E -_0805D520: - adds r0, r4, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x6 - beq _0805D540 - b _0805D7AC -_0805D52C: - movs r3, 0xE - ldrsh r0, [r4, r3] - b _0805D78E -_0805D532: - movs r7, 0xE - ldrsh r1, [r4, r7] - movs r2, 0xE - ldrsh r0, [r5, r2] - cmp r1, r0 - ble _0805D540 - b _0805D802 -_0805D540: - movs r0, 0 - b _0805D804 -_0805D544: - movs r3, 0x8C - lsls r3, 1 - adds r4, r3 - adds r0, r4, 0 - bl sub_805D810 - lsls r0, 24 - cmp r0, 0 - bne _0805D540 - adds r0, r4, 0 - b _0805D7B2 -_0805D55A: - ldr r0, [r6, 0x70] - movs r7, 0x82 - lsls r7, 1 - adds r0, r7 - ldr r0, [r0] - b _0805D744 -_0805D566: - ldr r0, [r4, 0x34] - b _0805D58E -_0805D56A: - movs r1, 0x22 - ldrsh r0, [r4, r1] - b _0805D744 -_0805D570: - movs r2, 0x8C - lsls r2, 1 - adds r0, r4, r2 - bl sub_805D850 - lsls r0, 24 - b _0805D7A6 -_0805D57E: - adds r0, r4, 0 - adds r0, 0xDC - b _0805D7FA -_0805D584: - ldr r0, [r4, 0x2C] - cmp r0, 0x3E - ble _0805D58C - b _0805D802 -_0805D58C: - ldr r0, [r4, 0x30] -_0805D58E: - cmp r0, 0x3E - ble _0805D594 - b _0805D802 -_0805D594: - b _0805D540 -_0805D596: - adds r0, r4, 0 - adds r0, 0xAC - b _0805D798 -_0805D59C: - adds r0, r4, 0 - adds r0, 0x5C - ldrb r0, [r0] - cmp r0, 0xE - beq _0805D5B0 - adds r0, r4, 0 - adds r0, 0x5D - ldrb r0, [r0] - cmp r0, 0xE - bne _0805D5BC -_0805D5B0: - adds r0, r4, 0 - adds r0, 0xF5 - ldrb r0, [r0] - cmp r0, 0 - bne _0805D5BC - b _0805D802 -_0805D5BC: - movs r3, 0x26 - ldrsh r0, [r4, r3] - cmp r0, 0xA - ble _0805D5C6 - b _0805D802 -_0805D5C6: - b _0805D540 -_0805D5C8: - adds r0, r4, 0 - adds r0, 0xAC - ldrb r0, [r0] - b _0805D7D6 -_0805D5D0: - movs r7, 0xE - ldrsh r0, [r4, r7] - movs r2, 0xE - ldrsh r1, [r5, r2] - subs r0, r1 - b _0805D744 -_0805D5DC: - movs r3, 0x20 - ldrsh r0, [r4, r3] - b _0805D744 -_0805D5E2: - movs r7, 0x22 - ldrsh r0, [r4, r7] - b _0805D744 -_0805D5E8: - movs r1, 0x1C - ldrsh r0, [r4, r1] - cmp r0, 0 - ble _0805D5F2 - b _0805D802 -_0805D5F2: - movs r2, 0x20 - ldrsh r0, [r4, r2] - b _0805D744 -_0805D5F8: - adds r0, r4, 0 - adds r0, 0xB0 - b _0805D7FA -_0805D5FE: - movs r6, 0 - adds r2, r4, 0 - adds r2, 0x1C - movs r3, 0x1C - ldrsh r0, [r4, r3] - cmp r0, 0x9 - ble _0805D6FC - adds r1, r4, 0 - adds r1, 0x20 - movs r7, 0x20 - ldrsh r0, [r4, r7] - cmp r0, 0x9 - ble _0805D6FC - adds r3, r1, 0 - movs r5, 0 -_0805D61C: - adds r0, r4, 0 - adds r0, 0x24 - adds r0, r5 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x9 - ble _0805D6FC - lsls r1, r6, 2 - adds r0, r4, 0 - adds r0, 0x2C - adds r0, r1 - ldr r0, [r0] - cmp r0, 0xFF - ble _0805D6FC - adds r0, r4, 0 - adds r0, 0x34 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0xFF - ble _0805D6FC - adds r3, 0x2 - adds r2, 0x2 - adds r5, 0x2 - adds r6, 0x1 - cmp r6, 0x1 - bgt _0805D6FC - movs r7, 0 - ldrsh r0, [r2, r7] - cmp r0, 0x9 - ble _0805D6FC - movs r1, 0 - ldrsh r0, [r3, r1] - cmp r0, 0x9 - bgt _0805D61C - b _0805D6FC -_0805D662: - adds r0, r4, 0 - adds r0, 0xA8 - b _0805D7FA -_0805D668: - movs r6, 0 - adds r3, r5, 0 - adds r3, 0x1C - adds r2, r4, 0 - adds r2, 0x1C - movs r7, 0x1C - ldrsh r1, [r5, r7] - movs r7, 0x1C - ldrsh r0, [r4, r7] - cmp r1, r0 - blt _0805D6FC - mov r12, r2 - mov r8, r3 - movs r3, 0 -_0805D684: - adds r1, r5, 0 - adds r1, 0x20 - adds r1, r3 - adds r0, r4, 0 - adds r0, 0x20 - adds r0, r3 - movs r2, 0 - ldrsh r1, [r1, r2] - movs r7, 0 - ldrsh r0, [r0, r7] - cmp r1, r0 - blt _0805D6FC - adds r1, r5, 0 - adds r1, 0x24 - adds r1, r3 - adds r0, r4, 0 - adds r0, 0x24 - adds r0, r3 - movs r2, 0 - ldrsh r1, [r1, r2] - movs r7, 0 - ldrsh r0, [r0, r7] - cmp r1, r0 - blt _0805D6FC - lsls r2, r6, 2 - adds r1, r5, 0 - adds r1, 0x2C - adds r1, r2 - adds r0, r4, 0 - adds r0, 0x2C - adds r0, r2 - ldr r1, [r1] - ldr r0, [r0] - cmp r1, r0 - blt _0805D6FC - adds r1, r5, 0 - adds r1, 0x34 - adds r1, r2 - adds r0, r4, 0 - adds r0, 0x34 - adds r0, r2 - ldr r1, [r1] - ldr r0, [r0] - cmp r1, r0 - blt _0805D6FC - movs r0, 0x2 - add r12, r0 - add r8, r0 - adds r3, 0x2 - adds r6, 0x1 - cmp r6, 0x1 - bgt _0805D6FC - mov r2, r8 - movs r7, 0 - ldrsh r1, [r2, r7] - mov r2, r12 - movs r7, 0 - ldrsh r0, [r2, r7] - cmp r1, r0 - bge _0805D684 -_0805D6FC: - cmp r6, 0x2 - beq _0805D702 - b _0805D802 -_0805D702: - b _0805D540 -_0805D704: - movs r1, 0x24 - ldrsh r0, [r4, r1] - b _0805D744 -_0805D70A: - adds r0, r4, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x5 - bne _0805D802 - b _0805D540 -_0805D716: - adds r0, r5, 0 - adds r0, 0x60 - ldrb r1, [r0] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _0805D728 - b _0805D540 -_0805D728: - adds r0, r4, 0 - adds r0, 0x60 - ldrb r1, [r0] - adds r0, r2, 0 - ands r0, r1 - b _0805D7B8 -_0805D734: - adds r0, r4, 0 - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - b _0805D7B8 -_0805D740: - movs r2, 0x1C - ldrsh r0, [r4, r2] -_0805D744: - cmp r0, 0 - bgt _0805D802 - b _0805D540 -_0805D74A: - adds r0, r5, 0 - adds r0, 0x5E - adds r1, r4, 0 - adds r1, 0x5E - ldrh r0, [r0] - ldrh r1, [r1] - cmp r0, r1 - bne _0805D802 - b _0805D540 -_0805D75C: - mov r0, r8 - movs r1, 0xE - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _0805D770 - adds r0, r4, 0 - adds r0, 0xC8 - b _0805D798 -_0805D770: - movs r3, 0x1C - ldrsh r0, [r5, r3] - cmp r0, 0x13 - ble _0805D802 - movs r7, 0x20 - ldrsh r0, [r5, r7] - cmp r0, 0x13 - ble _0805D802 - b _0805D540 -_0805D782: - adds r0, r4, 0 - adds r0, 0xBC - ldrb r0, [r0] - b _0805D7F0 -_0805D78A: - movs r1, 0xE - ldrsh r0, [r4, r1] -_0805D78E: - cmp r0, 0x1 - bgt _0805D802 - b _0805D540 -_0805D794: - adds r0, r4, 0 - adds r0, 0xD0 -_0805D798: - ldrb r0, [r0] - cmp r0, 0x1 - bne _0805D802 - b _0805D540 -_0805D7A0: - adds r0, r4, 0 - adds r0, 0xFD - ldrb r0, [r0] -_0805D7A6: - cmp r0, 0 - beq _0805D802 - b _0805D540 -_0805D7AC: - movs r2, 0x8C - lsls r2, 1 - adds r0, r4, r2 -_0805D7B2: - bl sub_805D888 - lsls r0, 24 -_0805D7B8: - cmp r0, 0 - bne _0805D802 - b _0805D540 -_0805D7BE: - adds r0, r4, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x7 - bne _0805D802 - b _0805D540 -_0805D7CA: - adds r0, r4, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0805D7D6 - b _0805D540 -_0805D7D6: - cmp r0, 0x4 - bne _0805D802 - b _0805D540 -_0805D7DC: - adds r0, r4, 0 - adds r0, 0xAC - ldrb r0, [r0] - b _0805D7F0 -_0805D7E4: - adds r0, r4, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x2 - bne _0805D7F0 - b _0805D540 -_0805D7F0: - cmp r0, 0x3 - bne _0805D802 - b _0805D540 -_0805D7F6: - adds r0, r4, 0 - adds r0, 0xBC -_0805D7FA: - ldrb r0, [r0] - cmp r0, 0x2 - bne _0805D802 - b _0805D540 -_0805D802: - movs r0, 0x1 -_0805D804: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805CEB8 - - thumb_func_start sub_805D810 -sub_805D810: - push {r4-r6,lr} - adds r4, r0, 0 - movs r3, 0 - movs r6, 0x1 - movs r5, 0x20 - adds r2, r4, 0 -_0805D81C: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0805D82E - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _0805D848 -_0805D82E: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - ble _0805D81C - adds r0, r4, 0 - adds r0, 0x20 - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _0805D848 - movs r0, 0 - b _0805D84A -_0805D848: - movs r0, 0x1 -_0805D84A: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805D810 - - thumb_func_start sub_805D850 -sub_805D850: - push {r4,r5,lr} - movs r3, 0 - movs r5, 0x1 - adds r2, r0, 0 - movs r4, 0x10 -_0805D85A: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0805D876 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0805D876 - ldrb r0, [r2, 0x4] - cmp r0, 0 - bne _0805D876 - movs r0, 0x1 - b _0805D880 -_0805D876: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - ble _0805D85A - movs r0, 0 -_0805D880: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D850 - - thumb_func_start sub_805D888 -sub_805D888: - push {r4-r6,lr} - adds r4, r0, 0 - movs r3, 0 - movs r6, 0x1 - movs r5, 0x10 - adds r2, r4, 0 -_0805D894: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0805D8A6 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _0805D8C0 -_0805D8A6: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - ble _0805D894 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0805D8C0 - movs r0, 0 - b _0805D8C2 -_0805D8C0: - movs r0, 0x1 -_0805D8C2: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805D888 - - thumb_func_start sub_805D8C8 -sub_805D8C8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - ldr r4, _0805D90C - ldr r1, [r4] - ldr r0, _0805D910 - adds r0, r1, r0 - str r0, [sp, 0x10] - movs r2, 0x3 - str r2, [sp, 0xC] - movs r5, 0 - movs r0, 0 - strh r0, [r1, 0x12] - bl sub_8083600 - movs r1, 0x1 - bl sub_806A2BC - bl sub_8083600 - bl sub_80701A4 - lsls r0, 24 - cmp r0, 0 - beq _0805D928 - movs r0, 0x3C - movs r1, 0x10 - bl sub_803E708 - bl _0805E2B0 - .align 2, 0 -_0805D90C: .4byte gUnknown_203B418 -_0805D910: .4byte 0x000181e8 -_0805D914: - mov r1, r8 - adds r1, 0x44 - movs r2, 0 - movs r0, 0x2 - strh r0, [r1] - mov r0, r8 - adds r0, 0x48 - strb r2, [r0] - bl _0805E2B0 -_0805D928: - ldr r0, [r4] - ldr r3, _0805D9D4 - adds r0, r3 - strb r5, [r0] - bl sub_8040A78 - ldr r1, [r4] - ldrb r0, [r1, 0x1] - cmp r0, 0 - beq _0805D976 - strb r5, [r1, 0x1] - bl sub_8083600 - movs r1, 0x1 - bl sub_8071518 - lsls r0, 24 - cmp r0, 0 - bne _0805D976 - movs r0, 0x1 - bl sub_8044C10 - bl sub_805E804 - bl sub_8083600 - bl sub_80647F0 - bl sub_80048D0 - bl sub_8004914 - bl sub_805F1AC - lsls r0, 16 - cmp r0, 0 - beq _0805D976 - bl _0805E2B0 -_0805D976: - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_806A914 -_0805D980: - bl sub_8083600 - mov r10, r0 - ldr r5, [r0, 0x70] - mov r8, r5 - movs r1, 0x2 - ldrsh r0, [r5, r1] - bl sub_80978C8 - ldr r2, _0805D9D8 - ldr r0, [r2] - ldr r3, _0805D9DC - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0805D9AE - bl sub_805E874 - lsls r0, 24 - cmp r0, 0 - bne _0805D914 - bl sub_805E804 -_0805D9AE: - ldr r0, _0805D9E0 - movs r1, 0 - strb r1, [r0] - ldr r0, _0805D9E4 - strb r1, [r0] - ldr r5, _0805D9D8 - ldr r0, [r5] - movs r1, 0xB8 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - bge _0805D9CA - b _0805DAE8 -_0805D9CA: - ldr r0, _0805D9E8 - ands r6, r0 - movs r2, 0x1 - orrs r6, r2 - b _0805DAEC - .align 2, 0 -_0805D9D4: .4byte 0x00000673 -_0805D9D8: .4byte gUnknown_203B418 -_0805D9DC: .4byte 0x0000066c -_0805D9E0: .4byte gUnknown_202F22D -_0805D9E4: .4byte gUnknown_202F22C -_0805D9E8: .4byte 0xffffff00 -_0805D9EC: - movs r0, 0x1 - bl sub_8044C50 - ldr r3, _0805DA00 - ldr r0, [r3] - ldr r5, _0805DA04 - adds r0, r5 - strb r4, [r0] - b _0805E1AE - .align 2, 0 -_0805DA00: .4byte gUnknown_203B418 -_0805DA04: .4byte 0x00000673 -_0805DA08: - ldr r0, _0805DA14 - ldr r1, [r0] - mov r0, r10 - bl sub_80522A8 - b _0805DBDA - .align 2, 0 -_0805DA14: .4byte gUnknown_80FD4B0 -_0805DA18: - ldr r0, _0805DA1C - b _0805DCBC - .align 2, 0 -_0805DA1C: .4byte gUnknown_80F8A28 -_0805DA20: - ldr r0, [sp, 0x1C] - movs r1, 0x17 - bl sub_8044C94 - b _0805E1AE -_0805DA2A: - ldr r0, _0805DA38 - ands r6, r0 - movs r3, 0x1 - orrs r6, r3 - ldr r0, _0805DA3C - ands r6, r0 - b _0805DAD6 - .align 2, 0 -_0805DA38: .4byte 0xffffff00 -_0805DA3C: .4byte 0xffff00ff -_0805DA40: - ldr r5, _0805DA58 - ldr r0, [r5] - movs r2, 0xB8 - lsls r2, 3 - adds r0, r2 - str r1, [r0] - ldr r0, _0805DA5C - ands r6, r0 - movs r3, 0x1 - orrs r6, r3 - b _0805DAA8 - .align 2, 0 -_0805DA58: .4byte gUnknown_203B418 -_0805DA5C: .4byte 0xffffff00 -_0805DA60: - ldr r5, _0805DA78 - ldr r0, [r5] - movs r1, 0xB8 - lsls r1, 3 - adds r0, r1 - movs r2, 0x1 - str r2, [r0] - ldr r0, _0805DA7C - ands r6, r0 - orrs r6, r2 - b _0805DAA8 - .align 2, 0 -_0805DA78: .4byte gUnknown_203B418 -_0805DA7C: .4byte 0xffffff00 -_0805DA80: - ldr r3, _0805DA98 - ldr r0, [r3] - movs r5, 0xB8 - lsls r5, 3 - adds r0, r5 - str r2, [r0] - ldr r0, _0805DA9C - ands r6, r0 - movs r0, 0x1 - orrs r6, r0 - b _0805DAA8 - .align 2, 0 -_0805DA98: .4byte gUnknown_203B418 -_0805DA9C: .4byte 0xffffff00 -_0805DAA0: - ldr r0, _0805DAB8 - ands r6, r0 - movs r1, 0x1 - orrs r6, r1 -_0805DAA8: - ldr r0, _0805DABC - ands r6, r0 - ldr r0, _0805DAC0 - ands r6, r0 - movs r0, 0x80 - lsls r0, 9 - orrs r6, r0 - b _0805E1AE - .align 2, 0 -_0805DAB8: .4byte 0xffffff00 -_0805DABC: .4byte 0xffff00ff -_0805DAC0: .4byte 0xff00ffff -_0805DAC4: - ldr r0, _0805DADC - ands r6, r0 - movs r2, 0x1 - orrs r6, r2 - ldr r0, _0805DAE0 - ands r6, r0 - movs r0, 0x80 - lsls r0, 1 - orrs r6, r0 -_0805DAD6: - ldr r0, _0805DAE4 - ands r6, r0 - b _0805E1AE - .align 2, 0 -_0805DADC: .4byte 0xffffff00 -_0805DAE0: .4byte 0xffff00ff -_0805DAE4: .4byte 0xff00ffff -_0805DAE8: - ldr r0, _0805DB3C - ands r6, r0 -_0805DAEC: - ldr r0, _0805DB40 - ands r6, r0 - ldr r0, _0805DB44 - ands r6, r0 - movs r3, 0 - str r3, [sp, 0x8] - movs r0, 0 - bl sub_8044C50 - ldr r0, _0805DB48 - mov r5, sp - ldrb r5, [r5, 0x8] - strb r5, [r0] - ldr r0, _0805DB4C - mov r1, sp - ldrb r1, [r1, 0x8] - strb r1, [r0] - lsls r0, r6, 24 - mov r2, r8 - adds r2, 0x44 - str r2, [sp, 0x1C] - str r0, [sp, 0x14] - ldr r3, [sp, 0x10] - adds r3, 0x32 - str r3, [sp, 0x18] - cmp r0, 0 - beq _0805DB24 - b _0805E1AE -_0805DB24: - ldr r0, _0805DB50 - ldrh r1, [r0] - adds r1, 0x1 - strh r1, [r0] - ldr r5, [sp, 0x18] - ldrb r0, [r5] - cmp r0, 0 - beq _0805DB54 - movs r0, 0 - str r0, [sp, 0x8] - b _0805DB5A - .align 2, 0 -_0805DB3C: .4byte 0xffffff00 -_0805DB40: .4byte 0xffff00ff -_0805DB44: .4byte 0xff00ffff -_0805DB48: .4byte gUnknown_202F230 -_0805DB4C: .4byte gUnknown_202F231 -_0805DB50: .4byte gUnknown_202F22E -_0805DB54: - ldr r1, [sp, 0x8] - adds r1, 0x1 - str r1, [sp, 0x8] -_0805DB5A: - ldr r2, [sp, 0xC] - cmp r2, 0 - beq _0805DB6E - subs r2, 0x1 - str r2, [sp, 0xC] - cmp r2, 0 - bne _0805DB6E - movs r0, 0 - bl sub_8075680 -_0805DB6E: - mov r0, r10 - bl sub_805E2C4 - movs r7, 0 - movs r1, 0 - add r0, sp, 0x4 -_0805DB7A: - strb r1, [r0] - subs r0, 0x1 - cmp r0, sp - bge _0805DB7A - ldr r0, _0805DBEC - ldrh r1, [r0] - movs r4, 0x1 - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805DBAA - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0805DBAA - movs r0, 0x9E - lsls r0, 1 - add r0, r8 - ldr r0, [r0] - bl sub_8094450 - cmp r0, 0 - beq _0805DBAA - b _0805D9EC -_0805DBAA: - movs r3, 0 - mov r9, r3 - ldr r4, _0805DBEC - ldrh r1, [r4, 0x2] - movs r5, 0x1 - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0805DBBE - b _0805DD02 -_0805DBBE: - ldrh r1, [r4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0805DBF8 - movs r0, 0x9E - lsls r0, 1 - add r0, r8 - ldr r0, [r0] - bl sub_8094450 - cmp r0, 0 - bne _0805DBDA - b _0805DD02 -_0805DBDA: - movs r0, 0x1 - bl sub_8044C50 - ldr r1, _0805DBF0 - ldr r0, [r1] - ldr r2, _0805DBF4 - adds r0, r2 - strb r5, [r0] - b _0805E1AE - .align 2, 0 -_0805DBEC: .4byte gUnknown_20255F0 -_0805DBF0: .4byte gUnknown_203B418 -_0805DBF4: .4byte 0x00000673 -_0805DBF8: - mov r0, r10 - movs r1, 0x1 - bl sub_8071518 - lsls r0, 24 - cmp r0, 0 - beq _0805DC08 - b _0805DA08 -_0805DC08: - ldrh r0, [r4] - movs r3, 0x80 - lsls r3, 2 - adds r1, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _0805DCE8 - movs r4, 0 - movs r2, 0x8C - lsls r2, 1 - add r2, r8 - movs r3, 0x8 -_0805DC20: - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805DC32 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0805DC3A -_0805DC32: - adds r2, 0x8 - adds r4, 0x1 - cmp r4, 0x3 - ble _0805DC20 -_0805DC3A: - cmp r4, 0x4 - bne _0805DC40 - b _0805DA18 -_0805DC40: - movs r3, 0 - movs r5, 0x8C - lsls r5, 1 - movs r7, 0x1 - mov r2, r8 -_0805DC4A: - lsls r0, r3, 3 - add r0, r8 - adds r0, r5 - ldrb r1, [r0] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _0805DC66 - movs r1, 0x8E - lsls r1, 1 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0805DC6E -_0805DC66: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - ble _0805DC4A -_0805DC6E: - cmp r3, 0x4 - bne _0805DC74 - b _0805DA20 -_0805DC74: - movs r7, 0 - adds r3, r4, 0 - cmp r4, 0x3 - bgt _0805DCB6 - lsls r0, r4, 3 - adds r2, r0, 0 - add r2, r8 - mov r12, r2 - movs r5, 0x8E - lsls r5, 1 - adds r0, r5 - mov r1, r8 - adds r2, r0, r1 - movs r5, 0x2 -_0805DC90: - ldrb r0, [r2] - cmp r0, 0 - bne _0805DCCC - movs r0, 0x8 - add r12, r0 - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - bgt _0805DCB6 - cmp r3, r4 - beq _0805DC90 - movs r0, 0x8C - lsls r0, 1 - add r0, r12 - ldrb r1, [r0] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _0805DC90 -_0805DCB6: - cmp r7, 0 - bne _0805DCCC - ldr r0, _0805DCC8 -_0805DCBC: - ldr r1, [r0] - mov r0, r10 - bl sub_80522A8 - b _0805E1AE - .align 2, 0 -_0805DCC8: .4byte gUnknown_80F8A4C -_0805DCCC: - ldr r0, [sp, 0x1C] - movs r1, 0x14 - bl sub_8044C94 - mov r0, r10 - bl sub_8045B60 - mov r1, r8 - adds r1, 0x48 - strb r0, [r1] - mov r0, r8 - adds r0, 0x50 - strb r4, [r0] - b _0805E1AE -_0805DCE8: - mov r0, r10 - mov r1, r8 - bl sub_805EF60 - lsls r0, 24 - cmp r0, 0 - beq _0805DCF8 - b _0805E1AE -_0805DCF8: - ldr r0, [sp, 0x1C] - movs r1, 0x32 - bl sub_8044C94 - b _0805E1AE -_0805DD02: - ldr r3, _0805DDC8 - ldrh r1, [r3, 0x6] - movs r2, 0x2 - adds r0, r2, 0 - ands r0, r1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _0805DD16 - b _0805DA2A -_0805DD16: - mov r0, sp - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _0805DD20 - b _0805DA40 -_0805DD20: - mov r0, sp - ldrb r0, [r0, 0x2] - cmp r0, 0 - beq _0805DD2A - b _0805DA60 -_0805DD2A: - mov r0, sp - ldrb r0, [r0, 0x3] - cmp r0, 0 - beq _0805DD34 - b _0805DA80 -_0805DD34: - mov r0, sp - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _0805DD3E - b _0805DAA0 -_0805DD3E: - ldr r0, _0805DDCC - ldr r1, [sp, 0x8] - cmp r1, r0 - ble _0805DD48 - b _0805DAC4 -_0805DD48: - ldr r0, _0805DDD0 - ldr r0, [r0] - ldrb r4, [r0, 0x9] - cmp r4, 0 - bne _0805DD7E - ldrh r1, [r3, 0x2] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _0805DD66 - cmp r7, 0 - bne _0805DD7E - movs r2, 0 - cmp r2, 0 - beq _0805DD7E -_0805DD66: - ldr r3, [sp, 0x18] - ldrb r0, [r3] - cmp r0, 0 - beq _0805DD7E - bl sub_804AA60 - ldr r0, _0805DDD4 - strb r4, [r0] - bl sub_80048D0 - bl sub_8004914 -_0805DD7E: - ldr r2, _0805DDC8 - ldrh r0, [r2] - movs r5, 0x80 - lsls r5, 2 - adds r1, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0805DDA4 - ldrh r1, [r2, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0805DDA4 - bl sub_80532B4 - bl sub_80048D0 - bl sub_8004914 -_0805DDA4: - movs r4, 0 - ldr r0, _0805DDC8 - ldrh r0, [r0] - movs r2, 0x80 - lsls r2, 1 - adds r1, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0805DDFA - ldr r1, _0805DDD8 - ldrb r0, [r1] - cmp r0, 0 - bne _0805DDC2 - ldr r0, _0805DDDC - strh r4, [r0] -_0805DDC2: - movs r3, 0x1 - strb r3, [r1] - b _0805DDFE - .align 2, 0 -_0805DDC8: .4byte gUnknown_20255F0 -_0805DDCC: .4byte 0x00000707 -_0805DDD0: .4byte gUnknown_203B46C -_0805DDD4: .4byte gUnknown_202F22D -_0805DDD8: .4byte gUnknown_202F22C -_0805DDDC: .4byte gUnknown_202F22E -_0805DDE0: - movs r0, 0xB - bl sub_8044C50 - adds r2, r4, 0x1 - mov r0, r8 - adds r0, 0x48 - movs r1, 0 - strb r2, [r0] - adds r0, 0x4 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - b _0805DE92 -_0805DDFA: - ldr r0, _0805DEF8 - strb r4, [r0] -_0805DDFE: - movs r3, 0 - ldr r0, _0805DEFC - ldr r0, [r0] - ldrb r0, [r0, 0x9] - cmp r0, 0 - bne _0805DE2C - ldr r2, _0805DF00 - ldrh r0, [r2, 0x6] - movs r5, 0x80 - lsls r5, 1 - adds r1, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _0805DE2A - mov r0, r9 - cmp r0, 0 - bne _0805DE2A - ldrh r1, [r2, 0x2] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0805DE2C -_0805DE2A: - movs r3, 0x1 -_0805DE2C: - cmp r3, 0 - beq _0805DE54 - mov r0, r10 - bl sub_805E738 - ldr r0, _0805DF04 - movs r1, 0x1 - strb r1, [r0] - mov r0, r8 - adds r0, 0x46 - ldrb r0, [r0] - ldr r1, [sp, 0x10] - adds r1, 0x33 - strb r0, [r1] - ldr r1, [sp, 0x10] - adds r1, 0x34 - movs r0, 0xFF - strb r0, [r1] - bl sub_80048D0 -_0805DE54: - ldr r0, _0805DF00 - ldr r1, [r0] - ldr r0, _0805DF08 - ands r1, r0 - cmp r1, r0 - bne _0805DE62 - movs r4, 0x1 -_0805DE62: - mov r0, sp - ldrb r0, [r0] - cmp r0, 0 - beq _0805DE6C - movs r4, 0x1 -_0805DE6C: - cmp r4, 0 - beq _0805DE9C - movs r4, 0 - ldr r0, _0805DF0C - ldr r2, [r0] - movs r3, 0x10 -_0805DE78: - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805DE8A - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0805DDE0 -_0805DE8A: - adds r2, 0x4 - adds r4, 0x1 - cmp r4, 0x13 - ble _0805DE78 -_0805DE92: - ldr r2, [sp, 0x1C] - ldrh r0, [r2] - cmp r0, 0 - beq _0805DE9C - b _0805E1AE -_0805DE9C: - ldr r5, _0805DF10 - ldr r3, [r5] - ldr r1, _0805DF14 - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0805DF82 - ldr r0, _0805DEFC - ldr r2, [r0] - ldrb r0, [r2, 0x4] - cmp r0, 0x6 - beq _0805DF82 - ldr r0, _0805DF00 - ldrh r1, [r0, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0805DF82 - ldrb r4, [r2, 0x4] - ldr r0, _0805DF18 - movs r2, 0x1 - strb r2, [r0] - ldr r5, _0805DF1C - adds r0, r3, r5 - strb r2, [r0] - bl sub_8094C48 - lsls r0, 24 - cmp r0, 0 - bne _0805DEDC - bl sub_8094C88 -_0805DEDC: - movs r0, 0x1 - bl sub_8052210 - bl sub_8040A84 - movs r0, 0x1E - bl SetBGOBJEnableFlags - movs r0, 0xA - movs r1, 0x2F - bl sub_803E708 - b _0805DF3A - .align 2, 0 -_0805DEF8: .4byte gUnknown_202F22C -_0805DEFC: .4byte gUnknown_203B46C -_0805DF00: .4byte gUnknown_20255F0 -_0805DF04: .4byte gUnknown_202F22D -_0805DF08: .4byte 0x01000200 -_0805DF0C: .4byte gUnknown_203B460 -_0805DF10: .4byte gUnknown_203B418 -_0805DF14: .4byte 0x0001820a -_0805DF18: .4byte gUnknown_202EE00 -_0805DF1C: .4byte 0x00018214 -_0805DF20: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805DF3A - ldr r2, _0805DFA0 - movs r1, 0 - ldrb r0, [r2] - cmp r0, 0 - bne _0805DF34 - movs r1, 0x1 -_0805DF34: - strb r1, [r2] - bl sub_8040A84 -_0805DF3A: - movs r0, 0x2F - bl sub_803E46C - ldr r0, _0805DFA4 - ldrh r1, [r0, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _0805DF54 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0805DF20 -_0805DF54: - ldr r1, _0805DFA8 - ldr r0, [r1] - ldr r2, _0805DFAC - adds r0, r2 - movs r1, 0 - strb r1, [r0] - ldr r0, _0805DFB0 - ldr r0, [r0] - strb r4, [r0, 0x4] - ldr r0, _0805DFA0 - movs r3, 0x1 - strb r3, [r0] - bl sub_8040A84 - movs r0, 0 - bl SetBGOBJEnableFlags - movs r0, 0x2F - bl sub_803E46C - movs r0, 0x2F - bl sub_803E46C -_0805DF82: - ldr r5, _0805DFA8 - ldr r0, [r5] - ldr r1, _0805DFB4 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0805DFBC - ldr r0, _0805DFB8 - ldrb r0, [r0] - cmp r0, 0 - bne _0805DFBC - ldr r0, _0805DFA4 - ldrh r2, [r0, 0x2] - adds r1, r2, 0 - b _0805DFCC - .align 2, 0 -_0805DFA0: .4byte gUnknown_202EE00 -_0805DFA4: .4byte gUnknown_20255F0 -_0805DFA8: .4byte gUnknown_203B418 -_0805DFAC: .4byte 0x00018214 -_0805DFB0: .4byte gUnknown_203B46C -_0805DFB4: .4byte 0x0000066d -_0805DFB8: .4byte gUnknown_202F22C -_0805DFBC: - ldr r3, _0805E05C - ldrh r1, [r3] - ldr r2, [sp, 0x18] - ldrb r0, [r2] - adds r2, r1, 0 - cmp r0, 0 - beq _0805DFCC - ldrh r2, [r3, 0x2] -_0805DFCC: - movs r0, 0xF0 - ands r1, r0 - ands r2, r0 - movs r5, 0x1 - negs r5, r5 - cmp r1, 0x50 - bne _0805DFDC - movs r5, 0x3 -_0805DFDC: - cmp r1, 0x60 - bne _0805DFE2 - movs r5, 0x5 -_0805DFE2: - cmp r1, 0x90 - bne _0805DFE8 - movs r5, 0x1 -_0805DFE8: - cmp r1, 0xA0 - bne _0805DFEE - movs r5, 0x7 -_0805DFEE: - cmp r2, 0x40 - bne _0805DFF4 - movs r5, 0x4 -_0805DFF4: - cmp r2, 0x80 - bne _0805DFFA - movs r5, 0 -_0805DFFA: - cmp r2, 0x10 - bne _0805E000 - movs r5, 0x2 -_0805E000: - cmp r2, 0x20 - bne _0805E006 - movs r5, 0x6 -_0805E006: - cmp r5, 0 - bge _0805E00C - b _0805E1A0 -_0805E00C: - ldr r0, _0805E060 - ldrb r0, [r0] - cmp r0, 0 - beq _0805E020 - adds r0, r5, 0 - movs r3, 0x1 - ands r0, r3 - cmp r0, 0 - bne _0805E020 - b _0805E1A0 -_0805E020: - mov r2, r8 - adds r2, 0x46 - ldrb r1, [r2] - eors r1, r5 - negs r0, r1 - orrs r0, r1 - lsrs r7, r0, 31 - movs r1, 0x7 - adds r0, r5, 0 - ands r0, r1 - strb r0, [r2] - ldr r0, _0805E064 - ldrb r0, [r0] - cmp r0, 0 - beq _0805E068 - ldr r0, [sp, 0x10] - adds r0, 0x33 - strb r5, [r0] - mov r0, r10 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r0, r10 - adds r2, r5, 0 - bl sub_806CDD4 - b _0805E1A0 - .align 2, 0 -_0805E05C: .4byte gUnknown_20255F0 -_0805E060: .4byte gUnknown_202F22C -_0805E064: .4byte gUnknown_202F22D -_0805E068: - movs r4, 0 - movs r3, 0 - mov r0, r10 - movs r1, 0x1 - str r3, [sp, 0x20] - bl sub_805EC4C - lsls r0, 24 - ldr r3, [sp, 0x20] - cmp r0, 0 - beq _0805E080 - b _0805E1AE -_0805E080: - mov r0, r8 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x2 - bne _0805E094 - ldr r0, _0805E090 - b _0805E0BE - .align 2, 0 -_0805E090: .4byte gUnknown_80F8A84 -_0805E094: - cmp r0, 0x7 - bne _0805E0A0 - ldr r0, _0805E09C - b _0805E0BE - .align 2, 0 -_0805E09C: .4byte gUnknown_80F8A6C -_0805E0A0: - cmp r0, 0x5 - bne _0805E0AC - ldr r0, _0805E0A8 - b _0805E0BE - .align 2, 0 -_0805E0A8: .4byte gUnknown_80F8AB0 -_0805E0AC: - cmp r0, 0x3 - bne _0805E0B8 - ldr r0, _0805E0B4 - b _0805E0BE - .align 2, 0 -_0805E0B4: .4byte gUnknown_80F8ADC -_0805E0B8: - cmp r0, 0x4 - bne _0805E0C2 - ldr r0, _0805E128 -_0805E0BE: - ldr r3, [r0] - movs r4, 0x1 -_0805E0C2: - mov r0, r10 - adds r1, r5, 0 - str r3, [sp, 0x20] - bl sub_8070D6C - lsls r0, 24 - ldr r3, [sp, 0x20] - cmp r0, 0 - bne _0805E0D8 - movs r0, 0x2 - orrs r4, r0 -_0805E0D8: - cmp r7, 0 - beq _0805E0F4 - mov r0, r10 - str r3, [sp, 0x20] - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r0, r10 - adds r2, r5, 0 - bl sub_806CDD4 - ldr r3, [sp, 0x20] -_0805E0F4: - movs r7, 0x2 - adds r0, r4, 0 - ands r0, r7 - cmp r0, 0 - bne _0805E192 - movs r5, 0x1 - mov r9, r5 - ands r5, r4 - cmp r5, 0 - beq _0805E134 - cmp r3, 0 - beq _0805E114 - mov r0, r10 - adds r1, r3, 0 - bl sub_80522A8 -_0805E114: - movs r0, 0x1 - bl sub_8044C50 - ldr r1, _0805E12C - ldr r0, [r1] - ldr r2, _0805E130 - adds r0, r2 - mov r3, r9 - strb r3, [r0] - b _0805E1AE - .align 2, 0 -_0805E128: .4byte gUnknown_80F8B0C -_0805E12C: .4byte gUnknown_203B418 -_0805E130: .4byte 0x00000673 -_0805E134: - movs r0, 0x2 - bl sub_8044C50 - ldr r0, _0805E17C - ldrh r1, [r0] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - bne _0805E14C - movs r0, 0 - cmp r0, 0 - beq _0805E188 -_0805E14C: - movs r0, 0x9E - lsls r0, 1 - add r0, r8 - ldr r0, [r0] - bl sub_8094450 - cmp r0, 0 - beq _0805E188 - mov r1, r10 - ldr r0, [r1, 0x70] - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - beq _0805E174 - ldr r2, _0805E180 - ldr r0, [r2] - ldr r3, _0805E184 - adds r0, r3 - mov r1, r9 - strb r1, [r0] -_0805E174: - mov r0, r8 - adds r0, 0x48 - strb r5, [r0] - b _0805E1AE - .align 2, 0 -_0805E17C: .4byte gUnknown_20255F0 -_0805E180: .4byte gUnknown_203B418 -_0805E184: .4byte 0x0000066c -_0805E188: - mov r0, r8 - adds r0, 0x48 - movs r2, 0x1 - strb r2, [r0] - b _0805E1AE -_0805E192: - movs r3, 0x1 - ands r4, r3 - cmp r4, 0 - beq _0805E1A0 - movs r0, 0x23 - bl sub_803E724 -_0805E1A0: - movs r0, 0xF - bl sub_803E46C - ldr r5, [sp, 0x14] - cmp r5, 0 - bne _0805E1AE - b _0805DB24 -_0805E1AE: - ldr r1, [sp, 0x18] - ldrb r0, [r1] - cmp r0, 0 - beq _0805E1BA - bl sub_804AA60 -_0805E1BA: - ldr r4, [sp, 0x1C] - ldrh r0, [r4] - cmp r0, 0x2D - beq _0805E1C6 - cmp r0, 0x13 - bne _0805E1E0 -_0805E1C6: - mov r0, r10 - bl sub_8067510 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0805E2B0 - movs r0, 0 - bl sub_8044C50 - bl _0805D980 -_0805E1E0: - lsls r0, r6, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805E222 - ldr r2, _0805E210 - ldr r0, [r2] - ldr r3, _0805E214 - adds r0, r3 - strb r1, [r0] - ldrh r0, [r4] - cmp r0, 0 - beq _0805E218 - mov r0, r10 - movs r1, 0 - bl sub_8045028 - lsls r0, 24 - cmp r0, 0 - bne _0805E2B0 - movs r0, 0xF - bl sub_803E46C - b _0805E2B0 - .align 2, 0 -_0805E210: .4byte gUnknown_203B418 -_0805E214: .4byte 0x0000066d -_0805E218: - movs r0, 0xF - bl sub_803E46C - bl _0805D980 -_0805E222: - movs r0, 0xF - bl sub_803E46C - bl sub_8047158 - movs r2, 0 - lsrs r0, r6, 8 - lsls r0, 24 - cmp r0, 0 - bne _0805E238 - movs r2, 0x1 -_0805E238: - lsrs r1, r6, 16 - lsls r1, 24 - lsrs r1, 24 - adds r0, r2, 0 - bl ShowFieldMenu - bl sub_80048D0 - bl sub_8004914 - ldr r1, _0805E294 - movs r0, 0 - strb r0, [r1] - movs r0, 0 - ldr r5, [sp, 0x18] - strb r0, [r5] - bl sub_804AA60 - bl sub_8044B28 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805E2B0 - ldrh r0, [r4] - cmp r0, 0 - beq _0805E29C - cmp r0, 0x2B - bne _0805E27E - ldr r2, _0805E298 - ldr r0, [r2] - movs r3, 0x1 - strb r3, [r0, 0x4] - ldr r0, [r2] - strb r3, [r0, 0x3] -_0805E27E: - ldr r5, [sp, 0x1C] - ldrh r0, [r5] - cmp r0, 0x2E - bne _0805E2B0 - ldr r2, _0805E298 - ldr r0, [r2] - movs r3, 0x1 - strb r3, [r0, 0x4] - ldr r0, [r2] - strb r1, [r0, 0x3] - b _0805E2B0 - .align 2, 0 -_0805E294: .4byte gUnknown_202F22D -_0805E298: .4byte gUnknown_203B418 -_0805E29C: - movs r0, 0xF - bl sub_803E46C - ldr r5, _0805E2C0 - ldr r0, [r5] - ldrb r0, [r0, 0x4] - cmp r0, 0 - bne _0805E2B0 - bl _0805D980 -_0805E2B0: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0805E2C0: .4byte gUnknown_203B418 - thumb_func_end sub_805D8C8 - - thumb_func_start sub_805E2C4 -sub_805E2C4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - str r0, [sp, 0x10] - ldr r0, _0805E47C - ldr r1, [r0] - ldr r0, _0805E480 - adds r0, r1, r0 - str r0, [sp, 0x14] - ldr r0, _0805E484 - ldrb r0, [r0] - cmp r0, 0 - bne _0805E2E6 - b _0805E4C4 -_0805E2E6: - movs r1, 0 - str r1, [sp, 0x18] - mov r7, sp - ldr r2, _0805E488 - mov r10, r2 -_0805E2F0: - ldrh r0, [r7] - ldr r3, _0805E48C - adds r1, r3, 0 - ands r1, r0 - ldr r0, [sp] - mov r4, r10 - ands r0, r4 - orrs r0, r1 - str r0, [sp] - ldrh r1, [r7] - mov r2, r10 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - ldrh r0, [r7] - ldr r5, _0805E490 - adds r1, r5, 0 - ands r1, r0 - mov r0, r10 - ands r0, r2 - orrs r0, r1 - str r0, [sp] - ldrh r2, [r7] - mov r1, r10 - ands r1, r0 - orrs r1, r2 - str r1, [sp] - ldrh r2, [r7] - ldr r0, _0805E494 - ands r0, r2 - mov r3, r10 - ands r3, r1 - orrs r3, r0 - str r3, [sp] - ldrh r1, [r7] - movs r0, 0x80 - lsls r0, 3 - orrs r0, r1 - movs r6, 0 - orrs r0, r6 - mov r2, r10 - ands r2, r3 - orrs r2, r0 - str r2, [sp] - ldrh r0, [r7] - ldr r3, _0805E498 - adds r1, r3, 0 - ands r1, r0 - mov r0, r10 - ands r0, r2 - orrs r0, r1 - str r0, [sp] - ldrh r1, [r7] - mov r2, r10 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - ldrh r0, [r7] - ldr r4, _0805E49C - adds r1, r4, 0 - ands r1, r0 - mov r0, r10 - ands r0, r2 - orrs r0, r1 - str r0, [sp] - ldrh r1, [r7] - mov r2, r10 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - ldrh r1, [r7] - ldr r0, _0805E4A0 - ands r0, r1 - mov r1, r10 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - ldrh r2, [r7] - mov r0, r10 - ands r0, r1 - orrs r0, r2 - str r0, [sp] - ldr r1, _0805E4A4 - ldr r5, [sp, 0x18] - lsls r0, r5, 3 - adds r0, r1 - mov r12, r0 - ldrb r1, [r0, 0x4] - negs r0, r1 - orrs r0, r1 - asrs r1, r0, 31 - movs r0, 0x8 - ands r1, r0 - mov r6, r12 - ldrb r0, [r6, 0x5] - cmp r0, 0 - beq _0805E3B4 - adds r1, 0x10 -_0805E3B4: - movs r0, 0x1F - ands r1, r0 - lsls r1, 9 - ldrh r3, [r7, 0x2] - ldr r2, _0805E4A8 - adds r0, r2, 0 - ands r3, r0 - orrs r3, r1 - ldr r4, _0805E4A0 - ands r3, r4 - strh r3, [r7, 0x2] - ldr r2, _0805E4AC - ldrh r0, [r7, 0x4] - movs r5, 0xFC - lsls r5, 8 - adds r1, r5, 0 - ands r0, r1 - orrs r0, r2 - movs r6, 0 - orrs r0, r6 - movs r1, 0x80 - lsls r1, 4 - ldr r2, _0805E494 - ands r0, r2 - orrs r0, r1 - orrs r0, r6 - ldr r4, _0805E4B0 - mov r9, r4 - ands r0, r4 - strh r0, [r7, 0x4] - ldrh r4, [r7, 0x6] - ldr r5, _0805E4B4 - adds r0, r5, 0 - ands r4, r0 - ldr r6, _0805E4B8 - adds r0, r6, 0 - ands r4, r0 - strh r4, [r7, 0x6] - mov r0, r12 - movs r1, 0 - ldrsh r5, [r0, r1] - lsls r2, r5, 2 - adds r2, r5 - lsls r2, 1 - ldr r6, _0805E4BC - mov r8, r6 - movs r1, 0 - ldrsh r0, [r6, r1] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - movs r6, 0x7 - ands r0, r6 - muls r0, r5 - adds r0, r2 - adds r0, 0x74 - ldr r1, _0805E4C0 - ands r0, r1 - movs r2, 0xFE - lsls r2, 8 - adds r1, r2, 0 - ands r3, r1 - orrs r3, r0 - strh r3, [r7, 0x2] - mov r5, r12 - movs r0, 0x2 - ldrsh r3, [r5, r0] - lsls r2, r3, 2 - adds r2, r3 - lsls r2, 1 - mov r1, r8 - movs r5, 0 - ldrsh r0, [r1, r5] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - ands r0, r6 - muls r0, r3 - adds r0, r2 - adds r0, 0x52 - mov r6, r9 - ands r0, r6 - lsls r0, 4 - movs r1, 0xF - ands r4, r1 - orrs r4, r0 - strh r4, [r7, 0x6] - mov r0, sp - adds r1, 0xF1 - movs r2, 0 - movs r3, 0 - bl AddSprite - ldr r2, [sp, 0x18] - adds r2, 0x1 - str r2, [sp, 0x18] - cmp r2, 0x3 - bgt _0805E47A - b _0805E2F0 -_0805E47A: - b _0805E6AC - .align 2, 0 -_0805E47C: .4byte gUnknown_203B418 -_0805E480: .4byte 0x000181e8 -_0805E484: .4byte gUnknown_202F22C -_0805E488: .4byte 0xffff0000 -_0805E48C: .4byte 0x0000feff -_0805E490: .4byte 0x0000fdff -_0805E494: .4byte 0x0000f3ff -_0805E498: .4byte 0x0000efff -_0805E49C: .4byte 0x0000dfff -_0805E4A0: .4byte 0x00003fff -_0805E4A4: .4byte gUnknown_8106AC8 -_0805E4A8: .4byte 0x0000c1ff -_0805E4AC: .4byte 0x00000213 -_0805E4B0: .4byte 0x00000fff -_0805E4B4: .4byte 0x0000fffe -_0805E4B8: .4byte 0x0000fffd -_0805E4BC: .4byte gUnknown_202F22E -_0805E4C0: .4byte 0x000001ff -_0805E4C4: - ldr r3, _0805E6E4 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _0805E4D0 - b _0805E6AC -_0805E4D0: - ldr r4, _0805E6E8 - adds r0, r1, r4 - ldrb r0, [r0] - str r0, [sp, 0x1C] - cmp r0, 0x7 - bls _0805E4DE - b _0805E6AC -_0805E4DE: - ldr r0, _0805E6EC - ldrb r0, [r0] - movs r7, 0x1 - cmp r0, 0 - beq _0805E4F2 - ldr r0, _0805E6F0 - ldrb r0, [r0] - cmp r0, 0 - beq _0805E4F2 - movs r7, 0x3 -_0805E4F2: - ldr r5, _0805E6F4 - mov r12, r5 - ldr r6, [sp, 0x1C] - lsls r5, r6, 1 - adds r3, r5, r6 - lsls r3, 2 - add r3, r12 - movs r0, 0 - ldrsh r4, [r3, r0] - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 1 - ldr r0, _0805E6F8 - movs r6, 0 - ldrsh r2, [r0, r6] - lsrs r0, r2, 31 - adds r2, r0 - asrs r2, 1 - movs r0, 0x7 - ands r2, r0 - adds r0, r4, 0 - muls r0, r2 - adds r0, r1 - adds r0, 0x74 - str r0, [sp, 0x20] - movs r1, 0x2 - ldrsh r0, [r3, r1] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 1 - muls r0, r2 - adds r0, r1 - adds r0, 0x52 - mov r10, r0 - str r5, [sp, 0x24] - cmp r7, 0 - bne _0805E53E - b _0805E6AC -_0805E53E: - add r6, sp, 0x8 - ldr r2, _0805E6FC - mov r8, r2 - mov r9, r7 -_0805E546: - ldrh r0, [r6] - ldr r3, _0805E700 - adds r1, r3, 0 - ands r1, r0 - ldr r0, [sp, 0x8] - mov r4, r8 - ands r0, r4 - orrs r0, r1 - str r0, [sp, 0x8] - ldrh r1, [r6] - mov r2, r8 - ands r2, r0 - orrs r2, r1 - str r2, [sp, 0x8] - ldrh r0, [r6] - ldr r5, _0805E704 - adds r1, r5, 0 - ands r1, r0 - mov r0, r8 - ands r0, r2 - orrs r0, r1 - str r0, [sp, 0x8] - ldrh r2, [r6] - mov r1, r8 - ands r1, r0 - orrs r1, r2 - str r1, [sp, 0x8] - ldrh r2, [r6] - ldr r0, _0805E708 - ands r0, r2 - mov r3, r8 - ands r3, r1 - orrs r3, r0 - str r3, [sp, 0x8] - ldrh r1, [r6] - movs r0, 0x80 - lsls r0, 3 - orrs r0, r1 - movs r1, 0 - orrs r0, r1 - mov r2, r8 - ands r2, r3 - orrs r2, r0 - str r2, [sp, 0x8] - ldrh r0, [r6] - ldr r3, _0805E70C - adds r1, r3, 0 - ands r1, r0 - mov r0, r8 - ands r0, r2 - orrs r0, r1 - str r0, [sp, 0x8] - ldrh r1, [r6] - mov r2, r8 - ands r2, r0 - orrs r2, r1 - str r2, [sp, 0x8] - ldrh r0, [r6] - ldr r4, _0805E710 - adds r1, r4, 0 - ands r1, r0 - mov r0, r8 - ands r0, r2 - orrs r0, r1 - str r0, [sp, 0x8] - ldrh r1, [r6] - mov r2, r8 - ands r2, r0 - orrs r2, r1 - str r2, [sp, 0x8] - ldrh r1, [r6] - ldr r0, _0805E714 - ands r0, r1 - mov r1, r8 - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x8] - ldrh r2, [r6] - mov r0, r8 - ands r0, r1 - orrs r0, r2 - str r0, [sp, 0x8] - ldr r5, [sp, 0x24] - ldr r1, [sp, 0x1C] - adds r0, r5, r1 - lsls r2, r0, 2 - ldr r3, _0805E6F4 - adds r7, r2, r3 - ldrb r1, [r7, 0x8] - negs r0, r1 - orrs r0, r1 - asrs r1, r0, 31 - movs r0, 0x8 - ands r1, r0 - ldrb r0, [r7, 0x9] - cmp r0, 0 - beq _0805E60A - adds r1, 0x10 -_0805E60A: - movs r0, 0x1F - ands r1, r0 - lsls r1, 9 - ldrh r3, [r6, 0x2] - ldr r4, _0805E718 - adds r0, r4, 0 - ands r3, r0 - orrs r3, r1 - ldr r5, _0805E714 - ands r3, r5 - strh r3, [r6, 0x2] - ldr r1, _0805E71C - adds r0, r2, r1 - ldr r2, [r0] - ldr r0, _0805E720 - ands r2, r0 - ldrh r0, [r6, 0x4] - movs r4, 0xFC - lsls r4, 8 - adds r1, r4, 0 - ands r0, r1 - orrs r0, r2 - movs r1, 0x80 - lsls r1, 4 - ldr r5, _0805E708 - ands r0, r5 - orrs r0, r1 - movs r1, 0 - orrs r0, r1 - movs r2, 0xF - mov r12, r2 - ldr r4, _0805E724 - ands r0, r4 - strh r0, [r6, 0x4] - ldrh r1, [r6, 0x6] - ldr r5, _0805E728 - adds r0, r5, 0 - ands r1, r0 - ldr r2, _0805E72C - adds r0, r2, 0 - ands r1, r0 - ldr r0, _0805E730 - ldr r5, [sp, 0x20] - ands r0, r5 - movs r5, 0xFE - lsls r5, 8 - adds r2, r5, 0 - ands r3, r2 - orrs r3, r0 - strh r3, [r6, 0x2] - mov r0, r10 - ands r0, r4 - lsls r0, 4 - mov r2, r12 - ands r1, r2 - orrs r1, r0 - strh r1, [r6, 0x6] - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 1 - movs r2, 0 - movs r3, 0 - bl AddSprite - movs r3, 0 - ldrsh r0, [r7, r3] - lsls r0, 2 - ldr r4, [sp, 0x20] - adds r4, r0 - str r4, [sp, 0x20] - movs r5, 0x2 - ldrsh r0, [r7, r5] - lsls r0, 2 - add r10, r0 - movs r0, 0x1 - negs r0, r0 - add r9, r0 - mov r1, r9 - cmp r1, 0 - beq _0805E6AC - b _0805E546 -_0805E6AC: - ldr r4, _0805E734 - ldrb r0, [r4] - cmp r0, 0 - beq _0805E6D4 - ldr r2, [sp, 0x14] - adds r2, 0x34 - ldr r3, [sp, 0x14] - adds r3, 0x33 - ldrb r1, [r3] - ldrb r0, [r2] - cmp r0, r1 - beq _0805E6D4 - strb r1, [r2] - ldr r0, [sp, 0x10] - adds r0, 0x4 - ldrb r1, [r3] - ldrb r3, [r4] - movs r2, 0 - bl sub_804A728 -_0805E6D4: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0805E6E4: .4byte 0x0001821a -_0805E6E8: .4byte 0x0001821b -_0805E6EC: .4byte gUnknown_202F231 -_0805E6F0: .4byte gUnknown_202F230 -_0805E6F4: .4byte gUnknown_8106AE8 -_0805E6F8: .4byte gUnknown_202F22E -_0805E6FC: .4byte 0xffff0000 -_0805E700: .4byte 0x0000feff -_0805E704: .4byte 0x0000fdff -_0805E708: .4byte 0x0000f3ff -_0805E70C: .4byte 0x0000efff -_0805E710: .4byte 0x0000dfff -_0805E714: .4byte 0x00003fff -_0805E718: .4byte 0x0000c1ff -_0805E71C: .4byte gUnknown_8106AEC -_0805E720: .4byte 0x000003ff -_0805E724: .4byte 0x00000fff -_0805E728: .4byte 0x0000fffe -_0805E72C: .4byte 0x0000fffd -_0805E730: .4byte 0x000001ff -_0805E734: .4byte gUnknown_202F22D - thumb_func_end sub_805E2C4 - - thumb_func_start sub_805E738 -sub_805E738: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r6, r0, 0 - ldr r1, [r6, 0x70] - adds r0, r1, 0 - adds r0, 0xE8 - ldrb r0, [r0] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _0805E7F6 - movs r0, 0 - mov r8, r0 - adds r1, 0x46 - mov r10, r1 -_0805E75E: - movs r1, 0 - mov r9, r1 - mov r3, r10 - ldrb r5, [r3] - adds r5, 0x1 - movs r7, 0x1 -_0805E76A: - movs r0, 0x7 - ands r5, r0 - movs r1, 0x4 - ldrsh r0, [r6, r1] - ldr r1, _0805E7E8 - lsls r2, r5, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r6, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - adds r4, r0, 0 - ldr r0, [r4, 0x10] - cmp r0, 0 - beq _0805E7B8 - bl sub_80450F8 - cmp r0, 0x1 - bne _0805E7B8 - ldr r1, [r4, 0x10] - ldr r4, [r1, 0x70] - adds r0, r6, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - beq _0805E7B8 - mov r0, r8 - cmp r0, 0 - bne _0805E7C6 - ldrb r0, [r4, 0x6] - cmp r0, 0 - bne _0805E7C6 -_0805E7B8: - adds r7, 0x1 - adds r5, 0x1 - cmp r7, 0x7 - ble _0805E76A - mov r1, r9 - cmp r1, 0 - beq _0805E7EC -_0805E7C6: - ldr r1, [r6, 0x70] - movs r2, 0x7 - adds r0, r5, 0 - ands r0, r2 - adds r1, 0x46 - strb r0, [r1] - adds r0, r6, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - adds r2, r5, 0 - bl sub_806CDD4 - b _0805E7F6 - .align 2, 0 -_0805E7E8: .4byte gUnknown_80F4448 -_0805E7EC: - movs r3, 0x1 - add r8, r3 - mov r0, r8 - cmp r0, 0 - ble _0805E75E -_0805E7F6: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_805E738 - - thumb_func_start sub_805E804 -sub_805E804: - push {r4,r5,lr} - ldr r2, _0805E864 - ldr r1, [r2] - ldr r5, _0805E868 - adds r3, r1, r5 - ldr r4, _0805E86C - adds r1, r4 - ldrb r0, [r3] - ldrb r1, [r1] - orrs r0, r1 - movs r1, 0 - strb r0, [r3] - ldr r0, [r2] - adds r0, r4 - strb r1, [r0] - ldr r0, [r2] - adds r0, r5 - ldrb r0, [r0] - cmp r0, 0 - beq _0805E85C - ldr r0, _0805E870 - ldrh r1, [r0] - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0805E85C - adds r4, r2, 0 -_0805E83E: - movs r0, 0x54 - bl sub_803E46C - ldr r0, _0805E864 - ldr r0, [r0] - ldr r1, _0805E868 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0805E85C - ldr r0, _0805E870 - ldrh r0, [r0] - ands r0, r4 - cmp r0, 0 - bne _0805E83E -_0805E85C: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0805E864: .4byte gUnknown_203B418 -_0805E868: .4byte 0x0000066d -_0805E86C: .4byte 0x0000066c -_0805E870: .4byte gUnknown_20255F0 - thumb_func_end sub_805E804 - - thumb_func_start sub_805E874 -sub_805E874: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - ldr r0, _0805E90C - ldr r4, [r0] - bl sub_8083600 - mov r9, r0 - ldr r0, [r0, 0x70] - adds r0, 0x46 - ldrb r0, [r0] - str r0, [sp, 0x18] - mov r0, r9 - movs r1, 0x4 - ldrsh r0, [r0, r1] - mov r10, r0 - mov r2, r9 - movs r3, 0x6 - ldrsh r2, [r2, r3] - str r2, [sp, 0x1C] - adds r1, r2, 0 - bl sub_804954C - adds r5, r0, 0 - ldr r1, _0805E910 - ldr r2, [sp, 0x18] - lsls r0, r2, 2 - adds r0, r1 - movs r3, 0 - ldrsh r1, [r0, r3] - mov r2, r10 - adds r7, r2, r1 - movs r3, 0x2 - ldrsh r0, [r0, r3] - ldr r1, [sp, 0x1C] - adds r6, r1, r0 - ldr r2, _0805E914 - adds r4, r2 - ldrb r0, [r4] - cmp r0, 0 - beq _0805E906 - ldr r0, [r5, 0x14] - cmp r0, 0 - bne _0805E906 - mov r0, r9 - mov r1, r10 - ldr r2, [sp, 0x1C] - bl sub_805EC2C - lsls r0, 24 - cmp r0, 0 - bne _0805E906 - mov r0, r9 - ldr r1, [sp, 0x18] - bl sub_8070F14 - lsls r0, 24 - cmp r0, 0 - beq _0805E906 - ldrb r3, [r5, 0x9] - str r3, [sp, 0x20] - cmp r3, 0xFF - bne _0805E918 - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_804954C - ldrb r0, [r0, 0x9] - cmp r0, 0xFF - beq _0805E922 -_0805E906: - movs r0, 0 - b _0805EC1A - .align 2, 0 -_0805E90C: .4byte gUnknown_203B418 -_0805E910: .4byte gUnknown_80F4448 -_0805E914: .4byte 0x0000066c -_0805E918: - ldrh r1, [r5] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0805E906 -_0805E922: - movs r4, 0x1 - negs r4, r4 - ldr r7, _0805EA54 - movs r5, 0x80 - lsls r5, 2 - adds r6, r5, 0 -_0805E92E: - ldr r0, [sp, 0x18] - adds r1, r0, r4 - movs r5, 0x7 - ands r1, r5 - lsls r1, 2 - adds r1, r7 - movs r2, 0 - ldrsh r0, [r1, r2] - add r0, r10 - movs r3, 0x2 - ldrsh r1, [r1, r3] - ldr r2, [sp, 0x1C] - adds r1, r2, r1 - bl sub_804954C - adds r1, r0, 0 - ldr r0, [r1, 0x10] - cmp r0, 0 - bne _0805E906 - ldrh r0, [r1] - ands r0, r6 - cmp r0, 0 - bne _0805E906 - adds r4, 0x1 - cmp r4, 0x1 - ble _0805E92E - ldr r4, _0805EA54 - ldr r3, [sp, 0x18] - adds r3, 0x3 - ands r3, r5 - lsls r3, 2 - adds r3, r4 - movs r1, 0 - ldrsh r0, [r3, r1] - add r0, r10 - str r0, [sp] - ldr r2, [sp, 0x18] - adds r2, 0x4 - ands r2, r5 - lsls r2, 2 - adds r2, r4 - movs r1, 0 - ldrsh r0, [r2, r1] - add r0, r10 - str r0, [sp, 0x4] - ldr r1, [sp, 0x18] - adds r1, 0x5 - ands r1, r5 - lsls r1, 2 - adds r1, r4 - movs r4, 0 - ldrsh r0, [r1, r4] - add r0, r10 - str r0, [sp, 0x8] - add r4, sp, 0xC - movs r5, 0x2 - ldrsh r0, [r3, r5] - ldr r3, [sp, 0x1C] - adds r0, r3, r0 - str r0, [sp, 0xC] - movs r5, 0x2 - ldrsh r0, [r2, r5] - adds r0, r3, r0 - str r0, [r4, 0x4] - movs r2, 0x2 - ldrsh r0, [r1, r2] - adds r0, r3, r0 - str r0, [r4, 0x8] - movs r3, 0x1 - negs r3, r3 - mov r8, r3 -_0805E9BC: - movs r4, 0x1 - negs r4, r4 - mov r7, r10 - add r7, r8 - ldr r6, [sp, 0x1C] - subs r6, 0x1 -_0805E9C8: - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_804954C - adds r5, r0, 0 - ldr r0, [r5, 0x14] - cmp r0, 0 - beq _0805EA14 - movs r2, 0 - ldr r0, [sp] - cmp r7, r0 - bne _0805E9E6 - ldr r0, [sp, 0xC] - cmp r6, r0 - beq _0805EA04 -_0805E9E6: - adds r2, 0x1 - cmp r2, 0x2 - bgt _0805EA04 - lsls r1, r2, 2 - mov r3, sp - adds r0, r3, r1 - ldr r0, [r0] - cmp r7, r0 - bne _0805E9E6 - mov r0, sp - adds r0, r1 - adds r0, 0xC - ldr r0, [r0] - cmp r6, r0 - bne _0805E9E6 -_0805EA04: - cmp r2, 0x3 - bne _0805EA14 - ldr r0, [r5, 0x14] - bl sub_80450F8 - cmp r0, 0x3 - bne _0805EA14 - b _0805E906 -_0805EA14: - movs r0, 0x1 - ldr r1, [sp, 0x18] - ands r0, r1 - cmp r0, 0 - beq _0805EA60 - ldr r0, [r5, 0x14] - cmp r0, 0 - beq _0805EA94 - bl sub_80450F8 - cmp r0, 0x2 - bne _0805EA94 - ldr r0, [r5, 0x14] - bl sub_80450F8 - cmp r0, 0x2 - bne _0805EA94 - ldr r0, [r5, 0x14] - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - beq _0805EA42 - b _0805E906 -_0805EA42: - ldr r0, _0805EA58 - ldr r0, [r0] - ldr r2, _0805EA5C - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0805EA94 - b _0805E906 - .align 2, 0 -_0805EA54: .4byte gUnknown_80F4448 -_0805EA58: .4byte gUnknown_203B418 -_0805EA5C: .4byte 0x0001820f -_0805EA60: - mov r3, r8 - cmp r3, 0 - beq _0805EA6A - cmp r4, 0 - bne _0805EA94 -_0805EA6A: - ldr r0, [r5, 0x14] - cmp r0, 0 - beq _0805EA94 - bl sub_80450F8 - cmp r0, 0x2 - bne _0805EA94 - ldr r0, [r5, 0x14] - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - beq _0805EA84 - b _0805E906 -_0805EA84: - ldr r0, _0805EAA0 - ldr r0, [r0] - ldr r1, _0805EAA4 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0805EA94 - b _0805E906 -_0805EA94: - mov r2, r8 - cmp r2, 0 - beq _0805EAA8 - cmp r4, 0 - bne _0805EAD6 - b _0805EAAC - .align 2, 0 -_0805EAA0: .4byte gUnknown_203B418 -_0805EAA4: .4byte 0x0001820f -_0805EAA8: - cmp r4, 0 - beq _0805EAD6 -_0805EAAC: - ldr r0, [sp, 0x4] - cmp r0, r7 - bne _0805EAB8 - ldr r0, [sp, 0x10] - cmp r0, r6 - beq _0805EAD6 -_0805EAB8: - mov r0, r9 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_805EC2C - lsls r0, 24 - cmp r0, 0 - bne _0805EAD6 - ldr r3, [sp, 0x20] - cmp r3, 0xFF - beq _0805EAD6 - ldrb r5, [r5, 0x9] - cmp r3, r5 - beq _0805EAD6 - b _0805E906 -_0805EAD6: - adds r6, 0x1 - adds r4, 0x1 - cmp r4, 0x1 - bgt _0805EAE0 - b _0805E9C8 -_0805EAE0: - movs r4, 0x1 - add r8, r4 - mov r5, r8 - cmp r5, 0x1 - bgt _0805EAEC - b _0805E9BC -_0805EAEC: - movs r0, 0x1 - ldr r1, [sp, 0x18] - ands r0, r1 - cmp r0, 0 - beq _0805EAF8 - b _0805EC18 -_0805EAF8: - cmp r1, 0 - beq _0805EB00 - cmp r1, 0x4 - bne _0805EB8C -_0805EB00: - mov r4, r10 - subs r4, 0x1 - ldr r6, [sp, 0x1C] - subs r6, 0x1 - mov r0, r9 - adds r1, r4, 0 - adds r2, r6, 0 - bl sub_805EC2C - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - mov r0, r9 - adds r1, r4, 0 - ldr r2, [sp, 0x1C] - bl sub_805EC2C - lsls r0, 24 - lsrs r7, r0, 24 - ldr r5, [sp, 0x1C] - adds r5, 0x1 - mov r0, r9 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_805EC2C - lsls r0, 24 - lsrs r0, 24 - adds r2, r6, 0 - cmp r7, 0 - bne _0805EB4C - mov r3, r8 - cmp r3, 0 - beq _0805EB46 - b _0805E906 -_0805EB46: - cmp r7, r0 - beq _0805EB4C - b _0805E906 -_0805EB4C: - mov r4, r10 - adds r4, 0x1 - mov r0, r9 - adds r1, r4, 0 - bl sub_805EC2C - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - mov r0, r9 - adds r1, r4, 0 - ldr r2, [sp, 0x1C] - bl sub_805EC2C - lsls r0, 24 - lsrs r7, r0, 24 - mov r0, r9 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_805EC2C - lsls r0, 24 - lsrs r0, 24 - cmp r7, 0 - bne _0805EC18 - mov r4, r8 - cmp r4, 0 - beq _0805EB86 - b _0805E906 -_0805EB86: - cmp r7, r0 - beq _0805EC18 - b _0805E906 -_0805EB8C: - mov r6, r10 - subs r6, 0x1 - ldr r4, [sp, 0x1C] - subs r4, 0x1 - mov r0, r9 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_805EC2C - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - mov r0, r9 - mov r1, r10 - adds r2, r4, 0 - bl sub_805EC2C - lsls r0, 24 - lsrs r7, r0, 24 - mov r5, r10 - adds r5, 0x1 - mov r0, r9 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_805EC2C - lsls r0, 24 - lsrs r0, 24 - adds r1, r6, 0 - cmp r7, 0 - bne _0805EBD8 - mov r2, r8 - cmp r2, 0 - beq _0805EBD2 - b _0805E906 -_0805EBD2: - cmp r7, r0 - beq _0805EBD8 - b _0805E906 -_0805EBD8: - ldr r4, [sp, 0x1C] - adds r4, 0x1 - mov r0, r9 - adds r2, r4, 0 - bl sub_805EC2C - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - mov r0, r9 - mov r1, r10 - adds r2, r4, 0 - bl sub_805EC2C - lsls r0, 24 - lsrs r7, r0, 24 - mov r0, r9 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_805EC2C - lsls r0, 24 - lsrs r0, 24 - cmp r7, 0 - bne _0805EC18 - mov r3, r8 - cmp r3, 0 - beq _0805EC12 - b _0805E906 -_0805EC12: - cmp r7, r0 - beq _0805EC18 - b _0805E906 -_0805EC18: - movs r0, 0x1 -_0805EC1A: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805E874 - - thumb_func_start sub_805EC2C -sub_805EC2C: - push {lr} - sub sp, 0x4 - lsls r1, 16 - lsls r2, 16 - lsrs r1, 16 - orrs r1, r2 - str r1, [sp] - mov r1, sp - bl sub_8070564 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_805EC2C - - thumb_func_start sub_805EC4C -sub_805EC4C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r5, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - ldr r7, [r5, 0x70] - ldr r1, _0805ECC8 - adds r0, r7, 0 - adds r0, 0x46 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0] - ldrh r3, [r5, 0x4] - adds r1, r3 - lsls r1, 16 - ldrh r0, [r0, 0x2] - ldrh r3, [r5, 0x6] - adds r0, r3 - lsls r0, 16 - lsrs r2, r1, 16 - orrs r2, r0 - lsls r0, r2, 16 - asrs r0, 16 - asrs r1, r2, 16 - bl sub_804954C - ldr r0, [r0, 0x10] - mov r8, r0 - cmp r0, 0 - bne _0805EC94 - b _0805ED96 -_0805EC94: - mov r0, r8 - bl sub_80450F8 - cmp r0, 0x1 - bne _0805ED96 - mov r0, r8 - ldr r6, [r0, 0x70] - ldrb r0, [r6, 0x6] - cmp r0, 0 - beq _0805ECDC - ldrb r0, [r6, 0x8] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _0805ECDC - adds r0, r6, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _0805ECC2 - cmp r0, 0x47 - bne _0805ECCC -_0805ECC2: - movs r0, 0x1 - b _0805ECCE - .align 2, 0 -_0805ECC8: .4byte gUnknown_80F4448 -_0805ECCC: - movs r0, 0 -_0805ECCE: - cmp r0, 0 - bne _0805ECDC - adds r0, r6, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0805ED96 -_0805ECDC: - adds r0, r7, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0805ED96 - cmp r0, 0x1 - beq _0805ED96 - cmp r0, 0x7 - beq _0805ED96 - cmp r0, 0x5 - beq _0805ED96 - cmp r0, 0x3 - beq _0805ED96 - cmp r0, 0x4 - beq _0805ED96 - adds r0, r6, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0805ED96 - cmp r0, 0x1 - beq _0805ED96 - cmp r0, 0x7 - beq _0805ED96 - cmp r0, 0x5 - beq _0805ED96 - cmp r0, 0x3 - beq _0805ED96 - cmp r0, 0x4 - beq _0805ED96 - adds r0, r7, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - beq _0805ED96 - adds r0, r6, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - beq _0805ED96 - adds r0, r6, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0 - beq _0805ED3E - cmp r0, 0x2 - beq _0805ED3E - cmp r0, 0x4 - bne _0805ED96 -_0805ED3E: - adds r0, r7, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0 - beq _0805ED50 - cmp r0, 0x2 - beq _0805ED50 - cmp r0, 0x4 - bne _0805ED96 -_0805ED50: - mov r0, r8 - movs r1, 0 - bl sub_80570F4 - lsls r0, 24 - cmp r0, 0 - bne _0805ED96 - adds r4, r7, 0 - adds r4, 0x46 - ldrb r1, [r4] - adds r0, r5, 0 - bl sub_8070F80 - lsls r0, 24 - mov r9, r4 - cmp r0, 0 - beq _0805ED96 - mov r1, r10 - cmp r1, 0 - beq _0805EDA0 - adds r1, r5, 0x4 - mov r0, r8 - bl sub_807049C - lsls r0, 24 - cmp r0, 0 - beq _0805EDA0 - ldr r0, _0805ED9C - ldr r1, [r0] - movs r0, 0 - movs r2, 0 - bl sub_8052B8C - cmp r0, 0 - bne _0805EDA0 -_0805ED96: - movs r0, 0 - b _0805EE1E - .align 2, 0 -_0805ED9C: .4byte gUnknown_8100208 -_0805EDA0: - adds r0, r7, 0 - adds r0, 0x44 - movs r1, 0x2 - bl sub_8044C94 - ldr r0, _0805EDC0 - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0805EDC4 - adds r1, r7, 0 - adds r1, 0x48 - movs r0, 0 - b _0805EDCA - .align 2, 0 -_0805EDC0: .4byte gUnknown_20255F0 -_0805EDC4: - adds r1, r7, 0 - adds r1, 0x48 - movs r0, 0x1 -_0805EDCA: - strb r0, [r1] - ldrh r0, [r7] - movs r2, 0x80 - lsls r2, 8 - adds r5, r2, 0 - movs r4, 0 - orrs r0, r5 - strh r0, [r7] - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x2 - bl sub_8044C94 - adds r0, r6, 0 - adds r0, 0x48 - strb r4, [r0] - mov r3, r9 - ldrb r0, [r3] - adds r0, 0x4 - movs r1, 0x7 - ands r0, r1 - adds r1, r6, 0 - adds r1, 0x46 - strb r0, [r1] - ldrh r0, [r6] - orrs r0, r5 - strh r0, [r6] - mov r0, r8 - ldrh r1, [r0, 0x4] - movs r2, 0xB6 - lsls r2, 1 - adds r0, r6, r2 - strh r1, [r0] - mov r3, r8 - ldrh r0, [r3, 0x6] - adds r2, 0x2 - adds r1, r6, r2 - strh r0, [r1] - ldr r0, _0805EE2C - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0xE] -_0805EE1E: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805EE2C: .4byte gUnknown_203B418 - thumb_func_end sub_805EC4C - - thumb_func_start sub_805EE30 -sub_805EE30: - push {r4-r7,lr} - mov r7, r8 - push {r7} - bl sub_8083600 - adds r5, r0, 0 - cmp r5, 0 - bne _0805EE42 - b _0805EF52 -_0805EE42: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _0805EE4E - b _0805EF52 -_0805EE4E: - adds r0, r5, 0 - bl sub_8045128 - adds r4, r0, 0 - adds r0, r5, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _0805EE82 - ldr r0, [r5, 0x70] - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _0805EE82 - adds r0, r5, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _0805EE82 - adds r0, r5, 0x4 - bl sub_804AE84 -_0805EE82: - ldrh r1, [r4] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _0805EE96 - ldr r0, _0805EEB0 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x1] -_0805EE96: - ldr r4, [r4, 0x14] - cmp r4, 0 - beq _0805EF52 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x5 - bhi _0805EF52 - lsls r0, 2 - ldr r1, _0805EEB4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0805EEB0: .4byte gUnknown_203B418 -_0805EEB4: .4byte _0805EEB8 - .align 2, 0 -_0805EEB8: - .4byte _0805EF52 - .4byte _0805EF52 - .4byte _0805EED0 - .4byte _0805EF2A - .4byte _0805EF52 - .4byte _0805EF52 -_0805EED0: - adds r0, r4, 0 - bl sub_8045104 - adds r6, r0, 0 - movs r0, 0 - mov r8, r0 - movs r7, 0 - adds r0, r5, 0 - movs r1, 0x13 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _0805EF00 - adds r1, r4, 0 - adds r1, 0x20 - ldrb r0, [r1] - cmp r0, 0 - bne _0805EF00 - movs r0, 0x1 - strb r0, [r1] - bl sub_8049ED4 - movs r7, 0x1 -_0805EF00: - ldrb r0, [r6, 0x1] - cmp r0, 0 - beq _0805EF18 - cmp r0, 0x1 - beq _0805EF52 - cmp r0, 0x2 - bne _0805EF12 - movs r1, 0x1 - mov r8, r1 -_0805EF12: - mov r0, r8 - cmp r0, 0 - beq _0805EF52 -_0805EF18: - cmp r7, 0 - bne _0805EF52 - adds r1, r5, 0x4 - adds r0, r5, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_807FE9C - b _0805EF52 -_0805EF2A: - adds r0, r4, 0 - bl sub_8045108 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0805EF44 - adds r0, r5, 0x4 - movs r1, 0x1 - bl sub_8045DB4 - b _0805EF52 -_0805EF44: - ldr r0, _0805EF5C - ldr r0, [r0] - movs r1, 0xB8 - lsls r1, 3 - adds r0, r1 - movs r1, 0x4 - str r1, [r0] -_0805EF52: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0805EF5C: .4byte gUnknown_203B418 - thumb_func_end sub_805EE30 - - thumb_func_start sub_805EF60 -sub_805EF60: - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - bl sub_80696A8 - adds r4, r0, 0 - cmp r4, 0 - beq _0805EF9E - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0805EF9E - adds r0, r5, 0 - bl sub_8070BC0 - lsls r0, 24 - cmp r0, 0 - beq _0805EF9E - ldr r1, [r4, 0x70] - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _0805EFA2 - adds r0, r1, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0805EFA2 - ldrb r0, [r1, 0x8] - cmp r0, 0x1 - beq _0805EFA2 -_0805EF9E: - movs r0, 0 - b _0805EFAE -_0805EFA2: - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x13 - bl sub_8044C94 - movs r0, 0x1 -_0805EFAE: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805EF60 - - thumb_func_start sub_805EFB4 -sub_805EFB4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - lsls r1, 24 - lsrs r7, r1, 24 - bl sub_8083654 - adds r6, r0, 0 - cmp r7, 0 - beq _0805EFE2 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x4 - bne _0805EFE2 - adds r0, r6, 0 - adds r0, 0x46 - ldrb r1, [r0] - adds r1, 0x4 - movs r2, 0x7 - ands r1, r2 - strb r1, [r0] - b _0805F020 -_0805EFE2: - adds r0, r6, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - bne _0805F020 - movs r0, 0x8 - bl sub_8084100 - adds r4, r0, 0 - movs r5, 0 -_0805EFF6: - cmp r7, 0 - bne _0805F008 - mov r0, r8 - adds r1, r4, 0 - bl sub_8070D6C - lsls r0, 24 - cmp r0, 0 - beq _0805F014 -_0805F008: - movs r0, 0x7 - ands r4, r0 - adds r0, r6, 0 - adds r0, 0x46 - strb r4, [r0] - b _0805F020 -_0805F014: - adds r4, 0x1 - movs r0, 0x7 - ands r4, r0 - adds r5, 0x1 - cmp r5, 0x7 - ble _0805EFF6 -_0805F020: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_805EFB4 - - thumb_func_start sub_805F02C -sub_805F02C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - ldr r5, _0805F058 - ldr r0, [r5] - adds r0, 0xBC - ldr r7, [r0] - bl sub_8083600 - mov r9, r0 - ldr r0, [r7, 0x70] - mov r8, r0 - mov r1, r9 - ldr r4, [r1, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0805F060 - ldr r0, _0805F05C - b _0805F08E - .align 2, 0 -_0805F058: .4byte gUnknown_203B418 -_0805F05C: .4byte gUnknown_80F9BD8 -_0805F060: - movs r0, 0x2 - bl sub_8047084 - lsls r0, 24 - cmp r0, 0 - bne _0805F076 - bl sub_807EF48 - lsls r0, 24 - cmp r0, 0 - beq _0805F080 -_0805F076: - ldr r0, _0805F07C - b _0805F08E - .align 2, 0 -_0805F07C: .4byte gUnknown_80F9C08 -_0805F080: - ldr r2, [r5] - ldr r3, _0805F098 - adds r0, r2, r3 - ldrb r1, [r0] - cmp r1, 0 - beq _0805F0A0 - ldr r0, _0805F09C -_0805F08E: - ldr r1, [r0] - adds r0, r7, 0 - bl sub_805239C - b _0805F184 - .align 2, 0 -_0805F098: .4byte 0x0000066e -_0805F09C: .4byte gUnknown_80F9C2C -_0805F0A0: - ldr r5, _0805F114 - adds r0, r2, r5 - strb r1, [r0] - movs r0, 0x1 - mov r2, r8 - strb r0, [r2, 0x7] - strb r1, [r4, 0x7] - movs r6, 0 - movs r3, 0x44 - add r3, r8 - mov r10, r3 - adds r5, r4, 0 - adds r5, 0x44 - str r5, [sp] - adds r2, 0x64 - str r2, [sp, 0x4] - adds r4, 0x64 - str r4, [sp, 0x8] - ldr r3, _0805F118 - movs r2, 0x1 -_0805F0C8: - movs r0, 0x64 - muls r0, r6 - ldr r1, _0805F11C - adds r0, r1 - ldr r1, [r3] - adds r4, r1, r0 - movs r5, 0 - ldrb r1, [r4] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0805F12A - movs r1, 0xA - ldrsh r0, [r4, r1] - str r2, [sp, 0xC] - str r3, [sp, 0x10] - bl sub_806A538 - lsls r0, 24 - ldr r2, [sp, 0xC] - ldr r3, [sp, 0x10] - cmp r0, 0 - bne _0805F102 - movs r5, 0xA - ldrsh r1, [r4, r5] - movs r0, 0x58 - muls r1, r0 - ldr r0, [r3] - adds r5, r0, r1 -_0805F102: - mov r0, r8 - ldrb r0, [r0, 0xA] - cmp r6, r0 - bne _0805F120 - strb r2, [r4, 0x2] - cmp r5, 0 - beq _0805F12A - strb r2, [r5, 0x2] - b _0805F12A - .align 2, 0 -_0805F114: .4byte 0x00000679 -_0805F118: .4byte gUnknown_203B45C -_0805F11C: .4byte 0x00008df8 -_0805F120: - movs r0, 0 - strb r0, [r4, 0x2] - cmp r5, 0 - beq _0805F12A - strb r0, [r5, 0x2] -_0805F12A: - adds r6, 0x1 - cmp r6, 0x3 - ble _0805F0C8 - ldr r0, _0805F194 - movs r4, 0 - str r4, [r0] - mov r1, r10 - ldr r0, [sp] - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - adds r0, r7, 0 - bl sub_803F508 - mov r0, r9 - bl sub_8041AD0 - bl sub_8083600 - bl sub_8041AE0 - ldr r0, _0805F198 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0805F19C - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - movs r0, 0 - bl sub_807EC28 - ldr r0, [sp, 0x4] - strb r4, [r0] - ldr r1, [sp, 0x8] - strb r4, [r1] - mov r0, r9 - bl sub_806A6E8 - adds r0, r7, 0 - bl sub_806A6E8 -_0805F184: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0805F194: .4byte gUnknown_203B450 -_0805F198: .4byte gUnknown_202DF98 -_0805F19C: .4byte gUnknown_80F9BB0 - thumb_func_end sub_805F02C - - thumb_func_start sub_805F1A0 -sub_805F1A0: - push {lr} - bl sub_8083654 - adds r0, 0x44 - pop {r1} - bx r1 - thumb_func_end sub_805F1A0 - - thumb_func_start sub_805F1AC -sub_805F1AC: - push {lr} - bl sub_8083654 - adds r0, 0x44 - ldrh r0, [r0] - pop {r1} - bx r1 - thumb_func_end sub_805F1AC - - thumb_func_start ShowFieldMenu -ShowFieldMenu: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - lsls r0, 24 - lsls r1, 24 - lsrs r2, r1, 24 - lsrs r0, 24 - str r0, [sp, 0xC] - ldr r0, _0805F208 - ldr r1, [r0] - movs r0, 0xB8 - lsls r0, 3 - adds r1, r0 - ldr r3, [r1] - mov r10, r3 - movs r0, 0 - str r0, [sp, 0x10] - mvns r0, r3 - lsrs r0, 31 - str r0, [sp, 0x14] - movs r0, 0x1 - negs r0, r0 - str r0, [r1] - cmp r3, 0 - blt _0805F1F8 - mov r1, r10 - str r1, [sp, 0x10] -_0805F1F8: - cmp r2, 0 - beq _0805F23C - ldr r0, _0805F20C - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 - b _0805F240 - .align 2, 0 -_0805F208: .4byte gUnknown_203B418 -_0805F20C: .4byte 0x00000137 -_0805F210: - bl sub_8083600 - movs r1, 0x1 - bl sub_806675C - b _0805F226 -_0805F21C: - bl sub_8083600 - movs r1, 0x1 - bl sub_806684C -_0805F226: - movs r0, 0x1 - bl sub_8044C10 - movs r0, 0x50 - movs r1, 0x4D - bl sub_803E708 - movs r0, 0 - bl sub_8052210 - b _0805F92A -_0805F23C: - bl sub_8083D44 -_0805F240: - mov r2, r10 - cmp r2, 0 - bge _0805F2FA - movs r0, 0x1 - bl sub_8044C10 - ldr r0, _0805F388 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - ldr r0, [sp, 0xC] - bl DrawFieldMenu - bl sub_8083600 - movs r1, 0 - bl sub_806A2BC - ldr r4, _0805F38C - ldr r5, _0805F390 - adds r6, r4, 0 - adds r6, 0x2A -_0805F26C: - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x1D - bl sub_803E46C - ldrh r1, [r5, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0805F290 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80136E0 -_0805F290: - ldrh r1, [r5, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0805F2A8 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013744 -_0805F2A8: - ldrh r1, [r5, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0805F2BC - adds r0, r4, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _0805F2D0 -_0805F2BC: - ldr r0, _0805F394 - movs r3, 0x18 - ldrsh r1, [r4, r3] - adds r1, 0x1 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x7 - beq _0805F3A8 - bl sub_8083D30 -_0805F2D0: - ldrh r1, [r5, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0805F2E0 - ldrb r0, [r6] - cmp r0, 0 - beq _0805F26C -_0805F2E0: - bl sub_8083D30 - movs r0, 0x1 - negs r0, r0 -_0805F2E8: - str r0, [sp, 0x10] - ldr r0, _0805F38C - bl AddMenuCursorSprite - movs r0, 0x1D - bl sub_803E46C - movs r1, 0x1 - str r1, [sp, 0xC] -_0805F2FA: - ldr r2, [sp, 0x10] - mov r10, r2 - cmp r2, 0x1 - beq _0805F304 - b _0805F428 -_0805F304: - movs r0, 0x1 - bl sub_8044C10 - ldr r1, _0805F398 - ldr r0, [sp, 0x4] - ands r0, r1 - ldr r1, _0805F39C - ands r0, r1 - movs r1, 0x80 - lsls r1, 1 - orrs r0, r1 - ldr r1, _0805F3A0 - ands r0, r1 - ldr r1, _0805F3A4 - ands r0, r1 - str r0, [sp, 0x4] - bl sub_8083600 - add r1, sp, 0x4 - bl sub_805FD74 - lsls r0, 24 - cmp r0, 0 - beq _0805F33A - movs r3, 0x1 - negs r3, r3 - mov r10, r3 -_0805F33A: - add r0, sp, 0x4 - bl sub_805FD3C - lsls r0, 24 - cmp r0, 0 - beq _0805F35C - bl sub_8083600 - add r1, sp, 0x4 - bl sub_805FD74 - lsls r0, 24 - cmp r0, 0 - beq _0805F35C - movs r0, 0x1 - bl sub_8044C10 -_0805F35C: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xC - bne _0805F3B2 - bl sub_8083600 - movs r1, 0 - movs r2, 0xC - bl sub_8044D90 - ldrb r2, [r0] - movs r1, 0x4 - orrs r1, r2 - strb r1, [r0] - bl sub_805F1A0 - bl sub_8060D24 - b _0805F412 - .align 2, 0 -_0805F388: .4byte gUnknown_202F260 -_0805F38C: .4byte gUnknown_202EE10 -_0805F390: .4byte gUnknown_20255F0 -_0805F394: .4byte gUnknown_202749A -_0805F398: .4byte 0xffffff00 -_0805F39C: .4byte 0xffff00ff -_0805F3A0: .4byte 0xff00ffff -_0805F3A4: .4byte 0x00ffffff -_0805F3A8: - bl sub_8083D08 - movs r1, 0x18 - ldrsh r0, [r4, r1] - b _0805F2E8 -_0805F3B2: - cmp r0, 0x35 - bne _0805F3D0 - bl sub_8083600 - movs r1, 0 - movs r2, 0xD - bl sub_8044D90 - adds r4, r0, 0 - bl sub_8083600 - adds r1, r4, 0 - bl sub_8048A68 - b _0805F40A -_0805F3D0: - cmp r0, 0x10 - bne _0805F3EE - bl sub_8083600 - movs r1, 0 - movs r2, 0xE - bl sub_8044D90 - adds r4, r0, 0 - bl sub_8083600 - adds r1, r4, 0 - bl sub_8048950 - b _0805F40A -_0805F3EE: - cmp r0, 0x2C - bne _0805F41A - bl sub_8083600 - movs r1, 0 - movs r2, 0xF - bl sub_8044D90 - adds r4, r0, 0 - bl sub_8083600 - adds r1, r4, 0 - bl sub_8048B9C -_0805F40A: - lsls r0, 24 - cmp r0, 0 - beq _0805F412 - b _0805F72C -_0805F412: - movs r0, 0x1 - bl sub_8044C10 - b _0805F72C -_0805F41A: - cmp r0, 0x3C - bne _0805F420 - b _0805F210 -_0805F420: - cmp r0, 0x3D - bne _0805F426 - b _0805F21C -_0805F426: - b _0805F72C -_0805F428: - ldr r2, [sp, 0x10] - cmp r2, 0x2 - beq _0805F430 - b _0805F52E -_0805F430: - movs r0, 0x1 - bl sub_8044C10 - bl sub_8083600 - bl sub_8060E38 - lsls r0, 24 - cmp r0, 0 - beq _0805F44A - movs r3, 0x1 - negs r3, r3 - mov r10, r3 -_0805F44A: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1B - bne _0805F45E - bl sub_805F1A0 - movs r1, 0 - b _0805F4B2 -_0805F45E: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1C - bne _0805F474 - bl sub_805F1A0 - bl sub_806752C - b _0805F4B6 -_0805F474: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x34 - bne _0805F48A - bl sub_805F1A0 - bl sub_8067768 - b _0805F4B6 -_0805F48A: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1A - bne _0805F4A0 - bl sub_805F1A0 - bl sub_80615E8 - b _0805F4B6 -_0805F4A0: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x30 - bne _0805F4BE - bl sub_805F1A0 - movs r1, 0x1 -_0805F4B2: - bl sub_8061A38 -_0805F4B6: - movs r0, 0x1 - bl sub_8044C10 - b _0805F72C -_0805F4BE: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x19 - beq _0805F4CC - b _0805F72C -_0805F4CC: - bl sub_805F1A0 - bl sub_8062D8C - movs r6, 0 - movs r4, 0 -_0805F4D8: - ldr r0, _0805F518 - ldr r0, [r0] - lsls r1, r4, 2 - ldr r2, _0805F51C - adds r0, r2 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805F526 - bl sub_805F1A0 - ldrb r0, [r0, 0x4] - cmp r4, r0 - bne _0805F524 - ldr r0, _0805F520 - str r6, [r0] - bl sub_805F1AC - lsls r0, 16 - cmp r0, 0 - bne _0805F50C - b _0805F72C -_0805F50C: - adds r0, r5, 0 - movs r1, 0 - bl sub_806A2BC - b _0805F72C - .align 2, 0 -_0805F518: .4byte gUnknown_203B418 -_0805F51C: .4byte 0x0001357c -_0805F520: .4byte gUnknown_202F260 -_0805F524: - adds r6, 0x1 -_0805F526: - adds r4, 0x1 - cmp r4, 0x3 - ble _0805F4D8 - b _0805F72C -_0805F52E: - ldr r3, [sp, 0x10] - cmp r3, 0 - beq _0805F536 - b _0805F73A -_0805F536: - movs r7, 0 - movs r0, 0x1 - bl sub_8044C10 - movs r5, 0 - b _0805F544 -_0805F542: - adds r5, 0x1 -_0805F544: - cmp r5, 0x3 - bgt _0805F56C - ldr r0, _0805F600 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0805F604 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805F542 - ldr r0, [r4, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0805F542 - adds r7, r5, 0 -_0805F56C: - movs r0, 0 - bl sub_8044C10 -_0805F572: - movs r6, 0 - mov r9, r6 - mov r8, r6 - movs r5, 0 -_0805F57A: - ldr r0, _0805F600 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r3, _0805F604 - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_8071A8C - lsls r0, 24 - cmp r0, 0 - beq _0805F5A0 - cmp r5, r7 - bne _0805F59C - mov r9, r8 - adds r6, r4, 0 -_0805F59C: - movs r0, 0x1 - add r8, r0 -_0805F5A0: - adds r5, 0x1 - cmp r5, 0x3 - ble _0805F57A - cmp r6, 0 - bne _0805F5B0 - bl sub_8083600 - adds r6, r0, 0 -_0805F5B0: - adds r0, r6, 0 - movs r1, 0 - bl sub_806A2BC - adds r0, r6, 0x4 - movs r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_804A728 - bl sub_8083654 - adds r0, 0x48 - strb r7, [r0] - movs r0, 0 - bl sub_8044C10 - mov r1, r8 - str r1, [sp] - adds r0, r6, 0 - movs r1, 0 - movs r2, 0x1 - mov r3, r9 - bl sub_8062F90 - lsls r0, 24 - cmp r0, 0 - beq _0805F5EE - movs r2, 0x1 - negs r2, r2 - mov r10, r2 -_0805F5EE: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x6 - bne _0805F63C - adds r4, r7, 0 - movs r5, 0 - b _0805F60A - .align 2, 0 -_0805F600: .4byte gUnknown_203B418 -_0805F604: .4byte 0x0001357c -_0805F608: - adds r5, 0x1 -_0805F60A: - cmp r5, 0x3 - bgt _0805F676 - adds r7, 0x1 - cmp r7, 0x3 - ble _0805F616 - movs r7, 0 -_0805F616: - ldr r0, _0805F634 - ldr r0, [r0] - lsls r1, r7, 2 - ldr r3, _0805F638 - adds r0, r3 - adds r0, r1 - ldr r6, [r0] - adds r0, r6, 0 - bl sub_8071A8C - lsls r0, 24 - cmp r0, 0 - beq _0805F608 - b _0805F676 - .align 2, 0 -_0805F634: .4byte gUnknown_203B418 -_0805F638: .4byte 0x0001357c -_0805F63C: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x7 - bne _0805F694 - adds r4, r7, 0 - movs r5, 0 - b _0805F650 -_0805F64E: - adds r5, 0x1 -_0805F650: - cmp r5, 0x3 - bgt _0805F676 - subs r7, 0x1 - cmp r7, 0 - bge _0805F65C - movs r7, 0x3 -_0805F65C: - ldr r0, _0805F68C - ldr r0, [r0] - lsls r1, r7, 2 - ldr r2, _0805F690 - adds r0, r2 - adds r0, r1 - ldr r6, [r0] - adds r0, r6, 0 - bl sub_8071A8C - lsls r0, 24 - cmp r0, 0 - beq _0805F64E -_0805F676: - bl sub_8083654 - adds r0, 0x48 - strb r7, [r0] - cmp r4, r7 - bne _0805F684 - b _0805F572 -_0805F684: - movs r0, 0 - bl sub_8083CE0 - b _0805F572 - .align 2, 0 -_0805F68C: .4byte gUnknown_203B418 -_0805F690: .4byte 0x0001357c -_0805F694: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1D - bne _0805F6AA - bl sub_805F1A0 - bl sub_80637E8 - b _0805F56C -_0805F6AA: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1E - beq _0805F6C2 - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x33 - bne _0805F6CE -_0805F6C2: - bl sub_805F1A0 - movs r1, 0 - bl sub_8063A70 - b _0805F56C -_0805F6CE: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1F - bne _0805F6E4 - bl sub_805F1A0 - bl sub_8063B54 - b _0805F56C -_0805F6E4: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x20 - bne _0805F6FA - bl sub_805F1A0 - bl sub_8063BB4 - b _0805F56C -_0805F6FA: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x21 - bne _0805F712 - bl sub_805F1A0 - movs r1, 0 - bl sub_8063CF0 - b _0805F56C -_0805F712: - bl sub_8083600 - movs r1, 0 - bl sub_806A2BC - bl sub_8083600 - adds r0, 0x4 - movs r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_804A728 -_0805F72C: - bl sub_805F1AC - lsls r0, 16 - cmp r0, 0 - beq _0805F738 - b _0805F92A -_0805F738: - b _0805F904 -_0805F73A: - ldr r3, [sp, 0x10] - cmp r3, 0x4 - beq _0805F742 - b _0805F8E0 -_0805F742: - bl sub_8083600 - movs r1, 0x4 - ldrsh r2, [r0, r1] - movs r3, 0x6 - ldrsh r1, [r0, r3] - adds r0, r2, 0 - bl sub_804954C - ldr r4, [r0, 0x14] - cmp r4, 0 - bne _0805F75C - b _0805F88C -_0805F75C: - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x3 - beq _0805F768 - b _0805F872 -_0805F768: - movs r0, 0x1 - bl sub_8044C10 - ldr r1, _0805F7F0 - ldr r0, [sp, 0x8] - ands r0, r1 - ldr r1, _0805F7F4 - ands r0, r1 - movs r1, 0x80 - lsls r1, 1 - orrs r0, r1 - ldr r1, _0805F7F8 - ands r0, r1 - movs r1, 0x80 - lsls r1, 9 - orrs r0, r1 - ldr r1, _0805F7FC - ands r0, r1 - adds r1, 0x1 - orrs r0, r1 - str r0, [sp, 0x8] - bl sub_8083600 - add r4, sp, 0x8 - adds r1, r4, 0 - bl sub_805FD74 - lsls r0, 24 - adds r0, r4, 0 - bl sub_805FD3C - lsls r0, 24 - cmp r0, 0 - beq _0805F7C2 - bl sub_8083600 - adds r1, r4, 0 - bl sub_805FD74 - lsls r0, 24 - cmp r0, 0 - beq _0805F7C2 - movs r0, 0x1 - bl sub_8044C10 -_0805F7C2: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - adds r1, r0, 0 - cmp r0, 0xC - bne _0805F800 - bl sub_8083600 - movs r1, 0 - movs r2, 0x10 - bl sub_8044D90 - ldrb r2, [r0] - movs r1, 0x4 - orrs r1, r2 - strb r1, [r0] - bl sub_805F1A0 - bl sub_8060D24 - b _0805F840 - .align 2, 0 -_0805F7F0: .4byte 0xffffff00 -_0805F7F4: .4byte 0xffff00ff -_0805F7F8: .4byte 0xff00ffff -_0805F7FC: .4byte 0x00ffffff -_0805F800: - cmp r0, 0x35 - bne _0805F81E - bl sub_8083600 - movs r1, 0 - movs r2, 0x11 - bl sub_8044D90 - adds r4, r0, 0 - bl sub_8083600 - adds r1, r4, 0 - bl sub_8048A68 - b _0805F83A -_0805F81E: - cmp r0, 0x10 - bne _0805F848 - bl sub_8083600 - movs r1, 0 - movs r2, 0x12 - bl sub_8044D90 - adds r4, r0, 0 - bl sub_8083600 - adds r1, r4, 0 - bl sub_8048950 -_0805F83A: - lsls r0, 24 - cmp r0, 0 - bne _0805F8A8 -_0805F840: - movs r0, 0x1 - bl sub_8044C10 - b _0805F8A8 -_0805F848: - cmp r1, 0x2C - bne _0805F8A8 - bl sub_8083600 - movs r1, 0 - movs r2, 0x13 - bl sub_8044D90 - adds r4, r0, 0 - bl sub_8083600 - adds r1, r4, 0 - bl sub_8048B9C - lsls r0, 24 - cmp r0, 0 - bne _0805F8A8 - movs r0, 0x1 - bl sub_8044C10 - b _0805F8A8 -_0805F872: - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x2 - bne _0805F8CE - movs r0, 0x1 - bl sub_8044C10 - bl sub_8083600 - bl sub_80643AC - b _0805F8A8 -_0805F88C: - ldrh r0, [r0] - movs r2, 0x80 - lsls r2, 2 - adds r1, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0805F8B4 - movs r0, 0x1 - bl sub_8044C10 - bl sub_8083600 - bl sub_80647F0 -_0805F8A8: - bl sub_805F1AC - lsls r0, 16 - cmp r0, 0 - bne _0805F92A - b _0805F8CE -_0805F8B4: - bl sub_8083600 - adds r1, r0, 0 - ldr r0, _0805F8D8 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0805F8DC - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_0805F8CE: - movs r3, 0x1 - negs r3, r3 - mov r10, r3 - b _0805F904 - .align 2, 0 -_0805F8D8: .4byte gUnknown_202DF98 -_0805F8DC: .4byte gUnknown_80FDE18 -_0805F8E0: - ldr r0, [sp, 0x10] - cmp r0, 0x3 - bne _0805F904 - bl sub_8064BE0 - ldr r0, _0805F91C - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - bne _0805F92A - bl sub_805F1AC - lsls r0, 16 - cmp r0, 0 - bne _0805F92A - movs r1, 0x1 - negs r1, r1 - mov r10, r1 -_0805F904: - ldr r2, [sp, 0x10] - cmp r2, 0 - blt _0805F92A - ldr r3, [sp, 0x14] - cmp r3, 0 - bne _0805F920 - bl sub_80048D0 - bl sub_8004914 - b _0805F240 - .align 2, 0 -_0805F91C: .4byte gUnknown_203B418 -_0805F920: - bl sub_8083600 - movs r1, 0 - bl sub_806A2BC -_0805F92A: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - bl sub_80048D0 - bl sub_8004914 - 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 ShowFieldMenu - - thumb_func_start DrawFieldMenu -DrawFieldMenu: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, _0805F994 - movs r0, 0 - strh r0, [r4, 0x18] - movs r1, 0x5 - strh r1, [r4, 0x1A] - strh r1, [r4, 0x1C] - strh r0, [r4, 0x1E] - strh r0, [r4, 0x4] - movs r1, 0x2 - strh r1, [r4, 0x6] - strh r0, [r4, 0xC] - strh r0, [r4, 0xE] - str r0, [r4] - strh r0, [r4, 0x14] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - adds r0, r4, 0 - movs r1, 0x38 - bl sub_80137B0 - cmp r5, 0 - beq _0805F998 - movs r0, 0x7 - movs r1, 0 - bl sub_803EAF0 - b _0805F9A0 - .align 2, 0 -_0805F994: .4byte gUnknown_202EE10 -_0805F998: - movs r0, 0x6 - movs r1, 0 - bl sub_803EAF0 -_0805F9A0: - movs r0, 0 - bl sub_80073B8 - bl sub_8083600 - movs r1, 0x1 - bl sub_8071518 - lsls r0, 24 - cmp r0, 0 - beq _0805F9CC - ldr r0, _0805F9C8 - movs r2, 0x2 - strb r2, [r0, 0x1] - strb r2, [r0, 0x2] - strb r2, [r0, 0x3] - movs r1, 0x7 - strb r1, [r0, 0x4] - strb r2, [r0, 0x5] - b _0805F9DA - .align 2, 0 -_0805F9C8: .4byte gUnknown_202749A -_0805F9CC: - ldr r1, _0805FBA0 - movs r0, 0x7 - strb r0, [r1, 0x1] - strb r0, [r1, 0x2] - strb r0, [r1, 0x3] - strb r0, [r1, 0x4] - strb r0, [r1, 0x5] -_0805F9DA: - ldr r4, _0805FBA4 - adds r0, r4, 0 - movs r1, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _0805FBA8 - ldr r2, [r0] - movs r6, 0 - str r6, [sp] - movs r0, 0x8 - movs r3, 0 - bl xxx_call_draw_string - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _0805FBAC - ldr r2, [r0] - str r6, [sp] - movs r0, 0x8 - movs r3, 0 - bl xxx_call_draw_string - adds r0, r4, 0 - movs r1, 0x2 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _0805FBB0 - ldr r2, [r0] - str r6, [sp] - movs r0, 0x8 - movs r3, 0 - bl xxx_call_draw_string - adds r0, r4, 0 - movs r1, 0x3 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _0805FBB4 - ldr r2, [r0] - str r6, [sp] - movs r0, 0x8 - movs r3, 0 - bl xxx_call_draw_string - adds r0, r4, 0 - movs r1, 0x4 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _0805FBB8 - ldr r2, [r0] - str r6, [sp] - movs r0, 0x8 - movs r3, 0 - bl xxx_call_draw_string - movs r0, 0 - bl sub_80073E0 - cmp r5, 0 - bne _0805FA62 - b _0805FB92 -_0805FA62: - bl sub_8083600 - ldr r7, [r0, 0x70] - bl sub_805317C - adds r5, r0, 0 - bl sub_8008ED0 - movs r4, 0x88 - subs r4, r0 - lsrs r0, r4, 31 - adds r4, r0 - asrs r4, 1 - movs r0, 0x1 - bl sub_80073B8 - str r6, [sp] - adds r0, r4, 0 - movs r1, 0x2 - adds r2, r5, 0 - movs r3, 0x1 - bl xxx_call_draw_string - movs r0, 0x1 - bl sub_80073E0 - movs r0, 0x2 - bl sub_80073B8 - ldr r0, _0805FBBC - ldr r0, [r0] - add r2, sp, 0x8 - add r3, sp, 0xC - add r1, sp, 0x4 - bl sub_8095014 - movs r1, 0x9E - lsls r1, 1 - adds r0, r7, r1 - ldr r0, [r0] - bl sub_8094450 - ldr r4, _0805FBC0 - str r0, [r4] - movs r2, 0xA0 - lsls r2, 1 - adds r0, r7, r2 - ldr r0, [r0] - bl sub_8094450 - str r0, [r4, 0x4] - ldr r0, _0805FBC4 - ldr r2, [r0] - str r6, [sp] - movs r0, 0x73 - movs r1, 0 - movs r3, 0x2 - bl sub_8014FF0 - ldr r0, _0805FBC8 - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [r4] - ldr r0, _0805FBCC - ldr r2, [r0] - str r6, [sp] - movs r0, 0x73 - movs r1, 0xC - movs r3, 0x2 - bl sub_8014FF0 - ldr r5, _0805FBD0 - movs r0, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl sub_807EA18 - ldr r0, _0805FBD4 - ldr r2, [r0] - str r6, [sp] - movs r0, 0x73 - movs r1, 0x18 - movs r3, 0x2 - bl sub_8014FF0 - ldr r0, [sp, 0x4] - str r0, [r4] - ldr r0, [sp, 0x8] - str r0, [r4, 0x4] - ldr r0, [sp, 0xC] - str r0, [r4, 0x8] - ldr r0, _0805FBD8 - ldr r2, [r0] - str r6, [sp] - movs r0, 0x73 - movs r1, 0x24 - movs r3, 0x2 - bl sub_8014FF0 - movs r7, 0 - mov r8, r4 -_0805FB3A: - ldr r0, _0805FBDC - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0805FBE0 - adds r0, r2 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0805FB86 - ldr r4, [r5, 0x70] - ldr r0, _0805FBD0 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - movs r1, 0xE - ldrsh r0, [r4, r1] - mov r2, r8 - str r0, [r2] - movs r1, 0x10 - ldrsh r0, [r4, r1] - str r0, [r2, 0x4] - ldr r0, _0805FBE4 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - adds r1, r7, 0 - movs r3, 0x2 - bl sub_8014FF0 - adds r7, 0xC - cmp r7, 0x2F - bgt _0805FB8C -_0805FB86: - adds r6, 0x1 - cmp r6, 0x3 - ble _0805FB3A -_0805FB8C: - movs r0, 0x2 - bl sub_80073E0 -_0805FB92: - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0805FBA0: .4byte gUnknown_202749A -_0805FBA4: .4byte gUnknown_202EE10 -_0805FBA8: .4byte gUnknown_80FE988 -_0805FBAC: .4byte gUnknown_80FE998 -_0805FBB0: .4byte gUnknown_80FE9A8 -_0805FBB4: .4byte gUnknown_80FE9B8 -_0805FBB8: .4byte gUnknown_80FE9C8 -_0805FBBC: .4byte gUnknown_203B47C -_0805FBC0: .4byte gUnknown_202DE30 -_0805FBC4: .4byte gUnknown_80F9174 -_0805FBC8: .4byte gUnknown_203B460 -_0805FBCC: .4byte gUnknown_80F9190 -_0805FBD0: .4byte gUnknown_202DF98 -_0805FBD4: .4byte gUnknown_80F91A8 -_0805FBD8: .4byte gUnknown_80F91C8 -_0805FBDC: .4byte gUnknown_203B418 -_0805FBE0: .4byte 0x0001357c -_0805FBE4: .4byte gUnknown_80F91E0 - thumb_func_end DrawFieldMenu - - thumb_func_start sub_805FBE8 -sub_805FBE8: - push {r4,r5,lr} - adds r5, r0, 0 - movs r0, 0x8 - adds r1, r5, 0 - bl sub_803EAF0 -_0805FBF4: - movs r0, 0xE - bl sub_803E46C - bl xxx_draw_string_80144C4 - bl sub_8016080 - adds r4, r0, 0 - cmp r4, 0 - beq _0805FBF4 - bl sub_80160D8 - movs r0, 0xE - bl sub_803E46C - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - cmp r4, 0x3 - bne _0805FC28 - ldrb r0, [r5] - cmp r0, 0 - beq _0805FC28 - movs r0, 0x1 - b _0805FC2A -_0805FC28: - movs r0, 0 -_0805FC2A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805FBE8 - - thumb_func_start sub_805FC30 -sub_805FC30: - push {r4-r6,lr} - sub sp, 0x78 - adds r4, r0, 0 - adds r6, r1, 0 - add r5, sp, 0x4 - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r3, 0x3 - str r3, [sp, 0x8] - str r3, [sp, 0x20] - movs r2, 0 - movs r0, 0x16 - strh r0, [r5, 0x20] - movs r1, 0x4 - strh r1, [r5, 0x22] - movs r0, 0x6 - strh r0, [r5, 0x24] - strh r1, [r5, 0x26] - strh r1, [r5, 0x28] - str r3, [sp, 0x38] - str r3, [sp, 0x50] - add r0, sp, 0x4 - ldm r4!, {r1,r3,r5} - stm r0!, {r1,r3,r5} - ldm r4!, {r1,r3,r5} - stm r0!, {r1,r3,r5} - add r1, sp, 0x4 - movs r0, 0x80 - strb r0, [r1] - ldr r4, _0805FD30 - strh r2, [r4, 0x18] - ldr r5, _0805FD34 - ldr r0, [r5] - strh r0, [r4, 0x1C] - strh r0, [r4, 0x1A] - strh r2, [r4, 0x1E] - strh r2, [r4, 0x20] - strh r2, [r4, 0x4] - strh r2, [r4, 0x6] - movs r0, 0x1 - str r0, [r4] - strh r2, [r4, 0xC] - strh r2, [r4, 0xE] - ldr r0, [r4, 0x8] - str r0, [r4, 0x14] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - add r0, sp, 0x4 - strh r6, [r0, 0x20] - adds r1, r0, 0 - movs r0, 0x1C - subs r0, r6 - strh r0, [r1, 0x24] - movs r1, 0x1C - ldrsh r0, [r4, r1] - movs r1, 0 - bl sub_80095E4 - add r2, sp, 0x4 - adds r1, r2, 0 - strh r0, [r1, 0x28] - strh r0, [r2, 0x26] - adds r0, r1, 0 - movs r1, 0 - bl sub_803ECB4 - add r0, sp, 0x4 - movs r2, 0x26 - ldrsh r1, [r0, r2] - lsls r1, 3 - adds r0, r4, 0 - bl sub_80137B0 - movs r0, 0x1 - bl sub_80073B8 - movs r6, 0 - ldr r0, [r5] - cmp r6, r0 - bge _0805FD20 - add r5, sp, 0x64 -_0805FCDC: - adds r0, r6, 0 - bl sub_8044F3C - lsls r0, 24 - movs r4, 0x2 - cmp r0, 0 - beq _0805FCEC - movs r4, 0x7 -_0805FCEC: - adds r0, r6, 0 - bl sub_8044EC8 - adds r3, r0, 0 - adds r0, r5, 0 - ldr r1, _0805FD38 - adds r2, r4, 0 - bl sub_800D158 - ldr r0, _0805FD30 - adds r1, r6, 0 - bl sub_8013800 - adds r1, r0, 0 - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - adds r2, r5, 0 - movs r3, 0x1 - bl xxx_call_draw_string - adds r6, 0x1 - ldr r0, _0805FD34 - ldr r0, [r0] - cmp r6, r0 - blt _0805FCDC -_0805FD20: - movs r0, 0x1 - bl sub_80073E0 - add sp, 0x78 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0805FD30: .4byte gUnknown_202EE10 -_0805FD34: .4byte gUnknown_202EE6C -_0805FD38: .4byte gUnknown_8106B50 - thumb_func_end sub_805FC30 - - thumb_func_start sub_805FD3C -sub_805FD3C: - push {r4,lr} - adds r4, r0, 0 - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - adds r2, r0, 0 - movs r1, 0 - strb r1, [r4] - strb r1, [r4, 0x1] - strb r1, [r4, 0x2] - strb r1, [r4, 0x3] - cmp r2, 0xA - bne _0805FD5E - movs r0, 0x1 - strb r0, [r4] - strb r0, [r4, 0x3] -_0805FD5E: - cmp r2, 0x3E - bne _0805FD6A - movs r0, 0x1 - strb r0, [r4] - strb r1, [r4, 0x1] - strb r0, [r4, 0x3] -_0805FD6A: - ldrb r0, [r4] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805FD3C - - thumb_func_start sub_805FD74 -sub_805FD74: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xE4 - mov r10, r0 - adds r7, r1, 0 - movs r0, 0 - mov r9, r0 - movs r1, 0x1 - str r1, [sp, 0xD0] - movs r2, 0 - str r2, [sp, 0xD4] - movs r5, 0 - str r5, [sp, 0xD8] - str r0, [sp, 0xDC] - mov r1, r10 - ldr r1, [r1, 0x70] - str r1, [sp, 0xE0] - add r4, sp, 0x68 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x6C] - add r0, sp, 0x70 - movs r6, 0 - movs r1, 0x2 - strh r1, [r0] - strh r1, [r0, 0x2] - add r1, sp, 0x74 - movs r0, 0x12 - strh r0, [r1] - mov r0, sp - adds r0, 0x76 - movs r1, 0x10 - strh r1, [r0] - add r0, sp, 0x78 - strh r1, [r0] - add r5, sp, 0xC8 - str r5, [sp, 0x7C] - movs r1, 0x3 - str r1, [sp, 0x84] - add r0, sp, 0x98 - str r1, [r0, 0x4] - add r0, sp, 0xB0 - str r1, [r0, 0x4] - add r0, sp, 0x8 - adds r1, r4, 0 - movs r2, 0x60 - bl memcpy - ldr r0, _0805FE40 - strb r6, [r0] - mov r2, r9 - strh r2, [r0, 0x4] - strh r2, [r0, 0x6] - cmp r7, 0 - beq _0805FE18 - ldrb r1, [r7] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - str r0, [sp, 0xD8] - ldrb r1, [r7, 0x1] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - str r0, [sp, 0xD0] - ldrb r1, [r7, 0x2] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - str r0, [sp, 0xD4] - ldrb r1, [r7, 0x3] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - str r0, [sp, 0xDC] -_0805FE18: - ldr r0, _0805FE44 - mov r5, r10 - str r5, [sp] - ldr r1, [sp, 0xD4] - ldr r2, [sp, 0xD0] - ldr r3, [sp, 0xDC] - bl sub_8060D64 - ldr r1, _0805FE48 - str r0, [r1] - cmp r0, 0 - bne _0805FEA6 - ldr r0, _0805FE4C - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - movs r0, 0x1 - b _080603BE - .align 2, 0 -_0805FE40: .4byte gUnknown_202F238 -_0805FE44: .4byte gUnknown_202F248 -_0805FE48: .4byte gUnknown_202F258 -_0805FE4C: .4byte gUnknown_80F8B24 -_0805FE50: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0x1 - mov r9, r0 - b _0806039C -_0805FE5E: - ldr r0, [sp, 0xE0] - adds r0, 0x44 - movs r1, 0xC - bl sub_8044C94 - ldr r0, _0805FE78 - ldr r1, [r0, 0x4] - ldr r0, [r0] - ldr r2, [sp, 0xE0] - str r0, [r2, 0x48] - str r1, [r2, 0x4C] - b _0805FE88 - .align 2, 0 -_0805FE78: .4byte gUnknown_202F238 -_0805FE7C: - ldr r0, _0805FE98 - ldr r1, [r0, 0x4] - ldr r0, [r0] - ldr r2, [sp, 0xE0] - str r0, [r2, 0x50] - str r1, [r2, 0x54] -_0805FE88: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r5, 0 - mov r9, r5 - b _0806039C - .align 2, 0 -_0805FE98: .4byte gUnknown_202F238 -_0805FE9C: - ldr r1, [r1] - ldr r0, [sp, 0xE0] - adds r0, 0x50 - strb r1, [r0] - b _0806033C -_0805FEA6: - movs r1, 0 - mov r8, r1 - ldr r0, _0805FFA8 - mov r2, r9 - str r2, [r0] -_0805FEB0: - movs r5, 0 - mov r9, r5 - movs r4, 0 - ldr r6, _0805FFAC -_0805FEB8: - lsls r1, r4, 2 - ldr r0, [r6] - adds r2, r0, r1 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805FEEC - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0805FEEC - movs r0, 0xFB - ands r0, r1 - strb r0, [r2] - adds r0, r4, 0 - movs r1, 0xA - bl __divsi3 - mov r8, r0 - adds r0, r4, 0 - movs r1, 0xA - bl __modsi3 - ldr r1, _0805FFA8 - str r0, [r1] -_0805FEEC: - adds r4, 0x1 - cmp r4, 0x13 - ble _0805FEB8 - movs r6, 0 -_0805FEF4: - ldr r0, _0805FFB0 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0805FFB4 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - adds r5, r6, 0x1 - mov r12, r5 - cmp r0, 0 - beq _0805FF66 - ldr r0, [r4, 0x70] - adds r2, r0, 0 - adds r2, 0x60 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805FF66 - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0805FF66 - movs r0, 0xFB - ands r0, r1 - strb r0, [r2] - movs r4, 0 - ldr r0, _0805FFB8 - ldr r1, [r0] - adds r5, r0, 0 - ldr r7, _0805FFA8 - cmp r4, r1 - bge _0805FF62 - ldr r0, _0805FFBC - movs r2, 0 - ldrsh r1, [r0, r2] - adds r3, r0, 0 - adds r2, r6, 0x4 - cmp r1, r2 - beq _0805FF60 -_0805FF4C: - adds r4, 0x1 - ldr r0, [r5] - cmp r4, r0 - bge _0805FF62 - lsls r0, r4, 1 - adds r0, r3 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, r2 - bne _0805FF4C -_0805FF60: - mov r8, r4 -_0805FF62: - movs r0, 0 - str r0, [r7] -_0805FF66: - mov r6, r12 - cmp r6, 0x3 - ble _0805FEF4 - add r2, sp, 0x8 - str r2, [sp] - add r5, sp, 0xC8 - str r5, [sp, 0x4] - mov r0, r8 - mov r1, r10 - ldr r2, [sp, 0xD8] - ldr r3, [sp, 0xD4] - bl sub_80603D8 - ldr r1, _0805FFBC - ldr r0, _0805FFC0 - movs r2, 0x1E - ldrsh r0, [r0, r2] - lsls r0, 1 - adds r0, r1 - movs r5, 0 - ldrsh r2, [r0, r5] - cmp r2, 0x3 - ble _0805FFE6 - ldr r0, _0805FFB0 - ldr r1, [r0] - subs r0, r2, 0x4 - lsls r0, 2 - ldr r2, _0805FFB4 - adds r1, r2 - adds r1, r0 - ldr r4, [r1] - b _0805FFE8 - .align 2, 0 -_0805FFA8: .4byte gUnknown_202F240 -_0805FFAC: .4byte gUnknown_203B460 -_0805FFB0: .4byte gUnknown_203B418 -_0805FFB4: .4byte 0x0001357c -_0805FFB8: .4byte gUnknown_202F258 -_0805FFBC: .4byte gUnknown_202F248 -_0805FFC0: .4byte gUnknown_202EE10 -_0805FFC4: - bl sub_8083D44 - mov r0, r10 - adds r0, 0x4 - bl sub_8060890 - movs r5, 0x3 - mov r9, r5 - b _08060200 -_0805FFD6: - bl sub_8083D08 - ldr r0, [sp, 0xE0] - adds r0, 0x44 - bl sub_8060CE8 - movs r0, 0 - b _080602F0 -_0805FFE6: - mov r4, r10 -_0805FFE8: - adds r0, r4, 0 - movs r1, 0 - bl sub_806A2BC - adds r0, r4, 0x4 - movs r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_804A728 - ldr r6, _08060050 - adds r7, r6, 0 - adds r7, 0x2B -_08060002: - adds r0, r6, 0 - bl AddMenuCursorSprite - movs r0, 0x14 - bl sub_803E46C - ldr r1, [sp, 0xD4] - cmp r1, 0 - beq _08060016 - b _080601F4 -_08060016: - ldr r4, _08060054 - ldr r0, [r4] - cmp r0, 0x1 - ble _0806008C - ldr r0, _08060058 - ldrh r1, [r0, 0x2] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _08060034 - adds r0, r6, 0 - adds r0, 0x2C - ldrb r0, [r0] - cmp r0, 0 - beq _0806005C -_08060034: - movs r0, 0 - bl sub_8083CE0 - movs r2, 0x1 - negs r2, r2 - add r8, r2 - mov r5, r8 - cmp r5, 0 - bge _0806007E - ldr r0, [r4] - subs r0, 0x1 - mov r8, r0 - b _0806007E - .align 2, 0 -_08060050: .4byte gUnknown_202EE10 -_08060054: .4byte gUnknown_202F258 -_08060058: .4byte gUnknown_20255F0 -_0806005C: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0806006A - ldrb r0, [r7] - cmp r0, 0 - beq _0806008C -_0806006A: - movs r0, 0 - bl sub_8083CE0 - movs r2, 0x1 - add r8, r2 - ldr r0, [r4] - cmp r8, r0 - bne _0806007E - movs r5, 0 - mov r8, r5 -_0806007E: - ldr r0, [sp, 0xD4] - ldr r1, _08060088 - str r0, [r1] - b _08060200 - .align 2, 0 -_08060088: .4byte gUnknown_202F240 -_0806008C: - ldr r0, _08060134 - ldrh r1, [r0, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080600B2 - mov r0, r8 - bl sub_8060860 - lsls r0, 24 - cmp r0, 0 - beq _080600B2 - movs r0, 0x1 - bl sub_8083CE0 - ldr r0, _08060138 - movs r1, 0x1 - bl sub_80136E0 -_080600B2: - ldr r0, _08060134 - ldrh r1, [r0, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080600D8 - mov r0, r8 - bl sub_8060860 - lsls r0, 24 - cmp r0, 0 - beq _080600D8 - movs r0, 0x1 - bl sub_8083CE0 - ldr r0, _08060138 - movs r1, 0x1 - bl sub_8013744 -_080600D8: - ldr r0, _08060134 - ldrh r2, [r0, 0x2] - movs r1, 0x4 - ands r1, r2 - adds r2, r0, 0 - cmp r1, 0 - beq _080601A0 - ldr r4, _0806013C - mov r5, r8 - lsls r0, r5, 1 - adds r0, r4 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x1 - bgt _080601A0 - movs r7, 0x1 - movs r0, 0x99 - lsls r0, 1 - bl sub_8083E38 - bl sub_8047158 - bl sub_80912C8 - movs r0, 0 - ldr r2, _08060140 - str r0, [r2] - mov r5, r10 - str r5, [sp] - add r0, sp, 0x68 - ldr r1, [sp, 0xD4] - ldr r2, [sp, 0xD0] - ldr r3, [sp, 0xDC] - bl sub_8060D64 - adds r3, r0, 0 - ldr r0, _08060144 - ldr r0, [r0] - cmp r0, r3 - bne _08060164 - movs r6, 0 - cmp r6, r3 - bge _0806015E - add r2, sp, 0x68 - b _08060152 - .align 2, 0 -_08060134: .4byte gUnknown_20255F0 -_08060138: .4byte gUnknown_202EE10 -_0806013C: .4byte gUnknown_202F248 -_08060140: .4byte gUnknown_202F240 -_08060144: .4byte gUnknown_202F258 -_08060148: - adds r4, 0x2 - adds r2, 0x2 - adds r6, 0x1 - cmp r6, r3 - bge _0806015E -_08060152: - movs r0, 0 - ldrsh r1, [r2, r0] - movs r5, 0 - ldrsh r0, [r4, r5] - cmp r1, r0 - beq _08060148 -_0806015E: - cmp r6, r3 - bne _08060164 - movs r7, 0 -_08060164: - cmp r7, 0 - beq _08060200 - movs r0, 0 - mov r8, r0 - ldr r1, _08060194 - str r0, [r1] - ldr r0, _08060198 - str r3, [r0] - movs r6, 0 - adds r5, r0, 0 - cmp r6, r3 - bge _08060200 - adds r3, r5, 0 - add r1, sp, 0x68 - ldr r2, _0806019C -_08060182: - ldrh r0, [r1] - strh r0, [r2] - adds r1, 0x2 - adds r2, 0x2 - adds r6, 0x1 - ldr r0, [r3] - cmp r6, r0 - blt _08060182 - b _08060200 - .align 2, 0 -_08060194: .4byte gUnknown_202F240 -_08060198: .4byte gUnknown_202F258 -_0806019C: .4byte gUnknown_202F248 -_080601A0: - ldrh r1, [r2, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080601B6 - ldr r2, _080601C8 - adds r0, r2, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _080601CC -_080601B6: - bl sub_8083D08 - mov r0, r10 - adds r0, 0x4 - bl sub_8060890 - movs r2, 0x1 - mov r9, r2 - b _08060200 - .align 2, 0 -_080601C8: .4byte gUnknown_202EE10 -_080601CC: - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080601D6 - b _0805FFC4 -_080601D6: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080601EA - adds r0, r2, 0 - adds r0, 0x2A - ldrb r0, [r0] - cmp r0, 0 - bne _080601EA - b _08060002 -_080601EA: - bl sub_8083D30 - movs r5, 0x2 - mov r9, r5 - b _08060200 -_080601F4: - mov r0, r10 - adds r0, 0x4 - bl sub_8060890 - movs r0, 0x1 - mov r9, r0 -_08060200: - ldr r4, _0806034C - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x14 - bl sub_803E46C - ldr r1, _08060350 - movs r2, 0x1E - ldrsh r0, [r4, r2] - lsls r0, 1 - adds r0, r1 - movs r5, 0 - ldrsh r0, [r0, r5] - cmp r0, 0x1 - bgt _08060232 - ldr r0, _08060354 - ldr r0, [r0] - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08060232 - movs r0, 0x2 - mov r9, r0 -_08060232: - mov r1, r9 - cmp r1, 0x2 - bne _0806023A - b _0805FE50 -_0806023A: - cmp r1, 0 - bne _08060240 - b _0805FEB0 -_08060240: - cmp r1, 0x3 - bne _08060246 - b _0805FE5E -_08060246: - ldr r4, _0806034C - movs r2, 0x18 - ldrsh r0, [r4, r2] - ldr r5, _08060358 - str r0, [r5] - ldr r0, [sp, 0xD8] - cmp r0, 0 - beq _08060258 - b _0805FE7C -_08060258: - mov r0, r10 - bl sub_8060900 - movs r2, 0x1E - ldrsh r1, [r4, r2] - add r0, sp, 0xC8 - bl sub_8060800 - add r0, sp, 0x8 - movs r1, 0x16 - bl sub_805FC30 - ldr r6, _0806035C - adds r7, r4, 0 - adds r7, 0x2A -_08060276: - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x14 - bl sub_803E46C - ldrh r1, [r6, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0806029A - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80136E0 -_0806029A: - ldrh r1, [r6, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080602B2 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013744 -_080602B2: - ldrh r1, [r6, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080602C6 - adds r0, r4, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _080602DA -_080602C6: - movs r5, 0x18 - ldrsh r0, [r4, r5] - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - beq _080602D6 - b _0805FFD6 -_080602D6: - bl sub_8083D30 -_080602DA: - ldrh r1, [r6, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080602EA - ldrb r0, [r7] - cmp r0, 0 - beq _08060276 -_080602EA: - bl sub_8083D30 - movs r0, 0x1 -_080602F0: - mov r9, r0 - ldr r0, _0806034C - bl AddMenuCursorSprite - movs r0, 0x14 - bl sub_803E46C - ldr r0, _08060360 - ldr r0, [r0] - ldr r1, _08060364 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - mov r2, r9 - cmp r2, 0x1 - bne _08060318 - ldr r5, [sp, 0xD4] - cmp r5, 0 - bne _08060318 - b _0805FEB0 -_08060318: - ldr r0, [sp, 0xE0] - adds r0, 0x44 - ldrh r1, [r0] - adds r0, r1, 0 - subs r0, 0x37 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _08060330 - adds r0, r1, 0 - cmp r0, 0x3E - bne _0806036C -_08060330: - ldr r0, _08060368 - ldrb r0, [r0] - subs r0, 0x90 - ldr r1, [sp, 0xE0] - adds r1, 0x48 - strb r0, [r1] -_0806033C: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0 - mov r9, r0 - b _0806039C - .align 2, 0 -_0806034C: .4byte gUnknown_202EE10 -_08060350: .4byte gUnknown_202F248 -_08060354: .4byte gUnknown_203B460 -_08060358: .4byte gUnknown_202F240 -_0806035C: .4byte gUnknown_20255F0 -_08060360: .4byte gUnknown_203B418 -_08060364: .4byte 0x00018212 -_08060368: .4byte gUnknown_202F238 -_0806036C: - cmp r0, 0x36 - bne _08060390 - add r0, sp, 0xCC - movs r1, 0x2 - bl sub_8062978 - add r1, sp, 0xCC - cmp r0, 0 - beq _08060380 - b _0805FE9C -_08060380: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0x1 - bl sub_8044C10 - b _0805FEB0 -_08060390: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r1, 0 - mov r9, r1 -_0806039C: - ldr r0, _080603D0 - ldr r0, [r0] - ldr r2, _080603D4 - adds r0, r2 - movs r1, 0 - strb r1, [r0] - movs r0, 0x2 - movs r1, 0x61 - bl sub_803E708 - bl sub_804AA60 - movs r0, 0x2 - movs r1, 0x61 - bl sub_803E708 - mov r0, r9 -_080603BE: - add sp, 0xE4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080603D0: .4byte gUnknown_203B418 -_080603D4: .4byte 0x00018212 - thumb_func_end sub_805FD74 - - thumb_func_start sub_80603D8 -sub_80603D8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x78 - adds r7, r0, 0 - mov r9, r1 - ldr r6, [sp, 0x98] - ldr r0, [sp, 0x9C] - mov r8, r0 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x6C] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x70] - add r1, sp, 0x4 - ldr r0, _08060478 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - mov r0, r9 - ldr r0, [r0, 0x70] - str r0, [sp, 0x74] - mov r0, r8 - adds r1, r7, 0 - bl sub_8060800 - mov r10, r0 - ldr r5, _0806047C - ldr r0, _08060480 - ldr r0, [r0] - movs r4, 0 - movs r1, 0 - strh r0, [r5, 0x18] - strh r1, [r5, 0x1A] - strh r7, [r5, 0x1E] - ldr r0, _08060484 - ldr r0, [r0] - strh r0, [r5, 0x20] - strh r1, [r5, 0x4] - str r1, [r5] - strh r1, [r5, 0x14] - adds r0, r5, 0 - adds r0, 0x28 - bl sub_801317C - ldr r3, _08060488 - ldr r0, [r3] - ldr r2, _0806048C - adds r0, r2 - strb r4, [r0] - ldr r1, _08060490 - lsls r0, r7, 1 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x2 - beq _08060494 - cmp r0, 0x2 - bgt _080604AA - cmp r0, 0 - blt _080604AA - movs r1, 0x10 - strh r1, [r6, 0x10] - strh r1, [r6, 0xE] - movs r0, 0xC - mov r4, r8 - strb r0, [r4, 0x2] - strh r1, [r5, 0x6] - movs r0, 0xA - strh r0, [r5, 0x1C] - ldr r0, [r3] - adds r0, r2 - movs r1, 0x1 - strb r1, [r0] - b _080604C0 - .align 2, 0 -_08060478: .4byte gUnknown_8106B6C -_0806047C: .4byte gUnknown_202EE10 -_08060480: .4byte gUnknown_202F240 -_08060484: .4byte gUnknown_202F258 -_08060488: .4byte gUnknown_203B418 -_0806048C: .4byte 0x00018212 -_08060490: .4byte gUnknown_202F248 -_08060494: - movs r0, 0x4 - strh r0, [r6, 0x10] - strh r0, [r6, 0xE] - movs r0, 0x6 - mov r1, r8 - strb r0, [r1, 0x2] - movs r0, 0x12 - strh r0, [r5, 0x6] - movs r0, 0x1 - strh r0, [r5, 0x1C] - b _080604C0 -_080604AA: - movs r0, 0x4 - strh r0, [r6, 0x10] - strh r0, [r6, 0xE] - movs r0, 0xC - mov r2, r8 - strb r0, [r2, 0x2] - ldr r1, _080604DC - movs r0, 0x12 - strh r0, [r1, 0x6] - movs r0, 0x1 - strh r0, [r1, 0x1C] -_080604C0: - ldr r3, [sp, 0x6C] - cmp r3, 0 - beq _080604E0 - ldr r1, _080604DC - ldrh r0, [r1, 0xC] - adds r0, 0x40 - strh r0, [r1, 0xC] - movs r0, 0xA - strh r0, [r6, 0x8] - adds r1, r6, 0 - adds r1, 0x18 - add r0, sp, 0x4 - b _080604EC - .align 2, 0 -_080604DC: .4byte gUnknown_202EE10 -_080604E0: - movs r0, 0x2 - strh r0, [r6, 0x8] - adds r1, r6, 0 - adds r1, 0x18 - adds r0, r6, 0 - adds r0, 0x48 -_080604EC: - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - adds r0, r6, 0 - movs r1, 0x1 - bl sub_803ECB4 - ldr r1, _0806054C - ldr r5, _08060550 - movs r4, 0 - ldrsh r0, [r1, r4] - adds r0, 0x10 - lsls r0, 3 - movs r2, 0 - mov r8, r2 - strh r0, [r5, 0xC] - movs r3, 0x2 - ldrsh r0, [r1, r3] - adds r0, 0x1 - lsls r0, 3 - subs r0, 0x2 - strh r0, [r5, 0xE] - adds r0, r5, 0 - movs r1, 0x70 - bl sub_80137B0 - movs r0, 0 - bl sub_80073B8 - mov r4, r10 - subs r0, r7, r4 - lsls r0, 3 - adds r6, r0, 0 - adds r6, 0xC - ldr r0, _08060554 - lsls r1, r7, 1 - adds r0, r1, r0 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r2, r1, 0 - cmp r0, 0x1 - beq _080605CC - cmp r0, 0x1 - bgt _08060558 - cmp r0, 0 - beq _08060564 - b _08060718 - .align 2, 0 -_0806054C: .4byte gUnknown_2027370 -_08060550: .4byte gUnknown_202EE10 -_08060554: .4byte gUnknown_202F248 -_08060558: - cmp r0, 0x2 - beq _0806063C - cmp r0, 0x3 - bne _08060562 - b _080606B0 -_08060562: - b _08060718 -_08060564: - ldr r0, _080605C0 - ldr r2, [r0] - mov r3, r8 - str r3, [sp] - adds r0, r6, 0 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - movs r4, 0 - adds r6, r5, 0 - movs r7, 0 - add r5, sp, 0x1C -_0806057E: - lsls r1, r4, 2 - ldr r0, _080605C4 - ldr r0, [r0] - adds r2, r1, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08060592 - b _08060794 -_08060592: - ldrh r0, [r6, 0x1A] - adds r0, 0x1 - strh r0, [r6, 0x1A] - adds r0, r5, 0 - adds r1, r2, 0 - ldr r2, _080605C8 - bl sub_8090E14 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8013800 - adds r1, r0, 0 - str r7, [sp] - movs r0, 0x8 - adds r2, r5, 0 - movs r3, 0 - bl sub_8014FF0 - adds r4, 0x1 - cmp r4, 0x9 - ble _0806057E - b _08060794 - .align 2, 0 -_080605C0: .4byte gUnknown_80FE90C -_080605C4: .4byte gUnknown_203B460 -_080605C8: .4byte gUnknown_8106B60 -_080605CC: - ldr r0, _08060630 - ldr r2, [r0] - mov r4, r8 - str r4, [sp] - adds r0, r6, 0 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - movs r4, 0 - adds r6, r5, 0 - movs r7, 0 - add r5, sp, 0x1C -_080605E6: - lsls r3, r4, 2 - ldr r0, _08060634 - ldr r2, [r0] - adds r0, r3, r2 - adds r0, 0x28 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080605FC - b _08060794 -_080605FC: - ldrh r0, [r6, 0x1A] - adds r0, 0x1 - strh r0, [r6, 0x1A] - adds r1, r3, 0 - adds r1, 0x28 - adds r1, r2, r1 - adds r0, r5, 0 - ldr r2, _08060638 - bl sub_8090E14 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8013800 - adds r1, r0, 0 - str r7, [sp] - movs r0, 0x8 - adds r2, r5, 0 - movs r3, 0 - bl sub_8014FF0 - adds r4, 0x1 - cmp r4, 0x9 - ble _080605E6 - b _08060794 - .align 2, 0 -_08060630: .4byte gUnknown_80FE920 -_08060634: .4byte gUnknown_203B460 -_08060638: .4byte gUnknown_8106B60 -_0806063C: - mov r1, r9 - movs r2, 0x4 - ldrsh r0, [r1, r2] - movs r3, 0x6 - ldrsh r1, [r1, r3] - bl sub_804954C - ldr r0, [r0, 0x14] - bl sub_8045108 - adds r7, r0, 0 - ldr r0, _080606A8 - ldr r2, [r0] - mov r4, r8 - str r4, [sp] - adds r0, r6, 0 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - ldrb r1, [r7] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08060698 - ldrh r0, [r5, 0x1A] - adds r0, 0x1 - strh r0, [r5, 0x1A] - add r4, sp, 0x1C - ldr r2, _080606AC - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_8090E14 - adds r0, r5, 0 - movs r1, 0 - bl sub_8013800 - adds r1, r0, 0 - mov r0, r8 - str r0, [sp] - movs r0, 0x8 - adds r2, r4, 0 - movs r3, 0 - bl sub_8014FF0 -_08060698: - ldr r1, [sp, 0x70] - cmp r1, 0 - beq _08060794 - mov r2, r8 - strh r2, [r5, 0xA] - strh r2, [r5, 0x8] - b _08060794 - .align 2, 0 -_080606A8: .4byte gUnknown_80FE92C -_080606AC: .4byte gUnknown_8106B60 -_080606B0: - mov r3, r9 - ldr r0, [r3, 0x70] - adds r7, r0, 0 - adds r7, 0x60 - ldr r0, _0806070C - ldr r1, [sp, 0x74] - movs r2, 0 - bl sub_80708B4 - ldr r0, _08060710 - ldr r2, [r0] - mov r4, r8 - str r4, [sp] - adds r0, r6, 0 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - ldrb r1, [r7] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08060794 - ldrh r0, [r5, 0x1A] - adds r0, 0x1 - strh r0, [r5, 0x1A] - add r4, sp, 0x1C - ldr r2, _08060714 - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_8090E14 - adds r0, r5, 0 - movs r1, 0 - bl sub_8013800 - adds r1, r0, 0 - mov r0, r8 - str r0, [sp] - movs r0, 0x8 - adds r2, r4, 0 - movs r3, 0 - bl sub_8014FF0 - b _08060794 - .align 2, 0 -_0806070C: .4byte gUnknown_202DF98 -_08060710: .4byte gUnknown_80FE940 -_08060714: .4byte gUnknown_8106B60 -_08060718: - ldr r0, _080607E0 - ldr r1, [r0] - ldr r0, _080607E4 - adds r0, r2, r0 - movs r2, 0 - ldrsh r0, [r0, r2] - subs r0, 0x4 - lsls r0, 2 - ldr r3, _080607E8 - adds r1, r3 - adds r1, r0 - ldr r4, [r1] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08060794 - ldr r1, [r4, 0x70] - adds r7, r1, 0 - adds r7, 0x60 - ldr r0, _080607EC - movs r2, 0 - bl sub_80708B4 - ldr r0, _080607F0 - ldr r2, [r0] - movs r4, 0 - mov r8, r4 - str r4, [sp] - adds r0, r6, 0 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - ldrb r1, [r7] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08060794 - ldr r4, _080607F4 - ldrh r0, [r4, 0x1A] - adds r0, 0x1 - strh r0, [r4, 0x1A] - add r5, sp, 0x1C - ldr r2, _080607F8 - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_8090E14 - adds r0, r4, 0 - movs r1, 0 - bl sub_8013800 - adds r1, r0, 0 - mov r0, r8 - str r0, [sp] - movs r0, 0x8 - adds r2, r5, 0 - movs r3, 0 - bl sub_8014FF0 -_08060794: - ldr r2, _080607F4 - movs r3, 0x18 - ldrsh r1, [r2, r3] - movs r4, 0x1A - ldrsh r0, [r2, r4] - cmp r1, r0 - blt _080607A6 - movs r0, 0 - strh r0, [r2, 0x18] -_080607A6: - movs r0, 0 - bl sub_80073E0 - ldr r0, [sp, 0x6C] - cmp r0, 0 - beq _080607D0 - movs r0, 0x1 - bl sub_80073B8 - ldr r0, _080607FC - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - movs r1, 0x2 - movs r3, 0x1 - bl sub_8014FF0 - movs r0, 0x1 - bl sub_80073E0 -_080607D0: - add sp, 0x78 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080607E0: .4byte gUnknown_203B418 -_080607E4: .4byte gUnknown_202F248 -_080607E8: .4byte 0x0001357c -_080607EC: .4byte gUnknown_202DF98 -_080607F0: .4byte gUnknown_80FE940 -_080607F4: .4byte gUnknown_202EE10 -_080607F8: .4byte gUnknown_8106B60 -_080607FC: .4byte gUnknown_80FE94C - thumb_func_end sub_80603D8 - - thumb_func_start sub_8060800 -sub_8060800: - push {r4-r7,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r1, 0 - ldr r0, _0806083C - ldr r2, [r0] - mov r12, r0 - ldr r6, _08060840 - cmp r1, r2 - bge _08060828 - adds r3, r6, 0 -_08060816: - movs r7, 0 - ldrsh r0, [r3, r7] - cmp r0, 0x1 - bgt _08060820 - adds r1, 0x1 -_08060820: - adds r3, 0x2 - subs r2, 0x1 - cmp r2, 0 - bne _08060816 -_08060828: - lsls r0, r4, 1 - adds r0, r6 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0x1 - bgt _08060844 - adds r3, r4, 0 - adds r2, r1, 0 - movs r1, 0 - b _0806084C - .align 2, 0 -_0806083C: .4byte gUnknown_202F258 -_08060840: .4byte gUnknown_202F248 -_08060844: - subs r3, r4, r1 - mov r7, r12 - ldr r0, [r7] - subs r2, r0, r1 -_0806084C: - cmp r5, 0 - beq _08060858 - movs r0, 0 - strb r2, [r5] - strb r3, [r5, 0x1] - strb r0, [r5, 0x3] -_08060858: - adds r0, r1, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8060800 - - thumb_func_start sub_8060860 -sub_8060860: - push {lr} - adds r1, r0, 0 - ldr r0, _08060880 - movs r2, 0x1A - ldrsh r0, [r0, r2] - cmp r0, 0x1 - ble _0806087C - ldr r0, _08060884 - lsls r1, 1 - adds r1, r0 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0x1 - ble _08060888 -_0806087C: - movs r0, 0 - b _0806088A - .align 2, 0 -_08060880: .4byte gUnknown_202EE10 -_08060884: .4byte gUnknown_202F248 -_08060888: - movs r0, 0x1 -_0806088A: - pop {r1} - bx r1 - thumb_func_end sub_8060860 - - thumb_func_start sub_8060890 -sub_8060890: - push {r4,lr} - adds r3, r0, 0 - ldr r1, _080608B4 - ldr r2, _080608B8 - movs r4, 0x1E - ldrsh r0, [r2, r4] - lsls r0, 1 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x1 - beq _080608D0 - cmp r0, 0x1 - bgt _080608BC - cmp r0, 0 - beq _080608C2 - b _080608E8 - .align 2, 0 -_080608B4: .4byte gUnknown_202F248 -_080608B8: .4byte gUnknown_202EE10 -_080608BC: - cmp r0, 0x2 - beq _080608DC - b _080608E8 -_080608C2: - ldr r1, _080608CC - ldrb r0, [r2, 0x18] - adds r0, 0x1 - b _080608EC - .align 2, 0 -_080608CC: .4byte gUnknown_202F238 -_080608D0: - ldr r1, _080608D8 - ldrb r0, [r2, 0x18] - adds r0, 0xB - b _080608EC - .align 2, 0 -_080608D8: .4byte gUnknown_202F238 -_080608DC: - ldr r1, _080608E4 - movs r0, 0x80 - b _080608EC - .align 2, 0 -_080608E4: .4byte gUnknown_202F238 -_080608E8: - ldr r1, _080608FC - subs r0, 0x74 -_080608EC: - strb r0, [r1] - ldrh r0, [r3] - strh r0, [r1, 0x4] - ldrh r0, [r3, 0x2] - strh r0, [r1, 0x6] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080608FC: .4byte gUnknown_202F238 - thumb_func_end sub_8060890 - - thumb_func_start sub_8060900 -sub_8060900: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r9, r0 - ldr r4, _08060964 - adds r1, r4, 0 - movs r2, 0xA - bl sub_8044CC8 - adds r7, r0, 0 - mov r0, r9 - ldr r0, [r0, 0x70] - mov r10, r0 - ldr r1, _08060968 - movs r0, 0 - str r0, [r1] - ldrb r0, [r4] - cmp r0, 0x8F - bls _0806092C - b _08060BD0 -_0806092C: - cmp r0, 0x80 - bne _080609B0 - ldrb r1, [r7, 0x2] - movs r0, 0x9 - bl sub_8044F5C - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - beq _08060992 - movs r2, 0 - ldr r0, _0806096C - ldr r0, [r0] - ldr r1, _08060970 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08060978 - ldr r0, _08060974 - ldr r0, [r0] - adds r0, 0x4C - ldrb r0, [r0] - movs r2, 0x1 - ands r2, r0 - b _08060988 - .align 2, 0 -_08060964: .4byte gUnknown_202F238 -_08060968: .4byte gUnknown_202EE6C -_0806096C: .4byte gUnknown_203B418 -_08060970: .4byte 0x0000065b -_08060974: .4byte gUnknown_203B460 -_08060978: - mov r0, r10 - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08060988 - movs r2, 0x1 -_08060988: - cmp r2, 0 - beq _08060992 - movs r0, 0x9 - bl sub_8044FF0 -_08060992: - ldr r0, _08060A20 - ldrb r0, [r0] - cmp r0, 0x80 - bne _080609B0 - ldr r0, _08060A24 - ldr r0, [r0] - ldr r2, _08060A28 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _080609B0 - ldrb r1, [r7, 0x2] - movs r0, 0xA - bl sub_8044F5C -_080609B0: - adds r0, r7, 0 - bl sub_8044DC8 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - beq _080609E8 - ldrb r1, [r7, 0x2] - adds r0, r4, 0 - bl sub_8044F5C - ldrb r1, [r7] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080609D6 - adds r0, r4, 0 - bl sub_8044FF0 -_080609D6: - adds r0, r7, 0 - bl sub_8046F00 - lsls r0, 24 - cmp r0, 0 - bne _080609E8 - adds r0, r4, 0 - bl sub_8044FF0 -_080609E8: - ldr r0, _08060A20 - ldrb r0, [r0] - cmp r0, 0x14 - bhi _08060A6C - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - cmp r0, 0 - beq _08060A0A - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08060A6C -_08060A0A: - ldrb r1, [r7] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08060A3A - ldrb r1, [r7, 0x2] - movs r0, 0x3D - bl sub_8044F5C - b _08060A42 - .align 2, 0 -_08060A20: .4byte gUnknown_202F238 -_08060A24: .4byte gUnknown_203B418 -_08060A28: .4byte 0x0000065b -_08060A2C: - movs r0, 0x3C - bl sub_8044FF0 - movs r0, 0x3D - bl sub_8044FF0 - b _08060A6C -_08060A3A: - ldrb r1, [r7, 0x2] - movs r0, 0x3C - bl sub_8044F5C -_08060A42: - movs r3, 0 - ldr r0, _08060AD4 - ldr r2, [r0] - movs r4, 0x1 -_08060A4A: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _08060A64 - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08060A64 - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _08060A2C -_08060A64: - adds r2, 0x4 - adds r3, 0x1 - cmp r3, 0x13 - ble _08060A4A -_08060A6C: - ldr r0, _08060AD8 - ldrb r0, [r0] - cmp r0, 0x81 - beq _08060AE8 - cmp r0, 0x80 - beq _08060B3C - movs r3, 0 - mov r8, r3 - ldrb r1, [r7, 0x2] - movs r0, 0x36 - bl sub_8044F5C - movs r6, 0 -_08060A86: - ldr r0, _08060ADC - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _08060AE0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08060ABE - ldr r0, [r4, 0x70] - ldr r3, _08060AE4 - adds r5, r0, r3 - movs r0, 0 - strb r0, [r5] - adds r0, r4, 0 - bl sub_8070C60 - lsls r0, 24 - cmp r0, 0 - bne _08060ABE - movs r0, 0x1 - mov r8, r0 - mov r1, r8 - strb r1, [r5] -_08060ABE: - adds r6, 0x1 - cmp r6, 0x3 - ble _08060A86 - mov r2, r8 - cmp r2, 0 - bne _08060B3C - movs r0, 0x36 - bl sub_8044FF0 - b _08060B3C - .align 2, 0 -_08060AD4: .4byte gUnknown_203B460 -_08060AD8: .4byte gUnknown_202F238 -_08060ADC: .4byte gUnknown_203B418 -_08060AE0: .4byte 0x0001357c -_08060AE4: .4byte 0x00000157 -_08060AE8: - ldr r0, _08060B10 - ldr r0, [r0] - ldr r3, _08060B14 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _08060B3C - ldr r0, _08060B18 - ldr r0, [r0] - adds r0, 0x4C - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08060B1C - ldrb r1, [r7, 0x2] - movs r0, 0x3E - bl sub_8044F5C - b _08060B24 - .align 2, 0 -_08060B10: .4byte gUnknown_203B418 -_08060B14: .4byte 0x0000065b -_08060B18: .4byte gUnknown_203B460 -_08060B1C: - ldrb r1, [r7, 0x2] - movs r0, 0x37 - bl sub_8044F5C -_08060B24: - mov r0, r9 - bl sub_8070C60 - lsls r0, 24 - cmp r0, 0 - beq _08060B3C - movs r0, 0x37 - bl sub_8044FF0 - movs r0, 0x3E - bl sub_8044FF0 -_08060B3C: - ldr r0, _08060B64 - ldrb r0, [r0] - cmp r0, 0x14 - bhi _08060B78 - mov r1, r9 - movs r2, 0x4 - ldrsh r0, [r1, r2] - movs r3, 0x6 - ldrsh r1, [r1, r3] - bl sub_804954C - ldr r0, [r0, 0x14] - cmp r0, 0 - bne _08060B68 - ldrb r1, [r7, 0x2] - movs r0, 0x8 - bl sub_8044F5C - b _08060B78 - .align 2, 0 -_08060B64: .4byte gUnknown_202F238 -_08060B68: - bl sub_80450F8 - cmp r0, 0x3 - bne _08060B78 - ldrb r1, [r7, 0x2] - movs r0, 0x3A - bl sub_8044F5C -_08060B78: - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - cmp r0, 0 - bne _08060B8E - ldrb r1, [r7, 0x2] - movs r0, 0x27 - bl sub_8044F5C - b _08060BAE -_08060B8E: - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08060BA6 - ldrb r1, [r7, 0x2] - movs r0, 0x41 - bl sub_8044F5C - b _08060BAE -_08060BA6: - ldrb r1, [r7, 0x2] - movs r0, 0xB - bl sub_8044F5C -_08060BAE: - mov r0, r10 - bl sub_8071A70 - lsls r0, 24 - cmp r0, 0 - beq _08060BBC - b _08060CCC -_08060BBC: - movs r0, 0x27 - bl sub_8044FF0 - movs r0, 0x41 - bl sub_8044FF0 - movs r0, 0xB - bl sub_8044FF0 - b _08060CCC -_08060BD0: - ldrb r1, [r4] - subs r1, 0x90 - ldr r0, _08060C50 - mov r9, r0 - ldr r0, [r0] - lsls r1, 2 - ldr r2, _08060C54 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08060CCC - ldr r3, [r4, 0x70] - mov r8, r3 - movs r5, 0 - adds r0, r4, 0 - bl sub_8070C60 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r6, r1, 31 - ldr r0, _08060C58 - ldr r0, [r0] - adds r0, 0x4C - ldrb r0, [r0] - movs r4, 0x1 - ands r4, r0 - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _08060C22 - movs r5, 0x1 -_08060C22: - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x9 - bne _08060C32 - movs r5, 0x1 -_08060C32: - mov r1, r9 - ldr r0, [r1] - ldr r2, _08060C5C - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08060C78 - cmp r4, 0 - beq _08060C60 - ldrb r1, [r7, 0x2] - movs r0, 0x3E - bl sub_8044F5C - b _08060C68 - .align 2, 0 -_08060C50: .4byte gUnknown_203B418 -_08060C54: .4byte 0x0001357c -_08060C58: .4byte gUnknown_203B460 -_08060C5C: .4byte 0x0000065b -_08060C60: - ldrb r1, [r7, 0x2] - movs r0, 0x37 - bl sub_8044F5C -_08060C68: - cmp r6, 0 - beq _08060C78 - movs r0, 0x37 - bl sub_8044FF0 - movs r0, 0x3E - bl sub_8044FF0 -_08060C78: - mov r3, r8 - ldrb r0, [r3, 0x7] - cmp r0, 0 - beq _08060CBA - adds r0, r7, 0 - bl sub_8044DC8 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - beq _08060CCC - ldrb r1, [r7, 0x2] - adds r0, r4, 0 - bl sub_8044F5C - ldrb r1, [r7] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08060CA6 - adds r0, r4, 0 - bl sub_8044FF0 -_08060CA6: - adds r0, r7, 0 - bl sub_8046F00 - lsls r0, 24 - cmp r0, 0 - bne _08060CCC - adds r0, r4, 0 - bl sub_8044FF0 - b _08060CCC -_08060CBA: - ldrb r1, [r7, 0x2] - movs r0, 0x38 - bl sub_8044F5C - cmp r5, 0 - beq _08060CCC - movs r0, 0x38 - bl sub_8044FF0 -_08060CCC: - ldrb r1, [r7, 0x2] - movs r0, 0xC - bl sub_8044F5C - bl sub_8045064 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8060900 - - thumb_func_start sub_8060CE8 -sub_8060CE8: - push {r4,lr} - adds r4, r0, 0 - ldr r1, _08060D18 - ldr r0, _08060D1C - movs r2, 0x18 - ldrsh r0, [r0, r2] - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0] - adds r0, r4, 0 - bl sub_8044C94 - ldr r0, _08060D20 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [r4, 0x4] - str r1, [r4, 0x8] - movs r0, 0 - strb r0, [r4, 0xC] - strh r0, [r4, 0x10] - strh r0, [r4, 0x12] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08060D18: .4byte gUnknown_202EE44 -_08060D1C: .4byte gUnknown_202EE10 -_08060D20: .4byte gUnknown_202F238 - thumb_func_end sub_8060CE8 - - thumb_func_start sub_8060D24 -sub_8060D24: - push {r4,lr} - bl sub_8083600 - movs r1, 0 - movs r2, 0xB - bl sub_8044D90 - adds r4, r0, 0 - movs r0, 0 - movs r1, 0 - bl sub_803ECB4 - adds r0, r4, 0 - bl sub_801B3C0 -_08060D42: - movs r0, 0x16 - bl sub_803E46C - bl sub_801B410 - cmp r0, 0 - beq _08060D42 - bl sub_801B450 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8060D24 - - thumb_func_start sub_8060D64 -sub_8060D64: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - movs r7, 0 - ldr r0, _08060E28 - ldr r0, [r0] - ldr r1, _08060E2C - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08060DB8 - cmp r6, 0 - bne _08060DB8 - ldr r5, _08060E30 - ldr r0, [r5] - ldrb r1, [r0] - movs r3, 0x1 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08060DA2 - strh r7, [r4] - movs r7, 0x1 -_08060DA2: - ldr r0, [r5] - adds r0, 0x28 - ldrb r1, [r0] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08060DB8 - lsls r0, r7, 1 - adds r0, r4 - strh r3, [r0] - adds r7, 0x1 -_08060DB8: - cmp r2, 0 - beq _08060DD4 - ldr r0, [sp, 0x18] - adds r0, 0x4 - bl sub_804ACE4 - lsls r0, 24 - cmp r0, 0 - beq _08060DD4 - lsls r0, r7, 1 - adds r0, r4 - movs r1, 0x2 - strh r1, [r0] - adds r7, 0x1 -_08060DD4: - cmp r6, 0 - bne _08060E1A - mov r2, r8 - cmp r2, 0 - bne _08060E1A - movs r5, 0 - lsls r0, r7, 1 - adds r6, r0, r4 -_08060DE4: - ldr r0, _08060E28 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08060E34 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08060E14 - ldr r0, [r4, 0x70] - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08060E14 - adds r0, r5, 0x4 - strh r0, [r6] - adds r6, 0x2 - adds r7, 0x1 -_08060E14: - adds r5, 0x1 - cmp r5, 0x3 - ble _08060DE4 -_08060E1A: - adds r0, r7, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08060E28: .4byte gUnknown_203B418 -_08060E2C: .4byte 0x0000065b -_08060E30: .4byte gUnknown_203B460 -_08060E34: .4byte 0x0001357c - thumb_func_end sub_8060D64 - - thumb_func_start sub_8060E38 -sub_8060E38: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x7C - str r0, [sp, 0x78] - add r4, sp, 0x18 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [r4, 0x4] - movs r0, 0x2 - strh r0, [r4, 0x8] - strh r0, [r4, 0xA] - movs r0, 0xE - strh r0, [r4, 0xC] - movs r0, 0x10 - strh r0, [r4, 0xE] - strh r0, [r4, 0x10] - ldr r0, _08061018 - str r0, [r4, 0x14] - movs r0, 0x3 - str r0, [r4, 0x1C] - str r0, [r4, 0x34] - str r0, [r4, 0x4C] - movs r5, 0 - mov r9, r4 - add r0, sp, 0x4 - mov r8, r0 -_08060E7A: - ldr r6, _0806101C - ldr r0, [r6] - lsls r1, r5, 2 - ldr r2, _08061020 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08060E9E - ldr r0, [r4, 0x70] - ldr r2, _08061024 - adds r1, r0, r2 - movs r0, 0x1 - strb r0, [r1] -_08060E9E: - adds r5, 0x1 - cmp r5, 0x3 - ble _08060E7A - ldr r0, [r6] - ldr r1, _08061028 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08060EBC - movs r0, 0x3 - mov r2, r9 - str r0, [r2, 0x4] - ldrh r0, [r2, 0xA] - adds r0, 0x1 - strh r0, [r2, 0xA] -_08060EBC: - ldr r6, _0806102C -_08060EBE: - movs r7, 0 - mov r0, sp - mov r1, r9 - movs r2, 0x1 - bl sub_8061130 - movs r0, 0 - mov r10, r0 -_08060ECE: - movs r1, 0x18 - ldrsh r0, [r6, r1] - lsls r0, 2 - add r0, r8 - ldr r1, [r0] - cmp r1, 0 - blt _08060F00 - ldr r0, _0806101C - ldr r0, [r0] - lsls r1, 2 - ldr r2, _08061020 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - movs r1, 0 - bl sub_806A2BC - adds r4, 0x4 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_804A728 -_08060F00: - adds r0, r6, 0 - bl AddMenuCursorSprite - movs r0, 0x1B - bl sub_803E46C - ldr r4, _08061030 - ldrh r1, [r4, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08060F26 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r6, 0 - movs r1, 0x1 - bl sub_80136E0 -_08060F26: - ldrh r1, [r4, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08060F3E - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r6, 0 - movs r1, 0x1 - bl sub_8013744 -_08060F3E: - ldrh r1, [r4, 0x2] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08060F5A - movs r1, 0x18 - ldrsh r0, [r6, r1] - add r1, sp, 0x14 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - bne _08061046 - bl sub_8083D30 -_08060F5A: - ldrh r1, [r4, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08060F6C - ldr r2, _08061034 - ldrb r0, [r2] - cmp r0, 0 - beq _08060F7E -_08060F6C: - movs r1, 0x18 - ldrsh r0, [r6, r1] - add r1, sp, 0x14 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - bne _08061040 - bl sub_8083D30 -_08060F7E: - ldr r0, _08061030 - ldrh r1, [r0, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08060F92 - ldr r2, _08061038 - ldrb r0, [r2] - cmp r0, 0 - beq _08060ECE -_08060F92: - bl sub_8083D30 - movs r7, 0x1 -_08060F98: - ldr r5, _0806102C - movs r1, 0x18 - ldrsh r0, [r5, r1] - lsls r0, 2 - add r0, r8 - ldr r1, [r0] - cmp r1, 0 - blt _08060FCC - ldr r0, _0806101C - ldr r0, [r0] - lsls r1, 2 - ldr r2, _08061020 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - movs r1, 0 - bl sub_806A2BC - adds r4, 0x4 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_804A728 -_08060FCC: - adds r0, r5, 0 - bl AddMenuCursorSprite - movs r0, 0x1B - bl sub_803E46C - bl sub_804AA60 - cmp r7, 0 - beq _08060FE2 - b _0806110C -_08060FE2: - movs r1, 0x18 - ldrsh r0, [r5, r1] - str r0, [sp] - ldr r1, _0806103C - movs r2, 0x18 - ldrsh r0, [r5, r2] - str r0, [r1] - mov r0, sp - bl sub_806145C - mov r0, r10 - cmp r0, 0 - beq _08061064 - ldr r1, [sp, 0x78] - ldr r4, [r1, 0x70] - adds r0, r4, 0 - adds r0, 0x44 - movs r1, 0x1B - bl sub_8044C94 - ldr r0, [sp] - lsls r0, 2 - add r0, r8 - ldr r0, [r0] - adds r4, 0x48 - strb r0, [r4] - b _08061116 - .align 2, 0 -_08061018: .4byte gUnknown_202F270 -_0806101C: .4byte gUnknown_203B418 -_08061020: .4byte 0x0001357c -_08061024: .4byte 0x00000157 -_08061028: .4byte 0x0000065b -_0806102C: .4byte gUnknown_202EE10 -_08061030: .4byte gUnknown_20255F0 -_08061034: .4byte gUnknown_202EE39 -_08061038: .4byte gUnknown_202EE3A -_0806103C: .4byte gUnknown_202F260 -_08061040: - bl sub_8083D08 - b _08060F98 -_08061046: - bl sub_8083D44 - movs r2, 0x1 - mov r10, r2 - b _08060F98 -_08061050: - ldr r1, [sp, 0x78] - ldr r0, [r1, 0x70] - adds r0, 0x44 - mov r1, sp - bl sub_80615B4 - bl sub_8083D08 - movs r4, 0 - b _080610EA -_08061064: - mov r0, r9 - movs r1, 0x12 - bl sub_805FC30 - adds r4, r5, 0 - ldr r5, _08061100 - adds r7, r4, 0 - adds r7, 0x2A -_08061074: - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x1B - bl sub_803E46C - ldrh r1, [r5, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08061098 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80136E0 -_08061098: - ldrh r1, [r5, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080610B0 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013744 -_080610B0: - ldrh r1, [r5, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080610C2 - ldr r2, _08061104 - ldrb r0, [r2] - cmp r0, 0 - beq _080610D4 -_080610C2: - movs r1, 0x18 - ldrsh r0, [r4, r1] - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - bne _08061050 - bl sub_8083D30 -_080610D4: - ldrh r1, [r5, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080610E4 - ldrb r0, [r7] - cmp r0, 0 - beq _08061074 -_080610E4: - bl sub_8083D30 - movs r4, 0x1 -_080610EA: - ldr r0, _08061108 - bl AddMenuCursorSprite - movs r0, 0x1B - bl sub_803E46C - cmp r4, 0x1 - bne _080610FC - b _08060EBE -_080610FC: - movs r7, 0 - b _08061116 - .align 2, 0 -_08061100: .4byte gUnknown_20255F0 -_08061104: .4byte gUnknown_202EE39 -_08061108: .4byte gUnknown_202EE10 -_0806110C: - bl sub_8083600 - movs r1, 0 - bl sub_806A2BC -_08061116: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - adds r0, r7, 0 - add sp, 0x7C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8060E38 - - thumb_func_start sub_8061130 -sub_8061130: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - mov r9, r0 - mov r8, r1 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x8] - movs r7, 0 - movs r1, 0 - mov r2, r8 - ldr r0, [r2, 0x4] - cmp r0, 0x6 - bne _08061154 - movs r1, 0x1 -_08061154: - mov r10, r1 - bl sub_8083600 - adds r1, r0, 0 - add r0, sp, 0x4 - bl sub_8069D18 - movs r6, 0 -_08061164: - ldr r0, _08061318 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r3, _0806131C - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080611AC - lsls r1, r7, 2 - mov r0, r9 - adds r0, 0x4 - adds r0, r1 - str r6, [r0] - ldr r0, [r4, 0x70] - mov r1, r9 - adds r1, 0x14 - adds r1, r7 - ldr r5, _08061320 - adds r0, r5 - ldrb r0, [r0] - strb r0, [r1] - ldr r1, [sp, 0x4] - ldr r0, [r4, 0x4] - cmp r1, r0 - bne _080611AA - ldr r1, _08061324 - ldr r0, [r1] - cmp r0, 0 - bge _080611AA - str r7, [r1] -_080611AA: - adds r7, 0x1 -_080611AC: - adds r6, 0x1 - cmp r6, 0x3 - ble _08061164 - ldr r0, _08061324 - ldr r1, [r0] - adds r5, r0, 0 - cmp r1, r7 - blt _080611C0 - subs r0, r7, 0x1 - str r0, [r5] -_080611C0: - ldr r0, [r5] - cmp r0, 0 - bge _080611CA - movs r0, 0 - str r0, [r5] -_080611CA: - adds r6, r7, 0 - mov r0, r10 - negs r3, r0 - cmp r7, 0x3 - bgt _080611F4 - movs r1, 0x1 - negs r1, r1 - mov r12, r1 - mov r2, r9 - adds r2, 0x14 - movs r4, 0 - lsls r0, r7, 2 - adds r1, r0, 0x4 - add r1, r9 -_080611E6: - mov r0, r12 - stm r1!, {r0} - adds r0, r2, r6 - strb r4, [r0] - adds r6, 0x1 - cmp r6, 0x3 - ble _080611E6 -_080611F4: - ldr r1, _08061328 - movs r4, 0 - movs r0, 0x1 - strb r0, [r1] - strb r4, [r1, 0x1] - strb r4, [r1, 0x3] - ldr r0, _0806132C - ldr r1, [r5] - strh r1, [r0, 0x18] - strh r7, [r0, 0x1A] - strh r7, [r0, 0x1C] - strh r4, [r0, 0x1E] - strh r4, [r0, 0x20] - strh r4, [r0, 0x4] - mov r1, r10 - orrs r3, r1 - asrs r1, r3, 31 - movs r2, 0x10 - ands r1, r2 - strh r1, [r0, 0x6] - strh r4, [r0, 0xC] - strh r4, [r0, 0xE] - strh r4, [r0, 0x14] - str r4, [r0] - adds r0, 0x28 - bl sub_801317C - adds r0, r7, 0 - movs r1, 0 - bl sub_80095E4 - mov r2, r10 - cmp r2, 0 - beq _0806123A - adds r0, 0x2 -_0806123A: - mov r3, r8 - strh r0, [r3, 0x10] - strh r0, [r3, 0xE] - movs r0, 0x8 - ldr r5, _08061328 - strb r0, [r5, 0x2] - ldr r0, [sp, 0x8] - cmp r0, 0 - beq _0806125C - mov r1, r8 - adds r1, 0x18 - mov r0, r8 - adds r0, 0x48 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} -_0806125C: - mov r0, r8 - movs r1, 0x1 - bl sub_803ECB4 - ldr r0, _0806132C - movs r1, 0 - bl sub_80137B0 - movs r0, 0 - bl sub_80073B8 - mov r0, r10 - cmp r0, 0 - beq _08061286 - ldr r2, _08061330 - str r4, [sp] - movs r0, 0xC - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 -_08061286: - movs r6, 0 - cmp r6, r7 - blt _0806128E - b _08061440 -_0806128E: - lsls r1, r6, 2 - mov r0, r9 - adds r0, 0x4 - adds r0, r1 - ldr r1, [r0] - cmp r1, 0 - bge _0806129E - b _08061438 -_0806129E: - ldr r0, _08061318 - ldr r0, [r0] - lsls r1, 2 - ldr r2, _0806131C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080612BA - b _08061438 -_080612BA: - ldr r5, [r4, 0x70] - mov r0, r9 - adds r0, 0x14 - adds r0, r6 - ldrb r0, [r0] - movs r2, 0x2 - cmp r0, 0 - beq _080612CC - movs r2, 0x6 -_080612CC: - ldr r4, _08061334 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8070968 - ldr r0, _08061338 - ldr r1, [r0] - ldrb r2, [r5, 0xA] - movs r0, 0x64 - muls r0, r2 - adds r1, r0 - ldr r3, _0806133C - adds r1, r3 - movs r2, 0 - ldrsh r0, [r1, r2] - bl sub_806A538 - lsls r0, 24 - cmp r0, 0 - beq _08061388 - movs r3, 0x10 - ldrsh r2, [r5, r3] - adds r1, r2, 0 - cmp r2, 0 - bge _08061300 - adds r1, r2, 0x3 -_08061300: - movs r3, 0xE - ldrsh r0, [r5, r3] - asrs r1, 2 - cmp r0, r1 - bgt _08061344 - adds r0, r4, 0 - adds r0, 0x50 - ldr r1, _08061340 - bl strcpy - b _080613EE - .align 2, 0 -_08061318: .4byte gUnknown_203B418 -_0806131C: .4byte 0x0001357c -_08061320: .4byte 0x00000157 -_08061324: .4byte gUnknown_202F260 -_08061328: .4byte gUnknown_202F270 -_0806132C: .4byte gUnknown_202EE10 -_08061330: .4byte gUnknown_8106BB0 -_08061334: .4byte gUnknown_202DF98 -_08061338: .4byte gUnknown_203B45C -_0806133C: .4byte 0x00008e02 -_08061340: .4byte gUnknown_8106BB4 -_08061344: - movs r0, 0xE - ldrsh r3, [r5, r0] - lsls r0, r1, 1 - cmp r3, r0 - bgt _08061360 - adds r0, r4, 0 - adds r0, 0x50 - ldr r1, _0806135C - bl strcpy - b _080613EE - .align 2, 0 -_0806135C: .4byte gUnknown_8106BB8 -_08061360: - adds r0, r1 - cmp r3, r0 - bgt _08061378 - adds r0, r4, 0 - adds r0, 0x50 - ldr r1, _08061374 - bl strcpy - b _080613EE - .align 2, 0 -_08061374: .4byte gUnknown_8106BBC -_08061378: - adds r0, r4, 0 - adds r0, 0x50 - ldr r1, _08061384 - bl strcpy - b _080613EE - .align 2, 0 -_08061384: .4byte gUnknown_8106BC0 -_08061388: - movs r1, 0x10 - ldrsh r2, [r5, r1] - adds r1, r2, 0 - cmp r2, 0 - bge _08061394 - adds r1, r2, 0x3 -_08061394: - movs r3, 0xE - ldrsh r0, [r5, r3] - asrs r1, 2 - cmp r0, r1 - bgt _080613B0 - adds r0, r4, 0 - adds r0, 0x50 - ldr r1, _080613AC - bl strcpy - b _080613EE - .align 2, 0 -_080613AC: .4byte gUnknown_8106BC4 -_080613B0: - movs r0, 0xE - ldrsh r3, [r5, r0] - lsls r0, r1, 1 - cmp r3, r0 - bgt _080613CC - adds r0, r4, 0 - adds r0, 0x50 - ldr r1, _080613C8 - bl strcpy - b _080613EE - .align 2, 0 -_080613C8: .4byte gUnknown_8106BC8 -_080613CC: - adds r0, r1 - cmp r3, r0 - bgt _080613E4 - adds r0, r4, 0 - adds r0, 0x50 - ldr r1, _080613E0 - bl strcpy - b _080613EE - .align 2, 0 -_080613E0: .4byte gUnknown_8106BCC -_080613E4: - adds r0, r4, 0 - adds r0, 0x50 - ldr r1, _0806141C - bl strcpy -_080613EE: - ldr r0, _08061420 - movs r2, 0xE - ldrsh r1, [r5, r2] - str r1, [r0] - movs r3, 0x10 - ldrsh r1, [r5, r3] - str r1, [r0, 0x4] - ldr r0, _08061424 - adds r1, r6, 0 - bl sub_8013800 - adds r1, r0, 0 - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _0806142C - movs r0, 0 - str r0, [sp] - movs r0, 0x9 - ldr r2, _08061428 - movs r3, 0 - bl sub_8014FF0 - b _08061438 - .align 2, 0 -_0806141C: .4byte gUnknown_8106BD0 -_08061420: .4byte gUnknown_202DE30 -_08061424: .4byte gUnknown_202EE10 -_08061428: .4byte gUnknown_8106BD4 -_0806142C: - str r0, [sp] - movs r0, 0x9 - ldr r2, _08061458 - movs r3, 0 - bl sub_8014FF0 -_08061438: - adds r6, 0x1 - cmp r6, r7 - bge _08061440 - b _0806128E -_08061440: - movs r0, 0 - bl sub_80073E0 - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08061458: .4byte gUnknown_8106BE0 - thumb_func_end sub_8061130 - - thumb_func_start sub_806145C -sub_806145C: - push {r4-r6,lr} - ldr r2, _08061560 - movs r1, 0 - str r1, [r2] - ldr r5, _08061564 - ldr r2, [r5] - ldr r1, _08061568 - movs r3, 0x18 - ldrsh r1, [r1, r3] - lsls r1, 2 - adds r0, 0x4 - adds r0, r1 - ldr r0, [r0] - lsls r0, 2 - ldr r1, _0806156C - adds r2, r1 - adds r2, r0 - ldr r6, [r2] - ldr r4, [r6, 0x70] - movs r0, 0x1B - movs r1, 0 - bl sub_8044F5C - movs r0, 0x19 - movs r1, 0 - bl sub_8044F5C - ldrb r0, [r4, 0x7] - cmp r0, 0 - bne _080614C8 - ldr r2, [r5] - ldr r3, _08061570 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _080614C0 - adds r0, r4, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x41 - bne _080614B8 - ldr r1, _08061574 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080614C0 -_080614B8: - movs r0, 0x34 - movs r1, 0 - bl sub_8044F5C -_080614C0: - movs r0, 0x1C - movs r1, 0 - bl sub_8044F5C -_080614C8: - movs r0, 0x30 - movs r1, 0 - bl sub_8044F5C - ldrb r0, [r4, 0x7] - cmp r0, 0 - bne _0806154C - movs r0, 0x1A - movs r1, 0 - bl sub_8044F5C - ldrb r0, [r4, 0x7] - cmp r0, 0 - bne _0806154C - ldr r0, _08061564 - ldr r1, [r0] - ldr r2, _08061574 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0806154C - ldr r3, _08061578 - adds r0, r1, r3 - ldrb r0, [r0] - bl sub_8090158 - lsls r0, 24 - cmp r0, 0 - beq _0806154C - movs r0, 0x3B - movs r1, 0 - bl sub_8044F5C - movs r5, 0x1 - ldrb r0, [r4, 0xA] - cmp r0, 0x3 - bhi _08061530 - ldr r2, _0806157C - ldrb r1, [r4, 0xA] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08061580 - adds r1, r0 - ldr r0, [r2] - adds r0, r1 - movs r1, 0xA - ldrsh r0, [r0, r1] - bl sub_806A538 - lsls r0, 24 - cmp r0, 0 - beq _08061532 -_08061530: - movs r5, 0 -_08061532: - adds r0, r6, 0 - movs r1, 0 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - beq _08061542 - movs r5, 0 -_08061542: - cmp r5, 0 - bne _0806154C - movs r0, 0x3B - bl sub_8044FF0 -_0806154C: - adds r0, r4, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _0806155A - cmp r0, 0x47 - bne _08061584 -_0806155A: - movs r0, 0x1 - b _08061586 - .align 2, 0 -_08061560: .4byte gUnknown_202EE6C -_08061564: .4byte gUnknown_203B418 -_08061568: .4byte gUnknown_202EE10 -_0806156C: .4byte 0x0001357c -_08061570: .4byte 0x0000065d -_08061574: .4byte 0x0000065c -_08061578: .4byte 0x00000644 -_0806157C: .4byte gUnknown_203B45C -_08061580: .4byte 0x00008df8 -_08061584: - movs r0, 0 -_08061586: - cmp r0, 0 - beq _080615A8 - movs r0, 0x19 - bl sub_8044FF0 - movs r0, 0x3B - bl sub_8044FF0 - movs r0, 0x1A - bl sub_8044FF0 - movs r0, 0x30 - bl sub_8044FF0 - movs r0, 0x34 - bl sub_8044FF0 -_080615A8: - bl sub_8045064 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_806145C - - thumb_func_start sub_80615B4 -sub_80615B4: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r1, _080615E0 - ldr r0, _080615E4 - movs r2, 0x18 - ldrsh r0, [r0, r2] - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0] - adds r0, r5, 0 - bl sub_8044C94 - ldm r4!, {r0} - lsls r0, 2 - adds r4, r0 - ldr r0, [r4] - strb r0, [r5, 0x4] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080615E0: .4byte gUnknown_202EE44 -_080615E4: .4byte gUnknown_202EE10 - thumb_func_end sub_80615B4 - - thumb_func_start sub_80615E8 -sub_80615E8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x7C - adds r5, r0, 0 - mov r4, sp - mov r0, sp - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x4] - movs r1, 0x2 - strh r1, [r4, 0x8] - strh r1, [r4, 0xA] - movs r2, 0x12 - strh r2, [r4, 0xC] - movs r0, 0xE - strh r0, [r4, 0xE] - strh r2, [r4, 0x10] - strh r1, [r4, 0x12] - ldr r0, _08061720 - str r0, [sp, 0x14] - movs r0, 0x3 - str r0, [sp, 0x1C] - str r0, [sp, 0x34] - str r0, [sp, 0x4C] - ldr r0, _08061724 - ldr r1, [r0] - ldrb r0, [r5, 0x4] - lsls r0, 2 - ldr r2, _08061728 - adds r1, r2 - adds r1, r0 - ldr r1, [r1] - str r1, [sp, 0x74] - ldr r0, [r1, 0x70] - mov r8, r0 - movs r1, 0 - str r1, [sp, 0x70] - movs r2, 0 - str r2, [sp, 0x6C] - add r0, sp, 0x60 - mov r10, r0 -_08061646: - movs r1, 0x1 - str r1, [sp, 0x78] - movs r7, 0 - ldr r0, _08061720 - strb r1, [r0] - strb r7, [r0, 0x1] - movs r1, 0xA - strb r1, [r0, 0x2] - strb r7, [r0, 0x3] - mov r0, sp - movs r1, 0x1 - bl sub_803ECB4 - ldr r0, [sp, 0x6C] - mov r1, r10 - mov r2, r8 - movs r3, 0 - bl sub_806195C - movs r2, 0 - mov r1, r10 - ldrb r0, [r1] - cmp r0, 0xB - beq _08061684 -_08061676: - adds r2, 0x1 - cmp r2, 0x7 - bgt _08061684 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0xB - bne _08061676 -_08061684: - ldr r4, _0806172C - movs r1, 0 - strh r2, [r4, 0x1A] - movs r0, 0x8 - strh r0, [r4, 0x1C] - strh r1, [r4, 0x1E] - strh r1, [r4, 0x20] - strh r1, [r4, 0x4] - movs r0, 0x10 - strh r0, [r4, 0x6] - strh r1, [r4, 0xC] - strh r1, [r4, 0xE] - strh r1, [r4, 0x14] - str r1, [r4] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - adds r0, r4, 0 - movs r1, 0 - bl sub_80137B0 - add r2, sp, 0x70 - ldrh r2, [r2] - strh r2, [r4, 0x18] - mov r9, r4 - mov r6, r10 -_080616BA: - mov r0, r9 - bl AddMenuCursorSprite - ldrb r0, [r6, 0x8] - cmp r0, 0xB - beq _080616CA - bl sub_80623B0 -_080616CA: - ldr r0, [sp, 0x6C] - cmp r0, 0 - beq _080616D4 - bl sub_8062230 -_080616D4: - movs r0, 0x3D - bl sub_803E46C - ldr r0, _08061730 - ldrh r1, [r0, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08061740 - movs r0, 0x1 - bl sub_8083CE0 - mov r1, r9 - movs r2, 0x18 - ldrsh r0, [r1, r2] - cmp r0, 0x7 - bne _08061738 - ldrb r0, [r6, 0x8] - cmp r0, 0xB - beq _0806171A - ldr r5, [sp, 0x6C] - adds r5, 0x1 - ldr r6, _08061734 - movs r4, 0x5 -_08061704: - ldr r1, [r6] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x3D - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08061704 - str r5, [sp, 0x6C] -_0806171A: - movs r0, 0x7 - str r0, [sp, 0x70] - b _08061926 - .align 2, 0 -_08061720: .4byte gUnknown_202F270 -_08061724: .4byte gUnknown_203B418 -_08061728: .4byte 0x0001357c -_0806172C: .4byte gUnknown_202EE10 -_08061730: .4byte gUnknown_20255F0 -_08061734: .4byte gUnknown_203B080 -_08061738: - mov r0, r9 - movs r1, 0 - bl sub_80136E0 -_08061740: - ldr r0, _08061788 - ldrh r1, [r0, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0806179C - movs r0, 0x1 - bl sub_8083CE0 - ldr r1, _0806178C - movs r2, 0x18 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _08061794 - ldr r0, [sp, 0x6C] - cmp r0, 0 - beq _08061780 - adds r5, r0, 0 - subs r5, 0x1 - ldr r6, _08061790 - movs r4, 0x5 -_0806176A: - ldr r1, [r6] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x3D - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _0806176A - str r5, [sp, 0x6C] -_08061780: - movs r1, 0 - str r1, [sp, 0x70] - b _08061926 - .align 2, 0 -_08061788: .4byte gUnknown_20255F0 -_0806178C: .4byte gUnknown_202EE10 -_08061790: .4byte gUnknown_203B084 -_08061794: - adds r0, r1, 0 - movs r1, 0 - bl sub_8013744 -_0806179C: - ldr r4, _080617C8 - ldrh r1, [r4, 0x2] - movs r0, 0x8 - ands r0, r1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0 - beq _080617DE - mov r2, r9 - movs r1, 0x18 - ldrsh r0, [r2, r1] - mov r2, r10 - adds r1, r2, r0 - ldrb r4, [r1] - str r0, [sp, 0x70] - bl sub_8083D44 - adds r0, r4, 0 - bl sub_8062748 -_080617C4: - movs r7, 0 - b _08061926 - .align 2, 0 -_080617C8: .4byte gUnknown_20255F0 -_080617CC: - bl sub_8083D08 - mov r0, r9 - movs r1, 0x18 - ldrsh r4, [r0, r1] - cmp r4, 0 - beq _080617DC - b _08061900 -_080617DC: - b _080618C4 -_080617DE: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080617F4 - ldr r2, _080618BC - adds r0, r2, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - bne _080617F4 - b _0806190C -_080617F4: - mov r2, r9 - movs r0, 0x18 - ldrsh r1, [r2, r0] - mov r2, r10 - adds r0, r2, r1 - ldrb r7, [r0] - str r1, [sp, 0x70] - bl sub_8062D68 - bl sub_8083D08 - ldr r0, _080618C0 - str r5, [r0] - movs r0, 0x2F - movs r1, 0 - bl sub_8044F5C - movs r0, 0xC - movs r1, 0 - bl sub_8044F5C - ldr r0, [sp, 0x74] - movs r1, 0x1 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - beq _08061832 - movs r0, 0x2F - bl sub_8044FF0 -_08061832: - mov r0, sp - movs r1, 0x16 - bl sub_805FC30 - ldr r5, _080618BC - adds r6, r4, 0 - adds r4, r5, 0 - adds r4, 0x2A -_08061842: - adds r0, r5, 0 - bl AddMenuCursorSprite - movs r0, 0x3D - bl sub_803E46C - ldrh r1, [r6, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08061866 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80136E0 -_08061866: - ldrh r1, [r6, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0806187E - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8013744 -_0806187E: - ldrh r1, [r6, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08061892 - adds r0, r5, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _080618A4 -_08061892: - movs r1, 0x18 - ldrsh r0, [r5, r1] - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - bne _080617CC - bl sub_8083D30 -_080618A4: - ldrh r1, [r6, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080618B4 - ldrb r0, [r4] - cmp r0, 0 - beq _08061842 -_080618B4: - bl sub_8083D30 - b _080617C4 - .align 2, 0 -_080618BC: .4byte gUnknown_202EE10 -_080618C0: .4byte gUnknown_202EE6C -_080618C4: - ldr r0, _080618FC - bl sub_8083E38 - mov r0, r8 - adds r0, 0x94 - strb r7, [r0] - mov r1, r8 - adds r1, 0x78 - movs r0, 0x6 - strb r0, [r1] - mov r0, r8 - adds r0, 0x80 - str r4, [r0] - adds r0, 0x4 - str r4, [r0] - subs r0, 0x8 - strh r4, [r0] - mov r2, r8 - ldrb r0, [r2, 0x7] - cmp r0, 0 - beq _080618F0 - b _080617C4 -_080618F0: - ldr r0, [sp, 0x74] - movs r1, 0x1 - bl sub_807ADB8 - b _080617C4 - .align 2, 0 -_080618FC: .4byte 0x00000133 -_08061900: - adds r0, r7, 0 - bl sub_8062748 - movs r0, 0 - str r0, [sp, 0x78] - b _080617C4 -_0806190C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08061920 - adds r0, r2, 0 - adds r0, 0x2A - ldrb r0, [r0] - cmp r0, 0 - bne _08061920 - b _080616BA -_08061920: - bl sub_8083D30 - movs r7, 0x1 -_08061926: - ldr r1, [sp, 0x78] - cmp r1, 0 - beq _08061932 - ldr r0, _08061958 - bl AddMenuCursorSprite -_08061932: - movs r0, 0x3D - bl sub_803E46C - cmp r7, 0 - bne _0806193E - b _08061646 -_0806193E: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - add sp, 0x7C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08061958: .4byte gUnknown_202EE10 - thumb_func_end sub_80615E8 - - thumb_func_start sub_806195C -sub_806195C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - adds r5, r0, 0 - mov r9, r1 - str r2, [sp, 0x10] - adds r7, r3, 0 - subs r5, 0x1 - adds r0, r7, 0 - bl sub_80073B8 - ldr r0, _080619B4 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x10 - movs r1, 0 - adds r3, r7, 0 - bl xxx_call_draw_string - movs r0, 0x14 - mov r8, r0 - movs r1, 0xB - mov r0, r9 - adds r0, 0x8 -_08061994: - strb r1, [r0] - subs r0, 0x1 - cmp r0, r9 - bge _08061994 - bl sub_8083654 - ldrb r1, [r0, 0x9] - add r0, sp, 0x4 - bl sub_808EB0C - movs r6, 0x1 - negs r6, r6 - movs r1, 0 - mov r10, r1 - b _080619FC - .align 2, 0 -_080619B4: .4byte gUnknown_80FE954 -_080619B8: - ldr r0, _080619DC - adds r1, r4, 0 - bl sub_808EAC0 - ldr r0, [sp, 0x10] - adds r0, 0x94 - ldrb r0, [r0] - cmp r0, r4 - bne _080619E4 - mov r0, r10 - str r0, [sp] - movs r0, 0x10 - mov r1, r8 - ldr r2, _080619E0 - adds r3, r7, 0 - bl sub_8014FF0 - b _080619F4 - .align 2, 0 -_080619DC: .4byte gUnknown_202DF98 -_080619E0: .4byte gUnknown_8106BEC -_080619E4: - mov r1, r10 - str r1, [sp] - movs r0, 0x10 - mov r1, r8 - ldr r2, _08061A34 - adds r3, r7, 0 - bl sub_8014FF0 -_080619F4: - adds r6, 0x1 - movs r0, 0xC - add r8, r0 - adds r5, 0x1 -_080619FC: - cmp r6, 0x9 - bgt _08061A1E - cmp r5, 0 - blt _080619F4 - cmp r5, 0xB - bgt _080619F4 - mov r0, sp - adds r0, r5 - adds r0, 0x4 - ldrb r4, [r0] - cmp r6, 0x8 - bhi _08061A1A - mov r1, r9 - adds r0, r1, r6 - strb r4, [r0] -_08061A1A: - cmp r4, 0xB - bne _080619B8 -_08061A1E: - adds r0, r7, 0 - bl sub_80073E0 - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08061A34: .4byte gUnknown_8106BF4 - thumb_func_end sub_806195C - - thumb_func_start sub_8061A38 -sub_8061A38: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x130 - adds r5, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - add r4, sp, 0xB0 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [r4, 0x4] - movs r1, 0x2 - strh r1, [r4, 0x8] - strh r1, [r4, 0xA] - movs r2, 0x12 - strh r2, [r4, 0xC] - movs r0, 0xE - strh r0, [r4, 0xE] - strh r2, [r4, 0x10] - strh r1, [r4, 0x12] - ldr r0, _08061AA4 - str r0, [r4, 0x14] - movs r0, 0x3 - str r0, [r4, 0x1C] - str r0, [r4, 0x34] - str r0, [r4, 0x4C] - movs r0, 0 - str r0, [sp, 0x114] - mov r8, r0 - ldr r0, _08061AA8 - ldr r1, [r0] - ldrb r0, [r5, 0x4] - lsls r0, 2 - ldr r2, _08061AAC - adds r1, r2 - adds r1, r0 - ldr r1, [r1] - str r1, [sp, 0x110] - ldr r0, [r1, 0x70] - str r0, [sp, 0x11C] - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08061AA0 - cmp r0, 0x47 - bne _08061AB0 -_08061AA0: - movs r0, 0x1 - b _08061AB2 - .align 2, 0 -_08061AA4: .4byte gUnknown_202F270 -_08061AA8: .4byte gUnknown_203B418 -_08061AAC: .4byte 0x0001357c -_08061AB0: - movs r0, 0 -_08061AB2: - adds r1, r0, 0 - cmp r1, 0 - beq _08061ACE - movs r0, 0x1 - str r0, [sp, 0x4] - movs r0, 0 - str r0, [sp, 0x8] - str r0, [sp, 0xC] - str r0, [sp, 0x10] - str r0, [sp, 0x14] - str r0, [sp, 0x18] - movs r1, 0x1 - str r1, [sp, 0x118] - b _08061AFE -_08061ACE: - cmp r6, 0 - beq _08061AE6 - movs r0, 0x4 - str r0, [sp, 0x4] - str r1, [sp, 0x8] - str r1, [sp, 0xC] - str r1, [sp, 0x10] - str r1, [sp, 0x14] - str r1, [sp, 0x18] - movs r2, 0x1 - str r2, [sp, 0x118] - b _08061AFE -_08061AE6: - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0x1 - str r0, [sp, 0x8] - movs r0, 0x3 - str r0, [sp, 0xC] - movs r0, 0x5 - str r0, [sp, 0x10] - str r6, [sp, 0x14] - str r6, [sp, 0x18] - movs r0, 0x4 - str r0, [sp, 0x118] -_08061AFE: - add r2, sp, 0x5C - movs r0, 0 - strh r0, [r2] - mov r1, sp - adds r1, 0x72 - strh r0, [r1] - ldr r3, _08061BB4 - strh r0, [r3, 0x18] - subs r1, 0x56 - str r1, [sp, 0x12C] - add r2, sp, 0x80 - mov r9, r2 - adds r7, r3, 0 -_08061B18: - movs r0, 0 - mov r10, r0 - movs r1, 0 - str r1, [sp, 0x120] - movs r2, 0 - str r2, [sp, 0x124] - movs r0, 0x1 - str r0, [sp, 0x128] - ldr r4, _08061BB8 - ldr r1, _08061BBC - add r2, sp, 0x118 - ldrb r2, [r2] - strb r2, [r1] - add r0, sp, 0x114 - ldrb r0, [r0] - strb r0, [r1, 0x1] - movs r0, 0xA - strb r0, [r1, 0x2] - mov r2, r10 - strb r2, [r1, 0x3] - add r0, sp, 0xB0 - movs r1, 0x1 - bl sub_803ECB4 - ldr r0, [sp, 0x12C] - ldr r1, [sp, 0x110] - bl sub_8069844 - ldr r1, [sp, 0x114] - lsls r0, r1, 2 - mov r5, sp - adds r5, r0 - adds r5, 0x4 - ldr r0, [r5] - mov r2, r10 - str r2, [sp] - ldr r2, [sp, 0x12C] - add r3, sp, 0x80 - bl sub_808F844 - add r0, sp, 0x114 - ldrh r0, [r0] - strh r0, [r7, 0x1E] - add r1, sp, 0x118 - ldrh r1, [r1] - strh r1, [r7, 0x20] - movs r2, 0 - ldrsh r0, [r4, r2] - adds r0, 0xF - lsls r0, 3 - strh r0, [r7, 0xC] - movs r1, 0x2 - ldrsh r0, [r4, r1] - adds r0, 0x1 - lsls r0, 3 - subs r0, 0x2 - strh r0, [r7, 0xE] - mov r2, r10 - strh r2, [r7, 0x14] - strh r2, [r7, 0x4] - movs r0, 0x10 - strh r0, [r7, 0x6] - mov r0, r10 - str r0, [r7] - adds r0, r7, 0 - adds r0, 0x28 - bl sub_801317C - mov r1, r10 - strh r1, [r7, 0x18] - strh r1, [r7, 0x1A] - strh r1, [r7, 0x1C] - ldr r5, [r5] - cmp r5, 0x1 - bne _08061C10 - movs r2, 0 - add r1, sp, 0x8C - b _08061BC8 - .align 2, 0 -_08061BB4: .4byte gUnknown_202EE10 -_08061BB8: .4byte gUnknown_2027370 -_08061BBC: .4byte gUnknown_202F270 -_08061BC0: - adds r1, 0x4 - adds r2, 0x1 - cmp r2, 0x7 - bgt _08061BCE -_08061BC8: - ldr r0, [r1] - cmp r0, 0 - bne _08061BC0 -_08061BCE: - cmp r2, 0 - beq _08061C44 - movs r0, 0x1 - str r0, [sp, 0x124] - strh r2, [r7, 0x1A] - b _08061C38 -_08061BDA: - movs r0, 0x18 - ldrsh r2, [r7, r0] - lsls r1, r2, 2 - add r0, sp, 0x8C - adds r0, r1 - ldr r4, [r0] - mov r8, r2 - bl sub_8083D44 - adds r0, r4, 0 - bl sub_806285C - movs r1, 0 - str r1, [sp, 0x128] - b _080621E4 -_08061BF8: - movs r2, 0x18 - ldrsh r0, [r7, r2] - mov r2, r9 - adds r1, r2, r0 - ldrb r4, [r1] - mov r8, r0 - bl sub_8083D44 - adds r0, r4, 0 - bl sub_806262C - b _08062082 -_08061C10: - cmp r5, 0x4 - bne _08061C48 - movs r1, 0 - add r2, sp, 0x80 - ldrb r0, [r2] - cmp r0, 0 - beq _08061C2E - mov r2, r9 -_08061C20: - adds r1, 0x1 - cmp r1, 0x7 - bgt _08061C2E - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08061C20 -_08061C2E: - cmp r1, 0 - beq _08061C44 - movs r0, 0x1 - str r0, [sp, 0x120] - strh r1, [r7, 0x1A] -_08061C38: - movs r0, 0x8 - strh r0, [r7, 0x1C] - adds r0, r7, 0 - movs r1, 0 - bl sub_80137B0 -_08061C44: - mov r1, r8 - strh r1, [r7, 0x18] -_08061C48: - ldr r0, _08061CF8 - bl AddMenuCursorSprite - movs r0, 0 - ldr r1, _08061CFC - bl sub_8014140 - adds r4, r0, 0 - movs r5, 0 - movs r6, 0 - ldr r2, [sp, 0x120] - cmp r2, 0 - beq _08061C80 - mov r1, r9 - ldrb r0, [r1, 0x8] - cmp r0, 0 - beq _08061C70 - movs r5, 0x1 - bl sub_80623B0 -_08061C70: - add r1, sp, 0x5C - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _08061C80 - movs r6, 0x1 - bl sub_8062230 -_08061C80: - ldr r2, [sp, 0x124] - cmp r2, 0 - beq _08061CA6 - mov r1, r9 - ldr r0, [r1, 0x2C] - cmp r0, 0 - beq _08061C94 - movs r5, 0x1 - bl sub_80623B0 -_08061C94: - movs r1, 0x72 - add r1, sp - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _08061CA6 - movs r6, 0x1 - bl sub_8062230 -_08061CA6: - movs r0, 0x1C - bl sub_803E46C - ldr r0, _08061D00 - ldrb r0, [r0] - cmp r0, 0x1 - bls _08061D4E - bl sub_80048C8 - lsls r0, 24 - cmp r0, 0 - bne _08061D4E - ldr r0, _08061D04 - ldrh r1, [r0, 0x2] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08061CD6 - ldr r2, _08061CF8 - adds r0, r2, 0 - adds r0, 0x2B - ldrb r0, [r0] - cmp r0, 0 - beq _08061D08 -_08061CD6: - movs r0, 0 - bl sub_8083CE0 - ldr r2, [sp, 0x114] - adds r2, 0x1 - str r2, [sp, 0x114] - lsls r0, r2, 2 - add r0, sp - adds r0, 0x4 - ldr r0, [r0] - cmp r0, 0 - beq _08061CF0 - b _080621E6 -_08061CF0: - movs r0, 0 - str r0, [sp, 0x114] - b _080621E6 - .align 2, 0 -_08061CF8: .4byte gUnknown_202EE10 -_08061CFC: .4byte gUnknown_8106B8C -_08061D00: .4byte gUnknown_202F270 -_08061D04: .4byte gUnknown_20255F0 -_08061D08: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _08061D1A - adds r0, r2, 0 - adds r0, 0x2C - ldrb r0, [r0] - cmp r0, 0 - beq _08061D4E -_08061D1A: - movs r0, 0 - bl sub_8083CE0 - ldr r1, [sp, 0x114] - subs r1, 0x1 - str r1, [sp, 0x114] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08061D30 - b _080621E6 -_08061D30: - movs r2, 0x5 - str r2, [sp, 0x114] - ldr r0, [sp, 0x18] - cmp r0, 0 - beq _08061D3C - b _080621E6 -_08061D3C: - add r1, sp, 0x18 -_08061D3E: - subs r1, 0x4 - ldr r0, [sp, 0x114] - subs r0, 0x1 - str r0, [sp, 0x114] - ldr r0, [r1] - cmp r0, 0 - beq _08061D3E - b _080621E6 -_08061D4E: - ldr r1, [sp, 0x124] - cmp r1, 0 - bne _08061D56 - b _08061E8A -_08061D56: - cmp r4, 0x2 - bne _08061D98 - cmp r5, 0 - beq _08061D98 - movs r0, 0 - bl sub_8083CE0 - mov r2, r9 - ldr r0, [r2, 0x2C] - cmp r0, 0 - beq _08061D8E - ldr r5, _08061D94 - movs r4, 0x5 -_08061D70: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x1C - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08061D70 - movs r1, 0x72 - add r1, sp - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_08061D8E: - movs r2, 0x7 - mov r8, r2 - b _080621E6 - .align 2, 0 -_08061D94: .4byte gUnknown_203B080 -_08061D98: - ldr r0, _08061DDC - ldrh r1, [r0, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08061DF0 - movs r0, 0 - bl sub_8083CE0 - ldr r1, _08061DE0 - movs r2, 0x18 - ldrsh r0, [r1, r2] - cmp r0, 0x7 - bne _08061DE8 - mov r1, r9 - ldr r0, [r1, 0x2C] - cmp r0, 0 - bne _08061DBE - b _08061F04 -_08061DBE: - ldr r5, _08061DE4 - movs r4, 0x5 -_08061DC2: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x1C - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08061DC2 - movs r2, 0x72 - add r2, sp - b _08061EFE - .align 2, 0 -_08061DDC: .4byte gUnknown_20255F0 -_08061DE0: .4byte gUnknown_202EE10 -_08061DE4: .4byte gUnknown_203B080 -_08061DE8: - adds r0, r1, 0 - movs r1, 0 - bl sub_80136E0 -_08061DF0: - cmp r4, 0x1 - bne _08061E28 - cmp r6, 0 - beq _08061E28 - movs r2, 0x72 - add r2, sp - movs r1, 0 - ldrsh r0, [r2, r1] - cmp r0, 0 - bne _08061E06 - b _08061F96 -_08061E06: - ldr r5, _08061E24 - movs r4, 0x5 -_08061E0A: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x1C - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08061E0A - movs r1, 0x72 - add r1, sp - b _08061F90 - .align 2, 0 -_08061E24: .4byte gUnknown_203B084 -_08061E28: - ldr r0, _08061E74 - ldrh r1, [r0, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08061E36 - b _08061FB0 -_08061E36: - movs r0, 0x1 - bl sub_8083CE0 - ldr r1, _08061E78 - movs r2, 0x18 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _08061E80 - movs r2, 0x72 - add r2, sp - movs r1, 0 - ldrsh r0, [r2, r1] - cmp r0, 0 - bne _08061E54 - b _08061F96 -_08061E54: - ldr r5, _08061E7C - movs r4, 0x5 -_08061E58: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x1C - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08061E58 - movs r1, 0x72 - add r1, sp - b _08061F90 - .align 2, 0 -_08061E74: .4byte gUnknown_20255F0 -_08061E78: .4byte gUnknown_202EE10 -_08061E7C: .4byte gUnknown_203B084 -_08061E80: - adds r0, r1, 0 - movs r1, 0 - bl sub_8013744 - b _08061FB0 -_08061E8A: - ldr r0, [sp, 0x120] - cmp r0, 0 - bne _08061E92 - b _08061FB0 -_08061E92: - cmp r4, 0x2 - bne _08061EC0 - cmp r5, 0 - beq _08061EC0 - mov r1, r9 - ldrb r0, [r1, 0x8] - cmp r0, 0 - beq _08061F04 - ldr r5, _08061EBC - movs r4, 0x5 -_08061EA6: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x1C - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08061EA6 - b _08061EFC - .align 2, 0 -_08061EBC: .4byte gUnknown_203B080 -_08061EC0: - ldr r0, _08061F0C - ldrh r1, [r0, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08061F20 - movs r0, 0x1 - bl sub_8083CE0 - ldr r1, _08061F10 - movs r2, 0x18 - ldrsh r0, [r1, r2] - cmp r0, 0x7 - bne _08061F18 - mov r1, r9 - ldrb r0, [r1, 0x8] - cmp r0, 0 - beq _08061F04 - ldr r5, _08061F14 - movs r4, 0x5 -_08061EE8: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x1C - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08061EE8 -_08061EFC: - add r2, sp, 0x5C -_08061EFE: - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] -_08061F04: - movs r0, 0x7 - mov r8, r0 - b _080621E6 - .align 2, 0 -_08061F0C: .4byte gUnknown_20255F0 -_08061F10: .4byte gUnknown_202EE10 -_08061F14: .4byte gUnknown_203B080 -_08061F18: - adds r0, r1, 0 - movs r1, 0 - bl sub_80136E0 -_08061F20: - cmp r4, 0x1 - bne _08061F50 - cmp r6, 0 - beq _08061F50 - add r2, sp, 0x5C - movs r1, 0 - ldrsh r0, [r2, r1] - cmp r0, 0 - beq _08061F96 - ldr r5, _08061F4C - movs r4, 0x5 -_08061F36: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x1C - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08061F36 - b _08061F8E - .align 2, 0 -_08061F4C: .4byte gUnknown_203B084 -_08061F50: - ldr r0, _08061F9C - ldrh r1, [r0, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08061FB0 - movs r0, 0x1 - bl sub_8083CE0 - ldr r1, _08061FA0 - movs r2, 0x18 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _08061FA8 - add r2, sp, 0x5C - movs r1, 0 - ldrsh r0, [r2, r1] - cmp r0, 0 - beq _08061F96 - ldr r5, _08061FA4 - movs r4, 0x5 -_08061F7A: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x1C - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08061F7A -_08061F8E: - add r1, sp, 0x5C -_08061F90: - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] -_08061F96: - movs r2, 0 - mov r8, r2 - b _080621E6 - .align 2, 0 -_08061F9C: .4byte gUnknown_20255F0 -_08061FA0: .4byte gUnknown_202EE10 -_08061FA4: .4byte gUnknown_203B084 -_08061FA8: - adds r0, r1, 0 - movs r1, 0 - bl sub_8013744 -_08061FB0: - bl sub_80048C8 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08061FBE - b _08061C48 -_08061FBE: - ldr r5, _0806208C - ldrh r1, [r5, 0x2] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08061FDA - ldr r0, [sp, 0x124] - cmp r0, 0 - beq _08061FD2 - b _08061BDA -_08061FD2: - ldr r2, [sp, 0x120] - cmp r2, 0 - beq _08061FDA - b _08061BF8 -_08061FDA: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08061FF0 - ldr r2, _08062090 - adds r0, r2, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - bne _08061FF0 - b _080621CA -_08061FF0: - ldr r0, [sp, 0x124] - cmp r0, 0 - beq _080620BC - movs r1, 0x18 - ldrsh r2, [r7, r1] - lsls r1, r2, 2 - add r0, sp, 0x8C - adds r0, r1 - ldr r6, [r0] - mov r8, r2 - bl sub_8062D68 - ldr r0, _08062094 - str r4, [r0] - bl sub_8083D08 - movs r0, 0xC - movs r1, 0 - bl sub_8044F5C - add r0, sp, 0xB0 - movs r1, 0x16 - bl sub_805FC30 - ldr r4, _08062090 - movs r2, 0x2A - adds r2, r4 - mov r10, r2 -_08062028: - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x1C - bl sub_803E46C - ldrh r1, [r5, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0806204C - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80136E0 -_0806204C: - ldrh r1, [r5, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08062064 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013744 -_08062064: - ldrh r1, [r5, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08062078 - adds r0, r4, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08062098 -_08062078: - bl sub_8083D08 - adds r0, r6, 0 - bl sub_806285C -_08062082: - movs r0, 0 - str r0, [sp, 0x128] - mov r10, r0 - b _080621E6 - .align 2, 0 -_0806208C: .4byte gUnknown_20255F0 -_08062090: .4byte gUnknown_202EE10 -_08062094: .4byte gUnknown_202EE6C -_08062098: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080620A8 - mov r1, r10 - ldrb r0, [r1] - cmp r0, 0 - beq _08062028 -_080620A8: - bl sub_8083D30 - b _080621BA -_080620AE: - bl sub_8083D08 - movs r1, 0x18 - ldrsh r0, [r7, r1] - cmp r0, 0 - bne _080621B0 - b _08062198 -_080620BC: - ldr r2, [sp, 0x120] - cmp r2, 0 - bne _080620C4 - b _080621C0 -_080620C4: - movs r0, 0x18 - ldrsh r1, [r7, r0] - mov r2, r9 - adds r0, r2, r1 - ldrb r6, [r0] - mov r8, r1 - bl sub_8062D68 - ldr r0, _08062190 - ldr r1, [sp, 0x124] - str r1, [r0] - bl sub_8083D08 - movs r0, 0x28 - movs r1, 0 - bl sub_8044F5C - movs r0, 0xC - movs r1, 0 - bl sub_8044F5C - ldr r0, [sp, 0x110] - movs r1, 0x1 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - beq _08062102 - movs r0, 0x28 - bl sub_8044FF0 -_08062102: - add r0, sp, 0xB0 - movs r1, 0x16 - bl sub_805FC30 - ldr r4, _08062194 - movs r2, 0x2A - adds r2, r4 - mov r10, r2 -_08062112: - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x1C - bl sub_803E46C - ldrh r1, [r5, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08062136 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80136E0 -_08062136: - ldrh r1, [r5, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0806214E - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013744 -_0806214E: - ldrh r1, [r5, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08062162 - adds r0, r4, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08062174 -_08062162: - movs r1, 0x18 - ldrsh r0, [r4, r1] - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - bne _080620AE - bl sub_8083D30 -_08062174: - ldrh r1, [r5, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08062186 - mov r2, r10 - ldrb r0, [r2] - cmp r0, 0 - beq _08062112 -_08062186: - bl sub_8083D30 - movs r0, 0 - mov r10, r0 - b _080621E6 - .align 2, 0 -_08062190: .4byte gUnknown_202EE6C -_08062194: .4byte gUnknown_202EE10 -_08062198: - ldr r0, _080621AC - bl sub_8083E38 - ldr r0, [sp, 0x11C] - adds r0, 0x8C - adds r1, r6, 0 - bl sub_808EBF4 - b _080621BA - .align 2, 0 -_080621AC: .4byte 0x00000133 -_080621B0: - adds r0, r6, 0 - bl sub_806262C - movs r1, 0 - str r1, [sp, 0x128] -_080621BA: - movs r2, 0 - mov r10, r2 - b _080621E6 -_080621C0: - bl sub_8083D08 - movs r0, 0x1 - mov r10, r0 - b _080621E6 -_080621CA: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080621DE - adds r0, r2, 0 - adds r0, 0x2A - ldrb r0, [r0] - cmp r0, 0 - bne _080621DE - b _08061C48 -_080621DE: - bl sub_8083D30 - movs r1, 0x1 -_080621E4: - mov r10, r1 -_080621E6: - ldr r2, [sp, 0x128] - cmp r2, 0 - beq _08062204 - ldr r0, [sp, 0x120] - cmp r0, 0 - bne _080621F8 - ldr r1, [sp, 0x124] - cmp r1, 0 - beq _080621FE -_080621F8: - ldr r0, _0806222C - bl AddMenuCursorSprite -_080621FE: - movs r0, 0x1C - bl sub_803E46C -_08062204: - mov r2, r10 - cmp r2, 0 - bne _0806220C - b _08061B18 -_0806220C: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - ldr r0, [sp, 0x110] - bl sub_807191C - add sp, 0x130 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806222C: .4byte gUnknown_202EE10 - thumb_func_end sub_8061A38 - - thumb_func_start sub_8062230 -sub_8062230: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x8 - ldr r0, _08062380 - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - bne _08062248 - b _08062372 -_08062248: - ldr r0, _08062384 - mov r9, r0 - movs r0, 0 - movs r1, 0 - str r0, [sp] - str r1, [sp, 0x4] - mov r0, sp - ldrh r0, [r0] - ldr r1, _08062388 - ands r1, r0 - ldr r3, _0806238C - ldr r0, [sp] - ands r0, r3 - orrs r0, r1 - str r0, [sp] - mov r1, sp - ldrh r1, [r1] - adds r2, r3, 0 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08062390 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r6, _08062394 - mov r8, r6 - mov r0, r8 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08062398 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _0806239C - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - movs r4, 0x80 - lsls r4, 7 - mov r0, sp - ldrh r1, [r0] - ldr r6, _080623A0 - adds r0, r6, 0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - orrs r4, r0 - ands r3, r1 - orrs r3, r4 - str r3, [sp] - movs r1, 0x80 - lsls r1, 6 - mov r5, sp - ldrh r0, [r5, 0x2] - ldr r2, _080623A4 - ands r2, r0 - orrs r2, r1 - ands r2, r6 - movs r3, 0xFC - lsls r3, 2 - ldrh r1, [r5, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r3 - mov r1, r8 - ands r0, r1 - movs r3, 0xF - movs r1, 0xF0 - lsls r1, 8 - ldr r4, _080623A8 - ands r0, r4 - orrs r0, r1 - strh r0, [r5, 0x4] - mov r6, r9 - movs r1, 0x2 - ldrsh r0, [r6, r1] - lsls r0, 3 - adds r0, 0x8 - ands r0, r4 - lsls r0, 4 - ldrh r1, [r5, 0x6] - ands r3, r1 - orrs r3, r0 - strh r3, [r5, 0x6] - movs r3, 0 - ldrsh r0, [r6, r3] - lsls r0, 3 - adds r0, 0x40 - ldr r1, _080623AC - ands r0, r1 - movs r1, 0xFE - lsls r1, 8 - ands r2, r1 - orrs r2, r0 - strh r2, [r5, 0x2] - movs r1, 0x80 - lsls r1, 1 - mov r0, sp - movs r2, 0 - movs r3, 0 - bl AddSprite -_08062372: - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08062380: .4byte gUnknown_202EDCC -_08062384: .4byte gUnknown_2027370 -_08062388: .4byte 0x0000feff -_0806238C: .4byte 0xffff0000 -_08062390: .4byte 0x0000fdff -_08062394: .4byte 0x0000f3ff -_08062398: .4byte 0x0000efff -_0806239C: .4byte 0x0000dfff -_080623A0: .4byte 0x00003fff -_080623A4: .4byte 0x0000c1ff -_080623A8: .4byte 0x00000fff -_080623AC: .4byte 0x000001ff - thumb_func_end sub_8062230 - - thumb_func_start sub_80623B0 -sub_80623B0: - push {r4-r6,lr} - sub sp, 0x8 - ldr r0, _080624D4 - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080623C2 - b _080624CA -_080623C2: - ldr r6, _080624D8 - movs r0, 0 - movs r1, 0 - str r0, [sp] - str r1, [sp, 0x4] - mov r0, sp - ldrh r0, [r0] - ldr r1, _080624DC - ands r1, r0 - ldr r3, _080624E0 - ldr r0, [sp] - ands r0, r3 - orrs r0, r1 - str r0, [sp] - mov r1, sp - ldrh r1, [r1] - adds r2, r3, 0 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _080624E4 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r5, _080624E8 - adds r0, r5, 0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _080624EC - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _080624F0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - movs r4, 0x80 - lsls r4, 7 - mov r0, sp - ldrh r1, [r0] - ldr r0, _080624F4 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - orrs r4, r0 - ands r3, r1 - orrs r3, r4 - str r3, [sp] - mov r3, sp - movs r2, 0xFC - lsls r2, 2 - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r5 - movs r2, 0xF - movs r1, 0xF0 - lsls r1, 8 - ldr r4, _080624F8 - ands r0, r4 - orrs r0, r1 - strh r0, [r3, 0x4] - movs r1, 0x2 - ldrsh r0, [r6, r1] - lsls r0, 3 - adds r0, 0x70 - ands r0, r4 - lsls r0, 4 - ldrh r1, [r3, 0x6] - ands r2, r1 - orrs r2, r0 - strh r2, [r3, 0x6] - movs r1, 0 - ldrsh r0, [r6, r1] - lsls r0, 3 - adds r0, 0x40 - ldr r1, _080624FC - ands r0, r1 - strh r0, [r3, 0x2] - subs r1, 0xFF - mov r0, sp - movs r2, 0 - movs r3, 0 - bl AddSprite -_080624CA: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080624D4: .4byte gUnknown_202EDCC -_080624D8: .4byte gUnknown_2027370 -_080624DC: .4byte 0x0000feff -_080624E0: .4byte 0xffff0000 -_080624E4: .4byte 0x0000fdff -_080624E8: .4byte 0x0000f3ff -_080624EC: .4byte 0x0000efff -_080624F0: .4byte 0x0000dfff -_080624F4: .4byte 0x00003fff -_080624F8: .4byte 0x00000fff -_080624FC: .4byte 0x000001ff - thumb_func_end sub_80623B0 - - thumb_func_start sub_8062500 -sub_8062500: - push {r4,r5,lr} - ldr r0, _0806257C - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08062574 - ldr r5, _08062580 - ldr r0, _08062584 - ldrh r2, [r0] - ldr r1, _08062588 - ands r1, r2 - ldr r2, _0806258C - ands r1, r2 - ldr r4, _08062590 - ands r1, r4 - ldr r2, _08062594 - ands r1, r2 - ldr r2, _08062598 - ands r1, r2 - movs r3, 0x80 - lsls r3, 7 - ldr r2, _0806259C - ands r1, r2 - orrs r1, r3 - strh r1, [r0] - movs r3, 0xFC - lsls r3, 2 - ldrh r2, [r0, 0x4] - movs r1, 0xFC - lsls r1, 8 - ands r1, r2 - orrs r1, r3 - ands r1, r4 - movs r3, 0xF - movs r2, 0xF0 - lsls r2, 8 - ldr r4, _080625A0 - ands r1, r4 - orrs r1, r2 - strh r1, [r0, 0x4] - movs r2, 0x2 - ldrsh r1, [r5, r2] - lsls r1, 3 - adds r1, 0x60 - ands r1, r4 - lsls r1, 4 - ldrh r2, [r0, 0x6] - ands r3, r2 - orrs r3, r1 - strh r3, [r0, 0x6] - movs r1, 0x70 - strh r1, [r0, 0x2] - adds r1, 0x90 - movs r2, 0 - movs r3, 0 - bl AddSprite -_08062574: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806257C: .4byte gUnknown_202EDCC -_08062580: .4byte gUnknown_2027370 -_08062584: .4byte gUnknown_202F268 -_08062588: .4byte 0x0000feff -_0806258C: .4byte 0x0000fdff -_08062590: .4byte 0x0000f3ff -_08062594: .4byte 0x0000efff -_08062598: .4byte 0x0000dfff -_0806259C: .4byte 0x00003fff -_080625A0: .4byte 0x00000fff - thumb_func_end sub_8062500 - - thumb_func_start sub_80625A4 -sub_80625A4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xC - adds r7, r0, 0 - mov r9, r1 - mov r0, sp - bl sub_801317C - movs r4, 0 - cmp r4, r7 - bge _0806261A - subs r0, r7, 0x1 - mov r8, r0 - mov r5, sp -_080625C4: - lsls r0, r4, 2 - add r0, r9 - ldr r0, [r0] - mov r1, sp - bl sub_80639E4 - adds r6, r4, 0x1 - b _080625E8 -_080625D4: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080625E2 - ldrb r0, [r5, 0x2] - cmp r0, 0 - beq _080625E8 -_080625E2: - bl sub_8083D30 - b _08062614 -_080625E8: - cmp r4, r8 - bge _080625F0 - bl sub_8062500 -_080625F0: - mov r0, sp - movs r1, 0 - bl nullsub_34 - movs r0, 0x16 - bl sub_803E46C - ldr r0, _08062628 - ldrh r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08062610 - ldrb r0, [r5, 0x1] - cmp r0, 0 - beq _080625D4 -_08062610: - bl sub_8083D08 -_08062614: - adds r4, r6, 0 - cmp r4, r7 - blt _080625C4 -_0806261A: - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08062628: .4byte gUnknown_20255F0 - thumb_func_end sub_80625A4 - - thumb_func_start sub_806262C -sub_806262C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x88 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - mov r0, sp - adds r0, 0x70 - str r0, [sp, 0x84] - add r0, sp, 0x10 - mov r8, r0 - movs r0, 0 - mov r9, r0 - add r7, sp, 0x4 - add r6, sp, 0x80 -_08062650: - add r0, sp, 0x4 - bl sub_801317C - mov r0, r8 - bl sub_80140B4 - mov r0, r8 - str r6, [r0, 0x14] - movs r1, 0x1 - add r0, sp, 0x80 - strb r1, [r0] - mov r0, r9 - strb r0, [r6, 0x1] - movs r0, 0x10 - strb r0, [r6, 0x2] - mov r0, r9 - strb r0, [r6, 0x3] - mov r0, r8 - bl sub_803ECB4 - movs r0, 0 - bl sub_80073B8 - mov r0, r10 - bl sub_808EAB0 - adds r1, r0, 0 - ldr r0, _080626CC - bl strcpy - ldr r0, _080626D0 - ldr r2, [r0] - mov r0, r9 - str r0, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - mov r0, r10 - bl sub_808EADC - adds r2, r0, 0 - mov r0, r9 - str r0, [sp] - movs r0, 0x8 - movs r1, 0x10 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - mov r0, r10 - bl sub_808EADC - ldr r1, [sp, 0x84] - bl sub_8097DF0 - adds r5, r0, 0 - b _080626EA - .align 2, 0 -_080626CC: .4byte gUnknown_202DE58 -_080626D0: .4byte gUnknown_80FE95C -_080626D4: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080626E2 - ldrb r0, [r7, 0x2] - cmp r0, 0 - beq _080626EA -_080626E2: - movs r4, 0x1 - bl sub_8083D30 - b _08062718 -_080626EA: - cmp r5, 0 - beq _080626F2 - bl sub_8062500 -_080626F2: - add r0, sp, 0x4 - movs r1, 0 - bl nullsub_34 - movs r0, 0x16 - bl sub_803E46C - ldr r0, _0806272C - ldrh r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08062712 - ldrb r0, [r7, 0x1] - cmp r0, 0 - beq _080626D4 -_08062712: - movs r4, 0 - bl sub_8083D08 -_08062718: - cmp r4, 0 - bne _08062730 - cmp r5, 0 - beq _08062730 - adds r0, r5, 0 - ldr r1, [sp, 0x84] - bl sub_80625A4 - b _08062650 - .align 2, 0 -_0806272C: .4byte gUnknown_20255F0 -_08062730: - movs r0, 0x4 - movs r1, 0x3E - bl sub_803E708 - add sp, 0x88 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806262C - - thumb_func_start sub_8062748 -sub_8062748: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x88 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - mov r0, sp - adds r0, 0x70 - str r0, [sp, 0x84] - add r0, sp, 0x10 - mov r8, r0 - movs r0, 0 - mov r9, r0 - add r7, sp, 0x4 - add r6, sp, 0x80 -_0806276C: - add r0, sp, 0x4 - bl sub_801317C - mov r0, r8 - bl sub_80140B4 - mov r0, r8 - str r6, [r0, 0x14] - movs r1, 0x1 - add r0, sp, 0x80 - strb r1, [r0] - mov r0, r9 - strb r0, [r6, 0x1] - movs r0, 0x10 - strb r0, [r6, 0x2] - mov r0, r9 - strb r0, [r6, 0x3] - mov r0, r8 - bl sub_803ECB4 - movs r0, 0 - bl sub_80073B8 - ldr r0, _080627E0 - mov r1, r10 - bl sub_808EAC0 - ldr r0, _080627E4 - ldr r2, [r0] - mov r0, r9 - str r0, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - mov r0, r10 - bl sub_808EAEC - adds r2, r0, 0 - mov r0, r9 - str r0, [sp] - movs r0, 0x8 - movs r1, 0x10 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - mov r0, r10 - bl sub_808EAEC - ldr r1, [sp, 0x84] - bl sub_8097DF0 - adds r5, r0, 0 - b _080627FE - .align 2, 0 -_080627E0: .4byte gUnknown_202DE58 -_080627E4: .4byte gUnknown_80FE960 -_080627E8: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080627F6 - ldrb r0, [r7, 0x2] - cmp r0, 0 - beq _080627FE -_080627F6: - movs r4, 0x1 - bl sub_8083D30 - b _0806282C -_080627FE: - cmp r5, 0 - beq _08062806 - bl sub_8062500 -_08062806: - add r0, sp, 0x4 - movs r1, 0 - bl nullsub_34 - movs r0, 0x3E - bl sub_803E46C - ldr r0, _08062840 - ldrh r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08062826 - ldrb r0, [r7, 0x1] - cmp r0, 0 - beq _080627E8 -_08062826: - movs r4, 0 - bl sub_8083D08 -_0806282C: - cmp r4, 0 - bne _08062844 - cmp r5, 0 - beq _08062844 - adds r0, r5, 0 - ldr r1, [sp, 0x84] - bl sub_80625A4 - b _0806276C - .align 2, 0 -_08062840: .4byte gUnknown_20255F0 -_08062844: - movs r0, 0x4 - movs r1, 0x3E - bl sub_803E708 - add sp, 0x88 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8062748 - - thumb_func_start sub_806285C -sub_806285C: - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0xD4 - mov r10, r0 - add r0, sp, 0x10 - mov r8, r0 - add r5, sp, 0x70 - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x74] - add r1, sp, 0x78 - movs r6, 0 - movs r0, 0 - mov r9, r0 - movs r0, 0x2 - strh r0, [r1] - strh r0, [r1, 0x2] - add r1, sp, 0x7C - movs r0, 0x1A - strh r0, [r1] - mov r0, sp - adds r0, 0x7E - movs r1, 0xC - strh r1, [r0] - add r0, sp, 0x80 - strh r1, [r0] - add r0, sp, 0x84 - add r4, sp, 0xD0 - str r4, [r0] - add r0, sp, 0x88 - movs r1, 0x3 - str r1, [r0, 0x4] - add r0, sp, 0xA0 - str r1, [r0, 0x4] - add r0, sp, 0xB8 - str r1, [r0, 0x4] - mov r0, r8 - adds r1, r5, 0 - movs r2, 0x60 - bl memcpy - add r0, sp, 0x4 - bl sub_801317C - movs r0, 0x1 - strb r0, [r4] - strb r6, [r4, 0x1] - movs r0, 0x10 - strb r0, [r4, 0x2] - strb r6, [r4, 0x3] - mov r0, r8 - movs r1, 0x1 - bl sub_803ECB4 - movs r0, 0 - bl sub_80073B8 - mov r0, r10 - bl sub_808E4FC - adds r1, r0, 0 - ldr r0, _0806291C - bl strcpy - ldr r0, _08062920 - ldr r2, [r0] - mov r0, r9 - str r0, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - mov r0, r10 - bl sub_808E51C - adds r2, r0, 0 - mov r0, r9 - str r0, [sp] - movs r0, 0x8 - movs r1, 0x10 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - add r4, sp, 0x4 - b _08062938 - .align 2, 0 -_0806291C: .4byte gUnknown_202DE58 -_08062920: .4byte gUnknown_80FE964 -_08062924: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08062932 - ldrb r0, [r4, 0x2] - cmp r0, 0 - beq _08062938 -_08062932: - bl sub_8083D30 - b _0806295C -_08062938: - add r0, sp, 0x4 - movs r1, 0 - bl nullsub_34 - movs r0, 0x16 - bl sub_803E46C - ldr r0, _08062974 - ldrh r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08062958 - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _08062924 -_08062958: - bl sub_8083D08 -_0806295C: - movs r0, 0x4 - movs r1, 0x3E - bl sub_803E708 - add sp, 0xD4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08062974: .4byte gUnknown_20255F0 - thumb_func_end sub_806285C - - thumb_func_start sub_8062978 -sub_8062978: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x80 - mov r8, r0 - adds r6, r1, 0 - add r4, sp, 0x1C - ldr r1, _080629AC - adds r0, r4, 0 - movs r2, 0x60 - bl memcpy - movs r0, 0 - str r0, [sp, 0x7C] - mov r1, r8 - cmp r1, 0 - beq _080629A2 - subs r0, 0x1 - str r0, [r1] -_080629A2: - cmp r6, 0x1 - bne _080629BA - add r1, sp, 0x4C - ldr r0, _080629B0 - b _080629C2 - .align 2, 0 -_080629AC: .4byte gUnknown_8106C30 -_080629B0: .4byte gUnknown_8106C00 -_080629B4: - bl sub_8083D08 - b _08062AF4 -_080629BA: - cmp r6, 0x2 - bne _080629CA - add r1, sp, 0x4C - ldr r0, _08062A38 -_080629C2: - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} -_080629CA: - add r0, sp, 0x4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8061130 - movs r0, 0x1 - bl sub_80073B8 - ldr r0, _08062A3C - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - movs r1, 0x3 - movs r3, 0x1 - bl xxx_call_draw_string - movs r0, 0x1 - bl sub_80073E0 - ldr r0, _08062A40 - mov r9, r0 - add r7, sp, 0x8 - ldr r1, _08062A44 - mov r10, r1 -_080629FC: - mov r2, r10 - movs r3, 0x18 - ldrsh r0, [r2, r3] - lsls r0, 2 - adds r0, r7, r0 - ldr r5, [r0] - cmp r5, 0 - blt _08062A70 - ldr r0, _08062A48 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08062A4C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08062A5A - cmp r9, r5 - beq _08062A5A - cmp r6, 0x1 - bne _08062A50 - adds r0, r4, 0 - bl sub_8062B74 - b _08062A5A - .align 2, 0 -_08062A38: .4byte gUnknown_8106C18 -_08062A3C: .4byte gUnknown_80FE950 -_08062A40: .4byte 0xfffffc27 -_08062A44: .4byte gUnknown_202EE10 -_08062A48: .4byte gUnknown_203B418 -_08062A4C: .4byte 0x0001357c -_08062A50: - cmp r6, 0x2 - bne _08062A5A - adds r0, r4, 0 - bl sub_8062CA8 -_08062A5A: - mov r9, r5 - adds r0, r4, 0 - movs r1, 0 - bl sub_806A2BC - adds r0, r4, 0x4 - movs r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_804A728 -_08062A70: - ldr r5, _08062B40 - adds r0, r5, 0 - bl AddMenuCursorSprite - movs r0, 0x1B - bl sub_803E46C - ldr r4, _08062B44 - ldrh r1, [r4, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08062A98 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80136E0 -_08062A98: - ldrh r1, [r4, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08062AB0 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8013744 -_08062AB0: - ldrh r1, [r4, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08062AC4 - adds r0, r5, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08062AD8 -_08062AC4: - movs r3, 0x18 - ldrsh r0, [r5, r3] - add r1, sp, 0x18 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _08062AD4 - b _080629B4 -_08062AD4: - bl sub_8083D30 -_08062AD8: - ldr r0, _08062B44 - ldrh r1, [r0, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08062AEC - ldr r5, _08062B48 - ldrb r0, [r5] - cmp r0, 0 - beq _080629FC -_08062AEC: - bl sub_8083D30 - movs r0, 0x1 - str r0, [sp, 0x7C] -_08062AF4: - ldr r4, _08062B40 - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x1B - bl sub_803E46C - bl sub_804AA60 - bl sub_8083600 - movs r1, 0 - bl sub_806A2BC - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0x4 - movs r1, 0x3E - bl sub_803E708 - ldr r1, [sp, 0x7C] - cmp r1, 0 - bne _08062B3C - movs r2, 0x18 - ldrsh r0, [r4, r2] - lsls r0, 2 - adds r0, r7, r0 - ldr r5, [r0] - mov r3, r8 - cmp r3, 0 - beq _08062B38 - str r5, [r3] -_08062B38: - cmp r5, 0 - bge _08062B4C -_08062B3C: - movs r0, 0 - b _08062B5A - .align 2, 0 -_08062B40: .4byte gUnknown_202EE10 -_08062B44: .4byte gUnknown_20255F0 -_08062B48: .4byte gUnknown_202EE3A -_08062B4C: - ldr r0, _08062B6C - ldr r0, [r0] - lsls r1, r5, 2 - ldr r5, _08062B70 - adds r0, r5 - adds r0, r1 - ldr r0, [r0] -_08062B5A: - add sp, 0x80 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08062B6C: .4byte gUnknown_203B418 -_08062B70: .4byte 0x0001357c - thumb_func_end sub_8062978 - - thumb_func_start sub_8062B74 -sub_8062B74: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - mov r10, r0 - ldr r0, [r0, 0x70] - mov r9, r0 - movs r0, 0x2 - bl sub_8008C54 - movs r0, 0x2 - bl sub_80073B8 - ldr r0, _08062BD0 - mov r1, r10 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08062BD4 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0xC - movs r1, 0 - movs r3, 0x2 - bl sub_8014FF0 - movs r1, 0x10 - mov r8, r1 - mov r0, r9 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08062BDE - mov r0, r9 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08062BCA - cmp r0, 0x47 - bne _08062BD8 -_08062BCA: - movs r0, 0x1 - b _08062BDA - .align 2, 0 -_08062BD0: .4byte gUnknown_202DF98 -_08062BD4: .4byte gUnknown_80FE978 -_08062BD8: - movs r0, 0 -_08062BDA: - cmp r0, 0 - beq _08062BF4 -_08062BDE: - ldr r2, _08062BF0 - movs r0, 0 - str r0, [sp] - movs r0, 0xC - mov r1, r8 - movs r3, 0x2 - bl sub_8014FF0 - b _08062C8A - .align 2, 0 -_08062BF0: .4byte gUnknown_8106C90 -_08062BF4: - movs r7, 0 - movs r4, 0x8C - lsls r4, 1 - add r4, r9 - adds r5, r4, 0 -_08062BFE: - add r0, sp, 0x4 - movs r1, 0 - movs r2, 0xC - bl memset - movs r0, 0x6A - str r0, [sp, 0x8] - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08062C80 - mov r1, r9 - ldrb r0, [r1, 0x7] - cmp r0, 0 - beq _08062C22 - movs r0, 0x2 - b _08062C24 -_08062C22: - movs r0, 0x4 -_08062C24: - str r0, [sp, 0x4] - mov r0, r10 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80573CC - add r1, sp, 0x4 - movs r2, 0 - lsls r0, 24 - cmp r0, 0 - bne _08062C3C - movs r2, 0x1 -_08062C3C: - strb r2, [r1, 0x8] - ldr r0, _08062CA0 - adds r1, r5, 0 - add r2, sp, 0x4 - bl sub_80928C0 - ldrb r1, [r4] - movs r0, 0x2 - ands r0, r1 - movs r6, 0xD - cmp r0, 0 - bne _08062C6C - movs r6, 0x8 - cmp r7, 0 - beq _08062C6C - mov r2, r8 - subs r2, 0x2 - movs r0, 0x7 - str r0, [sp] - movs r0, 0x2 - movs r1, 0xC - movs r3, 0x78 - bl sub_80078A4 -_08062C6C: - movs r0, 0 - str r0, [sp] - adds r0, r6, 0 - mov r1, r8 - ldr r2, _08062CA4 - movs r3, 0x2 - bl sub_8014FF0 - movs r0, 0xC - add r8, r0 -_08062C80: - adds r4, 0x8 - adds r5, 0x8 - adds r7, 0x1 - cmp r7, 0x3 - ble _08062BFE -_08062C8A: - movs r0, 0x2 - bl sub_80073E0 - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08062CA0: .4byte gUnknown_202DE58 -_08062CA4: .4byte gUnknown_8106C98 - thumb_func_end sub_8062B74 - - thumb_func_start sub_8062CA8 -sub_8062CA8: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldr r5, [r4, 0x70] - movs r0, 0x2 - bl sub_8008C54 - movs r0, 0x2 - bl sub_80073B8 - ldr r0, _08062CF8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08062CFC - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0xC - movs r1, 0 - movs r3, 0x2 - bl sub_8014FF0 - movs r7, 0x8 - movs r6, 0x12 - adds r0, r5, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08062D08 - adds r0, r5, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08062CF4 - cmp r0, 0x47 - bne _08062D00 -_08062CF4: - movs r0, 0x1 - b _08062D02 - .align 2, 0 -_08062CF8: .4byte gUnknown_202DF98 -_08062CFC: .4byte gUnknown_80FE940 -_08062D00: - movs r0, 0 -_08062D02: - adds r4, r0, 0 - cmp r4, 0 - beq _08062D18 -_08062D08: - ldr r2, _08062D14 - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - b _08062D2C - .align 2, 0 -_08062D14: .4byte gUnknown_8106C90 -_08062D18: - adds r2, r5, 0 - adds r2, 0x60 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08062D3C - ldr r2, _08062D38 - str r4, [sp] - adds r0, r7, 0 -_08062D2C: - adds r1, r6, 0 - movs r3, 0x2 - bl sub_8014FF0 - b _08062D52 - .align 2, 0 -_08062D38: .4byte gUnknown_8106C9C -_08062D3C: - ldr r0, _08062D60 - adds r1, r2, 0 - bl sub_8045C18 - ldr r2, _08062D64 - str r4, [sp] - adds r0, r7, 0 - adds r1, r6, 0 - movs r3, 0x2 - bl sub_8014FF0 -_08062D52: - movs r0, 0x2 - bl sub_80073E0 - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08062D60: .4byte gUnknown_202DE58 -_08062D64: .4byte gUnknown_8106C98 - thumb_func_end sub_8062CA8 - - thumb_func_start sub_8062D68 -sub_8062D68: - push {lr} - ldr r0, _08062D84 - movs r1, 0 - strh r1, [r0, 0x1E] - strh r1, [r0, 0x20] - strh r1, [r0, 0xC] - strh r1, [r0, 0xE] - strh r1, [r0, 0x14] - adds r0, 0x28 - bl sub_801317C - pop {r0} - bx r0 - .align 2, 0 -_08062D84: .4byte gUnknown_202EE10 - thumb_func_end sub_8062D68 - - thumb_func_start sub_8062D88 -sub_8062D88: - movs r0, 0x1 - bx lr - thumb_func_end sub_8062D88 - - thumb_func_start sub_8062D8C -sub_8062D8C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r10, r0 - ldrb r5, [r0, 0x4] - ldr r0, _08062E24 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08062E28 - adds r0, r2 - adds r0, r1 - ldr r0, [r0] - str r0, [sp, 0x4] - adds r7, r0, 0 -_08062DAE: - movs r0, 0 - mov r9, r0 - movs r6, 0 - movs r4, 0 - adds r2, r7, 0x4 - mov r8, r2 -_08062DBA: - ldr r0, _08062E24 - ldr r0, [r0] - lsls r1, r4, 2 - ldr r2, _08062E28 - adds r0, r2 - adds r0, r1 - ldr r0, [r0] - bl sub_8071A8C - lsls r0, 24 - cmp r0, 0 - beq _08062DDA - cmp r4, r5 - bne _08062DD8 - mov r9, r6 -_08062DD8: - adds r6, 0x1 -_08062DDA: - adds r4, 0x1 - cmp r4, 0x3 - ble _08062DBA - adds r0, r7, 0 - movs r1, 0 - bl sub_806A2BC - mov r0, r8 - movs r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_804A728 - movs r0, 0x1 - bl sub_8044C10 - str r6, [sp] - adds r0, r7, 0 - movs r1, 0 - movs r2, 0x1 - mov r3, r9 - bl sub_8062F90 - lsls r0, 24 - cmp r0, 0 - beq _08062E10 - b _08062F80 -_08062E10: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x6 - bne _08062E6C - adds r6, r5, 0 - movs r4, 0 - b _08062E2E - .align 2, 0 -_08062E24: .4byte gUnknown_203B418 -_08062E28: .4byte 0x0001357c -_08062E2C: - adds r4, 0x1 -_08062E2E: - cmp r4, 0x3 - bgt _08062E54 - adds r5, 0x1 - cmp r5, 0x3 - ble _08062E3A - movs r5, 0 -_08062E3A: - ldr r0, _08062E64 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08062E68 - adds r0, r2 - adds r0, r1 - ldr r7, [r0] - adds r0, r7, 0 - bl sub_8071A8C - lsls r0, 24 - cmp r0, 0 - beq _08062E2C -_08062E54: - mov r0, r10 - strb r5, [r0, 0x4] - cmp r6, r5 - beq _08062F32 - movs r0, 0 - bl sub_8083CE0 - b _08062F32 - .align 2, 0 -_08062E64: .4byte gUnknown_203B418 -_08062E68: .4byte 0x0001357c -_08062E6C: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x7 - bne _08062EC0 - adds r6, r5, 0 - movs r4, 0 - b _08062E80 -_08062E7E: - adds r4, 0x1 -_08062E80: - cmp r4, 0x3 - bgt _08062EA6 - subs r5, 0x1 - cmp r5, 0 - bge _08062E8C - movs r5, 0x3 -_08062E8C: - ldr r0, _08062EB8 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08062EBC - adds r0, r2 - adds r0, r1 - ldr r7, [r0] - adds r0, r7, 0 - bl sub_8071A8C - lsls r0, 24 - cmp r0, 0 - beq _08062E7E -_08062EA6: - mov r0, r10 - strb r5, [r0, 0x4] - cmp r6, r5 - beq _08062F32 - movs r0, 0 - bl sub_8083CE0 - b _08062F32 - .align 2, 0 -_08062EB8: .4byte gUnknown_203B418 -_08062EBC: .4byte 0x0001357c -_08062EC0: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1D - bne _08062ED6 - bl sub_805F1A0 - bl sub_80637E8 - b _08062F32 -_08062ED6: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1E - bne _08062EF6 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - bl sub_805F1A0 - movs r1, 0x1 - bl sub_8063A70 - b _08062F32 -_08062EF6: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x33 - bne _08062F16 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - bl sub_805F1A0 - movs r1, 0 - bl sub_8063A70 - b _08062F32 -_08062F16: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1F - bne _08062F3A - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - bl sub_805F1A0 - bl sub_8063B54 -_08062F32: - movs r0, 0x1 - bl sub_8044C10 - b _08062F5E -_08062F3A: - bl sub_805F1AC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x21 - bne _08062F5E - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - bl sub_805F1A0 - movs r1, 0x1 - bl sub_8063CF0 - movs r0, 0x1 - bl sub_8044C10 -_08062F5E: - bl sub_805F1AC - lsls r0, 16 - cmp r0, 0 - bne _08062F6A - b _08062DAE -_08062F6A: - ldr r0, [sp, 0x4] - movs r1, 0 - bl sub_806A2BC - ldr r0, [sp, 0x4] - adds r0, 0x4 - movs r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_804A728 -_08062F80: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8062D8C - - thumb_func_start sub_8062F90 -sub_8062F90: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xE8 - mov r8, r0 - str r3, [sp, 0xDC] - lsls r1, 24 - lsrs r1, 24 - str r1, [sp, 0xD4] - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0xD8] - ldr r0, [r0, 0x70] - mov r9, r0 - bl sub_8083600 - ldr r0, [r0, 0x70] - str r0, [sp, 0xE4] - add r4, sp, 0x70 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x74] - add r0, sp, 0x78 - movs r6, 0 - movs r1, 0x2 - strh r1, [r0] - strh r1, [r0, 0x2] - add r1, sp, 0x7C - movs r0, 0x12 - strh r0, [r1] - mov r0, sp - adds r0, 0x7E - movs r1, 0x10 - strh r1, [r0] - add r0, sp, 0x80 - strh r1, [r0] - add r5, sp, 0xD0 - str r5, [sp, 0x84] - movs r1, 0x3 - str r1, [sp, 0x8C] - add r0, sp, 0xA0 - str r1, [r0, 0x4] - add r0, sp, 0xB8 - str r1, [r0, 0x4] - add r0, sp, 0x10 - adds r1, r4, 0 - movs r2, 0x60 - bl memcpy - ldr r0, _080630A4 - str r6, [r0] - movs r3, 0 - ldr r7, [sp, 0xE4] - adds r7, 0x44 -_08063008: - lsls r0, r3, 3 - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - mov r1, r9 - adds r2, r1, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08063032 - ldrb r1, [r2, 0x1] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08063032 - movs r0, 0xFD - ands r0, r1 - strb r0, [r2, 0x1] - ldr r0, _080630A4 - str r3, [r0] -_08063032: - adds r3, 0x1 - cmp r3, 0x3 - ble _08063008 -_08063038: - movs r5, 0 - movs r2, 0 - str r2, [sp, 0xE0] - mov r10, r2 - add r0, sp, 0xD0 - str r0, [sp] - add r1, sp, 0x70 - str r1, [sp, 0x4] - ldr r2, [sp, 0xDC] - str r2, [sp, 0x8] - ldr r0, [sp, 0x108] - str r0, [sp, 0xC] - mov r0, r8 - mov r1, r9 - ldr r2, [sp, 0xD4] - add r3, sp, 0x10 - bl sub_80633E4 -_0806305C: - ldr r0, _080630A8 - add r1, sp, 0x70 - bl AddMenuCursorSprite_ - movs r0, 0x1E - bl sub_803E46C - ldr r2, _080630AC - ldrh r1, [r2, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080630DE - ldrh r0, [r2] - lsrs r0, 8 - movs r1, 0x1 - ands r0, r1 - ldr r1, _080630A8 - movs r2, 0x18 - ldrsh r6, [r1, r2] - cmp r0, 0 - beq _080630BA - movs r0, 0x8C - lsls r0, 1 - add r0, r9 - adds r1, r6, 0 - bl sub_8092F80 - ldr r1, _080630A4 - str r0, [r1] - cmp r6, r0 - beq _080630B0 - movs r0, 0 - bl sub_8083CE0 - b _080630B4 - .align 2, 0 -_080630A4: .4byte gUnknown_202F2D8 -_080630A8: .4byte gUnknown_202EE10 -_080630AC: .4byte gUnknown_20255F0 -_080630B0: - bl sub_8083D30 -_080630B4: - movs r0, 0x1 - mov r10, r0 - b _080631F4 -_080630BA: - movs r0, 0x8C - lsls r0, 1 - add r0, r9 - adds r1, r6, 0 - bl sub_8092D80 - adds r1, r0, 0 - ldr r0, _08063118 - bl sub_8013780 - ldr r1, _08063118 - movs r2, 0x18 - ldrsh r0, [r1, r2] - cmp r6, r0 - beq _080630DE - movs r0, 0 - bl sub_8083CE0 -_080630DE: - ldr r2, _0806311C - ldrh r1, [r2, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08063150 - ldrh r0, [r2] - lsrs r0, 8 - movs r1, 0x1 - ands r0, r1 - ldr r4, _08063118 - movs r1, 0x18 - ldrsh r6, [r4, r1] - cmp r0, 0 - beq _0806312E - movs r0, 0x8C - lsls r0, 1 - add r0, r9 - adds r1, r6, 0 - bl sub_8093130 - ldr r1, _08063120 - str r0, [r1] - cmp r6, r0 - beq _08063124 - movs r0, 0 - bl sub_8083CE0 - b _08063128 - .align 2, 0 -_08063118: .4byte gUnknown_202EE10 -_0806311C: .4byte gUnknown_20255F0 -_08063120: .4byte gUnknown_202F2D8 -_08063124: - bl sub_8083D30 -_08063128: - movs r2, 0x1 - mov r10, r2 - b _080631F4 -_0806312E: - movs r0, 0x8C - lsls r0, 1 - add r0, r9 - adds r1, r6, 0 - bl sub_8092DB8 - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_8013780 - movs r1, 0x18 - ldrsh r0, [r4, r1] - cmp r6, r0 - beq _08063150 - movs r0, 0 - bl sub_8083CE0 -_08063150: - ldr r4, _08063174 - ldrh r1, [r4, 0x4] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08063168 - ldr r6, _08063178 - adds r0, r6, 0 - adds r0, 0x2B - ldrb r0, [r0] - cmp r0, 0 - beq _0806317C -_08063168: - adds r0, r7, 0 - movs r1, 0x6 - bl sub_8044C94 - b _080631F4 - .align 2, 0 -_08063174: .4byte gUnknown_20255F0 -_08063178: .4byte gUnknown_202EE10 -_0806317C: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _0806318E - adds r0, r6, 0 - adds r0, 0x2C - ldrb r0, [r0] - cmp r0, 0 - beq _08063198 -_0806318E: - adds r0, r7, 0 - movs r1, 0x7 - bl sub_8044C94 - b _080631F4 -_08063198: - bl sub_8062D88 - ldrh r1, [r4, 0x2] - ands r0, r1 - cmp r0, 0 - bne _080631AE - adds r0, r6, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _080631C8 -_080631AE: - ldr r2, [sp, 0xD4] - cmp r2, 0 - beq _080631C2 - ldrh r0, [r4] - lsrs r0, 8 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080631C2 - movs r5, 0x3 -_080631C2: - bl sub_8083D08 - b _080631F4 -_080631C8: - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0806321C - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _08063214 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080631EC - adds r0, r6, 0 - adds r0, 0x2A - ldrb r0, [r0] - cmp r0, 0 - bne _080631EC - b _0806305C -_080631EC: - bl sub_8083D30 - movs r0, 0x1 - str r0, [sp, 0xE0] -_080631F4: - ldr r4, _08063210 - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x1E - bl sub_803E46C - ldrh r0, [r7] - subs r0, 0x6 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _08063224 - b _080633CC - .align 2, 0 -_08063210: .4byte gUnknown_202EE10 -_08063214: - movs r5, 0x2 - bl sub_8083D44 - b _080631F4 -_0806321C: - movs r5, 0x1 - bl sub_8083D44 - b _080631F4 -_08063224: - mov r1, r10 - cmp r1, 0 - beq _0806322C - b _08063038 -_0806322C: - ldr r2, [sp, 0xE0] - cmp r2, 0 - beq _08063234 - b _080633B6 -_08063234: - ldr r6, _08063270 - movs r1, 0x18 - ldrsh r0, [r4, r1] - str r0, [r6] - cmp r5, 0x1 - bne _08063274 - adds r0, r7, 0 - movs r1, 0x1D - bl sub_8044C94 - mov r0, r8 - adds r0, 0x24 - ldrb r1, [r0] - ldr r0, [sp, 0xE4] - adds r0, 0x48 - strb r1, [r0] - ldr r1, [r6] - ldr r0, [sp, 0xE4] - adds r0, 0x50 - strb r1, [r0] - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0x8 - movs r1, 0x1B - bl sub_803E708 - b _080633B6 - .align 2, 0 -_08063270: .4byte gUnknown_202F2D8 -_08063274: - mov r0, r8 - ldr r1, [sp, 0xD4] - ldr r2, [sp, 0xD8] - bl sub_8063698 - cmp r5, 0x3 - bne _08063298 - movs r0, 0x20 - bl sub_8044FB4 - adds r6, r0, 0 - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - bne _080632CC - movs r0, 0x21 - b _080632BC -_08063298: - cmp r5, 0x2 - bne _080632DE - mov r2, r9 - ldrb r0, [r2, 0x7] - cmp r0, 0 - beq _080632BA - movs r0, 0x1E - bl sub_8044FB4 - adds r6, r0, 0 - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - bne _080632CC - movs r0, 0x33 - b _080632BC -_080632BA: - movs r0, 0x1F -_080632BC: - bl sub_8044FB4 - adds r6, r0, 0 - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - beq _080632DE -_080632CC: - mov r0, r8 - bl sub_8045B60 - adds r2, r0, 0 - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_80637BC - b _080633B6 -_080632DE: - movs r0, 0x2 - bl sub_8009524 - add r0, sp, 0x10 - movs r1, 0x16 - bl sub_805FC30 - ldr r6, _0806337C - ldr r5, _08063380 - movs r0, 0x2A - adds r0, r6 - mov r10, r0 - adds r4, r7, 0 -_080632F8: - adds r0, r6, 0 - bl AddMenuCursorSprite - movs r0, 0x1B - bl sub_803E46C - ldrh r1, [r5, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0806331C - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r6, 0 - movs r1, 0x1 - bl sub_80136E0 -_0806331C: - ldrh r1, [r5, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08063334 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r6, 0 - movs r1, 0x1 - bl sub_8013744 -_08063334: - bl sub_8062D88 - ldrh r1, [r5, 0x2] - ands r1, r0 - cmp r1, 0 - bne _0806334A - adds r0, r6, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08063388 -_0806334A: - movs r1, 0x18 - ldrsh r0, [r6, r1] - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - beq _08063384 - mov r0, r8 - bl sub_8045B60 - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_80637A4 - ldrh r0, [r4] - subs r0, 0x14 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _08063376 - bl sub_8083D08 -_08063376: - movs r6, 0 - b _080633A0 - .align 2, 0 -_0806337C: .4byte gUnknown_202EE10 -_08063380: .4byte gUnknown_20255F0 -_08063384: - bl sub_8083D30 -_08063388: - ldrh r1, [r5, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0806339A - mov r2, r10 - ldrb r0, [r2] - cmp r0, 0 - beq _080632F8 -_0806339A: - bl sub_8083D30 - movs r6, 0x1 -_080633A0: - ldr r0, _080633E0 - bl AddMenuCursorSprite - movs r0, 0x1B - bl sub_803E46C - cmp r6, 0x1 - bne _080633B2 - b _08063038 -_080633B2: - movs r0, 0 - str r0, [sp, 0xE0] -_080633B6: - movs r0, 0x1 - cmp r0, 0 - beq _080633CC - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0x8 - movs r1, 0x1E - bl sub_803E708 -_080633CC: - ldr r0, [sp, 0xE0] - add sp, 0xE8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080633E0: .4byte gUnknown_202EE10 - thumb_func_end sub_8062F90 - - thumb_func_start sub_80633E4 -sub_80633E4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - str r0, [sp, 0x20] - adds r7, r1, 0 - adds r4, r3, 0 - ldr r0, [sp, 0x44] - mov r8, r0 - lsls r2, 24 - lsrs r2, 24 - mov r10, r2 - add r1, sp, 0x8 - ldr r0, _08063508 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - movs r0, 0 - add r5, sp, 0x50 - ldrb r6, [r5] - mov r5, r8 - strb r6, [r5] - add r6, sp, 0x4C - ldrb r6, [r6] - strb r6, [r5, 0x1] - strb r0, [r5, 0x3] - movs r6, 0 - ldr r5, _0806350C - ldr r0, _08063510 - mov r9, r0 - movs r1, 0x1 - mov r12, r1 - movs r3, 0x8C - lsls r3, 1 - adds r2, r7, r3 - movs r3, 0x3 -_08063432: - ldrb r1, [r2] - mov r0, r12 - ands r0, r1 - cmp r0, 0 - beq _0806343E - adds r6, 0x1 -_0806343E: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08063432 - movs r3, 0x4 - mov r1, r9 - ldr r0, [r1] - movs r1, 0 - strh r0, [r5, 0x18] - strh r6, [r5, 0x1A] - strh r3, [r5, 0x1C] - add r2, sp, 0x4C - ldrh r2, [r2] - strh r2, [r5, 0x1E] - add r3, sp, 0x50 - ldrh r3, [r3] - strh r3, [r5, 0x20] - strh r1, [r5, 0x4] - movs r0, 0x10 - strh r0, [r5, 0x6] - strh r1, [r5, 0x14] - str r1, [r5] - adds r0, r5, 0 - adds r0, 0x28 - bl sub_801317C - movs r0, 0x4 - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - strh r0, [r4, 0x10] - strh r0, [r4, 0xE] - movs r0, 0xD - mov r6, r8 - strb r0, [r6, 0x2] - movs r0, 0x2 - strh r0, [r4, 0x8] - adds r1, r4, 0 - adds r1, 0x18 - adds r0, r4, 0 - adds r0, 0x48 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - adds r1, r4, 0 - adds r1, 0x30 - add r0, sp, 0x8 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - adds r0, r4, 0 - movs r1, 0x1 - bl sub_803ECB4 - adds r0, r5, 0 - movs r1, 0 - bl sub_80137B0 - ldr r1, _08063514 - movs r2, 0 - ldrsh r0, [r1, r2] - adds r0, 0x10 - lsls r0, 3 - strh r0, [r5, 0xC] - movs r3, 0x2 - ldrsh r0, [r1, r3] - adds r0, 0x1 - lsls r0, 3 - subs r0, 0x2 - strh r0, [r5, 0xE] - ldr r0, _08063518 - adds r1, r7, 0 - movs r2, 0 - bl sub_80708B4 - movs r3, 0 - movs r5, 0x1 -_080634DE: - lsls r1, r3, 3 - movs r4, 0x8C - lsls r4, 1 - adds r1, r4 - adds r1, r7, r1 - ldr r6, [sp, 0x48] - adds r4, r6, r3 - movs r0, 0 - strb r0, [r4] - ldrb r1, [r1] - adds r2, r5, 0 - ands r2, r1 - cmp r2, 0 - bne _0806351C - ldr r1, _0806350C - movs r4, 0x18 - ldrsh r0, [r1, r4] - cmp r0, r3 - bne _08063526 - strh r2, [r1, 0x18] - b _08063526 - .align 2, 0 -_08063508: .4byte gUnknown_8106CAC -_0806350C: .4byte gUnknown_202EE10 -_08063510: .4byte gUnknown_202F2D8 -_08063514: .4byte gUnknown_2027370 -_08063518: .4byte gUnknown_202DF98 -_0806351C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08063526 - strb r5, [r4] -_08063526: - adds r3, 0x1 - cmp r3, 0x3 - ble _080634DE - movs r5, 0x8C - lsls r5, 1 - adds r2, r7, r5 - mov r6, r10 - str r6, [sp] - ldr r0, [sp, 0x4C] - str r0, [sp, 0x4] - movs r0, 0x4 - ldr r1, [sp, 0x20] - movs r3, 0 - bl sub_8063578 - movs r0, 0x2 - bl sub_80073B8 - ldr r0, _08063574 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - movs r1, 0 - movs r3, 0x2 - bl sub_8014FF0 - movs r0, 0x2 - bl sub_80073E0 - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08063574: .4byte gUnknown_80FDFE8 - thumb_func_end sub_80633E4 - - thumb_func_start sub_8063578 -sub_8063578: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - str r0, [sp, 0x10] - str r1, [sp, 0x14] - adds r5, r2, 0 - mov r8, r3 - ldr r0, [sp, 0x40] - ldr r4, [sp, 0x44] - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x18] - ldr r0, [r1, 0x70] - str r0, [sp, 0x1C] - mov r0, r8 - bl sub_80073B8 - ldr r0, _080635FC - ldr r1, [sp, 0x14] - movs r2, 0 - bl sub_8045B94 - lsls r4, 3 - adds r4, 0xA - ldr r0, _08063600 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r1, 0 - mov r3, r8 - bl sub_8014FF0 - movs r1, 0 - mov r9, r1 - ldr r0, [sp, 0x10] - cmp r9, r0 - bge _08063676 - add r1, sp, 0x4 - mov r10, r1 - adds r7, r5, 0 -_080635D0: - movs r0, 0 - str r0, [sp, 0x4] - movs r0, 0x6A - str r0, [sp, 0x8] - movs r0, 0 - mov r1, r10 - strb r0, [r1, 0x8] - mov r1, sp - ldrb r0, [r1, 0x18] - mov r1, r10 - strb r0, [r1, 0x9] - ldrb r1, [r7] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08063668 - ldr r1, [sp, 0x1C] - ldrb r0, [r1, 0x7] - cmp r0, 0 - beq _08063604 - movs r0, 0x2 - b _08063606 - .align 2, 0 -_080635FC: .4byte gUnknown_202DF98 -_08063600: .4byte gUnknown_80FE978 -_08063604: - movs r0, 0x4 -_08063606: - str r0, [sp, 0x4] - ldr r0, [sp, 0x14] - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80573CC - add r1, sp, 0x4 - movs r2, 0 - lsls r0, 24 - cmp r0, 0 - bne _0806361E - movs r2, 0x1 -_0806361E: - strb r2, [r1, 0x8] - ldr r0, _0806368C - adds r1, r5, 0 - add r2, sp, 0x4 - bl sub_80928C0 - ldr r0, _08063690 - mov r1, r9 - bl sub_8013800 - adds r4, r0, 0 - ldrb r1, [r7] - movs r0, 0x2 - ands r0, r1 - movs r6, 0xD - cmp r0, 0 - bne _08063658 - movs r6, 0x8 - mov r0, r9 - cmp r0, 0 - beq _08063658 - subs r2, r4, 0x2 - movs r0, 0x7 - str r0, [sp] - mov r0, r8 - movs r1, 0xC - movs r3, 0x78 - bl sub_80078A4 -_08063658: - movs r1, 0 - str r1, [sp] - adds r0, r6, 0 - adds r1, r4, 0 - ldr r2, _08063694 - mov r3, r8 - bl sub_8014FF0 -_08063668: - adds r7, 0x8 - adds r5, 0x8 - movs r0, 0x1 - add r9, r0 - ldr r1, [sp, 0x10] - cmp r9, r1 - blt _080635D0 -_08063676: - mov r0, r8 - bl sub_80073E0 - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806368C: .4byte gUnknown_202DE58 -_08063690: .4byte gUnknown_202EE10 -_08063694: .4byte gUnknown_8106CC4 - thumb_func_end sub_8063578 - - thumb_func_start sub_8063698 -sub_8063698: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - lsls r1, 24 - lsrs r6, r1, 24 - lsls r2, 24 - lsrs r7, r2, 24 - ldr r4, [r0, 0x70] - ldr r0, _080636E8 - ldr r0, [r0] - lsls r0, 3 - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - adds r5, r4, r0 - ldr r1, _080636EC - movs r0, 0 - str r0, [r1] - ldrb r0, [r4, 0x7] - cmp r0, 0 - beq _080636FA - cmp r7, 0 - beq _080636D0 - movs r0, 0x14 - movs r1, 0 - bl sub_8044F5C -_080636D0: - ldrb r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08063702 - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080636F0 - movs r0, 0x33 - b _080636F2 - .align 2, 0 -_080636E8: .4byte gUnknown_202F2D8 -_080636EC: .4byte gUnknown_202EE6C -_080636F0: - movs r0, 0x1E -_080636F2: - movs r1, 0 - bl sub_8044F5C - b _08063702 -_080636FA: - movs r0, 0x1F - movs r1, 0 - bl sub_8044F5C -_08063702: - cmp r6, 0 - beq _08063716 - movs r0, 0x20 - movs r1, 0 - bl sub_8044F5C - movs r0, 0x21 - movs r1, 0 - bl sub_8044F5C -_08063716: - movs r0, 0x1D - movs r1, 0 - bl sub_8044F5C - cmp r6, 0 - bne _0806372A - movs r0, 0x20 - bl sub_8044FF0 - b _08063754 -_0806372A: - ldr r5, _080637A0 - ldr r1, [r5] - adds r0, r4, 0 - bl sub_8063C88 - lsls r0, 24 - cmp r0, 0 - bne _08063740 - movs r0, 0x20 - bl sub_8044FF0 -_08063740: - ldr r1, [r5] - adds r0, r4, 0 - bl sub_8063DD4 - lsls r0, 24 - cmp r0, 0 - bne _08063754 - movs r0, 0x21 - bl sub_8044FF0 -_08063754: - ldr r5, _080637A0 - ldr r1, [r5] - adds r0, r4, 0 - bl sub_8063DD4 - lsls r0, 24 - cmp r0, 0 - bne _0806376A - movs r0, 0x21 - bl sub_8044FF0 -_0806376A: - cmp r7, 0 - beq _08063792 - movs r0, 0 - ldr r1, [r5] - cmp r1, 0x3 - bgt _08063788 - mov r0, r8 - movs r2, 0x1 - bl sub_8057348 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r0, r1, 31 -_08063788: - cmp r0, 0 - bne _08063792 - movs r0, 0x14 - bl sub_8044FF0 -_08063792: - bl sub_8045064 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080637A0: .4byte gUnknown_202F2D8 - thumb_func_end sub_8063698 - - thumb_func_start sub_80637A4 -sub_80637A4: - push {lr} - adds r2, r1, 0 - ldr r1, _080637B8 - movs r3, 0x18 - ldrsh r1, [r1, r3] - bl sub_80637BC - pop {r0} - bx r0 - .align 2, 0 -_080637B8: .4byte gUnknown_202EE10 - thumb_func_end sub_80637A4 - - thumb_func_start sub_80637BC -sub_80637BC: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r2, 0 - ldr r0, _080637E0 - lsls r1, 2 - adds r1, r0 - ldrh r1, [r1] - adds r0, r4, 0 - bl sub_8044C94 - strb r5, [r4, 0x4] - ldr r0, _080637E4 - ldr r0, [r0] - strb r0, [r4, 0xC] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080637E0: .4byte gUnknown_202EE44 -_080637E4: .4byte gUnknown_202F2D8 - thumb_func_end sub_80637BC - - thumb_func_start sub_80637E8 -sub_80637E8: - push {lr} - adds r3, r0, 0 - ldr r0, _08063828 - ldr r1, [r0] - ldrb r0, [r3, 0x4] - lsls r0, 2 - ldr r2, _0806382C - adds r1, r2 - adds r1, r0 - ldr r0, [r1] - ldr r0, [r0, 0x70] - ldrb r1, [r3, 0xC] - lsls r1, 3 - adds r1, r0, r1 - ldr r2, _08063830 - adds r2, r1 - mov r12, r2 - ldrb r2, [r2] - movs r1, 0x2 - orrs r1, r2 - mov r2, r12 - strb r1, [r2] - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - ldrb r1, [r3, 0xC] - movs r2, 0x4 - bl sub_8063834 - pop {r0} - bx r0 - .align 2, 0 -_08063828: .4byte gUnknown_203B418 -_0806382C: .4byte 0x0001357c -_08063830: .4byte 0x00000119 - thumb_func_end sub_80637E8 - - thumb_func_start sub_8063834 -sub_8063834: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x7C - str r0, [sp, 0x74] - str r1, [sp, 0x78] - adds r4, r2, 0 - mov r0, sp - bl sub_80140B4 - add r0, sp, 0x70 - str r0, [sp, 0x14] - movs r1, 0x1 - mov r9, r1 - ldr r3, [sp, 0x78] - adds r3, 0x1 - add r2, sp, 0x60 - mov r10, r2 - cmp r3, r4 - bge _08063894 - lsls r0, r3, 3 - ldr r1, [sp, 0x74] - adds r2, r0, r1 - ldrb r1, [r2] - mov r0, r9 - ands r0, r1 - cmp r0, 0 - beq _08063894 - movs r6, 0x2 - movs r5, 0x1 -_08063874: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08063894 - movs r0, 0x1 - add r9, r0 - adds r2, 0x8 - adds r3, 0x1 - cmp r3, r4 - bge _08063894 - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _08063874 -_08063894: - movs r4, 0 - ldr r6, _0806393C -_08063898: - movs r7, 0 - mov r1, r9 - add r2, sp, 0x70 - strb r1, [r2] - adds r1, r2, 0 - strb r4, [r1, 0x1] - movs r0, 0xC - strb r0, [r1, 0x2] - strb r7, [r1, 0x3] - strh r4, [r6, 0x1E] - mov r0, r9 - strh r0, [r6, 0x20] - ldr r1, _08063940 - movs r2, 0 - ldrsh r0, [r1, r2] - adds r0, 0x17 - lsls r0, 3 - strh r0, [r6, 0xC] - movs r2, 0x2 - ldrsh r0, [r1, r2] - adds r0, 0x1 - lsls r0, 3 - subs r0, 0x2 - strh r0, [r6, 0xE] - strh r7, [r6, 0x14] - strh r7, [r6, 0x4] - movs r0, 0x10 - strh r0, [r6, 0x6] - str r7, [r6] - adds r0, r6, 0 - adds r0, 0x28 - bl sub_801317C - strh r7, [r6, 0x18] - strh r7, [r6, 0x1A] - strh r7, [r6, 0x1C] - mov r0, sp - movs r1, 0x1 - bl sub_803ECB4 - ldr r0, [sp, 0x78] - adds r1, r0, r4 - lsls r1, 3 - ldr r2, [sp, 0x74] - adds r1, r2, r1 - adds r0, r4, 0 - movs r2, 0 - mov r3, r10 - bl sub_8093DE8 - mov r8, r0 -_080638FE: - mov r0, r8 - cmp r0, 0 - beq _08063908 - bl sub_8062500 -_08063908: - ldr r5, _08063944 - adds r0, r5, 0 - movs r1, 0 - bl nullsub_34 - movs r0, 0x1C - bl sub_803E46C - bl sub_8062D88 - ldr r1, _08063948 - ldrh r1, [r1, 0x2] - ands r0, r1 - cmp r0, 0 - bne _0806392C - ldrb r0, [r5, 0x1] - cmp r0, 0 - beq _0806394C -_0806392C: - bl sub_8083D08 - movs r7, 0x1 - mov r1, r8 - cmp r1, 0 - beq _080639AE - movs r7, 0x2 - b _080639AE - .align 2, 0 -_0806393C: .4byte gUnknown_202EE10 -_08063940: .4byte gUnknown_2027370 -_08063944: .4byte gUnknown_202EE38 -_08063948: .4byte gUnknown_20255F0 -_0806394C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0806395A - ldrb r0, [r5, 0x2] - cmp r0, 0 - beq _08063962 -_0806395A: - bl sub_8083D30 - movs r7, 0x1 - b _080639AE -_08063962: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _08063970 - ldrb r0, [r5, 0x4] - cmp r0, 0 - beq _08063986 -_08063970: - adds r0, r4, 0 - cmp r4, 0 - bne _08063978 - mov r4, r9 -_08063978: - subs r4, 0x1 - cmp r0, r4 - beq _080639AE - movs r0, 0 - bl sub_8083CE0 - b _080639AE -_08063986: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08063994 - ldrb r0, [r5, 0x3] - cmp r0, 0 - beq _080638FE -_08063994: - adds r1, r4, 0 - mov r0, r9 - subs r0, 0x1 - cmp r4, r0 - bne _080639A2 - movs r4, 0 - b _080639A4 -_080639A2: - adds r4, 0x1 -_080639A4: - cmp r1, r4 - beq _080639AE - movs r0, 0 - bl sub_8083CE0 -_080639AE: - cmp r7, 0x1 - beq _080639CA - cmp r7, 0 - bne _080639B8 - b _08063898 -_080639B8: - mov r2, r8 - cmp r2, 0 - bne _080639C0 - b _08063898 -_080639C0: - mov r0, r8 - mov r1, r10 - bl sub_80625A4 - b _08063898 -_080639CA: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - add sp, 0x7C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8063834 - - thumb_func_start sub_80639E4 -sub_80639E4: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - ldr r4, _08063A5C - adds r0, r4, 0 - bl sub_80140B4 - ldr r0, _08063A60 - str r0, [r4, 0x14] - adds r0, r4, 0 - movs r1, 0x1 - bl sub_803ECB4 - movs r0, 0 - bl sub_80073B8 - ldr r0, _08063A64 - ldr r1, [r5] - bl strcpy - ldr r2, _08063A68 - movs r4, 0 - str r4, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - ldr r2, [r5, 0x4] - str r4, [sp] - movs r0, 0x4 - movs r1, 0x10 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - ldr r0, _08063A6C - strh r4, [r0, 0x1E] - strh r4, [r0, 0x20] - strh r4, [r0, 0xC] - strh r4, [r0, 0xE] - strh r4, [r0, 0x14] - strh r4, [r0, 0x4] - movs r1, 0x10 - strh r1, [r0, 0x6] - str r4, [r0] - strh r4, [r0, 0x18] - strh r4, [r0, 0x1A] - strh r4, [r0, 0x1C] - adds r0, r6, 0 - bl sub_801317C - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08063A5C: .4byte gUnknown_202F278 -_08063A60: .4byte gUnknown_8106CC8 -_08063A64: .4byte gUnknown_202DF98 -_08063A68: .4byte gUnknown_8106CCC -_08063A6C: .4byte gUnknown_202EE10 - thumb_func_end sub_80639E4 - - thumb_func_start sub_8063A70 -sub_8063A70: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - ldr r1, _08063B1C - ldr r2, [r1] - ldrb r1, [r0, 0x4] - lsls r1, 2 - ldr r3, _08063B20 - adds r2, r3 - adds r2, r1 - ldr r6, [r2] - ldr r5, [r6, 0x70] - ldrb r0, [r0, 0xC] - lsls r0, 3 - movs r2, 0x8C - lsls r2, 1 - adds r0, r2 - adds r4, r5, r0 - ldrb r1, [r4] - movs r0, 0x8 - ands r0, r1 - lsls r0, 24 - lsrs r0, 24 - negs r0, r0 - lsrs r0, 31 - mov r8, r0 - ldr r0, _08063B24 - mov r9, r0 - movs r1, 0x1 - mov r12, r1 - adds r2, r5, r2 - movs r7, 0xF7 - movs r3, 0x3 -_08063ABC: - ldrb r1, [r2] - mov r0, r12 - ands r0, r1 - cmp r0, 0 - beq _08063ACC - adds r0, r7, 0 - ands r0, r1 - strb r0, [r2] -_08063ACC: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08063ABC - mov r0, r9 - adds r1, r4, 0 - movs r2, 0 - bl sub_80928C0 - mov r3, r8 - cmp r3, 0 - bne _08063AEC - ldrb r1, [r4] - movs r0, 0x8 - orrs r0, r1 - strb r0, [r4] -_08063AEC: - movs r1, 0x8C - lsls r1, 1 - adds r0, r5, r1 - bl sub_80936D8 - ldrb r1, [r4, 0x1] - movs r0, 0x2 - orrs r0, r1 - strb r0, [r4, 0x1] - ldr r0, _08063B28 - bl sub_8083E38 - mov r3, r10 - cmp r3, 0 - beq _08063B42 - mov r0, r8 - cmp r0, 0 - bne _08063B30 - ldr r0, _08063B2C - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - b _08063B3A - .align 2, 0 -_08063B1C: .4byte gUnknown_203B418 -_08063B20: .4byte 0x0001357c -_08063B24: .4byte gUnknown_202DE58 -_08063B28: .4byte 0x00000133 -_08063B2C: .4byte gUnknown_80F8B40 -_08063B30: - ldr r0, _08063B50 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 -_08063B3A: - movs r0, 0x78 - movs r1, 0x1F - bl sub_803E708 -_08063B42: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08063B50: .4byte gUnknown_80F8B64 - thumb_func_end sub_8063A70 - - thumb_func_start sub_8063B54 -sub_8063B54: - push {r4-r6,lr} - ldr r1, _08063BA4 - ldr r2, [r1] - ldrb r1, [r0, 0x4] - lsls r1, 2 - ldr r3, _08063BA8 - adds r2, r3 - adds r2, r1 - ldr r1, [r2] - ldr r5, [r1, 0x70] - ldrb r4, [r0, 0xC] - lsls r4, 3 - movs r6, 0x8C - lsls r6, 1 - adds r4, r6 - adds r4, r5, r4 - ldr r0, _08063BAC - adds r1, r4, 0 - movs r2, 0 - bl sub_80928C0 - ldrb r0, [r4] - movs r1, 0x4 - eors r0, r1 - strb r0, [r4] - adds r5, r6 - adds r0, r5, 0 - bl sub_80936D8 - ldrb r1, [r4, 0x1] - movs r0, 0x2 - orrs r0, r1 - strb r0, [r4, 0x1] - ldr r0, _08063BB0 - bl sub_8083E38 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08063BA4: .4byte gUnknown_203B418 -_08063BA8: .4byte 0x0001357c -_08063BAC: .4byte gUnknown_202DE58 -_08063BB0: .4byte 0x00000133 - thumb_func_end sub_8063B54 - - thumb_func_start sub_8063BB4 -sub_8063BB4: - push {r4-r7,lr} - ldr r1, _08063C70 - ldr r2, [r1] - ldrb r1, [r0, 0x4] - lsls r1, 2 - ldr r3, _08063C74 - adds r2, r3 - adds r2, r1 - ldr r1, [r2] - ldr r6, [r1, 0x70] - ldrb r5, [r0, 0xC] - ldr r0, _08063C78 - lsls r4, r5, 3 - movs r7, 0x8C - lsls r7, 1 - adds r1, r4, r7 - adds r1, r6, r1 - movs r2, 0 - bl sub_80928C0 - adds r4, r6, r4 - ldr r0, _08063C7C - adds r2, r4, r0 - ldrb r1, [r2] - movs r0, 0x2 - orrs r0, r1 - strb r0, [r2] - movs r3, 0 - adds r5, 0x1 - cmp r5, 0x3 - bgt _08063C2C - lsls r2, r5, 3 - adds r0, r2, r6 - adds r1, r7, 0 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08063C2C - adds r0, r2, r7 - adds r2, r0, r6 - movs r4, 0x2 -_08063C0A: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _08063C2C - adds r3, 0x1 - cmp r3, 0x3 - bgt _08063C2C - adds r2, 0x8 - adds r5, 0x1 - cmp r5, 0x3 - bgt _08063C2C - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08063C0A -_08063C2C: - lsls r0, r5, 3 - adds r0, r6 - movs r4, 0x8C - lsls r4, 1 - adds r0, r4 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08063C42 - movs r5, 0x4 -_08063C42: - cmp r5, 0x3 - bgt _08063C5C - lsls r1, r5, 3 - adds r1, r4 - adds r1, r6, r1 - ldrb r2, [r1] - movs r0, 0x2 - orrs r0, r2 - strb r0, [r1] - ldr r0, _08063C80 - movs r2, 0 - bl sub_80928C0 -_08063C5C: - adds r0, r6, r4 - bl sub_80936D8 - ldr r0, _08063C84 - bl sub_8083E38 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08063C70: .4byte gUnknown_203B418 -_08063C74: .4byte 0x0001357c -_08063C78: .4byte gUnknown_202DE58 -_08063C7C: .4byte 0x00000119 -_08063C80: .4byte gUnknown_202DEA8 -_08063C84: .4byte 0x00000133 - thumb_func_end sub_8063BB4 - - thumb_func_start sub_8063C88 -sub_8063C88: - push {r4-r7,lr} - adds r4, r0, 0 - movs r7, 0 - adds r5, r1, 0 - lsls r0, r5, 3 - adds r0, r4, r0 - movs r1, 0x8D - lsls r1, 1 - adds r0, r1 - ldrh r0, [r0] - bl sub_809422C - lsls r0, 24 - cmp r0, 0 - beq _08063CAE -_08063CA6: - movs r0, 0 - b _08063CEA -_08063CAA: - movs r7, 0x1 - b _08063CE8 -_08063CAE: - adds r5, 0x1 - movs r6, 0 - lsls r0, r5, 3 - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - adds r4, r0, r4 -_08063CBC: - ldrh r0, [r4, 0x2] - bl sub_809422C - lsls r0, 24 - cmp r0, 0 - bne _08063CA6 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08063CE8 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08063CAA - adds r4, 0x8 - adds r5, 0x1 - cmp r5, 0x3 - bgt _08063CE8 - adds r6, 0x1 - cmp r6, 0x3 - ble _08063CBC -_08063CE8: - adds r0, r7, 0 -_08063CEA: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8063C88 - - thumb_func_start sub_8063CF0 -sub_8063CF0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - ldr r1, _08063D98 - ldr r2, [r1] - ldrb r1, [r0, 0x4] - lsls r1, 2 - ldr r3, _08063D9C - adds r2, r3 - adds r2, r1 - ldr r7, [r2] - ldr r6, [r7, 0x70] - ldrb r5, [r0, 0xC] - movs r0, 0 - mov r8, r0 - ldr r0, _08063DA0 - lsls r4, r5, 3 - movs r1, 0x8C - lsls r1, 1 - mov r9, r1 - adds r1, r4, r1 - adds r1, r6, r1 - movs r2, 0 - bl sub_80928C0 - adds r4, r6, r4 - ldr r3, _08063DA4 - adds r2, r4, r3 - ldrb r1, [r2] - movs r0, 0x2 - orrs r0, r1 - strb r0, [r2] - adds r5, 0x1 - movs r3, 0 - cmp r5, 0x3 - bgt _08063D70 - movs r0, 0x2 - mov r12, r0 - lsls r0, r5, 3 - add r0, r9 - adds r2, r0, r6 - movs r4, 0xFD -_08063D4E: - ldrb r1, [r2] - mov r0, r12 - ands r0, r1 - cmp r0, 0 - beq _08063D70 - adds r0, r4, 0 - ands r0, r1 - strb r0, [r2] - movs r1, 0x1 - mov r8, r1 - adds r2, 0x8 - adds r5, 0x1 - adds r3, 0x1 - cmp r3, 0x3 - bgt _08063D70 - cmp r5, 0x3 - ble _08063D4E -_08063D70: - movs r2, 0x8C - lsls r2, 1 - adds r0, r6, r2 - bl sub_80936D8 - ldr r0, _08063DA8 - bl sub_8083E38 - mov r3, r10 - cmp r3, 0 - beq _08063DC2 - mov r0, r8 - cmp r0, 0 - beq _08063DB0 - ldr r0, _08063DAC - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - b _08063DBA - .align 2, 0 -_08063D98: .4byte gUnknown_203B418 -_08063D9C: .4byte 0x0001357c -_08063DA0: .4byte gUnknown_202DE58 -_08063DA4: .4byte 0x00000119 -_08063DA8: .4byte 0x00000133 -_08063DAC: .4byte gUnknown_80F8B88 -_08063DB0: - ldr r0, _08063DD0 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 -_08063DBA: - movs r0, 0x78 - movs r1, 0x1F - bl sub_803E708 -_08063DC2: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08063DD0: .4byte gUnknown_80F8BB4 - thumb_func_end sub_8063CF0 - - thumb_func_start sub_8063DD4 -sub_8063DD4: - push {r4-r7,lr} - adds r3, r0, 0 - adds r2, r1, 0 - movs r5, 0 - adds r2, 0x1 - movs r4, 0 - cmp r2, 0x3 - bgt _08063E20 - lsls r0, r2, 3 - movs r6, 0x8C - lsls r6, 1 - adds r0, r6 - adds r0, r3, r0 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08063E20 - movs r5, 0x1 - adds r2, 0x1 - movs r7, 0x2 - lsls r0, r2, 3 - adds r0, r6 - adds r3, r0, r3 -_08063E04: - adds r4, 0x1 - cmp r4, 0x3 - bgt _08063E20 - cmp r2, 0x3 - bgt _08063E20 - ldrb r1, [r3] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08063E20 - movs r5, 0x1 - adds r3, 0x8 - adds r2, 0x1 - b _08063E04 -_08063E20: - cmp r5, 0 - bne _08063E28 - movs r0, 0 - b _08063E2A -_08063E28: - movs r0, 0x1 -_08063E2A: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8063DD4 - - thumb_func_start sub_8063E30 -sub_8063E30: - push {r4-r7,lr} - adds r5, r0, 0 - adds r1, 0x1 - movs r4, 0 - cmp r1, 0x7 - bgt _08063E62 - movs r7, 0x2 - movs r6, 0xFD - lsls r0, r1, 3 - adds r3, r0, r5 -_08063E44: - ldrb r2, [r3] - adds r0, r7, 0 - ands r0, r2 - cmp r0, 0 - beq _08063E62 - adds r0, r6, 0 - ands r0, r2 - strb r0, [r3] - adds r3, 0x8 - adds r1, 0x1 - adds r4, 0x1 - cmp r4, 0x7 - bgt _08063E62 - cmp r1, 0x7 - ble _08063E44 -_08063E62: - adds r0, r5, 0 - bl sub_80936F4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8063E30 - - thumb_func_start sub_8063E70 -sub_8063E70: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xD0 - str r0, [sp, 0xC4] - adds r7, r1, 0 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0xC8] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0xCC] - add r4, sp, 0x60 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x64] - add r0, sp, 0x68 - movs r6, 0 - movs r1, 0x2 - strh r1, [r0] - strh r1, [r0, 0x2] - add r1, sp, 0x6C - movs r0, 0x12 - strh r0, [r1] - mov r0, sp - adds r0, 0x6E - movs r1, 0x10 - strh r1, [r0] - add r0, sp, 0x70 - strh r1, [r0] - add r5, sp, 0xC0 - str r5, [sp, 0x74] - movs r1, 0x3 - str r1, [sp, 0x7C] - add r0, sp, 0x90 - str r1, [r0, 0x4] - add r0, sp, 0xA8 - str r1, [r0, 0x4] - mov r0, sp - adds r1, r4, 0 - movs r2, 0x60 - bl memcpy - ldr r0, _08063F80 - str r6, [r0] - ldr r1, _08063F84 - mov r8, r1 - mov r9, r0 - ldr r2, _08063F88 - mov r10, r2 -_08063EE0: - ldr r0, [sp, 0xC4] - adds r1, r7, 0 - mov r2, sp - add r3, sp, 0xC0 - bl sub_8064228 -_08063EEC: - mov r0, r8 - bl AddMenuCursorSprite - movs r0, 0x1E - bl sub_803E46C - mov r0, r10 - ldrh r1, [r0, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08063F2A - mov r1, r8 - movs r2, 0x18 - ldrsh r4, [r1, r2] - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_8092E1C - adds r1, r0, 0 - mov r0, r8 - bl sub_8013780 - mov r1, r8 - movs r2, 0x18 - ldrsh r0, [r1, r2] - cmp r4, r0 - beq _08063F2A - movs r0, 0 - bl sub_8083CE0 -_08063F2A: - mov r0, r10 - ldrh r1, [r0, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08063F5C - mov r1, r8 - movs r2, 0x18 - ldrsh r4, [r1, r2] - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_8092E8C - adds r1, r0, 0 - mov r0, r8 - bl sub_8013780 - mov r1, r8 - movs r2, 0x18 - ldrsh r0, [r1, r2] - cmp r4, r0 - beq _08063F5C - movs r0, 0 - bl sub_8083CE0 -_08063F5C: - bl sub_8062D88 - mov r2, r10 - ldrh r1, [r2, 0x2] - ands r0, r1 - cmp r0, 0 - bne _08063F76 - ldr r2, _08063F84 - adds r0, r2, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08063F8C -_08063F76: - bl sub_8083D08 - movs r4, 0 - b _08063FB2 - .align 2, 0 -_08063F80: .4byte gUnknown_202F2D8 -_08063F84: .4byte gUnknown_202EE10 -_08063F88: .4byte gUnknown_20255F0 -_08063F8C: - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _08063FD4 - ldr r0, [sp, 0xCC] - cmp r0, 0 - beq _08063EEC - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08063FAC - adds r0, r2, 0 - adds r0, 0x2A - ldrb r0, [r0] - cmp r0, 0 - beq _08063EEC -_08063FAC: - bl sub_8083D30 - movs r4, 0x1 -_08063FB2: - ldr r5, _08063FD0 - adds r0, r5, 0 - bl AddMenuCursorSprite - movs r0, 0x1E - bl sub_803E46C - cmp r4, 0x1 - bne _08063FDC - movs r0, 0x1 - negs r0, r0 - mov r1, r9 - str r0, [r1] - b _080640FA - .align 2, 0 -_08063FD0: .4byte gUnknown_202EE10 -_08063FD4: - bl sub_8083D44 - movs r4, 0x2 - b _08063FB2 -_08063FDC: - ldr r6, _08064004 - movs r2, 0x18 - ldrsh r0, [r5, r2] - str r0, [r6] - cmp r4, 0x2 - bne _08064008 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - movs r0, 0x8 - movs r1, 0x1B - bl sub_803E708 - ldr r1, [r6] - adds r0, r7, 0 - movs r2, 0x4 - bl sub_8063834 - b _08063EE0 - .align 2, 0 -_08064004: .4byte gUnknown_202F2D8 -_08064008: - adds r0, r7, 0 - bl sub_8064310 - mov r0, sp - movs r1, 0x16 - bl sub_805FC30 - adds r4, r5, 0 - ldr r6, _0806408C - adds r5, 0x2A -_0806401C: - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x1B - bl sub_803E46C - ldrh r1, [r6, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08064040 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80136E0 -_08064040: - ldrh r1, [r6, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08064058 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013744 -_08064058: - bl sub_8062D88 - ldrh r1, [r6, 0x2] - ands r1, r0 - cmp r1, 0 - bne _0806406E - adds r0, r4, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _0806409C -_0806406E: - movs r1, 0x18 - ldrsh r0, [r4, r1] - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - beq _08064098 - movs r2, 0x18 - ldrsh r0, [r4, r2] - cmp r0, 0x2 - bne _08064090 - bl sub_8083D08 - b _08064094 - .align 2, 0 -_0806408C: .4byte gUnknown_20255F0 -_08064090: - bl sub_8083D1C -_08064094: - movs r4, 0 - b _080640B2 -_08064098: - bl sub_8083D30 -_0806409C: - ldrh r1, [r6, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080640AC - ldrb r0, [r5] - cmp r0, 0 - beq _0806401C -_080640AC: - bl sub_8083D30 - movs r4, 0x1 -_080640B2: - ldr r6, _080640E4 - adds r0, r6, 0 - bl AddMenuCursorSprite - movs r0, 0x1B - bl sub_803E46C - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - cmp r4, 0x1 - bne _080640CE - b _08063EE0 -_080640CE: - movs r1, 0x18 - ldrsh r0, [r6, r1] - cmp r0, 0x1 - bne _080640E8 - mov r2, r9 - ldr r1, [r2] - adds r0, r7, 0 - bl sub_8063E30 - b _08063EE0 - .align 2, 0 -_080640E4: .4byte gUnknown_202EE10 -_080640E8: - cmp r0, 0x2 - bne _080640FA - mov r0, r9 - ldr r1, [r0] - adds r0, r7, 0 - movs r2, 0x8 - bl sub_8063834 - b _08063EE0 -_080640FA: - ldr r1, _08064140 - ldr r2, [r1] - cmp r2, 0 - bge _08064104 - b _08064214 -_08064104: - ldr r0, [sp, 0xC8] - cmp r0, 0 - beq _08064160 - movs r4, 0 - lsls r0, r2, 3 - adds r1, r7, r0 - adds r0, r2, 0x1 - cmp r0, 0x7 - bgt _08064130 - lsls r0, 3 - adds r0, r7 - ldrb r2, [r0] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _08064130 - movs r0, 0x2 - ands r0, r2 - lsls r0, 24 - lsrs r0, 24 - negs r0, r0 - lsrs r4, r0, 31 -_08064130: - ldr r0, _08064144 - movs r2, 0 - bl sub_80928C0 - cmp r4, 0 - beq _0806414C - ldr r0, _08064148 - b _0806414E - .align 2, 0 -_08064140: .4byte gUnknown_202F2D8 -_08064144: .4byte gUnknown_202DE58 -_08064148: .4byte gUnknown_80FDF00 -_0806414C: - ldr r0, _0806415C -_0806414E: - ldr r1, [r0] - movs r0, 0 - movs r2, 0 - bl sub_8052B8C - adds r3, r0, 0 - b _08064162 - .align 2, 0 -_0806415C: .4byte gUnknown_80FDF70 -_08064160: - movs r3, 0x1 -_08064162: - cmp r3, 0x1 - beq _08064168 - b _08063EE0 -_08064168: - mov r1, r9 - ldr r0, [r1] - lsls r0, 3 - adds r0, r7 - movs r1, 0 - strb r1, [r0] - mov r2, r9 - ldr r0, [r2] - adds r2, r0, 0x1 - cmp r2, 0x7 - bgt _080641BC - lsls r0, r2, 3 - adds r4, r7, r0 - ldrb r1, [r4] - ands r3, r1 - cmp r3, 0 - beq _080641BC - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080641BC - movs r0, 0 - mov r12, r0 - movs r6, 0x1 - adds r3, r4, 0 - movs r5, 0x2 -_0806419C: - mov r1, r12 - strb r1, [r4] - adds r3, 0x8 - adds r2, 0x1 - cmp r2, 0x7 - bgt _080641BC - adds r4, r3, 0 - ldrb r1, [r3] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _080641BC - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _0806419C -_080641BC: - movs r4, 0 - movs r6, 0x1 - adds r3, r7, 0 - add r5, sp, 0x60 - movs r2, 0x7 -_080641C6: - ldrb r1, [r3] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _080641D8 - ldr r0, [r3] - ldr r1, [r3, 0x4] - stm r5!, {r0,r1} - adds r4, 0x1 -_080641D8: - adds r3, 0x8 - subs r2, 0x1 - cmp r2, 0 - bge _080641C6 - cmp r4, 0x7 - bgt _080641F4 - movs r1, 0 -_080641E6: - lsls r0, r4, 3 - add r0, sp - adds r0, 0x60 - strb r1, [r0] - adds r4, 0x1 - cmp r4, 0x7 - ble _080641E6 -_080641F4: - add r4, sp, 0x60 - adds r3, r7, 0 - movs r2, 0x7 -_080641FA: - ldm r4!, {r0,r1} - stm r3!, {r0,r1} - subs r2, 0x1 - cmp r2, 0 - bge _080641FA - ldr r2, _08064210 - ldr r0, [r2] - cmp r0, 0 - blt _08064214 - movs r0, 0x1 - b _08064216 - .align 2, 0 -_08064210: .4byte gUnknown_202F2D8 -_08064214: - movs r0, 0 -_08064216: - add sp, 0xD0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8063E70 - - thumb_func_start sub_8064228 -sub_8064228: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r9, r0 - mov r10, r1 - adds r5, r2, 0 - adds r7, r3, 0 - movs r1, 0 - movs r0, 0x1 - strb r0, [r7] - strb r1, [r7, 0x1] - strb r1, [r7, 0x3] - mov r8, r1 - ldr r6, _08064304 - ldr r0, _08064308 - mov r12, r0 - movs r4, 0x1 - mov r2, r10 - movs r3, 0x7 -_08064254: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _08064262 - movs r1, 0x1 - add r8, r1 -_08064262: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08064254 - mov r2, r12 - ldr r0, [r2] - movs r4, 0 - strh r0, [r6, 0x18] - mov r3, r8 - strh r3, [r6, 0x1A] - strh r3, [r6, 0x1C] - strh r4, [r6, 0x1E] - strh r4, [r6, 0x20] - strh r4, [r6, 0x4] - movs r0, 0x10 - strh r0, [r6, 0x6] - strh r4, [r6, 0xC] - strh r4, [r6, 0xE] - strh r4, [r6, 0x14] - str r4, [r6] - adds r0, r6, 0 - adds r0, 0x28 - bl sub_801317C - mov r0, r8 - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - strh r0, [r5, 0x10] - strh r0, [r5, 0xE] - movs r0, 0xE - strb r0, [r7, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x8] - adds r1, r5, 0 - adds r1, 0x18 - adds r0, r5, 0 - adds r0, 0x48 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - adds r1, r5, 0 - adds r1, 0x30 - adds r0, r5, 0 - adds r0, 0x48 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - adds r0, r5, 0 - movs r1, 0x1 - bl sub_803ECB4 - adds r0, r6, 0 - movs r1, 0 - bl sub_80137B0 - ldr r0, _0806430C - mov r7, r9 - ldr r1, [r7, 0x70] - movs r2, 0 - bl sub_80708B4 - str r4, [sp] - str r4, [sp, 0x4] - mov r0, r8 - mov r1, r9 - mov r2, r10 - movs r3, 0 - bl sub_8063578 - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08064304: .4byte gUnknown_202EE10 -_08064308: .4byte gUnknown_202F2D8 -_0806430C: .4byte gUnknown_202DF98 - thumb_func_end sub_8064228 - - thumb_func_start sub_8064310 -sub_8064310: - push {r4,lr} - adds r4, r0, 0 - ldr r1, _08064350 - movs r0, 0 - str r0, [r1] - movs r0, 0x22 - movs r1, 0 - bl sub_8044F5C - movs r0, 0x21 - movs r1, 0 - bl sub_8044F5C - ldr r0, _08064354 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_8064358 - lsls r0, 24 - cmp r0, 0 - bne _08064340 - movs r0, 0x21 - bl sub_8044FF0 -_08064340: - movs r0, 0x1D - movs r1, 0 - bl sub_8044F5C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08064350: .4byte gUnknown_202EE6C -_08064354: .4byte gUnknown_202F2D8 - thumb_func_end sub_8064310 - - thumb_func_start sub_8064358 -sub_8064358: - push {r4-r6,lr} - adds r3, r0, 0 - adds r2, r1, 0 - movs r5, 0 - adds r2, 0x1 - movs r4, 0 - cmp r2, 0x7 - bgt _0806439C - lsls r0, r2, 3 - adds r0, r3, r0 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0806439C - movs r5, 0x1 - adds r2, 0x1 - movs r6, 0x2 - lsls r0, r2, 3 - adds r3, r0, r3 -_08064380: - adds r4, 0x1 - cmp r4, 0x7 - bgt _0806439C - cmp r2, 0x7 - bgt _0806439C - ldrb r1, [r3] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0806439C - movs r5, 0x1 - adds r3, 0x8 - adds r2, 0x1 - b _08064380 -_0806439C: - cmp r5, 0 - bne _080643A4 - movs r0, 0 - b _080643A6 -_080643A4: - movs r0, 0x1 -_080643A6: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8064358 - - thumb_func_start sub_80643AC -sub_80643AC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xE4 - adds r7, r0, 0 - add r0, sp, 0x68 - mov r9, r0 - mov r1, sp - adds r1, 0x6C - str r1, [sp, 0xD0] - mov r2, sp - adds r2, 0x6E - str r2, [sp, 0xD4] - mov r0, sp - adds r0, 0x70 - str r0, [sp, 0xD8] - adds r1, 0xC - str r1, [sp, 0xDC] - adds r2, 0x22 - str r2, [sp, 0xE0] - adds r0, 0x38 - str r0, [sp, 0xC8] - subs r1, 0x18 - str r1, [sp, 0xC4] - add r2, sp, 0xC0 - mov r10, r2 - ldr r5, _080644C8 - adds r0, r7, 0x4 - str r0, [sp, 0xCC] - ldr r1, _080644CC - mov r8, r1 - movs r6, 0 -_080643F0: - movs r4, 0 - ldr r0, [sp, 0xC4] - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x64] - movs r0, 0x2 - mov r2, r9 - strh r0, [r2] - strh r0, [r2, 0x2] - movs r0, 0x12 - ldr r1, [sp, 0xD0] - strh r0, [r1] - movs r0, 0x4 - ldr r2, [sp, 0xD4] - strh r0, [r2] - movs r0, 0x10 - ldr r1, [sp, 0xD8] - strh r0, [r1] - mov r2, r10 - str r2, [sp, 0x74] - movs r0, 0x3 - ldr r1, [sp, 0xDC] - str r0, [r1, 0x4] - ldr r2, [sp, 0xE0] - str r0, [r2, 0x4] - ldr r1, [sp, 0xC8] - str r0, [r1, 0x4] - mov r0, sp - ldr r1, [sp, 0xC4] - movs r2, 0x60 - bl memcpy - bl sub_8083D44 - adds r0, r7, 0x4 - mov r1, sp - mov r2, r10 - bl sub_806455C - movs r0, 0x2D - bl sub_803E46C - adds r0, r7, 0 - bl sub_80645D4 - strh r4, [r5, 0x8] - strh r4, [r5, 0xA] - mov r0, sp - movs r1, 0x16 - bl sub_805FC30 -_0806445C: - adds r0, r5, 0 - bl AddMenuCursorSprite - movs r0, 0x2D - bl sub_803E46C - mov r2, r8 - ldrh r1, [r2, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08064482 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80136E0 -_08064482: - mov r0, r8 - ldrh r1, [r0, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0806449C - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8013744 -_0806449C: - mov r2, r8 - ldrh r1, [r2, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080644B2 - adds r0, r5, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08064510 -_080644B2: - movs r1, 0x18 - ldrsh r0, [r5, r1] - cmp r0, 0x1 - bne _080644D0 - bl sub_8083D08 - ldr r0, [sp, 0xCC] - bl sub_80645F8 - movs r4, 0x2 - b _0806452A - .align 2, 0 -_080644C8: .4byte gUnknown_202EE10 -_080644CC: .4byte gUnknown_20255F0 -_080644D0: - movs r2, 0x18 - ldrsh r0, [r5, r2] - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - beq _0806450C - ldr r4, [r7, 0x70] - adds r4, 0x44 - ldr r1, _08064508 - movs r2, 0x18 - ldrsh r0, [r5, r2] - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0] - adds r0, r4, 0 - bl sub_8044C94 - bl sub_8083D08 - strb r6, [r4, 0x4] - strh r6, [r4, 0x8] - strh r6, [r4, 0xA] - strb r6, [r4, 0xC] - strh r6, [r4, 0x10] - strh r6, [r4, 0x12] - movs r4, 0 - b _0806452A - .align 2, 0 -_08064508: .4byte gUnknown_202EE44 -_0806450C: - bl sub_8083D30 -_08064510: - mov r0, r8 - ldrh r1, [r0, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08064524 - ldr r1, _08064554 - ldrb r0, [r1] - cmp r0, 0 - beq _0806445C -_08064524: - bl sub_8083D30 - movs r4, 0x1 -_0806452A: - ldr r0, _08064558 - bl AddMenuCursorSprite - movs r0, 0x2D - bl sub_803E46C - cmp r4, 0x2 - bne _0806453C - b _080643F0 -_0806453C: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - add sp, 0xE4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08064554: .4byte gUnknown_202EE3A -_08064558: .4byte gUnknown_202EE10 - thumb_func_end sub_80643AC - - thumb_func_start sub_806455C -sub_806455C: - push {r4,r5,lr} - sub sp, 0x54 - adds r4, r0, 0 - adds r0, r1, 0 - movs r5, 0 - movs r1, 0x1 - strb r1, [r2] - strb r5, [r2, 0x1] - movs r1, 0xC - strb r1, [r2, 0x2] - strb r5, [r2, 0x3] - movs r1, 0x1 - bl sub_803ECB4 - movs r0, 0 - bl sub_80073B8 - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r4, r0, 0 - ldr r0, _080645D0 - ldr r2, [r0] - str r5, [sp] - movs r0, 0xC - movs r1, 0 - movs r3, 0 - bl xxx_call_draw_string - ldr r0, [r4, 0x14] - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080645C0 - ldr r1, [r4, 0x14] - add r0, sp, 0x4 - movs r2, 0 - bl sub_8045B94 - str r5, [sp] - movs r0, 0x8 - movs r1, 0x12 - add r2, sp, 0x4 - movs r3, 0 - bl xxx_call_draw_string -_080645C0: - movs r0, 0 - bl sub_80073E0 - add sp, 0x54 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080645D0: .4byte gUnknown_80FE708 - thumb_func_end sub_806455C - - thumb_func_start sub_80645D4 -sub_80645D4: - push {lr} - ldr r1, _080645F4 - movs r0, 0 - str r0, [r1] - movs r0, 0x25 - movs r1, 0 - bl sub_8044F5C - movs r0, 0xC - movs r1, 0 - bl sub_8044F5C - bl sub_8045064 - pop {r0} - bx r0 - .align 2, 0 -_080645F4: .4byte gUnknown_202EE6C - thumb_func_end sub_80645D4 - - thumb_func_start sub_80645F8 -sub_80645F8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x110 - str r0, [sp, 0xE4] - mov r0, sp - adds r0, 0x84 - str r0, [sp, 0xF4] - mov r1, sp - adds r1, 0x88 - str r1, [sp, 0xF8] - mov r2, sp - adds r2, 0x8C - str r2, [sp, 0xFC] - mov r3, sp - adds r3, 0x8E - str r3, [sp, 0x100] - adds r0, 0xC - str r0, [sp, 0x104] - adds r1, 0xC - str r1, [sp, 0x108] - adds r2, 0xC - str r2, [sp, 0x10C] - adds r3, 0x22 - str r3, [sp, 0xEC] - adds r0, 0x38 - str r0, [sp, 0xF0] - add r6, sp, 0x14 - subs r1, 0x74 - str r1, [sp, 0xE8] - add r2, sp, 0x80 - mov r10, r2 - add r3, sp, 0xE0 - mov r9, r3 -_08064640: - movs r7, 0 - mov r0, r10 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - ldr r1, [sp, 0xF4] - str r0, [r1] - movs r0, 0x2 - ldr r2, [sp, 0xF8] - strh r0, [r2] - strh r0, [r2, 0x2] - movs r0, 0x1A - ldr r3, [sp, 0xFC] - strh r0, [r3] - movs r0, 0xC - ldr r1, [sp, 0x100] - strh r0, [r1] - ldr r2, [sp, 0x104] - strh r0, [r2] - mov r3, r9 - ldr r0, [sp, 0x108] - str r3, [r0] - movs r0, 0x3 - ldr r1, [sp, 0x10C] - str r0, [r1, 0x4] - ldr r2, [sp, 0xEC] - str r0, [r2, 0x4] - ldr r3, [sp, 0xF0] - str r0, [r3, 0x4] - ldr r0, [sp, 0xE8] - mov r1, r10 - movs r2, 0x60 - bl memcpy - adds r0, r6, 0 - bl sub_801317C - movs r1, 0x1 - add r0, sp, 0xE0 - strb r1, [r0] - movs r1, 0 - mov r0, r9 - strb r1, [r0, 0x1] - movs r0, 0x10 - mov r2, r9 - strb r0, [r2, 0x2] - strb r1, [r2, 0x3] - ldr r3, [sp, 0xE4] - movs r1, 0 - ldrsh r0, [r3, r1] - movs r2, 0x2 - ldrsh r1, [r3, r2] - bl sub_804954C - ldr r4, [r0, 0x14] - cmp r4, 0 - bne _080646B8 - b _080647D8 -_080646B8: - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x2 - beq _080646C4 - b _080647D8 -_080646C4: - ldr r0, [sp, 0xE8] - movs r1, 0 - bl sub_803ECB4 - adds r0, r4, 0 - bl sub_8045104 - adds r4, r0, 0 - ldrb r1, [r4] - mov r0, r10 - bl sub_807FE84 - movs r0, 0 - bl sub_80073B8 - str r7, [sp] - movs r0, 0x10 - movs r1, 0 - mov r2, r10 - movs r3, 0 - bl xxx_call_draw_string - ldr r5, _08064720 - ldrb r0, [r4] - lsls r0, 2 - adds r0, r5 - ldr r2, [r0] - str r7, [sp] - movs r0, 0x8 - movs r1, 0x18 - movs r3, 0 - bl xxx_call_draw_string - movs r0, 0 - bl sub_80073E0 - ldrb r0, [r4] - lsls r0, 2 - adds r0, r5 - ldr r0, [r0] - add r1, sp, 0x4 - bl sub_8097DF0 - adds r5, r0, 0 - b _08064738 - .align 2, 0 -_08064720: .4byte gUnknown_80F8130 -_08064724: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08064732 - ldrb r0, [r6, 0x2] - cmp r0, 0 - beq _08064738 -_08064732: - bl sub_8083D30 - b _080647D8 -_08064738: - cmp r5, 0 - beq _08064740 - bl sub_8062500 -_08064740: - adds r0, r6, 0 - movs r1, 0 - bl nullsub_34 - movs r0, 0x16 - bl sub_803E46C - ldr r0, _08064788 - ldrh r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08064760 - ldrb r0, [r6, 0x1] - cmp r0, 0 - beq _08064724 -_08064760: - bl sub_8083D08 - cmp r5, 0 - beq _080647D8 - movs r4, 0 - cmp r4, r5 - blt _08064770 - b _08064640 -_08064770: - subs r3, r5, 0x1 - mov r8, r3 -_08064774: - lsls r0, r4, 2 - add r0, sp - adds r0, 0x4 - ldr r0, [r0] - adds r1, r6, 0 - bl sub_80639E4 - adds r7, r4, 0x1 - b _080647A0 - .align 2, 0 -_08064788: .4byte gUnknown_20255F0 -_0806478C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0806479A - ldrb r0, [r6, 0x2] - cmp r0, 0 - beq _080647A0 -_0806479A: - bl sub_8083D30 - b _080647CC -_080647A0: - cmp r4, r8 - bge _080647A8 - bl sub_8062500 -_080647A8: - adds r0, r6, 0 - movs r1, 0 - bl nullsub_34 - movs r0, 0x16 - bl sub_803E46C - ldr r0, _080647D4 - ldrh r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080647C8 - ldrb r0, [r6, 0x1] - cmp r0, 0 - beq _0806478C -_080647C8: - bl sub_8083D08 -_080647CC: - adds r4, r7, 0 - cmp r4, r5 - blt _08064774 - b _08064640 - .align 2, 0 -_080647D4: .4byte gUnknown_20255F0 -_080647D8: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - add sp, 0x110 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80645F8 - - thumb_func_start sub_80647F0 -sub_80647F0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xE4 - adds r7, r0, 0 - add r0, sp, 0x68 - mov r9, r0 - mov r1, sp - adds r1, 0x6C - str r1, [sp, 0xD0] - mov r2, sp - adds r2, 0x6E - str r2, [sp, 0xD4] - mov r0, sp - adds r0, 0x70 - str r0, [sp, 0xD8] - adds r1, 0xC - str r1, [sp, 0xDC] - adds r2, 0x22 - str r2, [sp, 0xE0] - adds r0, 0x38 - str r0, [sp, 0xC8] - subs r1, 0x18 - str r1, [sp, 0xC4] - add r2, sp, 0xC0 - mov r10, r2 - ldr r5, _0806490C - adds r0, r7, 0x4 - str r0, [sp, 0xCC] - ldr r1, _08064910 - mov r8, r1 - movs r6, 0 -_08064834: - movs r4, 0 - ldr r0, [sp, 0xC4] - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x64] - movs r0, 0x2 - mov r2, r9 - strh r0, [r2] - strh r0, [r2, 0x2] - movs r0, 0x12 - ldr r1, [sp, 0xD0] - strh r0, [r1] - movs r0, 0x4 - ldr r2, [sp, 0xD4] - strh r0, [r2] - movs r0, 0x10 - ldr r1, [sp, 0xD8] - strh r0, [r1] - mov r2, r10 - str r2, [sp, 0x74] - movs r0, 0x3 - ldr r1, [sp, 0xDC] - str r0, [r1, 0x4] - ldr r2, [sp, 0xE0] - str r0, [r2, 0x4] - ldr r1, [sp, 0xC8] - str r0, [r1, 0x4] - mov r0, sp - ldr r1, [sp, 0xC4] - movs r2, 0x60 - bl memcpy - bl sub_8083D44 - adds r0, r7, 0x4 - mov r1, sp - mov r2, r10 - bl sub_80649A0 - movs r0, 0x2E - bl sub_803E46C - adds r0, r7, 0 - bl sub_8064A18 - strh r4, [r5, 0x8] - strh r4, [r5, 0xA] - mov r0, sp - movs r1, 0x16 - bl sub_805FC30 -_080648A0: - adds r0, r5, 0 - bl AddMenuCursorSprite - movs r0, 0x2E - bl sub_803E46C - mov r2, r8 - ldrh r1, [r2, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080648C6 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80136E0 -_080648C6: - mov r0, r8 - ldrh r1, [r0, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080648E0 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8013744 -_080648E0: - mov r2, r8 - ldrh r1, [r2, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080648F6 - adds r0, r5, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08064954 -_080648F6: - movs r1, 0x18 - ldrsh r0, [r5, r1] - cmp r0, 0x1 - bne _08064914 - bl sub_8083D08 - ldr r0, [sp, 0xCC] - bl sub_8064A3C - movs r4, 0x2 - b _0806496E - .align 2, 0 -_0806490C: .4byte gUnknown_202EE10 -_08064910: .4byte gUnknown_20255F0 -_08064914: - movs r2, 0x18 - ldrsh r0, [r5, r2] - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - beq _08064950 - ldr r4, [r7, 0x70] - adds r4, 0x44 - ldr r1, _0806494C - movs r2, 0x18 - ldrsh r0, [r5, r2] - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0] - adds r0, r4, 0 - bl sub_8044C94 - bl sub_8083D08 - strb r6, [r4, 0x4] - strh r6, [r4, 0x8] - strh r6, [r4, 0xA] - strb r6, [r4, 0xC] - strh r6, [r4, 0x10] - strh r6, [r4, 0x12] - movs r4, 0 - b _0806496E - .align 2, 0 -_0806494C: .4byte gUnknown_202EE44 -_08064950: - bl sub_8083D30 -_08064954: - mov r0, r8 - ldrh r1, [r0, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08064968 - ldr r1, _08064998 - ldrb r0, [r1] - cmp r0, 0 - beq _080648A0 -_08064968: - bl sub_8083D30 - movs r4, 0x1 -_0806496E: - ldr r0, _0806499C - bl AddMenuCursorSprite - movs r0, 0x2E - bl sub_803E46C - cmp r4, 0x2 - bne _08064980 - b _08064834 -_08064980: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - add sp, 0xE4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08064998: .4byte gUnknown_202EE3A -_0806499C: .4byte gUnknown_202EE10 - thumb_func_end sub_80647F0 - - thumb_func_start sub_80649A0 -sub_80649A0: - push {r4,r5,lr} - sub sp, 0x4 - adds r0, r1, 0 - movs r3, 0 - movs r1, 0x1 - strb r1, [r2] - strb r3, [r2, 0x1] - movs r1, 0xB - strb r1, [r2, 0x2] - strb r3, [r2, 0x3] - movs r1, 0x1 - bl sub_803ECB4 - movs r0, 0 - bl sub_80073B8 - bl sub_8043D10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080649E4 - cmp r0, 0x1 - ble _080649D4 - cmp r0, 0x2 - beq _080649DC -_080649D4: - ldr r0, _080649D8 - b _080649E6 - .align 2, 0 -_080649D8: .4byte gUnknown_80FE70C -_080649DC: - ldr r0, _080649E0 - b _080649E6 - .align 2, 0 -_080649E0: .4byte gUnknown_80FE720 -_080649E4: - ldr r0, _08064A14 -_080649E6: - ldr r5, [r0] - movs r4, 0 - str r4, [sp] - movs r0, 0xC - movs r1, 0 - adds r2, r5, 0 - movs r3, 0 - bl xxx_call_draw_string - str r4, [sp] - movs r0, 0x8 - movs r1, 0x12 - adds r2, r5, 0 - movs r3, 0 - bl xxx_call_draw_string - movs r0, 0 - bl sub_80073E0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08064A14: .4byte gUnknown_80FE724 - thumb_func_end sub_80649A0 - - thumb_func_start sub_8064A18 -sub_8064A18: - push {lr} - ldr r1, _08064A38 - movs r0, 0 - str r0, [r1] - movs r0, 0x26 - movs r1, 0 - bl sub_8044F5C - movs r0, 0xC - movs r1, 0 - bl sub_8044F5C - bl sub_8045064 - pop {r0} - bx r0 - .align 2, 0 -_08064A38: .4byte gUnknown_202EE6C - thumb_func_end sub_8064A18 - - thumb_func_start sub_8064A3C -sub_8064A3C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xE8 - mov r0, sp - adds r0, 0x20 - str r0, [sp, 0xE4] - add r1, sp, 0x80 - mov r10, r1 - add r0, sp, 0xE0 - mov r9, r0 - add r5, sp, 0x14 -_08064A58: - mov r0, r10 - movs r1, 0 - movs r2, 0x60 - bl memset - add r1, sp, 0x84 - movs r0, 0x6 - str r0, [r1] - add r0, sp, 0x88 - movs r1, 0x2 - strh r1, [r0] - strh r1, [r0, 0x2] - add r1, sp, 0x8C - movs r0, 0x1A - strh r0, [r1] - mov r0, sp - adds r0, 0x8E - movs r1, 0xC - strh r1, [r0] - add r0, sp, 0x90 - strh r1, [r0] - add r0, sp, 0x94 - mov r1, r9 - str r1, [r0] - add r0, sp, 0x98 - movs r1, 0x3 - str r1, [r0, 0x4] - add r0, sp, 0xB0 - str r1, [r0, 0x4] - add r0, sp, 0xC8 - str r1, [r0, 0x4] - ldr r0, [sp, 0xE4] - mov r1, r10 - movs r2, 0x60 - bl memcpy - add r0, sp, 0x14 - bl sub_801317C - movs r0, 0x1 - mov r1, r9 - strb r0, [r1] - movs r0, 0 - strb r0, [r1, 0x1] - movs r0, 0x10 - strb r0, [r1, 0x2] - movs r0, 0 - strb r0, [r1, 0x3] - ldr r0, [sp, 0xE4] - movs r1, 0 - bl sub_803ECB4 - bl sub_8043D10 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - bl sub_80073B8 - ldr r0, _08064B0C - lsls r4, 2 - adds r0, r4, r0 - ldr r2, [r0] - movs r1, 0 - str r1, [sp] - movs r0, 0x10 - movs r3, 0 - bl xxx_call_draw_string - ldr r0, _08064B10 - adds r4, r0 - ldr r4, [r4] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r1, 0x18 - adds r2, r4, 0 - movs r3, 0 - bl xxx_call_draw_string - movs r0, 0 - bl sub_80073E0 - adds r0, r4, 0 - add r1, sp, 0x4 - bl sub_8097DF0 - adds r6, r0, 0 - b _08064B28 - .align 2, 0 -_08064B0C: .4byte gUnknown_80F8104 -_08064B10: .4byte gUnknown_80F7F70 -_08064B14: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08064B22 - ldrb r0, [r5, 0x2] - cmp r0, 0 - beq _08064B28 -_08064B22: - bl sub_8083D30 - b _08064BC8 -_08064B28: - cmp r6, 0 - beq _08064B30 - bl sub_8062500 -_08064B30: - adds r0, r5, 0 - movs r1, 0 - bl nullsub_34 - movs r0, 0x16 - bl sub_803E46C - ldr r0, _08064B78 - ldrh r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08064B50 - ldrb r0, [r5, 0x1] - cmp r0, 0 - beq _08064B14 -_08064B50: - bl sub_8083D08 - cmp r6, 0 - beq _08064BC8 - movs r4, 0 - cmp r4, r6 - blt _08064B60 - b _08064A58 -_08064B60: - subs r1, r6, 0x1 - mov r8, r1 -_08064B64: - lsls r0, r4, 2 - add r0, sp - adds r0, 0x4 - ldr r0, [r0] - adds r1, r5, 0 - bl sub_80639E4 - adds r7, r4, 0x1 - b _08064B90 - .align 2, 0 -_08064B78: .4byte gUnknown_20255F0 -_08064B7C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08064B8A - ldrb r0, [r5, 0x2] - cmp r0, 0 - beq _08064B90 -_08064B8A: - bl sub_8083D30 - b _08064BBC -_08064B90: - cmp r4, r8 - bge _08064B98 - bl sub_8062500 -_08064B98: - adds r0, r5, 0 - movs r1, 0 - bl nullsub_34 - movs r0, 0x16 - bl sub_803E46C - ldr r0, _08064BC4 - ldrh r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08064BB8 - ldrb r0, [r5, 0x1] - cmp r0, 0 - beq _08064B7C -_08064BB8: - bl sub_8083D08 -_08064BBC: - adds r4, r7, 0 - cmp r4, r6 - blt _08064B64 - b _08064A58 - .align 2, 0 -_08064BC4: .4byte gUnknown_20255F0 -_08064BC8: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - add sp, 0xE8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8064A3C - - thumb_func_start sub_8064BE0 -sub_8064BE0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, _08064C94 - ldr r0, [r0] - movs r1, 0xCB - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0x4 - mov r9, r1 - cmp r0, 0 - beq _08064C02 - movs r0, 0x5 - mov r9, r0 -_08064C02: - ldr r1, _08064C98 - movs r0, 0 - str r0, [r1] - mov r10, r0 - ldr r6, _08064C9C - ldr r7, _08064CA0 - movs r1, 0x2A - adds r1, r6 - mov r8, r1 -_08064C14: - movs r5, 0 - bl sub_8065250 -_08064C1A: - adds r0, r6, 0 - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - ldrh r1, [r7, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08064C3E - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r6, 0 - movs r1, 0x1 - bl sub_80136E0 -_08064C3E: - ldrh r1, [r7, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08064C56 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r6, 0 - movs r1, 0x1 - bl sub_8013744 -_08064C56: - ldrh r1, [r7, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08064C6A - adds r0, r6, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08064CAA -_08064C6A: - movs r1, 0x18 - ldrsh r0, [r6, r1] - cmp r0, 0x4 - bne _08064C8C - ldr r0, _08064C94 - ldr r0, [r0] - movs r1, 0xCB - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08064CA4 - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - bne _08064CA4 -_08064C8C: - bl sub_8083D08 - b _08064CC0 - .align 2, 0 -_08064C94: .4byte gUnknown_203B418 -_08064C98: .4byte gUnknown_202F2E0 -_08064C9C: .4byte gUnknown_202EE10 -_08064CA0: .4byte gUnknown_20255F0 -_08064CA4: - bl sub_8083D30 - b _08064CC0 -_08064CAA: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08064CBA - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0 - beq _08064C1A -_08064CBA: - bl sub_8083D30 - movs r5, 0x1 -_08064CC0: - ldr r4, _08064D68 - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - mov r0, r10 - cmp r0, 0 - bne _08064C14 - cmp r5, 0 - bne _08064D4C - ldr r5, _08064D6C - movs r1, 0x18 - ldrsh r0, [r4, r1] - str r0, [r5] - cmp r0, 0 - bne _08064CE8 - bl sub_8064D74 -_08064CE8: - ldr r0, [r5] - cmp r0, 0x1 - bne _08064CF2 - bl sub_80650C0 -_08064CF2: - ldr r0, [r5] - cmp r0, 0x2 - bne _08064CFC - bl sub_80532B4 -_08064CFC: - ldr r0, [r5] - cmp r0, 0x3 - bne _08064D06 - bl sub_806519C -_08064D06: - ldr r0, _08064D70 - ldr r0, [r0] - movs r1, 0xCB - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08064D2A - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - bne _08064D2A - ldr r0, [r5] - cmp r0, 0x4 - bne _08064D2A - bl sub_8065FB4 -_08064D2A: - ldr r0, _08064D6C - ldr r0, [r0] - cmp r0, r9 - bne _08064D36 - bl sub_8065BF4 -_08064D36: - ldr r0, _08064D70 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - bne _08064D4C - bl sub_805F1AC - lsls r0, 16 - cmp r0, 0 - bne _08064D4C - b _08064C14 -_08064D4C: - bl sub_8040A84 - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08064D68: .4byte gUnknown_202EE10 -_08064D6C: .4byte gUnknown_202F2E0 -_08064D70: .4byte gUnknown_203B418 - thumb_func_end sub_8064BE0 - - thumb_func_start sub_8064D74 -sub_8064D74: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r6, _08064DE0 - ldr r7, _08064DE4 - movs r0, 0x2A - adds r0, r6 - mov r8, r0 -_08064D84: - movs r5, 0 - bl sub_8065574 -_08064D8A: - adds r0, r6, 0 - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - ldrh r1, [r7, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08064DAE - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r6, 0 - movs r1, 0x1 - bl sub_80136E0 -_08064DAE: - ldrh r1, [r7, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08064DC6 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r6, 0 - movs r1, 0x1 - bl sub_8013744 -_08064DC6: - ldrh r1, [r7, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08064DDA - adds r0, r6, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08064DE8 -_08064DDA: - bl sub_8083D08 - b _08064DFE - .align 2, 0 -_08064DE0: .4byte gUnknown_202EE10 -_08064DE4: .4byte gUnknown_20255F0 -_08064DE8: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08064DF8 - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0 - beq _08064D8A -_08064DF8: - bl sub_8083D30 - movs r5, 0x1 -_08064DFE: - ldr r4, _08064E2C - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - cmp r5, 0 - bne _08064E56 - ldr r0, _08064E30 - ldr r1, _08064E34 - ldr r0, [r0] - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldr r0, [r0] - str r0, [r1] - movs r1, 0x18 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _08064E38 - bl sub_8064E68 - b _08064E40 - .align 2, 0 -_08064E2C: .4byte gUnknown_202EE10 -_08064E30: .4byte gUnknown_203B46C -_08064E34: .4byte gUnknown_202F2E8 -_08064E38: - cmp r0, 0x1 - bne _08064E4C - bl sub_8064F50 -_08064E40: - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r5, 0 - bl sub_8065040 - b _08064D84 -_08064E4C: - cmp r0, 0x2 - bne _08064D84 - bl sub_806509C - b _08064D84 -_08064E56: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8064D74 - - thumb_func_start sub_8064E68 -sub_8064E68: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r7, 0 - ldr r0, _08064EDC - strh r7, [r0, 0x18] - adds r4, r0, 0 - ldr r6, _08064EE0 - movs r0, 0x2A - adds r0, r4 - mov r8, r0 -_08064E7E: - movs r7, 0 - movs r5, 0 - bl sub_80656C0 -_08064E86: - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - ldrh r1, [r6, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08064EAA - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80136E0 -_08064EAA: - ldrh r1, [r6, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08064EC2 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013744 -_08064EC2: - ldrh r1, [r6, 0x4] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08064EE4 - movs r0, 0 - bl sub_8083CE0 - movs r1, 0x18 - ldrsh r0, [r4, r1] - bl sub_8065A8C - b _08064F2E - .align 2, 0 -_08064EDC: .4byte gUnknown_202EE10 -_08064EE0: .4byte gUnknown_20255F0 -_08064EE4: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08064EFC - movs r0, 0 - bl sub_8083CE0 - movs r2, 0x18 - ldrsh r0, [r4, r2] - bl sub_8065B3C - b _08064F2E -_08064EFC: - ldrh r1, [r6, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08064F0E - mov r2, r8 - ldrb r0, [r2] - cmp r0, 0 - beq _08064F14 -_08064F0E: - bl sub_8083D08 - b _08064F30 -_08064F14: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08064F24 - bl sub_8083D30 - movs r7, 0x1 - b _08064F30 -_08064F24: - bl sub_8065BEC - lsls r0, 24 - cmp r0, 0 - beq _08064E86 -_08064F2E: - movs r5, 0x1 -_08064F30: - ldr r0, _08064F4C - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - cmp r5, 0 - bne _08064E7E - adds r0, r7, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08064F4C: .4byte gUnknown_202EE10 - thumb_func_end sub_8064E68 - - thumb_func_start sub_8064F50 -sub_8064F50: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r7, 0 - ldr r0, _08064FC8 - strh r7, [r0, 0x18] - adds r4, r0, 0 - ldr r6, _08064FCC - movs r0, 0x2A - adds r0, r4 - mov r8, r0 -_08064F66: - movs r7, 0 - movs r5, 0 - bl sub_8065948 -_08064F6E: - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - ldrh r1, [r6, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08064F92 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80136E0 -_08064F92: - ldrh r1, [r6, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08064FAA - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013744 -_08064FAA: - ldrh r1, [r6, 0x4] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08064FD0 - movs r0, 0 - bl sub_8083CE0 - movs r1, 0x18 - ldrsh r0, [r4, r1] - adds r0, 0x5 - bl sub_8065A8C - b _0806501C - .align 2, 0 -_08064FC8: .4byte gUnknown_202EE10 -_08064FCC: .4byte gUnknown_20255F0 -_08064FD0: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08064FEA - movs r0, 0 - bl sub_8083CE0 - movs r2, 0x18 - ldrsh r0, [r4, r2] - adds r0, 0x5 - bl sub_8065B3C - b _0806501C -_08064FEA: - ldrh r1, [r6, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08064FFC - mov r2, r8 - ldrb r0, [r2] - cmp r0, 0 - beq _08065002 -_08064FFC: - bl sub_8083D08 - b _0806501E -_08065002: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08065012 - bl sub_8083D30 - movs r7, 0x1 - b _0806501E -_08065012: - bl sub_8065BF0 - lsls r0, 24 - cmp r0, 0 - beq _08064F6E -_0806501C: - movs r5, 0x1 -_0806501E: - ldr r0, _0806503C - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - cmp r5, 0 - bne _08064F66 - adds r0, r7, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0806503C: .4byte gUnknown_202EE10 - thumb_func_end sub_8064F50 - - thumb_func_start sub_8065040 -sub_8065040: - push {r4,lr} - lsls r0, 24 - movs r4, 0 - cmp r0, 0 - beq _0806505C - ldr r0, _08065058 - bl sub_80949DC - lsls r0, 24 - cmp r0, 0 - bne _0806505E - b _08065062 - .align 2, 0 -_08065058: .4byte gUnknown_202F2E8 -_0806505C: - movs r4, 0x1 -_0806505E: - cmp r4, 0 - beq _08065088 -_08065062: - ldr r0, _08065090 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - bne _08065088 - ldr r0, _08065094 - ldr r1, [r0] - ldr r0, _08065098 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r0] - str r0, [r1] - bl sub_803E13C - bl sub_8040238 -_08065088: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08065090: .4byte gUnknown_80FEBF8 -_08065094: .4byte gUnknown_203B46C -_08065098: .4byte gUnknown_202F2E8 - thumb_func_end sub_8065040 - - thumb_func_start sub_806509C -sub_806509C: - push {lr} - ldr r0, _080650BC - ldr r1, [r0] - movs r0, 0 - movs r2, 0 - bl sub_8052B8C - cmp r0, 0x1 - bne _080650B8 - movs r0, 0 - bl sub_8094998 - bl sub_803E13C -_080650B8: - pop {r0} - bx r0 - .align 2, 0 -_080650BC: .4byte gUnknown_80FEC28 - thumb_func_end sub_806509C - - thumb_func_start sub_80650C0 -sub_80650C0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r0, 0 - mov r9, r0 - ldr r5, _08065134 - ldr r6, _08065138 - movs r1, 0x2A - adds r1, r5 - mov r8, r1 -_080650D6: - movs r7, 0 - bl sub_806544C -_080650DC: - adds r0, r5, 0 - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - ldrh r1, [r6, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08065100 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80136E0 -_08065100: - ldrh r1, [r6, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08065118 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8013744 -_08065118: - ldrh r1, [r6, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0806512C - adds r0, r5, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _0806513C -_0806512C: - bl sub_8083D08 - b _08065152 - .align 2, 0 -_08065134: .4byte gUnknown_202EE10 -_08065138: .4byte gUnknown_20255F0 -_0806513C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0806514C - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0 - beq _080650DC -_0806514C: - bl sub_8083D30 - movs r7, 0x1 -_08065152: - ldr r4, _08065178 - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - mov r0, r9 - cmp r0, 0 - bne _080650D6 - cmp r7, 0 - bne _0806518E - movs r1, 0x18 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _0806517C - bl sub_80651D0 - b _08065184 - .align 2, 0 -_08065178: .4byte gUnknown_202EE10 -_0806517C: - cmp r0, 0x1 - bne _08065184 - bl sub_80651FC -_08065184: - bl sub_805F1AC - lsls r0, 16 - cmp r0, 0 - beq _080650D6 -_0806518E: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80650C0 - - thumb_func_start sub_806519C -sub_806519C: - push {lr} - ldr r0, _080651CC - ldr r1, [r0] - movs r2, 0xCF - lsls r2, 3 - adds r0, r1, r2 - ldrb r0, [r0] - subs r2, 0x34 - adds r1, r2 - ldrb r1, [r1] - movs r2, 0 - bl sub_80319A4 -_080651B6: - movs r0, 0x47 - bl sub_803E46C - bl sub_80319F8 - cmp r0, 0 - beq _080651B6 - bl sub_8031A3C - pop {r0} - bx r0 - .align 2, 0 -_080651CC: .4byte gUnknown_203B418 - thumb_func_end sub_806519C - - thumb_func_start sub_80651D0 -sub_80651D0: - push {lr} - ldr r0, _080651F0 - ldr r1, [r0] - movs r0, 0 - movs r2, 0 - bl sub_8052B8C - cmp r0, 0x1 - bne _080651F4 - bl sub_805F1A0 - movs r1, 0x2B - bl sub_8044C94 - movs r0, 0 - b _080651F6 - .align 2, 0 -_080651F0: .4byte gUnknown_80FDE6C -_080651F4: - movs r0, 0x1 -_080651F6: - pop {r1} - bx r1 - thumb_func_end sub_80651D0 - - thumb_func_start sub_80651FC -sub_80651FC: - push {r4,r5,lr} - ldr r0, _08065238 - ldr r1, [r0] - movs r0, 0 - movs r2, 0 - bl sub_8052B8C - adds r5, r0, 0 - cmp r5, 0x1 - bne _08065248 - bl sub_805F1A0 - movs r1, 0x2E - bl sub_8044C94 - ldr r4, _0806523C - bl sub_8083600 - adds r2, r0, 0 - adds r0, r4, 0 - movs r1, 0 - bl sub_8083AB0 - ldr r0, _08065240 - ldr r0, [r0] - ldr r1, _08065244 - adds r0, r1 - strb r5, [r0] - movs r0, 0 - b _0806524A - .align 2, 0 -_08065238: .4byte gUnknown_80FDEB8 -_0806523C: .4byte 0x0000021b -_08065240: .4byte gUnknown_203B418 -_08065244: .4byte 0x00000654 -_08065248: - movs r0, 0x1 -_0806524A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80651FC - - thumb_func_start sub_8065250 -sub_8065250: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC8 - add r5, sp, 0x64 - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x68] - add r0, sp, 0x6C - movs r4, 0 - movs r7, 0 - movs r1, 0x2 - mov r9, r1 - mov r1, r9 - strh r1, [r0] - strh r1, [r0, 0x2] - add r0, sp, 0x70 - movs r1, 0x12 - mov r10, r1 - mov r1, r10 - strh r1, [r0] - adds r0, 0x2 - movs r1, 0x10 - mov r8, r1 - mov r1, r8 - strh r1, [r0] - add r0, sp, 0x74 - strh r1, [r0] - add r6, sp, 0xC4 - str r6, [sp, 0x78] - movs r1, 0x3 - str r1, [sp, 0x80] - add r0, sp, 0x94 - str r1, [r0, 0x4] - add r0, sp, 0xAC - str r1, [r0, 0x4] - add r0, sp, 0x4 - adds r1, r5, 0 - movs r2, 0x60 - bl memcpy - movs r0, 0x1 - strb r0, [r6] - strb r4, [r6, 0x1] - strb r4, [r6, 0x3] - ldr r4, _080653D0 - ldr r0, _080653D4 - ldr r0, [r0] - strh r0, [r4, 0x18] - ldr r1, _080653D8 - ldr r0, [r1] - movs r1, 0xCB - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - movs r5, 0x5 - cmp r0, 0 - beq _080652D2 - movs r5, 0x6 -_080652D2: - strh r5, [r4, 0x1A] - strh r5, [r4, 0x1C] - strh r7, [r4, 0x1E] - strh r7, [r4, 0x20] - strh r7, [r4, 0x4] - mov r0, r8 - strh r0, [r4, 0x6] - strh r7, [r4, 0xC] - strh r7, [r4, 0xE] - strh r7, [r4, 0x14] - str r7, [r4] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - add r0, sp, 0x4 - mov r1, r10 - strh r1, [r0, 0xC] - adds r0, r5, 0 - movs r1, 0xC - bl sub_80095E4 - add r2, sp, 0x4 - adds r1, r2, 0 - adds r0, 0x2 - strh r0, [r1, 0x10] - strh r0, [r2, 0xE] - movs r0, 0xA - strb r0, [r6, 0x2] - adds r0, r1, 0 - mov r1, r9 - strh r1, [r0, 0x8] - movs r1, 0x1 - bl sub_803ECB4 - adds r0, r4, 0 - movs r1, 0 - bl sub_80137B0 - movs r0, 0 - bl sub_80073B8 - movs r5, 0 - ldr r0, _080653DC - ldr r2, [r0] - str r5, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - adds r0, r4, 0 - movs r1, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _080653E0 - ldr r2, [r0] - str r7, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _080653E4 - ldr r2, [r0] - str r7, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - adds r0, r4, 0 - movs r1, 0x2 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _080653E8 - ldr r2, [r0] - str r7, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - movs r5, 0x4 - adds r0, r4, 0 - movs r1, 0x3 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _080653EC - ldr r2, [r0] - str r7, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - ldr r1, _080653D8 - ldr r0, [r1] - movs r1, 0xCB - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0806540E - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - bne _080653F4 - movs r5, 0x5 - adds r0, r4, 0 - movs r1, 0x4 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _080653F0 - ldr r2, [r0] - str r7, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - b _0806540E - .align 2, 0 -_080653D0: .4byte gUnknown_202EE10 -_080653D4: .4byte gUnknown_202F2E0 -_080653D8: .4byte gUnknown_203B418 -_080653DC: .4byte gUnknown_80FE8F8 -_080653E0: .4byte gUnknown_80FE9CC -_080653E4: .4byte gUnknown_80FE9E8 -_080653E8: .4byte gUnknown_80FE9F8 -_080653EC: .4byte gUnknown_80FEA10 -_080653F0: .4byte gUnknown_80FEA28 -_080653F4: - movs r5, 0x5 - adds r0, r4, 0 - movs r1, 0x4 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _08065440 - ldr r2, [r0] - str r7, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 -_0806540E: - ldr r0, _08065444 - adds r1, r5, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r0, _08065448 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - add sp, 0xC8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08065440: .4byte gUnknown_80FEA44 -_08065444: .4byte gUnknown_202EE10 -_08065448: .4byte gUnknown_80FEA50 - thumb_func_end sub_8065250 - - thumb_func_start sub_806544C -sub_806544C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC8 - add r0, sp, 0x64 - mov r10, r0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x68] - add r0, sp, 0x6C - movs r4, 0 - movs r5, 0 - movs r1, 0x2 - mov r9, r1 - mov r2, r9 - strh r2, [r0] - strh r2, [r0, 0x2] - add r0, sp, 0x70 - movs r7, 0x12 - strh r7, [r0] - adds r0, 0x2 - movs r6, 0x10 - strh r6, [r0] - add r0, sp, 0x74 - strh r6, [r0] - add r0, sp, 0xC4 - mov r8, r0 - str r0, [sp, 0x78] - movs r1, 0x3 - str r1, [sp, 0x80] - add r0, sp, 0x94 - str r1, [r0, 0x4] - add r0, sp, 0xAC - str r1, [r0, 0x4] - add r0, sp, 0x4 - mov r1, r10 - movs r2, 0x60 - bl memcpy - movs r0, 0x1 - mov r1, r8 - strb r0, [r1] - strb r4, [r1, 0x1] - strb r4, [r1, 0x3] - ldr r4, _08065568 - strh r5, [r4, 0x18] - mov r2, r9 - strh r2, [r4, 0x1A] - strh r2, [r4, 0x1C] - strh r5, [r4, 0x1E] - strh r5, [r4, 0x20] - strh r5, [r4, 0x4] - strh r6, [r4, 0x6] - strh r5, [r4, 0xC] - strh r5, [r4, 0xE] - strh r5, [r4, 0x14] - str r5, [r4] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - add r0, sp, 0x4 - strh r7, [r0, 0xC] - movs r0, 0x2 - movs r1, 0xC - bl sub_80095E4 - add r2, sp, 0x4 - adds r1, r2, 0 - adds r0, 0x2 - strh r0, [r1, 0x10] - strh r0, [r2, 0xE] - movs r0, 0xA - mov r1, r8 - strb r0, [r1, 0x2] - adds r0, r2, 0 - mov r2, r9 - strh r2, [r0, 0x8] - movs r1, 0x1 - bl sub_803ECB4 - adds r0, r4, 0 - movs r1, 0 - bl sub_80137B0 - movs r0, 0 - bl sub_80073B8 - ldr r0, _0806556C - ldr r2, [r0] - str r5, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - adds r0, r4, 0 - movs r1, 0 - bl sub_8013800 - adds r1, r0, 0 - ldr r6, _08065570 - movs r2, 0xAC - lsls r2, 1 - adds r0, r6, r2 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013800 - adds r1, r0, 0 - movs r2, 0xB8 - lsls r2, 1 - adds r0, r6, r2 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - add sp, 0xC8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08065568: .4byte gUnknown_202EE10 -_0806556C: .4byte gUnknown_80FE8F4 -_08065570: .4byte gUnknown_80F7C50 - thumb_func_end sub_806544C - - thumb_func_start sub_8065574 -sub_8065574: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xD4 - add r0, sp, 0x10 - mov r10, r0 - add r7, sp, 0x70 - adds r0, r7, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x74] - add r0, sp, 0x78 - movs r4, 0 - movs r6, 0 - movs r1, 0x2 - strh r1, [r0] - strh r1, [r0, 0x2] - add r0, sp, 0x7C - movs r1, 0xC - strh r1, [r0] - adds r0, 0x2 - movs r1, 0x10 - mov r9, r1 - mov r1, r9 - strh r1, [r0] - add r0, sp, 0x80 - strh r1, [r0] - add r0, sp, 0x84 - add r1, sp, 0xD0 - mov r8, r1 - str r1, [r0] - add r0, sp, 0x88 - movs r5, 0x3 - str r5, [r0, 0x4] - add r0, sp, 0xA0 - str r5, [r0, 0x4] - add r0, sp, 0xB8 - str r5, [r0, 0x4] - mov r0, r10 - adds r1, r7, 0 - movs r2, 0x60 - bl memcpy - movs r0, 0x1 - mov r1, r8 - strb r0, [r1] - strb r4, [r1, 0x1] - strb r4, [r1, 0x3] - ldr r4, _080656AC - strh r6, [r4, 0x18] - strh r5, [r4, 0x1A] - strh r5, [r4, 0x1C] - strh r6, [r4, 0x1E] - strh r6, [r4, 0x20] - strh r6, [r4, 0x4] - mov r0, r9 - strh r0, [r4, 0x6] - strh r6, [r4, 0xC] - strh r6, [r4, 0xE] - strh r6, [r4, 0x14] - str r6, [r4] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - movs r0, 0xC - mov r1, r10 - strh r0, [r1, 0xC] - movs r0, 0x3 - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - mov r1, r10 - strh r0, [r1, 0x10] - strh r0, [r1, 0xE] - movs r0, 0xA - mov r1, r8 - strb r0, [r1, 0x2] - movs r1, 0x2 - mov r0, r10 - strh r1, [r0, 0x8] - movs r1, 0x1 - bl sub_803ECB4 - adds r0, r4, 0 - movs r1, 0 - bl sub_80137B0 - adds r0, r4, 0 - movs r1, 0 - bl sub_8013800 - str r0, [sp, 0x4] - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013800 - str r0, [sp, 0x8] - adds r0, r4, 0 - movs r1, 0x2 - bl sub_8013800 - str r0, [sp, 0xC] - movs r0, 0 - bl sub_80073B8 - ldr r0, _080656B0 - ldr r2, [r0] - str r6, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - ldr r1, [sp, 0x4] - ldr r0, _080656B4 - ldr r2, [r0] - str r6, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - ldr r1, [sp, 0x8] - ldr r0, _080656B8 - ldr r2, [r0] - str r6, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - ldr r1, [sp, 0xC] - ldr r0, _080656BC - ldr r2, [r0] - str r6, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - add sp, 0xD4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080656AC: .4byte gUnknown_202EE10 -_080656B0: .4byte gUnknown_80FE8F0 -_080656B4: .4byte gUnknown_80FE730 -_080656B8: .4byte gUnknown_80FE73C -_080656BC: .4byte gUnknown_80FE748 - thumb_func_end sub_8065574 - - thumb_func_start sub_80656C0 -sub_80656C0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xDC - add r0, sp, 0x18 - mov r9, r0 - add r7, sp, 0x78 - adds r0, r7, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x7C] - add r0, sp, 0x80 - movs r5, 0 - movs r1, 0x2 - mov r10, r1 - mov r2, r10 - strh r2, [r0] - strh r2, [r0, 0x2] - add r1, sp, 0x84 - movs r0, 0x12 - strh r0, [r1] - mov r0, sp - adds r0, 0x86 - movs r3, 0x10 - mov r8, r3 - mov r4, r8 - strh r4, [r0] - add r0, sp, 0x88 - strh r4, [r0] - add r0, sp, 0x8C - add r6, sp, 0xD8 - str r6, [r0] - add r0, sp, 0x90 - movs r1, 0x3 - str r1, [r0, 0x4] - add r0, sp, 0xA8 - str r1, [r0, 0x4] - add r0, sp, 0xC0 - str r1, [r0, 0x4] - mov r0, r9 - adds r1, r7, 0 - movs r2, 0x60 - bl memcpy - adds r1, r7, 0 - ldr r0, _0806583C - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - movs r0, 0x1 - strb r0, [r6] - movs r0, 0 - strb r0, [r6, 0x1] - strb r0, [r6, 0x3] - ldr r4, _08065840 - movs r0, 0x5 - strh r0, [r4, 0x1A] - strh r0, [r4, 0x1C] - strh r5, [r4, 0x1E] - strh r5, [r4, 0x20] - strh r5, [r4, 0x4] - mov r1, r8 - strh r1, [r4, 0x6] - strh r5, [r4, 0xC] - strh r5, [r4, 0xE] - strh r5, [r4, 0x14] - str r5, [r4] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - movs r0, 0x18 - mov r2, r9 - strh r0, [r2, 0xC] - movs r0, 0x5 - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - mov r3, r9 - strh r0, [r3, 0x10] - strh r0, [r3, 0xE] - movs r0, 0xA - strb r0, [r6, 0x2] - mov r0, r10 - strh r0, [r3, 0x8] - mov r0, r9 - movs r1, 0x1 - bl sub_803ECB4 - adds r0, r4, 0 - movs r1, 0 - bl sub_80137B0 - adds r0, r4, 0 - movs r1, 0 - bl sub_8013800 - str r0, [sp, 0x4] - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013800 - str r0, [sp, 0x8] - adds r0, r4, 0 - movs r1, 0x2 - bl sub_8013800 - str r0, [sp, 0xC] - adds r0, r4, 0 - movs r1, 0x3 - bl sub_8013800 - str r0, [sp, 0x10] - adds r0, r4, 0 - movs r1, 0x4 - bl sub_8013800 - str r0, [sp, 0x14] - movs r0, 0 - bl sub_80073B8 - ldr r0, _08065844 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - ldr r1, [sp, 0x4] - ldr r0, _08065848 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - ldr r1, [sp, 0x8] - ldr r0, _0806584C - ldr r2, [r0] - str r5, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - ldr r1, [sp, 0xC] - ldr r0, _08065850 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - ldr r1, [sp, 0x10] - ldr r0, _08065854 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - ldr r1, [sp, 0x14] - ldr r0, _08065858 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - ldr r0, _0806585C - ldrb r0, [r0] - adds r4, r7, 0 - cmp r0, 0 - beq _08065860 - ldr r2, [sp, 0x4] - adds r2, 0xA - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - movs r1, 0x88 - movs r3, 0x15 - bl sub_80078A4 - b _08065872 - .align 2, 0 -_0806583C: .4byte gUnknown_8106CE8 -_08065840: .4byte gUnknown_202EE10 -_08065844: .4byte gUnknown_80FE730 -_08065848: .4byte gUnknown_80FE764 -_0806584C: .4byte gUnknown_80FE788 -_08065850: .4byte gUnknown_80FE7A8 -_08065854: .4byte gUnknown_80FE7C0 -_08065858: .4byte gUnknown_80FE7E4 -_0806585C: .4byte gUnknown_202F2E8 -_08065860: - ldr r2, [sp, 0x4] - adds r2, 0xA - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - movs r1, 0x50 - movs r3, 0x16 - bl sub_80078A4 -_08065872: - ldr r0, _08065890 - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _08065894 - ldr r2, [sp, 0x8] - adds r2, 0xA - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - movs r1, 0x88 - movs r3, 0x16 - bl sub_80078A4 - b _080658A6 - .align 2, 0 -_08065890: .4byte gUnknown_202F2E8 -_08065894: - ldr r2, [sp, 0x8] - adds r2, 0xA - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - movs r1, 0x50 - movs r3, 0x12 - bl sub_80078A4 -_080658A6: - ldr r0, _080658C4 - ldrb r0, [r0, 0x2] - cmp r0, 0 - beq _080658C8 - ldr r2, [sp, 0xC] - adds r2, 0xA - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - movs r1, 0x88 - movs r3, 0x10 - bl sub_80078A4 - b _080658DA - .align 2, 0 -_080658C4: .4byte gUnknown_202F2E8 -_080658C8: - ldr r2, [sp, 0xC] - adds r2, 0xA - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - movs r1, 0x50 - movs r3, 0xC - bl sub_80078A4 -_080658DA: - ldr r0, _080658F8 - ldrb r0, [r0, 0x3] - cmp r0, 0 - beq _080658FC - ldr r2, [sp, 0x10] - adds r2, 0xA - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - movs r1, 0x88 - movs r3, 0xC - bl sub_80078A4 - b _0806590E - .align 2, 0 -_080658F8: .4byte gUnknown_202F2E8 -_080658FC: - ldr r2, [sp, 0x10] - adds r2, 0xA - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - movs r1, 0x50 - movs r3, 0x10 - bl sub_80078A4 -_0806590E: - ldr r0, _08065944 - ldrb r1, [r0, 0x4] - lsls r0, r1, 2 - adds r1, r0, r1 - lsls r1, 3 - adds r1, 0x50 - ldr r2, [sp, 0x14] - adds r2, 0xA - adds r0, r4, r0 - ldr r3, [r0] - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - bl sub_80078A4 - movs r0, 0 - bl sub_80073E0 - add sp, 0xDC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08065944: .4byte gUnknown_202F2E8 - thumb_func_end sub_80656C0 - - thumb_func_start sub_8065948 -sub_8065948: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xCC - add r0, sp, 0x64 - mov r10, r0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x68] - add r0, sp, 0x6C - movs r4, 0 - movs r5, 0 - movs r1, 0x2 - mov r9, r1 - mov r2, r9 - strh r2, [r0] - strh r2, [r0, 0x2] - add r1, sp, 0x70 - movs r0, 0x12 - strh r0, [r1] - mov r0, sp - adds r0, 0x72 - movs r6, 0x10 - strh r6, [r0] - add r0, sp, 0x74 - strh r6, [r0] - add r3, sp, 0xC4 - mov r8, r3 - str r3, [sp, 0x78] - movs r1, 0x3 - str r1, [sp, 0x80] - add r0, sp, 0x94 - str r1, [r0, 0x4] - add r0, sp, 0xAC - str r1, [r0, 0x4] - add r0, sp, 0x4 - mov r1, r10 - movs r2, 0x60 - bl memcpy - mov r1, r10 - ldr r0, _08065A78 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - movs r0, 0x1 - mov r7, r8 - strb r0, [r7] - strb r4, [r7, 0x1] - strb r4, [r7, 0x3] - ldr r4, _08065A7C - strh r0, [r4, 0x1A] - strh r0, [r4, 0x1C] - strh r5, [r4, 0x1E] - strh r5, [r4, 0x20] - strh r5, [r4, 0x4] - strh r6, [r4, 0x6] - strh r5, [r4, 0xC] - strh r5, [r4, 0xE] - strh r5, [r4, 0x14] - str r5, [r4] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - add r1, sp, 0x4 - movs r0, 0x18 - strh r0, [r1, 0xC] - movs r0, 0x1 - movs r1, 0xC - bl sub_80095E4 - add r2, sp, 0x4 - adds r1, r2, 0 - adds r0, 0x2 - strh r0, [r1, 0x10] - strh r0, [r2, 0xE] - movs r0, 0xA - strb r0, [r7, 0x2] - adds r0, r1, 0 - mov r1, r9 - strh r1, [r0, 0x8] - movs r1, 0x1 - bl sub_803ECB4 - adds r0, r4, 0 - movs r1, 0 - bl sub_80137B0 - movs r4, 0 - mov r7, r10 - add r6, sp, 0xC8 - adds r5, r6, 0 -_08065A0A: - ldr r0, _08065A7C - adds r1, r4, 0 - bl sub_8013800 - stm r5!, {r0} - adds r4, 0x1 - cmp r4, 0 - ble _08065A0A - movs r0, 0 - bl sub_80073B8 - ldr r0, _08065A80 - ldr r2, [r0] - movs r4, 0 - str r4, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - ldr r1, [r6] - ldr r0, _08065A84 - ldr r2, [r0] - str r4, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - ldr r0, _08065A88 - ldrb r1, [r0, 0x8] - lsls r3, r1, 2 - adds r1, r3, r1 - lsls r1, 3 - adds r1, 0x50 - add r0, sp, 0xC8 - ldr r2, [r0] - adds r2, 0xA - adds r3, r7, r3 - ldr r3, [r3] - movs r0, 0x7 - str r0, [sp] - movs r0, 0 - bl sub_80078A4 - movs r0, 0 - bl sub_80073E0 - add sp, 0xCC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08065A78: .4byte gUnknown_8106CF4 -_08065A7C: .4byte gUnknown_202EE10 -_08065A80: .4byte gUnknown_80FE73C -_08065A84: .4byte gUnknown_80FE808 -_08065A88: .4byte gUnknown_202F2E8 - thumb_func_end sub_8065948 - - thumb_func_start sub_8065A8C -sub_8065A8C: - push {lr} - cmp r0, 0x5 - bhi _08065B38 - lsls r0, 2 - ldr r1, _08065A9C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08065A9C: .4byte _08065AA0 - .align 2, 0 -_08065AA0: - .4byte _08065AB8 - .4byte _08065ACC - .4byte _08065AE0 - .4byte _08065AF4 - .4byte _08065B08 - .4byte _08065B22 -_08065AB8: - ldr r2, _08065AC8 - movs r1, 0 - ldrb r0, [r2] - cmp r0, 0 - bne _08065AC4 - movs r1, 0x1 -_08065AC4: - strb r1, [r2] - b _08065B38 - .align 2, 0 -_08065AC8: .4byte gUnknown_202F2E8 -_08065ACC: - ldr r2, _08065ADC - movs r1, 0 - ldrb r0, [r2, 0x1] - cmp r0, 0 - bne _08065AD8 - movs r1, 0x1 -_08065AD8: - strb r1, [r2, 0x1] - b _08065B38 - .align 2, 0 -_08065ADC: .4byte gUnknown_202F2E8 -_08065AE0: - ldr r2, _08065AF0 - movs r1, 0 - ldrb r0, [r2, 0x2] - cmp r0, 0 - bne _08065AEC - movs r1, 0x1 -_08065AEC: - strb r1, [r2, 0x2] - b _08065B38 - .align 2, 0 -_08065AF0: .4byte gUnknown_202F2E8 -_08065AF4: - ldr r2, _08065B04 - movs r1, 0 - ldrb r0, [r2, 0x3] - cmp r0, 0 - bne _08065B00 - movs r1, 0x1 -_08065B00: - strb r1, [r2, 0x3] - b _08065B38 - .align 2, 0 -_08065B04: .4byte gUnknown_202F2E8 -_08065B08: - ldr r1, _08065B18 - ldrb r0, [r1, 0x4] - cmp r0, 0 - bne _08065B1C - movs r0, 0x2 - strb r0, [r1, 0x4] - b _08065B38 - .align 2, 0 -_08065B18: .4byte gUnknown_202F2E8 -_08065B1C: - subs r0, 0x1 - strb r0, [r1, 0x4] - b _08065B38 -_08065B22: - ldr r1, _08065B30 - ldrb r0, [r1, 0x8] - cmp r0, 0 - bne _08065B34 - movs r0, 0x2 - b _08065B36 - .align 2, 0 -_08065B30: .4byte gUnknown_202F2E8 -_08065B34: - subs r0, 0x1 -_08065B36: - strb r0, [r1, 0x8] -_08065B38: - pop {r0} - bx r0 - thumb_func_end sub_8065A8C - - thumb_func_start sub_8065B3C -sub_8065B3C: - push {lr} - cmp r0, 0x5 - bhi _08065BE8 - lsls r0, 2 - ldr r1, _08065B4C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08065B4C: .4byte _08065B50 - .align 2, 0 -_08065B50: - .4byte _08065B68 - .4byte _08065B7C - .4byte _08065B90 - .4byte _08065BA4 - .4byte _08065BB8 - .4byte _08065BD2 -_08065B68: - ldr r2, _08065B78 - movs r1, 0 - ldrb r0, [r2] - cmp r0, 0 - bne _08065B74 - movs r1, 0x1 -_08065B74: - strb r1, [r2] - b _08065BE8 - .align 2, 0 -_08065B78: .4byte gUnknown_202F2E8 -_08065B7C: - ldr r2, _08065B8C - movs r1, 0 - ldrb r0, [r2, 0x1] - cmp r0, 0 - bne _08065B88 - movs r1, 0x1 -_08065B88: - strb r1, [r2, 0x1] - b _08065BE8 - .align 2, 0 -_08065B8C: .4byte gUnknown_202F2E8 -_08065B90: - ldr r2, _08065BA0 - movs r1, 0 - ldrb r0, [r2, 0x2] - cmp r0, 0 - bne _08065B9C - movs r1, 0x1 -_08065B9C: - strb r1, [r2, 0x2] - b _08065BE8 - .align 2, 0 -_08065BA0: .4byte gUnknown_202F2E8 -_08065BA4: - ldr r2, _08065BB4 - movs r1, 0 - ldrb r0, [r2, 0x3] - cmp r0, 0 - bne _08065BB0 - movs r1, 0x1 -_08065BB0: - strb r1, [r2, 0x3] - b _08065BE8 - .align 2, 0 -_08065BB4: .4byte gUnknown_202F2E8 -_08065BB8: - ldr r1, _08065BC8 - ldrb r0, [r1, 0x4] - cmp r0, 0x2 - bne _08065BCC - movs r0, 0 - strb r0, [r1, 0x4] - b _08065BE8 - .align 2, 0 -_08065BC8: .4byte gUnknown_202F2E8 -_08065BCC: - adds r0, 0x1 - strb r0, [r1, 0x4] - b _08065BE8 -_08065BD2: - ldr r1, _08065BE0 - ldrb r0, [r1, 0x8] - cmp r0, 0x2 - bne _08065BE4 - movs r0, 0 - b _08065BE6 - .align 2, 0 -_08065BE0: .4byte gUnknown_202F2E8 -_08065BE4: - adds r0, 0x1 -_08065BE6: - strb r0, [r1, 0x8] -_08065BE8: - pop {r0} - bx r0 - thumb_func_end sub_8065B3C - - thumb_func_start sub_8065BEC -sub_8065BEC: - movs r0, 0 - bx lr - thumb_func_end sub_8065BEC - - thumb_func_start sub_8065BF0 -sub_8065BF0: - movs r0, 0 - bx lr - thumb_func_end sub_8065BF0 - - thumb_func_start sub_8065BF4 -sub_8065BF4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r5, _08065C60 - ldr r6, _08065C64 - movs r0, 0x2A - adds r0, r5 - mov r8, r0 -_08065C04: - movs r7, 0 - bl sub_8065CAC -_08065C0A: - adds r0, r5, 0 - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - ldrh r1, [r6, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08065C2E - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80136E0 -_08065C2E: - ldrh r1, [r6, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08065C46 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8013744 -_08065C46: - ldrh r1, [r6, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08065C5A - adds r0, r5, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08065C68 -_08065C5A: - bl sub_8083D08 - b _08065C7E - .align 2, 0 -_08065C60: .4byte gUnknown_202EE10 -_08065C64: .4byte gUnknown_20255F0 -_08065C68: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08065C78 - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0 - beq _08065C0A -_08065C78: - bl sub_8083D30 - movs r7, 0x1 -_08065C7E: - ldr r4, _08065C9C - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - cmp r7, 0 - bne _08065CA0 - movs r1, 0x18 - ldrsh r0, [r4, r1] - bl sub_8065DBC - b _08065C04 - .align 2, 0 -_08065C9C: .4byte gUnknown_202EE10 -_08065CA0: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8065BF4 - - thumb_func_start sub_8065CAC -sub_8065CAC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC8 - add r0, sp, 0x64 - mov r10, r0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x68] - add r0, sp, 0x6C - movs r4, 0 - movs r5, 0 - movs r1, 0x2 - mov r9, r1 - mov r1, r9 - strh r1, [r0] - strh r1, [r0, 0x2] - add r0, sp, 0x70 - movs r7, 0xC - strh r7, [r0] - adds r0, 0x2 - movs r6, 0x10 - strh r6, [r0] - add r0, sp, 0x74 - strh r6, [r0] - add r0, sp, 0xC4 - mov r8, r0 - str r0, [sp, 0x78] - movs r1, 0x3 - str r1, [sp, 0x80] - add r0, sp, 0x94 - str r1, [r0, 0x4] - add r0, sp, 0xAC - str r1, [r0, 0x4] - add r0, sp, 0x4 - mov r1, r10 - movs r2, 0x60 - bl memcpy - movs r0, 0x1 - mov r1, r8 - strb r0, [r1] - strb r4, [r1, 0x1] - strb r4, [r1, 0x3] - ldr r4, _08065DB0 - strh r5, [r4, 0x18] - movs r0, 0x7 - strh r0, [r4, 0x1A] - strh r0, [r4, 0x1C] - strh r5, [r4, 0x1E] - strh r5, [r4, 0x20] - strh r5, [r4, 0x4] - strh r6, [r4, 0x6] - strh r5, [r4, 0xC] - strh r5, [r4, 0xE] - strh r5, [r4, 0x14] - str r5, [r4] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - add r0, sp, 0x4 - strh r7, [r0, 0xC] - movs r0, 0x7 - movs r1, 0xC - bl sub_80095E4 - add r2, sp, 0x4 - adds r1, r2, 0 - adds r0, 0x2 - strh r0, [r1, 0x10] - strh r0, [r2, 0xE] - movs r0, 0xA - mov r1, r8 - strb r0, [r1, 0x2] - adds r0, r2, 0 - mov r1, r9 - strh r1, [r0, 0x8] - movs r1, 0x1 - bl sub_803ECB4 - adds r0, r4, 0 - movs r1, 0 - bl sub_80137B0 - movs r0, 0 - bl sub_80073B8 - ldr r0, _08065DB4 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x10 - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - movs r4, 0 - ldr r5, _08065DB8 -_08065D7A: - ldr r0, _08065DB0 - adds r1, r4, 0 - bl sub_8013800 - adds r1, r0, 0 - ldm r5!, {r2} - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r3, 0 - bl sub_8014FF0 - adds r4, 0x1 - cmp r4, 0x6 - ble _08065D7A - movs r0, 0 - bl sub_80073E0 - add sp, 0xC8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08065DB0: .4byte gUnknown_202EE10 -_08065DB4: .4byte gUnknown_80FF770 -_08065DB8: .4byte gUnknown_80FF774 - thumb_func_end sub_8065CAC - - thumb_func_start sub_8065DBC -sub_8065DBC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xEC - adds r6, r0, 0 - ldr r0, _08065F28 - ldr r0, [r0] - ldrb r1, [r0, 0x9] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - str r0, [sp, 0xC8] - mov r0, sp - adds r0, 0x6C - str r0, [sp, 0xD4] - mov r1, sp - adds r1, 0x70 - str r1, [sp, 0xD8] - mov r2, sp - adds r2, 0x72 - str r2, [sp, 0xDC] - adds r0, 0x8 - str r0, [sp, 0xE0] - adds r1, 0xC - str r1, [sp, 0xE4] - adds r2, 0x22 - str r2, [sp, 0xE8] - adds r0, 0x38 - str r0, [sp, 0xD0] - subs r1, 0x18 - str r1, [sp, 0xCC] - movs r2, 0x10 - mov r10, r2 - ldr r5, _08065F2C - add r0, sp, 0xC4 - mov r9, r0 - add r1, sp, 0x4 - mov r8, r1 -_08065E0C: - movs r7, 0 - ldr r0, [sp, 0xCC] - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x68] - movs r0, 0x2 - ldr r2, [sp, 0xD4] - strh r0, [r2] - strh r0, [r2, 0x2] - movs r0, 0xC - ldr r1, [sp, 0xD8] - strh r0, [r1] - mov r0, r10 - ldr r2, [sp, 0xDC] - strh r0, [r2] - ldr r1, [sp, 0xE0] - strh r0, [r1] - mov r2, r9 - str r2, [sp, 0x78] - movs r0, 0x3 - ldr r1, [sp, 0xE4] - str r0, [r1, 0x4] - ldr r2, [sp, 0xE8] - str r0, [r2, 0x4] - ldr r1, [sp, 0xD0] - str r0, [r1, 0x4] - add r0, sp, 0x4 - ldr r1, [sp, 0xCC] - movs r2, 0x60 - bl memcpy - movs r1, 0x7 - add r0, sp, 0xC4 - strb r1, [r0] - mov r2, r9 - strb r6, [r2, 0x1] - movs r0, 0 - strb r0, [r2, 0x3] - strh r6, [r5, 0x1E] - strh r1, [r5, 0x20] - strh r7, [r5, 0x1A] - strh r7, [r5, 0x18] - strh r7, [r5, 0x1C] - strh r7, [r5, 0x4] - mov r1, r10 - strh r1, [r5, 0x6] - strh r7, [r5, 0x14] - str r7, [r5] - adds r0, r5, 0 - adds r0, 0x28 - bl sub_801317C - movs r0, 0x18 - mov r2, r8 - strh r0, [r2, 0xC] - movs r0, 0x8 - movs r1, 0xC - bl sub_80095E4 - adds r0, 0x2 - mov r1, r8 - strh r0, [r1, 0x10] - strh r0, [r1, 0xE] - movs r0, 0xA - mov r2, r9 - strb r0, [r2, 0x2] - movs r0, 0x2 - strh r0, [r1, 0x8] - add r0, sp, 0x4 - movs r1, 0x1 - bl sub_803ECB4 - ldr r1, _08065F30 - movs r2, 0 - ldrsh r0, [r1, r2] - adds r0, 0x13 - lsls r0, 3 - strh r0, [r5, 0xC] - movs r2, 0x2 - ldrsh r0, [r1, r2] - adds r0, 0x1 - lsls r0, 3 - subs r0, 0x2 - strh r0, [r5, 0xE] - movs r0, 0 - bl sub_80073B8 - lsls r0, r6, 3 - adds r0, 0x10 - ldr r1, _08065F34 - lsls r4, r6, 2 - adds r1, r4, r1 - ldr r2, [r1] - str r7, [sp] - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - ldr r1, _08065F38 - ldr r2, [sp, 0xC8] - lsls r0, r2, 5 - adds r4, r0 - adds r4, r1 - ldr r2, [r4] - str r7, [sp] - movs r0, 0x8 - movs r1, 0x10 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 -_08065EF4: - adds r0, r5, 0 - bl AddMenuCursorSprite - movs r0, 0x24 - bl sub_803E46C - ldr r0, _08065F3C - ldrh r1, [r0, 0x2] - mov r0, r10 - ands r0, r1 - cmp r0, 0 - bne _08065F16 - adds r0, r5, 0 - adds r0, 0x2B - ldrb r0, [r0] - cmp r0, 0 - beq _08065F40 -_08065F16: - movs r0, 0 - bl sub_8083CE0 - adds r6, 0x1 - cmp r6, 0x7 - bne _08065F64 - movs r6, 0 - b _08065F64 - .align 2, 0 -_08065F28: .4byte gUnknown_203B46C -_08065F2C: .4byte gUnknown_202EE10 -_08065F30: .4byte gUnknown_2027370 -_08065F34: .4byte gUnknown_80FF774 -_08065F38: .4byte gUnknown_80FF7EC -_08065F3C: .4byte gUnknown_20255F0 -_08065F40: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _08065F52 - adds r0, r5, 0 - adds r0, 0x2C - ldrb r0, [r0] - cmp r0, 0 - beq _08065F68 -_08065F52: - movs r0, 0 - bl sub_8083CE0 - subs r6, 0x1 - movs r0, 0x1 - negs r0, r0 - cmp r6, r0 - bne _08065F64 - movs r6, 0x6 -_08065F64: - movs r7, 0x1 - b _08065F94 -_08065F68: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08065F7A - adds r0, r5, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08065F80 -_08065F7A: - bl sub_8083D08 - b _08065F94 -_08065F80: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08065F90 - ldr r1, _08065FB0 - ldrb r0, [r1] - cmp r0, 0 - beq _08065EF4 -_08065F90: - bl sub_8083D30 -_08065F94: - movs r0, 0x24 - bl sub_803E46C - cmp r7, 0 - beq _08065FA0 - b _08065E0C -_08065FA0: - add sp, 0xEC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08065FB0: .4byte gUnknown_202EE3A - thumb_func_end sub_8065DBC - - thumb_func_start sub_8065FB4 -sub_8065FB4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _08065FE0 - add sp, r4 - movs r0, 0 - mov r10, r0 - ldr r4, _08065FE4 - ldr r0, [r4] - ldr r1, _08065FE8 - adds r0, r1 - ldrb r0, [r0] - bl sub_8090148 - lsls r0, 24 - cmp r0, 0 - bne _08065FF0 - ldr r0, _08065FEC - b _08065FFE - .align 2, 0 -_08065FE0: .4byte 0xfffff608 -_08065FE4: .4byte gUnknown_203B418 -_08065FE8: .4byte 0x00000644 -_08065FEC: .4byte gUnknown_80FA5F4 -_08065FF0: - ldr r0, [r4] - ldr r2, _0806600C - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08066014 - ldr r0, _08066010 -_08065FFE: - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _08066194 - .align 2, 0 -_0806600C: .4byte 0x0000065d -_08066010: .4byte gUnknown_80FA61C -_08066014: - mov r0, sp - bl sub_80664FC - ldr r6, _08066130 -_0806601C: - movs r0, 0 - mov r8, r0 - mov r1, r10 - lsls r0, r1, 2 - add r0, r10 - lsls r0, 6 - subs r0, r1 - lsls r0, 2 - add r0, sp - mov r9, r0 - ldr r0, _08066134 - strb r1, [r0, 0x1] - ldr r0, _08066138 - movs r1, 0x1 - bl sub_803ECB4 - mov r2, r8 - strh r2, [r6, 0x1A] - strh r2, [r6, 0x18] - strh r2, [r6, 0x1C] - mov r0, r10 - strh r0, [r6, 0x1E] - movs r0, 0x2 - strh r0, [r6, 0x20] - strh r2, [r6, 0x4] - movs r0, 0x10 - strh r0, [r6, 0x6] - strh r2, [r6, 0x14] - mov r1, r8 - str r1, [r6] - adds r0, r6, 0 - adds r0, 0x28 - bl sub_801317C - ldr r0, _0806613C - mov r2, r8 - str r2, [r0] - movs r1, 0 - ldr r0, _08066140 - strb r1, [r0] - mov r0, r9 - mov r1, r10 - bl sub_80661AC - ldr r1, _08066144 - movs r2, 0 - ldrsh r0, [r1, r2] - adds r0, 0x10 - lsls r0, 3 - strh r0, [r6, 0xC] - movs r2, 0x2 - ldrsh r0, [r1, r2] - adds r0, 0x1 - lsls r0, 3 - subs r0, 0x2 - strh r0, [r6, 0xE] -_0806608C: - movs r5, 0 - ldr r0, _08066140 - strb r5, [r0] - movs r0, 0 - ldr r1, _08066148 - bl sub_8014140 - adds r4, r0, 0 - mov r0, r9 - adds r1, r4, 0 - bl sub_8066288 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r5, r1, 31 - mov r0, r9 - adds r1, r4, 0 - bl sub_8066358 - lsls r0, 24 - cmp r0, 0 - beq _080660BE - movs r5, 0x1 -_080660BE: - cmp r5, 0 - bne _080660CE - ldr r0, _08066130 - bl AddMenuCursorSprite - movs r0, 0x45 - bl sub_803E46C -_080660CE: - ldr r2, _08066140 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080660E2 - movs r0, 0x1 - movs r1, 0x8 - bl sub_8066434 -_080660E2: - ldr r0, _08066140 - ldrb r1, [r0] - movs r7, 0x2 - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _080660F8 - movs r0, 0 - movs r1, 0x70 - bl sub_8066434 -_080660F8: - ldr r5, _0806614C - ldrh r1, [r5, 0x2] - movs r0, 0x30 - ands r0, r1 - cmp r0, 0 - bne _0806611A - ldr r4, _08066130 - adds r0, r4, 0 - adds r0, 0x2C - ldrb r0, [r0] - cmp r0, 0 - bne _0806611A - adds r0, r4, 0 - adds r0, 0x2B - ldrb r0, [r0] - cmp r0, 0 - beq _08066150 -_0806611A: - movs r0, 0 - bl sub_8083CE0 - movs r0, 0 - mov r1, r10 - cmp r1, 0 - bne _0806612A - movs r0, 0x1 -_0806612A: - mov r10, r0 - b _08066184 - .align 2, 0 -_08066130: .4byte gUnknown_202EE10 -_08066134: .4byte gUnknown_203B43C -_08066138: .4byte gUnknown_8106D08 -_0806613C: .4byte gUnknown_202F2F8 -_08066140: .4byte gUnknown_202F2FC -_08066144: .4byte gUnknown_2027370 -_08066148: .4byte gUnknown_8106D68 -_0806614C: .4byte gUnknown_20255F0 -_08066150: - bl sub_80048C8 - lsls r0, 24 - cmp r0, 0 - bne _0806608C - ldrh r1, [r5, 0x2] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - bne _0806616E - adds r0, r4, 0 - adds r0, 0x2A - ldrb r0, [r0] - cmp r0, 0 - beq _08066174 -_0806616E: - bl sub_8083D30 - b _0806618C -_08066174: - movs r0, 0xC - ands r0, r1 - cmp r0, 0 - beq _0806608C - bl sub_8083D08 - movs r2, 0x1 - mov r8, r2 -_08066184: - mov r0, r8 - cmp r0, 0 - bne _0806618C - b _0806601C -_0806618C: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 -_08066194: - ldr r3, _080661A8 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080661A8: .4byte 0x000009f8 - thumb_func_end sub_8065FB4 - - thumb_func_start sub_80661AC -sub_80661AC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x44 - adds r6, r0, 0 - adds r5, r1, 0 - ldr r0, _080661DC - ldr r4, [r0] - movs r0, 0x20 - mov r8, r0 - movs r0, 0 - bl sub_80073B8 - cmp r5, 0 - bne _080661E4 - ldr r0, _080661E0 - ldr r2, [r0] - str r5, [sp] - movs r0, 0xC - movs r1, 0 - movs r3, 0 - bl xxx_call_draw_string - b _080661F6 - .align 2, 0 -_080661DC: .4byte gUnknown_202F2F8 -_080661E0: .4byte gUnknown_80FEA68 -_080661E4: - ldr r0, _08066254 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x14 - movs r1, 0 - movs r3, 0 - bl xxx_call_draw_string -_080661F6: - movs r1, 0x9F - lsls r1, 3 - adds r0, r6, r1 - ldr r1, [r0] - cmp r1, 0 - beq _08066260 - movs r7, 0x7 - lsls r0, r4, 1 - adds r5, r0, r6 -_08066208: - cmp r4, 0 - blt _08066244 - movs r1, 0x9F - lsls r1, 3 - adds r0, r6, r1 - ldr r0, [r0] - cmp r4, r0 - bge _08066244 - movs r1, 0xD4 - lsls r1, 2 - adds r0, r6, r1 - adds r0, r4 - ldrb r2, [r0] - add r0, sp, 0x4 - ldr r1, _08066258 - bl sub_800D158 - movs r0, 0 - ldrsh r1, [r5, r0] - ldr r0, _0806625C - bl sub_808D930 - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - mov r1, r8 - add r2, sp, 0x4 - movs r3, 0 - bl sub_8014FF0 -_08066244: - subs r7, 0x1 - adds r5, 0x2 - adds r4, 0x1 - movs r1, 0xC - add r8, r1 - cmp r7, 0 - bge _08066208 - b _08066270 - .align 2, 0 -_08066254: .4byte gUnknown_80FEA80 -_08066258: .4byte gUnknown_8106D8C -_0806625C: .4byte gUnknown_202DF98 -_08066260: - ldr r0, _08066284 - ldr r2, [r0] - str r1, [sp] - movs r0, 0x8 - mov r1, r8 - movs r3, 0 - bl xxx_call_draw_string -_08066270: - movs r0, 0 - bl sub_80073E0 - add sp, 0x44 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08066284: .4byte gUnknown_80FEA8C - thumb_func_end sub_80661AC - - thumb_func_start sub_8066288 -sub_8066288: - push {r4,r5,lr} - sub sp, 0x44 - adds r5, r0, 0 - adds r3, r1, 0 - ldr r0, _080662B8 - ldr r4, [r0] - cmp r4, 0 - beq _080662B4 - subs r4, 0x1 - ldr r2, _080662BC - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r0, _080662C0 - ldrh r1, [r0, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _080662C4 - cmp r3, 0x1 - beq _080662C4 -_080662B4: - movs r0, 0 - b _0806633E - .align 2, 0 -_080662B8: .4byte gUnknown_202F2F8 -_080662BC: .4byte gUnknown_202F2FC -_080662C0: .4byte gUnknown_20255F0 -_080662C4: - movs r0, 0 - bl sub_8083CE0 - movs r0, 0 - bl sub_80073B8 - movs r0, 0x10 - str r0, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0x10 - movs r3, 0x90 - bl sub_80087EC - ldr r1, _08066348 - movs r2, 0xD4 - lsls r2, 2 - adds r0, r5, r2 - adds r0, r4 - ldrb r2, [r0] - add r0, sp, 0x4 - bl sub_800D158 - ldr r0, _0806634C - lsls r1, r4, 1 - adds r1, r5, r1 - movs r2, 0 - ldrsh r1, [r1, r2] - bl sub_808D930 - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r1, 0x14 - add r2, sp, 0x4 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - movs r0, 0x45 - bl sub_803E46C - ldr r5, _08066350 - movs r4, 0x5 -_08066320: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x45 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08066320 - ldr r1, _08066354 - ldr r0, [r1] - subs r0, 0x1 - str r0, [r1] - movs r0, 0x1 -_0806633E: - add sp, 0x44 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08066348: .4byte gUnknown_8106D8C -_0806634C: .4byte gUnknown_202DF98 -_08066350: .4byte gUnknown_203B084 -_08066354: .4byte gUnknown_202F2F8 - thumb_func_end sub_8066288 - - thumb_func_start sub_8066358 -sub_8066358: - push {r4-r6,lr} - sub sp, 0x44 - adds r5, r0, 0 - adds r3, r1, 0 - ldr r0, _08066394 - ldr r0, [r0] - adds r4, r0, 0 - adds r4, 0x8 - movs r6, 0x80 - movs r1, 0x9F - lsls r1, 3 - adds r0, r5, r1 - ldr r0, [r0] - cmp r0, r4 - ble _08066390 - ldr r2, _08066398 - ldrb r0, [r2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2] - ldr r0, _0806639C - ldrh r1, [r0, 0x4] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - bne _080663A0 - cmp r3, 0x2 - beq _080663A0 -_08066390: - movs r0, 0 - b _0806641A - .align 2, 0 -_08066394: .4byte gUnknown_202F2F8 -_08066398: .4byte gUnknown_202F2FC -_0806639C: .4byte gUnknown_20255F0 -_080663A0: - movs r0, 0 - bl sub_8083CE0 - movs r0, 0 - bl sub_80073B8 - movs r0, 0x10 - str r0, [sp] - movs r0, 0 - movs r1, 0 - adds r2, r6, 0 - movs r3, 0x48 - bl sub_80087EC - ldr r1, _08066424 - movs r2, 0xD4 - lsls r2, 2 - adds r0, r5, r2 - adds r0, r4 - ldrb r2, [r0] - add r0, sp, 0x4 - bl sub_800D158 - ldr r0, _08066428 - lsls r1, r4, 1 - adds r1, r5, r1 - movs r2, 0 - ldrsh r1, [r1, r2] - bl sub_808D930 - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - adds r1, r6, 0 - add r2, sp, 0x4 - movs r3, 0 - bl sub_8014FF0 - movs r0, 0 - bl sub_80073E0 - movs r0, 0xD - bl sub_803E46C - ldr r5, _0806642C - movs r4, 0x5 -_080663FC: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0xD - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _080663FC - ldr r1, _08066430 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - movs r0, 0x1 -_0806641A: - add sp, 0x44 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08066424: .4byte gUnknown_8106D8C -_08066428: .4byte gUnknown_202DF98 -_0806642C: .4byte gUnknown_203B080 -_08066430: .4byte gUnknown_202F2F8 - thumb_func_end sub_8066358 - - thumb_func_start sub_8066434 -sub_8066434: - push {r4-r7,lr} - mov r12, r1 - lsls r0, 24 - lsrs r2, r0, 24 - ldr r7, _080664C8 - ldr r0, _080664CC - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080664C0 - ldr r0, _080664D0 - ldrh r1, [r0] - ldr r3, _080664D4 - ands r3, r1 - ldr r1, _080664D8 - ands r3, r1 - ldr r1, _080664DC - ands r3, r1 - ldr r1, _080664E0 - ands r3, r1 - ldr r1, _080664E4 - ands r3, r1 - negs r1, r2 - orrs r1, r2 - asrs r1, 31 - movs r2, 0x80 - lsls r2, 6 - ands r2, r1 - ldrh r1, [r0, 0x2] - ldr r4, _080664E8 - ands r4, r1 - orrs r4, r2 - movs r5, 0xF - ldr r2, _080664EC - movs r6, 0x2 - ldrsh r1, [r7, r6] - lsls r1, 3 - add r1, r12 - ands r1, r2 - lsls r1, 4 - ldrh r2, [r0, 0x6] - ands r5, r2 - orrs r5, r1 - strh r5, [r0, 0x6] - movs r2, 0 - ldrsh r1, [r7, r2] - lsls r1, 3 - adds r1, 0x40 - ldr r2, _080664F0 - ands r1, r2 - movs r2, 0xFE - lsls r2, 8 - ands r4, r2 - orrs r4, r1 - movs r2, 0x80 - lsls r2, 7 - ldr r1, _080664F4 - ands r3, r1 - orrs r3, r2 - strh r3, [r0] - ands r4, r1 - strh r4, [r0, 0x2] - ldr r1, _080664F8 - strh r1, [r0, 0x4] - movs r1, 0x7F - movs r2, 0 - movs r3, 0 - bl AddSprite -_080664C0: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080664C8: .4byte gUnknown_2027370 -_080664CC: .4byte gUnknown_202EDCC -_080664D0: .4byte gUnknown_202F300 -_080664D4: .4byte 0x0000feff -_080664D8: .4byte 0x0000fdff -_080664DC: .4byte 0x0000f3ff -_080664E0: .4byte 0x0000efff -_080664E4: .4byte 0x0000dfff -_080664E8: .4byte 0x0000c1ff -_080664EC: .4byte 0x00000fff -_080664F0: .4byte 0x000001ff -_080664F4: .4byte 0x00003fff -_080664F8: .4byte 0x0000f3f0 - thumb_func_end sub_8066434 - - thumb_func_start sub_80664FC -sub_80664FC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C0 - str r0, [sp, 0x1A8] - movs r7, 0 - ldr r2, _08066604 - ldr r3, _08066608 - movs r1, 0 -_08066512: - mov r4, sp - adds r0, r4, r7 - strb r1, [r0] - adds r7, 0x1 - cmp r7, r2 - ble _08066512 - movs r4, 0 - adds r1, r3, 0 - ldr r0, [r3] - ldr r7, _0806660C - adds r0, r7 - ldr r0, [r0] - cmp r4, r0 - bge _08066578 - ldr r6, _08066610 -_08066530: - movs r5, 0x1 - ldr r2, [r1] - lsls r0, r4, 3 - adds r0, r2, r0 - ldr r7, _08066614 - adds r1, r0, r7 - movs r7, 0 - ldrsh r1, [r1, r7] - movs r7, 0xD1 - lsls r7, 6 - adds r0, r7 - movs r7, 0 - ldrsh r0, [r0, r7] - cmp r1, 0 - bne _08066554 - cmp r0, 0 - beq _08066566 - movs r5, 0x2 -_08066554: - adds r0, r2, r6 - str r3, [sp, 0x1BC] - bl sub_808E9B8 - lsls r0, 16 - asrs r0, 16 - add r0, sp - strb r5, [r0] - ldr r3, [sp, 0x1BC] -_08066566: - adds r6, 0x8 - adds r4, 0x1 - ldr r1, _08066608 - ldr r0, [r1] - ldr r2, _0806660C - adds r0, r2 - ldr r0, [r0] - cmp r4, r0 - blt _08066530 -_08066578: - ldr r0, [r3] - ldr r4, _08066618 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _0806658A - add r1, sp, 0x17C - movs r0, 0x1 - strb r0, [r1] -_0806658A: - movs r0, 0x5 -_0806658C: - subs r0, 0x1 - cmp r0, 0 - bge _0806658C - movs r7, 0 -_08066594: - movs r0, 0 - mov r8, r0 - movs r1, 0x1 - adds r2, r7, 0x1 - str r2, [sp, 0x1AC] - lsls r4, r7, 2 - str r4, [sp, 0x1B0] -_080665A2: - lsls r0, r1, 16 - asrs r6, r0, 16 - movs r0, 0x7 - mov r10, r0 - movs r2, 0 - mov r9, r2 - mov r4, sp - adds r0, r4, r6 - ldrb r0, [r0] - adds r1, 0x1 - str r1, [sp, 0x1B4] - cmp r0, 0 - bne _080665BE - b _08066704 -_080665BE: - cmp r7, 0 - bne _08066620 - adds r0, r6, 0 - bl sub_806F9BC - lsls r0, 24 - cmp r0, 0 - bne _080665D0 - b _08066704 -_080665D0: - adds r0, r6, 0 - bl sub_80981DC - lsls r0, 24 - cmp r0, 0 - bne _080665DE - b _08066704 -_080665DE: - adds r0, r6, 0 - bl sub_808DCC0 - lsls r0, 16 - ldr r1, _0806661C - cmp r0, r1 - bne _080665EE - b _08066704 -_080665EE: - cmp r6, 0x97 - bne _0806669E - movs r0, 0x7A - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - bne _08066600 - b _08066704 -_08066600: - b _0806669E - .align 2, 0 -_08066604: .4byte 0x000001a7 -_08066608: .4byte gUnknown_203B418 -_0806660C: .4byte 0x000037e4 -_08066610: .4byte 0x0000343c -_08066614: .4byte 0x0000343e -_08066618: .4byte 0x0000066e -_0806661C: .4byte 0xfc190000 -_08066620: - movs r5, 0 - ldr r0, _080666CC - ldr r2, [r0] - movs r4, 0x1 - movs r3, 0xCE - lsls r3, 1 -_0806662C: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0806663E - movs r1, 0x8 - ldrsh r0, [r2, r1] - cmp r0, r6 - beq _08066646 -_0806663E: - adds r2, 0x58 - adds r5, 0x1 - cmp r5, r3 - ble _0806662C -_08066646: - ldr r0, _080666D0 - cmp r5, r0 - beq _08066650 - movs r2, 0x1 - mov r9, r2 -_08066650: - mov r4, r9 - cmp r4, 0 - bne _0806669E - movs r5, 0 - ldr r2, _080666CC -_0806665A: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _080666D4 - adds r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806668C - movs r1, 0xA - ldrsh r0, [r4, r1] - str r2, [sp, 0x1B8] - bl sub_806A564 - lsls r0, 24 - ldr r2, [sp, 0x1B8] - cmp r0, 0 - bne _0806668C - movs r1, 0xE - ldrsh r0, [r4, r1] - cmp r0, r6 - beq _08066692 -_0806668C: - adds r5, 0x1 - cmp r5, 0x3 - ble _0806665A -_08066692: - cmp r5, 0x4 - beq _0806669E - movs r2, 0x1 - mov r9, r2 - movs r4, 0x6 - mov r10, r4 -_0806669E: - cmp r7, 0 - bne _080666D8 - mov r1, sp - adds r0, r1, r6 - ldrb r0, [r0] - cmp r0, 0x2 - bne _080666B0 - movs r2, 0x2 - mov r10, r2 -_080666B0: - mov r4, r8 - lsls r0, r4, 1 - ldr r1, [sp, 0x1A8] - adds r0, r1, r0 - strh r6, [r0] - movs r2, 0xD4 - lsls r2, 2 - adds r0, r1, r2 - add r0, r8 - mov r4, r10 - strb r4, [r0] - movs r0, 0x1 - add r8, r0 - b _08066704 - .align 2, 0 -_080666CC: .4byte gUnknown_203B45C -_080666D0: .4byte 0x0000019d -_080666D4: .4byte 0x00008df8 -_080666D8: - mov r1, r9 - cmp r1, 0 - beq _08066704 - ldr r2, [sp, 0x1B0] - adds r0, r2, r7 - lsls r0, 6 - subs r0, r7 - lsls r0, 2 - ldr r4, [sp, 0x1A8] - adds r0, r4 - mov r2, r8 - lsls r1, r2, 1 - adds r1, r0, r1 - strh r6, [r1] - movs r4, 0xD4 - lsls r4, 2 - adds r0, r4 - add r0, r8 - mov r1, r10 - strb r1, [r0] - movs r2, 0x1 - add r8, r2 -_08066704: - ldr r1, [sp, 0x1B4] - ldr r0, _08066740 - cmp r1, r0 - bgt _0806670E - b _080665A2 -_0806670E: - ldr r4, [sp, 0x1B0] - adds r0, r4, r7 - lsls r0, 6 - subs r0, r7 - lsls r0, 2 - ldr r7, [sp, 0x1A8] - adds r0, r7 - movs r1, 0x9F - lsls r1, 3 - adds r0, r1 - mov r2, r8 - str r2, [r0] - ldr r7, [sp, 0x1AC] - cmp r7, 0x1 - bgt _0806672E - b _08066594 -_0806672E: - add sp, 0x1C0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08066740: .4byte 0x000001a3 - thumb_func_end sub_80664FC - - thumb_func_start sub_8066744 -sub_8066744: - push {lr} - ldr r1, [r0, 0x70] - adds r1, 0x48 - movs r2, 0x1 - strb r2, [r1] - adds r0, 0x4 - movs r1, 0 - bl sub_8045DB4 - pop {r0} - bx r0 - thumb_func_end sub_8066744 - - thumb_func_start sub_806675C -sub_806675C: - push {r4-r7,lr} - adds r5, r0, 0 - lsls r1, 24 - lsrs r7, r1, 24 - movs r1, 0 - movs r2, 0xFE - bl sub_8044D90 - adds r4, r0, 0 - movs r3, 0 - ldr r6, _080667C0 -_08066772: - lsls r1, r3, 2 - ldr r0, [r6] - adds r1, r0, r1 - ldrb r2, [r1] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _08066798 - movs r0, 0x10 - ands r0, r2 - cmp r0, 0 - beq _08066798 - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - bne _080667EC - movs r0, 0xEF - ands r0, r2 - strb r0, [r1] -_08066798: - adds r3, 0x1 - cmp r3, 0x13 - ble _08066772 - ldr r0, _080667C4 - adds r1, r4, 0 - bl sub_8045BF8 - ldr r0, _080667C8 - bl sub_8083E38 - cmp r7, 0 - beq _08066812 - ldrb r1, [r4] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080667D0 - ldr r0, _080667CC - b _080667DE - .align 2, 0 -_080667C0: .4byte gUnknown_203B460 -_080667C4: .4byte gUnknown_202DE58 -_080667C8: .4byte 0x00000133 -_080667CC: .4byte gUnknown_80F8D04 -_080667D0: - ldrb r0, [r4, 0x2] - bl sub_8090BD0 - lsls r0, 24 - cmp r0, 0 - bne _08066808 - ldr r0, _080667E8 -_080667DE: - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _08066812 - .align 2, 0 -_080667E8: .4byte gUnknown_80F8CE4 -_080667EC: - ldr r0, _08066800 - bl sub_8045BF8 - ldr r0, _08066804 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _08066838 - .align 2, 0 -_08066800: .4byte gUnknown_202DE58 -_08066804: .4byte gUnknown_80F8C7C -_08066808: - ldr r0, _08066840 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_08066812: - ldrb r0, [r4] - movs r1, 0x10 - orrs r1, r0 - strb r1, [r4] - movs r0, 0x8 - ands r1, r0 - cmp r1, 0 - beq _08066838 - cmp r7, 0 - beq _08066838 - ldr r0, _08066844 - adds r1, r4, 0 - bl sub_8045BF8 - ldr r0, _08066848 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_08066838: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08066840: .4byte gUnknown_80F8CE8 -_08066844: .4byte gUnknown_202DE58 -_08066848: .4byte gUnknown_80F8BE0 - thumb_func_end sub_806675C - - thumb_func_start sub_806684C -sub_806684C: - push {r4-r6,lr} - adds r5, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - movs r4, 0 -_08066856: - ldr r0, _0806688C - lsls r1, r4, 2 - ldr r0, [r0] - adds r1, r0, r1 - ldrb r2, [r1] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _080668B8 - movs r0, 0x10 - ands r0, r2 - cmp r0, 0 - beq _080668B8 - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _08066898 - ldr r0, _08066890 - bl sub_8045BF8 - ldr r0, _08066894 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _080668BE - .align 2, 0 -_0806688C: .4byte gUnknown_203B460 -_08066890: .4byte gUnknown_202DE58 -_08066894: .4byte gUnknown_80F8C7C -_08066898: - movs r0, 0xEF - ands r0, r2 - strb r0, [r1] - ldr r0, _080668C4 - bl sub_8045BF8 - ldr r0, _080668C8 - bl sub_8083E38 - cmp r6, 0 - beq _080668B8 - ldr r0, _080668CC - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_080668B8: - adds r4, 0x1 - cmp r4, 0x13 - ble _08066856 -_080668BE: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080668C4: .4byte gUnknown_202DE58 -_080668C8: .4byte 0x00000133 -_080668CC: .4byte gUnknown_80F8D20 - thumb_func_end sub_806684C - - thumb_func_start sub_80668D0 -sub_80668D0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xC - adds r6, r0, 0 - movs r1, 0x1 - bl sub_8044DA4 - mov r8, r0 - ldr r4, [r6, 0x70] - ldr r7, [r0, 0x70] - adds r0, r6, 0 - movs r1, 0 - movs r2, 0x2 - bl sub_8044D90 - adds r5, r0, 0 - adds r4, 0x48 - ldrb r0, [r4] - movs r1, 0 - mov r9, r1 - cmp r0, 0x80 - bne _08066904 - movs r2, 0x1 - mov r9, r2 -_08066904: - mov r0, r9 - cmp r0, 0 - bne _08066928 - ldrb r1, [r5] - movs r0, 0x18 - ands r0, r1 - cmp r0, 0x18 - bne _08066928 - ldr r0, _08066920 - adds r1, r5, 0 - bl sub_8045BF8 - ldr r0, _08066924 - b _08066950 - .align 2, 0 -_08066920: .4byte gUnknown_202DEA8 -_08066924: .4byte gUnknown_80F8C44 -_08066928: - ldr r0, _0806695C - mov r1, r8 - movs r2, 0 - bl sub_8045B94 - adds r1, r7, 0 - adds r1, 0x60 - ldrb r2, [r1] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _08066A04 - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _08066968 - ldr r0, _08066960 - bl sub_8045BF8 - ldr r0, _08066964 -_08066950: - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - b _08066A96 - .align 2, 0 -_0806695C: .4byte gUnknown_202DFE8 -_08066960: .4byte gUnknown_202DEA8 -_08066964: .4byte gUnknown_80F8C40 -_08066968: - ldr r1, [r7, 0x60] - str r1, [sp] - ldr r2, [r5] - str r2, [sp, 0x4] - movs r4, 0xEF - mov r0, sp - ldrb r0, [r0] - ands r0, r4 - ldr r3, _080669A8 - ands r1, r3 - orrs r1, r0 - str r1, [sp] - add r5, sp, 0x4 - ldrb r0, [r5] - ands r0, r4 - ands r2, r3 - orrs r2, r0 - str r2, [sp, 0x4] - adds r0, r6, 0 - movs r1, 0 - movs r2, 0x64 - bl sub_8044DF0 - mov r1, r9 - cmp r1, 0 - beq _080669AC - adds r0, r6, 0x4 - mov r1, sp - movs r2, 0x1 - bl sub_80460F8 - b _080669B2 - .align 2, 0 -_080669A8: .4byte 0xffffff00 -_080669AC: - mov r0, sp - bl sub_8091290 -_080669B2: - ldr r0, [sp, 0x4] - str r0, [r7, 0x60] - ldr r4, _080669F4 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8045BF8 - adds r4, 0x50 - adds r0, r4, 0 - mov r1, sp - bl sub_8045BF8 - ldr r0, _080669F8 - bl sub_8083E38 - ldr r0, _080669FC - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - add r0, sp, 0x4 - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08066A52 - ldr r0, _08066A00 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - b _08066A52 - .align 2, 0 -_080669F4: .4byte gUnknown_202DE58 -_080669F8: .4byte 0x0000014d -_080669FC: .4byte gUnknown_80F8CA8 -_08066A00: .4byte gUnknown_80F8BE0 -_08066A04: - ldr r2, [r5] - str r2, [sp, 0x8] - movs r1, 0xEF - add r4, sp, 0x8 - ldrb r0, [r4] - ands r0, r1 - ldr r1, _08066AA4 - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x8] - adds r0, r6, 0 - movs r1, 0 - movs r2, 0x65 - bl sub_8044DF0 - ldr r0, [sp, 0x8] - str r0, [r7, 0x60] - ldr r0, _08066AA8 - adds r1, r4, 0 - bl sub_8045BF8 - ldr r0, _08066AAC - bl sub_8083E38 - ldr r0, _08066AB0 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - ldrb r1, [r4] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08066A52 - ldr r0, _08066AB4 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 -_08066A52: - mov r0, r8 - bl sub_806A6E8 - mov r1, r8 - adds r1, 0x4 - mov r0, r8 - bl sub_80706A4 - lsls r0, 24 - cmp r0, 0 - beq _08066A74 - adds r0, r6, 0 - mov r1, r8 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_08066A74: - ldrb r0, [r7, 0x7] - cmp r0, 0 - bne _08066A86 - ldrh r1, [r7] - movs r2, 0x80 - lsls r2, 7 - adds r0, r2, 0 - orrs r0, r1 - strh r0, [r7] -_08066A86: - ldr r0, _08066AB8 - ldr r0, [r0] - ldr r1, _08066ABC - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_807AB38 -_08066A96: - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08066AA4: .4byte 0xffffff00 -_08066AA8: .4byte gUnknown_202DE58 -_08066AAC: .4byte 0x0000014d -_08066AB0: .4byte gUnknown_80F8D44 -_08066AB4: .4byte gUnknown_80F8BE0 -_08066AB8: .4byte gUnknown_203B418 -_08066ABC: .4byte 0x00003a08 - thumb_func_end sub_80668D0 - - thumb_func_start sub_8066AC0 -sub_8066AC0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r7, r0, 0 - movs r1, 0 - bl sub_8044DA4 - adds r6, r0, 0 - ldr r2, [r6, 0x70] - mov r8, r2 - adds r5, r2, 0 - adds r5, 0x60 - ldr r0, _08066AF0 - ldr r0, [r0] - adds r0, 0x4C - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08066AF8 - ldr r0, _08066AF4 - b _08066B10 - .align 2, 0 -_08066AF0: .4byte gUnknown_203B460 -_08066AF4: .4byte gUnknown_80F8D60 -_08066AF8: - ldrb r1, [r5] - movs r0, 0x8 - ands r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08066B24 - ldr r0, _08066B1C - adds r1, r5, 0 - bl sub_8045BF8 - ldr r0, _08066B20 -_08066B10: - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - b _08066BAC - .align 2, 0 -_08066B1C: .4byte gUnknown_202DE58 -_08066B20: .4byte gUnknown_80F8BE0 -_08066B24: - ldr r2, [r2, 0x60] - str r2, [sp] - movs r1, 0xEF - mov r0, sp - ldrb r0, [r0] - ands r0, r1 - ldr r1, _08066BB8 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - ldr r0, _08066BBC - mov r1, sp - bl sub_8045BF8 - ldr r0, _08066BC0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - strb r4, [r5, 0x2] - strb r4, [r5, 0x1] - strb r4, [r5] - mov r0, sp - bl sub_8091290 - ldr r0, _08066BC4 - bl sub_8083E38 - ldr r0, _08066BC8 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - adds r0, r6, 0 - bl sub_806A6E8 - adds r1, r6, 0x4 - adds r0, r6, 0 - bl sub_80706A4 - lsls r0, 24 - cmp r0, 0 - beq _08066B86 - adds r0, r7, 0 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_08066B86: - mov r1, r8 - ldrb r0, [r1, 0x7] - cmp r0, 0 - bne _08066B9C - ldrh r1, [r1] - movs r2, 0x80 - lsls r2, 7 - adds r0, r2, 0 - orrs r0, r1 - mov r1, r8 - strh r0, [r1] -_08066B9C: - ldr r0, _08066BCC - ldr r0, [r0] - ldr r2, _08066BD0 - adds r0, r2 - ldrb r1, [r0] - adds r0, r7, 0 - bl sub_807AB38 -_08066BAC: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08066BB8: .4byte 0xffffff00 -_08066BBC: .4byte gUnknown_202DE58 -_08066BC0: .4byte gUnknown_202DF98 -_08066BC4: .4byte 0x0000014d -_08066BC8: .4byte gUnknown_80F8D7C -_08066BCC: .4byte gUnknown_203B418 -_08066BD0: .4byte 0x00003a08 - thumb_func_end sub_8066AC0 - - thumb_func_start sub_8066BD4 -sub_8066BD4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r7, r0, 0 - movs r1, 0 - bl sub_8044DA4 - mov r9, r0 - ldr r0, [r0, 0x70] - mov r8, r0 - mov r10, r8 - mov r6, r8 - adds r6, 0x60 - ldr r2, _08066C10 - adds r0, r7, 0 - movs r1, 0x1 - bl sub_8044D90 - adds r5, r0, 0 - ldrb r2, [r6] - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _08066C18 - ldr r0, _08066C14 - adds r1, r6, 0 - b _08066C26 - .align 2, 0 -_08066C10: .4byte 0x00001565 -_08066C14: .4byte gUnknown_202DE58 -_08066C18: - ldrb r1, [r5] - movs r0, 0x18 - ands r0, r1 - cmp r0, 0x18 - bne _08066C40 - ldr r0, _08066C38 - adds r1, r5, 0 -_08066C26: - bl sub_8045BF8 - ldr r0, _08066C3C - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - b _08066CC8 - .align 2, 0 -_08066C38: .4byte gUnknown_202DE58 -_08066C3C: .4byte gUnknown_80F8BE0 -_08066C40: - movs r1, 0xEF - adds r0, r1, 0 - ands r0, r2 - strb r0, [r6] - ldrb r0, [r5] - ands r1, r0 - strb r1, [r5] - ldr r4, _08066CD8 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_8045BF8 - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8045BF8 - ldr r0, _08066CDC - mov r1, r9 - movs r2, 0 - bl sub_8045B94 - mov r2, r8 - ldr r1, [r2, 0x60] - ldr r0, [r5] - str r0, [r2, 0x60] - str r1, [r5] - ldr r0, _08066CE0 - bl sub_8083E38 - ldr r0, _08066CE4 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - mov r1, r9 - adds r1, 0x4 - mov r0, r9 - bl sub_80706A4 - lsls r0, 24 - cmp r0, 0 - beq _08066CA2 - adds r0, r7, 0 - mov r1, r9 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_08066CA2: - mov r1, r10 - ldrb r0, [r1, 0x7] - cmp r0, 0 - bne _08066CB8 - ldrh r1, [r1] - movs r2, 0x80 - lsls r2, 7 - adds r0, r2, 0 - orrs r0, r1 - mov r1, r10 - strh r0, [r1] -_08066CB8: - ldr r0, _08066CE8 - ldr r0, [r0] - ldr r2, _08066CEC - adds r0, r2 - ldrb r1, [r0] - adds r0, r7, 0 - bl sub_807AB38 -_08066CC8: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08066CD8: .4byte gUnknown_202DE58 -_08066CDC: .4byte gUnknown_202DFE8 -_08066CE0: .4byte 0x0000014d -_08066CE4: .4byte gUnknown_80F8DB4 -_08066CE8: .4byte gUnknown_203B418 -_08066CEC: .4byte 0x00003a08 - thumb_func_end sub_8066BD4 - - thumb_func_start sub_8066CF0 -sub_8066CF0: - push {lr} - movs r1, 0 - bl sub_8044DA4 - ldr r0, [r0, 0x70] - adds r0, 0xFC - movs r1, 0x1 - strb r1, [r0] - pop {r0} - bx r0 - thumb_func_end sub_8066CF0 - - thumb_func_start sub_8066D04 -sub_8066D04: - push {r4-r6,lr} - adds r4, r0, 0 - ldr r6, [r4, 0x70] - movs r1, 0 - movs r2, 0x4 - bl sub_8044D90 - adds r5, r0, 0 - ldr r0, _08066D2C - adds r1, r5, 0 - bl sub_8045BF8 - adds r0, r6, 0 - adds r0, 0x48 - ldrb r0, [r0] - cmp r0, 0x80 - bne _08066D34 - ldr r0, _08066D30 - b _08066DB2 - .align 2, 0 -_08066D2C: .4byte gUnknown_202DE58 -_08066D30: .4byte gUnknown_80F8DE0 -_08066D34: - cmp r0, 0x14 - bhi _08066D4C - ldrb r1, [r5] - movs r0, 0x18 - ands r0, r1 - cmp r0, 0x18 - bne _08066D4C - ldr r0, _08066D48 - b _08066DB2 - .align 2, 0 -_08066D48: .4byte gUnknown_80F8BE0 -_08066D4C: - adds r0, r6, 0 - adds r0, 0x48 - ldrb r0, [r0] - cmp r0, 0x81 - bne _08066D68 - ldrb r1, [r5] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08066D68 - ldr r0, _08066D64 - b _08066DB2 - .align 2, 0 -_08066D64: .4byte gUnknown_80F8BE0 -_08066D68: - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - bne _08066DB0 - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _08066DB0 - ldr r6, [r2, 0x14] - cmp r6, 0 - bne _08066DB0 - ldrb r1, [r5] - movs r0, 0xEF - ands r0, r1 - strb r0, [r5] - ldr r0, _08066DBC - adds r1, r5, 0 - bl sub_8045BF8 - adds r0, r4, 0x4 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80460F8 - lsls r0, 24 - cmp r0, 0 - bne _08066DC4 -_08066DB0: - ldr r0, _08066DC0 -_08066DB2: - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - b _08066DF8 - .align 2, 0 -_08066DBC: .4byte gUnknown_202DE58 -_08066DC0: .4byte gUnknown_80F8E04 -_08066DC4: - strb r6, [r5, 0x2] - strb r6, [r5, 0x1] - strb r6, [r5] - bl sub_80910B4 - ldr r0, _08066E00 - bl sub_8083E38 - ldr r0, _08066E04 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08066E08 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - ldr r0, _08066E0C - ldr r0, [r0] - ldr r1, _08066E10 - adds r0, r1 - ldrb r1, [r0] - adds r0, r4, 0 - bl sub_807AB38 -_08066DF8: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08066E00: .4byte 0x0000014d -_08066E04: .4byte gUnknown_202DF98 -_08066E08: .4byte gUnknown_80F8E28 -_08066E0C: .4byte gUnknown_203B418 -_08066E10: .4byte 0x00003a08 - thumb_func_end sub_8066D04 - - thumb_func_start sub_8066E14 -sub_8066E14: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - mov r9, r0 - ldr r0, [r0, 0x70] - mov r10, r0 - mov r0, r9 - movs r1, 0 - movs r2, 0x5 - bl sub_8044D90 - adds r6, r0, 0 - mov r0, r9 - movs r1, 0x1 - movs r2, 0x6 - bl sub_8044D90 - adds r2, r0, 0 - adds r7, r2, 0 - mov r0, r10 - adds r0, 0x48 - ldrb r0, [r0] - cmp r0, 0x80 - beq _08066E54 - ldr r0, _08066E50 - b _08066F1E - .align 2, 0 -_08066E50: .4byte gUnknown_80F8E2C -_08066E54: - mov r0, r10 - adds r0, 0x50 - ldrb r1, [r0] - str r0, [sp, 0x8] - cmp r1, 0x14 - bhi _08066E80 - ldrb r1, [r2] - movs r0, 0x18 - ands r0, r1 - cmp r0, 0x18 - bne _08066E80 - ldr r0, _08066E78 - adds r1, r2, 0 - bl sub_8045BF8 - ldr r0, _08066E7C - b _08066F1E - .align 2, 0 -_08066E78: .4byte gUnknown_202DE58 -_08066E7C: .4byte gUnknown_80F8BE0 -_08066E80: - ldr r1, [sp, 0x8] - ldrb r0, [r1] - cmp r0, 0x81 - bne _08066EA8 - adds r2, r7, 0 - ldrb r1, [r2] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08066EA8 - ldr r0, _08066EA0 - adds r1, r2, 0 - bl sub_8045BF8 - ldr r0, _08066EA4 - b _08066F1E - .align 2, 0 -_08066EA0: .4byte gUnknown_202DEA8 -_08066EA4: .4byte gUnknown_80F8C48 -_08066EA8: - mov r2, r9 - movs r3, 0x4 - ldrsh r0, [r2, r3] - movs r3, 0x6 - ldrsh r1, [r2, r3] - bl sub_804954C - ldr r0, [r0, 0x14] - cmp r0, 0 - beq _08066ECC - bl sub_80450F8 - cmp r0, 0x3 - beq _08066ECC - ldr r0, _08066EC8 - b _08066F1E - .align 2, 0 -_08066EC8: .4byte gUnknown_80F8E54 -_08066ECC: - adds r0, r6, 0 - ldr r5, [r0] - str r5, [sp] - adds r4, r7, 0 - ldr r6, [r4] - mov r8, sp - str r6, [sp, 0x4] - movs r3, 0xEF - mov r0, sp - ldrb r2, [r0] - ands r2, r3 - ldr r1, _08066F28 - adds r0, r1, 0 - ands r0, r5 - orrs r0, r2 - str r0, [sp] - mov r2, r8 - ldrb r0, [r2, 0x4] - ands r0, r3 - ands r1, r6 - orrs r1, r0 - str r1, [sp, 0x4] - mov r5, r10 - adds r5, 0x4C - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80461C8 - movs r0, 0 - strb r0, [r4, 0x2] - strb r0, [r4, 0x1] - strb r0, [r4] - add r1, sp, 0x4 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_80460F8 - lsls r0, 24 - cmp r0, 0 - bne _08066F30 - ldr r0, _08066F2C -_08066F1E: - ldr r1, [r0] - mov r0, r9 - bl sub_80522A8 - b _08066F7E - .align 2, 0 -_08066F28: .4byte 0xffffff00 -_08066F2C: .4byte gUnknown_80F8E78 -_08066F30: - ldr r3, [sp, 0x8] - ldrb r0, [r3] - cmp r0, 0x81 - bne _08066F40 - ldr r0, [sp] - mov r1, r10 - str r0, [r1, 0x60] - b _08066F46 -_08066F40: - mov r0, sp - bl sub_8091290 -_08066F46: - bl sub_80910B4 - ldr r4, _08066F90 - add r1, sp, 0x4 - adds r0, r4, 0 - bl sub_8045BF8 - adds r4, 0x50 - adds r0, r4, 0 - mov r1, sp - bl sub_8045BF8 - ldr r0, _08066F94 - bl sub_8083E38 - ldr r0, _08066F98 - ldr r1, [r0] - mov r0, r9 - bl sub_80522A8 - ldr r0, _08066F9C - ldr r0, [r0] - ldr r2, _08066FA0 - adds r0, r2 - ldrb r1, [r0] - mov r0, r9 - bl sub_807AB38 -_08066F7E: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08066F90: .4byte gUnknown_202DE58 -_08066F94: .4byte 0x0000014d -_08066F98: .4byte gUnknown_80F8EAC -_08066F9C: .4byte gUnknown_203B418 -_08066FA0: .4byte 0x00003a08 - thumb_func_end sub_8066E14 - - thumb_func_start sub_8066FA4 -sub_8066FA4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - adds r7, r0, 0 - ldr r0, [r7, 0x70] - mov r9, r0 - movs r1, 0x4 - ldrsh r0, [r7, r1] - movs r2, 0x6 - ldrsh r1, [r7, r2] - bl sub_804954C - mov r10, r0 - adds r0, r7, 0 - movs r1, 0 - movs r2, 0x7 - bl sub_8044D90 - adds r4, r0, 0 - adds r5, r4, 0 - ldr r0, _08067000 - mov r8, r0 - adds r1, r4, 0 - bl sub_8045BF8 - mov r0, r9 - adds r0, 0x48 - ldrb r0, [r0] - cmp r0, 0x14 - bhi _08067008 - ldrb r1, [r4] - movs r0, 0x18 - ands r0, r1 - cmp r0, 0x18 - bne _08067008 - mov r0, r8 - adds r0, 0x50 - adds r1, r4, 0 - bl sub_8045BF8 - ldr r0, _08067004 - b _0806709E - .align 2, 0 -_08067000: .4byte gUnknown_202DE58 -_08067004: .4byte gUnknown_80F8C48 -_08067008: - mov r0, r9 - adds r0, 0x48 - ldrb r1, [r0] - str r0, [sp, 0x8] - cmp r1, 0x81 - bne _08067028 - adds r0, r5, 0 - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08067028 - ldr r0, _08067024 - b _0806709E - .align 2, 0 -_08067024: .4byte gUnknown_80F8C44 -_08067028: - mov r1, r10 - ldr r0, [r1, 0x14] - cmp r0, 0 - beq _08067040 - bl sub_80450F8 - cmp r0, 0x3 - beq _08067040 - ldr r0, _0806703C - b _0806709E - .align 2, 0 -_0806703C: .4byte gUnknown_80F8E54 -_08067040: - mov r2, r10 - ldr r0, [r2, 0x14] - bl sub_8045108 - adds r4, r0, 0 - ldr r0, _080670A8 - adds r1, r4, 0 - bl sub_8045BF8 - ldr r6, [r5] - str r6, [sp] - ldr r4, [r4] - mov r8, sp - str r4, [sp, 0x4] - movs r3, 0xEF - mov r0, sp - ldrb r2, [r0] - ands r2, r3 - ldr r1, _080670AC - adds r0, r1, 0 - ands r0, r6 - orrs r0, r2 - str r0, [sp] - mov r2, r8 - ldrb r0, [r2, 0x4] - ands r0, r3 - ands r1, r4 - orrs r1, r0 - str r1, [sp, 0x4] - adds r4, r7, 0x4 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80461C8 - movs r0, 0 - strb r0, [r5, 0x2] - strb r0, [r5, 0x1] - strb r0, [r5] - adds r0, r4, 0 - mov r1, sp - movs r2, 0x1 - bl sub_80460F8 - lsls r0, 24 - cmp r0, 0 - bne _080670B4 - ldr r0, _080670B0 -_0806709E: - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - b _080670EE - .align 2, 0 -_080670A8: .4byte gUnknown_202DEA8 -_080670AC: .4byte 0xffffff00 -_080670B0: .4byte gUnknown_80F8E78 -_080670B4: - ldr r1, [sp, 0x8] - ldrb r0, [r1] - cmp r0, 0x81 - bne _080670C4 - ldr r0, [sp, 0x4] - mov r2, r9 - str r0, [r2, 0x60] - b _080670CA -_080670C4: - add r0, sp, 0x4 - bl sub_8091290 -_080670CA: - bl sub_80910B4 - ldr r0, _08067100 - bl sub_8083E38 - ldr r0, _08067104 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - ldr r0, _08067108 - ldr r0, [r0] - ldr r1, _0806710C - adds r0, r1 - ldrb r1, [r0] - adds r0, r7, 0 - bl sub_807AB38 -_080670EE: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08067100: .4byte 0x0000014d -_08067104: .4byte gUnknown_80F8EAC -_08067108: .4byte gUnknown_203B418 -_0806710C: .4byte 0x00003a08 - thumb_func_end sub_8066FA4 - - thumb_func_start sub_8067110 -sub_8067110: - push {r4-r6,lr} - sub sp, 0xC - adds r5, r0, 0 - ldr r4, [r5, 0x70] - movs r1, 0 - movs r2, 0x8 - bl sub_8044D90 - adds r6, r0, 0 - ldr r0, _08067190 - adds r1, r6, 0 - bl sub_8045BF8 - ldr r0, _08067194 - adds r1, r4, 0 - movs r2, 0 - bl sub_80708B4 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8048D50 - lsls r0, 24 - cmp r0, 0 - beq _08067188 - adds r0, r6, 0 - bl sub_80464AC - adds r1, r0, 0 - adds r0, r5, 0 - bl sub_80522A8 - ldr r0, [r6] - str r0, [sp, 0x8] - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x66 - bl sub_8044DF0 - movs r0, 0x1E - movs r1, 0x11 - bl sub_803E708 - str r5, [sp] - add r0, sp, 0x8 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0 - adds r3, r5, 0 - bl sub_80479B8 - ldr r0, _08067198 - ldr r0, [r0] - ldr r1, _0806719C - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_807AB38 -_08067188: - add sp, 0xC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08067190: .4byte gUnknown_202DE58 -_08067194: .4byte gUnknown_202DF98 -_08067198: .4byte gUnknown_203B418 -_0806719C: .4byte 0x00003a08 - thumb_func_end sub_8067110 - - thumb_func_start sub_80671A0 -sub_80671A0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - adds r6, r0, 0 - ldr r0, [r6, 0x70] - mov r8, r0 - adds r0, r6, 0 - movs r1, 0 - movs r2, 0x9 - bl sub_8044D90 - adds r4, r0, 0 - mov r0, r8 - adds r0, 0x48 - ldrb r0, [r0] - cmp r0, 0x81 - bne _080671E8 - ldrb r1, [r4] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080671E8 - ldr r0, _080671E0 - adds r1, r4, 0 - bl sub_8045BF8 - ldr r0, _080671E4 - b _08067230 - .align 2, 0 -_080671E0: .4byte gUnknown_202DE58 -_080671E4: .4byte gUnknown_80F8BE0 -_080671E8: - ldrb r0, [r4, 0x2] - bl sub_8090BD0 - lsls r0, 24 - cmp r0, 0 - beq _08067202 - ldrb r0, [r4, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08067220 -_08067202: - ldrb r1, [r4] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08067220 - ldr r0, _08067218 - adds r1, r4, 0 - bl sub_8045BF8 - ldr r0, _0806721C - b _08067230 - .align 2, 0 -_08067218: .4byte gUnknown_202DE58 -_0806721C: .4byte gUnknown_80F8BE0 -_08067220: - adds r0, r6, 0 - movs r1, 0x1 - bl sub_8071518 - lsls r0, 24 - cmp r0, 0 - beq _08067248 - ldr r0, _08067244 -_08067230: - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - movs r0, 0x14 - movs r1, 0x4C - bl sub_803E708 - b _080674F8 - .align 2, 0 -_08067244: .4byte gUnknown_80FF76C -_08067248: - ldr r2, [r4] - str r2, [sp, 0x4] - movs r1, 0xEF - add r0, sp, 0x4 - ldrb r0, [r0] - ands r0, r1 - ldr r1, _080672C0 - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x4] - mov r0, r8 - adds r0, 0x48 - ldrb r1, [r0] - adds r5, r0, 0 - cmp r1, 0x80 - bne _08067272 - movs r4, 0 - adds r0, 0x4 - movs r1, 0x1 - bl sub_80461C8 -_08067272: - movs r7, 0x1 - ldr r0, [sp, 0x4] - lsrs r0, 16 - lsls r0, 24 - lsrs r0, 24 - bl sub_8090BD0 - lsls r0, 24 - cmp r0, 0 - beq _0806729A - ldr r0, [sp, 0x4] - lsrs r0, 16 - lsls r0, 24 - lsrs r0, 24 - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080672A8 -_0806729A: - ldr r0, [sp, 0x4] - lsrs r0, 8 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _080672A8 - movs r7, 0 -_080672A8: - cmp r7, 0 - beq _080672C4 - ldrb r0, [r5] - cmp r0, 0x80 - beq _080672F6 - movs r0, 0 - strb r0, [r4, 0x2] - strb r0, [r4, 0x1] - strb r0, [r4] - bl sub_80910B4 - b _080672F6 - .align 2, 0 -_080672C0: .4byte 0xffffff00 -_080672C4: - ldrb r0, [r5] - cmp r0, 0x80 - bne _080672F0 - ldr r2, [sp, 0x4] - lsrs r0, r2, 8 - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 16 - ldr r1, _080672EC - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x4] - mov r0, r8 - adds r0, 0x4C - add r1, sp, 0x4 - movs r2, 0x1 - bl sub_80460F8 - b _080672F6 - .align 2, 0 -_080672EC: .4byte 0xffff00ff -_080672F0: - ldrb r0, [r4, 0x1] - subs r0, 0x1 - strb r0, [r4, 0x1] -_080672F6: - adds r0, r6, 0 - movs r1, 0x29 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08067310 - movs r0, 0x8 - bl sub_8084100 - mov r1, r8 - adds r1, 0x46 - strb r0, [r1] -_08067310: - adds r0, r6, 0 - bl sub_8045888 - lsls r0, 24 - movs r1, 0xE0 - add r1, r8 - mov r10, r1 - adds r1, r6, 0x4 - str r1, [sp, 0x10] - add r1, sp, 0xC - mov r9, r1 - cmp r0, 0 - beq _08067364 - mov r0, r8 - adds r0, 0x46 - ldrb r4, [r0] - movs r1, 0xB2 - lsls r1, 1 - adds r0, r6, 0 - bl sub_80421C0 - movs r7, 0x7 - movs r5, 0x7 -_0806733E: - subs r4, 0x1 - ands r4, r7 - adds r0, r6, 0 - movs r1, 0 - adds r2, r4, 0 - bl sub_806CDD4 - movs r0, 0x2 - movs r1, 0x15 - bl sub_803E708 - subs r5, 0x1 - cmp r5, 0 - bge _0806733E - movs r1, 0xB3 - lsls r1, 1 - add r1, r8 - movs r0, 0x4 - strb r0, [r1] -_08067364: - add r4, sp, 0x4 - ldrb r0, [r4, 0x2] - bl sub_8090BD0 - lsls r0, 24 - cmp r0, 0 - beq _08067380 - ldrb r0, [r4, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08067384 -_08067380: - movs r0, 0x1 - strb r0, [r4, 0x1] -_08067384: - ldr r0, _080673B0 - add r4, sp, 0x4 - adds r1, r4, 0 - bl sub_8045C08 - ldr r0, _080673B4 - mov r1, r8 - movs r2, 0 - bl sub_80708B4 - ldrb r0, [r4, 0x2] - bl sub_8090BD0 - lsls r0, 24 - cmp r0, 0 - bne _080673BC - ldr r0, _080673B8 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - b _080673C6 - .align 2, 0 -_080673B0: .4byte gUnknown_202DE58 -_080673B4: .4byte gUnknown_202DF98 -_080673B8: .4byte gUnknown_80F8EC8 -_080673BC: - ldr r0, _080673F8 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 -_080673C6: - add r0, sp, 0x4 - ldrb r0, [r0, 0x2] - bl sub_8090BD0 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - bl sub_8042208 - adds r0, r6, 0 - movs r1, 0x27 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08067400 - ldr r0, _080673FC - ldr r1, [sp, 0xC] - ands r1, r0 - movs r0, 0x80 - lsls r0, 1 - orrs r1, r0 - str r1, [sp, 0xC] - b _08067408 - .align 2, 0 -_080673F8: .4byte gUnknown_80F8EC4 -_080673FC: .4byte 0xffff00ff -_08067400: - ldr r1, _0806741C - ldr r0, [sp, 0xC] - ands r0, r1 - str r0, [sp, 0xC] -_08067408: - mov r1, r10 - ldrb r0, [r1] - cmp r0, 0x1 - beq _08067440 - cmp r0, 0x1 - bgt _08067420 - cmp r0, 0 - beq _08067426 - b _08067462 - .align 2, 0 -_0806741C: .4byte 0xffff00ff -_08067420: - cmp r0, 0x2 - beq _0806744C - b _08067462 -_08067426: - ldr r1, _08067438 - ldr r0, [sp, 0xC] - ands r0, r1 - ldr r1, _0806743C - ands r0, r1 - movs r1, 0xA0 - lsls r1, 12 - b _0806745E - .align 2, 0 -_08067438: .4byte 0xffffff00 -_0806743C: .4byte 0x0000ffff -_08067440: - ldr r1, _08067448 - ldr r0, [sp, 0xC] - ands r0, r1 - b _08067456 - .align 2, 0 -_08067448: .4byte 0xffffff00 -_0806744C: - ldr r1, _080674B4 - ldr r0, [sp, 0xC] - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 -_08067456: - ldr r1, _080674B8 - ands r0, r1 - movs r1, 0xC6 - lsls r1, 15 -_0806745E: - orrs r0, r1 - str r0, [sp, 0xC] -_08067462: - adds r0, r6, 0 - movs r1, 0xF - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08067486 - ldr r1, _080674B4 - ldr r0, [sp, 0xC] - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - ldr r1, _080674B8 - ands r0, r1 - movs r1, 0xC6 - lsls r1, 15 - orrs r0, r1 - str r0, [sp, 0xC] -_08067486: - add r0, sp, 0x4 - ldrb r0, [r0, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080674BC - add r4, sp, 0x8 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_8083904 - mov r0, r9 - str r0, [sp] - adds r0, r6, 0 - add r1, sp, 0x4 - ldr r2, [sp, 0x10] - adds r3, r4, 0 - bl sub_80475C4 - b _080674D0 - .align 2, 0 -_080674B4: .4byte 0xffffff00 -_080674B8: .4byte 0x0000ffff -_080674BC: - mov r0, r8 - adds r0, 0x46 - ldrb r3, [r0] - mov r1, r9 - str r1, [sp] - adds r0, r6, 0 - add r1, sp, 0x4 - ldr r2, [sp, 0x10] - bl sub_8047190 -_080674D0: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080674F8 - mov r0, r8 - adds r0, 0x46 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_806CE68 - ldr r0, _08067508 - ldr r0, [r0] - ldr r1, _0806750C - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_807AB38 -_080674F8: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08067508: .4byte gUnknown_203B418 -_0806750C: .4byte 0x00003a08 - thumb_func_end sub_80671A0 - - thumb_func_start sub_8067510 -sub_8067510: - push {r4,lr} - adds r4, r0, 0 - bl sub_806773C - adds r1, r0, 0 - movs r2, 0x1 - negs r2, r2 - adds r0, r4, 0 - bl sub_8067558 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8067510 - - thumb_func_start sub_806752C -sub_806752C: - push {r4,lr} - ldr r1, _08067550 - ldr r1, [r1] - ldrb r0, [r0, 0x4] - lsls r0, 2 - ldr r2, _08067554 - adds r1, r2 - adds r1, r0 - ldr r4, [r1] - bl sub_8083600 - adds r1, r4, 0 - movs r2, 0 - bl sub_8067558 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08067550: .4byte gUnknown_203B418 -_08067554: .4byte 0x0001357c - thumb_func_end sub_806752C - - thumb_func_start sub_8067558 -sub_8067558: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x12C - adds r6, r0, 0 - adds r5, r1, 0 - mov r9, r2 - ldr r0, [r6, 0x70] - mov r8, r0 - cmp r5, 0 - bne _0806757C - ldr r0, _08067578 - ldr r1, [r0] - movs r0, 0 - b _08067716 - .align 2, 0 -_08067578: .4byte gUnknown_80F8EE4 -_0806757C: - adds r0, r6, 0 - bl sub_8070BC0 - lsls r0, 24 - cmp r0, 0 - bne _08067594 - ldr r0, _08067590 - ldr r1, [r0] - movs r0, 0 - b _08067716 - .align 2, 0 -_08067590: .4byte gUnknown_80F8EE4 -_08067594: - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080675AA - b _0806771E -_080675AA: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080675C0 - b _0806771E -_080675C0: - ldr r7, [r5, 0x70] - ldr r4, _08067608 - adds r0, r4, 0 - adds r1, r7, 0 - movs r2, 0 - bl sub_80708B4 - adds r4, 0x50 - adds r0, r4, 0 - mov r1, r8 - movs r2, 0x7 - bl sub_80708B4 - bl sub_8084778 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_807A96C - adds r0, r5, 0 - bl sub_8070BC0 - lsls r0, 24 - cmp r0, 0 - beq _08067600 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - beq _08067610 -_08067600: - ldr r0, _0806760C - ldr r1, [r0] - movs r0, 0 - b _08067716 - .align 2, 0 -_08067608: .4byte gUnknown_202DF98 -_0806760C: .4byte gUnknown_80FE008 -_08067610: - adds r0, r6, 0x4 - adds r1, r5, 0x4 - bl sub_80983D8 - adds r1, r0, 0 - adds r0, r6, 0 - bl sub_806CEFC - mov r1, r9 - cmp r1, 0 - blt _0806762E - adds r0, r5, 0 - bl sub_806CEFC - b _0806763C -_0806762E: - mov r0, r8 - adds r0, 0x46 - ldrb r1, [r0] - adds r1, 0x4 - adds r0, r5, 0 - bl sub_806CEFC -_0806763C: - ldrb r0, [r7, 0x8] - cmp r0, 0x1 - bne _08067648 - bl sub_807EF84 - b _0806772A -_08067648: - adds r0, r7, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08067694 - ldr r0, _08067668 - ldr r1, [r0] - ldr r2, _0806766C - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08067674 - ldr r0, _08067670 - ldr r1, [r0] - movs r0, 0 - b _08067716 - .align 2, 0 -_08067668: .4byte gUnknown_203B418 -_0806766C: .4byte 0x0000066e -_08067670: .4byte gUnknown_80FF674 -_08067674: - ldr r3, _08067688 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0806768C - adds r0, r5, 0 - bl sub_80845E0 - b _0806772A - .align 2, 0 -_08067688: .4byte 0x00000677 -_0806768C: - adds r0, r5, 0 - bl sub_8084448 - b _0806772A -_08067694: - movs r0, 0x4 - ldrsh r5, [r7, r0] - movs r6, 0 - adds r0, r7, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - bne _080676AA - movs r5, 0xD2 - lsls r5, 1 - b _080676CC -_080676AA: - cmp r0, 0x47 - bne _080676B8 - ldr r5, _080676B4 - b _080676CC - .align 2, 0 -_080676B4: .4byte 0x000001a5 -_080676B8: - cmp r0, 0x41 - bne _080676CC - ldr r0, _080676E8 - ldr r0, [r0] - ldr r1, _080676EC - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080676CC - movs r6, 0x1 -_080676CC: - movs r3, 0x10 - ldrsh r2, [r7, r3] - adds r0, r2, 0 - cmp r2, 0 - bge _080676D8 - adds r0, r2, 0x3 -_080676D8: - movs r3, 0xE - ldrsh r1, [r7, r3] - asrs r0, 2 - cmp r1, r0 - bgt _080676F0 - movs r2, 0x2 - b _08067708 - .align 2, 0 -_080676E8: .4byte gUnknown_203B418 -_080676EC: .4byte 0x0000065c -_080676F0: - movs r0, 0xE - ldrsh r4, [r7, r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 1 - movs r1, 0xA - bl __divsi3 - movs r2, 0 - cmp r4, r0 - bgt _08067708 - movs r2, 0x1 -_08067708: - mov r0, sp - adds r1, r5, 0 - adds r3, r6, 0 - bl sub_806A3D4 - movs r0, 0 - mov r1, sp -_08067716: - movs r2, 0x1 - bl PrintFieldMessage - b _0806772A -_0806771E: - ldr r0, _08067738 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_0806772A: - add sp, 0x12C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08067738: .4byte gUnknown_80F8EE4 - thumb_func_end sub_8067558 - - thumb_func_start sub_806773C -sub_806773C: - push {r4,r5,lr} - adds r5, r0, 0 - bl sub_80696A8 - adds r4, r0, 0 - cmp r4, 0 - beq _08067760 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _08067760 - ldr r0, [r5, 0x70] - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _08067760 - adds r0, r4, 0 - b _08067762 -_08067760: - movs r0, 0 -_08067762: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806773C - - thumb_func_start sub_8067768 -sub_8067768: - push {r4,lr} - ldr r1, _0806778C - ldr r1, [r1] - ldrb r0, [r0, 0x4] - lsls r0, 2 - ldr r2, _08067790 - adds r1, r2 - adds r1, r0 - ldr r4, [r1] - bl sub_8083600 - adds r1, r4, 0 - movs r2, 0 - bl sub_8067794 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806778C: .4byte gUnknown_203B418 -_08067790: .4byte 0x0001357c - thumb_func_end sub_8067768 - - thumb_func_start sub_8067794 -sub_8067794: - push {r4-r7,lr} - sub sp, 0x40 - adds r7, r1, 0 - ldr r4, [r7, 0x70] - cmp r7, 0 - bne _080677B4 - ldr r0, _080677B0 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _0806786C - .align 2, 0 -_080677B0: .4byte gUnknown_80F8F08 -_080677B4: - ldr r0, _080677F0 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _080677F4 - ldr r5, [r0] - ldr r0, _080677F8 - ldr r6, [r0] - ldrb r2, [r4, 0xA] - cmp r2, 0 - blt _08067834 - ldr r1, _080677FC - movs r0, 0x64 - muls r0, r2 - ldr r2, _08067800 - adds r0, r2 - ldr r1, [r1] - adds r4, r1, r0 - movs r1, 0xA - ldrsh r0, [r4, r1] - bl sub_806A564 - lsls r0, 24 - cmp r0, 0 - beq _0806780C - ldr r0, _08067804 - ldr r5, [r0] - ldr r0, _08067808 - b _08067832 - .align 2, 0 -_080677F0: .4byte gUnknown_202DF98 -_080677F4: .4byte gUnknown_80F9094 -_080677F8: .4byte gUnknown_80F913C -_080677FC: .4byte gUnknown_203B45C -_08067800: .4byte 0x00008df8 -_08067804: .4byte gUnknown_80F9114 -_08067808: .4byte gUnknown_80F9154 -_0806780C: - movs r2, 0xA - ldrsh r0, [r4, r2] - bl sub_806A58C - lsls r0, 24 - cmp r0, 0 - beq _08067834 - bl sub_8044210 - lsls r0, 24 - cmp r0, 0 - beq _0806782C - ldr r0, _08067828 - b _0806782E - .align 2, 0 -_08067828: .4byte gUnknown_80F90DC -_0806782C: - ldr r0, _08067874 -_0806782E: - ldr r5, [r0] - ldr r0, _08067878 -_08067832: - ldr r6, [r0] -_08067834: - movs r0, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_8052B8C - cmp r0, 0x1 - bne _0806786C - ldr r4, _0806787C - mov r0, sp - adds r1, r4, 0 - movs r2, 0x40 - bl strncpy - ldr r1, _08067880 - adds r0, r7, 0 - movs r2, 0 - bl sub_8068FE0 - adds r0, r4, 0 - mov r1, sp - movs r2, 0x40 - bl strncpy - movs r0, 0 - adds r1, r6, 0 - movs r2, 0x1 - bl PrintFieldMessage -_0806786C: - add sp, 0x40 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08067874: .4byte gUnknown_80F90C8 -_08067878: .4byte gUnknown_80F9150 -_0806787C: .4byte gUnknown_202DF98 -_08067880: .4byte 0x0000021d - thumb_func_end sub_8067794 - - thumb_func_start sub_8067884 -sub_8067884: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - movs r6, 0 - b _0806789A -_0806788E: - ldr r1, _08067900 - adds r0, r4, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080678C6 - adds r6, 0x1 -_0806789A: - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8070828 - cmp r6, r0 - bge _080678C6 - ldr r4, [r5, 0x70] - adds r0, r4, 0 - adds r0, 0x50 - ldrb r1, [r0] - movs r0, 0 - str r0, [sp] - adds r0, r5, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8055A00 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _0806788E -_080678C6: - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8057588 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _080678F6 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080678F0 - ldr r0, [r5, 0x70] - adds r0, 0x50 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_806A9B4 -_080678F0: - adds r0, r5, 0 - bl sub_806A1B0 -_080678F6: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08067900: .4byte 0x00000159 - thumb_func_end sub_8067884 - - thumb_func_start sub_8067904 -sub_8067904: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - adds r5, r0, 0 - lsls r1, 16 - lsrs r1, 16 - mov r9, r1 - ldr r6, [r5, 0x70] - ldr r1, _08067940 - movs r0, 0 - str r0, [r1] - add r0, sp, 0x8 - mov r1, r9 - bl sub_8092A88 - adds r0, r6, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806794C - ldr r0, _08067944 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08067948 - b _08067962 - .align 2, 0 -_08067940: .4byte gUnknown_202F208 -_08067944: .4byte gUnknown_202DF98 -_08067948: .4byte gUnknown_80F8F20 -_0806794C: - adds r0, r6, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x4 - bne _08067974 - ldr r0, _0806796C - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08067970 -_08067962: - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _08067A56 - .align 2, 0 -_0806796C: .4byte gUnknown_202DF98 -_08067970: .4byte gUnknown_80F8F38 -_08067974: - movs r0, 0xB0 - lsls r0, 1 - movs r1, 0 - mov r10, r1 - cmp r9, r0 - bne _08067984 - movs r2, 0x1 - mov r10, r2 -_08067984: - movs r0, 0 - mov r8, r0 - movs r7, 0 - add r4, sp, 0x8 - b _080679D2 -_0806798E: - movs r1, 0xBC - lsls r1, 1 - adds r0, r6, r1 - strh r7, [r0] - ldrb r0, [r4] - movs r1, 0x8 - orrs r0, r1 - orrs r0, r7 - movs r1, 0x4 - orrs r0, r1 - strb r0, [r4] - movs r0, 0xA - strb r0, [r4, 0x4] - str r7, [sp] - str r4, [sp, 0x4] - adds r0, r5, 0 - mov r1, r10 - movs r2, 0 - movs r3, 0 - bl sub_8055FA0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080679DE - ldr r2, _08067A68 - adds r0, r6, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080679DE - movs r0, 0x1 - add r8, r0 -_080679D2: - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8070828 - cmp r8, r0 - blt _0806798E -_080679DE: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08067A56 - movs r0, 0xB0 - lsls r0, 1 - cmp r9, r0 - bne _08067A04 - ldr r0, _08067A6C - ldr r0, [r0] - cmp r0, 0 - bne _08067A04 - ldr r0, _08067A70 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_08067A04: - ldrb r0, [r6, 0x7] - cmp r0, 0 - beq _08067A50 - movs r0, 0xB0 - lsls r0, 1 - cmp r9, r0 - beq _08067A50 - ldr r4, _08067A74 - adds r3, r6, 0 - adds r3, 0x46 - ldrb r0, [r3] - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0] - ldrh r1, [r5, 0x4] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r2, _08067A78 - ldr r1, [sp, 0x10] - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x10] - ldrb r0, [r3] - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x2] - ldrh r2, [r5, 0x6] - adds r0, r2 - lsls r0, 16 - ldr r2, _08067A7C - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x10] - add r0, sp, 0x10 - movs r1, 0x1 - bl sub_807FE44 -_08067A50: - adds r0, r5, 0 - bl sub_8071DA4 -_08067A56: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08067A68: .4byte 0x00000159 -_08067A6C: .4byte gUnknown_202F208 -_08067A70: .4byte gUnknown_80FC690 -_08067A74: .4byte gUnknown_80F4448 -_08067A78: .4byte 0xffff0000 -_08067A7C: .4byte 0x0000ffff - thumb_func_end sub_8067904 - - thumb_func_start sub_8067A80 -sub_8067A80: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x6C - str r1, [sp, 0x68] - mov r8, r2 - mov r9, r3 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x64] - ldr r1, _08067AC8 - add r0, sp, 0x4 - movs r2, 0x60 - bl memcpy - ldr r1, _08067ACC - movs r0, 0 - str r0, [r1] - mov r10, r0 - cmp r10, r8 - blt _08067AB0 - b _08067ED8 -_08067AB0: - ldr r5, _08067AD0 - mov r4, r9 - mov r3, r8 -_08067AB6: - ldm r4!, {r2} - ldrh r1, [r2] - adds r0, r5, 0 - ands r0, r1 - strh r0, [r2] - subs r3, 0x1 - cmp r3, 0 - bne _08067AB6 - b _08067ED8 - .align 2, 0 -_08067AC8: .4byte gUnknown_8106DC8 -_08067ACC: .4byte gUnknown_202F30C -_08067AD0: .4byte 0x00007fff -_08067AD4: - movs r7, 0 - ldr r1, _08067B98 - movs r0, 0x1 - strb r0, [r1] - strb r7, [r1, 0x1] - movs r0, 0xE - strb r0, [r1, 0x2] - strb r7, [r1, 0x3] - add r0, sp, 0x4 - movs r1, 0x1 - bl sub_803ECB4 - ldr r5, _08067B9C - ldr r2, [r5] - ldr r0, [sp, 0x68] - str r0, [sp] - ldr r0, [sp, 0x64] - mov r1, r9 - mov r3, r8 - bl sub_8067F00 - ldr r4, _08067BA0 - mov r0, r8 - cmp r0, 0x8 - ble _08067B08 - movs r0, 0x8 -_08067B08: - strh r0, [r4, 0x1A] - mov r1, r10 - strh r1, [r4, 0x18] - movs r0, 0x8 - strh r0, [r4, 0x1C] - strh r7, [r4, 0x1E] - strh r7, [r4, 0x20] - strh r7, [r4, 0x4] - movs r0, 0x12 - strh r0, [r4, 0x6] - strh r7, [r4, 0xC] - strh r7, [r4, 0xE] - strh r7, [r4, 0x14] - str r7, [r4] - adds r0, r4, 0 - adds r0, 0x28 - bl sub_801317C - adds r0, r4, 0 - movs r1, 0 - bl sub_80137B0 - adds r6, r5, 0 -_08067B36: - ldr r0, _08067BA0 - bl AddMenuCursorSprite - movs r5, 0 - movs r7, 0 - ldr r0, [r6] - mov r2, r8 - subs r0, r2, r0 - cmp r0, 0x8 - ble _08067B50 - movs r5, 0x1 - bl sub_80684C4 -_08067B50: - ldr r0, [r6] - cmp r0, 0 - beq _08067B5C - movs r7, 0x1 - bl sub_8068344 -_08067B5C: - movs r0, 0 - ldr r1, _08067BA4 - bl sub_8014140 - adds r4, r0, 0 - movs r0, 0x37 - bl sub_803E46C - cmp r4, 0x2 - bne _08067BAC - cmp r5, 0 - beq _08067BAC - ldr r0, [r6] - mov r3, r8 - subs r0, r3, r0 - cmp r0, 0x8 - ble _08067BF0 - ldr r5, _08067BA8 - movs r4, 0x5 -_08067B82: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x37 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08067B82 - b _08067BEA - .align 2, 0 -_08067B98: .4byte gUnknown_202F308 -_08067B9C: .4byte gUnknown_202F30C -_08067BA0: .4byte gUnknown_202EE10 -_08067BA4: .4byte gUnknown_8106DA4 -_08067BA8: .4byte gUnknown_203B080 -_08067BAC: - ldr r0, _08067BF8 - ldrh r1, [r0, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08067C0C - movs r0, 0x1 - bl sub_8083CE0 - ldr r1, _08067BFC - movs r2, 0x18 - ldrsh r0, [r1, r2] - cmp r0, 0x7 - bne _08067C04 - ldr r0, [r6] - mov r3, r8 - subs r0, r3, r0 - cmp r0, 0x8 - ble _08067BF0 - ldr r5, _08067C00 - movs r4, 0x5 -_08067BD6: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x37 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08067BD6 -_08067BEA: - ldr r0, [r6] - adds r0, 0x1 - str r0, [r6] -_08067BF0: - movs r7, 0 - movs r0, 0x7 - mov r10, r0 - b _08067CF6 - .align 2, 0 -_08067BF8: .4byte gUnknown_20255F0 -_08067BFC: .4byte gUnknown_202EE10 -_08067C00: .4byte gUnknown_203B080 -_08067C04: - adds r0, r1, 0 - movs r1, 0 - bl sub_80136E0 -_08067C0C: - cmp r4, 0x1 - bne _08067C44 - cmp r7, 0 - beq _08067C44 - ldr r0, [r6] - cmp r0, 0 - beq _08067C38 - ldr r5, _08067C40 - movs r4, 0x5 -_08067C1E: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x37 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08067C1E - ldr r0, [r6] - subs r0, 0x1 - str r0, [r6] -_08067C38: - movs r7, 0 - movs r1, 0 - mov r10, r1 - b _08067CF6 - .align 2, 0 -_08067C40: .4byte gUnknown_203B084 -_08067C44: - ldr r0, _08067C8C - ldrh r1, [r0, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08067CA0 - movs r0, 0x1 - bl sub_8083CE0 - ldr r1, _08067C90 - movs r2, 0x18 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _08067C98 - ldr r0, [r6] - cmp r0, 0 - beq _08067C84 - ldr r5, _08067C94 - movs r4, 0x5 -_08067C6A: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x37 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08067C6A - ldr r0, [r6] - subs r0, 0x1 - str r0, [r6] -_08067C84: - movs r7, 0 - movs r3, 0 - mov r10, r3 - b _08067CF6 - .align 2, 0 -_08067C8C: .4byte gUnknown_20255F0 -_08067C90: .4byte gUnknown_202EE10 -_08067C94: .4byte gUnknown_203B084 -_08067C98: - adds r0, r1, 0 - movs r1, 0 - bl sub_8013744 -_08067CA0: - bl sub_80048C8 - lsls r0, 24 - cmp r0, 0 - beq _08067CAC - b _08067B36 -_08067CAC: - ldr r0, _08067CD4 - ldrh r1, [r0, 0x2] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _08067D40 - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08067CCC - ldr r2, _08067CD8 - adds r0, r2, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08067CDC -_08067CCC: - bl sub_8083D08 - movs r7, 0x1 - b _08067CF6 - .align 2, 0 -_08067CD4: .4byte gUnknown_20255F0 -_08067CD8: .4byte gUnknown_202EE10 -_08067CDC: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08067CF0 - adds r0, r2, 0 - adds r0, 0x2A - ldrb r0, [r0] - cmp r0, 0 - bne _08067CF0 - b _08067B36 -_08067CF0: - bl sub_8083D30 - movs r7, 0x2 -_08067CF6: - ldr r4, _08067D34 - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x37 - bl sub_803E46C - cmp r7, 0 - bne _08067D0A - b _08067AD4 -_08067D0A: - cmp r7, 0x2 - bne _08067D48 - movs r1, 0x18 - ldrsh r0, [r4, r1] - mov r10, r0 - ldr r0, _08067D38 - ldr r0, [r0] - ldr r2, [sp, 0x68] - cmp r0, r2 - bge _08067D20 - b _08067AD4 -_08067D20: - ldr r0, _08067D3C - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - bne _08067D32 - b _08067ED8 -_08067D32: - b _08067AD4 - .align 2, 0 -_08067D34: .4byte gUnknown_202EE10 -_08067D38: .4byte gUnknown_202F310 -_08067D3C: .4byte gUnknown_80FDFB8 -_08067D40: - bl sub_8083D1C - movs r7, 0x3 - b _08067CF6 -_08067D48: - cmp r7, 0x3 - bne _08067D64 - movs r0, 0x18 - ldrsh r3, [r4, r0] - mov r10, r3 - ldr r0, _08067D60 - ldr r0, [r0] - add r0, r10 - lsls r0, 2 - add r0, r9 - b _08067ED0 - .align 2, 0 -_08067D60: .4byte gUnknown_202F30C -_08067D64: - movs r2, 0x18 - ldrsh r1, [r4, r2] - mov r10, r1 - ldr r0, _08067DAC - ldr r0, [r0] - adds r4, r0, r1 - ldr r1, _08067DB0 - movs r0, 0 - str r0, [r1] - movs r0, 0x29 - movs r1, 0 - bl sub_8044F5C - movs r0, 0x2A - movs r1, 0 - bl sub_8044F5C - movs r0, 0x40 - movs r1, 0 - bl sub_8044F5C - lsls r0, r4, 2 - add r0, r9 - ldr r0, [r0] - ldrh r0, [r0] - movs r3, 0x80 - lsls r3, 8 - adds r1, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08067DBC - movs r0, 0x29 - bl sub_8044FF0 - b _08067DC2 - .align 2, 0 -_08067DAC: .4byte gUnknown_202F30C -_08067DB0: .4byte gUnknown_202EE6C -_08067DB4: - bl sub_8083D08 - movs r7, 0x1 - b _08067E6E -_08067DBC: - movs r0, 0x2A - bl sub_8044FF0 -_08067DC2: - lsls r0, r4, 2 - mov r2, r9 - adds r1, r0, r2 - ldr r2, [r1] - ldrb r1, [r2, 0x2] - adds r6, r0, 0 - cmp r1, 0 - bne _08067DDC - ldrb r1, [r2, 0x4] - cmp r1, 0x40 - beq _08067DDC - cmp r1, 0x41 - bne _08067DE2 -_08067DDC: - movs r0, 0x29 - bl sub_8044FF0 -_08067DE2: - bl sub_8045064 - add r0, sp, 0x4 - movs r1, 0x15 - bl sub_805FC30 - ldr r4, _08067EA0 - ldr r5, _08067EA4 - adds r7, r4, 0 - adds r7, 0x2A -_08067DF6: - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x37 - bl sub_803E46C - ldrh r1, [r5, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08067E1A - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80136E0 -_08067E1A: - ldrh r1, [r5, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08067E32 - movs r0, 0x1 - bl sub_8083CE0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8013744 -_08067E32: - ldrh r1, [r5, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08067E46 - adds r0, r4, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _08067E58 -_08067E46: - movs r3, 0x18 - ldrsh r0, [r4, r3] - bl sub_8044F3C - lsls r0, 24 - cmp r0, 0 - bne _08067DB4 - bl sub_8083D30 -_08067E58: - ldrh r1, [r5, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08067E68 - ldrb r0, [r7] - cmp r0, 0 - beq _08067DF6 -_08067E68: - bl sub_8083D30 - movs r7, 0 -_08067E6E: - ldr r4, _08067EA0 - adds r0, r4, 0 - bl AddMenuCursorSprite - movs r0, 0x37 - bl sub_803E46C - cmp r7, 0 - bne _08067E82 - b _08067AD4 -_08067E82: - movs r1, 0x18 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _08067EA8 - mov r2, r9 - adds r0, r6, r2 - ldr r1, [r0] - ldrh r2, [r1] - movs r3, 0x80 - lsls r3, 8 - adds r0, r3, 0 - orrs r0, r2 - strh r0, [r1] - b _08067EBC - .align 2, 0 -_08067EA0: .4byte gUnknown_202EE10 -_08067EA4: .4byte gUnknown_20255F0 -_08067EA8: - cmp r0, 0x1 - bne _08067ECC - mov r1, r9 - adds r0, r6, r1 - ldr r2, [r0] - ldrh r0, [r2] - ldr r3, _08067EC8 - adds r1, r3, 0 - ands r0, r1 - strh r0, [r2] -_08067EBC: - mov r0, r8 - mov r1, r9 - bl sub_8068310 - b _08067AD4 - .align 2, 0 -_08067EC8: .4byte 0x00007fff -_08067ECC: - mov r1, r9 - adds r0, r6, r1 -_08067ED0: - ldr r0, [r0] - bl sub_806806C - b _08067AD4 -_08067ED8: - mov r0, r8 - mov r1, r9 - bl sub_8068310 - ldr r0, _08067EFC - ldr r0, [r0] - ldr r2, [sp, 0x68] - cmp r0, r2 - bge _08067EEC - b _08067AD4 -_08067EEC: - add sp, 0x6C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08067EFC: .4byte gUnknown_202F310 - thumb_func_end sub_8067A80 - - thumb_func_start sub_8067F00 -sub_8067F00: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r4, r0, 0 - mov r9, r1 - str r3, [sp, 0x4] - lsls r4, 24 - lsrs r4, 24 - subs r7, r2, 0x1 - movs r0, 0x16 - mov r8, r0 - movs r0, 0 - bl sub_80073B8 - ldr r0, _08067F44 - adds r1, r4, 0 - movs r2, 0 - bl sub_8092578 - ldr r2, _08067F48 - movs r0, 0 - str r0, [sp] - movs r0, 0xC - movs r1, 0 - movs r3, 0 - bl sub_8014FF0 - movs r1, 0 - mov r10, r1 - b _08067FF6 - .align 2, 0 -_08067F44: .4byte gUnknown_202DF98 -_08067F48: .4byte gUnknown_8106E28 -_08067F4C: - ldr r4, _08067F8C - lsls r6, r7, 2 - mov r0, r9 - adds r5, r6, r0 - ldr r1, [r5] - adds r0, r4, 0 - movs r2, 0 - bl sub_808D9AC - adds r4, 0x50 - ldr r0, [r5] - movs r2, 0x8 - ldrsh r1, [r0, r2] - adds r0, r4, 0 - bl sub_808D930 - ldr r1, _08067F90 - adds r0, r7, 0x1 - str r0, [r1] - ldr r0, [r5] - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _08067F9C - ldr r0, _08067F94 - ldr r1, _08067F98 - bl strcpy - b _08067FA4 - .align 2, 0 -_08067F8C: .4byte gUnknown_202DF98 -_08067F90: .4byte gUnknown_202DE30 -_08067F94: .4byte gUnknown_202DE58 -_08067F98: .4byte gUnknown_8106E2C -_08067F9C: - ldr r0, _08067FCC - ldr r1, _08067FD0 - bl strcpy -_08067FA4: - mov r1, r9 - adds r0, r6, r1 - ldr r0, [r0] - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 7 - ands r0, r1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - beq _08067FD8 - ldr r2, _08067FD4 - movs r0, 0 - str r0, [sp] - movs r0, 0x7 - mov r1, r8 - movs r3, 0 - bl sub_8014FF0 - b _08067FE6 - .align 2, 0 -_08067FCC: .4byte gUnknown_202DE58 -_08067FD0: .4byte gUnknown_8106E30 -_08067FD4: .4byte gUnknown_8106E34 -_08067FD8: - ldr r2, _08068028 - str r0, [sp] - movs r0, 0x7 - mov r1, r8 - movs r3, 0 - bl sub_8014FF0 -_08067FE6: - movs r2, 0x1 - add r10, r2 - movs r0, 0xC - add r8, r0 - adds r7, 0x1 - mov r1, r10 - cmp r1, 0x9 - bgt _08068000 -_08067FF6: - cmp r7, 0 - blt _08067FE6 - ldr r2, [sp, 0x4] - cmp r7, r2 - blt _08067F4C -_08068000: - movs r0, 0 - bl sub_80073E0 - movs r0, 0x1 - bl sub_80073B8 - ldr r0, _0806802C - ldr r0, [r0] - ldr r1, [sp, 0x28] - cmp r0, r1 - blt _08068034 - ldr r2, _08068030 - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r1, 0x2 - movs r3, 0x1 - bl sub_8014FF0 - b _0806804C - .align 2, 0 -_08068028: .4byte gUnknown_8106E48 -_0806802C: .4byte gUnknown_202F310 -_08068030: .4byte gUnknown_8106E5C -_08068034: - ldr r1, _08068064 - ldr r2, [sp, 0x28] - subs r0, r2, r0 - str r0, [r1] - ldr r2, _08068068 - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r1, 0x2 - movs r3, 0x1 - bl sub_8014FF0 -_0806804C: - movs r0, 0x1 - bl sub_80073E0 - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08068064: .4byte gUnknown_202DE30 -_08068068: .4byte gUnknown_8106E6C - thumb_func_end sub_8067F00 - - thumb_func_start sub_806806C -sub_806806C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x110 - str r0, [sp, 0x108] - add r4, sp, 0x98 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [r4, 0x4] - movs r1, 0x2 - strh r1, [r4, 0x8] - strh r1, [r4, 0xA] - movs r2, 0x12 - strh r2, [r4, 0xC] - movs r0, 0xE - strh r0, [r4, 0xE] - strh r2, [r4, 0x10] - strh r1, [r4, 0x12] - ldr r0, _080681B4 - str r0, [r4, 0x14] - movs r0, 0x3 - str r0, [r4, 0x1C] - str r0, [r4, 0x34] - str r0, [r4, 0x4C] - movs r7, 0 - add r1, sp, 0x44 - strh r7, [r1] - mov r0, sp - adds r0, 0x5A - strh r7, [r0] - ldr r0, _080681B8 - strh r7, [r0, 0x18] - mov r9, r1 - adds r1, 0xB4 - str r1, [sp, 0x10C] - add r2, sp, 0x68 - mov r10, r2 - adds r6, r0, 0 -_080680C4: - movs r3, 0 - mov r8, r3 - add r1, sp, 0xF8 - ldr r0, _080681BC - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r0] - str r0, [r1] - ldr r1, _080681B4 - movs r2, 0x4 - strb r2, [r1] - strb r7, [r1, 0x1] - movs r0, 0xA - strb r0, [r1, 0x2] - mov r4, r8 - strb r4, [r1, 0x3] - strh r7, [r6, 0x1E] - strh r2, [r6, 0x20] - mov r0, r8 - strh r0, [r6, 0x1A] - strh r0, [r6, 0x18] - strh r0, [r6, 0x1C] - strh r0, [r6, 0x4] - movs r0, 0x10 - strh r0, [r6, 0x6] - mov r1, r8 - strh r1, [r6, 0x14] - mov r2, r8 - str r2, [r6] - adds r0, r6, 0 - adds r0, 0x28 - bl sub_801317C - add r0, sp, 0x98 - movs r1, 0x1 - bl sub_803ECB4 - ldr r0, _080681C0 - ldr r0, [r0] - ldr r3, _080681C4 - adds r0, r3 - ldrb r2, [r0] - add r0, sp, 0x4 - ldr r1, [sp, 0x108] - bl sub_808FF20 - lsls r4, r7, 2 - mov r0, sp - adds r0, r4 - adds r0, 0xF8 - ldr r0, [r0] - mov r1, r8 - str r1, [sp] - adds r1, r7, 0 - add r2, sp, 0x4 - mov r3, r10 - bl sub_808F844 - ldr r1, _080681C8 - movs r2, 0 - ldrsh r0, [r1, r2] - adds r0, 0xF - lsls r0, 3 - strh r0, [r6, 0xC] - movs r3, 0x2 - ldrsh r0, [r1, r3] - adds r0, 0x1 - lsls r0, 3 - subs r0, 0x2 - strh r0, [r6, 0xE] -_08068150: - ldr r0, _080681B8 - bl AddMenuCursorSprite - ldr r1, [sp, 0x10C] - adds r0, r1, r4 - ldr r0, [r0] - cmp r0, 0x4 - bne _0806817A - mov r2, r10 - ldrb r0, [r2, 0x8] - cmp r0, 0 - beq _0806816C - bl sub_80684C4 -_0806816C: - mov r3, r9 - movs r1, 0 - ldrsh r0, [r3, r1] - cmp r0, 0 - beq _0806817A - bl sub_8068344 -_0806817A: - movs r0, 0 - ldr r1, _080681CC - bl sub_8014140 - adds r5, r0, 0 - movs r0, 0x1C - bl sub_803E46C - ldr r3, _080681D0 - ldrh r1, [r3, 0x2] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _080681A2 - ldr r2, _080681B8 - adds r0, r2, 0 - adds r0, 0x2B - ldrb r0, [r0] - cmp r0, 0 - beq _080681D4 -_080681A2: - movs r0, 0 - bl sub_8083CE0 - adds r7, 0x1 - cmp r7, 0x4 - beq _080681B0 - b _080682E8 -_080681B0: - movs r7, 0 - b _080682E8 - .align 2, 0 -_080681B4: .4byte gUnknown_202F308 -_080681B8: .4byte gUnknown_202EE10 -_080681BC: .4byte gUnknown_8106E80 -_080681C0: .4byte gUnknown_203B418 -_080681C4: .4byte 0x0000065a -_080681C8: .4byte gUnknown_2027370 -_080681CC: .4byte gUnknown_8106DA4 -_080681D0: .4byte gUnknown_20255F0 -_080681D4: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _080681E6 - adds r0, r2, 0 - adds r0, 0x2C - ldrb r0, [r0] - cmp r0, 0 - beq _080681FA -_080681E6: - movs r0, 0 - bl sub_8083CE0 - subs r7, 0x1 - movs r0, 0x1 - negs r0, r0 - cmp r7, r0 - bne _080682E8 - movs r7, 0x3 - b _080682E8 -_080681FA: - ldr r2, [sp, 0x10C] - adds r0, r2, r4 - ldr r0, [r0] - cmp r0, 0x4 - bne _08068294 - ldrh r1, [r3, 0x4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08068212 - cmp r5, 0x2 - bne _08068248 -_08068212: - mov r3, r10 - ldrb r0, [r3, 0x8] - cmp r0, 0 - beq _08068248 - movs r0, 0 - bl sub_8083CE0 - ldr r5, _08068244 - movs r4, 0x5 -_08068224: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x1C - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08068224 - mov r4, r9 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080682E8 - .align 2, 0 -_08068244: .4byte gUnknown_203B080 -_08068248: - ldr r0, _0806828C - ldrh r1, [r0, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08068258 - cmp r5, 0x1 - bne _08068294 -_08068258: - mov r1, r9 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _08068294 - movs r0, 0 - bl sub_8083CE0 - ldr r5, _08068290 - movs r4, 0x5 -_0806826C: - ldr r1, [r5] - movs r0, 0 - bl _call_via_r1 - movs r0, 0x1C - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _0806826C - mov r3, r9 - ldrh r0, [r3] - subs r0, 0x1 - strh r0, [r3] - b _080682E8 - .align 2, 0 -_0806828C: .4byte gUnknown_20255F0 -_08068290: .4byte gUnknown_203B084 -_08068294: - bl sub_80048C8 - lsls r0, 24 - cmp r0, 0 - beq _080682A0 - b _08068150 -_080682A0: - ldr r0, _080682C4 - ldrh r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080682B8 - ldr r2, _080682C8 - adds r0, r2, 0 - adds r0, 0x29 - ldrb r0, [r0] - cmp r0, 0 - beq _080682CC -_080682B8: - bl sub_8083D08 - movs r4, 0x1 - mov r8, r4 - b _080682E8 - .align 2, 0 -_080682C4: .4byte gUnknown_20255F0 -_080682C8: .4byte gUnknown_202EE10 -_080682CC: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080682E0 - adds r0, r2, 0 - adds r0, 0x2A - ldrb r0, [r0] - cmp r0, 0 - bne _080682E0 - b _08068150 -_080682E0: - bl sub_8083D30 - movs r0, 0x1 - mov r8, r0 -_080682E8: - movs r0, 0x37 - bl sub_803E46C - mov r1, r8 - cmp r1, 0 - bne _080682F6 - b _080680C4 -_080682F6: - movs r0, 0 - movs r1, 0 - bl sub_803EAF0 - add sp, 0x110 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806806C - - thumb_func_start sub_8068310 -sub_8068310: - push {r4-r6,lr} - movs r4, 0 - ldr r6, _08068340 - cmp r4, r0 - bge _08068338 - movs r5, 0x80 - lsls r5, 8 - adds r3, r1, 0 - adds r2, r0, 0 -_08068322: - ldr r0, [r3] - ldrh r1, [r0] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _08068330 - adds r4, 0x1 -_08068330: - adds r3, 0x4 - subs r2, 0x1 - cmp r2, 0 - bne _08068322 -_08068338: - str r4, [r6] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08068340: .4byte gUnknown_202F310 - thumb_func_end sub_8068310 - - thumb_func_start sub_8068344 -sub_8068344: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x8 - ldr r0, _08068494 - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0806835C - b _08068486 -_0806835C: - ldr r0, _08068498 - mov r9, r0 - movs r0, 0 - movs r1, 0 - str r0, [sp] - str r1, [sp, 0x4] - mov r0, sp - ldrh r0, [r0] - ldr r1, _0806849C - ands r1, r0 - ldr r3, _080684A0 - ldr r0, [sp] - ands r0, r3 - orrs r0, r1 - str r0, [sp] - mov r1, sp - ldrh r1, [r1] - adds r2, r3, 0 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _080684A4 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r6, _080684A8 - mov r8, r6 - mov r0, r8 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _080684AC - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _080684B0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - movs r4, 0x80 - lsls r4, 7 - mov r0, sp - ldrh r1, [r0] - ldr r6, _080684B4 - adds r0, r6, 0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - orrs r4, r0 - ands r3, r1 - orrs r3, r4 - str r3, [sp] - movs r1, 0x80 - lsls r1, 6 - mov r5, sp - ldrh r0, [r5, 0x2] - ldr r2, _080684B8 - ands r2, r0 - orrs r2, r1 - ands r2, r6 - movs r3, 0xFC - lsls r3, 2 - ldrh r1, [r5, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r3 - mov r1, r8 - ands r0, r1 - movs r3, 0xF - movs r1, 0xF0 - lsls r1, 8 - ldr r4, _080684BC - ands r0, r4 - orrs r0, r1 - strh r0, [r5, 0x4] - mov r6, r9 - movs r1, 0x2 - ldrsh r0, [r6, r1] - lsls r0, 3 - adds r0, 0x8 - ands r0, r4 - lsls r0, 4 - ldrh r1, [r5, 0x6] - ands r3, r1 - orrs r3, r0 - strh r3, [r5, 0x6] - movs r3, 0 - ldrsh r0, [r6, r3] - lsls r0, 3 - adds r0, 0x40 - ldr r1, _080684C0 - ands r0, r1 - movs r1, 0xFE - lsls r1, 8 - ands r2, r1 - orrs r2, r0 - strh r2, [r5, 0x2] - movs r1, 0x80 - lsls r1, 1 - mov r0, sp - movs r2, 0 - movs r3, 0 - bl AddSprite -_08068486: - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08068494: .4byte gUnknown_202EDCC -_08068498: .4byte gUnknown_2027370 -_0806849C: .4byte 0x0000feff -_080684A0: .4byte 0xffff0000 -_080684A4: .4byte 0x0000fdff -_080684A8: .4byte 0x0000f3ff -_080684AC: .4byte 0x0000efff -_080684B0: .4byte 0x0000dfff -_080684B4: .4byte 0x00003fff -_080684B8: .4byte 0x0000c1ff -_080684BC: .4byte 0x00000fff -_080684C0: .4byte 0x000001ff - thumb_func_end sub_8068344 - - thumb_func_start sub_80684C4 -sub_80684C4: - push {r4-r6,lr} - sub sp, 0x8 - ldr r0, _080685E8 - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080684D6 - b _080685DE -_080684D6: - ldr r6, _080685EC - movs r0, 0 - movs r1, 0 - str r0, [sp] - str r1, [sp, 0x4] - mov r0, sp - ldrh r0, [r0] - ldr r1, _080685F0 - ands r1, r0 - ldr r3, _080685F4 - ldr r0, [sp] - ands r0, r3 - orrs r0, r1 - str r0, [sp] - mov r1, sp - ldrh r1, [r1] - adds r2, r3, 0 - ands r2, r0 - orrs r2, r1 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _080685F8 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r5, _080685FC - adds r0, r5, 0 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08068600 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - ldrh r1, [r0] - ldr r0, _08068604 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - adds r2, r3, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - movs r4, 0x80 - lsls r4, 7 - mov r0, sp - ldrh r1, [r0] - ldr r0, _08068608 - ands r0, r1 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - ldrh r0, [r0] - orrs r4, r0 - ands r3, r1 - orrs r3, r4 - str r3, [sp] - mov r3, sp - movs r2, 0xFC - lsls r2, 2 - ldrh r1, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r1 - orrs r0, r2 - ands r0, r5 - movs r2, 0xF - movs r1, 0xF0 - lsls r1, 8 - ldr r4, _0806860C - ands r0, r4 - orrs r0, r1 - strh r0, [r3, 0x4] - movs r1, 0x2 - ldrsh r0, [r6, r1] - lsls r0, 3 - adds r0, 0x70 - ands r0, r4 - lsls r0, 4 - ldrh r1, [r3, 0x6] - ands r2, r1 - orrs r2, r0 - strh r2, [r3, 0x6] - movs r1, 0 - ldrsh r0, [r6, r1] - lsls r0, 3 - adds r0, 0x40 - ldr r1, _08068610 - ands r0, r1 - strh r0, [r3, 0x2] - subs r1, 0xFF - mov r0, sp - movs r2, 0 - movs r3, 0 - bl AddSprite -_080685DE: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080685E8: .4byte gUnknown_202EDCC -_080685EC: .4byte gUnknown_2027370 -_080685F0: .4byte 0x0000feff -_080685F4: .4byte 0xffff0000 -_080685F8: .4byte 0x0000fdff -_080685FC: .4byte 0x0000f3ff -_08068600: .4byte 0x0000efff -_08068604: .4byte 0x0000dfff -_08068608: .4byte 0x00003fff -_0806860C: .4byte 0x00000fff -_08068610: .4byte 0x000001ff - thumb_func_end sub_80684C4 - - thumb_func_start sub_8068614 -sub_8068614: - push {lr} - ldr r0, _0806862C - ldr r1, _08068630 - bl OpenFileAndGetFileDataPtr - ldr r1, _08068634 - ldr r1, [r1] - ldr r2, _08068638 - adds r1, r2 - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_0806862C: .4byte gUnknown_8106E98 -_08068630: .4byte gUnknown_8510000 -_08068634: .4byte gUnknown_203B418 -_08068638: .4byte 0x000181e4 - thumb_func_end sub_8068614 - - thumb_func_start sub_806863C -sub_806863C: - push {lr} - ldr r0, _08068650 - ldr r0, [r0] - ldr r1, _08068654 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - pop {r0} - bx r0 - .align 2, 0 -_08068650: .4byte gUnknown_203B418 -_08068654: .4byte 0x000181e4 - thumb_func_end sub_806863C - - thumb_func_start sub_8068658 -sub_8068658: - push {r4-r6,lr} - movs r4, 0 - ldr r6, _08068740 - ldr r5, _08068744 - ldr r3, _08068748 - movs r2, 0 -_08068664: - ldr r0, [r5] - lsls r1, r4, 2 - adds r0, r3 - adds r0, r1 - str r2, [r0] - adds r4, 0x1 - cmp r4, r6 - ble _08068664 - ldr r0, _0806874C - movs r1, 0x1 - bl sub_8068838 - movs r4, 0 - ldr r1, _08068744 - ldr r0, [r1] - ldr r2, _08068750 - adds r0, r2 - ldr r0, [r0] - cmp r4, r0 - bge _080686B2 - adds r6, r1, 0 - ldr r5, _08068754 -_08068690: - ldr r0, [r6] - adds r0, r5 - bl sub_808E9B8 - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1 - bl sub_8068838 - adds r5, 0x8 - adds r4, 0x1 - ldr r0, [r6] - ldr r1, _08068750 - adds r0, r1 - ldr r0, [r0] - cmp r4, r0 - blt _08068690 -_080686B2: - ldr r0, _08068744 - ldr r0, [r0] - movs r2, 0xD1 - lsls r2, 3 - adds r1, r0, r2 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _080686CA - movs r1, 0x1 - bl sub_8068838 -_080686CA: - movs r4, 0 - ldr r6, _08068758 - movs r5, 0x1 -_080686D0: - movs r0, 0x64 - muls r0, r4 - ldr r1, _0806875C - adds r0, r1 - ldr r1, [r6] - adds r1, r0 - ldrh r2, [r1] - adds r0, r5, 0 - ands r0, r2 - cmp r0, 0 - beq _080686F8 - lsrs r0, r2, 1 - ands r0, r5 - cmp r0, 0 - beq _080686F8 - movs r2, 0xE - ldrsh r0, [r1, r2] - movs r1, 0 - bl sub_8068838 -_080686F8: - adds r4, 0x1 - cmp r4, 0x3 - ble _080686D0 - ldr r0, _08068744 - ldr r0, [r0] - ldr r1, _08068760 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0x31 - bne _08068738 - movs r4, 0 - ldr r5, _08068758 -_08068712: - movs r0, 0x58 - muls r0, r4 - ldr r1, _08068764 - adds r0, r1 - ldr r1, [r5] - adds r2, r1, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08068732 - movs r1, 0x8 - ldrsh r0, [r2, r1] - movs r1, 0x1 - bl sub_8068838 -_08068732: - adds r4, 0x1 - cmp r4, 0x3 - ble _08068712 -_08068738: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08068740: .4byte 0x000001a7 -_08068744: .4byte gUnknown_203B418 -_08068748: .4byte 0x00017b44 -_0806874C: .4byte 0x000001a5 -_08068750: .4byte 0x000037e4 -_08068754: .4byte 0x0000343c -_08068758: .4byte gUnknown_203B45C -_0806875C: .4byte 0x00008df8 -_08068760: .4byte 0x00003a14 -_08068764: .4byte 0x00008f88 - thumb_func_end sub_8068658 - - thumb_func_start sub_8068768 -sub_8068768: - push {r4,r5,lr} - movs r5, 0 -_0806876C: - ldr r0, _080687A4 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080687A8 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - cmp r4, 0 - beq _08068796 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08068796 - ldr r0, [r4, 0x70] - movs r1, 0x4 - ldrsh r0, [r0, r1] - movs r1, 0 - bl sub_8068838 -_08068796: - adds r5, 0x1 - cmp r5, 0x13 - ble _0806876C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080687A4: .4byte gUnknown_203B418 -_080687A8: .4byte 0x000135cc - thumb_func_end sub_8068768 - - thumb_func_start sub_80687AC -sub_80687AC: - ldr r0, _080687C4 - ldr r1, [r0] - ldr r0, _080687C8 - adds r2, r1, r0 - movs r0, 0x80 - lsls r0, 3 - str r0, [r2] - ldr r0, _080687CC - adds r1, r0 - movs r0, 0xA - str r0, [r1] - bx lr - .align 2, 0 -_080687C4: .4byte gUnknown_203B418 -_080687C8: .4byte 0x000037f0 -_080687CC: .4byte 0x000037f4 - thumb_func_end sub_80687AC - - thumb_func_start sub_80687D0 -sub_80687D0: - lsls r0, 16 - ldr r1, _080687E4 - ldr r1, [r1] - asrs r0, 14 - ldr r2, _080687E8 - adds r1, r2 - adds r1, r0 - ldr r0, [r1] - bx lr - .align 2, 0 -_080687E4: .4byte gUnknown_203B418 -_080687E8: .4byte 0x00017b44 - thumb_func_end sub_80687D0 - - thumb_func_start sub_80687EC -sub_80687EC: - push {r4,r5,lr} - sub sp, 0xC - lsls r0, 16 - asrs r2, r0, 16 - ldr r5, _08068828 - ldr r0, [r5] - lsls r4, r2, 2 - ldr r1, _0806882C - adds r0, r1 - adds r0, r4 - ldr r0, [r0] - cmp r0, 0 - bne _08068820 - ldr r1, _08068830 - mov r0, sp - bl sprintf - ldr r1, _08068834 - mov r0, sp - bl OpenFileAndGetFileDataPtr - ldr r1, [r5] - ldr r2, _0806882C - adds r1, r2 - adds r1, r4 - str r0, [r1] -_08068820: - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08068828: .4byte gUnknown_203B418 -_0806882C: .4byte 0x00017b44 -_08068830: .4byte gUnknown_8106EA0 -_08068834: .4byte gUnknown_8510000 - thumb_func_end sub_80687EC - - thumb_func_start sub_8068838 -sub_8068838: - push {r4,lr} - lsls r0, 16 - asrs r4, r0, 16 - lsls r1, 24 - cmp r1, 0 - bne _08068864 - movs r0, 0xCF - lsls r0, 1 - cmp r4, r0 - beq _0806885E - adds r0, 0x3 - cmp r4, r0 - beq _0806885E - adds r0, 0x1 - cmp r4, r0 - beq _0806885E - adds r0, 0x1 - cmp r4, r0 - bne _08068864 -_0806885E: - bl sub_80688B0 - b _0806887A -_08068864: - adds r0, r4, 0 - bl sub_80687EC - ldr r1, _08068880 - adds r0, r4, r1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x3 - bhi _0806887A - bl sub_8068884 -_0806887A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08068880: .4byte 0xfffffe88 - thumb_func_end sub_8068838 - - thumb_func_start sub_8068884 -sub_8068884: - push {lr} - movs r0, 0xBC - lsls r0, 1 - bl sub_80687EC - ldr r0, _080688A8 - bl sub_80687EC - movs r0, 0xBD - lsls r0, 1 - bl sub_80687EC - ldr r0, _080688AC - bl sub_80687EC - pop {r0} - bx r0 - .align 2, 0 -_080688A8: .4byte 0x00000179 -_080688AC: .4byte 0x0000017b - thumb_func_end sub_8068884 - - thumb_func_start sub_80688B0 -sub_80688B0: - push {lr} - ldr r0, _080688C8 - ldr r0, [r0] - movs r1, 0xE0 - lsls r1, 6 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_80687EC - pop {r0} - bx r0 - .align 2, 0 -_080688C8: .4byte gUnknown_203B418 - thumb_func_end sub_80688B0 - - thumb_func_start sub_80688CC -sub_80688CC: - push {r4-r6,lr} - movs r5, 0 - ldr r6, _08068900 -_080688D2: - ldr r0, [r6] - lsls r4, r5, 2 - ldr r1, _08068904 - adds r0, r1 - adds r0, r4 - ldr r0, [r0] - cmp r0, 0 - beq _080688F2 - bl CloseFile - ldr r0, [r6] - ldr r1, _08068904 - adds r0, r1 - adds r0, r4 - movs r1, 0 - str r1, [r0] -_080688F2: - adds r5, 0x1 - ldr r0, _08068908 - cmp r5, r0 - ble _080688D2 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08068900: .4byte gUnknown_203B418 -_08068904: .4byte 0x00017b44 -_08068908: .4byte 0x000001a7 - thumb_func_end sub_80688CC - - thumb_func_start sub_806890C -sub_806890C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x64 - movs r0, 0 - mov r8, r0 - mov r10, r0 - ldr r6, _08068A60 - add r5, sp, 0x8 -_08068922: - movs r0, 0x58 - mov r1, r10 - muls r1, r0 - adds r0, r1, 0 - ldr r2, [r6] - adds r7, r2, r0 - ldrh r1, [r7] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08068A1C - lsrs r0, r1, 1 - movs r3, 0x1 - ands r0, r3 - cmp r0, 0 - beq _08068A1C - movs r0, 0x64 - mov r4, r8 - muls r4, r0 - ldr r0, _08068A64 - adds r0, r4 - mov r9, r0 - adds r0, r2, r0 - mov r1, r10 - bl sub_808DE30 - ldr r0, _08068A68 - ldr r0, [r0] - ldr r1, _08068A6C - adds r0, r1 - ldrb r0, [r0] - bl sub_8090104 - lsls r0, 24 - cmp r0, 0 - beq _08068A06 - movs r0, 0x80 - lsls r0, 1 - str r0, [sp, 0x60] - movs r2, 0x8 - ldrsh r1, [r7, r2] - add r0, sp, 0x60 - str r0, [sp] - movs r3, 0 - str r3, [sp, 0x4] - add r0, sp, 0x8 - movs r2, 0 - bl sub_808CFD0 - ldr r0, [r6] - adds r0, r4 - ldrb r1, [r5, 0x3] - ldr r2, _08068A70 - adds r0, r2 - strb r1, [r0] - ldr r1, [r6] - adds r1, r4 - ldrh r2, [r5, 0x14] - movs r3, 0x8E - lsls r3, 8 - adds r0, r1, r3 - strh r2, [r0] - ldrh r2, [r5, 0x16] - adds r3, 0x8 - adds r0, r1, r3 - strh r2, [r0] - ldrh r2, [r5, 0x16] - adds r3, 0x2 - adds r0, r1, r3 - strh r2, [r0] - ldrb r0, [r5, 0x18] - ldr r2, _08068A74 - adds r1, r2 - strb r0, [r1] - ldr r0, [r6] - adds r0, r4 - ldrb r1, [r5, 0x19] - adds r3, 0x3 - adds r0, r3 - strb r1, [r0] - ldr r0, [r6] - adds r0, r4 - ldrb r1, [r5, 0x1A] - adds r2, 0x2 - adds r0, r2 - strb r1, [r0] - ldr r0, [r6] - adds r0, r4 - ldrb r1, [r5, 0x1B] - adds r3, 0x2 - adds r0, r3 - strb r1, [r0] - ldr r2, [r6] - ldr r1, _08068A78 - adds r0, r2, r1 - adds r0, r4 - ldr r1, [sp, 0x24] - str r1, [r0] - adds r2, r4 - adds r3, 0x35 - adds r1, r2, r3 - ldr r0, [sp, 0x28] - str r0, [r1] - add r0, sp, 0x2C - ldrb r0, [r0] - ldr r1, _08068A7C - adds r2, r1 - strb r0, [r2] - ldr r0, [r6] - add r0, r9 - adds r0, 0x1C - add r1, sp, 0x34 - bl sub_8093F50 -_08068A06: - ldr r0, [r6] - adds r0, r4 - ldr r2, _08068A80 - adds r0, r2 - mov r3, r8 - strh r3, [r0] - movs r0, 0x1 - add r8, r0 - mov r1, r8 - cmp r1, 0x4 - beq _08068A2A -_08068A1C: - movs r2, 0x1 - add r10, r2 - movs r0, 0xCE - lsls r0, 1 - cmp r10, r0 - bgt _08068A2A - b _08068922 -_08068A2A: - mov r3, r8 - cmp r3, 0x3 - bgt _08068A50 - ldr r4, _08068A60 - ldr r3, _08068A64 - movs r2, 0 - movs r0, 0x64 - mov r1, r8 - muls r1, r0 -_08068A3C: - ldr r0, [r4] - adds r0, r1 - adds r0, r3 - strh r2, [r0] - adds r1, 0x64 - movs r0, 0x1 - add r8, r0 - mov r0, r8 - cmp r0, 0x3 - ble _08068A3C -_08068A50: - add sp, 0x64 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08068A60: .4byte gUnknown_203B45C -_08068A64: .4byte 0x00008df8 -_08068A68: .4byte gUnknown_203B418 -_08068A6C: .4byte 0x00000644 -_08068A70: .4byte 0x00008dfb -_08068A74: .4byte 0x00008e0c -_08068A78: .4byte 0x00008e10 -_08068A7C: .4byte 0x00008e48 -_08068A80: .4byte 0x00008e04 - thumb_func_end sub_806890C - - thumb_func_start sub_8068A84 -sub_8068A84: - push {r4-r7,lr} - adds r6, r0, 0 - movs r4, 0 - movs r5, 0 - ldr r7, _08068AE0 -_08068A8E: - movs r0, 0x64 - muls r0, r5 - ldr r1, _08068AE4 - adds r0, r1 - ldr r1, [r7] - adds r2, r1, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08068AB2 - movs r1, 0xE - ldrsh r0, [r2, r1] - bl sub_808DACC - lsls r0, 24 - lsrs r0, 24 - adds r4, r0 -_08068AB2: - adds r5, 0x1 - cmp r5, 0x3 - ble _08068A8E - movs r1, 0x8 - ldrsh r0, [r6, r1] - bl sub_808DACC - lsls r0, 24 - lsrs r0, 24 - adds r4, r0 - cmp r4, 0x6 - ble _08068B04 - ldr r0, _08068AE8 - adds r1, r6, 0 - movs r2, 0 - bl sub_808D9AC - ldrb r0, [r6, 0x4] - cmp r0, 0x4A - bne _08068AF0 - ldr r0, _08068AEC - b _08068BB2 - .align 2, 0 -_08068AE0: .4byte gUnknown_203B45C -_08068AE4: .4byte 0x00008df8 -_08068AE8: .4byte gUnknown_202DF98 -_08068AEC: .4byte gUnknown_80FE0F4 -_08068AF0: - cmp r0, 0x47 - bne _08068AFC - ldr r0, _08068AF8 - b _08068BB2 - .align 2, 0 -_08068AF8: .4byte gUnknown_80FE0F8 -_08068AFC: - ldr r0, _08068B00 - b _08068BB2 - .align 2, 0 -_08068B00: .4byte gUnknown_80FE0AC -_08068B04: - movs r5, 0 - ldr r2, _08068B6C -_08068B08: - movs r0, 0x64 - muls r0, r5 - ldr r1, _08068B70 - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08068B80 - adds r0, r4, 0 - adds r1, r6, 0 - ldr r2, _08068B74 - bl sub_808DE50 - ldrh r0, [r4] - movs r1, 0x1 - movs r2, 0 - orrs r1, r0 - strh r1, [r4] - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x19 - bgt _08068B3E - movs r0, 0x1A - strh r0, [r4, 0x8] -_08068B3E: - ldrh r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strh r0, [r4] - strh r5, [r4, 0xC] - adds r0, r4, 0 - adds r0, 0x40 - strb r2, [r0, 0x2] - strb r2, [r0, 0x1] - strb r2, [r0] - ldr r0, _08068B78 - adds r1, r6, 0 - movs r2, 0x6 - bl sub_808D9AC - ldrb r0, [r6, 0x4] - cmp r0, 0x4A - beq _08068BB0 - cmp r0, 0x47 - beq _08068BD0 - ldr r0, _08068B7C - b _08068BB2 - .align 2, 0 -_08068B6C: .4byte gUnknown_203B45C -_08068B70: .4byte 0x00008df8 -_08068B74: .4byte 0x000055aa -_08068B78: .4byte gUnknown_202DF98 -_08068B7C: .4byte gUnknown_80FE134 -_08068B80: - adds r5, 0x1 - cmp r5, 0x3 - ble _08068B08 - ldr r0, _08068B9C - adds r1, r6, 0 - movs r2, 0x6 - bl sub_808D9AC - ldrb r0, [r6, 0x4] - cmp r0, 0x4A - bne _08068BA4 - ldr r0, _08068BA0 - b _08068BB2 - .align 2, 0 -_08068B9C: .4byte gUnknown_202DF98 -_08068BA0: .4byte gUnknown_80FE0F4 -_08068BA4: - cmp r0, 0x47 - bne _08068BC4 - ldr r0, _08068BAC - b _08068BB2 - .align 2, 0 -_08068BAC: .4byte gUnknown_80FE0F8 -_08068BB0: - ldr r0, _08068BC0 -_08068BB2: - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _08068BD0 - .align 2, 0 -_08068BC0: .4byte gUnknown_80FE168 -_08068BC4: - ldr r0, _08068BD8 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_08068BD0: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08068BD8: .4byte gUnknown_80FE0AC - thumb_func_end sub_8068A84 - - thumb_func_start sub_8068BDC -sub_8068BDC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _08068CC4 - add sp, r4 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x220] - movs r1, 0 - mov r0, sp - adds r0, 0x39 -_08068BF6: - strb r1, [r0] - subs r0, 0x1 - cmp r0, sp - bge _08068BF6 - movs r6, 0 - ldr r0, _08068CC8 - mov r8, r0 - movs r7, 0x1 -_08068C06: - movs r0, 0x64 - muls r0, r6 - ldr r1, _08068CCC - adds r0, r1 - mov r2, r8 - ldr r1, [r2] - adds r4, r1, r0 - ldrb r1, [r4] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08068C50 - movs r3, 0xA - ldrsh r0, [r4, r3] - bl sub_806A564 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _08068C50 - adds r4, 0x40 - ldrb r1, [r4] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08068C50 - ldrb r0, [r4, 0x2] - cmp r0, 0x69 - bne _08068C50 - adds r0, r4, 0 - bl sub_80915D4 - bl sub_80913A0 - strb r5, [r4, 0x2] - strb r5, [r4, 0x1] - strb r5, [r4] -_08068C50: - adds r6, 0x1 - cmp r6, 0x3 - ble _08068C06 - movs r6, 0 - movs r5, 0x1 -_08068C5A: - ldr r1, _08068CC8 - movs r0, 0x64 - muls r0, r6 - ldr r2, _08068CCC - adds r0, r2 - ldr r1, [r1] - adds r4, r1, r0 - ldrb r1, [r4] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _08068CFE - movs r3, 0xA - ldrsh r0, [r4, r3] - bl sub_806A564 - lsls r0, 24 - cmp r0, 0 - bne _08068CFE - ldr r1, _08068CD0 - adds r0, r1, 0 - ldrh r2, [r4, 0xE] - adds r0, r2 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bhi _08068C96 - movs r0, 0xBC - lsls r0, 1 - strh r0, [r4, 0xE] -_08068C96: - movs r3, 0xA - ldrsh r0, [r4, r3] - bl sub_806A58C - lsls r0, 24 - cmp r0, 0 - beq _08068CE8 - ldr r0, _08068CD4 - ldr r0, [r0] - ldr r1, _08068CD8 - adds r0, r1 - ldrb r0, [r0] - bl sub_8090104 - lsls r0, 24 - cmp r0, 0 - beq _08068CDC - movs r2, 0xA - ldrsh r0, [r4, r2] - adds r1, r4, 0 - bl sub_808DFDC - b _08068CFE - .align 2, 0 -_08068CC4: .4byte 0xfffffdd8 -_08068CC8: .4byte gUnknown_203B45C -_08068CCC: .4byte 0x00008df8 -_08068CD0: .4byte 0xfffffe87 -_08068CD4: .4byte gUnknown_203B418 -_08068CD8: .4byte 0x00000644 -_08068CDC: - movs r3, 0xA - ldrsh r0, [r4, r3] - adds r1, r4, 0 - bl sub_808DF2C - b _08068CFE -_08068CE8: - ldr r0, [sp, 0x220] - cmp r0, 0 - beq _08068CFE - movs r1, 0xE - ldrsh r0, [r4, r1] - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - add r0, sp - strb r5, [r0] -_08068CFE: - adds r6, 0x1 - cmp r6, 0x3 - ble _08068C5A - movs r1, 0 -_08068D06: - lsls r0, r1, 24 - lsrs r0, 24 - mov r8, r0 - mov r0, sp - add r0, r8 - ldrb r0, [r0] - adds r1, 0x1 - str r1, [sp, 0x224] - cmp r0, 0 - bne _08068D1C - b _08068F08 -_08068D1C: - mov r0, r8 - add r1, sp, 0x1F0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_8092404 - mov r0, r8 - add r1, sp, 0x214 - movs r2, 0 - movs r3, 0 - bl sub_8092638 - movs r7, 0 - add r1, sp, 0x1F0 - ldrh r0, [r1] - ldr r2, _08068E10 - cmp r0, r2 - beq _08068D60 - ldr r0, _08068E14 - ldr r3, [r0] - adds r5, r2, 0 - add r2, sp, 0x3C - movs r4, 0x58 -_08068D4A: - ldrh r0, [r1] - muls r0, r4 - adds r0, r3, r0 - stm r2!, {r0} - adds r1, 0x2 - adds r7, 0x1 - cmp r7, 0x14 - bgt _08068D60 - ldrh r0, [r1] - cmp r0, r5 - bne _08068D4A -_08068D60: - movs r6, 0 - ldr r2, _08068E14 - mov r10, r2 - movs r3, 0 - mov r9, r3 -_08068D6A: - movs r0, 0x64 - muls r0, r6 - ldr r1, _08068E18 - adds r0, r1 - mov r2, r10 - ldr r1, [r2] - adds r5, r1, r0 - ldrb r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08068DD6 - movs r3, 0xA - ldrsh r0, [r5, r3] - bl sub_806A5A4 - lsls r0, 24 - cmp r0, 0 - beq _08068DD6 - movs r1, 0xE - ldrsh r0, [r5, r1] - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - cmp r0, r8 - bne _08068DD6 - ldr r2, [sp, 0x220] - cmp r2, 0 - beq _08068DD6 - add r4, sp, 0x3C - lsls r0, r7, 2 - adds r4, r0 - add r0, sp, 0x90 - movs r1, 0x58 - muls r1, r6 - adds r0, r1 - str r0, [r4] - adds r1, r5, 0 - bl sub_808DF44 - ldr r2, [r4] - ldrh r0, [r2] - movs r3, 0x80 - lsls r3, 7 - adds r1, r3, 0 - orrs r0, r1 - strh r0, [r2] - ldr r0, [r4] - mov r1, r9 - strb r1, [r0, 0xC] - ldr r0, [r4] - strb r1, [r0, 0x10] - adds r7, 0x1 -_08068DD6: - adds r6, 0x1 - cmp r6, 0x3 - ble _08068D6A - add r0, sp, 0x214 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r7, r0 - bgt _08068E1C - cmp r7, 0 - bgt _08068DEC - b _08068F08 -_08068DEC: - add r5, sp, 0x3C - movs r3, 0x80 - lsls r3, 7 - adds r6, r3, 0 - adds r4, r7, 0 -_08068DF6: - ldr r1, [r5] - ldrh r0, [r1] - ands r0, r6 - cmp r0, 0 - beq _08068E06 - adds r0, r1, 0 - bl sub_808D1DC -_08068E06: - adds r5, 0x4 - subs r4, 0x1 - cmp r4, 0 - bne _08068DF6 - b _08068F08 - .align 2, 0 -_08068E10: .4byte 0x0000ffff -_08068E14: .4byte gUnknown_203B45C -_08068E18: .4byte 0x00008df8 -_08068E1C: - ldr r0, _08068E78 - mov r1, r8 - movs r2, 0 - bl sub_8092578 - ldr r0, _08068E7C - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - add r4, sp, 0x3C -_08068E34: - add r0, sp, 0x214 - movs r2, 0 - ldrsh r1, [r0, r2] - subs r1, r7, r1 - mov r0, r8 - adds r2, r7, 0 - adds r3, r4, 0 - bl sub_8067A80 - movs r6, 0 - cmp r6, r7 - bge _08068E8E - movs r5, 0x80 - lsls r5, 8 - adds r3, r4, 0 -_08068E52: - ldr r2, [r3] - ldrh r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08068E86 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _08068E86 - ldrb r0, [r2, 0x4] - subs r0, 0x44 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08068E80 - movs r0, 0x1 - b _08068E82 - .align 2, 0 -_08068E78: .4byte gUnknown_202DE58 -_08068E7C: .4byte gUnknown_80FE1A4 -_08068E80: - movs r0, 0 -_08068E82: - cmp r0, 0 - bne _08068E8E -_08068E86: - adds r3, 0x4 - adds r6, 0x1 - cmp r6, r7 - blt _08068E52 -_08068E8E: - cmp r6, r7 - beq _08068EA2 - ldr r0, _08068F24 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - bne _08068E34 -_08068EA2: - cmp r7, 0 - ble _08068ED4 - movs r3, 0x80 - lsls r3, 8 - mov r9, r3 - adds r3, r4, 0 - movs r0, 0x1 - mov r8, r0 - movs r5, 0 - adds r6, r7, 0 -_08068EB6: - ldr r2, [r3] - ldrh r1, [r2] - mov r0, r8 - ands r0, r1 - cmp r0, 0 - beq _08068ECC - mov r0, r9 - ands r0, r1 - cmp r0, 0 - beq _08068ECC - strh r5, [r2] -_08068ECC: - adds r3, 0x4 - subs r6, 0x1 - cmp r6, 0 - bne _08068EB6 -_08068ED4: - cmp r7, 0 - ble _08068F08 - movs r1, 0x80 - lsls r1, 7 - adds r5, r1, 0 - adds r6, r7, 0 -_08068EE0: - ldr r2, [r4] - ldrh r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08068F00 - adds r0, r1, 0 - ands r0, r5 - cmp r0, 0 - beq _08068F00 - adds r0, r2, 0 - bl sub_808D1DC - ldr r1, [r4] - movs r0, 0 - strh r0, [r1] -_08068F00: - adds r4, 0x4 - subs r6, 0x1 - cmp r6, 0 - bne _08068EE0 -_08068F08: - ldr r1, [sp, 0x224] - cmp r1, 0x39 - bgt _08068F10 - b _08068D06 -_08068F10: - movs r3, 0x8A - lsls r3, 2 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08068F24: .4byte gUnknown_80FE20C - thumb_func_end sub_8068BDC - - thumb_func_start sub_8068F28 -sub_8068F28: - push {r4-r7,lr} - movs r6, 0 - ldr r7, _08068F5C -_08068F2E: - movs r0, 0x64 - muls r0, r6 - ldr r1, _08068F60 - adds r0, r1 - ldr r1, [r7] - adds r4, r1, r0 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08068F74 - movs r1, 0xA - ldrsh r0, [r4, r1] - bl sub_806A564 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _08068F64 - movs r0, 0 - strh r0, [r4] - b _08068F74 - .align 2, 0 -_08068F5C: .4byte gUnknown_203B45C -_08068F60: .4byte 0x00008df8 -_08068F64: - movs r1, 0xA - ldrsh r0, [r4, r1] - bl sub_806A538 - lsls r0, 24 - cmp r0, 0 - beq _08068F74 - strh r5, [r4] -_08068F74: - adds r6, 0x1 - cmp r6, 0x3 - ble _08068F2E - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8068F28 - - thumb_func_start sub_8068F80 -sub_8068F80: - push {r4,r5,lr} - bl sub_8083600 - adds r5, r0, 0 - ldr r0, _08068FD4 - ldr r4, [r0] - ldr r1, _08068FD8 - adds r0, r4, r1 - movs r1, 0 - strb r1, [r0] - ldr r2, _08068FDC - adds r0, r4, r2 - strb r1, [r0] - adds r2, 0x6 - adds r0, r4, r2 - strb r1, [r0] - adds r0, r4, 0 - adds r0, 0xC0 - str r1, [r0] - cmp r5, 0 - beq _08068FCC - adds r0, r5, 0 - bl sub_8045128 - ldrh r0, [r0] - lsrs r0, 5 - movs r1, 0x1 - ands r0, r1 - movs r2, 0xD3 - lsls r2, 3 - adds r1, r4, r2 - strb r0, [r1] - adds r2, 0x1 - adds r1, r4, r2 - strb r0, [r1] - adds r0, r5, 0x4 - bl sub_804AC20 -_08068FCC: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08068FD4: .4byte gUnknown_203B418 -_08068FD8: .4byte 0x0000066c -_08068FDC: .4byte 0x0000066d - thumb_func_end sub_8068F80 - - thumb_func_start sub_8068FE0 -sub_8068FE0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x84 - mov r8, r0 - str r2, [sp, 0x74] - lsls r1, 16 - asrs r1, 16 - mov r9, r1 - ldr r7, [r0, 0x70] - bl sub_8045128 - adds r4, r0, 0 - ldr r0, [sp, 0x74] - cmp r0, 0 - bne _0806900E - mov r0, sp - bl sub_80457DC - mov r1, sp - str r1, [sp, 0x74] -_0806900E: - ldr r0, [r4, 0x10] - cmp r0, r8 - bne _08069018 - movs r0, 0 - str r0, [r4, 0x10] -_08069018: - mov r2, r8 - movs r3, 0x4 - ldrsh r0, [r2, r3] - movs r3, 0x6 - ldrsh r1, [r2, r3] - bl sub_80402AC - movs r5, 0 - adds r6, r7, 0 - adds r6, 0xC8 - movs r0, 0xB0 - adds r0, r7 - mov r10, r0 - mov r1, r8 - adds r1, 0x22 - str r1, [sp, 0x80] - mov r2, r8 - adds r2, 0x20 - str r2, [sp, 0x7C] - adds r3, r7, 0 - adds r3, 0x40 - str r3, [sp, 0x78] -_08069044: - ldr r0, _080690E4 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080690E8 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - cmp r4, 0 - beq _08069072 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08069072 - ldr r0, [r4, 0x70] - adds r1, r0, 0 - adds r1, 0x80 - ldr r0, [r1] - cmp r0, r8 - bne _08069072 - movs r0, 0 - str r0, [r1] -_08069072: - adds r5, 0x1 - cmp r5, 0x13 - ble _08069044 - ldrb r0, [r6] - cmp r0, 0x2 - bne _0806908A - ldr r0, _080690E4 - ldr r0, [r0] - ldr r3, _080690EC - adds r0, r3 - movs r1, 0 - strb r1, [r0] -_0806908A: - mov r1, r10 - ldrb r0, [r1] - subs r0, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _080690A2 - adds r0, r7, 0 - adds r0, 0x9C - ldr r0, [r0] - bl sub_8076CB4 -_080690A2: - mov r0, r8 - bl sub_8078084 - movs r0, 0 - ldr r2, [sp, 0x80] - strb r0, [r2] - ldr r3, [sp, 0x7C] - strb r0, [r3] - ldr r1, _080690F0 - str r0, [r1] - ldr r1, [sp, 0x78] - ldrb r0, [r1] - cmp r0, 0x41 - bne _080690FC - ldr r3, _080690E4 - ldr r2, [r3] - ldr r1, _080690F4 - adds r0, r2, r1 - ldrb r1, [r0] - cmp r1, 0 - bne _080690FC - movs r0, 0x1 - strb r0, [r2, 0x10] - strh r1, [r7, 0xE] - ldr r0, [r3] - ldr r2, _080690F8 - adds r0, r2 - mov r1, r8 - movs r2, 0 - bl sub_8045B94 - b _08069484 - .align 2, 0 -_080690E4: .4byte gUnknown_203B418 -_080690E8: .4byte 0x000135cc -_080690EC: .4byte 0x000037fc -_080690F0: .4byte gUnknown_203B450 -_080690F4: .4byte 0x0000065c -_080690F8: .4byte 0x000005f4 -_080690FC: - ldrb r0, [r7, 0x7] - cmp r0, 0 - bne _08069104 - b _0806928E -_08069104: - movs r0, 0x3C - movs r1, 0x49 - bl sub_803E708 - bl sub_80532B4 - ldr r5, _08069198 - ldr r2, [r5] - ldrb r0, [r2, 0x6] - cmp r0, 0 - bne _080691C8 - ldr r3, _0806919C - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _080691E0 - movs r0, 0x87 - lsls r0, 2 - cmp r9, r0 - beq _080691E0 - adds r0, 0x6 - cmp r9, r0 - beq _080691E0 - subs r0, 0x4 - cmp r9, r0 - beq _080691E0 - ldr r1, _080691A0 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080691E0 - ldr r6, _080691A4 - adds r0, r2, r6 - movs r1, 0 - ldrsb r1, [r0, r1] - cmp r1, 0 - blt _080691E0 - adds r3, 0xA - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080691E0 - cmp r1, 0 - ble _080691B4 - ldr r0, _080691A8 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl sub_8052B8C - adds r4, r0, 0 - cmp r4, 0x1 - bne _080691E0 - ldr r0, _080691AC - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - ldr r0, [r5] - strb r4, [r0, 0x4] - ldr r0, [r5] - strb r4, [r0, 0x6] - ldr r0, [r5] - ldr r1, _080691B0 - adds r0, r1 - strb r4, [r0] - ldr r1, [r5] - adds r1, r6 - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - b _08069484 - .align 2, 0 -_08069198: .4byte gUnknown_203B418 -_0806919C: .4byte 0x0000066e -_080691A0: .4byte 0x00003a0d -_080691A4: .4byte 0x0000067b -_080691A8: .4byte gUnknown_80FE268 -_080691AC: .4byte gUnknown_80FE28C -_080691B0: .4byte 0x00000654 -_080691B4: - ldr r0, _080691C4 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _080691E0 - .align 2, 0 -_080691C4: .4byte gUnknown_80FE2D0 -_080691C8: - movs r1, 0x1 - strb r1, [r2, 0x4] - ldr r0, [r5] - strb r1, [r0, 0x6] - ldr r0, [r5] - ldr r2, _080691DC - adds r0, r2 - strb r1, [r0] - b _08069484 - .align 2, 0 -_080691DC: .4byte 0x00000654 -_080691E0: - mov r0, r9 - ldr r1, [sp, 0x74] - mov r2, r8 - bl sub_8083AB0 - ldr r0, _080691F8 - cmp r9, r0 - bne _0806928E - movs r6, 0 - movs r5, 0 - b _080691FE - .align 2, 0 -_080691F8: .4byte 0x0000021f -_080691FC: - adds r5, 0x1 -_080691FE: - cmp r5, 0x3 - bgt _08069228 - ldr r0, _080692C4 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r3, _080692C8 - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080691FC - ldr r6, [r4, 0x70] - adds r0, r6, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x41 - bne _080691FC -_08069228: - cmp r6, 0 - beq _0806928E - ldr r5, _080692CC - ldrb r0, [r6, 0xA] - movs r1, 0x64 - muls r1, r0 - ldr r2, _080692D0 - adds r1, r2 - ldr r2, [r5] - adds r4, r2, r1 - adds r1, r6, 0 - bl sub_806C264 - movs r3, 0xA - ldrsh r0, [r4, r3] - bl sub_806A58C - lsls r0, 24 - cmp r0, 0 - beq _0806928A - ldr r0, _080692C4 - ldr r0, [r0] - ldr r1, _080692D4 - adds r0, r1 - ldrb r0, [r0] - bl sub_8090104 - lsls r0, 24 - cmp r0, 0 - bne _0806926E - movs r2, 0xA - ldrsh r0, [r4, r2] - adds r1, r4, 0 - bl sub_808DF2C -_0806926E: - bl sub_8044210 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _0806928A - movs r3, 0xA - ldrsh r1, [r4, r3] - movs r0, 0x58 - muls r0, r1 - ldr r1, [r5] - adds r0, r1 - adds r0, 0x28 - strb r2, [r0] -_0806928A: - movs r0, 0 - strh r0, [r4] -_0806928E: - ldrb r0, [r7, 0x6] - cmp r0, 0 - beq _080692DC - movs r5, 0 - movs r1, 0xB4 - lsls r1, 1 - adds r0, r7, r1 - movs r2, 0x98 - adds r2, r7 - mov r10, r2 - ldrb r3, [r0] - cmp r5, r3 - bge _0806930A - ldr r4, _080692D8 - subs r1, 0x1 - adds r2, r7, r1 - movs r3, 0 - adds r1, r0, 0 -_080692B2: - ldrb r0, [r2] - adds r0, r5 - adds r0, r4 - strb r3, [r0] - adds r5, 0x1 - ldrb r0, [r1] - cmp r5, r0 - blt _080692B2 - b _0806930A - .align 2, 0 -_080692C4: .4byte gUnknown_203B418 -_080692C8: .4byte 0x0001357c -_080692CC: .4byte gUnknown_203B45C -_080692D0: .4byte 0x00008df8 -_080692D4: .4byte 0x00000644 -_080692D8: .4byte gUnknown_202EE76 -_080692DC: - movs r5, 0 - movs r1, 0xB4 - lsls r1, 1 - adds r0, r7, r1 - movs r2, 0x98 - adds r2, r7 - mov r10, r2 - ldrb r3, [r0] - cmp r5, r3 - bge _0806930A - ldr r4, _0806932C - subs r1, 0x1 - adds r2, r7, r1 - movs r3, 0 - adds r1, r0, 0 -_080692FA: - ldrb r0, [r2] - adds r0, r5 - adds r0, r4 - strb r3, [r0] - adds r5, 0x1 - ldrb r0, [r1] - cmp r5, r0 - blt _080692FA -_0806930A: - ldr r1, [sp, 0x78] - ldrb r0, [r1] - cmp r0, 0x4A - bne _08069338 - ldr r2, _08069330 - ldr r1, [r2] - movs r0, 0x2 - strb r0, [r1, 0x10] - ldr r0, [r2] - ldr r2, _08069334 - adds r0, r2 - mov r1, r8 - movs r2, 0 - bl sub_8045B94 - b _08069352 - .align 2, 0 -_0806932C: .4byte gUnknown_202EE70 -_08069330: .4byte gUnknown_203B418 -_08069334: .4byte 0x000005f4 -_08069338: - cmp r0, 0x47 - bne _08069352 - ldr r2, _08069494 - ldr r1, [r2] - movs r0, 0x3 - strb r0, [r1, 0x10] - ldr r0, [r2] - ldr r3, _08069498 - adds r0, r3 - mov r1, r8 - movs r2, 0 - bl sub_8045B94 -_08069352: - bl sub_8083600 - cmp r0, 0 - beq _080693C6 - movs r0, 0x87 - lsls r0, 2 - cmp r9, r0 - beq _080693C6 - ldrb r0, [r7, 0x7] - cmp r0, 0 - bne _080693C6 - ldr r4, _08069494 - ldr r0, [r4] - ldrb r0, [r0, 0x10] - cmp r0, 0 - bne _080693C6 - adds r0, r7, 0 - adds r0, 0xA4 - ldrb r1, [r0] - movs r2, 0 - movs r0, 0xFA - lsls r0, 1 - cmp r9, r0 - bne _08069384 - movs r2, 0x1 -_08069384: - mov r0, r8 - bl sub_8084E00 - ldr r1, _0806949C - adds r0, r1, 0 - ldrh r2, [r7, 0x4] - adds r0, r2 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bhi _080693C6 - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - bne _080693C6 - ldrb r0, [r7, 0x6] - cmp r0, 0 - beq _080693CC - ldr r0, [r4] - ldr r3, _080694A0 - adds r0, r3 - movs r1, 0x1 - strb r1, [r0] - ldr r0, _080694A4 - ldr r1, [r0] - mov r0, r8 - bl sub_805239C - bl sub_803E178 - bl sub_8049ED4 -_080693C6: - ldrb r0, [r7, 0x6] - cmp r0, 0 - bne _08069466 -_080693CC: - ldr r6, _080694A8 - ldrb r0, [r7, 0xA] - movs r1, 0x64 - muls r1, r0 - ldr r2, _080694AC - adds r1, r2 - ldr r2, [r6] - adds r4, r2, r1 - adds r1, r7, 0 - bl sub_806C264 - movs r3, 0xA - ldrsh r0, [r4, r3] - bl sub_806A58C - lsls r0, 24 - cmp r0, 0 - beq _08069462 - ldr r5, _08069494 - ldr r0, [r5] - ldr r1, _080694B0 - adds r0, r1 - ldrb r0, [r0] - bl sub_8090104 - lsls r0, 24 - cmp r0, 0 - bne _0806940E - movs r2, 0xA - ldrsh r0, [r4, r2] - adds r1, r4, 0 - bl sub_808DF2C -_0806940E: - bl sub_8044210 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _0806942A - movs r3, 0xA - ldrsh r1, [r4, r3] - movs r0, 0x58 - muls r0, r1 - ldr r1, [r6] - adds r0, r1 - adds r0, 0x28 - strb r2, [r0] -_0806942A: - ldrb r1, [r7, 0x7] - negs r0, r1 - orrs r0, r1 - lsrs r1, r0, 31 - ldr r0, [r5] - ldr r2, _080694B4 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08069448 - ldr r3, [sp, 0x78] - ldrb r0, [r3] - cmp r0, 0x41 - bne _08069448 - movs r1, 0x1 -_08069448: - cmp r1, 0 - bne _08069462 - movs r0, 0xA - ldrsh r1, [r4, r0] - movs r0, 0x58 - muls r1, r0 - ldr r0, _080694A8 - ldr r0, [r0] - adds r1, r0 - ldrh r2, [r1] - ldr r0, _080694B8 - ands r0, r2 - strh r0, [r1] -_08069462: - movs r0, 0 - strh r0, [r4] -_08069466: - mov r1, r10 - ldr r0, [r1] - bl sub_800F934 - ldr r0, _080694BC - movs r2, 0 - str r2, [r0] - ldr r0, _08069494 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0xC] - mov r3, r8 - str r2, [r3] - bl sub_8045ACC -_08069484: - add sp, 0x84 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08069494: .4byte gUnknown_203B418 -_08069498: .4byte 0x000005f4 -_0806949C: .4byte 0xfffffe5f -_080694A0: .4byte 0x000037fe -_080694A4: .4byte gUnknown_80FA580 -_080694A8: .4byte gUnknown_203B45C -_080694AC: .4byte 0x00008df8 -_080694B0: .4byte 0x00000644 -_080694B4: .4byte 0x0000065c -_080694B8: .4byte 0x0000fffd -_080694BC: .4byte gUnknown_203B450 - thumb_func_end sub_8068FE0 - - thumb_func_start sub_80694C0 -sub_80694C0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r4, r0, 0 - adds r7, r1, 0 - mov r8, r2 - lsls r3, 24 - lsrs r3, 24 - mov r9, r3 - adds r0, r7, 0 - mov r1, r8 - bl sub_8049590 - mov r10, r0 - ldr r5, [r4, 0x70] - adds r6, r5, 0 - adds r6, 0xB0 - ldrb r0, [r6] - subs r0, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _080694FC - adds r0, r5, 0 - adds r0, 0x9C - ldr r0, [r0] - bl sub_8076CB4 -_080694FC: - ldrb r0, [r6] - cmp r0, 0x7 - beq _0806950A - cmp r0, 0x5 - beq _0806950A - cmp r0, 0x2 - bne _08069512 -_0806950A: - adds r0, r4, 0 - adds r1, r4, 0 - bl sub_807A324 -_08069512: - movs r0, 0x4 - ldrsh r2, [r4, r0] - cmp r7, r2 - bne _08069522 - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r8, r0 - beq _080695DE -_08069522: - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r0, 0 - blt _08069552 - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r0, 0 - blt _08069552 - adds r1, r0, 0 - adds r0, r2, 0 - bl sub_8049590 - adds r1, r0, 0 - ldr r0, [r1, 0x10] - cmp r0, r4 - bne _08069546 - movs r0, 0 - str r0, [r1, 0x10] -_08069546: - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_80402AC -_08069552: - ldrh r0, [r4, 0x4] - strh r0, [r4, 0x8] - ldrh r0, [r4, 0x6] - strh r0, [r4, 0xA] - strh r7, [r4, 0x4] - mov r0, r8 - strh r0, [r4, 0x6] - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _0806956E - ldr r0, _0806959C - strh r7, [r0] - mov r1, r8 - strh r1, [r0, 0x2] -_0806956E: - mov r2, r10 - str r4, [r2, 0x10] - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _08069588 - ldr r0, _080695A0 - strh r7, [r0] - mov r1, r8 - strh r1, [r0, 0x2] - ldr r0, _080695A4 - ldr r1, [r0] - movs r0, 0 - strb r0, [r1, 0x1] -_08069588: - adds r0, r7, 0 - mov r1, r8 - bl sub_80402AC - mov r2, r9 - cmp r2, 0 - beq _080695A8 - cmp r2, 0x1 - beq _080695C4 - b _080695CE - .align 2, 0 -_0806959C: .4byte gUnknown_203B410 -_080695A0: .4byte gUnknown_202EE0C -_080695A4: .4byte gUnknown_203B418 -_080695A8: - ldr r0, [r5, 0x70] - str r0, [r5, 0x74] - ldr r0, [r5, 0x6C] - str r0, [r5, 0x70] - ldr r0, [r5, 0x68] - str r0, [r5, 0x6C] - adds r0, r5, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080695CE - ldr r0, [r4, 0x8] - str r0, [r5, 0x68] - b _080695CE -_080695C4: - ldr r0, [r4, 0x4] - str r0, [r5, 0x68] - str r0, [r5, 0x6C] - str r0, [r5, 0x70] - str r0, [r5, 0x74] -_080695CE: - mov r1, r10 - ldrb r0, [r1, 0x9] - adds r1, r4, 0 - adds r1, 0x25 - strb r0, [r1] - adds r0, r4, 0 - bl sub_806CF98 -_080695DE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80694C0 - - thumb_func_start sub_80695EC -sub_80695EC: - push {r4-r7,lr} - adds r4, r0, 0 - adds r6, r1, 0 - adds r7, r2, 0 - ldr r1, [r4, 0x70] - adds r5, r1, 0 - adds r0, r1, 0 - adds r0, 0xB0 - ldrb r0, [r0] - subs r0, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08069612 - adds r0, r1, 0 - adds r0, 0x9C - ldr r0, [r0] - bl sub_8076CB4 -_08069612: - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r6, r0 - bne _08069622 - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r7, r0 - beq _08069658 -_08069622: - ldrh r0, [r4, 0x4] - strh r0, [r4, 0x8] - ldrh r0, [r4, 0x6] - strh r0, [r4, 0xA] - strh r6, [r4, 0x4] - strh r7, [r4, 0x6] - ldr r0, [r5, 0x70] - str r0, [r5, 0x74] - ldr r0, [r5, 0x6C] - str r0, [r5, 0x70] - ldr r0, [r5, 0x68] - str r0, [r5, 0x6C] - adds r0, r5, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08069648 - ldr r0, [r4, 0x8] - str r0, [r5, 0x68] -_08069648: - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_804954C - ldrb r1, [r0, 0x9] - adds r0, r4, 0 - adds r0, 0x25 - strb r1, [r0] -_08069658: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80695EC - - thumb_func_start sub_8069660 -sub_8069660: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x70] - adds r5, r0, 0 - adds r5, 0x46 - ldrb r1, [r5] - adds r0, r4, 0 - bl sub_8070F80 - lsls r0, 24 - cmp r0, 0 - bne _0806967C - movs r0, 0 - b _0806969E -_0806967C: - movs r1, 0x4 - ldrsh r0, [r4, r1] - ldr r1, _080696A4 - ldrb r2, [r5] - lsls r2, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r4, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - ldr r0, [r0, 0x10] -_0806969E: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080696A4: .4byte gUnknown_80F4448 - thumb_func_end sub_8069660 - - thumb_func_start sub_80696A8 -sub_80696A8: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x70] - adds r5, r0, 0 - adds r5, 0x46 - ldrb r1, [r5] - adds r0, r4, 0 - bl sub_8071138 - lsls r0, 24 - cmp r0, 0 - beq _080696F4 - movs r1, 0x4 - ldrsh r0, [r4, r1] - ldr r1, _080696F0 - ldrb r2, [r5] - lsls r2, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r4, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - ldr r1, [r0, 0x10] - cmp r1, 0 - beq _080696F4 - ldr r0, [r1] - cmp r0, 0x1 - bne _080696F4 - adds r0, r1, 0 - b _080696F6 - .align 2, 0 -_080696F0: .4byte gUnknown_80F4448 -_080696F4: - movs r0, 0 -_080696F6: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80696A8 - - thumb_func_start sub_80696FC -sub_80696FC: - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldr r3, [r4, 0x70] - ldr r5, _08069764 - adds r3, 0x46 - ldrb r0, [r3] - lsls r0, 2 - adds r0, r5 - ldrh r0, [r0] - ldrh r1, [r4, 0x4] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _08069768 - ldr r2, [sp] - ands r2, r1 - orrs r2, r0 - str r2, [sp] - ldrb r0, [r3] - lsls r0, 2 - adds r0, r5 - ldrh r0, [r0, 0x2] - ldrh r1, [r4, 0x6] - adds r0, r1 - lsls r0, 16 - ldr r1, _0806976C - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - asrs r1, 16 - bl sub_804954C - adds r5, r0, 0 - adds r0, r4, 0 - mov r1, sp - bl sub_80705F0 - lsls r0, 24 - cmp r0, 0 - bne _08069770 - ldr r1, [r5, 0x10] - cmp r1, 0 - beq _08069770 - ldr r0, [r1] - cmp r0, 0x1 - bne _08069770 - adds r0, r1, 0 - b _08069772 - .align 2, 0 -_08069764: .4byte gUnknown_80F4448 -_08069768: .4byte 0xffff0000 -_0806976C: .4byte 0x0000ffff -_08069770: - movs r0, 0 -_08069772: - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80696FC - - thumb_func_start sub_806977C -sub_806977C: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldr r0, [r4, 0x70] - ldr r7, _0806982C - adds r5, r0, 0 - adds r5, 0x46 - ldrb r0, [r5] - lsls r0, 2 - adds r0, r7 - ldrh r0, [r0] - ldrh r1, [r4, 0x4] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _08069830 - ldr r2, [sp] - ands r2, r1 - orrs r2, r0 - str r2, [sp] - ldrb r0, [r5] - lsls r0, 2 - adds r0, r7 - ldrh r0, [r0, 0x2] - ldrh r1, [r4, 0x6] - adds r0, r1 - lsls r0, 16 - ldr r1, _08069834 - ands r1, r2 - orrs r1, r0 - str r1, [sp] - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - asrs r1, 16 - bl sub_804954C - mov r6, sp - adds r0, r4, 0 - mov r1, sp - bl sub_80705F0 - lsls r0, 24 - cmp r0, 0 - bne _08069838 - ldrb r0, [r5] - lsls r0, 2 - adds r0, r7 - movs r1, 0 - ldrsh r0, [r0, r1] - lsls r0, 1 - ldrh r2, [r4, 0x4] - adds r0, r2 - mov r1, sp - strh r0, [r1] - ldrb r0, [r5] - lsls r0, 2 - adds r0, r7 - movs r1, 0x2 - ldrsh r0, [r0, r1] - lsls r0, 1 - ldrh r2, [r4, 0x6] - adds r0, r2 - strh r0, [r6, 0x2] - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0x2 - ldrsh r1, [r6, r2] - bl sub_804954C - adds r5, r0, 0 - adds r0, r4, 0 - mov r1, sp - bl sub_80705F0 - lsls r0, 24 - cmp r0, 0 - bne _08069838 - ldr r1, [r5, 0x10] - cmp r1, 0 - beq _08069838 - ldr r0, [r1] - cmp r0, 0x1 - bne _08069838 - adds r0, r1, 0 - b _0806983A - .align 2, 0 -_0806982C: .4byte gUnknown_80F4448 -_08069830: .4byte 0xffff0000 -_08069834: .4byte 0x0000ffff -_08069838: - movs r0, 0 -_0806983A: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_806977C - - thumb_func_start sub_8069844 -sub_8069844: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - mov r8, r1 - ldr r5, [r1, 0x70] - adds r0, r6, 0x2 - adds r1, r5, 0 - movs r2, 0 - bl sub_80708B4 - ldrh r0, [r5, 0x2] - strh r0, [r6] - movs r1, 0xE - ldrsh r0, [r5, r1] - str r0, [r6, 0x24] - movs r2, 0x10 - ldrsh r0, [r5, r2] - str r0, [r6, 0x28] - ldrb r0, [r5, 0x9] - str r0, [r6, 0x2C] - ldr r0, [r5, 0x18] - str r0, [r6, 0x30] - movs r2, 0 -_08069874: - adds r1, r6, 0 - adds r1, 0x34 - adds r1, r2 - adds r0, r5, 0 - adds r0, 0x14 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r6, 0 - adds r1, 0x36 - adds r1, r2 - adds r0, r5, 0 - adds r0, 0x16 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r6, 0 - adds r1, 0x16 - adds r1, r2 - adds r0, r5, 0 - adds r0, 0x5C - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r6, 0 - adds r1, 0x18 - adds r1, r2 - adds r0, r5, 0 - adds r0, 0x5E - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r2, 0x1 - cmp r2, 0x1 - ble _08069874 - ldrb r2, [r5, 0x7] - adds r1, r6, 0 - adds r1, 0x38 - movs r0, 0 - strb r2, [r1] - adds r2, r6, 0 - adds r2, 0x39 - strb r0, [r2] - adds r3, r6, 0 - adds r3, 0x3A - strb r0, [r3] - adds r4, r6, 0 - adds r4, 0x3B - strb r0, [r4] - movs r7, 0x3C - adds r7, r6 - mov r12, r7 - strb r0, [r7] - adds r0, r5, 0 - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806995C - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0806995C - adds r1, r5, 0 - adds r1, 0x62 - ldrb r0, [r1] - cmp r0, 0x13 - bne _08069908 - ldr r0, _080699A4 - ldrb r0, [r0] - ldrb r7, [r2] - adds r0, r7 - strb r0, [r2] -_08069908: - ldrb r0, [r1] - cmp r0, 0x2B - bne _08069918 - ldr r0, _080699A8 - ldrb r0, [r0] - ldrb r7, [r2] - adds r0, r7 - strb r0, [r2] -_08069918: - ldrb r0, [r1] - cmp r0, 0x21 - bne _08069928 - ldr r0, _080699AC - ldrb r0, [r0] - ldrb r2, [r3] - adds r0, r2 - strb r0, [r3] -_08069928: - ldrb r0, [r1] - cmp r0, 0x2B - bne _08069938 - ldr r0, _080699A8 - ldrb r0, [r0] - ldrb r7, [r3] - adds r0, r7 - strb r0, [r3] -_08069938: - ldrb r0, [r1] - cmp r0, 0x1E - bne _08069948 - ldr r0, _080699B0 - ldrb r0, [r0] - ldrb r2, [r4] - adds r0, r2 - strb r0, [r4] -_08069948: - ldrb r0, [r1] - cmp r0, 0x22 - bne _0806995C - ldr r0, _080699B4 - ldrb r0, [r0] - mov r7, r12 - ldrb r7, [r7] - adds r0, r7 - mov r1, r12 - strb r0, [r1] -_0806995C: - adds r0, r5, 0 - adds r0, 0x94 - ldrb r1, [r0] - adds r0, r6, 0 - adds r0, 0x54 - strb r1, [r0] - ldr r0, [r5, 0x60] - str r0, [r6, 0x20] - ldrh r0, [r5, 0xC] - movs r1, 0 - strh r0, [r6, 0x3E] - ldr r0, [r5, 0x40] - str r0, [r6, 0x1C] - adds r0, r6, 0 - adds r0, 0x44 - strb r1, [r0] - adds r0, 0x4 - strb r1, [r0] - adds r0, r5, 0 - adds r0, 0x8C - ldr r0, [r0] - str r0, [r6, 0x50] - ldr r0, _080699B8 - ldr r0, [r0] - ldr r2, _080699BC - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _080699C0 - adds r0, r5, 0 - bl sub_806A4DC - adds r1, r6, 0 - adds r1, 0x4C - b _080699C6 - .align 2, 0 -_080699A4: .4byte gUnknown_810AC60 -_080699A8: .4byte gUnknown_810AC68 -_080699AC: .4byte gUnknown_810AC62 -_080699B0: .4byte gUnknown_810AC64 -_080699B4: .4byte gUnknown_810AC66 -_080699B8: .4byte gUnknown_203B418 -_080699BC: .4byte 0x0000065a -_080699C0: - adds r1, r6, 0 - adds r1, 0x4C - movs r0, 0x3 -_080699C6: - strb r0, [r1] - movs r4, 0 - movs r7, 0x10 - ldrsh r0, [r5, r7] - cmp r0, 0 - bge _080699D4 - adds r0, 0x3 -_080699D4: - movs r2, 0xE - ldrsh r1, [r5, r2] - asrs r0, 2 - cmp r1, r0 - bgt _080699E8 - adds r1, r6, 0 - adds r1, 0x58 - movs r0, 0x6 - strb r0, [r1] - movs r4, 0x1 -_080699E8: - ldr r0, _08069A24 - ldr r0, [r0] - ldr r7, _08069A28 - adds r0, r7 - ldrb r0, [r0] - cmp r0, 0 - beq _08069A02 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0xB - strb r1, [r0] - adds r4, 0x1 -_08069A02: - movs r1, 0x9E - lsls r1, 1 - adds r0, r5, r1 - ldr r0, [r0] - bl sub_8094450 - cmp r0, 0 - bne _08069A38 - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _08069A2C - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x13 - b _08069A34 - .align 2, 0 -_08069A24: .4byte gUnknown_203B418 -_08069A28: .4byte 0x00000676 -_08069A2C: - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x3B -_08069A34: - strb r1, [r0] - adds r4, 0x1 -_08069A38: - mov r2, r8 - ldr r0, [r2, 0x70] - movs r7, 0x82 - lsls r7, 1 - adds r2, r0, r7 - ldr r0, [r2] - cmp r0, 0x1 - ble _08069A54 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x1B - strb r1, [r0] - adds r4, 0x1 -_08069A54: - ldr r0, [r2] - cmp r0, 0 - bgt _08069A66 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x28 - strb r1, [r0] - adds r4, 0x1 -_08069A66: - ldr r0, [r5, 0x2C] - cmp r0, 0xFF - ble _08069AAE - ldr r0, [r5, 0x30] - cmp r0, 0xFF - ble _08069AAE - ldr r0, [r5, 0x34] - cmp r0, 0xFF - ble _08069AAE - ldr r0, [r5, 0x38] - cmp r0, 0xFF - ble _08069AAE - movs r1, 0x1C - ldrsh r0, [r5, r1] - cmp r0, 0x9 - ble _08069AAE - movs r2, 0x1E - ldrsh r0, [r5, r2] - cmp r0, 0x9 - ble _08069AAE - movs r7, 0x20 - ldrsh r0, [r5, r7] - cmp r0, 0x9 - ble _08069AAE - movs r1, 0x22 - ldrsh r0, [r5, r1] - cmp r0, 0x9 - ble _08069AAE - movs r2, 0x24 - ldrsh r0, [r5, r2] - cmp r0, 0x9 - ble _08069AAE - movs r7, 0x26 - ldrsh r0, [r5, r7] - cmp r0, 0x9 - bgt _08069ABA -_08069AAE: - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x37 - strb r1, [r0] - adds r4, 0x1 -_08069ABA: - adds r0, r5, 0 - adds r0, 0xA8 - ldrb r1, [r0] - cmp r1, 0 - beq _08069AD2 - cmp r4, 0xB - bgt _08069AD2 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - strb r1, [r0] - adds r4, 0x1 -_08069AD2: - adds r0, r5, 0 - adds r0, 0xAC - ldrb r1, [r0] - cmp r1, 0 - beq _08069AEC - cmp r4, 0xB - bgt _08069AEC - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0x6 - strb r1, [r0] - adds r4, 0x1 -_08069AEC: - adds r0, r5, 0 - adds r0, 0xB0 - ldrb r1, [r0] - cmp r1, 0 - beq _08069B06 - cmp r4, 0xB - bgt _08069B06 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0xB - strb r1, [r0] - adds r4, 0x1 -_08069B06: - adds r0, r5, 0 - adds r0, 0xBC - ldrb r1, [r0] - cmp r1, 0 - beq _08069B20 - cmp r4, 0xB - bgt _08069B20 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0x13 - strb r1, [r0] - adds r4, 0x1 -_08069B20: - adds r0, r5, 0 - adds r0, 0xC0 - ldrb r1, [r0] - cmp r1, 0 - beq _08069B3A - cmp r4, 0xB - bgt _08069B3A - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0x1B - strb r1, [r0] - adds r4, 0x1 -_08069B3A: - adds r0, r5, 0 - adds r0, 0xC4 - ldrb r1, [r0] - cmp r1, 0 - beq _08069B54 - cmp r4, 0xB - bgt _08069B54 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0x28 - strb r1, [r0] - adds r4, 0x1 -_08069B54: - adds r0, r5, 0 - adds r0, 0xC8 - ldrb r1, [r0] - cmp r1, 0 - beq _08069B6E - cmp r4, 0xB - bgt _08069B6E - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0x37 - strb r1, [r0] - adds r4, 0x1 -_08069B6E: - adds r0, r5, 0 - adds r0, 0xD0 - ldrb r1, [r0] - cmp r1, 0 - beq _08069B88 - cmp r4, 0xB - bgt _08069B88 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0x3B - strb r1, [r0] - adds r4, 0x1 -_08069B88: - adds r0, r5, 0 - adds r0, 0xDC - ldrb r1, [r0] - cmp r1, 0 - beq _08069BA2 - cmp r4, 0xB - bgt _08069BA2 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0x3E - strb r1, [r0] - adds r4, 0x1 -_08069BA2: - adds r0, r5, 0 - adds r0, 0xE0 - ldrb r1, [r0] - cmp r1, 0 - beq _08069BBC - cmp r4, 0xB - bgt _08069BBC - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0x43 - strb r1, [r0] - adds r4, 0x1 -_08069BBC: - adds r0, r5, 0 - adds r0, 0xE4 - ldrb r1, [r0] - cmp r1, 0 - beq _08069BD6 - cmp r4, 0xB - bgt _08069BD6 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0x46 - strb r1, [r0] - adds r4, 0x1 -_08069BD6: - adds r0, r5, 0 - adds r0, 0xE8 - ldrb r1, [r0] - cmp r1, 0 - beq _08069BF0 - cmp r4, 0xB - bgt _08069BF0 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0x4A - strb r1, [r0] - adds r4, 0x1 -_08069BF0: - adds r0, r5, 0 - adds r0, 0xEC - ldrb r1, [r0] - cmp r1, 0 - beq _08069C0A - cmp r4, 0xB - bgt _08069C0A - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - adds r1, 0x4E - strb r1, [r0] - adds r4, 0x1 -_08069C0A: - movs r1, 0x89 - lsls r1, 1 - adds r0, r5, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08069C26 - cmp r4, 0xB - bgt _08069C26 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x50 - strb r1, [r0] - adds r4, 0x1 -_08069C26: - adds r0, r5, 0 - adds r0, 0xF0 - ldrb r0, [r0] - cmp r0, 0 - beq _08069C40 - cmp r4, 0xB - bgt _08069C40 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x51 - strb r1, [r0] - adds r4, 0x1 -_08069C40: - adds r0, r5, 0 - adds r0, 0xF1 - ldrb r0, [r0] - cmp r0, 0 - beq _08069C5A - cmp r4, 0xB - bgt _08069C5A - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x52 - strb r1, [r0] - adds r4, 0x1 -_08069C5A: - adds r0, r5, 0 - adds r0, 0xF4 - ldrb r0, [r0] - cmp r0, 0 - beq _08069C74 - cmp r4, 0xB - bgt _08069C74 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x53 - strb r1, [r0] - adds r4, 0x1 -_08069C74: - adds r0, r5, 0 - adds r0, 0xF5 - ldrb r0, [r0] - cmp r0, 0 - beq _08069C8E - cmp r4, 0xB - bgt _08069C8E - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x54 - strb r1, [r0] - adds r4, 0x1 -_08069C8E: - mov r0, r8 - bl sub_8071494 - lsls r0, 24 - cmp r0, 0 - beq _08069CAA - cmp r4, 0xB - bgt _08069CAA - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x55 - strb r1, [r0] - adds r4, 0x1 -_08069CAA: - adds r0, r5, 0 - adds r0, 0xFD - ldrb r0, [r0] - cmp r0, 0 - beq _08069CC4 - cmp r4, 0xB - bgt _08069CC4 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x56 - strb r1, [r0] - adds r4, 0x1 -_08069CC4: - mov r0, r8 - movs r1, 0 - bl sub_8070828 - cmp r0, 0x1 - ble _08069CE0 - cmp r4, 0xB - bgt _08069CE0 - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x57 - strb r1, [r0] - adds r4, 0x1 -_08069CE0: - adds r0, r5, 0 - adds r0, 0xF2 - ldrb r0, [r0] - cmp r0, 0 - beq _08069CFA - cmp r4, 0xB - bgt _08069D0E - adds r0, r6, 0 - adds r0, 0x58 - adds r0, r4 - movs r1, 0x58 - strb r1, [r0] - adds r4, 0x1 -_08069CFA: - cmp r4, 0xB - bgt _08069D0E - adds r1, r6, 0 - adds r1, 0x58 - movs r2, 0 -_08069D04: - adds r0, r1, r4 - strb r2, [r0] - adds r4, 0x1 - cmp r4, 0xB - ble _08069D04 -_08069D0E: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8069844 - - thumb_func_start sub_8069D18 -sub_8069D18: - push {r4,r5,lr} - ldr r3, [r1, 0x70] - ldr r4, _08069D48 - adds r3, 0x46 - ldrb r2, [r3] - lsls r2, 2 - adds r2, r4 - ldrh r2, [r2] - ldrh r5, [r1, 0x4] - adds r2, r5 - strh r2, [r0] - ldrb r2, [r3] - lsls r2, 2 - adds r2, r4 - ldrh r2, [r2, 0x2] - ldrh r1, [r1, 0x6] - adds r2, r1 - strh r2, [r0, 0x2] - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08069D48: .4byte gUnknown_80F4448 - thumb_func_end sub_8069D18 - - thumb_func_start sub_8069D4C -sub_8069D4C: - push {r4-r6,lr} - sub sp, 0xC - adds r5, r0, 0 - ldr r4, [r1, 0x70] - ldrh r0, [r4, 0x2] - strh r0, [r5] - ldr r0, [r1, 0x4] - str r0, [r5, 0x4] - adds r0, r4, 0 - adds r0, 0xF7 - ldrb r0, [r0] - cmp r0, 0 - beq _08069D6A - ldrh r0, [r4, 0x12] - b _08069D6C -_08069D6A: - ldrh r0, [r4, 0x10] -_08069D6C: - strh r0, [r5, 0x8] - ldrb r0, [r4, 0x9] - strh r0, [r5, 0xE] - movs r0, 0x2 - ldrsh r1, [r4, r0] - ldrb r2, [r4, 0x9] - mov r0, sp - bl sub_808E010 - ldr r0, [sp] - str r0, [r5, 0x10] - ldrb r0, [r4, 0x14] - strb r0, [r5, 0xA] - ldrb r0, [r4, 0x15] - strb r0, [r5, 0xB] - ldrb r0, [r4, 0x16] - strb r0, [r5, 0xC] - ldrb r0, [r4, 0x17] - strb r0, [r5, 0xD] - ldr r0, [r4, 0x60] - str r0, [r5, 0x1C] - adds r1, r5, 0 - adds r1, 0x20 - movs r2, 0x8C - lsls r2, 1 - adds r0, r4, r2 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - movs r3, 0x9E - lsls r3, 1 - adds r0, r4, r3 - ldr r0, [r0] - str r0, [r5, 0x14] - movs r6, 0xA0 - lsls r6, 1 - adds r0, r4, r6 - ldr r0, [r0] - str r0, [r5, 0x18] - ldr r0, [r4, 0x3C] - str r0, [r5, 0x44] - add sp, 0xC - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8069D4C - - thumb_func_start sub_8069DCC -sub_8069DCC: - push {r4,lr} - ldr r1, [r0, 0x70] - mov r12, r1 - ldr r3, _08069E08 - mov r4, r12 - adds r4, 0x46 - ldrb r1, [r4] - lsls r1, 2 - adds r1, r3 - ldrh r1, [r1] - ldrh r2, [r0, 0x4] - adds r1, r2 - movs r2, 0xB6 - lsls r2, 1 - add r2, r12 - strh r1, [r2] - ldrb r1, [r4] - lsls r1, 2 - adds r1, r3 - ldrh r1, [r1, 0x2] - ldrh r0, [r0, 0x6] - adds r1, r0 - movs r0, 0xB7 - lsls r0, 1 - add r0, r12 - strh r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08069E08: .4byte gUnknown_80F4448 - thumb_func_end sub_8069DCC - - thumb_func_start sub_8069E0C -sub_8069E0C: - push {r4-r7,lr} - adds r4, r0, 0 - ldr r5, [r4, 0x70] - movs r1, 0x25 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08069E44 - adds r0, r4, 0 - bl sub_807E580 - ldr r1, _08069E40 - lsls r0, 24 - lsrs r0, 22 - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - adds r0, 0x5C - movs r2, 0 - strb r1, [r0] - adds r0, 0x1 - strb r2, [r0] - adds r6, r5, 0 - adds r6, 0x5E - b _08069E62 - .align 2, 0 -_08069E40: .4byte gUnknown_80F520C -_08069E44: - movs r4, 0 - adds r7, r5, 0 - adds r7, 0x5C - adds r6, r5, 0 - adds r6, 0x5E -_08069E4E: - movs r1, 0x2 - ldrsh r0, [r5, r1] - adds r1, r4, 0 - bl sub_808DC68 - adds r1, r7, r4 - strb r0, [r1] - adds r4, 0x1 - cmp r4, 0x1 - ble _08069E4E -_08069E62: - movs r4, 0 -_08069E64: - movs r1, 0x2 - ldrsh r0, [r5, r1] - adds r1, r4, 0 - bl sub_808DC84 - adds r1, r6, r4 - strb r0, [r1] - adds r4, 0x1 - cmp r4, 0x1 - ble _08069E64 - ldr r0, _08069E88 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0xC] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08069E88: .4byte gUnknown_203B418 - thumb_func_end sub_8069E0C - - thumb_func_start sub_8069E8C -sub_8069E8C: - push {r4-r7,lr} - ldr r3, _08069ED8 - ldr r2, [r3] - ldrb r0, [r2, 0xC] - cmp r0, 0 - beq _08069F44 - movs r1, 0 - strb r1, [r2, 0xC] - ldr r0, [r3] - ldr r2, _08069EDC - adds r0, r2 - strb r1, [r0] - movs r7, 0 - adds r5, r3, 0 - movs r6, 0x1 -_08069EAA: - ldr r0, [r5] - lsls r1, r7, 2 - ldr r2, _08069EE0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08069F3E - adds r0, r4, 0 - movs r1, 0x4 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08069EE8 - ldr r0, [r5] - ldr r1, _08069EE4 - b _08069F16 - .align 2, 0 -_08069ED8: .4byte gUnknown_203B418 -_08069EDC: .4byte 0x0000e279 -_08069EE0: .4byte 0x000135cc -_08069EE4: .4byte 0x0000e273 -_08069EE8: - adds r0, r4, 0 - movs r1, 0x1C - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08069F04 - ldr r0, [r5] - ldr r2, _08069F00 - adds r0, r2 - b _08069F18 - .align 2, 0 -_08069F00: .4byte 0x0000e271 -_08069F04: - adds r0, r4, 0 - movs r1, 0x31 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08069F1A - ldr r0, [r5] - ldr r1, _08069F4C -_08069F16: - adds r0, r1 -_08069F18: - strb r6, [r0] -_08069F1A: - adds r0, r4, 0 - movs r1, 0x8 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _08069F36 - adds r0, r4, 0 - movs r1, 0x2D - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08069F3E -_08069F36: - ldr r0, [r5] - ldr r2, _08069F50 - adds r0, r2 - strb r6, [r0] -_08069F3E: - adds r7, 0x1 - cmp r7, 0x13 - ble _08069EAA -_08069F44: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08069F4C: .4byte 0x0000e270 -_08069F50: .4byte 0x0000e279 - thumb_func_end sub_8069E8C - - thumb_func_start sub_8069F54 -sub_8069F54: - push {r4,r5,lr} - adds r5, r0, 0 - lsls r1, 16 - asrs r0, r1, 16 - ldr r2, _08069F88 - adds r1, r2 - lsrs r1, 16 - cmp r1, 0x3 - bhi _08069F94 - adds r0, r5, 0 - movs r1, 0x25 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08069F90 - ldr r4, _08069F8C - adds r0, r5, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 22 - adds r0, r4 - movs r1, 0x2 - ldrsh r0, [r0, r1] - b _08069F94 - .align 2, 0 -_08069F88: .4byte 0xfe880000 -_08069F8C: .4byte gUnknown_80F520C -_08069F90: - movs r0, 0xBC - lsls r0, 1 -_08069F94: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8069F54 - - thumb_func_start sub_8069F9C -sub_8069F9C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - mov r8, r0 - adds r6, r1, 0 - mov r9, r2 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08069FB8 - b _0806A0FA -_08069FB8: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08069FC6 - b _0806A0FA -_08069FC6: - cmp r8, r6 - bne _08069FCC - b _0806A0FA -_08069FCC: - mov r0, r8 - ldr r2, [r0, 0x70] - adds r3, r2, 0 - ldr r7, [r6, 0x70] - movs r4, 0x1 - negs r4, r4 - adds r0, r7, 0 - adds r0, 0x5E - ldrb r0, [r0] - cmp r0, 0x28 - bne _08069FE4 - movs r4, 0 -_08069FE4: - adds r0, r7, 0 - adds r0, 0x5F - ldrb r0, [r0] - cmp r0, 0x28 - bne _08069FF0 - movs r4, 0x1 -_08069FF0: - cmp r4, 0 - blt _0806A068 - movs r1, 0 - adds r0, r2, 0 - adds r0, 0x5E - ldrb r2, [r0] - cmp r2, 0 - beq _0806A006 - mov r0, sp - strb r2, [r0] - movs r1, 0x1 -_0806A006: - adds r0, r3, 0 - adds r0, 0x5F - ldrb r2, [r0] - cmp r2, 0 - beq _0806A018 - mov r3, sp - adds r0, r3, r1 - strb r2, [r0] - adds r1, 0x1 -_0806A018: - cmp r1, 0 - beq _0806A068 - cmp r1, 0x1 - bne _0806A024 - movs r1, 0 - b _0806A030 -_0806A024: - adds r0, r1, 0 - bl sub_8084100 - adds r1, r0, 0 - cmp r1, 0 - blt _0806A068 -_0806A030: - adds r0, r7, 0 - adds r0, 0x5E - adds r0, r4 - add r1, sp - ldrb r1, [r1] - strb r1, [r0] - ldr r0, _0806A108 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0xC] - ldr r0, _0806A10C - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0806A110 - ldr r2, [r0] - mov r0, r8 - adds r1, r6, 0 - bl sub_80522F4 - adds r0, r6, 0 - bl sub_8042900 - mov r0, r8 - adds r1, r6, 0 - bl sub_806ABAC -_0806A068: - movs r0, 0xAD - lsls r0, 1 - adds r1, r7, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _0806A0FA - movs r0, 0 - strb r0, [r1] - adds r0, r6, 0 - movs r1, 0x3B - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806A0FA - mov r0, r8 - mov r1, r9 - bl sub_8071A1C - lsls r0, 24 - lsrs r5, r0, 24 - mov r1, r9 - ldrh r0, [r1, 0x2] - cmp r0, 0x1F - bne _0806A0AA - mov r0, r8 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0806A114 - adds r0, r1 - ldrb r5, [r0] -_0806A0AA: - cmp r5, 0 - beq _0806A0FA - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8071858 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0806A0FA - adds r4, r7, 0 - adds r4, 0x5C - strb r5, [r4] - adds r1, r7, 0 - adds r1, 0x5D - strb r0, [r1] - adds r1, 0x99 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _0806A10C - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldrb r0, [r4] - bl sub_8092334 - adds r1, r0, 0 - ldr r0, _0806A118 - bl strcpy - ldr r0, _0806A11C - ldr r2, [r0] - mov r0, r8 - adds r1, r6, 0 - bl sub_80522F4 - adds r0, r6, 0 - bl sub_8042968 -_0806A0FA: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806A108: .4byte gUnknown_203B418 -_0806A10C: .4byte gUnknown_202DF98 -_0806A110: .4byte gUnknown_80FCC7C -_0806A114: .4byte gUnknown_80F51E4 -_0806A118: .4byte gUnknown_202DE58 -_0806A11C: .4byte gUnknown_80FCCAC - thumb_func_end sub_8069F9C - - thumb_func_start sub_806A120 -sub_806A120: - push {r4-r7,lr} - adds r7, r0, 0 - adds r6, r1, 0 - adds r4, r2, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806A19C - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806A19C - cmp r7, r6 - beq _0806A19C - ldr r5, [r6, 0x70] - adds r0, r5, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0xC - bne _0806A19C - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_8071A1C - lsls r0, 24 - lsrs r0, 24 - bl sub_8092364 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0806A19C - adds r0, r5, 0 - adds r0, 0x5C - movs r1, 0 - strb r4, [r0] - adds r0, 0x1 - strb r1, [r0] - adds r0, r6, 0 - bl sub_8041BBC - ldr r0, _0806A1A4 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r4, 0 - bl sub_8092334 - adds r1, r0, 0 - ldr r0, _0806A1A8 - bl strcpy - ldr r0, _0806A1AC - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_80522F4 -_0806A19C: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806A1A4: .4byte gUnknown_202DF98 -_0806A1A8: .4byte gUnknown_202DE58 -_0806A1AC: .4byte gUnknown_80FDCC8 - thumb_func_end sub_806A120 - - thumb_func_start sub_806A1B0 -sub_806A1B0: - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806A1DE - adds r0, r4, 0 - movs r1, 0x2A - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806A1DE - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8076090 -_0806A1DE: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_806A1B0 - - thumb_func_start sub_806A1E8 -sub_806A1E8: - push {r4,r5,lr} - adds r4, r0, 0 - movs r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806A234 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806A210 - ldr r0, [r4, 0x70] - movs r1, 0 - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _0806A20E - movs r1, 0x1 -_0806A20E: - adds r5, r1, 0 -_0806A210: - ldr r0, _0806A23C - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _0806A21C - movs r5, 0 -_0806A21C: - cmp r5, 0 - beq _0806A234 - adds r0, r4, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - bne _0806A234 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806A2BC -_0806A234: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806A23C: .4byte gUnknown_203B46C - thumb_func_end sub_806A1E8 - - thumb_func_start sub_806A240 -sub_806A240: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806A2B4 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806A26A - ldr r0, [r4, 0x70] - movs r1, 0 - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _0806A268 - movs r1, 0x1 -_0806A268: - adds r6, r1, 0 -_0806A26A: - cmp r6, 0 - beq _0806A284 - adds r0, r4, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - bne _0806A284 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806A2BC - b _0806A2B4 -_0806A284: - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806A29C - ldr r0, [r5, 0x70] - movs r1, 0 - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _0806A29A - movs r1, 0x1 -_0806A29A: - adds r6, r1, 0 -_0806A29C: - cmp r6, 0 - beq _0806A2B4 - adds r0, r5, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - bne _0806A2B4 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_806A2BC -_0806A2B4: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_806A240 - - thumb_func_start sub_806A2BC -sub_806A2BC: - push {r4-r7,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806A328 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806A328 - ldr r5, _0806A2F4 - ldr r0, [r5] - ldr r1, _0806A2F8 - adds r0, r1 - ldr r0, [r0] - cmp r0, r4 - beq _0806A328 - adds r7, r4, 0x4 - cmp r6, 0 - beq _0806A30C - movs r0, 0x1 - bl sub_804178C - b _0806A302 - .align 2, 0 -_0806A2F4: .4byte gUnknown_203B418 -_0806A2F8: .4byte 0x000181f8 -_0806A2FC: - movs r0, 0x34 - bl sub_803E46C -_0806A302: - ldr r0, [r5] - movs r1, 0x12 - ldrsh r0, [r0, r1] - cmp r0, 0x3B - ble _0806A2FC -_0806A30C: - movs r0, 0x4 - movs r1, 0x44 - bl sub_803E708 - adds r0, r4, 0 - bl sub_803F508 - adds r0, r7, 0 - bl sub_804AC20 - ldr r0, _0806A330 - ldr r1, [r0] - movs r0, 0 - strh r0, [r1, 0x12] -_0806A328: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806A330: .4byte gUnknown_203B418 - thumb_func_end sub_806A2BC - - thumb_func_start nullsub_95 -nullsub_95: - bx lr - thumb_func_end nullsub_95 - - thumb_func_start sub_806A338 -sub_806A338: - push {r4-r6,lr} - movs r5, 0 - ldr r6, _0806A378 -_0806A33E: - ldr r0, [r6] - lsls r1, r5, 2 - ldr r2, _0806A37C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806A384 - ldr r0, [r4, 0x70] - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0806A384 - ldr r1, [r6] - ldr r2, _0806A380 - adds r0, r1, r2 - str r4, [r0] - ldr r0, [r4, 0x70] - adds r2, 0xC - adds r1, r2 - adds r0, 0x98 - ldr r0, [r0] - str r0, [r1] - b _0806A38A - .align 2, 0 -_0806A378: .4byte gUnknown_203B418 -_0806A37C: .4byte 0x000135cc -_0806A380: .4byte 0x00017b30 -_0806A384: - adds r5, 0x1 - cmp r5, 0x13 - ble _0806A33E -_0806A38A: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_806A338 - - thumb_func_start sub_806A390 -sub_806A390: - push {r4-r7,lr} - ldr r0, [r0, 0x70] - movs r7, 0 - movs r1, 0x8C - lsls r1, 1 - adds r4, r0, r1 - adds r5, r4, 0 - movs r6, 0x3 -_0806A3A0: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806A3C2 - ldrb r1, [r4, 0x1] - movs r0, 0xF7 - ands r0, r1 - movs r1, 0xEF - ands r0, r1 - movs r1, 0x4 - orrs r0, r1 - strb r0, [r4, 0x1] - adds r0, r5, 0 - bl sub_8092BF4 - strb r0, [r4, 0x4] -_0806A3C2: - adds r4, 0x8 - adds r5, 0x8 - subs r6, 0x1 - cmp r6, 0 - bge _0806A3A0 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806A390 - - thumb_func_start sub_806A3D4 -sub_806A3D4: - push {r4-r7,lr} - sub sp, 0xC - adds r7, r0, 0 - adds r6, r2, 0 - lsls r1, 16 - asrs r5, r1, 16 - lsls r3, 24 - cmp r3, 0 - beq _0806A404 - ldr r4, _0806A400 - adds r0, r5, 0 - movs r1, 0xA - bl __divsi3 - adds r2, r0, 0 - lsls r2, 16 - asrs r2, 16 - mov r0, sp - adds r1, r4, 0 - bl sprintf - b _0806A41C - .align 2, 0 -_0806A400: .4byte gUnknown_8106EA8 -_0806A404: - ldr r4, _0806A450 - adds r0, r5, 0 - movs r1, 0xA - bl __divsi3 - adds r2, r0, 0 - lsls r2, 16 - asrs r2, 16 - mov r0, sp - adds r1, r4, 0 - bl sprintf -_0806A41C: - ldr r1, _0806A454 - mov r0, sp - bl OpenFileAndGetFileDataPtr - adds r4, r0, 0 - adds r0, r5, 0 - movs r1, 0xA - bl __modsi3 - lsls r0, 16 - ldr r1, [r4, 0x4] - asrs r0, 12 - adds r0, r1 - lsls r1, r6, 2 - adds r0, r1 - ldr r1, [r0] - adds r0, r7, 0 - bl strcpy - adds r0, r4, 0 - bl CloseFile - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806A450: .4byte gUnknown_8106EB0 -_0806A454: .4byte gUnknown_83B0000 - thumb_func_end sub_806A3D4 - - thumb_func_start sub_806A458 -sub_806A458: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r6, r0, 0 - movs r0, 0 - mov r9, r0 - ldr r0, [r6, 0x70] - ldrb r0, [r0, 0x6] - mov r10, r0 - adds r0, r6, 0 - bl sub_80696A8 - cmp r0, 0 - bne _0806A47C - movs r0, 0 - b _0806A4CC -_0806A47C: - movs r7, 0x1 - negs r7, r7 -_0806A480: - movs r5, 0x1 - negs r5, r5 - adds r1, r7, 0x1 - mov r8, r1 -_0806A488: - movs r2, 0x4 - ldrsh r0, [r6, r2] - adds r0, r5 - movs r2, 0x6 - ldrsh r1, [r6, r2] - adds r1, r7 - bl sub_8049590 - adds r4, r0, 0 - ldr r0, [r4, 0x10] - cmp r0, 0 - beq _0806A4B6 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806A4B6 - ldr r0, [r4, 0x10] - ldr r0, [r0, 0x70] - ldrb r0, [r0, 0x6] - cmp r0, r10 - beq _0806A4B6 - movs r0, 0x1 - add r9, r0 -_0806A4B6: - adds r5, 0x1 - cmp r5, 0x1 - ble _0806A488 - mov r7, r8 - cmp r7, 0x1 - ble _0806A480 - movs r0, 0 - mov r1, r9 - cmp r1, 0x1 - ble _0806A4CC - movs r0, 0x1 -_0806A4CC: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_806A458 - - thumb_func_start sub_806A4DC -sub_806A4DC: - push {r4,lr} - sub sp, 0x64 - adds r4, r0, 0 - ldr r1, _0806A530 - ldr r0, [sp, 0x60] - ands r0, r1 - ldr r1, _0806A534 - ands r0, r1 - movs r1, 0x80 - lsls r1, 1 - orrs r0, r1 - str r0, [sp, 0x60] - movs r0, 0x2 - ldrsh r1, [r4, r0] - add r0, sp, 0x60 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - add r0, sp, 0x8 - movs r2, 0 - movs r3, 0 - bl sub_808CFD0 - add r1, sp, 0x8 - ldrh r0, [r4, 0x2] - strh r0, [r1, 0x8] - ldrb r0, [r4, 0x9] - strb r0, [r1, 0x3] - ldrh r0, [r4, 0xC] - strh r0, [r1, 0x14] - ldrb r0, [r4, 0x14] - strb r0, [r1, 0x18] - ldrb r0, [r4, 0x16] - strb r0, [r1, 0x1A] - adds r0, r1, 0 - bl sub_808F700 - add sp, 0x64 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0806A530: .4byte 0xffffff00 -_0806A534: .4byte 0xffff00ff - thumb_func_end sub_806A4DC - - thumb_func_start sub_806A538 -sub_806A538: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - adds r2, r1, 0 - ldr r0, _0806A554 - cmp r1, r0 - beq _0806A550 - ldr r0, _0806A558 - cmp r1, r0 - beq _0806A550 - cmp r2, 0 - bge _0806A55C -_0806A550: - movs r0, 0x1 - b _0806A55E - .align 2, 0 -_0806A554: .4byte 0x000055aa -_0806A558: .4byte 0x00005aa5 -_0806A55C: - movs r0, 0 -_0806A55E: - pop {r1} - bx r1 - thumb_func_end sub_806A538 - - thumb_func_start sub_806A564 -sub_806A564: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - ldr r0, _0806A57C - cmp r1, r0 - beq _0806A584 - ldr r0, _0806A580 - cmp r1, r0 - beq _0806A584 - movs r0, 0 - b _0806A586 - .align 2, 0 -_0806A57C: .4byte 0x000055aa -_0806A580: .4byte 0x00005aa5 -_0806A584: - movs r0, 0x1 -_0806A586: - pop {r1} - bx r1 - thumb_func_end sub_806A564 - - thumb_func_start sub_806A58C -sub_806A58C: - push {lr} - lsls r0, 16 - movs r1, 0xCE - lsls r1, 17 - cmp r0, r1 - bls _0806A59C - movs r0, 0 - b _0806A59E -_0806A59C: - movs r0, 0x1 -_0806A59E: - pop {r1} - bx r1 - thumb_func_end sub_806A58C - - thumb_func_start sub_806A5A4 -sub_806A5A4: - push {lr} - lsls r0, 16 - cmp r0, 0 - blt _0806A5B0 - movs r0, 0 - b _0806A5B2 -_0806A5B0: - movs r0, 0x1 -_0806A5B2: - pop {r1} - bx r1 - thumb_func_end sub_806A5A4 - - thumb_func_start sub_806A5B8 -sub_806A5B8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r6, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0806A5CE - b _0806A6D2 -_0806A5CE: - adds r0, r6, 0 - bl sub_8045128 - ldrh r0, [r0] - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x2 - bne _0806A664 - ldr r4, [r6, 0x70] - ldr r1, _0806A640 - ldr r0, _0806A644 - ldr r0, [r0] - ldr r2, _0806A648 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806A650 - adds r0, r4, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806A608 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_807A324 -_0806A608: - movs r1, 0x2 - ldrsh r0, [r4, r1] - bl sub_808DB14 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - beq _0806A6D2 - movs r2, 0x2 - ldrsh r1, [r4, r2] - ldr r0, _0806A64C - cmp r1, r0 - beq _0806A6D2 - cmp r1, 0x92 - beq _0806A6D2 - adds r0, r4, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x1 - beq _0806A6D2 - adds r0, r6, 0 - adds r1, r6, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8076210 - b _0806A6D2 - .align 2, 0 -_0806A640: .4byte gUnknown_810ACC0 -_0806A644: .4byte gUnknown_203B418 -_0806A648: .4byte 0x00003a0e -_0806A64C: .4byte 0x00000113 -_0806A650: - adds r0, r4, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806A6D2 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_807A290 - b _0806A6D2 -_0806A664: - cmp r1, 0 - bne _0806A6D2 - ldr r7, [r6, 0x70] - ldrb r0, [r7, 0x7] - cmp r0, 0 - beq _0806A6D2 - movs r0, 0x9E - lsls r0, 1 - adds r4, r7, r0 - ldr r5, [r4] - mov r0, sp - adds r1, r5, 0 - movs r2, 0x5 - bl sub_80942C0 - ldr r0, [sp] - str r0, [r4] - movs r1, 0 - mov r8, r1 - adds r0, r5, 0 - bl sub_8094450 - cmp r0, 0x13 - ble _0806A6A4 - ldr r0, [r4] - bl sub_8094450 - cmp r0, 0x13 - bgt _0806A6A4 - ldr r0, _0806A6E0 - ldr r0, [r0] - mov r8, r0 -_0806A6A4: - adds r0, r5, 0 - bl sub_8094450 - cmp r0, 0x9 - ble _0806A6C4 - movs r2, 0x9E - lsls r2, 1 - adds r0, r7, r2 - ldr r0, [r0] - bl sub_8094450 - cmp r0, 0x9 - bgt _0806A6C4 - ldr r0, _0806A6E4 - ldr r0, [r0] - mov r8, r0 -_0806A6C4: - mov r0, r8 - cmp r0, 0 - beq _0806A6D2 - adds r0, r6, 0 - mov r1, r8 - bl sub_80522A8 -_0806A6D2: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806A6E0: .4byte gUnknown_80FD594 -_0806A6E4: .4byte gUnknown_80FD5B8 - thumb_func_end sub_806A5B8 - - thumb_func_start sub_806A6E8 -sub_806A6E8: - push {r4-r7,lr} - sub sp, 0xC - adds r7, r0, 0 - ldr r6, [r7, 0x70] - adds r0, r6, 0 - adds r0, 0x64 - adds r1, r6, 0 - adds r1, 0x62 - ldrb r2, [r0] - ldrb r1, [r1] - cmp r2, r1 - beq _0806A77A - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _0806A764 - cmp r1, 0xA - beq _0806A70E - cmp r1, 0x2B - bne _0806A72E -_0806A70E: - movs r0, 0x9E - lsls r0, 1 - adds r5, r6, r0 - ldr r4, [r5] - mov r0, sp - movs r1, 0xA - bl sub_80943A0 - ldr r2, [sp] - add r0, sp, 0x4 - adds r1, r4, 0 - bl sub_80942C0 - ldr r0, [sp, 0x4] - str r0, [r5] - b _0806A744 -_0806A72E: - cmp r1, 0x1B - bne _0806A744 - add r0, sp, 0x8 - movs r1, 0 - bl sub_80943A0 - movs r0, 0x9E - lsls r0, 1 - adds r1, r6, r0 - ldr r0, [sp, 0x8] - str r0, [r1] -_0806A744: - ldr r0, _0806A75C - ldr r0, [r0] - ldr r1, _0806A760 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0806A776 - adds r0, r7, 0 - bl sub_80418D4 - b _0806A776 - .align 2, 0 -_0806A75C: .4byte gUnknown_203B418 -_0806A760: .4byte 0x00000676 -_0806A764: - cmp r1, 0x11 - beq _0806A76C - cmp r2, 0x11 - bne _0806A776 -_0806A76C: - movs r0, 0x1 - bl sub_803F580 - bl sub_8040A84 -_0806A776: - bl sub_807AA30 -_0806A77A: - adds r0, r6, 0 - adds r0, 0x60 - ldrb r0, [r0] - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0806A792 - adds r0, r6, 0 - adds r0, 0x62 - ldrb r1, [r0] - adds r0, 0x2 - b _0806A796 -_0806A792: - adds r0, r6, 0 - adds r0, 0x64 -_0806A796: - strb r1, [r0] - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806A6E8 - - thumb_func_start sub_806A7A0 -sub_806A7A0: - push {r4,r5,lr} - movs r5, 0 -_0806A7A4: - ldr r0, _0806A7E0 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0806A7E4 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806A7D2 - ldr r2, [r4, 0x70] - movs r1, 0xC - ldrsh r0, [r2, r1] - cmp r0, 0x1 - ble _0806A7D2 - adds r1, r0, 0 - subs r1, 0x1 - adds r0, r2, 0 - bl sub_806A7E8 -_0806A7D2: - adds r5, 0x1 - cmp r5, 0x3 - ble _0806A7A4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806A7E0: .4byte gUnknown_203B418 -_0806A7E4: .4byte 0x0001357c - thumb_func_end sub_806A7A0 - - thumb_func_start sub_806A7E8 -sub_806A7E8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x30 - adds r5, r0, 0 - mov r0, sp - bl sub_808EBA8 - mov r9, r0 - add r4, sp, 0x18 - movs r0, 0xC - ldrsh r1, [r5, r0] - adds r0, r4, 0 - bl sub_808EBA8 - adds r6, r0, 0 - ldr r0, _0806A828 - adds r1, r5, 0 - movs r2, 0 - bl sub_80708B4 - movs r2, 0x1 - mov r8, r4 -_0806A818: - movs r3, 0 - movs r5, 0 - movs r1, 0 - adds r4, r2, 0x1 - cmp r3, r9 - bge _0806A83E - mov r0, sp - b _0806A836 - .align 2, 0 -_0806A828: .4byte gUnknown_202DF98 -_0806A82C: - adds r1, 0x1 - cmp r1, r9 - bge _0806A83E - mov r7, sp - adds r0, r7, r1 -_0806A836: - ldrb r0, [r0] - cmp r0, r2 - bne _0806A82C - movs r3, 0x1 -_0806A83E: - movs r1, 0 - cmp r1, r6 - bge _0806A85C - mov r7, r8 - ldrb r0, [r7] - b _0806A856 -_0806A84A: - adds r1, 0x1 - cmp r1, r6 - bge _0806A85C - mov r7, r8 - adds r0, r7, r1 - ldrb r0, [r0] -_0806A856: - cmp r0, r2 - bne _0806A84A - movs r5, 0x1 -_0806A85C: - cmp r3, r5 - beq _0806A87A - lsls r0, r2, 24 - lsrs r0, 24 - bl sub_808EAB0 - adds r1, r0, 0 - ldr r0, _0806A890 - bl strcpy - ldr r0, _0806A894 - ldr r1, [r0] - movs r0, 0 - bl sub_805239C -_0806A87A: - adds r2, r4, 0 - cmp r2, 0x17 - ble _0806A818 - add sp, 0x30 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806A890: .4byte gUnknown_202DE58 -_0806A894: .4byte gUnknown_80FEAC4 - thumb_func_end sub_806A7E8 - - thumb_func_start sub_806A898 -sub_806A898: - push {r4-r7,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r7, r1, 24 - lsls r2, 24 - lsrs r1, r2, 24 - ldr r5, [r4, 0x70] - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _0806A8C2 - ldrh r1, [r4, 0x4] - movs r2, 0xB6 - lsls r2, 1 - adds r0, r5, r2 - strh r1, [r0] - ldrh r0, [r4, 0x6] - adds r0, 0x1 - adds r2, 0x2 - adds r1, r5, r2 - strh r0, [r1] - b _0806A8C8 -_0806A8C2: - adds r0, r4, 0 - bl sub_807ADB8 -_0806A8C8: - movs r0, 0xB6 - lsls r0, 1 - adds r6, r5, r0 - ldr r0, [r6] - cmp r0, 0 - beq _0806A90E - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - beq _0806A8EE - adds r0, r4, 0 - bl sub_8070CD0 - lsls r0, 24 - cmp r0, 0 - bne _0806A90E -_0806A8EE: - adds r0, r4, 0x4 - adds r1, r6, 0 - bl sub_80983D8 - adds r2, r0, 0 - movs r1, 0x7 - ands r0, r1 - adds r1, r5, 0 - adds r1, 0x46 - strb r0, [r1] - cmp r7, 0 - beq _0806A90E - adds r0, r4, 0 - adds r1, r2, 0 - bl sub_806CE68 -_0806A90E: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806A898 - - thumb_func_start sub_806A914 -sub_806A914: - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r1, 24 - lsrs r7, r1, 24 - lsls r2, 24 - lsrs r6, r2, 24 - movs r5, 0 -_0806A92A: - ldr r0, _0806A96C - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0806A970 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806A95C - ldr r0, [r4, 0x70] - cmp r7, 0 - beq _0806A952 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806A95C -_0806A952: - adds r0, r4, 0 - mov r1, r8 - adds r2, r6, 0 - bl sub_806A898 -_0806A95C: - adds r5, 0x1 - cmp r5, 0x13 - ble _0806A92A - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806A96C: .4byte gUnknown_203B418 -_0806A970: .4byte 0x000135cc - thumb_func_end sub_806A914 - - thumb_func_start sub_806A974 -sub_806A974: - push {r4,r5,lr} - movs r5, 0 -_0806A978: - ldr r0, _0806A9AC - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0806A9B0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806A99E - ldr r0, [r4, 0x70] - adds r0, 0x46 - ldrb r1, [r0] - adds r0, r4, 0 - bl sub_806CE68 -_0806A99E: - adds r5, 0x1 - cmp r5, 0x13 - ble _0806A978 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806A9AC: .4byte gUnknown_203B418 -_0806A9B0: .4byte 0x000135cc - thumb_func_end sub_806A974 - - thumb_func_start sub_806A9B4 -sub_806A9B4: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806AA02 - ldr r0, [r4, 0x70] - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - adds r1, r5, 0 - bl sub_80935B8 - cmp r0, 0 - bne _0806A9E0 - ldr r0, _0806A9DC - b _0806A9E6 - .align 2, 0 -_0806A9DC: .4byte gUnknown_81002FC -_0806A9E0: - cmp r0, 0x1 - bne _0806A9F4 - ldr r0, _0806A9F0 -_0806A9E6: - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - b _0806AA02 - .align 2, 0 -_0806A9F0: .4byte gUnknown_810035C -_0806A9F4: - cmp r0, 0x2 - bne _0806AA02 - ldr r0, _0806AA08 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 -_0806AA02: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806AA08: .4byte gUnknown_81003BC - thumb_func_end sub_806A9B4 - - thumb_func_start sub_806AA0C -sub_806AA0C: - push {r4,r5,lr} - lsls r0, 16 - asrs r4, r0, 16 - lsls r1, 24 - lsrs r5, r1, 24 - adds r0, r4, 0 - bl sub_80981DC - lsls r0, 24 - cmp r0, 0 - beq _0806AA56 - ldr r0, _0806AA5C - ldr r0, [r0] - ldr r1, _0806AA60 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0806AA40 - adds r0, r4, 0 - bl sub_808E770 - lsls r0, 16 - movs r1, 0xCF - lsls r1, 17 - cmp r0, r1 - beq _0806AA56 -_0806AA40: - cmp r4, 0x97 - bne _0806AA68 - ldr r0, _0806AA5C - ldr r0, [r0] - ldr r1, _0806AA64 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0806AA56 - cmp r5, 0 - bne _0806AA68 -_0806AA56: - movs r0, 0 - b _0806AA6A - .align 2, 0 -_0806AA5C: .4byte gUnknown_203B418 -_0806AA60: .4byte 0x000037fd -_0806AA64: .4byte 0x000037ff -_0806AA68: - movs r0, 0x1 -_0806AA6A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806AA0C - - thumb_func_start sub_806AA70 -sub_806AA70: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r7, 0 - ldr r0, _0806AAB4 - mov r8, r0 -_0806AA7C: - mov r1, r8 - ldr r0, [r1] - lsls r1, r7, 2 - ldr r2, _0806AAB8 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806AB12 - ldr r0, [r4, 0x70] - ldrb r2, [r0, 0xA] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0806AAC4 - mov r1, r8 - ldr r0, [r1] - ldrb r0, [r0, 0x11] - cmp r0, 0x1 - bne _0806AABC - adds r0, r4, 0 - bl sub_8042B20 - b _0806AB0A - .align 2, 0 -_0806AAB4: .4byte gUnknown_203B418 -_0806AAB8: .4byte 0x0001357c -_0806AABC: - adds r0, r4, 0 - bl sub_8042B0C - b _0806AB0A -_0806AAC4: - cmp r2, 0 - blt _0806AB12 - movs r6, 0 - ldr r1, _0806AB24 - movs r0, 0x64 - muls r0, r2 - ldr r2, _0806AB28 - adds r0, r2 - ldr r1, [r1] - adds r5, r1, r0 - mov r1, r8 - ldr r0, [r1] - ldrb r0, [r0, 0x11] - cmp r0, 0 - bne _0806AB04 - movs r2, 0xA - ldrsh r0, [r5, r2] - bl sub_806A564 - lsls r0, 24 - cmp r0, 0 - bne _0806AB04 - movs r1, 0xA - ldrsh r0, [r5, r1] - bl sub_806A58C - lsls r0, 24 - cmp r0, 0 - beq _0806AB00 - movs r6, 0x1 -_0806AB00: - cmp r6, 0 - beq _0806AB12 -_0806AB04: - adds r0, r4, 0 - bl sub_8042B0C -_0806AB0A: - adds r1, r4, 0 - adds r1, 0x20 - movs r0, 0 - strb r0, [r1] -_0806AB12: - adds r7, 0x1 - cmp r7, 0x3 - ble _0806AA7C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806AB24: .4byte gUnknown_203B45C -_0806AB28: .4byte 0x00008df8 - thumb_func_end sub_806AA70 - - thumb_func_start sub_806AB2C -sub_806AB2C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r4, 0 - ldr r0, _0806ABA4 - mov r9, r0 -_0806AB3A: - mov r1, r9 - ldr r0, [r1] - lsls r1, r4, 2 - ldr r2, _0806ABA8 - adds r0, r2 - adds r0, r1 - ldr r7, [r0] - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - adds r4, 0x1 - mov r8, r4 - cmp r0, 0 - beq _0806AB92 - ldr r5, [r7, 0x70] - movs r6, 0 -_0806AB5C: - mov r1, r9 - ldr r0, [r1] - lsls r1, r6, 2 - ldr r2, _0806ABA8 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806AB8C - cmp r7, r4 - beq _0806AB8C - adds r0, r5, 0 - adds r0, 0x7C - ldrh r0, [r0] - ldrh r1, [r4, 0x26] - cmp r0, r1 - bne _0806AB8C - adds r0, r5, 0 - adds r0, 0x80 - str r4, [r0] -_0806AB8C: - adds r6, 0x1 - cmp r6, 0x13 - ble _0806AB5C -_0806AB92: - mov r4, r8 - cmp r4, 0x13 - ble _0806AB3A - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806ABA4: .4byte gUnknown_203B418 -_0806ABA8: .4byte 0x000135cc - thumb_func_end sub_806AB2C - - thumb_func_start sub_806ABAC -sub_806ABAC: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - ldr r5, [r4, 0x70] - adds r0, r4, 0 - movs r1, 0x16 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806ABD4 - adds r0, r5, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x4 - bne _0806ABD4 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_807A290 -_0806ABD4: - adds r0, r4, 0 - movs r1, 0x40 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806ABF4 - adds r0, r5, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - bne _0806ABF4 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_807A400 -_0806ABF4: - adds r0, r4, 0 - movs r1, 0x42 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806AC14 - adds r0, r5, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806AC14 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_807A290 -_0806AC14: - adds r0, r4, 0 - movs r1, 0x29 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806AC34 - adds r0, r5, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x7 - bne _0806AC34 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_807A400 -_0806AC34: - adds r0, r4, 0 - movs r1, 0x36 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _0806AC50 - adds r0, r4, 0 - movs r1, 0x49 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806AC72 -_0806AC50: - adds r0, r4, 0 - bl sub_8070B28 - lsls r0, 24 - cmp r0, 0 - bne _0806AC66 - adds r0, r5, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x4 - bne _0806AC72 -_0806AC66: - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_807A124 -_0806AC72: - adds r0, r4, 0 - movs r1, 0x41 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806AC92 - adds r0, r5, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806AC92 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_807A324 -_0806AC92: - adds r0, r4, 0 - movs r1, 0x45 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806ACB8 - adds r0, r5, 0 - adds r0, 0xAC - ldrb r0, [r0] - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0806ACB8 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_807A290 -_0806ACB8: - adds r0, r4, 0 - movs r1, 0x25 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806ACE0 - adds r1, r5, 0 - adds r1, 0xF6 - movs r0, 0 - strb r0, [r1] - adds r0, r5, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0xC - bne _0806ACE0 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_807A4C8 -_0806ACE0: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_806ABAC - - thumb_func_start sub_806ACE8 -sub_806ACE8: - push {r4,r5,lr} - adds r4, r1, 0 - ldr r0, [r0, 0x70] - mov r12, r0 - movs r5, 0xEF - movs r2, 0x8C - lsls r2, 1 - add r2, r12 - movs r3, 0x3 -_0806ACFA: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - strb r0, [r2] - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _0806ACFA - movs r2, 0x9C - lsls r2, 1 - add r2, r12 - ldrb r0, [r2] - movs r3, 0xEF - ands r3, r0 - movs r5, 0 - strb r3, [r2] - ldrh r1, [r4, 0x2] - movs r0, 0xB0 - lsls r0, 1 - cmp r1, r0 - bne _0806AD2E - movs r1, 0x10 - adds r0, r3, 0 - orrs r0, r1 - strb r0, [r2] - b _0806AD36 -_0806AD2E: - ldrb r0, [r4] - movs r1, 0x10 - orrs r0, r1 - strb r0, [r4] -_0806AD36: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_806ACE8 - - thumb_func_start sub_806AD3C -sub_806AD3C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _0806AE1C - add sp, r4 - ldr r0, _0806AE20 - ldr r0, [r0] - ldr r1, _0806AE24 - adds r4, r0, r1 - mov r0, sp - movs r1, 0 - bl sub_803D808 - str r0, [sp, 0x200] - movs r7, 0 - cmp r7, r0 - bge _0806ADEC - mov r6, sp - adds r7, r0, 0 -_0806AD66: - adds r0, r6, 0 - bl sub_808E9B8 - strh r0, [r4] - adds r0, r6, 0 - bl sub_808E9E4 - strh r0, [r4, 0x2] - adds r0, r4, 0x4 - movs r2, 0 - ldrsh r1, [r4, r2] - movs r3, 0x2 - ldrsh r2, [r4, r3] - bl sub_8072AC8 - ldrh r0, [r4, 0x4] - cmp r0, 0 - bne _0806AD90 - movs r0, 0xB8 - lsls r0, 1 - strh r0, [r4, 0x4] -_0806AD90: - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_806C444 - strh r0, [r4, 0xC] - movs r5, 0 - movs r3, 0xE - adds r3, r4 - mov r9, r3 - movs r0, 0x10 - adds r0, r4 - mov r8, r0 - movs r1, 0x14 - adds r1, r4 - mov r10, r1 -_0806ADB2: - movs r2, 0 - ldrsh r0, [r4, r2] - movs r3, 0x2 - ldrsh r1, [r4, r3] - adds r2, r5, 0 - bl sub_806C488 - mov r2, r9 - adds r1, r2, r5 - strb r0, [r1] - movs r3, 0 - ldrsh r0, [r4, r3] - movs r2, 0x2 - ldrsh r1, [r4, r2] - adds r2, r5, 0 - bl sub_806C4D4 - mov r3, r8 - adds r1, r3, r5 - strb r0, [r1] - adds r5, 0x1 - cmp r5, 0x1 - ble _0806ADB2 - mov r4, r10 - adds r6, 0x8 - subs r7, 0x1 - cmp r7, 0 - bne _0806AD66 - ldr r7, [sp, 0x200] -_0806ADEC: - cmp r7, 0x3F - bgt _0806ADFC - movs r0, 0 -_0806ADF2: - strh r0, [r4] - adds r4, 0x14 - adds r7, 0x1 - cmp r7, 0x3F - ble _0806ADF2 -_0806ADFC: - movs r7, 0 - ldr r4, _0806AE28 - ldr r3, _0806AE20 - ldr r2, _0806AE2C - movs r1, 0 -_0806AE06: - ldr r0, [r3] - adds r0, r2 - adds r0, r7 - strb r1, [r0] - adds r7, 0x1 - cmp r7, r4 - ble _0806AE06 - movs r0, 0x1 - mov r10, r0 - movs r7, 0 - b _0806AE94 - .align 2, 0 -_0806AE1C: .4byte 0xfffffdfc -_0806AE20: .4byte gUnknown_203B418 -_0806AE24: .4byte 0x00002f3c -_0806AE28: .4byte 0x000001a7 -_0806AE2C: .4byte 0x0000363c -_0806AE30: - movs r2, 0x1 - negs r2, r2 - mov r8, r2 - mov r9, r8 - ldr r3, [sp, 0x200] - cmp r3, 0 - ble _0806AE7A - mov r5, sp - adds r6, r3, 0 -_0806AE42: - adds r0, r5, 0 - bl sub_808E9B8 - lsls r0, 16 - asrs r4, r0, 16 - ldr r1, _0806AECC - ldr r0, [r1] - ldr r2, _0806AED0 - adds r0, r2 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _0806AE72 - adds r0, r5, 0 - bl sub_808E9E4 - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_808DD18 - cmp r9, r0 - bge _0806AE72 - mov r9, r0 - mov r8, r4 -_0806AE72: - adds r5, 0x8 - subs r6, 0x1 - cmp r6, 0 - bne _0806AE42 -_0806AE7A: - mov r3, r8 - cmp r3, 0 - blt _0806AE9A - ldr r1, _0806AECC - ldr r0, [r1] - ldr r2, _0806AED0 - adds r0, r2 - add r0, r8 - mov r3, r10 - strb r3, [r0] - movs r0, 0x2 - add r10, r0 - adds r7, 0x1 -_0806AE94: - ldr r1, [sp, 0x200] - cmp r7, r1 - blt _0806AE30 -_0806AE9A: - movs r7, 0 - ldr r5, _0806AECC - ldr r4, _0806AED0 - movs r3, 0x1 - ldr r2, _0806AED4 -_0806AEA4: - ldr r0, [r5] - adds r0, r4 - adds r1, r0, r7 - ldrb r0, [r1] - cmp r0, 0 - bne _0806AEB2 - strb r3, [r1] -_0806AEB2: - adds r7, 0x1 - cmp r7, r2 - ble _0806AEA4 - movs r3, 0x81 - lsls r3, 2 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806AECC: .4byte gUnknown_203B418 -_0806AED0: .4byte 0x0000363c -_0806AED4: .4byte 0x000001a7 - thumb_func_end sub_806AD3C - - thumb_func_start sub_806AED8 -sub_806AED8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - mov r10, r0 - str r1, [sp, 0x8] - str r2, [sp, 0xC] - str r3, [sp, 0x10] - ldr r0, [sp, 0x38] - ldr r1, [sp, 0x3C] - mov r8, r1 - lsls r0, 16 - asrs r7, r0, 16 - ldr r1, _0806AF04 - ldr r0, [r1] - ldr r4, _0806AF08 - adds r6, r0, r4 - movs r3, 0 - b _0806AF7A - .align 2, 0 -_0806AF04: .4byte gUnknown_203B418 -_0806AF08: .4byte 0x00002f3c -_0806AF0C: - lsls r0, r2, 16 - asrs r0, 16 - cmp r0, r7 - bne _0806AF6E - movs r2, 0x2 - ldrsh r0, [r6, r2] - cmp r0, r8 - bne _0806AF6E - movs r5, 0xE - adds r5, r6 - mov r8, r5 - movs r0, 0x10 - adds r0, r6 - mov r9, r0 - mov r1, r10 - adds r1, 0x20 - str r1, [sp, 0x14] - adds r5, r6, 0x4 - mov r4, r10 - movs r7, 0x3 -_0806AF34: - ldrh r1, [r5] - adds r0, r4, 0 - bl sub_8092AA8 - adds r5, 0x2 - adds r4, 0x8 - subs r7, 0x1 - cmp r7, 0 - bge _0806AF34 - ldrh r0, [r6, 0xC] - ldr r2, [sp, 0x8] - strh r0, [r2] - movs r5, 0 - mov r3, r8 - mov r2, r9 -_0806AF52: - ldr r0, [sp, 0xC] - adds r1, r0, r5 - adds r0, r3, r5 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, [sp, 0x10] - adds r1, r0, r5 - adds r0, r2, r5 - ldrb r0, [r0] - strb r0, [r1] - adds r5, 0x1 - cmp r5, 0x1 - ble _0806AF52 - b _0806B084 -_0806AF6E: - adds r4, 0x14 - adds r3, 0x1 - cmp r3, 0x3F - bgt _0806AF84 - ldr r0, [r1] - adds r6, r0, r4 -_0806AF7A: - ldrh r2, [r6] - movs r5, 0 - ldrsh r0, [r6, r5] - cmp r0, 0 - bne _0806AF0C -_0806AF84: - cmp r3, 0x40 - bne _0806AFE6 - mov r0, sp - adds r1, r7, 0 - mov r2, r8 - bl sub_8072AC8 - mov r0, r10 - adds r0, 0x20 - str r0, [sp, 0x14] - mov r5, sp - mov r4, r10 - movs r6, 0x3 -_0806AF9E: - ldrh r1, [r5] - adds r0, r4, 0 - bl sub_8092AA8 - adds r5, 0x2 - adds r4, 0x8 - subs r6, 0x1 - cmp r6, 0 - bge _0806AF9E - adds r0, r7, 0 - mov r1, r8 - bl sub_806C444 - ldr r1, [sp, 0x8] - strh r0, [r1] - movs r5, 0 -_0806AFBE: - adds r0, r7, 0 - mov r1, r8 - adds r2, r5, 0 - bl sub_806C488 - ldr r2, [sp, 0xC] - adds r1, r2, r5 - strb r0, [r1] - adds r0, r7, 0 - mov r1, r8 - adds r2, r5, 0 - bl sub_806C4D4 - ldr r2, [sp, 0x10] - adds r1, r2, r5 - strb r0, [r1] - adds r5, 0x1 - cmp r5, 0x1 - ble _0806AFBE - b _0806B084 -_0806AFE6: - strh r7, [r6] - mov r5, r8 - strh r5, [r6, 0x2] - adds r4, r6, 0x4 - adds r0, r4, 0 - adds r1, r7, 0 - mov r2, r8 - bl sub_8072AC8 - movs r1, 0 - ldrsh r0, [r6, r1] - movs r2, 0x2 - ldrsh r1, [r6, r2] - bl sub_806C444 - strh r0, [r6, 0xC] - movs r5, 0 - movs r0, 0xE - adds r0, r6 - mov r8, r0 - movs r1, 0x10 - adds r1, r6 - mov r9, r1 - mov r2, r10 - adds r2, 0x20 - str r2, [sp, 0x14] -_0806B01A: - movs r1, 0 - ldrsh r0, [r6, r1] - movs r2, 0x2 - ldrsh r1, [r6, r2] - adds r2, r5, 0 - bl sub_806C488 - mov r2, r8 - adds r1, r2, r5 - strb r0, [r1] - movs r1, 0 - ldrsh r0, [r6, r1] - movs r2, 0x2 - ldrsh r1, [r6, r2] - adds r2, r5, 0 - bl sub_806C4D4 - mov r2, r9 - adds r1, r2, r5 - strb r0, [r1] - adds r5, 0x1 - cmp r5, 0x1 - ble _0806B01A - mov r5, r10 - movs r7, 0x3 -_0806B04C: - ldrh r1, [r4] - adds r0, r5, 0 - bl sub_8092AA8 - adds r4, 0x2 - adds r5, 0x8 - subs r7, 0x1 - cmp r7, 0 - bge _0806B04C - ldrh r0, [r6, 0xC] - ldr r5, [sp, 0x8] - strh r0, [r5] - movs r5, 0 - mov r3, r8 - mov r2, r9 -_0806B06A: - ldr r0, [sp, 0xC] - adds r1, r0, r5 - adds r0, r3, r5 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, [sp, 0x10] - adds r1, r0, r5 - adds r0, r2, r5 - ldrb r0, [r0] - strb r0, [r1] - adds r5, 0x1 - cmp r5, 0x1 - ble _0806B06A -_0806B084: - movs r0, 0 - ldr r1, [sp, 0x14] - strb r0, [r1] - 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_806AED8 - - thumb_func_start sub_806B09C -sub_806B09C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r8, r0 - lsls r1, 24 - lsrs r1, 24 - str r1, [sp] - movs r7, 0 - movs r2, 0 - mov r6, r8 - adds r6, 0x2 - mov r9, r8 -_0806B0BA: - movs r0, 0x64 - muls r0, r2 - ldr r1, _0806B0E4 - adds r0, r1 - ldr r3, _0806B0E8 - ldr r1, [r3] - adds r5, r1, r0 - ldrh r1, [r5] - movs r0, 0x1 - ands r0, r1 - adds r2, 0x1 - mov r10, r2 - cmp r0, 0 - beq _0806B124 - lsrs r0, r1, 1 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806B124 - movs r4, 0 - b _0806B0EE - .align 2, 0 -_0806B0E4: .4byte 0x00008df8 -_0806B0E8: .4byte gUnknown_203B45C -_0806B0EC: - adds r4, 0x1 -_0806B0EE: - cmp r4, r7 - bge _0806B106 - lsls r0, r4, 3 - add r0, r8 - bl sub_808E9B8 - lsls r0, 16 - asrs r0, 16 - movs r2, 0xE - ldrsh r1, [r5, r2] - cmp r0, r1 - bne _0806B0EC -_0806B106: - cmp r4, r7 - bne _0806B124 - movs r3, 0xE - ldrsh r2, [r5, r3] - mov r0, r9 - movs r1, 0 - bl sub_808E9D8 - movs r0, 0 - strh r0, [r6] - strh r0, [r6, 0x2] - adds r6, 0x8 - movs r0, 0x8 - add r9, r0 - adds r7, 0x1 -_0806B124: - mov r2, r10 - cmp r2, 0x3 - ble _0806B0BA - mov r0, r8 - adds r1, r7, 0 - bl sub_803D808 - adds r7, r0, 0 - ldr r1, [sp] - cmp r1, 0 - beq _0806B150 - lsls r4, r7, 3 - add r4, r8 - ldr r2, _0806B164 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_808E9D8 - movs r0, 0 - strh r0, [r4, 0x2] - strh r0, [r4, 0x4] - adds r7, 0x1 -_0806B150: - adds r0, r7, 0 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0806B164: .4byte 0x000001a5 - thumb_func_end sub_806B09C - - thumb_func_start sub_806B168 -sub_806B168: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x3C - ldr r0, _0806B324 - ldr r1, [r0] - ldr r2, _0806B328 - adds r0, r1, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - ldr r4, _0806B32C - adds r1, r4 - movs r2, 0 - ldrsh r1, [r1, r2] - bl sub_804954C - ldrb r0, [r0, 0x9] - str r0, [sp, 0x2C] - movs r3, 0 - mov r4, sp - adds r4, 0x1C - str r4, [sp, 0x30] - ldr r2, _0806B330 - ldr r1, _0806B334 -_0806B19C: - ldr r0, [r2] - adds r0, r1 - strh r3, [r0, 0xC] - adds r1, 0x64 - adds r3, 0x1 - cmp r3, 0x3 - ble _0806B19C - movs r4, 0 - movs r3, 0 - ldr r0, _0806B324 - mov r8, r0 - ldr r0, _0806B330 - ldr r7, [r0] - movs r5, 0x1 - add r6, sp, 0xC -_0806B1BA: - movs r0, 0x64 - muls r0, r3 - ldr r1, _0806B334 - adds r0, r1 - adds r2, r7, r0 - ldrh r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0806B1DA - lsrs r0, r1, 1 - ands r0, r5 - cmp r0, 0 - beq _0806B1DA - stm r6!, {r2} - adds r4, 0x1 -_0806B1DA: - adds r3, 0x1 - cmp r3, 0x3 - ble _0806B1BA - cmp r4, 0x3 - bgt _0806B1F4 - movs r1, 0 - lsls r0, r4, 2 - add r0, sp - adds r0, 0xC -_0806B1EC: - stm r0!, {r1} - adds r4, 0x1 - cmp r4, 0x3 - ble _0806B1EC -_0806B1F4: - movs r4, 0 - movs r6, 0 - add r2, sp, 0xC - ldr r5, [sp, 0x30] - movs r3, 0x3 -_0806B1FE: - ldr r1, [r2] - cmp r1, 0 - beq _0806B210 - ldrb r0, [r1, 0x2] - cmp r0, 0 - beq _0806B210 - str r6, [r2] - stm r5!, {r1} - adds r4, 0x1 -_0806B210: - adds r2, 0x4 - subs r3, 0x1 - cmp r3, 0 - bge _0806B1FE - mov r2, r8 - ldr r0, [r2] - ldr r3, _0806B338 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _0806B24C - movs r6, 0 - add r2, sp, 0xC - lsls r0, r4, 2 - ldr r1, [sp, 0x30] - adds r5, r0, r1 - movs r3, 0x3 -_0806B232: - ldr r1, [r2] - cmp r1, 0 - beq _0806B244 - ldrb r0, [r1, 0x4] - cmp r0, 0x41 - bne _0806B244 - str r6, [r2] - stm r5!, {r1} - adds r4, 0x1 -_0806B244: - adds r2, 0x4 - subs r3, 0x1 - cmp r3, 0 - bge _0806B232 -_0806B24C: - movs r5, 0 - add r2, sp, 0xC - lsls r0, r4, 2 - ldr r3, [sp, 0x30] - adds r0, r3 - movs r3, 0x3 -_0806B258: - ldr r1, [r2] - cmp r1, 0 - beq _0806B264 - str r5, [r2] - stm r0!, {r1} - adds r4, 0x1 -_0806B264: - adds r2, 0x4 - subs r3, 0x1 - cmp r3, 0 - bge _0806B258 - cmp r4, 0x3 - bgt _0806B280 - movs r1, 0 - lsls r0, r4, 2 - ldr r2, [sp, 0x30] - adds r0, r2 -_0806B278: - stm r0!, {r1} - adds r4, 0x1 - cmp r4, 0x3 - ble _0806B278 -_0806B280: - movs r3, 0 -_0806B282: - lsls r0, r3, 2 - ldr r4, [sp, 0x30] - adds r0, r4, r0 - ldr r0, [r0] - mov r8, r0 - adds r0, r3, 0x1 - str r0, [sp, 0x34] - mov r1, r8 - cmp r1, 0 - bne _0806B298 - b _0806B3E8 -_0806B298: - movs r2, 0xE - ldrsh r1, [r1, r2] - ldr r0, _0806B33C - cmp r1, r0 - beq _0806B2AE - adds r0, 0x2 - cmp r1, r0 - beq _0806B2AE - subs r0, 0x1 - cmp r1, r0 - bne _0806B2B6 -_0806B2AE: - movs r0, 0xBC - lsls r0, 1 - mov r4, r8 - strh r0, [r4, 0xE] -_0806B2B6: - ldr r0, _0806B340 - ldr r2, [r0] - movs r1, 0 - ldrsh r0, [r0, r1] - adds r3, 0x1 - str r3, [sp, 0x34] - ldr r3, _0806B340 - cmp r0, 0x63 - beq _0806B350 - ldr r4, _0806B324 - mov r9, r4 - ldr r0, _0806B328 - mov r10, r0 - adds r5, r3, 0 -_0806B2D2: - lsls r0, r2, 16 - asrs r7, r0, 16 - mov r4, r9 - ldr r1, [r4] - mov r4, r10 - adds r0, r1, r4 - movs r4, 0 - ldrsh r0, [r0, r4] - adds r0, r7, r0 - asrs r6, r2, 16 - ldr r2, _0806B32C - adds r1, r2 - movs r4, 0 - ldrsh r1, [r1, r4] - adds r1, r6, r1 - str r3, [sp, 0x38] - bl sub_804954C - adds r1, r0, 0 - ldrb r0, [r1, 0x9] - ldr r3, [sp, 0x38] - ldr r2, [sp, 0x2C] - cmp r0, r2 - bne _0806B344 - mov r4, r8 - movs r2, 0xE - ldrsh r0, [r4, r2] - bl sub_807034C - lsls r0, 24 - lsrs r4, r0, 24 - ldr r3, [sp, 0x38] - cmp r4, 0 - bne _0806B344 - mov r3, r8 - movs r1, 0xE - ldrsh r0, [r3, r1] - mov r3, r9 - ldr r2, [r3] - mov r3, r10 - b _0806B3A8 - .align 2, 0 -_0806B324: .4byte gUnknown_203B418 -_0806B328: .4byte 0x0000e218 -_0806B32C: .4byte 0x0000e21a -_0806B330: .4byte gUnknown_203B45C -_0806B334: .4byte 0x00008df8 -_0806B338: .4byte 0x0000065c -_0806B33C: .4byte 0x00000179 -_0806B340: .4byte gUnknown_80F4598 -_0806B344: - adds r5, 0x4 - ldr r2, [r5] - movs r4, 0 - ldrsh r0, [r5, r4] - cmp r0, 0x63 - bne _0806B2D2 -_0806B350: - movs r0, 0 - cmp r0, 0 - bne _0806B3E8 - ldr r2, [r3] - movs r1, 0 - ldrsh r0, [r3, r1] - cmp r0, 0x63 - beq _0806B3E8 - ldr r3, _0806B3CC - mov r9, r3 - ldr r5, _0806B3D0 -_0806B366: - lsls r0, r2, 16 - asrs r7, r0, 16 - mov r4, r9 - ldr r1, [r4] - ldr r3, _0806B3D4 - adds r0, r1, r3 - movs r4, 0 - ldrsh r0, [r0, r4] - adds r0, r7, r0 - asrs r6, r2, 16 - ldr r2, _0806B3D8 - adds r1, r2 - movs r3, 0 - ldrsh r1, [r1, r3] - adds r1, r6, r1 - bl sub_804954C - adds r1, r0, 0 - mov r4, r8 - movs r2, 0xE - ldrsh r0, [r4, r2] - bl sub_807034C - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0806B3DC - mov r3, r8 - movs r1, 0xE - ldrsh r0, [r3, r1] - mov r3, r9 - ldr r2, [r3] - ldr r3, _0806B3D4 -_0806B3A8: - adds r1, r2, r3 - movs r3, 0 - ldrsh r1, [r1, r3] - adds r1, r7, r1 - ldr r3, _0806B3D8 - adds r2, r3 - movs r3, 0 - ldrsh r2, [r2, r3] - adds r2, r6, r2 - str r4, [sp] - movs r3, 0x1 - str r3, [sp, 0x4] - str r4, [sp, 0x8] - mov r3, r8 - bl sub_806B8CC - b _0806B3E8 - .align 2, 0 -_0806B3CC: .4byte gUnknown_203B418 -_0806B3D0: .4byte gUnknown_80F4598 -_0806B3D4: .4byte 0x0000e218 -_0806B3D8: .4byte 0x0000e21a -_0806B3DC: - adds r5, 0x4 - ldr r2, [r5] - movs r4, 0 - ldrsh r0, [r5, r4] - cmp r0, 0x63 - bne _0806B366 -_0806B3E8: - ldr r3, [sp, 0x34] - cmp r3, 0x3 - bgt _0806B3F0 - b _0806B282 -_0806B3F0: - bl sub_806B678 - add sp, 0x3C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806B168 - - thumb_func_start sub_806B404 -sub_806B404: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - movs r5, 0 - movs r2, 0 - ldr r0, _0806B480 - mov r9, r0 - ldr r0, _0806B484 - ldr r7, [r0] - movs r6, 0x1 - ldr r1, _0806B488 - mov r8, r1 -_0806B422: - movs r0, 0x64 - muls r0, r2 - ldr r3, _0806B48C - adds r0, r3 - adds r3, r7, r0 - ldrh r1, [r3] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0806B446 - lsrs r0, r1, 1 - ands r0, r6 - cmp r0, 0 - beq _0806B446 - movs r1, 0xA - ldrsh r0, [r3, r1] - cmp r0, r8 - beq _0806B490 -_0806B446: - adds r2, 0x1 - cmp r2, 0x3 - ble _0806B422 -_0806B44C: - cmp r5, 0x3 - bgt _0806B460 - movs r1, 0 - lsls r0, r5, 2 - add r0, sp - adds r0, 0xC -_0806B458: - stm r0!, {r1} - adds r5, 0x1 - cmp r5, 0x3 - ble _0806B458 -_0806B460: - movs r0, 0 - mov r2, r9 - str r0, [r2] - bl sub_8083600 - adds r5, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806B49C - ldrh r0, [r5, 0x6] - lsls r0, 16 - ldrh r4, [r5, 0x4] - b _0806B4AE - .align 2, 0 -_0806B480: .4byte gUnknown_203B450 -_0806B484: .4byte gUnknown_203B45C -_0806B488: .4byte 0x000055aa -_0806B48C: .4byte 0x00008df8 -_0806B490: - lsls r0, r5, 2 - add r0, sp - adds r0, 0xC - str r3, [r0] - adds r5, 0x1 - b _0806B44C -_0806B49C: - ldr r0, _0806B560 - ldr r0, [r0] - ldr r3, _0806B564 - adds r1, r0, r3 - ldr r2, _0806B568 - adds r0, r2 - ldrh r0, [r0] - lsls r0, 16 - ldrh r4, [r1] -_0806B4AE: - orrs r4, r0 - lsls r5, r4, 16 - asrs r0, r5, 16 - asrs r4, 16 - adds r1, r4, 0 - bl sub_804954C - ldrb r0, [r0, 0x9] - str r0, [sp, 0x20] - movs r2, 0 - str r5, [sp, 0x24] - mov r10, r4 -_0806B4C6: - lsls r0, r2, 2 - add r0, sp - adds r0, 0xC - ldr r6, [r0] - adds r2, 0x1 - str r2, [sp, 0x28] - cmp r6, 0 - bne _0806B4D8 - b _0806B65E -_0806B4D8: - ldrh r1, [r6] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _0806B4E6 - b _0806B65E -_0806B4E6: - lsrs r0, r1, 1 - ands r0, r2 - cmp r0, 0 - bne _0806B4F0 - b _0806B65E -_0806B4F0: - movs r3, 0xA - ldrsh r1, [r6, r3] - ldr r0, _0806B56C - cmp r1, r0 - beq _0806B4FC - b _0806B65E -_0806B4FC: - ldr r0, _0806B570 - strh r0, [r6, 0xA] - movs r7, 0 - ldr r2, _0806B574 - ldr r0, [r2] - str r0, [sp, 0x1C] - add r0, sp, 0x1C - movs r3, 0 - ldrsh r1, [r0, r3] - mov r9, r2 - adds r2, r0, 0 - cmp r1, 0x63 - beq _0806B58C - ldr r0, [sp, 0x24] - asrs r0, 16 - mov r8, r0 -_0806B51C: - movs r1, 0 - ldrsh r0, [r2, r1] - add r0, r8 - ldr r1, [sp, 0x1C] - asrs r1, 16 - mov r5, r10 - adds r1, r5 - str r2, [sp, 0x2C] - bl sub_804954C - adds r1, r0, 0 - ldrb r0, [r1, 0x9] - ldr r2, [sp, 0x2C] - ldr r3, [sp, 0x20] - cmp r0, r3 - bne _0806B578 - movs r3, 0xE - ldrsh r0, [r6, r3] - bl sub_807034C - lsls r0, 24 - lsrs r4, r0, 24 - ldr r2, [sp, 0x2C] - cmp r4, 0 - bne _0806B578 - movs r1, 0xE - ldrsh r0, [r6, r1] - movs r3, 0 - ldrsh r1, [r2, r3] - add r1, r8 - ldr r2, [sp, 0x1C] - asrs r2, 16 - adds r2, r5 - b _0806B642 - .align 2, 0 -_0806B560: .4byte gUnknown_203B418 -_0806B564: .4byte 0x0000e218 -_0806B568: .4byte 0x0000e21a -_0806B56C: .4byte 0x000055aa -_0806B570: .4byte 0x00005aa5 -_0806B574: .4byte gUnknown_80F4598 -_0806B578: - adds r7, 0x1 - ldr r1, _0806B5E4 - lsls r0, r7, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [sp, 0x1C] - movs r1, 0 - ldrsh r0, [r2, r1] - cmp r0, 0x63 - bne _0806B51C -_0806B58C: - movs r3, 0 - cmp r3, 0 - bne _0806B65E - movs r7, 0 - mov r1, r9 - ldr r0, [r1] - str r0, [sp, 0x1C] - movs r3, 0 - ldrsh r0, [r2, r3] - cmp r0, 0x63 - beq _0806B5FC - ldr r0, [sp, 0x24] - asrs r0, 16 - mov r8, r0 -_0806B5A8: - movs r1, 0 - ldrsh r0, [r2, r1] - add r0, r8 - ldr r1, [sp, 0x1C] - asrs r1, 16 - mov r5, r10 - adds r1, r5 - str r2, [sp, 0x2C] - bl sub_804954C - adds r1, r0, 0 - movs r3, 0xE - ldrsh r0, [r6, r3] - bl sub_807034C - lsls r0, 24 - lsrs r4, r0, 24 - ldr r2, [sp, 0x2C] - cmp r4, 0 - bne _0806B5E8 - movs r1, 0xE - ldrsh r0, [r6, r1] - movs r3, 0 - ldrsh r1, [r2, r3] - add r1, r8 - ldr r2, [sp, 0x1C] - asrs r2, 16 - adds r2, r5 - b _0806B642 - .align 2, 0 -_0806B5E4: .4byte gUnknown_80F4598 -_0806B5E8: - adds r7, 0x1 - ldr r1, _0806B654 - lsls r0, r7, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [sp, 0x1C] - movs r1, 0 - ldrsh r0, [r2, r1] - cmp r0, 0x63 - bne _0806B5A8 -_0806B5FC: - movs r3, 0 - cmp r3, 0 - bne _0806B65E - movs r7, 0 - adds r5, r2, 0 -_0806B606: - adds r0, r5, 0 - str r2, [sp, 0x2C] - bl sub_8083660 - lsls r0, 24 - ldr r2, [sp, 0x2C] - cmp r0, 0 - beq _0806B658 - movs r1, 0 - ldrsh r0, [r2, r1] - movs r3, 0x2 - ldrsh r1, [r5, r3] - bl sub_804954C - adds r1, r0, 0 - movs r3, 0xE - ldrsh r0, [r6, r3] - bl sub_807034C - lsls r0, 24 - lsrs r4, r0, 24 - ldr r2, [sp, 0x2C] - cmp r4, 0 - bne _0806B658 - movs r1, 0xE - ldrsh r0, [r6, r1] - movs r3, 0 - ldrsh r1, [r2, r3] - movs r3, 0x2 - ldrsh r2, [r5, r3] -_0806B642: - str r4, [sp] - movs r3, 0x1 - str r3, [sp, 0x4] - str r4, [sp, 0x8] - adds r3, r6, 0 - bl sub_806B8CC - b _0806B65E - .align 2, 0 -_0806B654: .4byte gUnknown_80F4598 -_0806B658: - adds r7, 0x1 - cmp r7, 0x63 - ble _0806B606 -_0806B65E: - ldr r2, [sp, 0x28] - cmp r2, 0x3 - bgt _0806B666 - b _0806B4C6 -_0806B666: - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806B404 - - thumb_func_start sub_806B678 -sub_806B678: - push {r4,r5,lr} - movs r5, 0 -_0806B67C: - ldr r0, _0806B6AC - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0806B6B0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806B6B8 - ldr r0, [r4, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0806B6B8 - adds r0, r4, 0 - bl sub_803F4A0 - ldr r1, _0806B6B4 - ldr r0, [r4, 0x4] - str r0, [r1] - b _0806B6BE - .align 2, 0 -_0806B6AC: .4byte gUnknown_203B418 -_0806B6B0: .4byte 0x0001357c -_0806B6B4: .4byte gUnknown_202EE0C -_0806B6B8: - adds r5, 0x1 - cmp r5, 0x3 - ble _0806B67C -_0806B6BE: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_806B678 - - thumb_func_start sub_806B6C4 -sub_806B6C4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - ldr r4, _0806B708 - ldr r0, [r4] - movs r1, 0xD1 - lsls r1, 3 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - mov r8, r0 - movs r0, 0x7A - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - beq _0806B710 - movs r0, 0x97 - bl sub_808E734 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0806B710 - ldr r0, [r4] - ldr r2, _0806B70C - adds r0, r2 - b _0806B71A - .align 2, 0 -_0806B708: .4byte gUnknown_203B418 -_0806B70C: .4byte 0x000037ff -_0806B710: - ldr r0, _0806B77C - ldr r0, [r0] - ldr r1, _0806B780 - adds r0, r1 - movs r1, 0x1 -_0806B71A: - strb r1, [r0] - movs r0, 0x38 - bl sub_8084100 - adds r5, r0, 0 - movs r0, 0x20 - bl sub_8084100 - adds r7, r0, 0 - movs r0, 0 -_0806B72E: - adds r7, 0x1 - cmp r7, 0x20 - bne _0806B736 - movs r7, 0 -_0806B736: - adds r0, 0x1 - mov r10, r0 - mov r4, sp - movs r2, 0x37 - mov r9, r2 -_0806B740: - adds r5, 0x1 - cmp r5, 0x38 - bne _0806B748 - movs r5, 0 -_0806B748: - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_804954C - ldrh r1, [r0, 0x4] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0806B7C2 - movs r6, 0 - mov r0, r8 - cmp r0, 0 - beq _0806B784 - ldr r0, _0806B77C - ldr r0, [r0] - movs r1, 0xD1 - lsls r1, 3 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r4] - movs r1, 0x1 - movs r0, 0x1 - strh r0, [r4, 0x8] - strb r1, [r4, 0x2] - movs r6, 0x1 - b _0806B794 - .align 2, 0 -_0806B77C: .4byte gUnknown_203B418 -_0806B780: .4byte 0x000037ff -_0806B784: - movs r0, 0 - bl sub_803D970 - movs r1, 0 - strh r0, [r4] - mov r2, r8 - strh r2, [r4, 0x8] - strb r1, [r4, 0x2] -_0806B794: - movs r0, 0 - str r0, [sp, 0x4] - strb r0, [r4, 0x10] - strh r5, [r4, 0xC] - strh r7, [r4, 0xE] - cmp r6, 0 - bne _0806B7B2 - movs r1, 0 - ldrsh r0, [r4, r1] - movs r1, 0x1 - bl sub_806AA0C - lsls r0, 24 - cmp r0, 0 - beq _0806B7C2 -_0806B7B2: - mov r0, sp - movs r1, 0 - bl sub_806B7F8 - cmp r0, 0 - beq _0806B7C2 - movs r2, 0 - mov r8, r2 -_0806B7C2: - movs r0, 0x1 - negs r0, r0 - add r9, r0 - mov r1, r9 - cmp r1, 0 - bge _0806B740 - mov r0, r10 - cmp r0, 0x1F - ble _0806B72E - mov r2, r8 - cmp r2, 0 - beq _0806B7E2 - ldr r0, _0806B7F4 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0xA] -_0806B7E2: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806B7F4: .4byte gUnknown_203B418 - thumb_func_end sub_806B6C4 - - thumb_func_start sub_806B7F8 -sub_806B7F8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - adds r6, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - movs r1, 0xC - ldrsh r0, [r6, r1] - movs r2, 0xE - ldrsh r1, [r6, r2] - bl sub_804954C - adds r1, r0, 0 - movs r3, 0 - ldrsh r0, [r6, r3] - bl sub_807034C - lsls r0, 24 - cmp r0, 0 - bne _0806B834 - movs r4, 0 - ldrsh r0, [r6, r4] - bl sub_804550C - adds r7, r0, 0 - cmp r7, 0 - bne _0806B838 -_0806B834: - movs r0, 0 - b _0806B8B8 -_0806B838: - ldr r3, _0806B8C8 - movs r0, 0 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_806BC68 - ldr r5, [r7, 0x70] - movs r0, 0x1 - strb r0, [r5, 0x6] - movs r1, 0x8C - lsls r1, 1 - adds r0, r5, r1 - adds r1, r5, 0 - adds r1, 0x10 - adds r2, r5, 0 - adds r2, 0x14 - movs r3, 0x16 - adds r3, r5 - mov r9, r3 - movs r3, 0x2 - ldrsh r4, [r5, r3] - str r4, [sp] - ldrb r4, [r5, 0x9] - str r4, [sp, 0x4] - mov r3, r9 - bl sub_806AED8 - ldrh r0, [r5, 0x10] - strh r0, [r5, 0xE] - movs r4, 0x8A - lsls r4, 1 - adds r1, r5, r4 - ldr r0, [r6, 0x4] - str r0, [r1] - ldrb r0, [r6, 0x2] - cmp r0, 0 - bne _0806B8B6 - mov r0, r8 - cmp r0, 0 - bne _0806B8B6 - ldrb r0, [r6, 0x10] - cmp r0, 0 - bne _0806B8B6 - movs r0, 0x64 - bl sub_8084100 - adds r4, r0, 0 - movs r1, 0 - ldrsh r0, [r6, r1] - bl sub_808DB60 - lsls r0, 24 - lsrs r0, 24 - cmp r0, r4 - ble _0806B8B6 - adds r0, r7, 0 - movs r1, 0x7F - bl sub_8075BF4 - adds r0, r7, 0 - movs r1, 0x8 - bl sub_806CE68 -_0806B8B6: - adds r0, r7, 0 -_0806B8B8: - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0806B8C8: .4byte gUnknown_202EE0C - thumb_func_end sub_806B7F8 - - thumb_func_start sub_806B8CC -sub_806B8CC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - mov r9, r1 - mov r10, r2 - adds r5, r3, 0 - ldr r1, [sp, 0x50] - ldr r2, [sp, 0x54] - lsls r0, 16 - asrs r4, r0, 16 - lsls r1, 24 - lsrs r6, r1, 24 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x18] - ldrb r1, [r5, 0x2] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - mov r8, r0 - ldr r0, [sp, 0x4C] - cmp r0, 0 - beq _0806B906 - movs r0, 0 - ldr r1, [sp, 0x4C] - str r0, [r1] -_0806B906: - adds r0, r4, 0 - bl sub_808E770 - lsls r0, 16 - asrs r1, r0, 16 - movs r0, 0xCF - lsls r0, 1 - cmp r1, r0 - bne _0806B932 - cmp r6, 0 - beq _0806B930 - ldr r0, _0806B92C - ldr r0, [r0] - movs r2, 0xE0 - lsls r2, 6 - adds r0, r2 - movs r3, 0 - ldrsh r4, [r0, r3] - b _0806B932 - .align 2, 0 -_0806B92C: .4byte gUnknown_203B418 -_0806B930: - adds r4, r1, 0 -_0806B932: - mov r0, r9 - mov r1, r10 - bl sub_804954C - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_807034C - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - bne _0806B956 - adds r0, r4, 0 - bl sub_80453AC - str r0, [sp, 0x1C] - cmp r0, 0 - bne _0806B95A -_0806B956: - movs r0, 0 - b _0806BB3C -_0806B95A: - mov r0, sp - movs r7, 0 - mov r1, r9 - strh r1, [r0, 0xC] - mov r2, r10 - strh r2, [r0, 0xE] - strh r4, [r0] - mov r1, sp - ldrb r0, [r5, 0x3] - strh r0, [r1, 0x8] - mov r0, sp - strb r7, [r0, 0x2] - str r6, [sp, 0x4] - strb r7, [r0, 0x10] - ldr r4, _0806BB4C - ldr r3, _0806BB50 - ldrb r0, [r3] - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0] - add r0, r9 - lsls r0, 16 - lsrs r0, 16 - ldr r2, _0806BB54 - ldr r1, [sp, 0x14] - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x14] - ldrb r0, [r3] - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x2] - add r0, r10 - lsls r0, 16 - ldr r2, _0806BB58 - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x14] - ldr r3, _0806BB5C - mov r0, r8 - cmp r0, 0 - beq _0806B9B0 - add r3, sp, 0x14 -_0806B9B0: - movs r0, 0x1 - ldr r1, [sp, 0x1C] - mov r2, sp - bl sub_806BC68 - ldr r1, [sp, 0x1C] - ldr r4, [r1, 0x70] - strb r7, [r4, 0x6] - strb r7, [r4, 0x8] - mov r2, r8 - strb r2, [r4, 0x7] - adds r0, r4, 0 - adds r0, 0xF9 - mov r3, sp - ldrb r3, [r3, 0x18] - strb r3, [r0] - ldr r0, _0806BB60 - str r6, [r0] - mov r6, r8 - cmp r6, 0 - beq _0806B9E4 - ldr r0, _0806BB5C - mov r7, r9 - strh r7, [r0] - mov r1, r10 - strh r1, [r0, 0x2] -_0806B9E4: - ldrh r0, [r5, 0x10] - strh r0, [r4, 0xE] - ldrh r0, [r5, 0x12] - strh r0, [r4, 0x10] - ldr r0, [r5, 0x18] - str r0, [r4, 0x18] - movs r3, 0 - movs r2, 0x1C - adds r2, r5 - mov r8, r2 - movs r6, 0x50 - adds r6, r5 - mov r10, r6 - movs r7, 0x94 - adds r7, r4 - mov r9, r7 - adds r0, r4, 0 - adds r0, 0x8C - str r0, [sp, 0x20] - adds r1, r4, 0 - adds r1, 0xF3 - str r1, [sp, 0x24] - adds r2, r4, 0 - adds r2, 0x64 - str r2, [sp, 0x28] - movs r6, 0x14 - adds r6, r4 - mov r12, r6 - adds r7, r5, 0 - adds r7, 0x14 - adds r6, r4, 0 - adds r6, 0x16 - adds r2, r5, 0 - adds r2, 0x16 -_0806BA28: - mov r0, r12 - adds r1, r0, r3 - adds r0, r7, r3 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r6, r3 - adds r0, r2, r3 - ldrb r0, [r0] - strb r0, [r1] - adds r3, 0x1 - cmp r3, 0x1 - ble _0806BA28 - movs r1, 0x8C - lsls r1, 1 - adds r2, r4, r1 - adds r1, r2, 0 - mov r0, r8 - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - movs r0, 0x1 - mov r8, r0 - movs r7, 0xEF - movs r6, 0xDF - movs r3, 0x3 -_0806BA60: - ldrb r1, [r2] - mov r0, r8 - ands r0, r1 - cmp r0, 0 - beq _0806BA72 - adds r0, r7, 0 - ands r0, r1 - ands r0, r6 - strb r0, [r2] -_0806BA72: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _0806BA60 - movs r1, 0x9C - lsls r1, 1 - adds r2, r4, r1 - ldrb r1, [r2] - movs r0, 0xEF - ands r0, r1 - movs r1, 0xDF - ands r0, r1 - strb r0, [r2] - ldrb r0, [r5, 0x3] - strb r0, [r4, 0x9] - ldrh r0, [r5, 0x8] - movs r2, 0 - strh r0, [r4, 0xC] - mov r3, r10 - ldrb r0, [r3] - mov r6, r9 - strb r0, [r6] - ldr r0, [r5, 0x4C] - ldr r7, [sp, 0x20] - str r0, [r7] - ldr r0, [r5, 0x54] - str r0, [r4, 0x3C] - ldr r0, [r5, 0x4] - str r0, [r4, 0x40] - movs r0, 0x9E - lsls r0, 1 - adds r1, r4, r0 - ldr r0, [r5, 0x44] - str r0, [r1] - movs r3, 0xA0 - lsls r3, 1 - adds r1, r4, r3 - ldr r0, [r5, 0x48] - str r0, [r1] - ldrh r0, [r5, 0xC] - strb r0, [r4, 0xA] - ldr r0, [r5, 0x40] - str r0, [r4, 0x60] - ldr r0, [sp, 0x24] - strb r2, [r0] - ldr r6, [sp, 0x28] - strb r2, [r6] - ldr r7, _0806BB64 - ldr r0, [r7] - ldr r1, _0806BB68 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0806BB24 - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - bne _0806BB24 - adds r0, r4, 0 - adds r0, 0x5E - ldrb r0, [r0] - cmp r0, 0x47 - beq _0806BAFC - adds r0, r4, 0 - adds r0, 0x5F - ldrb r0, [r0] - cmp r0, 0x47 - bne _0806BB24 -_0806BAFC: - adds r4, 0x60 - ldrb r1, [r4] - movs r5, 0x1 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _0806BB24 - movs r0, 0 - bl sub_803D73C - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x69 - beq _0806BB24 - adds r0, r4, 0 - movs r2, 0 - bl sub_8090A8C - ldr r2, [sp, 0x24] - strb r5, [r2] -_0806BB24: - ldr r0, [sp, 0x1C] - bl sub_806A6E8 - ldr r0, [sp, 0x1C] - bl sub_807191C - ldr r3, [sp, 0x4C] - cmp r3, 0 - beq _0806BB3A - ldr r6, [sp, 0x1C] - str r6, [r3] -_0806BB3A: - movs r0, 0x1 -_0806BB3C: - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0806BB4C: .4byte gUnknown_80F4448 -_0806BB50: .4byte gUnknown_202F32C -_0806BB54: .4byte 0xffff0000 -_0806BB58: .4byte 0x0000ffff -_0806BB5C: .4byte gUnknown_202EE0C -_0806BB60: .4byte gUnknown_203B450 -_0806BB64: .4byte gUnknown_203B418 -_0806BB68: .4byte 0x00000644 - thumb_func_end sub_806B8CC - - thumb_func_start sub_806BB6C -sub_806BB6C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - adds r7, r0, 0 - lsls r4, r1, 16 - asrs r4, 16 - ldr r0, [r7, 0x70] - mov r9, r0 - mov r8, r9 - adds r0, 0x98 - ldr r0, [r0] - bl sub_800F934 - add r0, sp, 0x8 - movs r1, 0 - mov r10, r1 - movs r6, 0 - lsls r5, r4, 16 - lsrs r5, 16 - strh r5, [r0] - strh r6, [r0, 0x8] - mov r2, r10 - strb r2, [r0, 0x2] - ldr r0, [r7, 0x4] - str r0, [sp, 0x14] - str r6, [sp, 0xC] - movs r0, 0 - adds r1, r4, 0 - bl sub_8069F54 - lsls r0, 16 - adds r1, r7, 0 - adds r1, 0x22 - mov r2, r10 - strb r2, [r1] - ldr r1, [r7, 0x70] - asrs r2, r0, 16 - lsrs r0, 16 - strh r0, [r1, 0x4] - ldr r0, [r7, 0x70] - strh r5, [r0, 0x2] - adds r0, r2, 0 - bl sub_80687D0 - str r0, [r7, 0x64] - adds r1, r7, 0 - adds r1, 0x6A - movs r0, 0x7 - strb r0, [r1] - adds r0, r7, 0 - adds r0, 0x6C - mov r5, r10 - strb r5, [r0] - adds r1, 0x1 - movs r0, 0xFF - strb r0, [r1] - adds r1, 0x2 - movs r0, 0x1 - strb r0, [r1] - adds r1, 0x2 - strb r0, [r1] - str r6, [r7, 0x1C] - mov r0, r9 - adds r0, 0xB0 - ldrb r0, [r0] - subs r0, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0806BC08 - mov r0, r9 - adds r0, 0x9C - ldr r0, [r0] - bl sub_8076CB4 -_0806BC08: - movs r1, 0 - mov r6, r9 - ldrb r0, [r6, 0x6] - cmp r0, 0 - bne _0806BC14 - movs r1, 0x1 -_0806BC14: - adds r0, r1, 0 - adds r1, r7, 0 - add r2, sp, 0x8 - movs r3, 0 - bl sub_806BC68 - movs r0, 0x8C - lsls r0, 1 - add r0, r8 - mov r1, r8 - adds r1, 0x10 - mov r2, r8 - adds r2, 0x14 - mov r3, r8 - adds r3, 0x16 - mov r5, r8 - movs r6, 0x2 - ldrsh r4, [r5, r6] - str r4, [sp] - ldrb r4, [r5, 0x9] - str r4, [sp, 0x4] - bl sub_806AED8 - ldrh r0, [r5, 0x10] - strh r0, [r5, 0xE] - mov r0, r10 - strb r0, [r5, 0x8] - adds r0, r7, 0 - bl sub_80429E8 - adds r0, r7, 0 - bl sub_80418D4 - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806BB6C - - thumb_func_start sub_806BC68 -sub_806BC68: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - adds r4, r0, 0 - mov r8, r1 - adds r7, r2, 0 - mov r10, r3 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _0806BD0C - ldr r0, [r1] - movs r5, 0 - movs r2, 0x1 - mov r9, r2 - mov r3, r9 - strb r3, [r0, 0xC] - mov r0, r8 - ldr r6, [r0, 0x70] - adds r0, r6, 0 - movs r1, 0x1 - bl sub_806BFC0 - ldrb r1, [r7, 0x2] - adds r0, r6, 0 - adds r0, 0xA4 - strb r1, [r0] - mov r0, r8 - adds r0, 0x20 - mov r1, r9 - strb r1, [r0] - adds r0, 0x2 - strb r5, [r0] - ldr r0, _0806BD10 - mov r2, r8 - strh r0, [r2, 0x8] - movs r0, 0x1 - negs r0, r0 - strh r0, [r2, 0xA] - ldr r0, _0806BD14 - strh r0, [r2, 0x4] - strh r0, [r2, 0x6] - movs r3, 0xC - ldrsh r1, [r7, r3] - movs r0, 0xE - ldrsh r2, [r7, r0] - mov r0, r8 - movs r3, 0x1 - bl sub_80694C0 - mov r0, r8 - movs r1, 0 - bl sub_804535C - cmp r4, 0 - bne _0806BD5E - movs r2, 0 - ldrsh r1, [r7, r2] - movs r0, 0xBE - lsls r0, 1 - cmp r1, r0 - bne _0806BD20 - ldr r3, _0806BD0C - ldr r1, [r3] - ldr r4, _0806BD18 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _0806BD20 - ldr r2, _0806BD1C - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0806BD20 - ldrb r0, [r7, 0x2] - cmp r0, 0 - bne _0806BD20 - mov r3, r9 - strb r3, [r6, 0x8] - b _0806BD24 - .align 2, 0 -_0806BD0C: .4byte gUnknown_203B418 -_0806BD10: .4byte 0x0000ffff -_0806BD14: .4byte 0x0000fffe -_0806BD18: .4byte 0x0000066e -_0806BD1C: .4byte 0x00003a0a -_0806BD20: - movs r0, 0 - strb r0, [r6, 0x8] -_0806BD24: - movs r4, 0x2 - ldrsh r0, [r6, r4] - bl sub_808E770 - lsls r0, 16 - movs r1, 0xCF - lsls r1, 17 - cmp r0, r1 - bne _0806BD42 - ldr r0, _0806BD94 - ldr r0, [r0] - ldr r1, _0806BD98 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] -_0806BD42: - movs r2, 0x2 - ldrsh r0, [r6, r2] - bl sub_808E770 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x97 - bne _0806BD5E - ldr r0, _0806BD94 - ldr r0, [r0] - ldr r3, _0806BD9C - adds r0, r3 - movs r1, 0x1 - strb r1, [r0] -_0806BD5E: - adds r2, r6, 0 - adds r2, 0x98 - ldr r0, _0806BD94 - ldr r1, [r0] - ldr r4, _0806BDA0 - adds r1, r4 - ldr r0, [r1] - str r0, [r2] - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - adds r1, r6, 0 - adds r1, 0x9C - movs r0, 0 - str r0, [r1] - ldrh r1, [r7, 0x8] - movs r3, 0x8 - ldrsh r0, [r7, r3] - mov r9, r2 - cmp r0, 0 - bne _0806BDA4 - movs r4, 0 - ldrsh r0, [r7, r4] - bl sub_803DA20 - strb r0, [r6, 0x9] - b _0806BDA6 - .align 2, 0 -_0806BD94: .4byte gUnknown_203B418 -_0806BD98: .4byte 0x000037fd -_0806BD9C: .4byte 0x000037ff -_0806BDA0: .4byte 0x000037f0 -_0806BDA4: - strb r1, [r6, 0x9] -_0806BDA6: - movs r0, 0x8A - lsls r0, 1 - adds r1, r6, r0 - ldr r0, [r7, 0x4] - str r0, [r1] - movs r4, 0x1 - strh r4, [r6, 0xC] - adds r0, r6, 0 - adds r0, 0x8C - movs r1, 0 - bl sub_808EC94 - adds r0, r6, 0 - adds r0, 0x3C - bl sub_808E6F4 - strh r4, [r6, 0x10] - strh r4, [r6, 0xE] - mov r0, sp - movs r1, 0x64 - bl sub_80943A0 - movs r2, 0x9E - lsls r2, 1 - adds r1, r6, r2 - ldr r0, [sp] - str r0, [r1] - add r0, sp, 0x4 - movs r1, 0x64 - bl sub_80943A0 - movs r3, 0xA0 - lsls r3, 1 - adds r1, r6, r3 - ldr r0, [sp, 0x4] - str r0, [r1] - mov r4, r10 - cmp r4, 0 - beq _0806BE00 - movs r0, 0xB6 - lsls r0, 1 - adds r1, r6, r0 - ldr r0, [r4] - str r0, [r1] - b _0806BE12 -_0806BE00: - movs r1, 0xB6 - lsls r1, 1 - adds r0, r6, r1 - mov r2, r10 - strh r2, [r0] - movs r3, 0xB7 - lsls r3, 1 - adds r0, r6, r3 - strh r2, [r0] -_0806BE12: - movs r7, 0 - movs r4, 0 - strh r4, [r6] - movs r1, 0xA2 - lsls r1, 1 - adds r0, r6, r1 - strb r7, [r0] - ldr r2, _0806BFB4 - adds r0, r6, r2 - strb r7, [r0] - movs r3, 0xFA - lsls r3, 1 - adds r0, r6, r3 - strh r4, [r0] - adds r1, 0xB2 - adds r0, r6, r1 - strh r4, [r0] - adds r0, r6, 0 - adds r0, 0x78 - strb r7, [r0] - adds r1, r6, 0 - adds r1, 0x88 - mov r2, r8 - ldr r0, [r2, 0x4] - str r0, [r1] - adds r0, r6, 0 - adds r0, 0x80 - str r4, [r0] - adds r0, 0x4 - str r4, [r0] - subs r0, 0x8 - strh r4, [r0] - adds r0, 0x83 - strb r7, [r0] - subs r3, 0x80 - adds r0, r6, r3 - str r4, [r0] - movs r1, 0x80 - lsls r1, 1 - adds r0, r6, r1 - strb r7, [r0] - adds r0, r6, 0 - movs r1, 0x1 - bl sub_806BFC0 - adds r0, r6, 0 - adds r0, 0x60 - strb r7, [r0, 0x2] - strb r7, [r0, 0x1] - strb r7, [r0] - adds r0, 0x4 - strb r7, [r0] - movs r2, 0x80 - lsls r2, 2 - adds r0, r6, r2 - str r4, [r0] - movs r3, 0xB2 - lsls r3, 1 - adds r1, r6, r3 - movs r0, 0xFF - strb r0, [r1] - adds r0, 0x66 - adds r1, r6, r0 - movs r0, 0x1 - negs r0, r0 - strb r0, [r1] - movs r1, 0xFE - lsls r1, 1 - adds r0, r6, r1 - str r4, [r0] - subs r2, 0xB9 - adds r0, r6, r2 - strb r7, [r0] - subs r3, 0x1E - adds r0, r6, r3 - strb r7, [r0] - subs r1, 0x96 - adds r0, r6, r1 - strb r7, [r0] - adds r2, 0xB1 - adds r0, r6, r2 - strh r4, [r0] - adds r3, 0xB4 - adds r0, r6, r3 - strh r4, [r0] - subs r1, 0x1E - adds r0, r6, r1 - strb r7, [r0] - subs r2, 0xAF - adds r0, r6, r2 - strb r7, [r0] - subs r3, 0x82 - adds r0, r6, r3 - strh r4, [r0] - adds r0, r6, 0 - adds r0, 0xFA - strb r7, [r0] - adds r0, 0x2 - strb r7, [r0] - adds r1, 0x3 - adds r0, r6, r1 - strb r7, [r0] - adds r2, 0x3 - adds r0, r6, r2 - movs r5, 0x1 - strb r5, [r0] - subs r3, 0x2A - adds r0, r6, r3 - strh r4, [r0] - adds r1, 0x5 - adds r0, r6, r1 - strh r4, [r0] - adds r2, 0x6 - adds r0, r6, r2 - strb r7, [r0] - adds r3, 0x5 - adds r0, r6, r3 - strb r7, [r0] - movs r4, 0xAA - lsls r4, 1 - adds r0, r6, r4 - strb r7, [r0] - adds r1, 0x5 - adds r0, r6, r1 - strb r7, [r0] - adds r2, 0x17 - adds r0, r6, r2 - strb r7, [r0] - adds r0, r6, 0 - adds r0, 0xFD - strb r7, [r0] - adds r1, r6, 0 - adds r1, 0xFE - movs r0, 0x63 - strb r0, [r1] - adds r3, 0x5 - adds r0, r6, r3 - strb r7, [r0] - adds r4, 0x5 - adds r0, r6, r4 - strb r7, [r0] - movs r1, 0xAD - lsls r1, 1 - adds r0, r6, r1 - strb r7, [r0] - mov r0, r8 - bl sub_8070774 - movs r2, 0xAB - lsls r2, 1 - adds r1, r6, r2 - strb r5, [r1] - movs r3, 0xAE - lsls r3, 1 - adds r0, r6, r3 - strb r7, [r0] - adds r4, 0x5 - adds r0, r6, r4 - strb r7, [r0] - adds r2, 0x7 - adds r0, r6, r2 - strb r7, [r0] - adds r3, 0x3 - adds r0, r6, r3 - strb r7, [r0] - adds r4, 0x2 - adds r0, r6, r4 - strb r7, [r0] - ldrh r0, [r6, 0x4] - subs r0, 0x32 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _0806BF70 - strb r7, [r1] -_0806BF70: - mov r0, r8 - ldrh r1, [r0, 0x6] - lsls r1, 16 - ldrh r0, [r0, 0x4] - orrs r0, r1 - str r0, [sp, 0x8] - mov r1, r9 - ldr r0, [r1] - movs r2, 0x4 - ldrsh r1, [r6, r2] - add r2, sp, 0x8 - ldr r3, _0806BFB8 - ldr r3, [r3] - ldr r4, _0806BFBC - adds r3, r4 - ldrb r3, [r3] - bl sub_800F8D0 - mov r0, r8 - bl sub_807191C - mov r0, r8 - movs r1, 0 - movs r2, 0 - bl sub_806A898 - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806BFB4: .4byte 0x00000145 -_0806BFB8: .4byte gUnknown_203B418 -_0806BFBC: .4byte 0x00018208 - thumb_func_end sub_806BC68 - - thumb_func_start sub_806BFC0 -sub_806BFC0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x3C - adds r4, r0, 0 - lsls r1, 24 - lsrs r1, 24 - str r1, [sp] - adds r1, r4, 0 - adds r1, 0xA8 - movs r0, 0 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x3 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x8 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r2, r4, 0 - adds r2, 0xB4 - movs r1, 0x22 - str r1, [r2] - adds r1, r4, 0 - adds r1, 0xBC - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x3 - strb r0, [r1] - adds r1, 0x4 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x3 - strb r0, [r1] - adds r1, 0x3 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x4 - strb r0, [r1] - adds r1, 0x9 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x2 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x3 - strb r0, [r1] - adds r1, 0x4 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x3 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x3 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x3 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x1 - strb r0, [r1] - movs r0, 0xB2 - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0xFF - strb r0, [r1] - ldr r2, _0806C168 - adds r1, r4, r2 - movs r0, 0x1 - negs r0, r0 - strb r0, [r1] - movs r1, 0 - movs r7, 0x84 - lsls r7, 1 - adds r0, r4, r7 - movs r5, 0x4 -_0806C080: - strb r1, [r0] - strb r1, [r0, 0x5] - adds r0, 0x1 - subs r5, 0x1 - cmp r5, 0 - bge _0806C080 - movs r0, 0 - str r0, [sp, 0x4] - movs r5, 0 - adds r1, r4, 0 - adds r1, 0x5E - str r1, [sp, 0x8] - movs r2, 0x5C - adds r2, r4 - mov r10, r2 - adds r7, r4, 0 - adds r7, 0xFD - str r7, [sp, 0x20] - adds r0, r4, 0 - adds r0, 0xF4 - str r0, [sp, 0xC] - adds r1, 0x9D - str r1, [sp, 0x1C] - adds r2, r4, 0 - adds r2, 0xF5 - str r2, [sp, 0x10] - subs r7, 0x7 - str r7, [sp, 0x14] - adds r0, 0x3 - str r0, [sp, 0x18] - adds r1, 0x4 - str r1, [sp, 0x24] - movs r2, 0x1 - mov r9, r2 - movs r3, 0xA - subs r7, 0xC2 - str r7, [sp, 0x28] - subs r0, 0xCB - str r0, [sp, 0x2C] - adds r2, r4, 0 - adds r2, 0x24 - subs r1, 0xDF - str r1, [sp, 0x38] - adds r6, r4, 0 - adds r6, 0x1C - movs r7, 0x80 - lsls r7, 1 - mov r8, r7 -_0806C0E0: - movs r1, 0x2 - ldrsh r0, [r4, r1] - adds r1, r5, 0 - str r2, [sp, 0x30] - str r3, [sp, 0x34] - bl sub_808DC84 - ldr r7, [sp, 0x8] - adds r1, r7, r5 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - ldr r2, [sp, 0x30] - ldr r3, [sp, 0x34] - cmp r0, 0x25 - bne _0806C104 - movs r0, 0x1 - str r0, [sp, 0x4] -_0806C104: - ldr r1, [sp] - cmp r1, 0 - beq _0806C11E - adds r0, r4, 0 - adds r0, 0x14 - adds r0, r5 - mov r7, r9 - strb r7, [r0] - adds r0, r4, 0 - adds r0, 0x16 - adds r0, r5 - mov r1, r9 - strb r1, [r0] -_0806C11E: - strh r3, [r6] - ldr r7, [sp, 0x38] - strh r3, [r7] - strh r3, [r2] - ldr r1, [sp, 0x2C] - mov r0, r8 - stm r1!, {r0} - str r1, [sp, 0x2C] - ldr r7, [sp, 0x28] - stm r7!, {r0} - str r7, [sp, 0x28] - adds r2, 0x2 - ldr r0, [sp, 0x38] - adds r0, 0x2 - str r0, [sp, 0x38] - adds r6, 0x2 - adds r5, 0x1 - cmp r5, 0x1 - ble _0806C0E0 - ldr r1, [sp, 0x4] - cmp r1, 0 - beq _0806C170 - movs r0, 0 - bl sub_807E580 - ldr r1, _0806C16C - lsls r0, 24 - lsrs r0, 22 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - mov r2, r10 - strb r0, [r2] - adds r0, r4, 0 - adds r0, 0x5D - strb r1, [r0] - b _0806C188 - .align 2, 0 -_0806C168: .4byte 0x00000165 -_0806C16C: .4byte gUnknown_80F520C -_0806C170: - movs r5, 0 -_0806C172: - movs r7, 0x2 - ldrsh r0, [r4, r7] - adds r1, r5, 0 - bl sub_808DC68 - mov r2, r10 - adds r1, r2, r5 - strb r0, [r1] - adds r5, 0x1 - cmp r5, 0x1 - ble _0806C172 -_0806C188: - ldr r0, _0806C1D0 - ldr r1, [r0] - movs r2, 0 - movs r0, 0x1 - strb r0, [r1, 0xC] - movs r0, 0 - strh r2, [r4, 0x28] - movs r7, 0x89 - lsls r7, 1 - adds r1, r4, r7 - strb r0, [r1] - ldr r1, [sp, 0x20] - strb r0, [r1] - ldr r2, _0806C1D4 - adds r1, r4, r2 - strb r0, [r1] - ldr r7, [sp, 0xC] - strb r0, [r7] - ldr r1, [sp, 0x1C] - strb r0, [r1] - ldr r2, [sp, 0x10] - strb r0, [r2] - ldr r7, [sp, 0x14] - strb r0, [r7] - ldr r1, [sp, 0x18] - strb r0, [r1] - ldr r2, [sp, 0x24] - strb r0, [r2] - add sp, 0x3C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806C1D0: .4byte gUnknown_203B418 -_0806C1D4: .4byte 0x00000113 - thumb_func_end sub_806BFC0 - - thumb_func_start sub_806C1D8 -sub_806C1D8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r5, 0 -_0806C1E2: - ldr r0, _0806C258 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0806C25C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - adds r5, 0x1 - mov r9, r5 - cmp r0, 0 - beq _0806C244 - ldr r4, [r4, 0x70] - ldrb r6, [r4, 0xA] - cmp r6, 0 - blt _0806C244 - movs r5, 0 - movs r0, 0x8C - lsls r0, 1 - mov r12, r0 - movs r2, 0x1 - mov r8, r2 - adds r3, r4, 0 - movs r7, 0xFE -_0806C218: - lsls r0, r5, 3 - adds r0, r4 - add r0, r12 - ldrb r1, [r0] - mov r0, r8 - ands r0, r1 - cmp r0, 0 - beq _0806C234 - ldr r0, _0806C260 - adds r2, r3, r0 - ldrb r1, [r2] - adds r0, r7, 0 - ands r0, r1 - strb r0, [r2] -_0806C234: - adds r3, 0x8 - adds r5, 0x1 - cmp r5, 0x3 - ble _0806C218 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_806C264 -_0806C244: - mov r5, r9 - cmp r5, 0x3 - ble _0806C1E2 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806C258: .4byte gUnknown_203B418 -_0806C25C: .4byte 0x0001357c -_0806C260: .4byte 0x00000119 - thumb_func_end sub_806C1D8 - - thumb_func_start sub_806C264 -sub_806C264: - push {r4,r5,lr} - mov r12, r1 - ldr r2, _0806C31C - movs r1, 0x64 - muls r0, r1 - ldr r1, _0806C320 - adds r0, r1 - ldr r1, [r2] - adds r3, r1, r0 - mov r2, r12 - ldrh r0, [r2, 0xE] - strh r0, [r3, 0x10] - ldrh r0, [r2, 0x10] - strh r0, [r3, 0x12] - ldr r0, [r2, 0x18] - str r0, [r3, 0x18] - adds r2, 0x14 - adds r1, r3, 0 - adds r1, 0x14 - movs r4, 0x1 -_0806C28C: - ldrb r0, [r2] - strb r0, [r1] - ldrb r0, [r2, 0x2] - strb r0, [r1, 0x2] - adds r2, 0x1 - adds r1, 0x1 - subs r4, 0x1 - cmp r4, 0 - bge _0806C28C - ldr r4, _0806C324 - adds r0, r4, 0 - mov r5, r12 - ldrh r5, [r5, 0x4] - adds r0, r5 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bhi _0806C2B6 - movs r0, 0xBC - lsls r0, 1 - strh r0, [r3, 0xE] -_0806C2B6: - adds r1, r3, 0 - adds r1, 0x1C - movs r0, 0x8C - lsls r0, 1 - add r0, r12 - ldm r0!, {r2,r4,r5} - stm r1!, {r2,r4,r5} - ldm r0!, {r2,r4,r5} - stm r1!, {r2,r4,r5} - ldm r0!, {r2,r4,r5} - stm r1!, {r2,r4,r5} - mov r1, r12 - ldrb r0, [r1, 0x9] - strb r0, [r3, 0x3] - ldrh r0, [r1, 0xC] - strh r0, [r3, 0x8] - mov r0, r12 - adds r0, 0x8C - ldr r0, [r0] - str r0, [r3, 0x4C] - mov r0, r12 - adds r0, 0x94 - ldrb r1, [r0] - adds r0, r3, 0 - adds r0, 0x50 - strb r1, [r0] - mov r2, r12 - ldr r0, [r2, 0x3C] - str r0, [r3, 0x54] - movs r0, 0x9E - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - str r0, [r3, 0x44] - movs r0, 0xA0 - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - str r0, [r3, 0x48] - ldr r0, [r2, 0x60] - str r0, [r3, 0x40] - movs r4, 0xA - ldrsh r1, [r3, r4] - ldr r0, _0806C328 - cmp r1, r0 - bne _0806C316 - ldr r0, _0806C32C - strh r0, [r3, 0xA] -_0806C316: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806C31C: .4byte gUnknown_203B45C -_0806C320: .4byte 0x00008df8 -_0806C324: .4byte 0xfffffe87 -_0806C328: .4byte 0x000055aa -_0806C32C: .4byte 0x00005aa5 - thumb_func_end sub_806C264 - - thumb_func_start sub_806C330 -sub_806C330: - push {r4-r7,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 16 - asrs r2, 16 - mov r12, r2 - lsls r3, 24 - lsrs r7, r3, 24 - ldr r0, _0806C370 - ldr r0, [r0] - ldr r1, _0806C374 - adds r2, r0, r1 - movs r3, 0 - ldr r0, [r2, 0x40] - cmp r3, r0 - bge _0806C382 - mov r1, r12 - lsls r0, r1, 16 - lsrs r6, r0, 16 - adds r1, r2, 0 -_0806C358: - ldrb r0, [r1, 0x3] - cmp r0, 0 - beq _0806C378 - ldrb r0, [r1, 0x4] - cmp r0, r4 - bne _0806C378 - ldrb r0, [r1, 0x5] - cmp r0, r5 - bne _0806C378 - strh r6, [r1] - strb r7, [r1, 0x2] - b _0806C3B8 - .align 2, 0 -_0806C370: .4byte gUnknown_203B418 -_0806C374: .4byte 0x0000057c -_0806C378: - adds r1, 0x8 - adds r3, 0x1 - ldr r0, [r2, 0x40] - cmp r3, r0 - blt _0806C358 -_0806C382: - ldr r0, [r2, 0x40] - cmp r0, 0x7 - bgt _0806C3B8 - lsls r0, 3 - adds r0, r2, r0 - movs r1, 0x1 - strb r1, [r0, 0x3] - ldr r0, [r2, 0x40] - lsls r0, 3 - adds r0, r2, r0 - strb r4, [r0, 0x4] - ldr r0, [r2, 0x40] - lsls r0, 3 - adds r0, r2, r0 - strb r5, [r0, 0x5] - ldr r0, [r2, 0x40] - lsls r0, 3 - adds r0, r2, r0 - mov r1, r12 - strh r1, [r0] - ldr r0, [r2, 0x40] - lsls r0, 3 - adds r0, r2, r0 - strb r7, [r0, 0x2] - ldr r0, [r2, 0x40] - adds r0, 0x1 - str r0, [r2, 0x40] -_0806C3B8: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806C330 - - thumb_func_start sub_806C3C0 -sub_806C3C0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x18 - ldr r0, _0806C424 - ldr r0, [r0] - ldr r1, _0806C428 - adds r7, r0, r1 - movs r6, 0 - ldr r0, [r7, 0x40] - cmp r6, r0 - bge _0806C416 - mov r5, sp - movs r0, 0 - mov r8, r0 - movs r2, 0 - adds r4, r7, 0 -_0806C3E2: - ldrb r0, [r4, 0x3] - cmp r0, 0 - beq _0806C40C - ldrh r0, [r4] - strh r0, [r5] - strh r2, [r5, 0x8] - ldrb r0, [r4, 0x4] - strh r0, [r5, 0xC] - ldrb r0, [r4, 0x5] - strh r0, [r5, 0xE] - ldrb r0, [r4, 0x2] - strb r0, [r5, 0x2] - str r2, [sp, 0x4] - mov r1, r8 - strb r1, [r5, 0x10] - mov r0, sp - movs r1, 0x1 - str r2, [sp, 0x14] - bl sub_806B7F8 - ldr r2, [sp, 0x14] -_0806C40C: - adds r4, 0x8 - adds r6, 0x1 - ldr r0, [r7, 0x40] - cmp r6, r0 - blt _0806C3E2 -_0806C416: - add sp, 0x18 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806C424: .4byte gUnknown_203B418 -_0806C428: .4byte 0x0000057c - thumb_func_end sub_806C3C0 - - thumb_func_start sub_806C42C -sub_806C42C: - ldr r0, _0806C43C - ldr r0, [r0] - ldr r1, _0806C440 - adds r0, r1 - movs r1, 0 - str r1, [r0, 0x40] - bx lr - .align 2, 0 -_0806C43C: .4byte gUnknown_203B418 -_0806C440: .4byte 0x0000057c - thumb_func_end sub_806C42C - - thumb_func_start sub_806C444 -sub_806C444: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - adds r7, r1, 0 - lsls r0, 16 - asrs r6, r0, 16 - adds r0, r6, 0 - bl sub_808DBC0 - adds r5, r0, 0 - movs r4, 0x2 - cmp r4, r7 - bgt _0806C478 - mov r8, sp -_0806C462: - mov r0, sp - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_808E010 - mov r1, r8 - ldrh r0, [r1, 0x4] - adds r5, r0 - adds r4, 0x1 - cmp r4, r7 - ble _0806C462 -_0806C478: - adds r0, r5, 0 - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_806C444 - - thumb_func_start sub_806C488 -sub_806C488: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - adds r7, r1, 0 - mov r8, r2 - lsls r0, 16 - asrs r6, r0, 16 - adds r0, r6, 0 - mov r1, r8 - bl sub_808DC28 - adds r5, r0, 0 - movs r4, 0x2 - cmp r4, r7 - bgt _0806C4C4 - mov r0, sp - adds r0, 0x6 - add r8, r0 -_0806C4AE: - mov r0, sp - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_808E010 - mov r1, r8 - ldrb r0, [r1] - adds r5, r0 - adds r4, 0x1 - cmp r4, r7 - ble _0806C4AE -_0806C4C4: - adds r0, r5, 0 - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_806C488 - - thumb_func_start sub_806C4D4 -sub_806C4D4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - adds r7, r1, 0 - mov r8, r2 - lsls r0, 16 - asrs r6, r0, 16 - adds r0, r6, 0 - mov r1, r8 - bl sub_808DC48 - adds r5, r0, 0 - movs r4, 0x2 - cmp r4, r7 - bgt _0806C50E - add r0, sp, 0x8 - add r8, r0 -_0806C4F8: - mov r0, sp - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_808E010 - mov r1, r8 - ldrb r0, [r1] - adds r5, r0 - adds r4, 0x1 - cmp r4, r7 - ble _0806C4F8 -_0806C50E: - adds r0, r5, 0 - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_806C4D4 - - thumb_func_start sub_806C51C -sub_806C51C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x50 - adds r6, r0, 0 - ldr r0, [r6, 0x70] - mov r8, r0 - ldr r0, _0806C544 - ldr r1, [r0] - ldr r2, _0806C548 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, r6 - bne _0806C54C - movs r3, 0 - str r3, [sp, 0x38] - b _0806C554 - .align 2, 0 -_0806C544: .4byte gUnknown_203B418 -_0806C548: .4byte 0x000181f8 -_0806C54C: - ldr r4, _0806C5AC - adds r0, r1, r4 - ldrb r0, [r0] - str r0, [sp, 0x38] -_0806C554: - mov r0, r8 - adds r0, 0xC8 - ldrb r1, [r0] - str r0, [sp, 0x40] - cmp r1, 0x2 - bne _0806C564 - movs r7, 0x1 - str r7, [sp, 0x38] -_0806C564: - adds r0, r6, 0 - adds r0, 0x6B - adds r1, r6, 0 - adds r1, 0x6A - ldrb r2, [r0] - str r0, [sp, 0x48] - mov r9, r1 - adds r5, r6, 0 - adds r5, 0x6D - adds r0, 0x1 - str r0, [sp, 0x4C] - adds r4, r6, 0 - adds r4, 0x6F - subs r1, 0x47 - str r1, [sp, 0x44] - mov r3, r9 - ldrb r3, [r3] - cmp r2, r3 - bne _0806C676 - ldrb r0, [r5] - ldr r7, [sp, 0x4C] - ldrb r7, [r7] - cmp r0, r7 - bne _0806C654 - ldrb r0, [r4] - cmp r0, 0 - bne _0806C654 - movs r2, 0 - ldrh r1, [r6, 0x28] - movs r0, 0x80 - lsls r0, 6 - ands r0, r1 - cmp r0, 0 - beq _0806C5B0 - movs r0, 0 - b _0806C5B2 - .align 2, 0 -_0806C5AC: .4byte 0x00018210 -_0806C5B0: - lsrs r0, r1, 15 -_0806C5B2: - cmp r0, 0 - bne _0806C5B8 - movs r2, 0x1 -_0806C5B8: - adds r0, r6, 0 - adds r0, 0x23 - str r0, [sp, 0x44] - cmp r2, 0 - beq _0806C654 - adds r0, r6, 0 - bl sub_806CEBC - lsls r0, 24 - lsrs r3, r0, 24 - adds r1, r6, 0 - adds r1, 0x21 - movs r0, 0x1 - strb r0, [r1] - mov r1, r8 - adds r1, 0xFE - ldrb r0, [r1] - cmp r0, 0x63 - bne _0806C620 - ldr r1, [sp, 0x48] - ldrb r0, [r1] - cmp r0, 0xC - bhi _0806C61C - mov r0, r8 - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806C5F4 - movs r2, 0x2 - b _0806C600 -_0806C5F4: - ldr r2, [sp, 0x44] - ldrb r0, [r2] - movs r2, 0x1 - cmp r0, 0x2 - bhi _0806C600 - movs r2, 0 -_0806C600: - ldr r1, _0806C618 - movs r0, 0xD - muls r0, r2 - ldr r7, [sp, 0x48] - ldrb r7, [r7] - adds r0, r7 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x7 - bne _0806C622 - adds r0, r3, 0 - b _0806C622 - .align 2, 0 -_0806C618: .4byte gUnknown_8106EC8 -_0806C61C: - movs r0, 0x63 - b _0806C622 -_0806C620: - ldrb r0, [r1] -_0806C622: - cmp r0, 0x63 - beq _0806C654 - mov r1, r9 - strb r0, [r1] - ldrb r1, [r5] - movs r0, 0x7 - ands r0, r1 - ldr r2, [sp, 0x4C] - strb r0, [r2] - movs r0, 0x1 - strb r0, [r4] - mov r7, r9 - ldrb r0, [r7] - cmp r0, 0x6 - bne _0806C654 - adds r1, r6, 0 - adds r1, 0x6E - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x10 - bne _0806C654 - strb r3, [r7] -_0806C654: - ldr r1, [sp, 0x48] - ldrb r0, [r1] - mov r2, r9 - ldrb r2, [r2] - cmp r0, r2 - bne _0806C676 - ldrb r0, [r5] - ldr r3, [sp, 0x4C] - ldrb r3, [r3] - cmp r0, r3 - bne _0806C676 - ldrb r0, [r4] - movs r7, 0x28 - adds r7, r6 - mov r10, r7 - cmp r0, 0 - beq _0806C714 -_0806C676: - mov r1, r9 - ldrb r0, [r1] - ldr r2, [sp, 0x48] - strb r0, [r2] - ldr r3, [sp, 0x4C] - mov r10, r3 - ldrb r0, [r3] - strb r0, [r5] - movs r7, 0 - strb r7, [r4] - adds r0, r6, 0 - adds r0, 0x68 - movs r1, 0 - ldrsh r7, [r0, r1] - mov r2, r8 - movs r3, 0x4 - ldrsh r0, [r2, r3] - mov r4, r9 - ldrb r1, [r4] - bl sub_808DA44 - lsls r0, 24 - cmp r0, 0 - beq _0806C6A8 - movs r7, 0 -_0806C6A8: - ldr r0, [sp, 0x38] - cmp r0, 0 - bne _0806C6D6 - bl Random - movs r4, 0x3 - ands r4, r0 - adds r5, r6, 0 - adds r5, 0x28 - ldr r1, [r6, 0x64] - mov r3, r9 - ldrb r2, [r3] - mov r0, r10 - ldrb r3, [r0] - str r7, [sp] - str r4, [sp, 0x4] - ldr r4, [sp, 0x38] - str r4, [sp, 0x8] - adds r0, r5, 0 - bl sub_80053AC - mov r10, r5 - b _0806C704 -_0806C6D6: - ldr r0, _0806C774 - bl sub_80687D0 - adds r5, r0, 0 - bl Random - movs r1, 0x3 - ands r1, r0 - adds r4, r6, 0 - adds r4, 0x28 - mov r0, r9 - ldrb r2, [r0] - ldr r0, [sp, 0x4C] - ldrb r3, [r0] - str r7, [sp] - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80053AC - mov r10, r4 -_0806C704: - mov r2, r9 - ldrb r0, [r2] - cmp r0, 0x6 - beq _0806C714 - adds r1, r6, 0 - adds r1, 0x6E - movs r0, 0 - strb r0, [r1] -_0806C714: - ldr r0, _0806C778 - ldr r1, [r0] - ldr r3, _0806C77C - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0806C784 - ldr r4, [sp, 0x48] - ldrb r0, [r4] - cmp r0, 0x7 - bne _0806C73C - mov r7, r8 - movs r1, 0x4 - ldrsh r0, [r7, r1] - bl sub_808DB14 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _0806C7E2 -_0806C73C: - movs r0, 0xAE - lsls r0, 1 - add r0, r8 - ldrb r0, [r0] - cmp r0, 0 - beq _0806C76A - movs r0, 0xB0 - lsls r0, 1 - add r0, r8 - ldrb r0, [r0] - cmp r0, 0 - bne _0806C7E2 - ldr r0, _0806C780 - add r0, r8 - ldrb r0, [r0] - cmp r0, 0 - beq _0806C76A - mov r0, r10 - bl sub_80054BC - mov r0, r10 - bl sub_80054BC -_0806C76A: - mov r0, r10 - bl sub_80054BC - b _0806C7E2 - .align 2, 0 -_0806C774: .4byte 0x000001a5 -_0806C778: .4byte gUnknown_203B418 -_0806C77C: .4byte 0x0001356c -_0806C780: .4byte 0x0000015f -_0806C784: - mov r0, r8 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0806C7E2 - cmp r0, 0x6 - beq _0806C7E2 - ldr r2, _0806C7B4 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0806C7BC - ldr r3, _0806C7B8 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _0806C7BC - mov r0, r10 - bl sub_80054BC - mov r0, r10 - bl sub_80054BC - b _0806C7DC - .align 2, 0 -_0806C7B4: .4byte 0x0000066c -_0806C7B8: .4byte 0x0001c05f -_0806C7BC: - ldr r4, [sp, 0x48] - ldrb r0, [r4] - cmp r0, 0 - beq _0806C7C8 - cmp r0, 0x7 - bne _0806C7DC -_0806C7C8: - ldr r0, [r6, 0x70] - movs r7, 0x82 - lsls r7, 1 - adds r0, r7 - ldr r0, [r0] - cmp r0, 0x1 - ble _0806C7DC - mov r0, r10 - bl sub_80054BC -_0806C7DC: - mov r0, r10 - bl sub_80054BC -_0806C7E2: - ldr r1, [r6, 0xC] - ldr r0, [r6, 0x14] - cmp r1, r0 - bne _0806C800 - ldr r1, [r6, 0x10] - ldr r0, [r6, 0x18] - cmp r1, r0 - bne _0806C800 - ldr r1, [sp, 0x44] - ldrb r0, [r1] - cmp r0, 0x9 - bhi _0806C806 - adds r0, 0x1 - strb r0, [r1] - b _0806C806 -_0806C800: - movs r0, 0 - ldr r2, [sp, 0x44] - strb r0, [r2] -_0806C806: - ldr r0, [r6, 0xC] - str r0, [r6, 0x14] - ldr r2, [r6, 0x10] - str r2, [r6, 0x18] - cmp r0, 0 - bge _0806C814 - adds r0, 0xFF -_0806C814: - asrs r1, r0, 8 - ldr r0, _0806C88C - ldr r3, [r0] - ldr r4, _0806C890 - adds r0, r3, r4 - movs r7, 0 - ldrsh r0, [r0, r7] - subs r1, r0 - str r1, [sp, 0x2C] - ldr r0, [r6, 0x1C] - subs r0, r2, r0 - movs r1, 0xBA - lsls r1, 1 - add r1, r8 - ldr r1, [r1] - subs r0, r1 - cmp r0, 0 - bge _0806C83A - adds r0, 0xFF -_0806C83A: - asrs r1, r0, 8 - ldr r4, _0806C894 - adds r0, r3, r4 - movs r7, 0 - ldrsh r3, [r0, r7] - subs r1, r3 - str r1, [sp, 0x30] - adds r0, r2, 0 - cmp r0, 0 - bge _0806C850 - adds r0, 0xFF -_0806C850: - asrs r0, 8 - subs r0, r3 - mov r9, r0 - lsrs r0, 31 - add r0, r9 - asrs r0, 1 - mov r9, r0 - movs r0, 0xAB - lsls r0, 1 - add r0, r8 - ldrb r0, [r0] - cmp r0, 0 - bne _0806C870 - movs r0, 0x1 - negs r0, r0 - add r9, r0 -_0806C870: - movs r0, 0xAE - lsls r0, 1 - add r0, r8 - ldrb r0, [r0] - cmp r0, 0 - bne _0806C898 - adds r0, r6, 0 - bl sub_8042768 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x34] - b _0806C8D8 - .align 2, 0 -_0806C88C: .4byte gUnknown_203B418 -_0806C890: .4byte 0x000181f0 -_0806C894: .4byte 0x000181f2 -_0806C898: - ldr r0, _0806C8B8 - add r0, r8 - ldrb r0, [r0] - cmp r0, 0 - beq _0806C8C6 - ldr r0, _0806C8BC - ldr r0, [r0] - movs r1, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0806C8C0 - ldr r1, [sp, 0x2C] - adds r1, 0x1 - str r1, [sp, 0x2C] - b _0806C8C6 - .align 2, 0 -_0806C8B8: .4byte 0x0000015d -_0806C8BC: .4byte gUnknown_202EDCC -_0806C8C0: - ldr r2, [sp, 0x2C] - subs r2, 0x1 - str r2, [sp, 0x2C] -_0806C8C6: - movs r1, 0 - movs r0, 0xAF - lsls r0, 1 - add r0, r8 - ldrb r0, [r0] - cmp r0, 0 - bne _0806C8D6 - movs r1, 0x1 -_0806C8D6: - str r1, [sp, 0x34] -_0806C8D8: - ldr r0, [r6, 0xC] - cmp r0, 0 - bge _0806C8E0 - adds r0, 0xFF -_0806C8E0: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _0806C998 - ldr r2, [sp, 0x28] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x28] - ldr r1, [r6, 0x10] - ldr r0, [r6, 0x1C] - subs r1, r0 - movs r5, 0xBA - lsls r5, 1 - add r5, r8 - ldr r0, [r5] - subs r0, r1, r0 - cmp r0, 0 - bge _0806C904 - adds r0, 0xFF -_0806C904: - lsls r0, 8 - lsrs r0, 16 - lsls r0, 16 - ldr r1, _0806C99C - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x28] - add r0, sp, 0xC - mov r1, r10 - bl sub_8005700 - mov r4, r8 - adds r4, 0x98 - ldr r0, [r4] - add r1, sp, 0x28 - ldr r2, _0806C9A0 - ldr r2, [r2] - ldr r3, _0806C9A4 - adds r2, r3 - ldrb r3, [r2] - add r2, sp, 0xC - bl sub_800F958 - adds r0, r6, 0 - bl sub_804187C - adds r2, r0, 0 - ldr r4, [r4] - mov r0, r8 - movs r1, 0x4 - ldrsh r7, [r0, r1] - movs r3, 0 - ldr r0, [sp, 0x34] - cmp r0, 0 - beq _0806C958 - movs r0, 0xA6 - lsls r0, 1 - add r0, r8 - ldrb r1, [r0] - negs r0, r1 - orrs r0, r1 - lsrs r3, r0, 31 -_0806C958: - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_800F75C - adds r0, r6, 0 - mov r1, r9 - bl sub_8042EC8 - movs r0, 0xAE - lsls r0, 1 - add r0, r8 - ldrb r1, [r0] - cmp r1, 0 - bne _0806C9BA - mov r0, r8 - adds r0, 0xFF - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806C9AC - ldr r1, [r5] - ldr r0, _0806C9A8 - cmp r1, r0 - bgt _0806C9BA - movs r2, 0x80 - lsls r2, 4 - adds r0, r1, r2 - str r0, [r5] - movs r1, 0xC8 - lsls r1, 8 - cmp r0, r1 - ble _0806C9BA - b _0806C9B8 - .align 2, 0 -_0806C998: .4byte 0xffff0000 -_0806C99C: .4byte 0x0000ffff -_0806C9A0: .4byte gUnknown_203B418 -_0806C9A4: .4byte 0x00018208 -_0806C9A8: .4byte 0x0000c7ff -_0806C9AC: - ldr r0, [r5] - ldr r3, _0806CA5C - adds r0, r3 - str r0, [r5] - cmp r0, 0 - bge _0806C9BA -_0806C9B8: - str r1, [r5] -_0806C9BA: - ldr r4, [sp, 0x34] - cmp r4, 0 - bne _0806C9C2 - b _0806CBDE -_0806C9C2: - movs r4, 0 - adds r0, r6, 0 - bl sub_806CF54 - lsls r0, 24 - lsrs r7, r0, 24 - add r1, sp, 0x1C - ldr r2, _0806CA60 - strh r2, [r1] - ldr r0, _0806CA64 - strh r0, [r1, 0x2] - strh r2, [r1, 0x4] - strh r4, [r1, 0x6] - strh r4, [r1, 0x8] - ldr r0, _0806CA68 - ldr r0, [r0] - ldr r2, _0806CA6C - adds r0, r2 - ldrb r0, [r0] - lsls r0, 10 - strh r0, [r1, 0xA] - mov r3, r8 - ldrb r0, [r3, 0x6] - adds r5, r1, 0 - cmp r0, 0 - beq _0806CA08 - ldr r1, _0806CA70 - adds r0, r1, 0 - ldrh r2, [r3, 0x4] - adds r0, r2 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bhi _0806CA08 - movs r4, 0x1 -_0806CA08: - mov r0, r8 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806CA22 - ldr r0, _0806CA68 - ldr r0, [r0] - ldr r3, _0806CA74 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _0806CA22 - movs r4, 0x1 -_0806CA22: - cmp r4, 0 - beq _0806CA32 - ldrh r1, [r5, 0x6] - movs r4, 0x80 - lsls r4, 3 - adds r0, r4, 0 - orrs r0, r1 - strh r0, [r5, 0x6] -_0806CA32: - movs r0, 0 - str r0, [sp, 0x3C] - mov r1, r8 - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _0806CA46 - ldr r2, [sp, 0x40] - ldrb r0, [r2] - cmp r0, 0x2 - bne _0806CA4A -_0806CA46: - movs r3, 0x1 - str r3, [sp, 0x3C] -_0806CA4A: - mov r0, r8 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _0806CA58 - cmp r0, 0x47 - bne _0806CA78 -_0806CA58: - movs r0, 0x1 - b _0806CA7A - .align 2, 0 -_0806CA5C: .4byte 0xfffff400 -_0806CA60: .4byte 0x0000f3ff -_0806CA64: .4byte 0x0000ffff -_0806CA68: .4byte gUnknown_203B418 -_0806CA6C: .4byte 0x00018208 -_0806CA70: .4byte 0xfffffe5f -_0806CA74: .4byte 0x0001820f -_0806CA78: - movs r0, 0 -_0806CA7A: - cmp r0, 0 - bne _0806CA88 - mov r0, r8 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806CA8C -_0806CA88: - movs r4, 0x1 - str r4, [sp, 0x3C] -_0806CA8C: - mov r0, r8 - adds r0, 0xFF - ldrb r0, [r0] - cmp r0, 0x2 - beq _0806CB16 - mov r0, r8 - adds r0, 0xB0 - ldrb r1, [r0] - cmp r1, 0x6 - beq _0806CAAC - subs r0, 0x4 - ldrb r0, [r0] - cmp r0, 0x4 - beq _0806CAAC - cmp r1, 0x2 - bne _0806CABA -_0806CAAC: - ldr r0, _0806CAC4 - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - ldr r1, [sp, 0x2C] - adds r1, r0 - str r1, [sp, 0x2C] -_0806CABA: - ldr r2, [sp, 0x38] - cmp r2, 0 - beq _0806CACC - ldr r0, _0806CAC8 - b _0806CAD2 - .align 2, 0 -_0806CAC4: .4byte gUnknown_202EDCC -_0806CAC8: .4byte 0x000001a5 -_0806CACC: - mov r3, r8 - movs r4, 0x4 - ldrsh r0, [r3, r4] -_0806CAD2: - movs r1, 0 - bl sub_808DD68 - lsls r0, 24 - lsrs r2, r0, 24 - adds r0, r6, 0 - adds r0, 0x22 - ldrb r1, [r0] - cmp r1, 0 - bne _0806CAF8 - str r2, [sp] - str r5, [sp, 0x4] - mov r0, r10 - ldr r1, [sp, 0x2C] - ldr r2, [sp, 0x30] - mov r3, r9 - bl sub_800558C - b _0806CB16 -_0806CAF8: - cmp r1, 0x1 - bne _0806CB16 - ldr r0, _0806CBF0 - ldr r0, [r0] - ands r0, r1 - cmp r0, 0 - beq _0806CB16 - str r2, [sp] - str r5, [sp, 0x4] - mov r0, r10 - ldr r1, [sp, 0x2C] - ldr r2, [sp, 0x30] - mov r3, r9 - bl sub_800558C -_0806CB16: - ldr r0, [r6, 0xC] - cmp r0, 0 - bge _0806CB1E - adds r0, 0xFF -_0806CB1E: - asrs r0, 8 - ldrh r1, [r6, 0x38] - adds r0, r1 - movs r1, 0xB8 - lsls r1, 1 - add r1, r8 - strh r0, [r1] - ldr r0, [r6, 0x10] - cmp r0, 0 - bge _0806CB34 - adds r0, 0xFF -_0806CB34: - asrs r0, 8 - ldrh r2, [r6, 0x3A] - adds r0, r2 - movs r3, 0xB9 - lsls r3, 1 - add r3, r8 - strh r0, [r3] - movs r4, 0 - ldrsh r2, [r1, r4] - ldr r0, _0806CBF4 - ldr r1, [r0] - ldr r4, _0806CBF8 - adds r0, r1, r4 - movs r4, 0 - ldrsh r0, [r0, r4] - subs r4, r2, r0 - movs r0, 0 - ldrsh r2, [r3, r0] - ldr r3, _0806CBFC - adds r1, r3 - movs r3, 0 - ldrsh r0, [r1, r3] - subs r5, r2, r0 - movs r0, 0x20 - negs r0, r0 - cmp r4, r0 - blt _0806CBDE - cmp r5, r0 - blt _0806CBDE - ldr r0, _0806CC00 - cmp r4, r0 - bgt _0806CBDE - cmp r5, 0xBF - bgt _0806CBDE - cmp r7, 0x6 - beq _0806CBDE - adds r0, r6, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0 - bne _0806CBDE - ldr r0, [sp, 0x3C] - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 3 - lsls r0, r7, 1 - adds r0, r7 - lsls r0, 2 - ldr r1, _0806CC04 - adds r0, r1 - adds r3, r2, r0 - movs r0, 0xAB - lsls r0, 1 - add r0, r8 - ldrb r0, [r0] - cmp r0, 0 - beq _0806CBDE - movs r2, 0x8 - ldrsh r1, [r3, r2] - adds r1, r4, r1 - ldr r0, _0806CC08 - ands r1, r0 - ldrh r2, [r3, 0x2] - movs r0, 0xFE - lsls r0, 8 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x2] - movs r4, 0xA - ldrsh r1, [r3, r4] - adds r1, r5, r1 - ldr r0, _0806CC0C - ands r1, r0 - lsls r1, 4 - ldrh r2, [r3, 0x6] - movs r0, 0xF - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x6] - adds r0, r3, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl AddSprite -_0806CBDE: - add sp, 0x50 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806CBF0: .4byte gUnknown_202EDCC -_0806CBF4: .4byte gUnknown_203B418 -_0806CBF8: .4byte 0x000181f0 -_0806CBFC: .4byte 0x000181f2 -_0806CC00: .4byte 0x0000010f -_0806CC04: .4byte gUnknown_202ED28 -_0806CC08: .4byte 0x000001ff -_0806CC0C: .4byte 0x00000fff - thumb_func_end sub_806C51C - - thumb_func_start sub_806CC10 -sub_806CC10: - push {r4,r5,lr} - movs r5, 0 -_0806CC14: - ldr r0, _0806CC68 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0806CC6C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806CC5C - ldr r2, [r4, 0x70] - movs r1, 0xB3 - lsls r1, 1 - adds r0, r2, r1 - ldrb r1, [r0] - cmp r1, 0 - beq _0806CC5C - subs r1, 0x1 - strb r1, [r0] - movs r0, 0x1 - ands r1, r0 - cmp r1, 0 - bne _0806CC5C - adds r0, r2, 0 - adds r0, 0x46 - ldrb r2, [r0] - subs r2, 0x1 - movs r0, 0x7 - ands r2, r0 - adds r0, r4, 0 - movs r1, 0 - bl sub_806CDD4 -_0806CC5C: - adds r5, 0x1 - cmp r5, 0x13 - ble _0806CC14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CC68: .4byte gUnknown_203B418 -_0806CC6C: .4byte 0x000135cc - thumb_func_end sub_806CC10 - - thumb_func_start sub_806CC70 -sub_806CC70: - push {r4,r5,lr} - movs r5, 0 -_0806CC74: - ldr r0, _0806CCAC - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0806CCB0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806CCA0 - adds r0, r4, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_806CCB4 -_0806CCA0: - adds r5, 0x1 - cmp r5, 0x13 - ble _0806CC74 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CCAC: .4byte gUnknown_203B418 -_0806CCB0: .4byte 0x000135cc - thumb_func_end sub_806CC70 - - thumb_func_start sub_806CCB4 -sub_806CCB4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xC - adds r5, r0, 0 - lsls r1, 24 - lsrs r4, r1, 24 - ldr r7, [r5, 0x70] - ldr r0, _0806CD40 - ldr r0, [r0] - ldr r2, _0806CD44 - adds r1, r0, r2 - ldrb r6, [r1] - ldr r3, _0806CD48 - adds r0, r3 - ldr r0, [r0] - cmp r5, r0 - bne _0806CCDC - movs r6, 0 -_0806CCDC: - adds r0, r5, 0 - adds r0, 0x6B - movs r3, 0 - strb r4, [r0] - adds r2, r5, 0 - adds r2, 0x6A - strb r4, [r2] - adds r4, r7, 0 - adds r4, 0x46 - ldrb r0, [r4] - adds r1, r5, 0 - adds r1, 0x6D - strb r0, [r1] - ldrb r0, [r4] - subs r1, 0x1 - strb r0, [r1] - adds r0, r5, 0 - adds r0, 0x6F - strb r3, [r0] - subs r0, 0x7 - movs r3, 0 - ldrsh r4, [r0, r3] - mov r9, r4 - adds r0, r7, 0 - adds r0, 0xC8 - ldrb r0, [r0] - adds r7, r2, 0 - mov r8, r1 - cmp r0, 0x2 - beq _0806CD4C - cmp r6, 0 - bne _0806CD4C - bl Random - movs r4, 0x3 - ands r4, r0 - adds r0, r5, 0 - adds r0, 0x28 - ldr r1, [r5, 0x64] - ldrb r2, [r7] - mov r7, r8 - ldrb r3, [r7] - mov r7, r9 - str r7, [sp] - str r4, [sp, 0x4] - str r6, [sp, 0x8] - bl sub_80053AC - b _0806CD76 - .align 2, 0 -_0806CD40: .4byte gUnknown_203B418 -_0806CD44: .4byte 0x00018210 -_0806CD48: .4byte 0x000181f8 -_0806CD4C: - ldr r0, _0806CD8C - bl sub_80687D0 - adds r4, r0, 0 - bl Random - movs r1, 0x3 - ands r1, r0 - adds r0, r5, 0 - adds r0, 0x28 - ldrb r2, [r7] - mov r6, r8 - ldrb r3, [r6] - mov r7, r9 - str r7, [sp] - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - adds r1, r4, 0 - bl sub_80053AC -_0806CD76: - adds r1, r5, 0 - adds r1, 0x6E - movs r0, 0 - strb r0, [r1] - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806CD8C: .4byte 0x000001a5 - thumb_func_end sub_806CCB4 - - thumb_func_start sub_806CD90 -sub_806CD90: - push {r4,r5,lr} - movs r5, 0 -_0806CD94: - ldr r0, _0806CDCC - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0806CDD0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806CDC0 - adds r0, r4, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_806CCB4 -_0806CDC0: - adds r5, 0x1 - cmp r5, 0x13 - ble _0806CD94 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CDCC: .4byte gUnknown_203B418 -_0806CDD0: .4byte 0x000135cc - thumb_func_end sub_806CD90 - - thumb_func_start sub_806CDD4 -sub_806CDD4: - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r2, 0 - lsls r1, 24 - lsrs r5, r1, 24 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806CDF4 - adds r0, r4, 0 - adds r0, 0x6A - strb r5, [r0] - cmp r6, 0x7 - bhi _0806CDF4 - adds r0, 0x2 - strb r6, [r0] -_0806CDF4: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_806CDD4 - - thumb_func_start sub_806CDFC -sub_806CDFC: - push {r4-r7,lr} - adds r4, r0, 0 - adds r6, r2, 0 - lsls r1, 24 - lsrs r5, r1, 24 - adds r7, r5, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806CE2E - adds r0, r4, 0 - adds r0, 0x6B - ldrb r0, [r0] - cmp r0, r5 - bne _0806CE24 - adds r0, r4, 0 - adds r0, 0x6D - ldrb r0, [r0] - cmp r0, r6 - beq _0806CE2E -_0806CE24: - adds r0, r4, 0 - adds r1, r7, 0 - adds r2, r6, 0 - bl sub_806CDD4 -_0806CE2E: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806CDFC - - thumb_func_start sub_806CE34 -sub_806CE34: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806CE62 - adds r0, r4, 0 - bl sub_806CEBC - adds r1, r4, 0 - adds r1, 0x6A - strb r0, [r1] - cmp r5, 0x7 - bhi _0806CE62 - ldr r0, [r4, 0x70] - movs r1, 0x7 - ands r1, r5 - adds r0, 0x46 - strb r1, [r0] - adds r0, r4, 0 - adds r0, 0x6C - strb r1, [r0] -_0806CE62: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_806CE34 - - thumb_func_start sub_806CE68 -sub_806CE68: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806CE8C - adds r0, r4, 0 - bl sub_806CEBC - adds r1, r4, 0 - adds r1, 0x6A - strb r0, [r1] - cmp r5, 0x7 - bhi _0806CE8C - adds r0, r4, 0 - adds r0, 0x6C - strb r5, [r0] -_0806CE8C: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_806CE68 - - thumb_func_start sub_806CE94 -sub_806CE94: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806CEB4 - adds r1, r4, 0 - adds r1, 0x6A - movs r0, 0x6 - strb r0, [r1] - cmp r5, 0x7 - bhi _0806CEB4 - adds r0, r4, 0 - adds r0, 0x6C - strb r5, [r0] -_0806CEB4: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_806CE94 - - thumb_func_start sub_806CEBC -sub_806CEBC: - push {lr} - ldr r0, [r0, 0x70] - adds r1, r0, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0806CED2 - cmp r0, 0x5 - beq _0806CED2 - cmp r0, 0x3 - bne _0806CEE8 -_0806CED2: - movs r2, 0x4 - ldrsh r0, [r1, r2] - cmp r0, 0xB9 - bne _0806CEE4 - adds r0, r1, 0 - adds r0, 0xA9 - ldrb r0, [r0] - cmp r0, 0x7F - beq _0806CEF2 -_0806CEE4: - movs r0, 0x5 - b _0806CEF8 -_0806CEE8: - adds r0, r1, 0 - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0806CEF6 -_0806CEF2: - movs r0, 0x7 - b _0806CEF8 -_0806CEF6: - movs r0, 0xB -_0806CEF8: - pop {r1} - bx r1 - thumb_func_end sub_806CEBC - - thumb_func_start sub_806CEFC -sub_806CEFC: - push {r4,lr} - adds r4, r1, 0 - ldr r2, [r0, 0x70] - movs r3, 0x7 - ands r1, r3 - adds r2, 0x46 - strb r1, [r2] - movs r1, 0x7 - ands r1, r4 - bl sub_806CE68 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_806CEFC - - thumb_func_start sub_806CF18 -sub_806CF18: - push {r4-r6,lr} - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806CF4C - ldr r6, [r4, 0x70] - movs r5, 0 - b _0806CF2E -_0806CF2C: - adds r5, 0x1 -_0806CF2E: - cmp r5, 0x63 - bgt _0806CF4C - movs r0, 0x21 - bl sub_803E46C - movs r1, 0x4 - ldrsh r0, [r6, r1] - adds r1, r4, 0 - adds r1, 0x6B - ldrb r1, [r1] - bl sub_808DA44 - lsls r0, 24 - cmp r0, 0 - bne _0806CF2C -_0806CF4C: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_806CF18 - - thumb_func_start sub_806CF54 -sub_806CF54: - ldr r0, [r0, 0x70] - movs r1, 0x81 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - bx lr - thumb_func_end sub_806CF54 - - thumb_func_start sub_806CF60 -sub_806CF60: - push {r4,r5,lr} - movs r5, 0 -_0806CF64: - ldr r0, _0806CF90 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0806CF94 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806CF84 - adds r0, r4, 0 - bl sub_806CF98 -_0806CF84: - adds r5, 0x1 - cmp r5, 0x13 - ble _0806CF64 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CF90: .4byte gUnknown_203B418 -_0806CF94: .4byte 0x000135cc - thumb_func_end sub_806CF60 - - thumb_func_start sub_806CF98 -sub_806CF98: - push {r4-r7,lr} - adds r4, r0, 0 - bl sub_8045128 - ldrh r0, [r0] - movs r5, 0x3 - ands r5, r0 - adds r6, r5, 0 - ldr r7, [r4, 0x70] - movs r1, 0x4 - ldrsh r0, [r7, r1] - bl sub_808DAE4 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r5, 0x3 - bne _0806CFBE - movs r0, 0x6 - b _0806CFF8 -_0806CFBE: - cmp r5, 0x1 - bne _0806CFCE - bl sub_804AF74 - lsls r0, 24 - cmp r0, 0 - beq _0806CFEE - b _0806CFE8 -_0806CFCE: - cmp r6, 0x2 - bne _0806CFEE - ldr r1, _0806D000 - ldr r0, _0806D004 - ldr r0, [r0] - ldr r2, _0806D008 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0806CFEE -_0806CFE8: - ldr r0, _0806D00C - adds r0, r4, r0 - ldrb r4, [r0] -_0806CFEE: - movs r1, 0x81 - lsls r1, 2 - adds r0, r7, r1 - strb r4, [r0] - adds r0, r4, 0 -_0806CFF8: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0806D000: .4byte gUnknown_810ACC0 -_0806D004: .4byte gUnknown_203B418 -_0806D008: .4byte 0x00003a0e -_0806D00C: .4byte gUnknown_8106EEF - thumb_func_end sub_806CF98 - - thumb_func_start sub_806D010 -sub_806D010: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - adds r6, r0, 0 - adds r5, r1, 0 - mov r8, r2 - ldr r0, [sp, 0x40] - lsls r0, 16 - asrs r0, 16 - mov r10, r0 - movs r7, 0 - ldr r0, [sp, 0x3C] - str r0, [sp] - mov r1, r10 - str r1, [sp, 0x4] - ldr r2, [sp, 0x48] - str r2, [sp, 0x8] - adds r0, r6, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_806D528 - lsls r0, 24 - cmp r0, 0 - beq _0806D04A - b _0806D514 -_0806D04A: - mov r3, r8 - ldrb r0, [r3, 0xF] - cmp r0, 0 - beq _0806D054 - b _0806D514 -_0806D054: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0806D062 - b _0806D514 -_0806D062: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0806D070 - b _0806D514 -_0806D070: - adds r0, r6, 0 - bl sub_80450F8 - cmp r0, 0x1 - beq _0806D07C - b _0806D514 -_0806D07C: - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x1 - beq _0806D088 - b _0806D514 -_0806D088: - ldr r0, [sp, 0x44] - mov r9, r0 - adds r0, r5, 0 - bl sub_8070CD0 - lsls r0, 24 - cmp r0, 0 - bne _0806D0A2 - ldr r0, [r5, 0x70] - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, 0 - beq _0806D0A6 -_0806D0A2: - movs r1, 0 - mov r9, r1 -_0806D0A6: - mov r2, r9 - cmp r2, 0 - beq _0806D100 - movs r3, 0x4 - ldrsh r1, [r6, r3] - movs r2, 0x4 - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0806D0BC - negs r1, r1 -_0806D0BC: - cmp r1, 0x1 - bgt _0806D100 - movs r3, 0x6 - ldrsh r1, [r6, r3] - movs r2, 0x6 - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0806D0D0 - negs r1, r1 -_0806D0D0: - cmp r1, 0x1 - bgt _0806D100 - cmp r6, r5 - beq _0806D100 - mov r3, r8 - ldrb r0, [r3, 0xC] - bl sub_8092354 - lsls r0, 24 - cmp r0, 0 - beq _0806D100 - ldr r0, [r5, 0x70] - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0xD - bne _0806D100 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8042730 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_807F43C -_0806D100: - ldr r0, [r5, 0x70] - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, 0xC - bne _0806D118 - ldr r0, _0806D3BC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - movs r3, 0x1 - bl sub_8077084 -_0806D118: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0806D126 - b _0806D514 -_0806D126: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0806D134 - b _0806D514 -_0806D134: - mov r0, r9 - cmp r0, 0 - beq _0806D216 - cmp r6, r5 - beq _0806D216 - movs r2, 0x4 - ldrsh r1, [r6, r2] - movs r3, 0x4 - ldrsh r0, [r5, r3] - subs r1, r0 - cmp r1, 0 - bge _0806D14E - negs r1, r1 -_0806D14E: - cmp r1, 0x1 - bgt _0806D216 - movs r0, 0x6 - ldrsh r1, [r6, r0] - movs r2, 0x6 - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0806D162 - negs r1, r1 -_0806D162: - cmp r1, 0x1 - bgt _0806D216 - mov r3, r8 - ldrb r0, [r3, 0xC] - bl sub_8092354 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, [r5, 0x70] - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x4 - bne _0806D188 - cmp r4, 0 - beq _0806D188 - adds r0, r5, 0 - bl sub_8041B18 - adds r7, 0x4 -_0806D188: - ldr r0, [r5, 0x70] - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0xA - bne _0806D19E - cmp r4, 0 - beq _0806D19E - adds r0, r5, 0 - bl sub_8041B18 - adds r7, 0x1 -_0806D19E: - ldr r0, [r5, 0x70] - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x8 - bne _0806D1B4 - cmp r4, 0 - bne _0806D1B4 - adds r0, r5, 0 - bl sub_8041B90 - adds r7, 0x4 -_0806D1B4: - adds r0, r5, 0 - movs r1, 0x12 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D1C4 - adds r7, 0x2 -_0806D1C4: - cmp r7, 0 - beq _0806D216 - ldr r0, _0806D3C0 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - mov r1, r8 - ldr r0, [r1] - muls r0, r7 - cmp r0, 0 - bge _0806D1E0 - adds r0, 0x3 -_0806D1E0: - asrs r0, 2 - str r0, [sp, 0xC] - add r2, sp, 0xC - mov r3, r8 - ldrb r0, [r3, 0xC] - movs r1, 0 - strb r0, [r2, 0xC] - movs r0, 0x6 - str r0, [sp, 0x10] - movs r0, 0x2 - str r0, [sp, 0x14] - adds r0, r2, 0 - strb r1, [r0, 0xD] - strb r1, [r0, 0xE] - strb r1, [r0, 0xF] - ldr r0, [sp, 0x3C] - str r0, [sp] - mov r1, r10 - str r1, [sp, 0x4] - ldr r2, [sp, 0x48] - str r2, [sp, 0x8] - adds r0, r5, 0 - adds r1, r6, 0 - add r2, sp, 0xC - movs r3, 0 - bl sub_806D528 -_0806D216: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0806D224 - b _0806D514 -_0806D224: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0806D232 - b _0806D514 -_0806D232: - mov r3, r9 - cmp r3, 0 - bne _0806D23A - b _0806D48A -_0806D23A: - cmp r6, r5 - bne _0806D240 - b _0806D48A -_0806D240: - movs r0, 0x4 - ldrsh r1, [r6, r0] - movs r2, 0x4 - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0806D250 - negs r1, r1 -_0806D250: - cmp r1, 0x1 - ble _0806D256 - b _0806D48A -_0806D256: - movs r3, 0x6 - ldrsh r1, [r6, r3] - movs r2, 0x6 - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0806D266 - negs r1, r1 -_0806D266: - cmp r1, 0x1 - ble _0806D26C - b _0806D48A -_0806D26C: - mov r3, r8 - ldrb r0, [r3, 0xC] - bl sub_8092354 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r4, [r6, 0x70] - adds r0, r5, 0 - movs r1, 0x5 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D2C2 - adds r0, r6, 0 - movs r1, 0xA - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - bne _0806D2C2 - adds r0, r6, 0 - movs r1, 0x37 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _0806D2C2 - movs r0, 0x64 - bl sub_8084100 - ldr r1, _0806D3C4 - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _0806D2C2 - movs r3, 0xBC - lsls r3, 1 - adds r2, r4, r3 - ldrh r1, [r2] - movs r0, 0x1 - orrs r0, r1 - strh r0, [r2] -_0806D2C2: - adds r0, r5, 0 - movs r1, 0xA - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D2EE - movs r0, 0x64 - bl sub_8084100 - ldr r1, _0806D3C8 - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _0806D2EE - movs r3, 0xBC - lsls r3, 1 - adds r2, r4, r3 - ldrh r1, [r2] - movs r0, 0x2 - orrs r0, r1 - strh r0, [r2] -_0806D2EE: - adds r0, r5, 0 - movs r1, 0x17 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D328 - adds r0, r6, 0 - movs r1, 0x11 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _0806D328 - movs r0, 0x64 - bl sub_8084100 - ldr r1, _0806D3CC - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _0806D328 - movs r3, 0xBC - lsls r3, 1 - adds r2, r4, r3 - ldrh r1, [r2] - movs r0, 0x4 - orrs r0, r1 - strh r0, [r2] -_0806D328: - adds r0, r5, 0 - movs r1, 0x20 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D358 - cmp r7, 0 - beq _0806D358 - movs r0, 0x64 - bl sub_8084100 - ldr r1, _0806D3D0 - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _0806D358 - movs r3, 0xBC - lsls r3, 1 - adds r2, r4, r3 - ldrh r1, [r2] - movs r0, 0x8 - orrs r0, r1 - strh r0, [r2] -_0806D358: - adds r0, r5, 0 - movs r1, 0x27 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D384 - movs r0, 0x64 - bl sub_8084100 - ldr r1, _0806D3D4 - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _0806D384 - movs r3, 0xBC - lsls r3, 1 - adds r2, r4, r3 - ldrh r1, [r2] - movs r0, 0x20 - orrs r0, r1 - strh r0, [r2] -_0806D384: - adds r0, r5, 0 - movs r1, 0x3D - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D3FA - cmp r7, 0 - beq _0806D3FA - movs r0, 0x64 - bl sub_8084100 - ldr r1, _0806D3D8 - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _0806D3FA - movs r0, 0x3 - bl sub_8084100 - cmp r0, 0 - bgt _0806D3DC - movs r3, 0xBC - lsls r3, 1 - adds r2, r4, r3 - ldrh r1, [r2] - movs r0, 0x40 - b _0806D3F6 - .align 2, 0 -_0806D3BC: .4byte gUnknown_8106A4C -_0806D3C0: .4byte gUnknown_80FCFA4 -_0806D3C4: .4byte gUnknown_80F4E10 -_0806D3C8: .4byte gUnknown_80F4E12 -_0806D3CC: .4byte gUnknown_80F4E14 -_0806D3D0: .4byte gUnknown_80F4E16 -_0806D3D4: .4byte gUnknown_80F4E18 -_0806D3D8: .4byte gUnknown_80F4E1A -_0806D3DC: - cmp r0, 0x1 - bgt _0806D3EC - movs r0, 0xBC - lsls r0, 1 - adds r2, r4, r0 - ldrh r1, [r2] - movs r0, 0x10 - b _0806D3F6 -_0806D3EC: - movs r1, 0xBC - lsls r1, 1 - adds r2, r4, r1 - ldrh r1, [r2] - movs r0, 0x80 -_0806D3F6: - orrs r0, r1 - strh r0, [r2] -_0806D3FA: - adds r0, r5, 0 - movs r1, 0x3E - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D428 - movs r0, 0x64 - bl sub_8084100 - ldr r1, _0806D4D4 - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _0806D428 - movs r3, 0xBC - lsls r3, 1 - adds r2, r4, r3 - ldrh r1, [r2] - subs r3, 0x78 - adds r0, r3, 0 - orrs r0, r1 - strh r0, [r2] -_0806D428: - adds r0, r5, 0 - movs r1, 0x44 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D45A - cmp r7, 0 - beq _0806D45A - movs r0, 0x64 - bl sub_8084100 - ldr r1, _0806D4D8 - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _0806D45A - movs r3, 0xBC - lsls r3, 1 - adds r2, r4, r3 - ldrh r1, [r2] - adds r3, 0x88 - adds r0, r3, 0 - orrs r0, r1 - strh r0, [r2] -_0806D45A: - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D48A - movs r0, 0x64 - bl sub_8084100 - ldr r1, _0806D4DC - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _0806D48A - movs r3, 0xBC - lsls r3, 1 - adds r2, r4, r3 - ldrh r1, [r2] - movs r3, 0x80 - lsls r3, 3 - adds r0, r3, 0 - orrs r0, r1 - strh r0, [r2] -_0806D48A: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806D514 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806D514 - mov r0, r9 - cmp r0, 0 - beq _0806D514 - ldr r2, [r5, 0x70] - adds r6, r2, 0 - adds r3, r2, 0 - adds r3, 0xD0 - ldrb r0, [r3] - cmp r0, 0x2 - bne _0806D514 - ldr r0, _0806D4E0 - ldr r1, [r0] - adds r0, r2, 0 - adds r0, 0xD8 - ldrb r0, [r0] - lsls r0, 2 - ldr r2, _0806D4E4 - adds r1, r2 - adds r1, r0 - ldr r4, [r1] - cmp r4, 0 - bne _0806D4E8 - strb r4, [r3] - b _0806D514 - .align 2, 0 -_0806D4D4: .4byte gUnknown_80F4E1C -_0806D4D8: .4byte gUnknown_80F4E1E -_0806D4DC: .4byte gUnknown_80F4E20 -_0806D4E0: .4byte gUnknown_203B418 -_0806D4E4: .4byte 0x000135cc -_0806D4E8: - ldr r0, [r4, 0x70] - adds r0, 0x98 - adds r1, r6, 0 - adds r1, 0xD4 - ldr r2, [r0] - ldr r0, [r1] - cmp r2, r0 - beq _0806D4FE - movs r0, 0 - strb r0, [r3] - b _0806D514 -_0806D4FE: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8041D00 - mov r3, r8 - ldr r1, [r3] - ldr r3, _0806D524 - adds r0, r4, 0 - movs r2, 0xC - bl sub_806F324 -_0806D514: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806D524: .4byte 0x000001f9 - thumb_func_end sub_806D010 - - thumb_func_start sub_806D528 -sub_806D528: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x58 - mov r9, r0 - adds r7, r1, 0 - adds r5, r2, 0 - str r3, [sp, 0x4C] - ldr r0, [sp, 0x7C] - lsls r0, 16 - asrs r0, 16 - str r0, [sp, 0x50] - movs r0, 0 - str r0, [sp, 0x54] - mov r10, r0 - mov r8, r0 - mov r1, r10 - strb r1, [r5, 0xF] - adds r0, r7, 0 - bl sub_80450F8 - cmp r0, 0x1 - beq _0806D55C - b _0806D754 -_0806D55C: - ldr r6, [r7, 0x70] - mov r0, r9 - adds r1, r7, 0 - bl sub_807A96C - mov r0, r9 - adds r1, r7, 0 - bl sub_806F450 - mov r0, r9 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806D592 - mov r2, r9 - ldr r0, [r2, 0x70] - adds r0, 0xDC - ldrb r0, [r0] - cmp r0, 0x3 - bne _0806D592 - ldrb r0, [r5, 0xE] - cmp r0, 0 - bne _0806D592 - ldr r0, _0806D5C8 - movs r3, 0 - ldrsh r0, [r0, r3] - str r0, [r5] -_0806D592: - ldr r0, _0806D5CC - ldr r1, [sp, 0x50] - cmp r1, r0 - beq _0806D5DC - adds r0, r7, 0 - movs r1, 0xD - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D5DC - ldr r1, [r5] - ldr r0, _0806D5D0 - cmp r1, r0 - bne _0806D5DC - ldr r0, _0806D5D4 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0806D5D8 - ldr r2, [r0] - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 - b _0806D71E - .align 2, 0 -_0806D5C8: .4byte gUnknown_80F4F8C -_0806D5CC: .4byte 0x0000020e -_0806D5D0: .4byte 0x0000270f -_0806D5D4: .4byte gUnknown_202DFE8 -_0806D5D8: .4byte gUnknown_80FCA90 -_0806D5DC: - adds r0, r6, 0 - adds r0, 0xB0 - ldrb r4, [r0] - mov r10, r0 - cmp r4, 0x1 - bne _0806D618 - ldr r0, _0806D610 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0806D614 - ldr r2, [r0] - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 - mov r0, r9 - adds r1, r7, 0 - bl sub_8042238 - strb r4, [r5, 0xF] -_0806D608: - movs r0, 0 - bl _0806E0F0 - .align 2, 0 -_0806D610: .4byte gUnknown_202DFE8 -_0806D614: .4byte gUnknown_80F9600 -_0806D618: - adds r0, r6, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0806D62A - cmp r0, 0x5 - beq _0806D62A - cmp r0, 0x3 - bne _0806D63A -_0806D62A: - adds r0, r6, 0 - adds r0, 0xA9 - ldrb r0, [r0] - cmp r0, 0x7F - bne _0806D63A - adds r0, r7, 0 - bl sub_807A9B0 -_0806D63A: - adds r0, r7, 0 - movs r1, 0x23 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D660 - ldrb r0, [r5, 0xC] - cmp r0, 0x5 - bne _0806D660 -_0806D64E: - ldr r2, [r5] - movs r0, 0 - str r0, [sp] - mov r0, r9 - adds r1, r7, 0 - movs r3, 0 - bl sub_8077C44 - b _0806D754 -_0806D660: - adds r0, r7, 0 - movs r1, 0x24 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806D674 - ldrb r0, [r5, 0xC] - cmp r0, 0x3 - beq _0806D64E -_0806D674: - movs r2, 0xA9 - lsls r2, 1 - adds r0, r6, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0806D6D0 - ldrb r0, [r5, 0xD] - cmp r0, 0 - beq _0806D692 - ldr r0, _0806D6A4 - ldr r2, [r0] - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 -_0806D692: - ldr r0, [r5, 0x8] - cmp r0, 0x1 - beq _0806D6B0 - cmp r0, 0x1 - bcc _0806D6A8 - cmp r0, 0x3 - beq _0806D6C4 - b _0806D6D0 - .align 2, 0 -_0806D6A4: .4byte gUnknown_80F9614 -_0806D6A8: - ldr r0, _0806D6AC - b _0806D6B2 - .align 2, 0 -_0806D6AC: .4byte gUnknown_80F9630 -_0806D6B0: - ldr r0, _0806D6C0 -_0806D6B2: - ldr r2, [r0] - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 - b _0806D6D0 - .align 2, 0 -_0806D6C0: .4byte gUnknown_80F9654 -_0806D6C4: - ldr r0, _0806D728 - ldr r2, [r0] - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 -_0806D6D0: - ldr r4, _0806D72C - adds r0, r4, 0 - mov r1, r9 - movs r2, 0 - bl sub_8045B94 - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r1, [r5] - cmp r1, 0 - bne _0806D760 - mov r0, r9 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0806D734 - adds r0, r7, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0806D734 - movs r3, 0xA9 - lsls r3, 1 - adds r0, r6, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _0806D71E - ldr r0, _0806D730 - ldr r2, [r0] - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 -_0806D71E: - mov r0, r9 - adds r1, r7, 0 - bl sub_8042238 - b _0806D754 - .align 2, 0 -_0806D728: .4byte gUnknown_80F9670 -_0806D72C: .4byte gUnknown_202DF98 -_0806D730: .4byte gUnknown_80F9688 -_0806D734: - movs r1, 0xA9 - lsls r1, 1 - adds r0, r6, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0806D74C - ldr r0, _0806D75C - ldr r2, [r0] - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 -_0806D74C: - movs r0, 0x1E - movs r1, 0x18 - bl sub_803E708 -_0806D754: - movs r0, 0x1 - strb r0, [r5, 0xF] - b _0806D608 - .align 2, 0 -_0806D75C: .4byte gUnknown_80F9688 -_0806D760: - ldr r0, _0806D7B8 - cmp r1, r0 - bne _0806D7C4 - ldr r0, [sp, 0x80] - cmp r0, 0 - beq _0806D796 - adds r0, r7, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0806D796 - adds r0, r7, 0 - bl sub_8045128 - mov r8, r0 - movs r0, 0x14 - movs r1, 0x18 - bl sub_803E708 - mov r2, r8 - ldrh r1, [r2, 0x4] - movs r0, 0x4 - orrs r0, r1 - strh r0, [r2, 0x4] - bl sub_8049ED4 -_0806D796: - movs r3, 0xA9 - lsls r3, 1 - adds r0, r6, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _0806D7AE - ldr r0, _0806D7BC - ldr r2, [r0] - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 -_0806D7AE: - adds r1, r6, 0 - adds r1, 0xA0 - ldr r0, _0806D7C0 - str r0, [r1] - b _0806D84A - .align 2, 0 -_0806D7B8: .4byte 0x0000270f -_0806D7BC: .4byte gUnknown_80F96A8 -_0806D7C0: .4byte 0x000003e7 -_0806D7C4: - ldr r0, _0806D824 - str r1, [r0] - ldr r1, _0806D828 - ldr r0, [r5, 0x4] - lsls r0, 2 - adds r0, r1 - ldr r4, [r0] - adds r2, r6, 0 - adds r2, 0xA0 - ldr r0, [r2] - ldr r1, [r5] - adds r0, r1 - str r0, [r2] - ldr r1, _0806D82C - cmp r0, r1 - ble _0806D7E6 - str r1, [r2] -_0806D7E6: - adds r0, r7, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0806D830 - ldr r0, [r5, 0x4] - cmp r0, 0xE - beq _0806D808 - ldr r0, [r5] - negs r0, r0 - movs r3, 0x1 - negs r3, r3 - adds r1, r7, 0 - movs r2, 0x1 - bl sub_803ED30 -_0806D808: - movs r1, 0xA9 - lsls r1, 1 - adds r0, r6, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0806D84A - cmp r4, 0 - beq _0806D84A - mov r0, r9 - adds r1, r7, 0 - adds r2, r4, 0 - bl sub_80522F4 - b _0806D84A - .align 2, 0 -_0806D824: .4byte gUnknown_202DE30 -_0806D828: .4byte gUnknown_80F9764 -_0806D82C: .4byte 0x000003e7 -_0806D830: - movs r2, 0xA9 - lsls r2, 1 - adds r0, r6, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0806D84A - cmp r4, 0 - beq _0806D84A - mov r0, r9 - adds r1, r7, 0 - adds r2, r4, 0 - bl sub_80522F4 -_0806D84A: - ldr r0, [r5, 0x4] - cmp r0, 0xE - bne _0806D858 - movs r3, 0xE - ldrsh r0, [r6, r3] - cmp r0, 0x1 - bgt _0806D900 -_0806D858: - mov r0, r8 - cmp r0, 0 - bne _0806D900 - adds r0, r7, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0806D900 - mov r2, r9 - ldr r1, [r2, 0x4] - ldr r0, [r7, 0x4] - cmp r1, r0 - beq _0806D8E6 - mov r0, r9 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806D8E6 - movs r4, 0 - ldrb r0, [r6, 0x7] - cmp r0, 0 - beq _0806D8B4 - ldr r0, _0806D8B0 - ldr r0, [r0] - ldrb r0, [r0, 0x2] - cmp r0, 0 - beq _0806D8B6 - adds r0, r7, 0 - bl sub_806A458 - lsls r0, 24 - cmp r0, 0 - bne _0806D8B6 - adds r0, r7, 0 - mov r1, r9 - bl sub_8045990 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - b _0806D8B6 - .align 2, 0 -_0806D8B0: .4byte gUnknown_203B46C -_0806D8B4: - movs r4, 0 -_0806D8B6: - adds r0, r6, 0 - adds r0, 0xE8 - ldrb r0, [r0] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0806D8C8 - movs r4, 0 -_0806D8C8: - cmp r4, 0 - beq _0806D8E0 - ldr r4, [r7, 0x70] - adds r0, r7, 0x4 - mov r1, r9 - adds r1, 0x4 - bl sub_80983D8 - movs r1, 0x7 - ands r0, r1 - adds r4, 0x46 - strb r0, [r4] -_0806D8E0: - adds r0, r7, 0 - bl sub_8069DCC -_0806D8E6: - ldr r0, [r7, 0x70] - adds r0, 0x46 - ldrb r2, [r0] - adds r0, r7, 0 - movs r1, 0x6 - bl sub_806CDD4 - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80420E8 - movs r3, 0x1 - str r3, [sp, 0x54] -_0806D900: - movs r0, 0xE - ldrsh r4, [r6, r0] - ldr r1, [r5] - cmp r4, r1 - ble _0806D910 - ldrh r0, [r6, 0xE] - subs r0, r1 - b _0806D912 -_0806D910: - movs r0, 0 -_0806D912: - strh r0, [r6, 0xE] - adds r0, r6, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x9 - bne _0806D93C - movs r1, 0xE - ldrsh r0, [r6, r1] - cmp r0, 0 - bne _0806D958 - movs r0, 0x1 - strh r0, [r6, 0xE] - ldr r0, _0806D938 - ldr r2, [r0] - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 - b _0806D958 - .align 2, 0 -_0806D938: .4byte gUnknown_8100548 -_0806D93C: - ldr r2, [sp, 0x4C] - cmp r2, 0x1 - bne _0806D958 - movs r3, 0xE - ldrsh r0, [r6, r3] - cmp r0, 0 - bne _0806D958 - strh r2, [r6, 0xE] - ldr r0, _0806D9C8 - ldr r2, [r0] - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 -_0806D958: - movs r1, 0xE - ldrsh r0, [r6, r1] - subs r4, r0 - cmp r4, 0 - bge _0806D964 - movs r4, 0 -_0806D964: - ldr r2, [sp, 0x54] - cmp r2, 0 - bne _0806D970 - mov r3, r8 - cmp r3, 0 - beq _0806D978 -_0806D970: - movs r0, 0xA - movs r1, 0x18 - bl sub_803E708 -_0806D978: - movs r1, 0xE - ldrsh r0, [r6, r1] - cmp r0, 0 - beq _0806D9D4 - ldr r2, [sp, 0x54] - cmp r2, 0 - beq _0806D98E - adds r0, r7, 0 - movs r1, 0x8 - bl sub_806CE68 -_0806D98E: - adds r0, r7, 0 - movs r1, 0x10 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0806D9B2 - cmp r4, 0 - ble _0806D9B2 - ldr r1, [r5] - ldr r0, _0806D9CC - cmp r1, r0 - beq _0806D9B2 - mov r0, r9 - adds r1, r7, 0 - adds r2, r4, 0 - bl sub_8071D4C -_0806D9B2: - mov r3, r8 - cmp r3, 0 - bne _0806D9BA - b _0806D608 -_0806D9BA: - ldrh r1, [r3, 0x4] - ldr r0, _0806D9D0 - ands r0, r1 - strh r0, [r3, 0x4] - bl sub_8049ED4 - b _0806D608 - .align 2, 0 -_0806D9C8: .4byte gUnknown_810056C -_0806D9CC: .4byte 0x0000270f -_0806D9D0: .4byte 0x0000fffb -_0806D9D4: - adds r0, r6, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x2 - bne _0806D9E6 - mov r0, r9 - adds r1, r7, 0 - bl sub_807A7C8 -_0806D9E6: - mov r0, r8 - cmp r0, 0 - beq _0806DA18 - movs r0, 0x14 - movs r1, 0x18 - bl sub_803E708 - adds r1, r7, 0 - adds r1, 0x22 - movs r0, 0x2 - strb r0, [r1] - movs r0, 0xA - movs r1, 0x18 - bl sub_803E708 - mov r2, r8 - ldrh r1, [r2, 0x4] - ldr r0, _0806DA14 - ands r0, r1 - strh r0, [r2, 0x4] - bl sub_8049ED4 - b _0806DA2E - .align 2, 0 -_0806DA14: .4byte 0x0000fffb -_0806DA18: - ldr r3, [sp, 0x54] - cmp r3, 0 - beq _0806DA2E - adds r1, r7, 0 - adds r1, 0x22 - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x1E - movs r1, 0x18 - bl sub_803E708 -_0806DA2E: - movs r0, 0x1 - mov r8, r0 - mov r0, r9 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806DA50 - mov r0, r9 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806DA50 - cmp r9, r7 - beq _0806DA50 - movs r1, 0 - mov r8, r1 -_0806DA50: - movs r2, 0xA6 - lsls r2, 1 - adds r1, r6, r2 - movs r0, 0 - strb r0, [r1] - ldr r4, _0806DA88 - adds r0, r4, 0 - mov r1, r9 - movs r2, 0 - bl sub_8045B94 - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, [r5, 0x4] - subs r0, 0x13 - cmp r0, 0x1 - bhi _0806DA9C - ldrb r0, [r6, 0x6] - cmp r0, 0 - beq _0806DA90 - ldr r0, _0806DA8C - ldr r2, [r0] - b _0806DAC2 - .align 2, 0 -_0806DA88: .4byte gUnknown_202DF98 -_0806DA8C: .4byte gUnknown_80F9E44 -_0806DA90: - ldr r0, _0806DA98 - ldr r1, [r0] - b _0806DB86 - .align 2, 0 -_0806DA98: .4byte gUnknown_80F9E44 -_0806DA9C: - ldrb r0, [r6, 0x6] - cmp r0, 0 - beq _0806DAD0 - adds r0, r6, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806DAB8 - ldr r0, _0806DAB4 - mov r3, r8 - lsls r1, r3, 2 - b _0806DB82 - .align 2, 0 -_0806DAB4: .4byte gUnknown_80F9DF0 -_0806DAB8: - ldr r0, _0806DACC - mov r2, r8 - lsls r1, r2, 2 - adds r1, r0 - ldr r2, [r1] -_0806DAC2: - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 - b _0806DBA4 - .align 2, 0 -_0806DACC: .4byte gUnknown_80F9CC0 -_0806DAD0: - ldr r2, _0806DB04 - ldrb r1, [r6, 0xA] - movs r0, 0x64 - muls r0, r1 - ldr r3, _0806DB08 - adds r0, r3 - ldr r1, [r2] - adds r3, r1, r0 - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _0806DB00 - adds r0, r6, 0 - adds r0, 0x40 - ldrb r1, [r0] - adds r2, r0, 0 - cmp r1, 0x41 - bne _0806DB18 - ldr r0, _0806DB0C - ldr r0, [r0] - ldr r1, _0806DB10 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0806DB18 -_0806DB00: - ldr r0, _0806DB14 - b _0806DB7E - .align 2, 0 -_0806DB04: .4byte gUnknown_203B45C -_0806DB08: .4byte 0x00008df8 -_0806DB0C: .4byte gUnknown_203B418 -_0806DB10: .4byte 0x0000065c -_0806DB14: .4byte gUnknown_80F9CEC -_0806DB18: - ldrb r0, [r2] - cmp r0, 0x4A - beq _0806DB22 - cmp r0, 0x47 - bne _0806DB26 -_0806DB22: - movs r0, 0x1 - b _0806DB28 -_0806DB26: - movs r0, 0 -_0806DB28: - cmp r0, 0 - beq _0806DB38 - ldr r0, _0806DB34 - mov r3, r8 - lsls r1, r3, 2 - b _0806DB82 - .align 2, 0 -_0806DB34: .4byte gUnknown_80F9DAC -_0806DB38: - adds r0, r6, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806DB4C - ldr r0, _0806DB48 - b _0806DB7E - .align 2, 0 -_0806DB48: .4byte gUnknown_80F9DF0 -_0806DB4C: - movs r1, 0xA - ldrsh r0, [r3, r1] - bl sub_806A58C - lsls r0, 24 - cmp r0, 0 - beq _0806DB94 - ldr r0, _0806DB70 - ldr r0, [r0] - ldr r2, _0806DB74 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0806DB7C - ldr r0, _0806DB78 - mov r3, r8 - lsls r1, r3, 2 - b _0806DB82 - .align 2, 0 -_0806DB70: .4byte gUnknown_203B418 -_0806DB74: .4byte 0x0000065d -_0806DB78: .4byte gUnknown_80F9D8C -_0806DB7C: - ldr r0, _0806DB90 -_0806DB7E: - mov r2, r8 - lsls r1, r2, 2 -_0806DB82: - adds r1, r0 - ldr r1, [r1] -_0806DB86: - mov r0, r9 - bl sub_805239C - b _0806DBA4 - .align 2, 0 -_0806DB90: .4byte gUnknown_80F9D84 -_0806DB94: - ldr r0, _0806DC4C - mov r3, r8 - lsls r1, r3, 2 - adds r1, r0 - ldr r1, [r1] - mov r0, r9 - bl sub_805239C -_0806DBA4: - mov r1, r10 - ldrb r0, [r1] - subs r0, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0806DBBC - adds r0, r6, 0 - adds r0, 0x9C - ldr r0, [r0] - bl sub_8076CB4 -_0806DBBC: - adds r1, r6, 0 - adds r1, 0x60 - ldrb r3, [r1] - movs r2, 0x1 - mov r8, r2 - mov r0, r8 - ands r0, r3 - adds r5, r1, 0 - cmp r0, 0 - beq _0806DC5C - movs r0, 0x8 - ands r0, r3 - cmp r0, 0 - bne _0806DC5C - movs r0, 0x2 - ands r0, r3 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0806DC5C - ldrb r0, [r5, 0x2] - cmp r0, 0xD2 - bne _0806DC5C - adds r0, r7, 0 - bl sub_8042148 - adds r0, r7, 0 - adds r0, 0x22 - strb r4, [r0] - ldrh r0, [r6, 0x10] - movs r2, 0 - strh r0, [r6, 0xE] - movs r3, 0xAC - lsls r3, 1 - adds r0, r6, r3 - strb r2, [r0] - movs r1, 0xA6 - lsls r1, 1 - adds r0, r6, r1 - mov r3, r8 - strb r3, [r0] - movs r0, 0x9E - lsls r0, 1 - adds r1, r6, r0 - movs r3, 0xA0 - lsls r3, 1 - adds r0, r6, r3 - ldr r0, [r0] - str r0, [r1] - ldrb r0, [r6, 0x7] - cmp r0, 0 - beq _0806DC36 - ldr r0, _0806DC50 - ldr r1, [r0] - ldr r3, _0806DC54 - adds r1, r3 - strb r2, [r1] - ldr r0, [r0] - ldr r1, _0806DC58 - adds r0, r1 - strb r2, [r0] -_0806DC36: - strb r2, [r5, 0x2] - strb r2, [r5, 0x1] - strb r2, [r5] - adds r0, r6, 0 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0806DC48 - b _0806DEC8 -_0806DC48: - b _0806DEE4 - .align 2, 0 -_0806DC4C: .4byte gUnknown_80F9D28 -_0806DC50: .4byte gUnknown_203B418 -_0806DC54: .4byte 0x00000679 -_0806DC58: .4byte 0x00000676 -_0806DC5C: - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _0806DC64 - b _0806DDFC -_0806DC64: - mov r10, r5 - ldrb r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0806DC72 - b _0806DDFC -_0806DC72: - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0806DC7C - b _0806DDFC -_0806DC7C: - ldrb r0, [r5, 0x2] - cmp r0, 0xD8 - beq _0806DC84 - b _0806DDFC -_0806DC84: - movs r4, 0 -_0806DC86: - ldr r0, _0806DD80 - ldr r0, [r0] - lsls r1, r4, 2 - ldr r2, _0806DD84 - adds r0, r2 - adds r0, r1 - ldr r0, [r0] - mov r8, r0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806DCDE - cmp r8, r7 - beq _0806DCDE - adds r0, r7, 0 - mov r1, r8 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - beq _0806DCDE - mov r3, r8 - movs r0, 0x4 - ldrsh r1, [r3, r0] - movs r2, 0x4 - ldrsh r0, [r7, r2] - subs r1, r0 - cmp r1, 0 - bge _0806DCC4 - negs r1, r1 -_0806DCC4: - cmp r1, 0x1 - bgt _0806DCDE - mov r3, r8 - movs r0, 0x6 - ldrsh r1, [r3, r0] - movs r2, 0x6 - ldrsh r0, [r7, r2] - subs r1, r0 - cmp r1, 0 - bge _0806DCDA - negs r1, r1 -_0806DCDA: - cmp r1, 0x1 - ble _0806DCE4 -_0806DCDE: - adds r4, 0x1 - cmp r4, 0x3 - ble _0806DC86 -_0806DCE4: - cmp r4, 0x4 - bne _0806DCEA - b _0806DDFC -_0806DCEA: - adds r0, r7, 0 - bl sub_8042148 - mov r3, r8 - ldr r4, [r3, 0x4] - ldr r1, _0806DD88 - mov r0, r8 - adds r2, r7, 0 - bl sub_8068FE0 - lsls r1, r4, 16 - asrs r1, 16 - asrs r4, 16 - adds r0, r7, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_80694C0 - adds r0, r7, 0 - movs r1, 0 - bl sub_804535C - adds r1, r7, 0 - adds r1, 0x22 - movs r0, 0 - strb r0, [r1] - ldrh r0, [r6, 0x10] - movs r4, 0 - strh r0, [r6, 0xE] - adds r0, r7, 0 - bl sub_8042A24 - movs r1, 0xAC - lsls r1, 1 - adds r0, r6, r1 - strb r4, [r0] - movs r2, 0xA6 - lsls r2, 1 - adds r1, r6, r2 - movs r0, 0x1 - strb r0, [r1] - movs r3, 0x9E - lsls r3, 1 - adds r1, r6, r3 - subs r2, 0xC - adds r0, r6, r2 - ldr r0, [r0] - str r0, [r1] - ldrb r0, [r6, 0x7] - cmp r0, 0 - beq _0806DD62 - ldr r0, _0806DD80 - ldr r1, [r0] - ldr r3, _0806DD8C - adds r1, r3 - strb r4, [r1] - ldr r0, [r0] - ldr r1, _0806DD90 - adds r0, r1 - strb r4, [r0] -_0806DD62: - mov r2, r10 - strb r4, [r2, 0x2] - strb r4, [r2, 0x1] - strb r4, [r2] - adds r0, r6, 0 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0806DD94 - mov r0, r9 - adds r1, r7, 0 - movs r2, 0x3 - bl sub_807A5D0 - b _0806DDA2 - .align 2, 0 -_0806DD80: .4byte gUnknown_203B418 -_0806DD84: .4byte 0x0001357c -_0806DD88: .4byte 0x00000221 -_0806DD8C: .4byte 0x00000679 -_0806DD90: .4byte 0x00000676 -_0806DD94: - cmp r0, 0x2 - bne _0806DDA2 - mov r0, r9 - adds r1, r7, 0 - movs r2, 0x2 - bl sub_807A5D0 -_0806DDA2: - adds r0, r7, 0 - bl sub_8078084 - adds r0, r6, 0 - movs r1, 0 - bl sub_806BFC0 - bl sub_800DBBC - adds r0, r7, 0 - bl sub_806A390 - adds r0, r7, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r7, 0 - bl sub_806CCB4 - adds r0, r7, 0 - bl sub_80418D4 - ldr r4, _0806DDF0 - adds r0, r4, 0 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - adds r4, 0x50 - adds r0, r4, 0 - mov r1, r8 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0806DDF4 - b _0806DF2E - .align 2, 0 -_0806DDF0: .4byte gUnknown_202DF98 -_0806DDF4: .4byte gUnknown_80FD484 -_0806DDF8: - mov r4, r8 - b _0806DE64 -_0806DDFC: - adds r0, r7, 0 - movs r1, 0x16 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _0806DE0C - b _0806DF48 -_0806DE0C: - movs r4, 0 - ldrb r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806DE28 - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0806DE28 - ldrb r0, [r5, 0x2] - cmp r0, 0x3A - bne _0806DE28 - adds r4, r5, 0 -_0806DE28: - cmp r4, 0 - bne _0806DE68 - ldrb r0, [r6, 0x6] - cmp r0, 0 - bne _0806DE64 - movs r3, 0 - ldr r0, _0806DED4 - ldr r2, [r0] - mov r12, r2 - movs r0, 0x1 - mov r10, r0 -_0806DE3E: - lsls r0, r3, 2 - add r0, r12 - mov r8, r0 - ldrb r1, [r2] - mov r0, r10 - ands r0, r1 - cmp r0, 0 - beq _0806DE5C - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0806DE5C - ldrb r0, [r2, 0x2] - cmp r0, 0x3A - beq _0806DDF8 -_0806DE5C: - adds r2, 0x4 - adds r3, 0x1 - cmp r3, 0x13 - ble _0806DE3E -_0806DE64: - cmp r4, 0 - beq _0806DF48 -_0806DE68: - adds r0, r7, 0 - bl sub_8042148 - adds r0, r4, 0 - movs r1, 0x46 - movs r2, 0x2 - bl sub_8045C28 - adds r1, r7, 0 - adds r1, 0x22 - movs r0, 0 - strb r0, [r1] - ldrh r0, [r6, 0x10] - movs r2, 0 - strh r0, [r6, 0xE] - movs r1, 0xAC - lsls r1, 1 - adds r0, r6, r1 - strb r2, [r0] - movs r3, 0xA6 - lsls r3, 1 - adds r1, r6, r3 - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x9E - lsls r0, 1 - adds r1, r6, r0 - subs r3, 0xC - adds r0, r6, r3 - ldr r0, [r0] - str r0, [r1] - ldrb r0, [r6, 0x7] - cmp r0, 0 - beq _0806DEBE - ldr r0, _0806DED8 - ldr r1, [r0] - ldr r3, _0806DEDC - adds r1, r3 - strb r2, [r1] - ldr r0, [r0] - ldr r1, _0806DEE0 - adds r0, r1 - strb r2, [r0] -_0806DEBE: - adds r0, r6, 0 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0806DEE4 -_0806DEC8: - mov r0, r9 - adds r1, r7, 0 - movs r2, 0x3 - bl sub_807A5D0 - b _0806DEF2 - .align 2, 0 -_0806DED4: .4byte gUnknown_203B460 -_0806DED8: .4byte gUnknown_203B418 -_0806DEDC: .4byte 0x00000679 -_0806DEE0: .4byte 0x00000676 -_0806DEE4: - cmp r0, 0x2 - bne _0806DEF2 - mov r0, r9 - adds r1, r7, 0 - movs r2, 0x2 - bl sub_807A5D0 -_0806DEF2: - adds r0, r7, 0 - bl sub_8078084 - adds r0, r6, 0 - movs r1, 0 - bl sub_806BFC0 - bl sub_800DBBC - adds r0, r7, 0 - bl sub_806A390 - adds r0, r7, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r7, 0 - bl sub_806CCB4 - adds r0, r7, 0 - bl sub_80418D4 - ldr r0, _0806DF40 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0806DF44 -_0806DF2E: - ldr r1, [r0] - mov r0, r9 - bl sub_805239C - adds r0, r7, 0 - bl sub_806F63C - bl _0806D608 - .align 2, 0 -_0806DF40: .4byte gUnknown_202DFE8 -_0806DF44: .4byte gUnknown_80FD46C -_0806DF48: - ldrb r4, [r6, 0x7] - cmp r4, 0 - bne _0806DF68 - ldrb r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806DF68 - adds r1, r7, 0x4 - adds r0, r7, 0 - adds r2, r5, 0 - bl sub_80464C8 - strb r4, [r5, 0x2] - strb r4, [r5, 0x1] - strb r4, [r5] -_0806DF68: - adds r0, r6, 0 - adds r0, 0xF7 - ldrb r0, [r0] - cmp r0, 0 - beq _0806DF7E - ldr r0, _0806E02C - ldr r0, [r0] - ldr r2, _0806E030 - adds r0, r2 - ldr r1, _0806E034 - strh r1, [r0] -_0806DF7E: - movs r3, 0 - mov r10, r3 - mov r0, r9 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806E066 - mov r0, r9 - ldr r4, [r0, 0x70] - movs r1, 0x2 - ldrsh r0, [r6, r1] - ldrb r1, [r6, 0x9] - bl sub_808DD18 - adds r5, r0, 0 - adds r0, r6, 0 - adds r0, 0xFB - ldrb r0, [r0] - cmp r0, 0 - beq _0806DFAE - cmp r0, 0x2 - bne _0806DFB4 - lsls r0, r5, 1 - adds r5, r0, r5 -_0806DFAE: - lsrs r0, r5, 31 - adds r0, r5, r0 - asrs r5, r0, 1 -_0806DFB4: - cmp r5, 0 - bne _0806DFBA - movs r5, 0x1 -_0806DFBA: - ldrb r0, [r4, 0x7] - cmp r0, 0 - beq _0806DFC8 - movs r2, 0x2 - ldrsh r0, [r6, r2] - bl sub_80980B4 -_0806DFC8: - adds r0, r6, 0 - adds r0, 0xF4 - ldrb r0, [r0] - cmp r0, 0 - beq _0806DFDA - ldr r3, _0806E038 - adds r1, r4, r3 - movs r0, 0x1 - strb r0, [r1] -_0806DFDA: - ldr r0, [sp, 0x78] - cmp r0, 0x1 - bne _0806E066 - ldrb r0, [r4, 0x6] - cmp r0, 0 - bne _0806E040 - ldrb r0, [r6, 0x6] - cmp r0, 0 - beq _0806E066 - mov r0, r9 - mov r1, r9 - adds r2, r5, 0 - bl sub_8071D4C - movs r6, 0 -_0806DFF8: - ldr r0, _0806E02C - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0806E03C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806E020 - cmp r4, r9 - beq _0806E020 - mov r0, r9 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_8071D4C -_0806E020: - adds r6, 0x1 - cmp r6, 0x3 - ble _0806DFF8 - movs r3, 0x1 - mov r10, r3 - b _0806E066 - .align 2, 0 -_0806E02C: .4byte gUnknown_203B418 -_0806E030: .4byte 0x0000066a -_0806E034: .4byte 0x000003e7 -_0806E038: .4byte 0x0000014b -_0806E03C: .4byte 0x0001357c -_0806E040: - ldr r5, _0806E0BC - ldr r0, [r5] - ldr r1, _0806E0C0 - adds r0, r1 - ldrb r0, [r0] - bl sub_809033C - lsls r0, 24 - cmp r0, 0 - beq _0806E066 - ldr r2, _0806E0C4 - adds r0, r4, r2 - add r3, sp, 0x78 - ldrb r3, [r3] - strb r3, [r0] - ldr r0, [r5] - add r1, sp, 0x78 - ldrb r1, [r1] - strb r1, [r0, 0xD] -_0806E066: - mov r0, r9 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806E08A - mov r0, r9 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806E08A - mov r2, r9 - ldr r0, [r2, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - bne _0806E08A - movs r3, 0 - mov r10, r3 -_0806E08A: - mov r0, r10 - cmp r0, 0 - beq _0806E0E4 - add r0, sp, 0x4 - adds r1, r7, 0 - bl sub_8069D4C - mov r0, r9 - adds r1, r7, 0 - bl sub_806F660 - lsls r0, 24 - cmp r0, 0 - beq _0806E0D8 - mov r0, r9 - adds r1, r7, 0 - add r2, sp, 0x4 - bl sub_806FA5C - lsls r0, 24 - cmp r0, 0 - bne _0806E0CC - ldr r1, _0806E0C8 - adds r0, r7, 0 - b _0806E0DC - .align 2, 0 -_0806E0BC: .4byte gUnknown_203B418 -_0806E0C0: .4byte 0x00000644 -_0806E0C4: .4byte 0x00000149 -_0806E0C8: .4byte 0x000001f5 -_0806E0CC: - ldr r1, _0806E0D4 - movs r0, 0x1 - strb r0, [r1] - b _0806E0EE - .align 2, 0 -_0806E0D4: .4byte gUnknown_202F221 -_0806E0D8: - adds r0, r7, 0 - ldr r1, [sp, 0x50] -_0806E0DC: - mov r2, r9 - bl sub_8068FE0 - b _0806E0EE -_0806E0E4: - adds r0, r7, 0 - ldr r1, [sp, 0x50] - mov r2, r9 - bl sub_8068FE0 -_0806E0EE: - movs r0, 0x1 -_0806E0F0: - add sp, 0x58 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_806D528 - - thumb_func_start sub_806E100 -sub_806E100: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - adds r6, r0, 0 - mov r8, r1 - str r2, [sp, 0x18] - lsls r3, 24 - lsrs r7, r3, 24 - movs r0, 0 - mov r9, r0 - movs r1, 0 - str r1, [sp, 0x20] - mov r2, r8 - ldr r2, [r2, 0x70] - str r2, [sp, 0x24] - ldr r3, [sp, 0x18] - ldr r3, [r3, 0x70] - mov r10, r3 - adds r0, r6, 0 - movs r1, 0x1 - bl sub_800A020 - mov r0, r9 - ldr r4, [sp, 0x48] - strb r0, [r4, 0xD] - strb r0, [r4, 0xE] - movs r1, 0 - str r1, [sp, 0x1C] - ldr r0, [sp, 0x18] - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0806E14E - movs r0, 0x1 - b _0806E61A -_0806E14E: - cmp r7, 0x1 - beq _0806E156 - cmp r7, 0x7 - bne _0806E15A -_0806E156: - movs r2, 0x1 - str r2, [sp, 0x20] -_0806E15A: - ldr r0, [sp, 0x18] - movs r1, 0x35 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E170 - cmp r7, 0 - beq _0806E170 - movs r3, 0x1 - str r3, [sp, 0x1C] -_0806E170: - movs r0, 0x2 - ldr r4, [sp, 0x48] - str r0, [r4, 0x8] - movs r5, 0 - add r0, sp, 0x10 - mov r9, r0 - b _0806E1F2 -_0806E17E: - mov r1, r10 - adds r1, 0x5C - ldr r2, [sp, 0x20] - cmp r2, 0 - beq _0806E1B4 - adds r0, r1, r5 - ldrb r0, [r0] - cmp r0, 0xE - bne _0806E1B4 - mov r0, r10 - adds r0, 0xF5 - ldrb r0, [r0] - cmp r0, 0 - bne _0806E1B4 - movs r4, 0 - ldr r0, _0806E1AC - ldr r0, [r0] - ldr r3, _0806E1B0 - adds r1, r0, r3 - movs r0, 0x1 - strb r0, [r1] - b _0806E1CA - .align 2, 0 -_0806E1AC: .4byte gUnknown_203B418 -_0806E1B0: .4byte 0x00000179 -_0806E1B4: - ldr r2, _0806E4E4 - adds r0, r1, r5 - ldrb r1, [r0] - lsls r1, 1 - lsls r0, r7, 3 - adds r0, r7 - lsls r0, 2 - adds r1, r0 - adds r1, r2 - movs r0, 0 - ldrsh r4, [r1, r0] -_0806E1CA: - cmp r4, 0x2 - beq _0806E1DC - lsls r0, r4, 2 - add r0, sp - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E1DC: - lsls r0, r5, 2 - add r0, r9 - str r4, [r0] - ldr r0, _0806E4E8 - ldr r0, [r0] - movs r1, 0x9E - lsls r1, 1 - adds r0, r1 - adds r0, r5 - strb r4, [r0] - adds r5, 0x1 -_0806E1F2: - cmp r5, 0x1 - bgt _0806E20E - mov r1, sp - ldr r0, _0806E4EC - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r0] - str r0, [r1] - adds r0, r6, 0 - bl sub_800A2A0 - lsls r0, 24 - cmp r0, 0 - beq _0806E17E -_0806E20E: - ldr r2, _0806E4F0 - mov r1, r9 - ldr r0, [r1, 0x4] - lsls r0, 2 - ldr r1, [sp, 0x10] - lsls r1, 4 - adds r0, r1 - adds r0, r2 - ldr r0, [r0] - ldr r2, [sp, 0x48] - str r0, [r2, 0x8] - movs r3, 0x1 - mov r9, r3 - cmp r0, 0x3 - beq _0806E240 - movs r4, 0 - mov r9, r4 - ldr r0, [sp, 0x1C] - cmp r0, 0 - beq _0806E240 - ldr r0, _0806E4F4 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [r6] - str r1, [r6, 0x4] -_0806E240: - cmp r7, 0x2 - beq _0806E248 - cmp r7, 0x6 - bne _0806E26C -_0806E248: - ldr r0, [sp, 0x18] - movs r1, 0x2 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E26C - ldr r0, _0806E4E8 - ldr r0, [r0] - ldr r2, _0806E4F8 - adds r1, r0, r2 - movs r0, 0x1 - strb r0, [r1] - ldr r2, _0806E4FC - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E26C: - cmp r7, 0x2 - bne _0806E2A0 - ldr r0, [sp, 0x18] - bl sub_807723C - lsls r0, 24 - cmp r0, 0 - beq _0806E2A0 - ldr r0, _0806E4E8 - ldr r0, [r0] - movs r3, 0xB7 - lsls r3, 1 - adds r0, r3 - movs r4, 0 - movs r5, 0x1 - strb r5, [r0] - adds r0, r6, 0 - movs r1, 0 - bl sub_800A020 - ldr r0, [sp, 0x48] - str r4, [r0, 0x8] - strb r4, [r0, 0xD] - strb r5, [r0, 0xE] - movs r1, 0 - mov r9, r1 -_0806E2A0: - cmp r7, 0x9 - bne _0806E2D2 - ldr r0, [sp, 0x18] - movs r1, 0x37 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E2D2 - ldr r0, _0806E4E8 - ldr r0, [r0] - ldr r2, _0806E500 - adds r0, r2 - movs r4, 0 - movs r5, 0x1 - strb r5, [r0] - adds r0, r6, 0 - movs r1, 0 - bl sub_800A020 - ldr r3, [sp, 0x48] - str r4, [r3, 0x8] - strb r4, [r3, 0xD] - strb r5, [r3, 0xE] - mov r9, r4 -_0806E2D2: - cmp r7, 0x3 - bne _0806E340 - mov r0, r8 - movs r1, 0x10 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E340 - movs r4, 0 - ldr r0, [sp, 0x24] - movs r2, 0x10 - ldrsh r1, [r0, r2] - cmp r1, 0 - bge _0806E2F2 - adds r1, 0x3 -_0806E2F2: - asrs r1, 2 - ldr r3, [sp, 0x24] - movs r2, 0xE - ldrsh r0, [r3, r2] - cmp r1, r0 - blt _0806E300 - movs r4, 0x1 -_0806E300: - ldr r0, [sp, 0x24] - movs r1, 0x80 - adds r2, r4, 0 - bl sub_8071ACC - lsls r0, 24 - lsrs r5, r0, 24 - cmp r4, 0 - beq _0806E32A - ldr r0, _0806E4E8 - ldr r0, [r0] - movs r3, 0xB8 - lsls r3, 1 - adds r0, r3 - movs r1, 0x1 - strb r1, [r0] - ldr r2, _0806E504 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E32A: - cmp r5, 0 - beq _0806E340 - mov r0, r8 - bl sub_80428EC - ldr r0, _0806E508 - ldr r2, [r0] - mov r0, r8 - ldr r1, [sp, 0x18] - bl sub_80522F4 -_0806E340: - cmp r7, 0x4 - bne _0806E3AC - mov r0, r8 - movs r1, 0x1A - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E3AC - movs r4, 0 - ldr r0, [sp, 0x24] - movs r2, 0x10 - ldrsh r1, [r0, r2] - cmp r1, 0 - bge _0806E360 - adds r1, 0x3 -_0806E360: - asrs r1, 2 - ldr r3, [sp, 0x24] - movs r2, 0xE - ldrsh r0, [r3, r2] - cmp r1, r0 - blt _0806E36E - movs r4, 0x1 -_0806E36E: - ldr r0, [sp, 0x24] - movs r1, 0x2 - adds r2, r4, 0 - bl sub_8071ACC - lsls r0, 24 - lsrs r5, r0, 24 - cmp r4, 0 - beq _0806E396 - ldr r0, _0806E4E8 - ldr r0, [r0] - ldr r3, _0806E50C - adds r1, r0, r3 - movs r0, 0x1 - strb r0, [r1] - ldr r2, _0806E504 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E396: - cmp r5, 0 - beq _0806E3AC - mov r0, r8 - bl sub_80428D8 - ldr r0, _0806E510 - ldr r2, [r0] - mov r0, r8 - ldr r1, [sp, 0x18] - bl sub_80522F4 -_0806E3AC: - cmp r7, 0xC - bne _0806E41A - mov r0, r8 - movs r1, 0x43 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E41A - movs r4, 0 - ldr r0, [sp, 0x24] - movs r2, 0x10 - ldrsh r1, [r0, r2] - cmp r1, 0 - bge _0806E3CC - adds r1, 0x3 -_0806E3CC: - asrs r1, 2 - ldr r3, [sp, 0x24] - movs r2, 0xE - ldrsh r0, [r3, r2] - cmp r1, r0 - blt _0806E3DA - movs r4, 0x1 -_0806E3DA: - ldr r0, [sp, 0x24] - movs r1, 0x10 - adds r2, r4, 0 - bl sub_8071ACC - lsls r0, 24 - lsrs r5, r0, 24 - cmp r4, 0 - beq _0806E404 - ldr r0, _0806E4E8 - ldr r0, [r0] - movs r3, 0xB9 - lsls r3, 1 - adds r1, r0, r3 - movs r0, 0x1 - strb r0, [r1] - ldr r2, _0806E504 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E404: - cmp r5, 0 - beq _0806E41A - mov r0, r8 - bl sub_8042978 - ldr r0, _0806E514 - ldr r2, [r0] - mov r0, r8 - ldr r1, [sp, 0x18] - bl sub_80522F4 -_0806E41A: - cmp r7, 0x2 - bne _0806E486 - mov r0, r8 - movs r1, 0x46 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E486 - movs r4, 0 - ldr r0, [sp, 0x24] - movs r2, 0x10 - ldrsh r1, [r0, r2] - cmp r1, 0 - bge _0806E43A - adds r1, 0x3 -_0806E43A: - asrs r1, 2 - ldr r3, [sp, 0x24] - movs r2, 0xE - ldrsh r0, [r3, r2] - cmp r1, r0 - blt _0806E448 - movs r4, 0x1 -_0806E448: - ldr r0, [sp, 0x24] - movs r1, 0x20 - adds r2, r4, 0 - bl sub_8071ACC - lsls r0, 24 - lsrs r5, r0, 24 - cmp r4, 0 - beq _0806E470 - ldr r0, _0806E4E8 - ldr r0, [r0] - ldr r3, _0806E518 - adds r1, r0, r3 - movs r0, 0x1 - strb r0, [r1] - ldr r2, _0806E504 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E470: - cmp r5, 0 - beq _0806E486 - mov r0, r8 - bl sub_804298C - ldr r0, _0806E51C - ldr r2, [r0] - mov r0, r8 - ldr r1, [sp, 0x18] - bl sub_80522F4 -_0806E486: - adds r0, r6, 0 - bl sub_800A2A0 - lsls r0, 24 - cmp r0, 0 - bne _0806E4B8 - mov r0, r8 - adds r1, r7, 0 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _0806E4B8 - ldr r0, _0806E4E8 - ldr r0, [r0] - movs r4, 0xBA - lsls r4, 1 - adds r0, r4 - movs r1, 0x1 - strb r1, [r0] - ldr r2, _0806E520 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E4B8: - mov r0, r8 - bl sub_807E580 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x1 - bne _0806E53E - cmp r7, 0x2 - bne _0806E524 - ldr r0, _0806E4E8 - ldr r0, [r0] - movs r1, 0xB6 - lsls r1, 1 - adds r0, r1 - strb r4, [r0] - ldr r2, _0806E520 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C - b _0806E53E - .align 2, 0 -_0806E4E4: .4byte gUnknown_80F522C -_0806E4E8: .4byte gUnknown_203B418 -_0806E4EC: .4byte gUnknown_8106F54 -_0806E4F0: .4byte gUnknown_80F54B4 -_0806E4F4: .4byte gUnknown_8106EFC -_0806E4F8: .4byte 0x0000016d -_0806E4FC: .4byte gUnknown_8106F1C -_0806E500: .4byte 0x0000016f -_0806E504: .4byte gUnknown_8106F0C -_0806E508: .4byte gUnknown_80FEDA8 -_0806E50C: .4byte 0x00000171 -_0806E510: .4byte gUnknown_80FED88 -_0806E514: .4byte gUnknown_80FEDC8 -_0806E518: .4byte 0x00000173 -_0806E51C: .4byte gUnknown_80FEDE8 -_0806E520: .4byte gUnknown_8106F14 -_0806E524: - cmp r7, 0x3 - bne _0806E53E - ldr r0, _0806E560 - ldr r0, [r0] - movs r2, 0xB6 - lsls r2, 1 - adds r0, r2 - strb r4, [r0] - ldr r2, _0806E564 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E53E: - cmp r4, 0x4 - bne _0806E586 - cmp r7, 0x2 - bne _0806E56C - ldr r0, _0806E560 - ldr r0, [r0] - ldr r3, _0806E568 - adds r1, r0, r3 - movs r0, 0x1 - strb r0, [r1] - ldr r2, _0806E564 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C - b _0806E586 - .align 2, 0 -_0806E560: .4byte gUnknown_203B418 -_0806E564: .4byte gUnknown_8106F1C -_0806E568: .4byte 0x0000016b -_0806E56C: - cmp r7, 0x3 - bne _0806E586 - ldr r0, _0806E62C - ldr r0, [r0] - ldr r2, _0806E630 - adds r1, r0, r2 - movs r0, 0x1 - strb r0, [r1] - ldr r2, _0806E634 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E586: - cmp r4, 0x3 - bne _0806E5A6 - cmp r7, 0x1 - beq _0806E5A6 - ldr r2, _0806E638 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C - ldr r0, _0806E62C - ldr r0, [r0] - movs r3, 0xB5 - lsls r3, 1 - adds r1, r0, r3 - movs r0, 0x1 - strb r0, [r1] -_0806E5A6: - ldr r0, _0806E62C - ldr r1, [r0] - ldr r2, _0806E63C - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0806E5B8 - cmp r4, 0x6 - bne _0806E5CE -_0806E5B8: - cmp r7, 0x5 - bne _0806E5CE - ldr r3, _0806E640 - adds r1, r3 - movs r0, 0x1 - strb r0, [r1] - ldr r2, _0806E644 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E5CE: - ldr r0, _0806E62C - ldr r1, [r0] - ldr r4, _0806E648 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _0806E5F4 - cmp r7, 0x2 - bne _0806E5F4 - movs r0, 0xBB - lsls r0, 1 - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] - ldr r2, _0806E644 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E5F4: - cmp r7, 0x5 - bne _0806E618 - ldr r0, [sp, 0x24] - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, 0xB - bne _0806E618 - ldr r0, _0806E62C - ldr r0, [r0] - ldr r2, _0806E64C - adds r1, r0, r2 - movs r0, 0x1 - strb r0, [r1] - ldr r2, _0806E650 - adds r0, r6, 0 - adds r1, r6, 0 - bl sub_800A34C -_0806E618: - mov r0, r9 -_0806E61A: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0806E62C: .4byte gUnknown_203B418 -_0806E630: .4byte 0x0000016b -_0806E634: .4byte gUnknown_8106F14 -_0806E638: .4byte gUnknown_8106F64 -_0806E63C: .4byte 0x0000e277 -_0806E640: .4byte 0x00000175 -_0806E644: .4byte gUnknown_8106F1C -_0806E648: .4byte 0x0000e278 -_0806E64C: .4byte 0x00000177 -_0806E650: .4byte gUnknown_8106F0C - thumb_func_end sub_806E100 - - thumb_func_start sub_806E654 -sub_806E654: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - mov r9, r0 - str r1, [sp, 0x14] - lsls r2, 24 - lsrs r4, r2, 24 - movs r5, 0x1 - movs r0, 0 - str r0, [sp, 0x10] - adds r0, r1, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0806E6DC - cmp r4, 0x1 - beq _0806E682 - cmp r4, 0x7 - bne _0806E686 -_0806E682: - movs r1, 0x1 - str r1, [sp, 0x10] -_0806E686: - mov r2, r9 - ldr r2, [r2, 0x70] - mov r8, r2 - ldr r3, [sp, 0x14] - ldr r3, [r3, 0x70] - mov r10, r3 - cmp r4, 0x2 - bne _0806E6A2 - ldr r0, [sp, 0x14] - bl sub_807723C - lsls r0, 24 - cmp r0, 0 - bne _0806E6C6 -_0806E6A2: - cmp r4, 0x5 - bne _0806E6B4 - ldr r0, [sp, 0x14] - movs r1, 0x23 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _0806E6C6 -_0806E6B4: - cmp r4, 0x3 - bne _0806E6CA - ldr r0, [sp, 0x14] - movs r1, 0x24 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E6CA -_0806E6C6: - movs r0, 0 - b _0806E894 -_0806E6CA: - cmp r4, 0x9 - bne _0806E6E0 - ldr r0, [sp, 0x14] - movs r1, 0x37 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E6E0 -_0806E6DC: - movs r0, 0x1 - b _0806E894 -_0806E6E0: - mov r6, r10 - adds r6, 0x5C - str r6, [sp, 0x18] - lsls r0, r4, 3 - adds r0, r4 - lsls r0, 2 - mov r12, r0 - adds r2, r6, 0 -_0806E6F0: - mov r0, sp - ldr r1, _0806E724 - ldm r1!, {r3,r6,r7} - stm r0!, {r3,r6,r7} - ldr r1, [r1] - str r1, [r0] - ldr r7, [sp, 0x10] - cmp r7, 0 - beq _0806E730 - ldrb r0, [r2] - cmp r0, 0xE - bne _0806E730 - mov r0, r10 - adds r0, 0xF5 - ldrb r0, [r0] - cmp r0, 0 - bne _0806E730 - movs r3, 0 - ldr r0, _0806E728 - ldr r0, [r0] - ldr r6, _0806E72C - adds r1, r0, r6 - movs r0, 0x1 - strb r0, [r1] - b _0806E73E - .align 2, 0 -_0806E724: .4byte gUnknown_8106F6C -_0806E728: .4byte gUnknown_203B418 -_0806E72C: .4byte 0x00000179 -_0806E730: - ldrb r0, [r2] - lsls r0, 1 - add r0, r12 - ldr r7, _0806E854 - adds r0, r7 - movs r1, 0 - ldrsh r3, [r0, r1] -_0806E73E: - cmp r5, 0 - beq _0806E75E - lsls r0, r3, 2 - add r0, sp - ldr r0, [r0] - muls r5, r0 - lsrs r0, r5, 31 - adds r0, r5, r0 - asrs r5, r0, 1 - cmp r5, 0 - beq _0806E84E - adds r2, 0x1 - ldr r0, [sp, 0x18] - adds r0, 0x1 - cmp r2, r0 - ble _0806E6F0 -_0806E75E: - cmp r4, 0x2 - beq _0806E766 - cmp r4, 0x6 - bne _0806E774 -_0806E766: - ldr r0, [sp, 0x14] - movs r1, 0x2 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _0806E84E -_0806E774: - cmp r4, 0x3 - bne _0806E7A0 - mov r0, r9 - movs r1, 0x10 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E7A0 - mov r2, r8 - movs r3, 0x10 - ldrsh r1, [r2, r3] - cmp r1, 0 - bge _0806E792 - adds r1, 0x3 -_0806E792: - asrs r1, 2 - mov r6, r8 - movs r7, 0xE - ldrsh r0, [r6, r7] - cmp r1, r0 - blt _0806E7A0 - lsls r5, 1 -_0806E7A0: - cmp r4, 0x4 - bne _0806E7CC - mov r0, r9 - movs r1, 0x1A - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E7CC - mov r0, r8 - movs r2, 0x10 - ldrsh r1, [r0, r2] - cmp r1, 0 - bge _0806E7BE - adds r1, 0x3 -_0806E7BE: - asrs r1, 2 - mov r3, r8 - movs r6, 0xE - ldrsh r0, [r3, r6] - cmp r1, r0 - blt _0806E7CC - lsls r5, 1 -_0806E7CC: - cmp r4, 0xC - bne _0806E7F8 - mov r0, r9 - movs r1, 0x43 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E7F8 - mov r7, r8 - movs r0, 0x10 - ldrsh r1, [r7, r0] - cmp r1, 0 - bge _0806E7EA - adds r1, 0x3 -_0806E7EA: - asrs r1, 2 - mov r2, r8 - movs r3, 0xE - ldrsh r0, [r2, r3] - cmp r1, r0 - blt _0806E7F8 - lsls r5, 1 -_0806E7F8: - cmp r4, 0x2 - bne _0806E824 - mov r0, r9 - movs r1, 0x46 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E824 - mov r6, r8 - movs r7, 0x10 - ldrsh r1, [r6, r7] - cmp r1, 0 - bge _0806E816 - adds r1, 0x3 -_0806E816: - asrs r1, 2 - mov r2, r8 - movs r3, 0xE - ldrsh r0, [r2, r3] - cmp r1, r0 - blt _0806E824 - lsls r5, 1 -_0806E824: - cmp r5, 0 - beq _0806E84E - mov r0, r9 - adds r1, r4, 0 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _0806E838 - lsls r5, 1 -_0806E838: - mov r0, r9 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806E85A - cmp r4, 0x2 - beq _0806E858 - cmp r4, 0x3 - bne _0806E85A -_0806E84E: - movs r0, 0x2 - b _0806E894 - .align 2, 0 -_0806E854: .4byte gUnknown_80F522C -_0806E858: - lsls r5, 1 -_0806E85A: - ldr r0, _0806E8A4 - ldr r1, [r0] - ldr r6, _0806E8A8 - adds r1, r6 - ldrb r1, [r1] - cmp r1, 0 - beq _0806E86C - cmp r4, 0x5 - beq _0806E84E -_0806E86C: - ldr r0, [r0] - ldr r7, _0806E8AC - adds r0, r7 - ldrb r0, [r0] - cmp r0, 0 - beq _0806E87C - cmp r4, 0x2 - beq _0806E84E -_0806E87C: - cmp r4, 0x5 - bne _0806E88C - mov r0, r8 - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, 0xB - bne _0806E88C - lsls r5, 1 -_0806E88C: - cmp r5, 0x2 - ble _0806E892 - movs r5, 0x3 -_0806E892: - adds r0, r5, 0x2 -_0806E894: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0806E8A4: .4byte gUnknown_203B418 -_0806E8A8: .4byte 0x0000e277 -_0806E8AC: .4byte 0x0000e278 - thumb_func_end sub_806E654 - - thumb_func_start sub_806E8B0 -sub_806E8B0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - adds r6, r0, 0 - mov r9, r1 - adds r0, r2, 0 - str r3, [sp] - lsls r0, 24 - lsrs r0, 24 - movs r7, 0x1 - movs r1, 0x1 - mov r8, r1 - movs r2, 0x1 - str r2, [sp, 0x4] - str r1, [sp, 0x8] - bl sub_8092354 - movs r2, 0 - mov r10, r2 - lsls r0, 24 - cmp r0, 0 - bne _0806E8E6 - movs r0, 0x1 - mov r10, r0 -_0806E8E6: - adds r0, r6, 0 - movs r1, 0x11 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E92C - ldr r5, [r6, 0x70] - adds r0, r6, 0 - bl sub_8070A58 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x1 - adds r2, r4, 0 - bl sub_8071ACC - lsls r0, 24 - lsrs r0, 24 - cmp r4, 0 - beq _0806E916 - movs r7, 0x2 -_0806E916: - cmp r0, 0 - beq _0806E92C - adds r0, r6, 0 - bl sub_80428B0 - ldr r0, _0806EADC - ldr r2, [r0] - adds r0, r6, 0 - mov r1, r9 - bl sub_80522F4 -_0806E92C: - adds r0, r6, 0 - movs r1, 0x22 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _0806E948 - adds r0, r6, 0 - movs r1, 0x4B - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E98E -_0806E948: - ldr r2, [r6, 0x70] - movs r4, 0 - ldr r0, [sp, 0x30] - cmp r0, 0x20 - bgt _0806E95A - mov r1, r10 - cmp r1, 0 - bne _0806E95A - movs r4, 0x1 -_0806E95A: - movs r1, 0x80 - lsls r1, 1 - adds r0, r2, 0 - adds r2, r4, 0 - bl sub_8071ACC - lsls r0, 24 - lsrs r1, r0, 24 - cmp r4, 0 - beq _0806E978 - lsls r0, r7, 1 - adds r7, r0, r7 - mov r2, r8 - lsls r2, 1 - mov r8, r2 -_0806E978: - cmp r1, 0 - beq _0806E98E - adds r0, r6, 0 - bl sub_80428C4 - ldr r0, _0806EAE0 - ldr r2, [r0] - adds r0, r6, 0 - mov r1, r9 - bl sub_80522F4 -_0806E98E: - adds r0, r6, 0 - movs r1, 0x30 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E9AC - mov r0, r10 - cmp r0, 0 - bne _0806E9AC - lsls r0, r7, 1 - adds r7, r0, r7 - mov r1, r8 - lsls r1, 1 - mov r8, r1 -_0806E9AC: - ldr r0, [r6, 0x70] - ldrb r0, [r0, 0x6] - movs r4, 0x1 - cmp r0, 0 - beq _0806E9B8 - movs r4, 0 -_0806E9B8: - adds r0, r6, 0 - movs r1, 0x38 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806E9EA - mov r2, r10 - cmp r2, 0x1 - bne _0806E9EA - ldr r0, _0806EAE4 - ldr r0, [r0] - ldr r1, _0806EAE8 - adds r0, r1 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _0806E9EA - lsls r0, r7, 4 - subs r7, r0, r7 - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 1 - mov r8, r0 -_0806E9EA: - adds r0, r6, 0 - movs r1, 0x3F - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806EA1C - mov r0, r10 - cmp r0, 0x1 - bne _0806EA1C - ldr r0, _0806EAE4 - ldr r0, [r0] - ldr r1, _0806EAEC - adds r0, r1 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _0806EA1C - lsls r0, r7, 4 - subs r7, r0, r7 - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 1 - mov r8, r0 -_0806EA1C: - mov r0, r9 - movs r1, 0x6 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806EA38 - mov r0, r10 - cmp r0, 0 - bne _0806EA38 - lsls r7, 2 - mov r1, r8 - lsls r0, r1, 2 - add r8, r0 -_0806EA38: - mov r0, r9 - movs r1, 0x34 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806EA90 - mov r2, r10 - cmp r2, 0 - bne _0806EA90 - mov r0, r9 - ldr r5, [r0, 0x70] - bl sub_8070A58 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x8 - adds r2, r4, 0 - bl sub_8071ACC - lsls r0, 24 - lsrs r1, r0, 24 - cmp r4, 0 - beq _0806EA7A - ldr r2, [sp, 0x4] - lsls r0, r2, 1 - adds r2, r0, r2 - str r2, [sp, 0x4] - ldr r0, [sp, 0x8] - lsls r0, 1 - str r0, [sp, 0x8] -_0806EA7A: - cmp r1, 0 - beq _0806EA90 - mov r0, r9 - bl sub_8042940 - ldr r0, _0806EAF0 - ldr r2, [r0] - adds r0, r6, 0 - mov r1, r9 - bl sub_80522F4 -_0806EA90: - ldr r1, [sp] - ldr r0, [r1] - muls r0, r7 - str r0, [r1] - ldr r2, [sp, 0x2C] - ldr r0, [r2] - ldr r1, [sp, 0x4] - muls r0, r1 - str r0, [r2] - mov r2, r8 - cmp r2, 0x1 - beq _0806EAB6 - ldr r1, [sp] - ldr r0, [r1] - mov r1, r8 - bl __divsi3 - ldr r2, [sp] - str r0, [r2] -_0806EAB6: - ldr r0, [sp, 0x8] - cmp r0, 0x1 - beq _0806EACA - ldr r1, [sp, 0x2C] - ldr r0, [r1] - ldr r1, [sp, 0x8] - bl __divsi3 - ldr r2, [sp, 0x2C] - str r0, [r2] -_0806EACA: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806EADC: .4byte gUnknown_80FEE04 -_0806EAE0: .4byte gUnknown_80FEE2C -_0806EAE4: .4byte gUnknown_203B418 -_0806EAE8: .4byte 0x000037fa -_0806EAEC: .4byte 0x000037f8 -_0806EAF0: .4byte gUnknown_80FEE54 - thumb_func_end sub_806E8B0 - - thumb_func_start sub_806EAF4 -sub_806EAF4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8C - str r0, [sp, 0x70] - mov r9, r1 - adds r7, r3, 0 - ldr r0, [sp, 0xB8] - ldr r1, [sp, 0xBC] - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x74] - lsls r0, 16 - lsrs r4, r0, 16 - lsls r1, 24 - lsrs r1, 24 - str r1, [sp, 0x78] - ldr r0, [sp, 0x70] - ldr r0, [r0, 0x70] - mov r10, r0 - mov r1, r9 - ldr r1, [r1, 0x70] - str r1, [sp, 0x7C] - adds r0, r2, 0 - bl sub_8092354 - movs r2, 0 - str r2, [sp, 0x80] - lsls r0, 24 - cmp r0, 0 - bne _0806EB3A - movs r3, 0x1 - str r3, [sp, 0x80] -_0806EB3A: - bl sub_806F500 - mov r6, r10 - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _0806EB72 - movs r0, 0x9E - lsls r0, 1 - add r0, r10 - ldr r0, [r0] - bl sub_8094450 - adds r1, r0, 0 - cmp r1, 0 - bne _0806EB72 - movs r0, 0x1 - ldr r2, [sp, 0xB0] - str r0, [r2] - str r1, [r2, 0x4] - movs r0, 0x2 - str r0, [r2, 0x8] - add r3, sp, 0x74 - ldrb r3, [r3] - strb r3, [r2, 0xC] - strb r1, [r2, 0xD] - strb r1, [r2, 0xE] - strb r1, [r2, 0xF] - b _0806F294 -_0806EB72: - ldr r0, _0806EBA4 - cmp r4, r0 - bne _0806EBA8 - mov r0, r9 - movs r1, 0x35 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806EBA8 - movs r0, 0x1 - ldr r6, [sp, 0xB0] - str r0, [r6] - movs r1, 0 - str r1, [r6, 0x4] - movs r0, 0x2 - str r0, [r6, 0x8] - add r0, sp, 0x74 - ldrb r0, [r0] - strb r0, [r6, 0xC] - strb r1, [r6, 0xD] - strb r1, [r6, 0xE] - strb r1, [r6, 0xF] - b _0806F294 - .align 2, 0 -_0806EBA4: .4byte 0x00000163 -_0806EBA8: - add r1, sp, 0x74 - ldrb r2, [r1] - ldr r1, [sp, 0xB0] - strb r2, [r1, 0xC] - ldr r1, _0806EDA4 - ldr r0, [r1] - movs r2, 0x9A - lsls r2, 1 - adds r0, r2 - add r3, sp, 0x74 - ldrb r3, [r3] - strb r3, [r0] - ldr r2, [r1] - movs r6, 0x9C - lsls r6, 1 - adds r0, r2, r6 - ldr r1, [sp, 0x80] - str r1, [r0] - lsls r1, 1 - mov r0, r10 - adds r0, 0x1C - adds r0, r1 - movs r3, 0 - ldrsh r4, [r0, r3] - mov r8, r1 - ldr r6, [sp, 0x78] - cmp r6, 0 - beq _0806EBF8 - ldr r0, [sp, 0x74] - cmp r0, 0x2 - bne _0806EBF8 - mov r1, r10 - movs r3, 0x28 - ldrsh r0, [r1, r3] - adds r4, r0 - ldrh r1, [r1, 0x28] - movs r6, 0xA2 - lsls r6, 1 - adds r0, r2, r6 - strh r1, [r0] -_0806EBF8: - mov r0, r10 - movs r2, 0x4 - ldrsh r1, [r0, r2] - ldr r0, _0806EDA8 - cmp r1, r0 - bne _0806EC06 - adds r4, 0x2 -_0806EC06: - movs r0, 0xD1 - lsls r0, 1 - cmp r1, r0 - bne _0806EC10 - subs r4, 0x2 -_0806EC10: - ldr r0, _0806EDAC - cmp r1, r0 - bne _0806EC18 - subs r4, 0x2 -_0806EC18: - cmp r4, 0 - bge _0806EC1E - movs r4, 0 -_0806EC1E: - cmp r4, 0x14 - ble _0806EC24 - movs r4, 0x14 -_0806EC24: - ldr r6, _0806EDA4 - ldr r0, [r6] - movs r3, 0x9F - lsls r3, 1 - adds r0, r3 - strb r4, [r0] - ldr r1, [r6] - mov r5, r10 - adds r5, 0x14 - ldr r0, [sp, 0x80] - adds r2, r5, r0 - ldrb r0, [r2] - adds r0, r7 - adds r3, 0x2 - adds r1, r3 - strh r0, [r1] - ldrb r0, [r2] - adds r0, r7 - lsls r0, 8 - ldr r2, _0806EDB0 - lsls r1, r4, 2 - adds r1, r2 - ldr r1, [r1] - bl sub_8009DA4 - adds r2, r0, 0 - ldr r0, [sp, 0x80] - lsls r4, r0, 2 - mov r0, r10 - adds r0, 0x2C - adds r0, r4 - ldr r1, [r0] - adds r0, r2, 0 - bl sub_8009DA4 - adds r2, r0, 0 - str r5, [sp, 0x88] - cmp r2, 0 - bge _0806EC74 - adds r0, 0xFF -_0806EC74: - asrs r0, 8 - str r0, [sp, 0x8] - ldr r0, [sp, 0x7C] - adds r0, 0x20 - add r0, r8 - movs r1, 0 - ldrsh r3, [r0, r1] - ldr r2, [sp, 0x80] - cmp r2, 0 - bne _0806ECA0 - ldr r0, [sp, 0x7C] - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, 0x6 - bne _0806ECA0 - ldr r0, [r6] - movs r6, 0xBD - lsls r6, 1 - adds r1, r0, r6 - movs r0, 0x1 - strb r0, [r1] - adds r3, 0x1 -_0806ECA0: - ldr r0, [sp, 0x7C] - movs r2, 0x4 - ldrsh r1, [r0, r2] - ldr r0, _0806EDA8 - cmp r1, r0 - bne _0806ECAE - subs r3, 0x2 -_0806ECAE: - movs r0, 0xD1 - lsls r0, 1 - cmp r1, r0 - bne _0806ECB8 - adds r3, 0x2 -_0806ECB8: - ldr r0, _0806EDAC - cmp r1, r0 - bne _0806ECC0 - subs r3, 0x2 -_0806ECC0: - cmp r3, 0 - bge _0806ECC6 - movs r3, 0 -_0806ECC6: - cmp r3, 0x14 - ble _0806ECCC - movs r3, 0x14 -_0806ECCC: - ldr r5, _0806EDA4 - ldr r0, [r5] - ldr r6, _0806EDB4 - adds r0, r6 - strb r3, [r0] - ldr r2, [r5] - ldr r0, [sp, 0x7C] - adds r0, 0x16 - ldr r1, [sp, 0x80] - adds r0, r1 - ldrb r1, [r0] - adds r6, 0x3 - adds r2, r6 - strh r1, [r2] - ldrb r0, [r0] - lsls r0, 8 - ldr r2, _0806EDB8 - lsls r1, r3, 2 - adds r1, r2 - ldr r1, [r1] - bl sub_8009DA4 - adds r2, r0, 0 - ldr r0, [sp, 0x7C] - adds r0, 0x34 - adds r0, r4 - ldr r1, [r0] - adds r0, r2, 0 - bl sub_8009DA4 - cmp r0, 0 - bge _0806ED0E - adds r0, 0xFF -_0806ED0E: - asrs r0, 8 - str r0, [sp, 0xC] - movs r0, 0x64 - bl sub_8084100 - str r0, [sp, 0x84] - ldr r0, [sp, 0x80] - cmp r0, 0 - bne _0806EDC8 - ldr r0, [sp, 0x70] - movs r1, 0x13 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0806ED4A - ldr r2, _0806EDBC - movs r3, 0 - ldrsh r1, [r2, r3] - ldr r0, [sp, 0x8] - adds r0, r1 - str r0, [sp, 0x8] - ldr r1, [r5] - movs r6, 0xB0 - lsls r6, 1 - adds r1, r6 - ldrb r0, [r2] - ldrb r2, [r1] - adds r0, r2 - strb r0, [r1] -_0806ED4A: - ldr r0, [sp, 0x70] - movs r1, 0x2B - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0806ED74 - ldr r2, _0806EDC0 - movs r3, 0 - ldrsh r1, [r2, r3] - ldr r0, [sp, 0x8] - adds r0, r1 - str r0, [sp, 0x8] - ldr r1, [r5] - movs r6, 0xB0 - lsls r6, 1 - adds r1, r6 - ldrb r0, [r2] - ldrb r2, [r1] - adds r0, r2 - strb r0, [r1] -_0806ED74: - ldr r3, [sp, 0x78] - cmp r3, 0 - beq _0806EE4A - mov r0, r9 - movs r1, 0x1E - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0806EE4A - ldr r2, _0806EDC4 - movs r6, 0 - ldrsh r1, [r2, r6] - ldr r0, [sp, 0xC] - adds r0, r1 - str r0, [sp, 0xC] - ldr r0, [r5] - movs r3, 0xB1 - lsls r3, 1 - adds r1, r0, r3 - ldrb r0, [r2] - ldrb r6, [r1] - adds r0, r6 - b _0806EE48 - .align 2, 0 -_0806EDA4: .4byte gUnknown_203B418 -_0806EDA8: .4byte 0x000001a1 -_0806EDAC: .4byte 0x000001a3 -_0806EDB0: .4byte gUnknown_80F504C -_0806EDB4: .4byte 0x0000013f -_0806EDB8: .4byte gUnknown_80F50A0 -_0806EDBC: .4byte gUnknown_810AC60 -_0806EDC0: .4byte gUnknown_810AC68 -_0806EDC4: .4byte gUnknown_810AC64 -_0806EDC8: - ldr r0, [sp, 0x78] - cmp r0, 0 - beq _0806EDF6 - mov r0, r9 - movs r1, 0x22 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0806EDF6 - ldr r2, _0806EEF8 - movs r3, 0 - ldrsh r1, [r2, r3] - ldr r0, [sp, 0xC] - adds r0, r1 - str r0, [sp, 0xC] - ldr r0, [r5] - ldr r6, _0806EEFC - adds r1, r0, r6 - ldrb r0, [r2] - ldrb r2, [r1] - adds r0, r2 - strb r0, [r1] -_0806EDF6: - ldr r0, [sp, 0x70] - movs r1, 0x21 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0806EE20 - ldr r2, _0806EF00 - movs r3, 0 - ldrsh r1, [r2, r3] - ldr r0, [sp, 0x8] - adds r0, r1 - str r0, [sp, 0x8] - ldr r0, _0806EF04 - ldr r0, [r0] - ldr r6, _0806EF08 - adds r1, r0, r6 - ldrb r0, [r2] - ldrb r2, [r1] - adds r0, r2 - strb r0, [r1] -_0806EE20: - ldr r0, [sp, 0x70] - movs r1, 0x2B - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0806EE4A - ldr r2, _0806EF0C - movs r3, 0 - ldrsh r1, [r2, r3] - ldr r0, [sp, 0x8] - adds r0, r1 - str r0, [sp, 0x8] - ldr r0, _0806EF04 - ldr r0, [r0] - ldr r6, _0806EF08 - adds r1, r0, r6 - ldrb r0, [r2] - ldrb r2, [r1] - adds r0, r2 -_0806EE48: - strb r0, [r1] -_0806EE4A: - ldr r0, _0806EF04 - ldr r2, [r0] - movs r3, 0xA3 - lsls r3, 1 - adds r1, r2, r3 - add r0, sp, 0x8 - ldrh r0, [r0] - strh r0, [r1] - movs r6, 0xA4 - lsls r6, 1 - adds r1, r2, r6 - add r4, sp, 0xC - ldrh r0, [r4] - strh r0, [r1] - ldr r0, [sp, 0x8] - cmp r0, 0 - bge _0806EE70 - movs r0, 0 - str r0, [sp, 0x8] -_0806EE70: - ldr r1, _0806EF10 - ldr r0, [sp, 0x8] - cmp r0, r1 - ble _0806EE7C - ldr r0, _0806EF14 - str r0, [sp, 0x8] -_0806EE7C: - movs r3, 0xA8 - lsls r3, 1 - add r3, r10 - ldrh r2, [r3] - ldr r1, _0806EF18 - adds r0, r1, 0 - ands r0, r2 - strh r0, [r3] - movs r2, 0xA7 - lsls r2, 1 - add r2, r10 - ldrh r0, [r2] - ands r1, r0 - strh r1, [r2] - str r4, [sp] - ldr r0, [sp, 0x84] - str r0, [sp, 0x4] - ldr r0, [sp, 0x70] - mov r1, r9 - ldr r2, [sp, 0x74] - add r3, sp, 0x8 - bl sub_806E8B0 - add r5, sp, 0x10 - ldr r1, [sp, 0x8] - ldr r0, [sp, 0xC] - subs r1, r0 - adds r0, r5, 0 - bl sub_800A020 - add r4, sp, 0x18 - adds r0, r4, 0 - movs r1, 0x8 - bl sub_800A020 - adds r0, r5, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_800A3F0 - mov r1, r10 - ldrb r6, [r1, 0x6] - mov r8, r5 - adds r7, r4, 0 - cmp r6, 0 - bne _0806EF20 - ldrb r1, [r1, 0x9] - adds r0, r7, 0 - bl sub_800A020 - str r6, [sp, 0x20] - ldr r0, _0806EF1C - add r2, sp, 0x20 - str r0, [r2, 0x4] - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_800A34C - mov r2, r10 - ldrb r0, [r2, 0x9] - lsls r0, 1 - b _0806EF60 - .align 2, 0 -_0806EEF8: .4byte gUnknown_810AC66 -_0806EEFC: .4byte 0x00000163 -_0806EF00: .4byte gUnknown_810AC62 -_0806EF04: .4byte gUnknown_203B418 -_0806EF08: .4byte 0x00000161 -_0806EF0C: .4byte gUnknown_810AC68 -_0806EF10: .4byte 0x000003e6 -_0806EF14: .4byte 0x000003e7 -_0806EF18: .4byte 0x0000feff -_0806EF1C: .4byte 0x0000aaaa -_0806EF20: - ldr r3, [sp, 0x88] - ldr r6, [sp, 0x80] - adds r0, r3, r6 - ldrb r0, [r0] - str r0, [sp, 0x28] - movs r0, 0x1 - str r0, [sp, 0x2C] - add r3, sp, 0x28 - add r0, sp, 0x2C - str r0, [sp] - ldr r0, [sp, 0x84] - str r0, [sp, 0x4] - ldr r0, [sp, 0x70] - mov r1, r9 - ldr r2, [sp, 0x74] - bl sub_806E8B0 - ldr r1, [sp, 0x28] - adds r0, r7, 0 - bl sub_800A020 - add r4, sp, 0x20 - adds r0, r4, 0 - movs r1, 0x3 - bl sub_800A020 - adds r0, r7, 0 - adds r1, r7, 0 - adds r2, r4, 0 - bl sub_800A3F0 - ldr r0, [sp, 0x28] -_0806EF60: - movs r1, 0x3 - bl __divsi3 - adds r6, r0, 0 - add r5, sp, 0x30 - adds r0, r5, 0 - mov r1, r8 - adds r2, r7, 0 - bl sub_800A6D0 - ldr r4, _0806F098 - ldr r0, [r4] - movs r1, 0xA5 - lsls r1, 1 - adds r0, r1 - movs r2, 0 - mov r8, r2 - strh r6, [r0] - adds r0, r5, 0 - bl sub_800A048 - ldr r1, [r4] - movs r3, 0xA6 - lsls r3, 1 - adds r1, r3 - strh r0, [r1] - ldr r0, [sp, 0x30] - ldr r1, [sp, 0x34] - str r0, [sp, 0x38] - str r1, [sp, 0x3C] - str r0, [sp, 0x48] - str r1, [sp, 0x4C] - add r6, sp, 0x38 - adds r0, r6, 0 - adds r1, r6, 0 - adds r2, r6, 0 - bl sub_800A34C - mov r0, r8 - str r0, [sp, 0x40] - ldr r0, _0806F09C - add r5, sp, 0x40 - str r0, [r5, 0x4] - adds r0, r6, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_800A34C - adds r0, r5, 0 - movs r1, 0x2 - bl sub_800A020 - add r4, sp, 0x48 - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_800A34C - ldr r1, [sp, 0xC] - adds r0, r5, 0 - bl sub_800A020 - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_800A6F0 - adds r0, r5, 0 - movs r1, 0xA - bl sub_800A020 - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_800A6D0 - add r5, sp, 0x50 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_800A6D0 - ldr r4, _0806F0A0 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_800A2F0 - lsls r0, 24 - mov r8, r5 - cmp r0, 0 - beq _0806F01E - ldr r0, [r4] - ldr r1, [r4, 0x4] - str r0, [sp, 0x50] - str r1, [sp, 0x54] -_0806F01E: - ldr r4, _0806F0A4 - mov r0, r8 - adds r1, r4, 0 - bl sub_800A2F0 - lsls r0, 24 - cmp r0, 0 - beq _0806F036 - ldr r0, [r4] - ldr r1, [r4, 0x4] - str r0, [sp, 0x50] - str r1, [sp, 0x54] -_0806F036: - add r4, sp, 0x58 - ldr r1, [sp, 0xB0] - str r1, [sp] - adds r0, r4, 0 - ldr r1, [sp, 0x70] - mov r2, r9 - ldr r3, [sp, 0x74] - bl sub_806E100 - lsls r0, 24 - lsrs r5, r0, 24 - adds r7, r4, 0 - ldr r2, [sp, 0x74] - cmp r2, 0x2 - bne _0806F0BC - mov r0, r9 - bl sub_807723C - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0806F0BC - ldr r3, [sp, 0x7C] - movs r6, 0xA9 - lsls r6, 1 - adds r1, r3, r6 - ldrb r0, [r1] - cmp r0, 0 - bne _0806F0BC - ldr r0, [sp, 0x78] - cmp r0, 0 - beq _0806F118 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _0806F0A8 - mov r1, r9 - movs r2, 0 - bl sub_8045B94 - cmp r4, 0x1 - bne _0806F0B0 - ldr r0, _0806F0AC - ldr r2, [r0] - ldr r0, [sp, 0x70] - mov r1, r9 - bl sub_80522F4 - b _0806F0BC - .align 2, 0 -_0806F098: .4byte gUnknown_203B418 -_0806F09C: .4byte 0x00000ccc -_0806F0A0: .4byte gUnknown_8106F24 -_0806F0A4: .4byte gUnknown_8106F04 -_0806F0A8: .4byte gUnknown_202DFE8 -_0806F0AC: .4byte gUnknown_80FAE00 -_0806F0B0: - ldr r0, _0806F15C - ldr r2, [r0] - ldr r0, [sp, 0x70] - mov r1, r9 - bl sub_80522F4 -_0806F0BC: - ldr r1, [sp, 0x78] - cmp r1, 0 - beq _0806F118 - ldr r2, [sp, 0x80] - cmp r2, 0 - bne _0806F0EE - ldr r0, [sp, 0x7C] - adds r0, 0xC4 - ldrb r4, [r0] - cmp r4, 0x1 - bne _0806F0EE - mov r0, r9 - bl sub_8041B74 - ldr r2, _0806F160 - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_800A34C - ldr r0, _0806F164 - ldr r0, [r0] - movs r3, 0xB3 - lsls r3, 1 - adds r0, r3 - strb r4, [r0] -_0806F0EE: - ldr r6, [sp, 0x80] - cmp r6, 0x1 - bne _0806F118 - ldr r0, [sp, 0x7C] - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0806F118 - mov r0, r9 - bl sub_8041B5C - ldr r2, _0806F160 - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_800A34C - ldr r0, _0806F164 - ldr r0, [r0] - ldr r1, _0806F168 - adds r0, r1 - strb r6, [r0] -_0806F118: - mov r0, r9 - movs r1, 0xC - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _0806F1F4 - mov r0, r9 - movs r1, 0x13 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _0806F1F4 - mov r3, r10 - ldrb r0, [r3, 0x6] - ldr r4, [sp, 0xAC] - cmp r0, 0 - beq _0806F140 - movs r4, 0 -_0806F140: - mov r0, r10 - adds r0, 0xDC - ldrb r0, [r0] - cmp r0, 0x4 - bne _0806F170 - ldr r4, _0806F16C - ldr r0, _0806F164 - ldr r0, [r0] - movs r6, 0xB4 - lsls r6, 1 - adds r0, r6 - movs r1, 0x1 - strb r1, [r0] - b _0806F1DA - .align 2, 0 -_0806F15C: .4byte gUnknown_80FADD8 -_0806F160: .4byte gUnknown_8106F1C -_0806F164: .4byte gUnknown_203B418 -_0806F168: .4byte 0x00000167 -_0806F16C: .4byte 0x000003e7 -_0806F170: - ldr r0, [sp, 0x70] - movs r1, 0xC - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0806F194 - ldr r0, _0806F2A4 - movs r1, 0 - ldrsh r0, [r0, r1] - adds r4, r0 - ldr r0, _0806F2A8 - ldr r0, [r0] - movs r2, 0xB2 - lsls r2, 1 - adds r0, r2 - movs r1, 0x1 - strb r1, [r0] -_0806F194: - mov r0, r9 - movs r1, 0xD - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0806F1B6 - ldr r0, _0806F2A4 - movs r3, 0 - ldrsh r0, [r0, r3] - adds r4, r0 - ldr r0, _0806F2A8 - ldr r0, [r0] - ldr r6, _0806F2AC - adds r1, r0, r6 - movs r0, 0x1 - strb r0, [r1] -_0806F1B6: - cmp r5, 0 - beq _0806F1DA - ldr r0, [sp, 0x70] - movs r1, 0x1 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _0806F1DA - ldr r0, _0806F2B0 - movs r1, 0 - ldrsh r4, [r0, r1] - ldr r0, _0806F2A8 - ldr r0, [r0] - ldr r2, _0806F2B4 - adds r1, r0, r2 - movs r0, 0x1 - strb r0, [r1] -_0806F1DA: - movs r0, 0x64 - bl sub_8084100 - cmp r0, r4 - bge _0806F1F4 - ldr r2, _0806F2B8 - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_800A34C - movs r0, 0x1 - ldr r3, [sp, 0xB0] - strb r0, [r3, 0xD] -_0806F1F4: - mov r0, r8 - bl sub_800A048 - ldr r5, _0806F2A8 - ldr r1, [r5] - movs r6, 0xAA - lsls r6, 1 - adds r1, r6 - str r0, [r1] - mov r0, r8 - mov r1, r8 - adds r2, r7, 0 - bl sub_800A34C - ldr r0, [r5] - movs r1, 0xAE - lsls r1, 1 - adds r0, r1 - ldr r2, [sp, 0xB4] - str r2, [r0] - add r4, sp, 0x60 - adds r0, r4, 0 - adds r1, r2, 0 - bl sub_800A088 - mov r0, r8 - mov r1, r8 - adds r2, r4, 0 - bl sub_800A34C - mov r0, r8 - bl sub_800A048 - ldr r1, [r5] - movs r3, 0xA8 - lsls r3, 1 - adds r1, r3 - str r0, [r1] - movs r0, 0x80 - lsls r0, 7 - bl sub_8084100 - movs r6, 0 - str r6, [sp, 0x58] - movs r1, 0xE0 - lsls r1, 8 - adds r0, r1 - str r0, [r7, 0x4] - mov r0, r8 - mov r1, r8 - adds r2, r7, 0 - bl sub_800A34C - add r4, sp, 0x68 - adds r0, r4, 0 - movs r1, 0x64 - bl sub_800A020 - adds r0, r7, 0 - adds r1, r4, 0 - adds r2, r7, 0 - bl sub_800A34C - adds r0, r7, 0 - bl sub_800A048 - ldr r1, [r5] - movs r2, 0xAC - lsls r2, 1 - adds r1, r2 - str r0, [r1] - mov r0, r8 - bl sub_800A048 - ldr r3, [sp, 0xB0] - str r0, [r3] - str r6, [r3, 0x4] - cmp r0, 0 - bne _0806F294 - strb r0, [r3, 0xD] -_0806F294: - add sp, 0x8C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806F2A4: .4byte gUnknown_80F4DAE -_0806F2A8: .4byte gUnknown_203B418 -_0806F2AC: .4byte 0x00000165 -_0806F2B0: .4byte gUnknown_80F4DB0 -_0806F2B4: .4byte 0x00000169 -_0806F2B8: .4byte gUnknown_8106F14 - thumb_func_end sub_806EAF4 - - thumb_func_start sub_806F2BC -sub_806F2BC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - adds r5, r0, 0 - mov r12, r1 - ldr r7, [sp, 0x2C] - lsls r2, 24 - lsrs r4, r2, 24 - adds r6, r3, 0 - cmp r6, 0 - bgt _0806F2D6 - movs r6, 0x1 -_0806F2D6: - ldr r0, _0806F320 - cmp r6, r0 - ble _0806F2DE - adds r6, r0, 0 -_0806F2DE: - movs r0, 0 - mov r8, r0 - strb r4, [r7, 0xC] - str r7, [sp] - add r0, sp, 0x4 - adds r1, r5, 0 - mov r2, r12 - adds r3, r4, 0 - bl sub_806E100 - add r4, sp, 0xC - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_800A020 - adds r0, r4, 0 - adds r1, r4, 0 - add r2, sp, 0x4 - bl sub_800A34C - adds r0, r4, 0 - bl sub_800A048 - str r0, [r7] - mov r0, r8 - str r0, [r7, 0x4] - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806F320: .4byte 0x000003e7 - thumb_func_end sub_806F2BC - - thumb_func_start sub_806F324 -sub_806F324: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x94 - mov r8, r0 - adds r5, r1, 0 - adds r6, r2, 0 - lsls r4, r3, 16 - asrs r4, 16 - add r0, sp, 0x10 - bl sub_80457DC - add r2, sp, 0x84 - str r5, [sp, 0x84] - movs r0, 0x2 - str r0, [r2, 0x8] - movs r0, 0 - strb r0, [r2, 0xC] - str r6, [r2, 0x4] - strb r0, [r2, 0xD] - strb r0, [r2, 0xE] - strb r0, [r2, 0xF] - str r0, [sp] - str r4, [sp, 0x4] - str r0, [sp, 0x8] - str r0, [sp, 0xC] - add r0, sp, 0x10 - mov r1, r8 - movs r3, 0 - bl sub_806D010 - add sp, 0x94 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_806F324 - - thumb_func_start sub_806F370 -sub_806F370: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - mov r10, r0 - adds r7, r1, 0 - mov r9, r3 - ldr r0, [sp, 0x50] - ldr r1, [sp, 0x54] - ldr r3, [sp, 0x58] - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 16 - asrs r1, 16 - mov r8, r1 - adds r5, r2, 0 - movs r0, 0x2 - str r0, [sp, 0x18] - str r3, [sp, 0x14] - add r0, sp, 0x10 - movs r1, 0 - strb r4, [r0, 0xC] - strb r1, [r0, 0xD] - strb r1, [r0, 0xE] - cmp r4, 0 - beq _0806F3FC - ldr r1, [r7, 0x70] - movs r2, 0 - lsls r0, r4, 3 - mov r3, sp - adds r3, 0x20 - str r3, [sp, 0x28] - ldr r6, _0806F408 - mov r12, r6 - adds r1, 0x5C - adds r0, r4 - lsls r3, r0, 2 - ldr r4, [sp, 0x28] -_0806F3C0: - adds r0, r1, r2 - ldrb r0, [r0] - lsls r0, 1 - adds r0, r3 - add r0, r12 - movs r6, 0 - ldrsh r0, [r0, r6] - stm r4!, {r0} - adds r2, 0x1 - cmp r2, 0x1 - ble _0806F3C0 - adds r0, r7, 0 - movs r1, 0x35 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0806F3FC - ldr r2, _0806F40C - ldr r1, [sp, 0x28] - ldr r0, [r1, 0x4] - lsls r0, 2 - ldr r1, [sp, 0x20] - lsls r1, 4 - adds r0, r1 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0x3 - beq _0806F3FC - movs r5, 0 -_0806F3FC: - str r5, [sp, 0x10] - cmp r5, 0 - bne _0806F410 - add r1, sp, 0x10 - movs r0, 0x1 - b _0806F414 - .align 2, 0 -_0806F408: .4byte gUnknown_80F522C -_0806F40C: .4byte gUnknown_80F54B4 -_0806F410: - add r1, sp, 0x10 - movs r0, 0 -_0806F414: - strb r0, [r1, 0xF] - mov r3, r9 - str r3, [sp] - mov r6, r8 - str r6, [sp, 0x4] - ldr r0, [sp, 0x5C] - str r0, [sp, 0x8] - ldr r0, [sp, 0x60] - str r0, [sp, 0xC] - mov r0, r10 - adds r1, r7, 0 - add r2, sp, 0x10 - movs r3, 0 - bl sub_806D010 - ldr r0, [sp, 0x4C] - cmp r0, 0 - beq _0806F440 - add r0, sp, 0x10 - ldrb r0, [r0, 0xF] - ldr r1, [sp, 0x4C] - strb r0, [r1] -_0806F440: - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806F370 - - thumb_func_start sub_806F450 -sub_806F450: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r4, [r1, 0x70] - adds r6, r4, 0 - ldrb r0, [r4, 0x8] - cmp r0, 0 - beq _0806F47A - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0806F47A - ldr r0, [r5, 0x70] - ldrb r0, [r0, 0x6] - cmp r0, 0 - beq _0806F476 - movs r0, 0x2 - strb r0, [r4, 0x8] - b _0806F47A -_0806F476: - movs r0, 0x3 - strb r0, [r6, 0x8] -_0806F47A: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_806F450 - - thumb_func_start sub_806F480 -sub_806F480: - push {lr} - lsls r1, 24 - lsrs r1, 24 - ldr r2, [r0, 0x70] - adds r3, r2, 0 - ldrb r0, [r2, 0x8] - cmp r0, 0 - beq _0806F49E - cmp r1, 0 - beq _0806F49A - movs r0, 0x2 - strb r0, [r2, 0x8] - b _0806F49E -_0806F49A: - movs r0, 0x3 - strb r0, [r3, 0x8] -_0806F49E: - pop {r0} - bx r0 - thumb_func_end sub_806F480 - - thumb_func_start sub_806F4A4 -sub_806F4A4: - push {r4-r6,lr} - lsls r1, 24 - lsrs r4, r1, 24 - ldr r5, [r0, 0x70] - movs r1, 0xE - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _0806F4CE - cmp r4, 0x1 - beq _0806F4C0 - cmp r4, 0x7 - bne _0806F4CE -_0806F4C0: - adds r0, r5, 0 - adds r0, 0xF5 - ldrb r0, [r0] - cmp r0, 0 - bne _0806F4CE -_0806F4CA: - movs r0, 0 - b _0806F4F6 -_0806F4CE: - movs r2, 0 - lsls r0, r4, 3 - ldr r6, _0806F4FC - adds r3, r5, 0 - adds r3, 0x5C - adds r0, r4 - lsls r1, r0, 2 -_0806F4DC: - adds r0, r3, r2 - ldrb r0, [r0] - lsls r0, 1 - adds r0, r1 - adds r0, r6 - movs r4, 0 - ldrsh r0, [r0, r4] - cmp r0, 0 - beq _0806F4CA - adds r2, 0x1 - cmp r2, 0x1 - ble _0806F4DC - movs r0, 0x1 -_0806F4F6: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0806F4FC: .4byte gUnknown_80F522C - thumb_func_end sub_806F4A4 - - thumb_func_start sub_806F500 -sub_806F500: - ldr r0, _0806F5F4 - ldr r0, [r0] - mov r12, r0 - movs r0, 0x9A - lsls r0, 1 - add r0, r12 - movs r1, 0 - strb r1, [r0] - str r1, [r0, 0x4] - strb r1, [r0, 0x8] - strb r1, [r0, 0x9] - movs r2, 0xA - strb r2, [r0, 0xA] - strb r2, [r0, 0xB] - movs r2, 0 - movs r3, 0x1 - strh r3, [r0, 0xC] - strh r3, [r0, 0xE] - strh r1, [r0, 0x10] - strh r1, [r0, 0x14] - strh r1, [r0, 0x12] - strh r1, [r0, 0x16] - strh r1, [r0, 0x18] - str r1, [r0, 0x1C] - str r1, [r0, 0x24] - str r1, [r0, 0x28] - movs r0, 0xB0 - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F5F8 - add r0, r12 - strb r2, [r0] - movs r0, 0xB1 - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F5FC - add r0, r12 - strb r2, [r0] - movs r0, 0xB2 - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F600 - add r0, r12 - strb r2, [r0] - movs r0, 0xB3 - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F604 - add r0, r12 - strb r2, [r0] - movs r0, 0xB4 - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F608 - add r0, r12 - strb r2, [r0] - movs r0, 0xB5 - lsls r0, 1 - add r0, r12 - strb r2, [r0] - movs r0, 0xB6 - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F60C - add r0, r12 - strb r2, [r0] - ldr r0, _0806F610 - add r0, r12 - strb r2, [r0] - movs r0, 0xB7 - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F614 - add r0, r12 - strb r2, [r0] - movs r0, 0xB8 - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F618 - add r0, r12 - strb r2, [r0] - movs r0, 0xB9 - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F61C - add r0, r12 - strb r2, [r0] - movs r0, 0xBA - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F620 - add r0, r12 - strb r2, [r0] - movs r0, 0xBB - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F624 - add r0, r12 - strb r2, [r0] - movs r0, 0xBC - lsls r0, 1 - add r0, r12 - strb r2, [r0] - ldr r0, _0806F628 - add r0, r12 - strb r2, [r0] - movs r0, 0xBD - lsls r0, 1 - add r0, r12 - strb r2, [r0] - bx lr - .align 2, 0 -_0806F5F4: .4byte gUnknown_203B418 -_0806F5F8: .4byte 0x00000161 -_0806F5FC: .4byte 0x00000163 -_0806F600: .4byte 0x00000165 -_0806F604: .4byte 0x00000167 -_0806F608: .4byte 0x00000169 -_0806F60C: .4byte 0x0000016b -_0806F610: .4byte 0x0000016d -_0806F614: .4byte 0x0000016f -_0806F618: .4byte 0x00000171 -_0806F61C: .4byte 0x00000173 -_0806F620: .4byte 0x00000175 -_0806F624: .4byte 0x00000177 -_0806F628: .4byte 0x00000179 - thumb_func_end sub_806F500 - - thumb_func_start sub_806F62C -sub_806F62C: - ldr r1, _0806F638 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_0806F638: .4byte gUnknown_8106F7C - thumb_func_end sub_806F62C - - thumb_func_start sub_806F63C -sub_806F63C: - push {lr} - ldr r1, _0806F658 - ldr r1, [r1] - ldr r2, _0806F65C - adds r1, r2 - ldr r1, [r1, 0x10] - cmp r1, r0 - bne _0806F652 - adds r0, r1, 0 - bl sub_803F508 -_0806F652: - pop {r0} - bx r0 - .align 2, 0 -_0806F658: .4byte gUnknown_203B418 -_0806F65C: .4byte 0x000181e8 - thumb_func_end sub_806F63C - - thumb_func_start sub_806F660 -sub_806F660: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r6, r0, 0 - mov r8, r1 - ldr r0, [r6, 0x70] - mov r10, r0 - ldr r4, [r1, 0x70] - movs r1, 0x1 - negs r1, r1 - mov r9, r1 - movs r2, 0x4 - ldrsh r0, [r4, r2] - bl sub_808DACC - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0806F6C0 - ldr r3, [r0] - ldr r1, _0806F6C4 - adds r0, r3, r1 - ldrh r2, [r0] - subs r0, r2, 0x4 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _0806F702 - lsls r0, r2, 16 - asrs r1, r0, 16 - cmp r1, 0x9 - beq _0806F702 - cmp r1, 0xF - beq _0806F702 - adds r0, r2, 0 - subs r0, 0x2C - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x4 - bhi _0806F6CC - ldr r2, _0806F6C8 - adds r0, r3, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0806F702 - b _0806F8FC - .align 2, 0 -_0806F6C0: .4byte gUnknown_203B418 -_0806F6C4: .4byte 0x00003a14 -_0806F6C8: .4byte 0x0000065c -_0806F6CC: - cmp r1, 0x31 - bne _0806F6F0 - ldr r1, _0806F6EC - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0806F6DC - b _0806F8FC -_0806F6DC: - movs r0, 0xCF - lsls r0, 1 - bl sub_8097900 - lsls r0, 24 - cmp r0, 0 - bne _0806F702 - b _0806F8FC - .align 2, 0 -_0806F6EC: .4byte 0x00000659 -_0806F6F0: - ldr r2, _0806F834 - adds r0, r3, r2 - ldrb r0, [r0] - bl sub_8090148 - lsls r0, 24 - cmp r0, 0 - bne _0806F702 - b _0806F8FC -_0806F702: - ldr r0, _0806F838 - ldr r0, [r0] - ldr r3, _0806F83C - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0806F712 - b _0806F8FC -_0806F712: - ldrh r1, [r4, 0x2] - adds r0, r1, 0 - subs r0, 0x90 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bls _0806F766 - lsls r0, r1, 16 - asrs r1, r0, 16 - ldr r0, _0806F840 - cmp r1, r0 - beq _0806F766 - subs r0, 0x1 - cmp r1, r0 - beq _0806F766 - adds r0, 0x2 - cmp r1, r0 - beq _0806F766 - adds r0, 0x8A - cmp r1, r0 - beq _0806F766 - adds r0, 0x1 - cmp r1, r0 - beq _0806F766 - adds r0, 0x4 - cmp r1, r0 - beq _0806F766 - subs r0, 0x1 - cmp r1, r0 - beq _0806F766 - adds r0, 0x2 - cmp r1, r0 - beq _0806F766 - subs r0, 0x9 - cmp r1, r0 - beq _0806F766 - adds r0, 0x1 - cmp r1, r0 - beq _0806F766 - adds r0, 0x1 - cmp r1, r0 - bne _0806F776 -_0806F766: - movs r1, 0x2 - ldrsh r0, [r4, r1] - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0806F776 - b _0806F8FC -_0806F776: - movs r2, 0x2 - ldrsh r0, [r4, r2] - bl sub_806F9BC - lsls r0, 24 - cmp r0, 0 - bne _0806F786 - b _0806F8FC -_0806F786: - movs r3, 0x4 - ldrsh r1, [r6, r3] - mov r2, r8 - movs r3, 0x4 - ldrsh r0, [r2, r3] - subs r1, r0 - cmp r1, 0 - bge _0806F798 - negs r1, r1 -_0806F798: - cmp r1, 0x1 - ble _0806F79E - b _0806F8FC -_0806F79E: - movs r0, 0x6 - ldrsh r1, [r6, r0] - mov r2, r8 - movs r3, 0x6 - ldrsh r0, [r2, r3] - subs r1, r0 - cmp r1, 0 - bge _0806F7B0 - negs r1, r1 -_0806F7B0: - cmp r1, 0x1 - ble _0806F7B6 - b _0806F8FC -_0806F7B6: - adds r0, r4, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - bne _0806F7C2 - b _0806F8FC -_0806F7C2: - adds r0, r4, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0806F7CE - b _0806F8FC -_0806F7CE: - mov r0, r8 - adds r1, r6, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - bne _0806F7DE - b _0806F8FC -_0806F7DE: - bl sub_806F910 - movs r0, 0xFA - lsls r0, 2 - bl sub_8084100 - adds r7, r0, 0 - movs r1, 0x2 - ldrsh r0, [r4, r1] - bl sub_808DCC0 - lsls r0, 16 - asrs r4, r0, 16 - ldr r0, _0806F844 - cmp r4, r0 - bne _0806F800 - b _0806F8FC -_0806F800: - adds r0, r6, 0 - movs r1, 0x2E - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0806F816 - ldr r0, _0806F848 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r4, r0 -_0806F816: - ldr r0, _0806F84C - mov r3, r10 - ldrb r1, [r3, 0x9] - lsls r1, 1 - adds r1, r0 - movs r2, 0 - ldrsh r0, [r1, r2] - adds r4, r0 - cmp r7, r4 - bge _0806F8FC - movs r4, 0 - movs r0, 0x6 - subs r3, r0, r5 - ldr r7, _0806F850 - b _0806F856 - .align 2, 0 -_0806F834: .4byte 0x00000644 -_0806F838: .4byte gUnknown_203B418 -_0806F83C: .4byte 0x0000065d -_0806F840: .4byte 0x0000010d -_0806F844: .4byte 0xfffffc19 -_0806F848: .4byte gUnknown_80F5008 -_0806F84C: .4byte gUnknown_80F5700 -_0806F850: .4byte gUnknown_202EE70 -_0806F854: - adds r4, 0x1 -_0806F856: - cmp r4, r3 - bgt _0806F878 - movs r2, 0 - cmp r2, r5 - bge _0806F872 - adds r1, r4, r7 - b _0806F86C -_0806F864: - adds r1, 0x1 - adds r2, 0x1 - cmp r2, r5 - bge _0806F872 -_0806F86C: - ldrb r0, [r1] - cmp r0, 0 - beq _0806F864 -_0806F872: - cmp r2, r5 - bne _0806F854 - mov r9, r4 -_0806F878: - movs r0, 0x1 - negs r0, r0 - cmp r9, r0 - beq _0806F8F4 - movs r4, 0 - ldr r3, _0806F8BC - ldr r0, [r3] - ldr r2, _0806F8C0 - adds r0, r2 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806F8B4 - adds r7, r3, 0 - adds r5, r2, 0 - movs r2, 0 - movs r3, 0x1 -_0806F89C: - adds r2, 0x64 - adds r4, 0x1 - cmp r4, 0x3 - bgt _0806F8B4 - ldr r0, [r7] - adds r0, r2, r0 - adds r0, r5 - ldrb r1, [r0] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0806F89C -_0806F8B4: - cmp r4, 0x4 - beq _0806F8F4 - movs r4, 0 - b _0806F8C6 - .align 2, 0 -_0806F8BC: .4byte gUnknown_203B45C -_0806F8C0: .4byte 0x00008df8 -_0806F8C4: - adds r4, 0x1 -_0806F8C6: - cmp r4, 0x3 - bgt _0806F8E2 - ldr r0, _0806F8EC - ldr r0, [r0] - lsls r1, r4, 2 - ldr r3, _0806F8F0 - adds r0, r3 - adds r0, r1 - ldr r0, [r0] - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0806F8C4 -_0806F8E2: - cmp r4, 0x4 - beq _0806F8F4 - movs r0, 0x1 - b _0806F8FE - .align 2, 0 -_0806F8EC: .4byte gUnknown_203B418 -_0806F8F0: .4byte 0x0001357c -_0806F8F4: - adds r0, r6, 0 - mov r1, r8 - bl nullsub_96 -_0806F8FC: - movs r0, 0 -_0806F8FE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_806F660 - - thumb_func_start nullsub_96 -nullsub_96: - bx lr - thumb_func_end nullsub_96 - - thumb_func_start sub_806F910 -sub_806F910: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r5, 0 - movs r6, 0 - movs r7, 0x40 -_0806F91C: - ldr r0, _0806F9AC - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0806F9B0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - adds r1, r6, 0x1 - mov r8, r1 - cmp r0, 0 - beq _0806F98A - ldr r0, [r4, 0x70] - movs r2, 0x4 - ldrsh r0, [r0, r2] - bl sub_808DACC - lsls r0, 24 - lsrs r1, r0, 24 - adds r0, r4, 0 - adds r0, 0x68 - strh r7, [r0] - ldr r0, [r4, 0x70] - ldr r2, _0806F9B4 - adds r0, r2 - strb r6, [r0] - ldr r0, [r4, 0x70] - adds r2, 0x1 - adds r0, r2 - strb r1, [r0] - cmp r1, 0 - beq _0806F978 - ldr r3, _0806F9B8 - movs r2, 0x1 -_0806F966: - cmp r5, 0x5 - bgt _0806F972 - adds r0, r5, r3 - strb r2, [r0] - adds r7, 0x10 - adds r5, 0x1 -_0806F972: - subs r1, 0x1 - cmp r1, 0 - bne _0806F966 -_0806F978: - adds r0, r4, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_806CCB4 -_0806F98A: - mov r6, r8 - cmp r6, 0x3 - ble _0806F91C - cmp r5, 0x5 - bgt _0806F9A2 - ldr r2, _0806F9B8 - movs r1, 0 -_0806F998: - adds r0, r5, r2 - strb r1, [r0] - adds r5, 0x1 - cmp r5, 0x5 - ble _0806F998 -_0806F9A2: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806F9AC: .4byte gUnknown_203B418 -_0806F9B0: .4byte 0x0001357c -_0806F9B4: .4byte 0x00000167 -_0806F9B8: .4byte gUnknown_202EE70 - thumb_func_end sub_806F910 - - thumb_func_start sub_806F9BC -sub_806F9BC: - push {r4,r5,lr} - sub sp, 0xC - lsls r0, 16 - asrs r4, r0, 16 - ldr r5, _0806FA40 - ldr r0, [r5] - movs r1, 0xCB - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0806FA3C - adds r0, r4, 0 - bl sub_808529C - lsls r0, 24 - cmp r0, 0 - beq _0806FA3C - cmp r4, 0x97 - bne _0806F9F2 - ldr r0, [r5] - movs r1, 0xCF - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0806FA3C -_0806F9F2: - movs r0, 0xCC - lsls r0, 1 - cmp r4, r0 - beq _0806FA3C - ldr r0, _0806FA44 - cmp r4, r0 - beq _0806FA3C - ldr r0, _0806FA48 - cmp r4, r0 - beq _0806FA3C - movs r0, 0xD1 - lsls r0, 1 - cmp r4, r0 - beq _0806FA3C - ldr r0, _0806FA4C - cmp r4, r0 - beq _0806FA3C - adds r0, r4, 0 - bl sub_808DBF4 - lsls r0, 24 - cmp r0, 0 - bne _0806FA50 - adds r0, r4, 0 - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - mov r1, sp - movs r2, 0 - movs r3, 0 - bl sub_8092638 - mov r0, sp - ldrb r0, [r0, 0x4] - cmp r0, 0 - bne _0806FA50 -_0806FA3C: - movs r0, 0 - b _0806FA52 - .align 2, 0 -_0806FA40: .4byte gUnknown_203B418 -_0806FA44: .4byte 0x00000199 -_0806FA48: .4byte 0x000001a1 -_0806FA4C: .4byte 0x000001a3 -_0806FA50: - movs r0, 0x1 -_0806FA52: - add sp, 0xC - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806F9BC - - thumb_func_start sub_806FA5C -sub_806FA5C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - mov r8, r0 - adds r5, r1, 0 - adds r6, r2, 0 - adds r0, r5, 0x4 - mov r1, r8 - adds r1, 0x4 - bl sub_80983D8 - adds r4, r0, 0 - movs r0, 0 - mov r10, r0 - movs r1, 0 - ldrsh r0, [r6, r1] - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - adds r0, r5, 0 - adds r0, 0x22 - mov r2, r10 - strb r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_807A0CC - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_806CE68 - ldr r0, _0806FAD4 - movs r3, 0 - ldrsh r1, [r6, r3] - bl sub_808D908 - ldr r0, _0806FAD8 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0 - bne _0806FAE4 - movs r4, 0 - ldrsh r1, [r6, r4] - ldr r0, _0806FADC - cmp r1, r0 - beq _0806FB28 - ldr r0, _0806FAE0 - ldr r1, [r0] - mov r0, r8 - bl sub_80522A8 - b _0806FB28 - .align 2, 0 -_0806FAD4: .4byte gUnknown_202DF98 -_0806FAD8: .4byte gUnknown_80F9FE8 -_0806FADC: .4byte 0x0000019d -_0806FAE0: .4byte gUnknown_80FA004 -_0806FAE4: - movs r7, 0 - ldr r3, _0806FB2C - ldr r0, [r3] - ldr r2, _0806FB30 - adds r0, r2 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806FB1A - mov r12, r3 - adds r4, r2, 0 - movs r2, 0 - movs r3, 0x1 -_0806FB00: - adds r2, 0x64 - adds r7, 0x1 - cmp r7, 0x3 - bgt _0806FB1A - mov r1, r12 - ldr r0, [r1] - adds r0, r2, r0 - adds r0, r4 - ldrb r1, [r0] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0806FB00 -_0806FB1A: - cmp r7, 0x4 - bne _0806FB38 - ldr r0, _0806FB34 - ldr r1, [r0] - mov r0, r8 - bl sub_80522A8 -_0806FB28: - movs r0, 0 - b _0806FCF0 - .align 2, 0 -_0806FB2C: .4byte gUnknown_203B45C -_0806FB30: .4byte 0x00008df8 -_0806FB34: .4byte gUnknown_80FA030 -_0806FB38: - mov r0, r9 - bl sub_8092600 - lsls r0, 24 - cmp r0, 0 - bne _0806FB4E - mov r0, r9 - bl sub_80925EC - movs r2, 0x1 - mov r10, r2 -_0806FB4E: - movs r1, 0xFA - lsls r1, 1 - adds r0, r5, 0 - mov r2, r8 - bl sub_8068FE0 - ldr r1, _0806FC40 - movs r0, 0x64 - muls r0, r7 - ldr r3, _0806FC44 - adds r0, r3 - ldr r1, [r1] - adds r5, r1, r0 - movs r4, 0 - movs r0, 0x3 - strh r0, [r5] - strb r4, [r5, 0x2] - ldrh r0, [r6, 0xE] - strb r0, [r5, 0x3] - movs r0, 0x1 - strh r0, [r5, 0x8] - adds r0, r5, 0 - adds r0, 0x4C - movs r1, 0 - bl sub_808EC94 - ldr r0, [r6, 0x44] - str r0, [r5, 0x54] - adds r0, r5, 0 - adds r0, 0x50 - strb r4, [r0] - ldr r0, _0806FC48 - strh r0, [r5, 0xA] - strh r7, [r5, 0xC] - ldrh r0, [r6] - strh r0, [r5, 0xE] - ldr r0, _0806FC4C - ldr r0, [r0] - ldr r4, _0806FC50 - adds r0, r4 - ldr r0, [r0] - str r0, [r5, 0x4] - ldrh r0, [r6, 0x8] - strh r0, [r5, 0x10] - ldrh r0, [r6, 0x8] - strh r0, [r5, 0x12] - ldr r0, [r6, 0x14] - str r0, [r5, 0x44] - ldr r0, [r6, 0x18] - str r0, [r5, 0x48] - movs r2, 0 - adds r7, r6, 0 - adds r7, 0x20 - adds r4, r6, 0 - adds r4, 0xA - adds r3, r6, 0 - adds r3, 0xC - adds r1, r5, 0 - adds r1, 0x14 -_0806FBC4: - adds r0, r4, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r3, r2 - ldrb r0, [r0] - strb r0, [r1, 0x2] - adds r1, 0x1 - adds r2, 0x1 - cmp r2, 0x1 - ble _0806FBC4 - ldr r0, [r6, 0x10] - str r0, [r5, 0x18] - adds r1, r5, 0 - adds r1, 0x1C - adds r0, r7, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r6, 0x1C] - str r0, [r5, 0x40] - adds r4, r5, 0 - adds r4, 0x58 - movs r1, 0 - ldrsh r0, [r6, r1] - bl sub_808D994 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0xA - bl sub_8092310 - bl sub_8097848 - movs r2, 0 - ldrsh r0, [r6, r2] - movs r3, 0x4 - ldrsh r1, [r6, r3] - movs r3, 0x6 - ldrsh r2, [r6, r3] - add r3, sp, 0xC - str r3, [sp] - movs r3, 0 - str r3, [sp, 0x4] - movs r3, 0x1 - str r3, [sp, 0x8] - adds r3, r5, 0 - bl sub_806B8CC - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0 - bne _0806FC58 - ldr r0, _0806FC54 - ldr r1, [r0] - mov r0, r8 - bl sub_80522A8 - strh r7, [r5] - b _0806FCEE - .align 2, 0 -_0806FC40: .4byte gUnknown_203B45C -_0806FC44: .4byte 0x00008df8 -_0806FC48: .4byte 0x0000ffff -_0806FC4C: .4byte gUnknown_203B418 -_0806FC50: .4byte 0x00000644 -_0806FC54: .4byte gUnknown_80FA058 -_0806FC58: - bl sub_8083D88 - movs r0, 0xA0 - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0806FC78 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - bne _0806FC94 - b _0806FC88 - .align 2, 0 -_0806FC78: .4byte gUnknown_80FA090 -_0806FC7C: - ldr r0, _0806FD00 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_0806FC88: - adds r0, r4, 0 - bl sub_805FBE8 - lsls r0, 24 - cmp r0, 0 - beq _0806FC7C -_0806FC94: - ldr r4, _0806FD04 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_808D9DC - ldr r0, _0806FD08 - ldr r1, [r0] - mov r0, r8 - bl sub_80522A8 - mov r0, r10 - cmp r0, 0 - beq _0806FCD8 - bl sub_8085480 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0806FD0C - mov r1, r9 - bl sub_8092558 - movs r0, 0xCE - bl sub_8011988 - ldr r0, _0806FD10 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_0806FCD8: - movs r1, 0 - ldrsh r0, [r6, r1] - cmp r0, 0x97 - bne _0806FCEE - ldr r2, _0806FD14 - ldr r1, [r2] - movs r0, 0x1 - strb r0, [r1, 0x4] - ldr r1, [r2] - movs r0, 0x3 - strb r0, [r1, 0x11] -_0806FCEE: - movs r0, 0x1 -_0806FCF0: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0806FD00: .4byte gUnknown_80FA0C8 -_0806FD04: .4byte gUnknown_202DF98 -_0806FD08: .4byte gUnknown_80FA0F0 -_0806FD0C: .4byte gUnknown_202E628 -_0806FD10: .4byte gUnknown_80FA120 -_0806FD14: .4byte gUnknown_203B418 - thumb_func_end sub_806FA5C - - thumb_func_start sub_806FD18 -sub_806FD18: - push {r4-r7,lr} - ldr r4, [r0, 0x70] - movs r6, 0x1 - negs r6, r6 - movs r1, 0x4 - ldrsh r0, [r4, r1] - bl sub_808DACC - lsls r0, 24 - lsrs r5, r0, 24 - movs r2, 0x2 - ldrsh r0, [r4, r2] - bl sub_806F9BC - lsls r0, 24 - cmp r0, 0 - beq _0806FDEC - bl sub_806F910 - movs r4, 0 - movs r0, 0x6 - subs r3, r0, r5 - ldr r7, _0806FD48 - b _0806FD4E - .align 2, 0 -_0806FD48: .4byte gUnknown_202EE70 -_0806FD4C: - adds r4, 0x1 -_0806FD4E: - cmp r4, r3 - bgt _0806FD70 - movs r2, 0 - cmp r2, r5 - bge _0806FD6A - adds r1, r4, r7 - b _0806FD64 -_0806FD5C: - adds r1, 0x1 - adds r2, 0x1 - cmp r2, r5 - bge _0806FD6A -_0806FD64: - ldrb r0, [r1] - cmp r0, 0 - beq _0806FD5C -_0806FD6A: - cmp r2, r5 - bne _0806FD4C - adds r6, r4, 0 -_0806FD70: - movs r0, 0x1 - negs r0, r0 - cmp r6, r0 - beq _0806FDEC - movs r4, 0 - ldr r3, _0806FDB4 - ldr r0, [r3] - ldr r2, _0806FDB8 - adds r0, r2 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806FDAC - adds r6, r3, 0 - adds r5, r2, 0 - movs r2, 0 - movs r3, 0x1 -_0806FD94: - adds r2, 0x64 - adds r4, 0x1 - cmp r4, 0x3 - bgt _0806FDAC - ldr r0, [r6] - adds r0, r2, r0 - adds r0, r5 - ldrb r1, [r0] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0806FD94 -_0806FDAC: - cmp r4, 0x4 - beq _0806FDEC - movs r4, 0 - b _0806FDBE - .align 2, 0 -_0806FDB4: .4byte gUnknown_203B45C -_0806FDB8: .4byte 0x00008df8 -_0806FDBC: - adds r4, 0x1 -_0806FDBE: - cmp r4, 0x3 - bgt _0806FDDA - ldr r0, _0806FDE4 - ldr r0, [r0] - lsls r1, r4, 2 - ldr r2, _0806FDE8 - adds r0, r2 - adds r0, r1 - ldr r0, [r0] - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0806FDBC -_0806FDDA: - cmp r4, 0x4 - beq _0806FDEC - movs r0, 0x1 - b _0806FDEE - .align 2, 0 -_0806FDE4: .4byte gUnknown_203B418 -_0806FDE8: .4byte 0x0001357c -_0806FDEC: - movs r0, 0 -_0806FDEE: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_806FD18 - - thumb_func_start sub_806FDF4 -sub_806FDF4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x60 - str r0, [sp, 0x58] - mov r10, r1 - str r2, [sp, 0x5C] - movs r0, 0 - mov r9, r0 - str r0, [r2] - add r0, sp, 0xC - bl sub_8069D4C - movs r6, 0 - ldr r3, _0806FE50 - ldr r0, [r3] - ldr r2, _0806FE54 - adds r0, r2 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806FE46 - adds r5, r3, 0 - adds r4, r2, 0 - movs r2, 0 - movs r3, 0x1 -_0806FE2E: - adds r2, 0x64 - adds r6, 0x1 - cmp r6, 0x3 - bgt _0806FE46 - ldr r0, [r5] - adds r0, r2, r0 - adds r0, r4 - ldrb r1, [r0] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0806FE2E -_0806FE46: - cmp r6, 0x4 - bne _0806FE58 - movs r0, 0 - b _0806FFF8 - .align 2, 0 -_0806FE50: .4byte gUnknown_203B45C -_0806FE54: .4byte 0x00008df8 -_0806FE58: - add r0, sp, 0xC - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_808DBA8 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r1, _0806FF74 - movs r0, 0x64 - muls r0, r6 - ldr r2, _0806FF78 - adds r0, r2 - ldr r1, [r1] - adds r5, r1, r0 - movs r4, 0 - movs r0, 0x3 - strh r0, [r5] - strb r4, [r5, 0x2] - add r0, sp, 0xC - ldrh r0, [r0, 0xE] - strb r0, [r5, 0x3] - movs r0, 0x1 - strh r0, [r5, 0x8] - adds r0, r5, 0 - adds r0, 0x4C - movs r1, 0 - bl sub_808EC94 - ldr r0, [sp, 0x50] - str r0, [r5, 0x54] - adds r0, r5, 0 - adds r0, 0x50 - strb r4, [r0] - ldr r0, _0806FF7C - strh r0, [r5, 0xA] - strh r6, [r5, 0xC] - add r0, sp, 0xC - ldrh r0, [r0] - strh r0, [r5, 0xE] - ldr r0, _0806FF80 - ldr r0, [r0] - ldr r3, _0806FF84 - adds r0, r3 - ldr r0, [r0] - str r0, [r5, 0x4] - add r0, sp, 0xC - ldrh r0, [r0, 0x8] - strh r0, [r5, 0x10] - add r0, sp, 0xC - ldrh r0, [r0, 0x8] - strh r0, [r5, 0x12] - ldr r0, [sp, 0x20] - str r0, [r5, 0x44] - ldr r0, [sp, 0x24] - str r0, [r5, 0x48] - movs r2, 0 - add r6, sp, 0x2C - add r4, sp, 0x54 - mov r8, r4 - mov r4, sp - adds r4, 0x16 - add r3, sp, 0x18 - adds r1, r5, 0 - adds r1, 0x14 -_0806FED8: - adds r0, r4, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r3, r2 - ldrb r0, [r0] - strb r0, [r1, 0x2] - adds r1, 0x1 - adds r2, 0x1 - cmp r2, 0x1 - ble _0806FED8 - ldr r0, [sp, 0x1C] - str r0, [r5, 0x18] - adds r1, r5, 0 - adds r1, 0x1C - adds r0, r6, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [sp, 0x28] - str r0, [r5, 0x40] - adds r4, r5, 0 - adds r4, 0x58 - add r0, sp, 0xC - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_808D994 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0xA - bl sub_8092310 - adds r0, r7, 0 - bl sub_8092600 - lsls r0, 24 - cmp r0, 0 - bne _0806FF34 - adds r0, r7, 0 - bl sub_80925EC - movs r2, 0x1 - mov r9, r2 -_0806FF34: - bl sub_8097848 - movs r1, 0xFA - lsls r1, 1 - mov r0, r10 - ldr r2, [sp, 0x58] - bl sub_8068FE0 - add r0, sp, 0xC - movs r3, 0 - ldrsh r0, [r0, r3] - add r1, sp, 0xC - movs r2, 0x4 - ldrsh r1, [r1, r2] - add r2, sp, 0xC - movs r3, 0x6 - ldrsh r2, [r2, r3] - mov r3, r8 - str r3, [sp] - movs r3, 0 - str r3, [sp, 0x4] - str r3, [sp, 0x8] - adds r3, r5, 0 - bl sub_806B8CC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0806FF88 - strh r0, [r5] - b _0806FFF6 - .align 2, 0 -_0806FF74: .4byte gUnknown_203B45C -_0806FF78: .4byte 0x00008df8 -_0806FF7C: .4byte 0x0000ffff -_0806FF80: .4byte gUnknown_203B418 -_0806FF84: .4byte 0x00000644 -_0806FF88: - ldr r0, _0806FF9C - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - bne _0806FFB8 - b _0806FFAC - .align 2, 0 -_0806FF9C: .4byte gUnknown_80FA090 -_0806FFA0: - ldr r0, _08070008 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_0806FFAC: - adds r0, r4, 0 - bl sub_805FBE8 - lsls r0, 24 - cmp r0, 0 - beq _0806FFA0 -_0806FFB8: - mov r4, r9 - cmp r4, 0 - beq _0806FFE6 - bl sub_8085480 - adds r1, r0, 0 - ldr r0, _0807000C - movs r2, 0 - bl sub_8045B94 - ldr r0, _08070010 - adds r1, r7, 0 - bl sub_8092558 - movs r0, 0xCE - bl sub_8011988 - ldr r0, _08070014 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_0806FFE6: - ldr r0, _08070018 - adds r1, r5, 0 - movs r2, 0 - bl sub_808D9DC - ldr r0, [sp, 0x54] - ldr r1, [sp, 0x5C] - str r0, [r1] -_0806FFF6: - movs r0, 0x1 -_0806FFF8: - add sp, 0x60 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08070008: .4byte gUnknown_80FA0C8 -_0807000C: .4byte gUnknown_202DF98 -_08070010: .4byte gUnknown_202E628 -_08070014: .4byte gUnknown_80FA120 -_08070018: .4byte gUnknown_202E088 - thumb_func_end sub_806FDF4 - - thumb_func_start sub_807001C -sub_807001C: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r4, [r5, 0x70] - ldr r0, _08070050 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r4, 0 - adds r0, 0x44 - movs r1, 0x1 - bl sub_8044C94 - adds r0, r4, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x3 - bne _08070042 - b _0807019C -_08070042: - cmp r0, 0x3 - bgt _08070054 - cmp r0, 0x1 - bne _0807004C - b _0807019C -_0807004C: - b _0807005A - .align 2, 0 -_08070050: .4byte gUnknown_202DF98 -_08070054: - cmp r0, 0x5 - bne _0807005A - b _0807019C -_0807005A: - adds r0, r4, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x3 - beq _0807008C - cmp r0, 0x3 - bgt _0807006E - cmp r0, 0x1 - beq _0807007A - b _080700AC -_0807006E: - cmp r0, 0x4 - beq _0807009C - cmp r0, 0x6 - bne _08070078 - b _0807019C -_08070078: - b _080700AC -_0807007A: - ldr r0, _08070088 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _0807019C - .align 2, 0 -_08070088: .4byte gUnknown_80F954C -_0807008C: - ldr r0, _08070098 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _0807019C - .align 2, 0 -_08070098: .4byte gUnknown_80F956C -_0807009C: - ldr r0, _080700A8 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _0807019C - .align 2, 0 -_080700A8: .4byte gUnknown_80F958C -_080700AC: - adds r0, r4, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x3 - beq _080700D4 - cmp r0, 0x7 - beq _080700E4 - adds r0, r4, 0 - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080700F4 - ldr r0, _080700D0 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _0807019C - .align 2, 0 -_080700D0: .4byte gUnknown_80F95D8 -_080700D4: - ldr r0, _080700E0 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _0807019C - .align 2, 0 -_080700E0: .4byte gUnknown_80F95A4 -_080700E4: - ldr r0, _080700F0 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _0807019C - .align 2, 0 -_080700F0: .4byte gUnknown_80F95BC -_080700F4: - adds r0, r4, 0 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x2 - bne _0807012E - adds r0, r4, 0 - adds r0, 0x44 - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_8044CA0 - movs r0, 0x8 - bl sub_8084100 - adds r1, r4, 0 - adds r1, 0x46 - strb r0, [r1] - ldrh r1, [r5, 0x4] - movs r2, 0xB6 - lsls r2, 1 - adds r0, r4, r2 - strh r1, [r0] - ldrh r0, [r5, 0x6] - subs r0, 0x1 - movs r1, 0xB7 - lsls r1, 1 - adds r2, r4, r1 - strh r0, [r2] - b _0807019C -_0807012E: - ldrb r0, [r4, 0x8] - cmp r0, 0x1 - beq _0807019C - adds r0, r4, 0 - adds r0, 0xE8 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807017C - adds r6, r4, 0 - adds r6, 0x46 - ldrb r1, [r6] - adds r0, r5, 0 - bl sub_8070D6C - lsls r0, 24 - cmp r0, 0 - bne _08070166 - movs r0, 0x2 - bl sub_8084100 - cmp r0, 0 - beq _08070174 - movs r0, 0x8 - bl sub_8084100 - movs r1, 0x7 - ands r1, r0 - strb r1, [r6] -_08070166: - adds r0, r4, 0 - adds r0, 0x44 - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_8044CA0 - b _0807019C -_08070174: - adds r0, r5, 0 - bl sub_807BB94 - b _0807019C -_0807017C: - cmp r0, 0x2 - beq _08070184 - movs r0, 0 - b _0807019E -_08070184: - adds r0, r4, 0 - adds r0, 0x44 - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_8044CA0 - movs r0, 0x8 - bl sub_8084100 - adds r1, r4, 0 - adds r1, 0x46 - strb r0, [r1] -_0807019C: - movs r0, 0x1 -_0807019E: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_807001C - - thumb_func_start sub_80701A4 -sub_80701A4: - push {r4-r7,lr} - adds r7, r0, 0 - ldr r6, [r7, 0x70] - movs r4, 0 - ldr r0, _080701D4 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x1 - bl sub_8044C94 - adds r0, r6, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x3 - beq _080701DC - cmp r0, 0x3 - bgt _080701D8 - cmp r0, 0x1 - beq _080701DC - b _080701E4 - .align 2, 0 -_080701D4: .4byte gUnknown_202DF98 -_080701D8: - cmp r0, 0x5 - bne _080701E4 -_080701DC: - ldr r0, _080701E0 - b _08070278 - .align 2, 0 -_080701E0: .4byte gUnknown_80F95EC -_080701E4: - adds r0, r6, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x3 - beq _0807020C - cmp r0, 0x3 - bgt _080701F8 - cmp r0, 0x1 - beq _08070202 - b _0807021C -_080701F8: - cmp r0, 0x4 - beq _08070214 - cmp r0, 0x6 - beq _08070280 - b _0807021C -_08070202: - ldr r0, _08070208 - b _08070278 - .align 2, 0 -_08070208: .4byte gUnknown_80F954C -_0807020C: - ldr r0, _08070210 - b _08070278 - .align 2, 0 -_08070210: .4byte gUnknown_80F956C -_08070214: - ldr r0, _08070218 - b _08070278 - .align 2, 0 -_08070218: .4byte gUnknown_80F958C -_0807021C: - adds r0, r6, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x8 - bhi _0807026C - lsls r0, 2 - ldr r1, _08070230 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08070230: .4byte _08070234 - .align 2, 0 -_08070234: - .4byte _0807026C - .4byte _0807026C - .4byte _08070258 - .4byte _0807025C - .4byte _0807026C - .4byte _0807026C - .4byte _0807026C - .4byte _08070264 - .4byte _0807026C -_08070258: - movs r4, 0x1 - b _0807026C -_0807025C: - ldr r0, _08070260 - b _08070278 - .align 2, 0 -_08070260: .4byte gUnknown_80F95A4 -_08070264: - ldr r0, _08070268 - b _08070278 - .align 2, 0 -_08070268: .4byte gUnknown_80F95BC -_0807026C: - adds r0, r6, 0 - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08070288 - ldr r0, _08070284 -_08070278: - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 -_08070280: - movs r0, 0x1 - b _08070322 - .align 2, 0 -_08070284: .4byte gUnknown_80F95D8 -_08070288: - cmp r0, 0 - beq _08070320 - cmp r0, 0xB - beq _08070320 - cmp r0, 0xC - beq _08070320 - cmp r4, 0 - beq _080702A8 - ldr r0, _080702A4 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - b _0807031A - .align 2, 0 -_080702A4: .4byte gUnknown_8100660 -_080702A8: - movs r5, 0 - movs r0, 0x8C - lsls r0, 1 - adds r4, r6, r0 -_080702B0: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08070312 - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _08070312 - adds r0, r6, 0 - adds r0, 0xC2 - ldrb r0, [r0] - cmp r0, r5 - bne _08070312 - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x14 - bl sub_8044C94 - adds r3, r5, 0 - adds r7, r6, 0 - adds r7, 0x50 - cmp r5, 0 - ble _0807030E - ldrb r1, [r4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0807030E - movs r4, 0x2 - lsls r0, r5, 3 - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - adds r2, r0, r6 -_080702FC: - subs r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - ble _0807030E - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - bne _080702FC -_0807030E: - strb r3, [r7] - b _08070280 -_08070312: - adds r4, 0x8 - adds r5, 0x1 - cmp r5, 0x3 - ble _080702B0 -_0807031A: - adds r0, r7, 0 - bl sub_8079764 -_08070320: - movs r0, 0 -_08070322: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80701A4 - - thumb_func_start sub_8070328 -sub_8070328: - push {lr} - lsls r0, 16 - asrs r0, 16 - bl sub_808DB14 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x3 - bhi _0807033E - adds r0, r1, 0 - b _08070344 -_0807033E: - ldr r0, _08070348 - adds r0, r1, r0 - ldrb r0, [r0] -_08070344: - pop {r1} - bx r1 - .align 2, 0 -_08070348: .4byte gUnknown_202F314 - thumb_func_end sub_8070328 - - thumb_func_start sub_807034C -sub_807034C: - push {r4,lr} - adds r4, r1, 0 - lsls r0, 16 - asrs r2, r0, 16 - ldr r0, [r4, 0x10] - cmp r0, 0 - bne _08070398 - ldrh r1, [r4] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08070398 - adds r0, r2, 0 - bl sub_8070328 - lsls r0, 24 - lsrs r2, r0, 24 - ldrh r0, [r4] - movs r1, 0x3 - ands r1, r0 - cmp r2, 0x1 - beq _08070388 - cmp r2, 0x1 - bgt _08070382 - cmp r2, 0 - beq _0807038C - b _08070390 -_08070382: - cmp r2, 0x2 - beq _08070394 - b _08070390 -_08070388: - cmp r1, 0x2 - beq _08070390 -_0807038C: - cmp r1, 0x1 - bne _08070398 -_08070390: - movs r0, 0 - b _0807039A -_08070394: - cmp r1, 0 - bne _08070390 -_08070398: - movs r0, 0x1 -_0807039A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_807034C - - thumb_func_start sub_80703A0 -sub_80703A0: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - ldr r7, [r6, 0x70] - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r5, r0, 0 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - blt _08070456 - movs r2, 0x2 - ldrsh r1, [r4, r2] - cmp r1, 0 - blt _08070456 - cmp r0, 0x37 - bgt _08070456 - cmp r1, 0x1F - bgt _08070456 - ldr r0, [r5, 0x10] - cmp r0, 0 - bne _08070456 - ldrh r1, [r5] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08070456 - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - bne _08070400 - adds r0, r7, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _0807044E - adds r0, r6, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _0807044E -_08070400: - movs r1, 0x2 - ldrsh r0, [r7, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r4, r0, 24 - ldrh r0, [r5] - movs r5, 0x3 - ands r5, r0 - adds r0, r6, 0 - movs r1, 0xC - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08070422 - movs r4, 0x2 -_08070422: - adds r0, r6, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08070432 - movs r4, 0x3 -_08070432: - cmp r4, 0x1 - beq _08070446 - cmp r4, 0x1 - bgt _08070440 - cmp r4, 0 - beq _0807044A - b _0807044E -_08070440: - cmp r4, 0x2 - beq _08070452 - b _0807044E -_08070446: - cmp r5, 0x2 - beq _0807044E -_0807044A: - cmp r5, 0x1 - bne _08070456 -_0807044E: - movs r0, 0 - b _08070458 -_08070452: - cmp r5, 0 - bne _0807044E -_08070456: - movs r0, 0x1 -_08070458: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80703A0 - - thumb_func_start sub_8070460 -sub_8070460: - push {r4,lr} - adds r1, r0, 0 - ldr r0, [r1, 0x70] - adds r4, r0, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08070492 - adds r0, r1, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _08070492 - movs r1, 0x2 - ldrsh r0, [r4, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _08070492 - movs r0, 0 - b _08070494 -_08070492: - movs r0, 0x1 -_08070494: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8070460 - - thumb_func_start sub_807049C -sub_807049C: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - ldr r7, [r6, 0x70] - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r5, r0, 0 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - blt _0807055A - movs r2, 0x2 - ldrsh r1, [r4, r2] - cmp r1, 0 - blt _0807055A - cmp r0, 0x37 - bgt _0807055A - cmp r1, 0x1F - bgt _0807055A - ldrh r1, [r5] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0807055A - ldr r0, [r5, 0x10] - cmp r0, 0 - beq _080704E2 - bl sub_80450F8 - cmp r0, 0x1 - bne _0807055A -_080704E2: - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - bne _08070504 - adds r0, r7, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08070552 - adds r0, r6, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _08070552 -_08070504: - movs r1, 0x2 - ldrsh r0, [r7, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r4, r0, 24 - ldrh r0, [r5] - movs r5, 0x3 - ands r5, r0 - adds r0, r6, 0 - movs r1, 0xC - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08070526 - movs r4, 0x2 -_08070526: - adds r0, r6, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08070536 - movs r4, 0x3 -_08070536: - cmp r4, 0x1 - beq _0807054A - cmp r4, 0x1 - bgt _08070544 - cmp r4, 0 - beq _0807054E - b _08070552 -_08070544: - cmp r4, 0x2 - beq _08070556 - b _08070552 -_0807054A: - cmp r5, 0x2 - beq _08070552 -_0807054E: - cmp r5, 0x1 - bne _0807055A -_08070552: - movs r0, 0 - b _0807055C -_08070556: - cmp r5, 0 - bne _08070552 -_0807055A: - movs r0, 0x1 -_0807055C: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_807049C - - thumb_func_start sub_8070564 -sub_8070564: - push {r4-r6,lr} - adds r4, r1, 0 - ldr r6, [r0, 0x70] - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r5, r0, 0 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - blt _080705E6 - movs r2, 0x2 - ldrsh r1, [r4, r2] - cmp r1, 0 - blt _080705E6 - cmp r0, 0x37 - bgt _080705E6 - cmp r1, 0x1F - bgt _080705E6 - ldrh r1, [r5] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _080705E6 - ldr r0, [r5, 0x10] - cmp r0, 0 - beq _080705A8 - bl sub_80450F8 - cmp r0, 0x1 - bne _080705E6 -_080705A8: - movs r1, 0x2 - ldrsh r0, [r6, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r2, r0, 24 - adds r3, r2, 0 - ldrh r0, [r5] - movs r1, 0x3 - ands r1, r0 - adds r0, r1, 0 - cmp r2, 0x1 - beq _080705DE - cmp r2, 0x1 - bgt _080705CC - cmp r2, 0 - beq _080705D8 - b _080705D4 -_080705CC: - cmp r3, 0x3 - bgt _080705D4 - cmp r1, 0 - beq _080705E6 -_080705D4: - movs r0, 0 - b _080705E8 -_080705D8: - cmp r1, 0x1 - bne _080705E6 - b _080705D4 -_080705DE: - cmp r1, 0x2 - beq _080705D4 - cmp r0, 0x1 - beq _080705D4 -_080705E6: - movs r0, 0x1 -_080705E8: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8070564 - - thumb_func_start sub_80705F0 -sub_80705F0: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - ldr r7, [r6, 0x70] - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r5, r0, 0 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - blt _0807069A - movs r2, 0x2 - ldrsh r1, [r4, r2] - cmp r1, 0 - blt _0807069A - cmp r0, 0x37 - bgt _0807069A - cmp r1, 0x1F - bgt _0807069A - ldrh r1, [r5] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0807069A - ldr r0, [r5, 0x10] - cmp r0, 0 - beq _08070636 - bl sub_80450F8 - cmp r0, 0x1 - bne _0807069A -_08070636: - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - bne _08070658 - adds r0, r7, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08070696 - adds r0, r6, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _08070696 -_08070658: - movs r1, 0x2 - ldrsh r0, [r7, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r4, r0, 24 - ldrh r0, [r5] - movs r5, 0x3 - ands r5, r0 - adds r0, r6, 0 - movs r1, 0xC - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _0807067A - movs r4, 0x2 -_0807067A: - adds r0, r6, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _0807068A - movs r4, 0x3 -_0807068A: - cmp r4, 0 - blt _08070696 - cmp r4, 0x2 - bgt _08070696 - cmp r5, 0 - beq _0807069A -_08070696: - movs r0, 0 - b _0807069C -_0807069A: - movs r0, 0x1 -_0807069C: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80705F0 - - thumb_func_start sub_80706A4 -sub_80706A4: - push {r4-r7,lr} - adds r7, r0, 0 - adds r4, r1, 0 - ldr r6, [r7, 0x70] - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r5, r0, 0 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - blt _0807076A - movs r2, 0x2 - ldrsh r1, [r4, r2] - cmp r1, 0 - blt _0807076A - cmp r0, 0x37 - bgt _0807076A - cmp r1, 0x1F - bgt _0807076A - ldrh r1, [r5] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0807076A - ldr r0, [r5, 0x10] - cmp r0, 0 - beq _080706F2 - bl sub_80450F8 - cmp r0, 0x1 - bne _0807076A - ldr r0, [r5, 0x10] - ldr r0, [r0, 0x70] - cmp r0, r6 - bne _0807076A -_080706F2: - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - bne _08070714 - adds r0, r6, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08070762 - adds r0, r7, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _08070762 -_08070714: - movs r1, 0x2 - ldrsh r0, [r6, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r4, r0, 24 - ldrh r0, [r5] - movs r5, 0x3 - ands r5, r0 - adds r0, r7, 0 - movs r1, 0xC - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08070736 - movs r4, 0x2 -_08070736: - adds r0, r7, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08070746 - movs r4, 0x3 -_08070746: - cmp r4, 0x1 - beq _0807075A - cmp r4, 0x1 - bgt _08070754 - cmp r4, 0 - beq _0807075E - b _08070762 -_08070754: - cmp r4, 0x2 - beq _08070766 - b _08070762 -_0807075A: - cmp r5, 0x2 - beq _08070762 -_0807075E: - cmp r5, 0x1 - bne _0807076A -_08070762: - movs r0, 0 - b _0807076C -_08070766: - cmp r5, 0 - bne _08070762 -_0807076A: - movs r0, 0x1 -_0807076C: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80706A4 - - thumb_func_start sub_8070774 -sub_8070774: - push {r4-r6,lr} - adds r6, r0, 0 - ldr r5, [r6, 0x70] - movs r4, 0 - movs r0, 0x84 - lsls r0, 1 - adds r1, r5, r0 - movs r2, 0x4 -_08070784: - ldrb r0, [r1, 0x5] - cmp r0, 0 - beq _0807078C - subs r4, 0x1 -_0807078C: - ldrb r0, [r1] - cmp r0, 0 - beq _08070794 - adds r4, 0x1 -_08070794: - adds r1, 0x1 - subs r2, 0x1 - cmp r2, 0 - bge _08070784 - adds r0, r5, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x4 - bne _080707A8 - subs r4, 0x1 -_080707A8: - movs r1, 0x2 - ldrsh r0, [r5, r1] - bl sub_808DAFC - adds r4, r0 - adds r0, r6, 0 - movs r1, 0x6 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _080707D0 - adds r0, r6, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x7 - bne _080707D0 - adds r4, 0x1 -_080707D0: - movs r0, 0x4 - ldrsh r1, [r5, r0] - ldr r0, _0807081C - cmp r1, r0 - bne _080707DC - adds r4, 0x1 -_080707DC: - movs r0, 0x2 - ldrsh r1, [r5, r0] - movs r0, 0xBE - lsls r0, 1 - cmp r1, r0 - bne _080707FE - ldrb r0, [r5, 0x6] - cmp r0, 0 - beq _080707FE - ldr r0, _08070820 - ldr r0, [r0] - ldr r1, _08070824 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080707FE - adds r4, 0x1 -_080707FE: - cmp r4, 0 - bge _08070804 - movs r4, 0 -_08070804: - cmp r4, 0x4 - ble _0807080A - movs r4, 0x4 -_0807080A: - movs r1, 0x82 - lsls r1, 1 - adds r0, r5, r1 - str r4, [r0] - adds r0, r4, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0807081C: .4byte 0x000001a3 -_08070820: .4byte gUnknown_203B418 -_08070824: .4byte 0x0000066e - thumb_func_end sub_8070774 - - thumb_func_start sub_8070828 -sub_8070828: - push {r4-r6,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - movs r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08070840 - movs r0, 0 - b _080708AE -_08070840: - adds r0, r4, 0 - movs r1, 0x1B - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807085E - adds r0, r4, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bne _0807085E - movs r5, 0x1 -_0807085E: - adds r0, r4, 0 - movs r1, 0x4A - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807087C - adds r0, r4, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0807087C - movs r5, 0x1 -_0807087C: - cmp r6, 0 - beq _080708A0 - ldr r0, [r4, 0x70] - movs r1, 0x40 - adds r2, r5, 0 - bl sub_8071ACC - lsls r0, 24 - cmp r0, 0 - beq _080708A0 - adds r0, r4, 0 - bl sub_80429B4 - ldr r0, _080708A8 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 -_080708A0: - cmp r5, 0 - bne _080708AC - movs r0, 0x1 - b _080708AE - .align 2, 0 -_080708A8: .4byte gUnknown_80FEE80 -_080708AC: - movs r0, 0x2 -_080708AE: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8070828 - - thumb_func_start sub_80708B4 -sub_80708B4: - push {r4,r5,lr} - adds r3, r0, 0 - adds r4, r2, 0 - ldr r0, _080708E8 - ldr r2, [r0] - ldr r5, _080708EC - adds r0, r2, r5 - ldrb r0, [r0] - cmp r0, 0 - bne _080708DC - adds r5, 0x6 - adds r0, r2, r5 - ldrb r0, [r0] - cmp r0, 0 - bne _080708DC - adds r0, r1, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080708F4 -_080708DC: - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _080708F4 - ldr r0, _080708F0 - b _08070900 - .align 2, 0 -_080708E8: .4byte gUnknown_203B418 -_080708EC: .4byte 0x0001820a -_080708F0: .4byte gUnknown_80F8988 -_080708F4: - adds r0, r1, 0 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x2 - bne _08070910 - ldr r0, _0807090C -_08070900: - ldr r1, [r0] - adds r0, r3, 0 - bl strcpy - b _0807095A - .align 2, 0 -_0807090C: .4byte gUnknown_80F8968 -_08070910: - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _08070942 - adds r0, r1, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _0807092A - adds r0, r1, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08070936 -_0807092A: - movs r0, 0x4 - ldrsh r1, [r1, r0] - adds r0, r3, 0 - bl sub_808D8E0 - b _0807095A -_08070936: - movs r5, 0x4 - ldrsh r1, [r1, r5] - adds r0, r3, 0 - bl sub_808D908 - b _0807095A -_08070942: - ldr r2, _08070960 - ldrb r1, [r1, 0xA] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08070964 - adds r0, r1 - ldr r1, [r2] - adds r1, r0 - adds r0, r3, 0 - adds r2, r4, 0 - bl sub_808D9DC -_0807095A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08070960: .4byte gUnknown_203B45C -_08070964: .4byte 0x00008df8 - thumb_func_end sub_80708B4 - - thumb_func_start sub_8070968 -sub_8070968: - push {r4,lr} - adds r4, r0, 0 - adds r3, r2, 0 - adds r0, r1, 0 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x2 - bne _08070990 - ldr r1, _08070988 - adds r2, 0x30 - ldr r0, _0807098C - ldr r3, [r0] - adds r0, r4, 0 - bl sub_800D158 - b _080709BA - .align 2, 0 -_08070988: .4byte gUnknown_8106FA4 -_0807098C: .4byte gUnknown_80F8974 -_08070990: - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _080709A2 - movs r0, 0x4 - ldrsh r1, [r1, r0] - adds r0, r4, 0 - bl sub_808D908 - b _080709BA -_080709A2: - ldr r2, _080709C0 - ldrb r1, [r1, 0xA] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080709C4 - adds r0, r1 - ldr r1, [r2] - adds r1, r0 - adds r0, r4, 0 - adds r2, r3, 0 - bl sub_808D9DC -_080709BA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080709C0: .4byte gUnknown_203B45C -_080709C4: .4byte 0x00008df8 - thumb_func_end sub_8070968 - - thumb_func_start sub_80709C8 -sub_80709C8: - push {r4,lr} - adds r3, r0, 0 - ldr r0, _080709F8 - ldr r2, [r0] - ldr r4, _080709FC - adds r0, r2, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _080709EE - adds r4, 0x6 - adds r0, r2, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _080709EE - adds r0, r1, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08070A04 -_080709EE: - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _08070A04 - ldr r0, _08070A00 - b _08070A10 - .align 2, 0 -_080709F8: .4byte gUnknown_203B418 -_080709FC: .4byte 0x0001820a -_08070A00: .4byte gUnknown_80F8994 -_08070A04: - adds r0, r1, 0 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x2 - bne _08070A20 - ldr r0, _08070A1C -_08070A10: - ldr r1, [r0] - adds r0, r3, 0 - bl strcpy - b _08070A48 - .align 2, 0 -_08070A1C: .4byte gUnknown_80F8974 -_08070A20: - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _08070A32 - movs r0, 0x4 - ldrsh r1, [r1, r0] - adds r0, r3, 0 - bl sub_808D8BC - b _08070A48 -_08070A32: - ldr r2, _08070A50 - ldrb r1, [r1, 0xA] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08070A54 - adds r0, r1 - ldr r1, [r2] - adds r1, r0 - adds r0, r3, 0 - bl sub_808DA0C -_08070A48: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08070A50: .4byte gUnknown_203B45C -_08070A54: .4byte 0x00008df8 - thumb_func_end sub_80709C8 - - thumb_func_start sub_8070A58 -sub_8070A58: - push {r4,lr} - ldr r0, [r0, 0x70] - mov r12, r0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070ADE - cmp r0, 0x3 - beq _08070ADE - cmp r0, 0x4 - beq _08070ADE - mov r0, r12 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0 - bne _08070ADE - mov r0, r12 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x5 - beq _08070A86 - cmp r0, 0 - bne _08070ADE -_08070A86: - mov r0, r12 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0 - bne _08070ADE - mov r0, r12 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070ADE - cmp r0, 0x2 - beq _08070ADE - mov r0, r12 - adds r0, 0xD0 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070ADE - mov r0, r12 - adds r0, 0xDC - ldrb r0, [r0] - cmp r0, 0x2 - beq _08070ADE - mov r0, r12 - adds r0, 0xE8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070ADE - cmp r0, 0x2 - beq _08070ADE - mov r0, r12 - adds r0, 0xEC - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070ADE - mov r0, r12 - adds r0, 0xF5 - ldrb r0, [r0] - cmp r0, 0 - bne _08070ADE - mov r0, r12 - adds r0, 0xFD - ldrb r0, [r0] - cmp r0, 0 - beq _08070AE2 -_08070ADE: - movs r0, 0x1 - b _08070B1E -_08070AE2: - movs r3, 0 - movs r4, 0x1 - movs r2, 0x8C - lsls r2, 1 - add r2, r12 -_08070AEC: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _08070B00 - ldrb r1, [r2, 0x1] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - bne _08070ADE -_08070B00: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - ble _08070AEC - movs r3, 0 - ldr r1, _08070B24 - add r1, r12 -_08070B0E: - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _08070ADE - adds r3, 0x1 - cmp r3, 0x4 - ble _08070B0E - movs r0, 0 -_08070B1E: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08070B24: .4byte 0x0000010d - thumb_func_end sub_8070A58 - - thumb_func_start sub_8070B28 -sub_8070B28: - push {lr} - ldr r0, [r0, 0x70] - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070B40 - cmp r0, 0x5 - beq _08070B40 - cmp r0, 0x3 - beq _08070B40 - movs r0, 0 - b _08070B42 -_08070B40: - movs r0, 0x1 -_08070B42: - pop {r1} - bx r1 - thumb_func_end sub_8070B28 - - thumb_func_start sub_8070B48 -sub_8070B48: - push {lr} - ldr r0, [r0, 0x70] - adds r1, r0, 0 - movs r2, 0x10 - ldrsh r0, [r1, r2] - cmp r0, 0 - bge _08070B58 - adds r0, 0x3 -_08070B58: - movs r2, 0xE - ldrsh r1, [r1, r2] - asrs r0, 2 - cmp r1, r0 - ble _08070B66 - movs r0, 0 - b _08070B68 -_08070B66: - movs r0, 0x1 -_08070B68: - pop {r1} - bx r1 - thumb_func_end sub_8070B48 - - thumb_func_start sub_8070B6C -sub_8070B6C: - push {lr} - lsls r1, 24 - ldr r2, [r0, 0x70] - cmp r1, 0 - beq _08070B80 - adds r0, r2, 0 - adds r0, 0xE8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070BB8 -_08070B80: - adds r0, r2, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070BB8 - cmp r0, 0x5 - beq _08070BB8 - cmp r0, 0x3 - beq _08070BB8 - adds r0, r2, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x3 - beq _08070BB8 - cmp r0, 0x7 - beq _08070BB8 - adds r0, r2, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x6 - beq _08070BB8 - adds r0, r2, 0 - adds r0, 0xFA - ldrb r0, [r0] - cmp r0, 0 - bne _08070BB8 - movs r0, 0 - b _08070BBA -_08070BB8: - movs r0, 0x1 -_08070BBA: - pop {r1} - bx r1 - thumb_func_end sub_8070B6C - - thumb_func_start sub_8070BC0 -sub_8070BC0: - push {r4-r6,lr} - adds r4, r0, 0 - ldr r5, [r4, 0x70] - movs r1, 0 - bl sub_80570F4 - lsls r0, 24 - cmp r0, 0 - bne _08070C56 - adds r6, r5, 0 - adds r6, 0xA8 - ldrb r0, [r6] - cmp r0, 0x4 - beq _08070C56 - cmp r0, 0x3 - beq _08070C56 - adds r0, r4, 0 - bl sub_8071494 - lsls r0, 24 - cmp r0, 0 - bne _08070C56 - adds r0, r5, 0 - adds r0, 0xEC - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070C56 - adds r0, r5, 0 - adds r0, 0xB0 - ldrb r1, [r0] - cmp r1, 0x6 - beq _08070C56 - cmp r1, 0x1 - beq _08070C56 - adds r0, r5, 0 - adds r0, 0xBC - ldrb r3, [r0] - adds r4, r0, 0 - cmp r3, 0x2 - beq _08070C56 - ldrb r2, [r6] - cmp r2, 0x1 - beq _08070C56 - adds r0, r5, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070C56 - cmp r2, 0x5 - beq _08070C56 - cmp r3, 0x1 - beq _08070C56 - cmp r1, 0x3 - beq _08070C56 - cmp r1, 0x4 - beq _08070C56 - adds r0, r5, 0 - adds r0, 0xE8 - ldrb r1, [r0] - cmp r1, 0x2 - beq _08070C56 - adds r0, r5, 0 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x2 - beq _08070C56 - cmp r1, 0x1 - beq _08070C56 - ldrb r0, [r4] - cmp r0, 0x7 - beq _08070C56 - cmp r0, 0x3 - beq _08070C56 - movs r0, 0x1 - b _08070C58 -_08070C56: - movs r0, 0 -_08070C58: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8070BC0 - - thumb_func_start sub_8070C60 -sub_8070C60: - push {r4,lr} - adds r4, r0, 0 - ldr r1, [r4, 0x70] - adds r0, r1, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070CC6 - adds r0, r1, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08070C7E - cmp r0, 0x47 - bne _08070C82 -_08070C7E: - movs r0, 0x1 - b _08070C84 -_08070C82: - movs r0, 0 -_08070C84: - cmp r0, 0 - bne _08070CC6 - ldrb r0, [r1, 0x7] - cmp r0, 0 - bne _08070C9A - adds r0, r4, 0 - bl sub_8071494 - lsls r0, 24 - cmp r0, 0 - bne _08070CC6 -_08070C9A: - adds r0, r4, 0 - movs r1, 0 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - bne _08070CC6 - adds r0, r4, 0 - bl sub_8070CD0 - lsls r0, 24 - cmp r0, 0 - bne _08070CC6 - adds r0, r4, 0 - movs r1, 0 - bl sub_80570F4 - lsls r0, 24 - cmp r0, 0 - bne _08070CC6 - movs r0, 0 - b _08070CC8 -_08070CC6: - movs r0, 0x1 -_08070CC8: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8070C60 - - thumb_func_start sub_8070CD0 -sub_8070CD0: - push {lr} - ldr r1, [r0, 0x70] - adds r0, r1, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x2 - beq _08070CE2 - cmp r0, 0 - bne _08070CFE -_08070CE2: - adds r0, r1, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070CFE - cmp r0, 0x6 - beq _08070CFE - adds r0, r1, 0 - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070CFE - movs r0, 0 - b _08070D00 -_08070CFE: - movs r0, 0x1 -_08070D00: - pop {r1} - bx r1 - thumb_func_end sub_8070CD0 - - thumb_func_start sub_8070D04 -sub_8070D04: - push {lr} - adds r3, r0, 0 - lsls r1, 24 - ldr r2, [r3, 0x70] - cmp r1, 0 - bne _08070D22 - adds r0, r2, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x2 - beq _08070D22 - cmp r0, 0x4 - beq _08070D22 - cmp r0, 0 - bne _08070D64 -_08070D22: - adds r0, r2, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070D64 - cmp r0, 0x3 - beq _08070D64 - cmp r0, 0x4 - beq _08070D64 - cmp r0, 0x6 - beq _08070D64 - adds r0, r2, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x1 - beq _08070D64 - cmp r0, 0x3 - beq _08070D64 - cmp r0, 0x7 - beq _08070D64 - adds r0, r2, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x4 - beq _08070D64 - adds r0, r3, 0 - bl sub_8071494 - lsls r0, 24 - cmp r0, 0 - bne _08070D64 - movs r0, 0 - b _08070D66 -_08070D64: - movs r0, 0x1 -_08070D66: - pop {r1} - bx r1 - thumb_func_end sub_8070D04 - - thumb_func_start sub_8070D6C -sub_8070D6C: - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r1, 0 - ldr r0, [r4, 0x70] - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r5, r0, 24 - movs r2, 0x4 - ldrsh r0, [r4, r2] - ldr r1, _08070DD8 - lsls r2, r6, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r4, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08070E34 - ldr r0, [r2, 0x10] - cmp r0, 0 - bne _08070E34 - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - bne _08070E04 - ldr r0, [r4, 0x70] - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08070DD2 - adds r0, r4, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08070DDC -_08070DD2: - movs r5, 0x3 - b _08070E04 - .align 2, 0 -_08070DD8: .4byte gUnknown_80F4448 -_08070DDC: - adds r0, r4, 0 - movs r1, 0xC - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _08070E02 - adds r0, r4, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08070E04 - movs r0, 0x1 - ands r0, r6 - movs r5, 0x3 - cmp r0, 0 - beq _08070E04 -_08070E02: - movs r5, 0x2 -_08070E04: - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r2, r0, 0 - adds r1, r2, 0 - adds r1, 0xA - adds r1, r5 - ldr r2, _08070E30 - movs r0, 0x7 - ands r0, r6 - adds r0, r2 - ldrb r1, [r1] - ldrb r0, [r0] - ands r0, r1 - cmp r0, 0 - beq _08070E34 - movs r0, 0x1 - b _08070E36 - .align 2, 0 -_08070E30: .4byte gUnknown_8106FAD -_08070E34: - movs r0, 0 -_08070E36: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8070D6C - - thumb_func_start sub_8070E3C -sub_8070E3C: - push {r4-r7,lr} - adds r4, r0, 0 - adds r6, r1, 0 - adds r7, r2, 0 - ldr r0, [r4, 0x70] - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r5, r0, 24 - movs r2, 0 - ldrsh r0, [r6, r2] - ldr r1, _08070EB0 - lsls r2, r7, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x2 - ldrsh r1, [r6, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08070F0C - ldr r0, [r2, 0x10] - cmp r0, 0 - beq _08070E8A - bl sub_80450F8 - cmp r0, 0x1 - bne _08070F0C -_08070E8A: - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - bne _08070EDC - ldr r0, [r4, 0x70] - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08070EAC - adds r0, r4, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08070EB4 -_08070EAC: - movs r5, 0x3 - b _08070EDC - .align 2, 0 -_08070EB0: .4byte gUnknown_80F4448 -_08070EB4: - adds r0, r4, 0 - movs r1, 0xC - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _08070EDA - adds r0, r4, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08070EDC - movs r0, 0x1 - ands r0, r7 - movs r5, 0x3 - cmp r0, 0 - beq _08070EDC -_08070EDA: - movs r5, 0x2 -_08070EDC: - movs r1, 0 - ldrsh r0, [r6, r1] - movs r2, 0x2 - ldrsh r1, [r6, r2] - bl sub_804954C - adds r2, r0, 0 - adds r1, r2, 0 - adds r1, 0xA - adds r1, r5 - ldr r2, _08070F08 - movs r0, 0x7 - ands r0, r7 - adds r0, r2 - ldrb r1, [r1] - ldrb r0, [r0] - ands r0, r1 - cmp r0, 0 - beq _08070F0C - movs r0, 0x1 - b _08070F0E - .align 2, 0 -_08070F08: .4byte gUnknown_8106FB5 -_08070F0C: - movs r0, 0 -_08070F0E: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8070E3C - - thumb_func_start sub_8070F14 -sub_8070F14: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r1, 0x4 - ldrsh r0, [r4, r1] - ldr r1, _08070F70 - lsls r2, r5, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r4, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08070F78 - ldr r0, [r2, 0x10] - cmp r0, 0 - bne _08070F78 - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r2, r0, 0 - ldr r1, _08070F74 - movs r0, 0x7 - ands r0, r5 - adds r0, r1 - ldrb r1, [r2, 0xA] - ldrb r0, [r0] - ands r0, r1 - cmp r0, 0 - beq _08070F78 - movs r0, 0x1 - b _08070F7A - .align 2, 0 -_08070F70: .4byte gUnknown_80F4448 -_08070F74: .4byte gUnknown_8106FBD -_08070F78: - movs r0, 0 -_08070F7A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8070F14 - - thumb_func_start sub_8070F80 -sub_8070F80: - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r1, 0 - ldr r0, [r4, 0x70] - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r5, r0, 24 - movs r2, 0x4 - ldrsh r0, [r4, r2] - ldr r1, _08070FF4 - lsls r2, r6, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r4, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08071050 - ldr r0, [r2, 0x10] - cmp r0, 0 - beq _08070FCC - bl sub_80450F8 - cmp r0, 0x1 - bne _08071050 -_08070FCC: - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - bne _08071020 - ldr r0, [r4, 0x70] - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08070FEE - adds r0, r4, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08070FF8 -_08070FEE: - movs r5, 0x3 - b _08071020 - .align 2, 0 -_08070FF4: .4byte gUnknown_80F4448 -_08070FF8: - adds r0, r4, 0 - movs r1, 0xC - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _0807101E - adds r0, r4, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08071020 - movs r0, 0x1 - ands r0, r6 - movs r5, 0x3 - cmp r0, 0 - beq _08071020 -_0807101E: - movs r5, 0x2 -_08071020: - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r2, r0, 0 - adds r1, r2, 0 - adds r1, 0xA - adds r1, r5 - ldr r2, _0807104C - movs r0, 0x7 - ands r0, r6 - adds r0, r2 - ldrb r1, [r1] - ldrb r0, [r0] - ands r0, r1 - cmp r0, 0 - beq _08071050 - movs r0, 0x1 - b _08071052 - .align 2, 0 -_0807104C: .4byte gUnknown_8106FC5 -_08071050: - movs r0, 0 -_08071052: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8070F80 - - thumb_func_start sub_8071058 -sub_8071058: - push {r4-r7,lr} - adds r5, r0, 0 - adds r7, r1, 0 - ldr r0, [r5, 0x70] - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r6, r0, 24 - movs r2, 0x4 - ldrsh r0, [r5, r2] - ldr r1, _080710D4 - lsls r2, r7, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r5, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - adds r4, r0, 0 - ldrh r1, [r4] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08071130 - ldr r0, [r4, 0x10] - cmp r0, 0 - beq _080710AE - bl sub_80450F8 - cmp r0, 0x1 - beq _080710AE - ldr r0, [r4, 0x10] - ldr r0, [r0, 0x70] - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _08071130 -_080710AE: - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - bne _08071100 - ldr r0, [r5, 0x70] - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _080710D0 - adds r0, r5, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _080710D8 -_080710D0: - movs r6, 0x3 - b _08071100 - .align 2, 0 -_080710D4: .4byte gUnknown_80F4448 -_080710D8: - adds r0, r5, 0 - movs r1, 0xC - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _080710FE - adds r0, r5, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08071100 - movs r0, 0x1 - ands r0, r7 - movs r6, 0x3 - cmp r0, 0 - beq _08071100 -_080710FE: - movs r6, 0x2 -_08071100: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_804954C - adds r4, r0, 0 - adds r1, r4, 0 - adds r1, 0xA - adds r1, r6 - ldr r2, _0807112C - movs r0, 0x7 - ands r0, r7 - adds r0, r2 - ldrb r1, [r1] - ldrb r0, [r0] - ands r0, r1 - cmp r0, 0 - beq _08071130 - movs r0, 0x1 - b _08071132 - .align 2, 0 -_0807112C: .4byte gUnknown_8106FCD -_08071130: - movs r0, 0 -_08071132: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8071058 - - thumb_func_start sub_8071138 -sub_8071138: - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r1, 0 - ldr r0, [r4, 0x70] - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x1 - bhi _08071152 - movs r5, 0x2 -_08071152: - movs r2, 0x4 - ldrsh r0, [r4, r2] - ldr r1, _080711B0 - lsls r2, r6, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r4, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0807120C - ldr r0, [r2, 0x10] - cmp r0, 0 - beq _0807118A - bl sub_80450F8 - cmp r0, 0x1 - bne _0807120C -_0807118A: - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - bne _080711DC - ldr r0, [r4, 0x70] - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _080711AC - adds r0, r4, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _080711B4 -_080711AC: - movs r5, 0x3 - b _080711DC - .align 2, 0 -_080711B0: .4byte gUnknown_80F4448 -_080711B4: - adds r0, r4, 0 - movs r1, 0xC - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _080711DA - adds r0, r4, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _080711DC - movs r0, 0x1 - ands r0, r6 - movs r5, 0x3 - cmp r0, 0 - beq _080711DC -_080711DA: - movs r5, 0x2 -_080711DC: - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r2, r0, 0 - adds r1, r2, 0 - adds r1, 0xA - adds r1, r5 - ldr r2, _08071208 - movs r0, 0x7 - ands r0, r6 - adds r0, r2 - ldrb r1, [r1] - ldrb r0, [r0] - ands r0, r1 - cmp r0, 0 - beq _0807120C - movs r0, 0x1 - b _0807120E - .align 2, 0 -_08071208: .4byte gUnknown_8106FD5 -_0807120C: - movs r0, 0 -_0807120E: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8071138 - - thumb_func_start sub_8071214 -sub_8071214: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - adds r7, r1, 0 - mov r8, r2 - ldr r0, [r4, 0x70] - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r6, r0, 24 - movs r0, 0 - mov r2, r8 - strb r0, [r2] - movs r3, 0x4 - ldrsh r0, [r4, r3] - ldr r1, _0807130C - lsls r2, r7, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r4, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - adds r5, r0, 0 - ldrh r1, [r5] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08071260 - b _0807137E -_08071260: - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08071286 - ldr r0, _08071310 - ldr r0, [r0] - ldr r1, _08071314 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08071286 - adds r0, r4, 0 - movs r1, 0xF - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08071286 - b _0807137E -_08071286: - ldr r0, [r5, 0x14] - cmp r0, 0 - beq _080712B8 - adds r0, r4, 0 - movs r1, 0xE - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _080712B8 - ldr r0, [r5, 0x14] - bl sub_80450F8 - cmp r0, 0x2 - bne _080712B8 - ldr r0, [r5, 0x14] - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - bne _0807137E - ldr r0, [r4, 0x70] - adds r0, 0xE8 - ldrb r0, [r0] - cmp r0, 0x3 - beq _0807137E -_080712B8: - ldrh r1, [r5] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x2 - bne _080712E6 - ldr r1, _08071318 - ldr r0, _08071310 - ldr r0, [r0] - ldr r2, _0807131C - adds r0, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080712E6 - adds r0, r4, 0 - movs r1, 0x14 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _0807137E -_080712E6: - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - bne _08071348 - ldr r0, [r4, 0x70] - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08071308 - adds r0, r4, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08071320 -_08071308: - movs r6, 0x3 - b _08071348 - .align 2, 0 -_0807130C: .4byte gUnknown_80F4448 -_08071310: .4byte gUnknown_203B418 -_08071314: .4byte 0x00000671 -_08071318: .4byte gUnknown_810ACC0 -_0807131C: .4byte 0x00003a0e -_08071320: - adds r0, r4, 0 - movs r1, 0xC - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _08071346 - adds r0, r4, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08071348 - movs r0, 0x1 - ands r0, r7 - movs r6, 0x3 - cmp r0, 0 - beq _08071348 -_08071346: - movs r6, 0x2 -_08071348: - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r0, 0xA - adds r0, r6 - ldr r2, _08071374 - movs r1, 0x7 - ands r1, r7 - adds r1, r2 - ldrb r2, [r0] - ldrb r0, [r1] - ands r0, r2 - cmp r0, 0 - beq _0807137E - ldr r0, [r5, 0x10] - cmp r0, 0 - bne _08071378 - movs r0, 0x1 - b _08071380 - .align 2, 0 -_08071374: .4byte gUnknown_8106FDD -_08071378: - movs r0, 0x1 - mov r3, r8 - strb r0, [r3] -_0807137E: - movs r0, 0 -_08071380: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8071214 - - thumb_func_start sub_807138C -sub_807138C: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x70] - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_8070328 - lsls r0, 24 - lsrs r5, r0, 24 - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - bne _080713E2 - ldr r0, [r4, 0x70] - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _080713E0 - adds r0, r4, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _080713E0 - adds r0, r4, 0 - movs r1, 0xC - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _080713D2 - movs r5, 0x2 - b _080713E2 -_080713D2: - adds r0, r4, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _080713E2 -_080713E0: - movs r5, 0x3 -_080713E2: - cmp r5, 0x3 - bne _08071408 - ldr r4, [r4, 0x70] - movs r0, 0x64 - bl sub_8084100 - movs r1, 0xFD - lsls r1, 1 - adds r2, r4, r1 - ldrh r1, [r2] - adds r1, r0 - strh r1, [r2] - lsls r1, 16 - asrs r1, 16 - cmp r1, 0xC7 - ble _08071458 - movs r0, 0 - strh r0, [r2] - b _08071468 -_08071408: - ldr r1, _0807145C - ldr r0, _08071460 - ldr r0, [r0] - ldr r2, _08071464 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08071432 - cmp r5, 0x1 - bne _08071432 - adds r0, r4, 0 - movs r1, 0x14 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08071432 - movs r5, 0 -_08071432: - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_804954C - adds r0, 0xA - adds r0, r5 - ldrb r0, [r0] - cmp r0, 0x54 - beq _08071468 - cmp r0, 0x51 - beq _08071468 - cmp r0, 0x45 - beq _08071468 - cmp r0, 0x15 - beq _08071468 - cmp r0, 0x55 - beq _08071468 -_08071458: - movs r0, 0 - b _0807146A - .align 2, 0 -_0807145C: .4byte gUnknown_810ACC0 -_08071460: .4byte gUnknown_203B418 -_08071464: .4byte 0x00003a0e -_08071468: - movs r0, 0x1 -_0807146A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_807138C - - thumb_func_start sub_8071470 -sub_8071470: - push {r4,lr} - lsls r1, 24 - lsrs r4, r1, 24 - movs r1, 0x3 - bl sub_80718AC - lsls r0, 24 - cmp r0, 0 - beq _0807148A - cmp r4, 0 - beq _0807148A - movs r0, 0x1 - b _0807148C -_0807148A: - movs r0, 0 -_0807148C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8071470 - - thumb_func_start sub_8071494 -sub_8071494: - push {r4,r5,lr} - adds r5, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807150E - ldr r4, [r5, 0x70] - adds r0, r4, 0 - adds r0, 0xFA - ldrb r0, [r0] - cmp r0, 0 - bne _0807150A - ldrb r0, [r4, 0x7] - cmp r0, 0 - bne _0807150E - adds r0, r5, 0 - movs r1, 0x2B - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _080714DC - movs r2, 0 - movs r1, 0x10 - ldrsh r0, [r4, r1] - lsrs r1, r0, 31 - adds r0, r1 - movs r3, 0xE - ldrsh r1, [r4, r3] - asrs r0, 1 - cmp r1, r0 - bge _080714D8 - movs r2, 0x1 -_080714D8: - cmp r2, 0 - bne _0807150A -_080714DC: - adds r0, r5, 0 - movs r1, 0xA - bl sub_80718AC - lsls r0, 24 - cmp r0, 0 - bne _0807150A - adds r0, r5, 0 - movs r1, 0x6 - bl sub_80718AC - lsls r0, 24 - cmp r0, 0 - beq _0807150E - movs r1, 0x10 - ldrsh r0, [r4, r1] - lsrs r1, r0, 31 - adds r0, r1 - movs r2, 0xE - ldrsh r1, [r4, r2] - asrs r0, 1 - cmp r1, r0 - bgt _0807150E -_0807150A: - movs r0, 0x1 - b _08071510 -_0807150E: - movs r0, 0 -_08071510: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8071494 - - thumb_func_start sub_8071518 -sub_8071518: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - bl sub_8071494 - lsls r0, 24 - cmp r0, 0 - bne _0807152E - movs r0, 0 - b _08071538 -_0807152E: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8071540 - movs r0, 0x1 -_08071538: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8071518 - - thumb_func_start sub_8071540 -sub_8071540: - push {r4-r7,lr} - adds r5, r0, 0 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r4, [r5, 0x70] - adds r6, r4, 0 - ldrb r0, [r4, 0x7] - cmp r0, 0 - bne _08071590 - adds r0, r5, 0 - movs r1, 0x2B - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08071590 - movs r2, 0 - movs r1, 0x10 - ldrsh r0, [r4, r1] - lsrs r1, r0, 31 - adds r0, r1 - movs r3, 0xE - ldrsh r1, [r4, r3] - asrs r0, 1 - cmp r1, r0 - bgt _08071576 - movs r2, 0x1 -_08071576: - adds r0, r6, 0 - movs r1, 0x4 - bl sub_8071ACC - lsls r0, 24 - lsrs r0, 24 - cmp r7, 0 - beq _08071590 - cmp r0, 0 - beq _08071590 - adds r0, r5, 0 - bl sub_8042910 -_08071590: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8071540 - - thumb_func_start sub_8071598 -sub_8071598: - push {r4-r6,lr} - adds r6, r0, 0 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - ldr r5, [r6, 0x70] - ldr r4, [r1, 0x70] - cmp r6, r1 - bne _080715B0 - movs r0, 0 - b _08071670 -_080715B0: - ldrb r0, [r5, 0x8] - cmp r0, 0x1 - beq _08071606 - ldrb r0, [r4, 0x8] - cmp r0, 0x1 - beq _08071606 - adds r0, r5, 0 - adds r0, 0xA4 - ldrb r1, [r0] - cmp r1, 0x4 - beq _08071606 - adds r0, r4, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x4 - beq _08071606 - cmp r1, 0x1 - beq _08071606 - cmp r0, 0x1 - beq _08071606 - cmp r3, 0 - beq _080715EC - ldrb r0, [r5, 0x6] - cmp r0, 0 - bne _080715EC - adds r0, r4, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x6 - beq _08071606 -_080715EC: - cmp r2, 0 - bne _0807160A - adds r0, r4, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807160A - adds r0, r6, 0 - bl sub_8071884 - lsls r0, 24 - cmp r0, 0 - bne _0807160A -_08071606: - movs r0, 0x2 - b _08071670 -_0807160A: - movs r1, 0x80 - lsls r1, 1 - adds r0, r5, r1 - ldrb r0, [r0] - movs r6, 0 - cmp r0, 0 - beq _08071620 - movs r6, 0x2 - cmp r0, 0x1 - bne _08071620 - movs r6, 0x1 -_08071620: - ldrb r0, [r5, 0x8] - cmp r0, 0 - beq _08071630 - movs r5, 0 - cmp r0, 0x3 - bne _08071638 - movs r5, 0x1 - b _08071638 -_08071630: - ldrb r1, [r5, 0x6] - negs r0, r1 - orrs r0, r1 - lsrs r5, r0, 31 -_08071638: - ldrb r0, [r4, 0x8] - cmp r0, 0 - beq _08071648 - movs r1, 0 - cmp r0, 0x3 - bne _08071650 - movs r1, 0x1 - b _08071650 -_08071648: - ldrb r1, [r4, 0x6] - negs r0, r1 - orrs r0, r1 - lsrs r1, r0, 31 -_08071650: - movs r3, 0 - adds r0, r4, 0 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x2 - bne _0807165E - movs r3, 0x1 -_0807165E: - ldr r2, _08071678 - lsls r0, r1, 1 - adds r0, r3, r0 - lsls r1, r5, 2 - adds r0, r1 - lsls r1, r6, 3 - adds r0, r1 - adds r0, r2 - ldrb r0, [r0] -_08071670: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08071678: .4byte gUnknown_8106FE5 - thumb_func_end sub_8071598 - - thumb_func_start sub_807167C -sub_807167C: - push {lr} - ldr r2, [r0, 0x70] - ldr r1, [r1, 0x70] - adds r0, r2, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080716D2 - adds r0, r2, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _0807169A - cmp r0, 0x47 - bne _0807169E -_0807169A: - movs r0, 0x1 - b _080716A0 -_0807169E: - movs r0, 0 -_080716A0: - cmp r0, 0 - bne _080716D2 - ldrb r0, [r2, 0x8] - cmp r0, 0 - bne _080716D2 - adds r0, r1, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080716D2 - adds r0, r1, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _080716C2 - cmp r0, 0x47 - bne _080716C6 -_080716C2: - movs r0, 0x1 - b _080716C8 -_080716C6: - movs r0, 0 -_080716C8: - cmp r0, 0 - bne _080716D2 - ldrb r0, [r1, 0x8] - cmp r0, 0 - beq _080716D6 -_080716D2: - movs r0, 0x2 - b _080716E4 -_080716D6: - ldrb r0, [r2, 0x6] - ldrb r1, [r1, 0x6] - cmp r0, r1 - bne _080716E2 - movs r0, 0 - b _080716E4 -_080716E2: - movs r0, 0x1 -_080716E4: - pop {r1} - bx r1 - thumb_func_end sub_807167C - - thumb_func_start sub_80716E8 -sub_80716E8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - ldr r0, [r4, 0x70] - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x2 - bne _08071720 - cmp r2, 0 - beq _08071714 - ldr r0, _08071718 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807171C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08071714: - movs r0, 0x1 - b _08071722 - .align 2, 0 -_08071718: .4byte gUnknown_202DF98 -_0807171C: .4byte gUnknown_80FC2FC -_08071720: - movs r0, 0 -_08071722: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80716E8 - - thumb_func_start sub_8071728 -sub_8071728: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - adds r5, r2, 0 - ldr r0, [r4, 0x70] - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0xE - bne _08071758 - cmp r2, 0 - beq _0807178E - ldr r0, _08071750 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08071754 - b _08071784 - .align 2, 0 -_08071750: .4byte gUnknown_202DF98 -_08071754: .4byte gUnknown_80FC31C -_08071758: - adds r0, r4, 0 - movs r1, 0xF - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _08071774 - adds r0, r4, 0 - movs r1, 0x18 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807179C -_08071774: - cmp r5, 0 - beq _0807178E - ldr r0, _08071794 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08071798 -_08071784: - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_0807178E: - movs r0, 0x1 - b _0807179E - .align 2, 0 -_08071794: .4byte gUnknown_202DF98 -_08071798: .4byte gUnknown_80FCEFC -_0807179C: - movs r0, 0 -_0807179E: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8071728 - - thumb_func_start sub_80717A4 -sub_80717A4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r8, r0 - lsls r1, 16 - lsrs r1, 16 - mov r9, r1 - ldr r6, [r0, 0x70] - adds r0, r6, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080717CE - cmp r0, 0x5 - beq _080717CE - cmp r0, 0x3 - beq _080717CE - b _08071816 -_080717CA: - movs r0, 0x1 - b _08071818 -_080717CE: - movs r7, 0 - movs r0, 0x8C - lsls r0, 1 - adds r4, r6, r0 - adds r5, r4, 0 -_080717D8: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0807180C - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _080717F0 - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0807180C -_080717F0: - mov r0, r8 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_805744C - lsls r0, 24 - cmp r0, 0 - beq _0807180C - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _0807180C - ldrh r0, [r4, 0x2] - cmp r0, r9 - beq _080717CA -_0807180C: - adds r4, 0x8 - adds r5, 0x8 - adds r7, 0x1 - cmp r7, 0x3 - ble _080717D8 -_08071816: - movs r0, 0 -_08071818: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80717A4 - - thumb_func_start sub_8071824 -sub_8071824: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08071850 - ldr r1, [r4, 0x70] - adds r0, r1, 0 - adds r0, 0x5E - ldrb r0, [r0] - cmp r0, r5 - beq _0807184C - adds r0, r1, 0 - adds r0, 0x5F - ldrb r0, [r0] - cmp r0, r5 - bne _08071850 -_0807184C: - movs r0, 0x1 - b _08071852 -_08071850: - movs r0, 0 -_08071852: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8071824 - - thumb_func_start sub_8071858 -sub_8071858: - push {lr} - lsls r1, 24 - lsrs r1, 24 - adds r3, r1, 0 - ldr r0, [r0, 0x70] - adds r2, r0, 0 - cmp r1, 0 - beq _0807187A - adds r0, 0x5C - ldrb r0, [r0] - cmp r0, r1 - beq _0807187E - adds r0, r2, 0 - adds r0, 0x5D - ldrb r0, [r0] - cmp r0, r3 - beq _0807187E -_0807187A: - movs r0, 0 - b _08071880 -_0807187E: - movs r0, 0x1 -_08071880: - pop {r1} - bx r1 - thumb_func_end sub_8071858 - - thumb_func_start sub_8071884 -sub_8071884: - push {lr} - adds r1, r0, 0 - ldr r0, [r1, 0x70] - adds r0, 0xE8 - ldrb r0, [r0] - cmp r0, 0x3 - beq _080718A4 - adds r0, r1, 0 - movs r1, 0x1A - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _080718A4 - movs r0, 0 - b _080718A6 -_080718A4: - movs r0, 0x1 -_080718A6: - pop {r1} - bx r1 - thumb_func_end sub_8071884 - - thumb_func_start sub_80718AC -sub_80718AC: - push {lr} - lsls r1, 24 - lsrs r1, 24 - ldr r2, [r0, 0x70] - ldrb r0, [r2, 0x7] - cmp r0, 0 - beq _080718C4 - movs r0, 0 - cmp r1, 0x1 - bne _080718D4 - movs r0, 0x1 - b _080718D4 -_080718C4: - movs r3, 0 - adds r0, r2, 0 - adds r0, 0x94 - ldrb r0, [r0] - cmp r0, r1 - bne _080718D2 - movs r3, 0x1 -_080718D2: - adds r0, r3, 0 -_080718D4: - pop {r1} - bx r1 - thumb_func_end sub_80718AC - - thumb_func_start sub_80718D8 -sub_80718D8: - push {lr} - lsls r2, r1, 24 - lsrs r2, 24 - ldr r0, [r0, 0x70] - adds r0, 0x90 - movs r1, 0x1 - lsls r1, r2 - bl sub_808ECD0 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_80718D8 - - thumb_func_start sub_80718F4 -sub_80718F4: - push {r4,lr} - adds r4, r1, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r0, [r0, 0x70] - adds r0, 0x90 - movs r3, 0x1 - adds r1, r3, 0 - lsls r1, r4 - lsls r3, r2 - orrs r1, r3 - bl sub_808ECD0 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80718F4 - - thumb_func_start sub_807191C -sub_807191C: - push {r4-r6,lr} - ldr r5, [r0, 0x70] - ldrb r1, [r5, 0x6] - cmp r1, 0 - beq _08071978 - adds r4, r5, 0 - adds r4, 0x90 - adds r0, r4, 0 - movs r1, 0x8 - bl sub_808EC30 - adds r0, r4, 0 - movs r1, 0x6 - bl sub_808EC30 - adds r0, r4, 0 - movs r1, 0x2 - bl sub_808EC30 - adds r0, r5, 0 - adds r0, 0xF7 - ldrb r0, [r0] - cmp r0, 0 - beq _08071954 - adds r0, r4, 0 - movs r1, 0x12 - bl sub_808EC30 -_08071954: - ldrb r0, [r5, 0x9] - ldr r1, _08071974 - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - blt _08071968 - adds r0, r4, 0 - movs r1, 0x16 - bl sub_808EC30 -_08071968: - adds r1, r5, 0 - adds r1, 0x94 - movs r0, 0x2 - strb r0, [r1] - b _080719BE - .align 2, 0 -_08071974: .4byte gUnknown_80F59C4 -_08071978: - adds r0, r5, 0 - adds r0, 0x90 - strb r1, [r0] - adds r2, r5, 0 - adds r2, 0x91 - strb r1, [r2] - adds r2, 0x1 - strb r1, [r2] - movs r4, 0x1 - adds r6, r0, 0 -_0807198C: - movs r1, 0xC - ldrsh r0, [r5, r1] - lsls r1, r4, 24 - lsrs r1, 24 - bl sub_808EB7C - lsls r0, 24 - cmp r0, 0 - beq _080719B8 - movs r1, 0x1 - lsls r1, r4 - adds r0, r5, 0 - adds r0, 0x8C - bl sub_808ECD0 - lsls r0, 24 - cmp r0, 0 - beq _080719B8 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_808EC30 -_080719B8: - adds r4, 0x1 - cmp r4, 0x17 - ble _0807198C -_080719BE: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_807191C - - thumb_func_start sub_80719C4 -sub_80719C4: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r0, [r5, 0x70] - ldrb r0, [r0, 0x6] - cmp r0, 0 - beq _080719D6 - b _08071A0A -_080719D2: - movs r0, 0x1 - b _08071A0C -_080719D6: - movs r6, 0 -_080719D8: - ldr r0, _08071A14 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _08071A18 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08071A04 - cmp r5, r4 - beq _08071A04 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - bne _080719D2 -_08071A04: - adds r6, 0x1 - cmp r6, 0x3 - ble _080719D8 -_08071A0A: - movs r0, 0 -_08071A0C: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08071A14: .4byte gUnknown_203B418 -_08071A18: .4byte 0x0001357c - thumb_func_end sub_80719C4 - - thumb_func_start sub_8071A1C -sub_8071A1C: - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - ldrh r1, [r2, 0x2] - movs r0, 0xA2 - lsls r0, 1 - cmp r1, r0 - beq _08071A38 - adds r0, r2, 0 - bl sub_8092B00 - lsls r0, 24 - lsrs r0, 24 - b _08071A3E -_08071A38: - ldr r0, [r3, 0x70] - adds r0, 0x3E - ldrb r0, [r0] -_08071A3E: - pop {r1} - bx r1 - thumb_func_end sub_8071A1C - - thumb_func_start sub_8071A44 -sub_8071A44: - push {r4,lr} - adds r2, r0, 0 - adds r4, r1, 0 - ldrh r1, [r4, 0x2] - movs r0, 0xA2 - lsls r0, 1 - cmp r1, r0 - beq _08071A60 - adds r0, r4, 0 - bl sub_8092BC0 - ldrb r1, [r4, 0x5] - adds r0, r1 - b _08071A6A -_08071A60: - ldr r0, [r2, 0x70] - movs r1, 0x3C - ldrsh r0, [r0, r1] - ldrb r4, [r4, 0x5] - adds r0, r4 -_08071A6A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8071A44 - - thumb_func_start sub_8071A70 -sub_8071A70: - push {lr} - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_808DBD8 - lsls r0, 24 - cmp r0, 0 - beq _08071A84 - movs r0, 0x1 - b _08071A86 -_08071A84: - movs r0, 0 -_08071A86: - pop {r1} - bx r1 - thumb_func_end sub_8071A70 - - thumb_func_start sub_8071A8C -sub_8071A8C: - push {r4,lr} - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08071AC2 - ldr r1, [r4, 0x70] - adds r0, r1, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08071AC2 - adds r0, r1, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08071AB4 - cmp r0, 0x47 - bne _08071AB8 -_08071AB4: - movs r0, 0x1 - b _08071ABA -_08071AB8: - movs r0, 0 -_08071ABA: - cmp r0, 0 - bne _08071AC2 - movs r0, 0x1 - b _08071AC4 -_08071AC2: - movs r0, 0 -_08071AC4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8071A8C - - thumb_func_start sub_8071ACC -sub_8071ACC: - push {r4,r5,lr} - adds r3, r0, 0 - lsls r1, 16 - lsrs r4, r1, 16 - lsls r2, 24 - lsrs r5, r2, 24 - movs r1, 0xA7 - lsls r1, 1 - adds r0, r3, r1 - ldrh r0, [r0] - ands r0, r4 - cmp r0, 0 - beq _08071AF6 - movs r0, 0xA8 - lsls r0, 1 - adds r2, r3, r0 - ldrh r1, [r2] - adds r0, r4, 0 - orrs r0, r1 - strh r0, [r2] - b _08071B02 -_08071AF6: - movs r0, 0xA8 - lsls r0, 1 - adds r1, r3, r0 - ldrh r0, [r1] - bics r0, r4 - strh r0, [r1] -_08071B02: - cmp r5, 0 - beq _08071B16 - movs r1, 0xA7 - lsls r1, 1 - adds r2, r3, r1 - ldrh r1, [r2] - adds r0, r4, 0 - orrs r0, r1 - strh r0, [r2] - b _08071B22 -_08071B16: - movs r0, 0xA7 - lsls r0, 1 - adds r1, r3, r0 - ldrh r0, [r1] - bics r0, r4 - strh r0, [r1] -_08071B22: - movs r1, 0xA8 - lsls r1, 1 - adds r0, r3, r1 - ldrh r0, [r0] - ands r0, r4 - cmp r0, 0 - bne _08071B40 - subs r1, 0x2 - adds r0, r3, r1 - ldrh r0, [r0] - ands r0, r4 - cmp r0, 0 - beq _08071B40 - movs r0, 0x1 - b _08071B42 -_08071B40: - movs r0, 0 -_08071B42: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8071ACC - - thumb_func_start sub_8071B48 -sub_8071B48: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - movs r0, 0 - mov r8, r0 - ldr r0, _08071B94 - ldr r6, [r0] - ldr r1, _08071B98 - adds r0, r6, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - bne _08071B66 - b _08071D3E -_08071B66: - subs r1, 0x20 - adds r0, r6, r1 - ldrb r0, [r0] - cmp r0, 0x15 - bne _08071B7C - ldr r2, _08071B9C - adds r0, r6, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08071B7C - b _08071D3E -_08071B7C: - ldr r0, _08071BA0 - adds r1, r6, r0 - ldrh r0, [r1] - adds r2, r0, 0x1 - strh r2, [r1] - ldr r1, _08071BA4 - adds r0, r6, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08071BAC - ldr r0, _08071BA8 - b _08071BAE - .align 2, 0 -_08071B94: .4byte gUnknown_203B418 -_08071B98: .4byte 0x00000664 -_08071B9C: .4byte 0x000037fd -_08071BA0: .4byte 0x00000662 -_08071BA4: .4byte 0x0000066e -_08071BA8: .4byte gUnknown_80F4DAA -_08071BAC: - ldr r0, _08071C60 -_08071BAE: - lsls r1, r2, 16 - asrs r1, 16 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r1, r0 - bge _08071BBC - b _08071D3E -_08071BBC: - ldr r1, _08071C64 - adds r0, r6, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0xE1 - lsls r0, 2 - cmp r1, r0 - ble _08071BF6 - ldr r1, _08071C68 - adds r0, r6, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08071BF6 - ldrh r0, [r4, 0x26] - ldr r2, _08071C6C - adds r1, r6, r2 - ldr r1, [r1] - cmp r0, r1 - bne _08071BF6 - ldr r0, _08071C70 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - mov r8, r4 -_08071BF6: - ldr r1, _08071C64 - adds r0, r6, r1 - movs r1, 0 - strh r1, [r0] - ldr r2, _08071C68 - adds r0, r6, r2 - str r1, [r0] - movs r7, 0 - movs r5, 0 -_08071C08: - lsls r0, r5, 2 - ldr r2, _08071C74 - adds r1, r6, r2 - adds r1, r0 - ldr r4, [r1] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08071C3A - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_804954C - ldrh r0, [r0] - movs r2, 0x80 - lsls r2, 1 - adds r1, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08071C3A - adds r7, 0x1 -_08071C3A: - adds r5, 0x1 - cmp r5, 0xF - ble _08071C08 - ldr r1, _08071C78 - adds r0, r6, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08071C92 - ldr r0, _08071C7C - ldr r0, [r0] - ldr r2, _08071C80 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0xFF - bne _08071C88 - ldr r0, _08071C84 - movs r1, 0 - ldrsh r0, [r0, r1] - b _08071C8E - .align 2, 0 -_08071C60: .4byte gUnknown_80F4DAC -_08071C64: .4byte 0x00000662 -_08071C68: .4byte 0x00017b34 -_08071C6C: .4byte 0x00017b40 -_08071C70: .4byte gUnknown_202DF98 -_08071C74: .4byte 0x0001358c -_08071C78: .4byte 0x0000066e -_08071C7C: .4byte gUnknown_203B418 -_08071C80: .4byte 0x00003a0c -_08071C84: .4byte gUnknown_80F4DA6 -_08071C88: - ldr r0, _08071CB8 - movs r2, 0 - ldrsh r0, [r0, r2] -_08071C8E: - cmp r7, r0 - bge _08071D3E -_08071C92: - mov r0, r8 - cmp r0, 0 - beq _08071CA8 - ldr r0, _08071CBC - ldr r1, [r0] - movs r0, 0 - bl sub_805239C - mov r0, r8 - bl sub_8042920 -_08071CA8: - ldr r1, _08071CC0 - adds r0, r6, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08071CC4 - movs r5, 0xBE - lsls r5, 1 - b _08071CCE - .align 2, 0 -_08071CB8: .4byte gUnknown_80F4DA8 -_08071CBC: .4byte gUnknown_80FED68 -_08071CC0: .4byte 0x0000066e -_08071CC4: - movs r0, 0 - bl sub_803D970 - lsls r0, 16 - asrs r5, r0, 16 -_08071CCE: - adds r0, r5, 0 - bl sub_803DA20 - adds r4, r0, 0 - cmp r4, 0 - bne _08071CDC - movs r4, 0x1 -_08071CDC: - adds r0, r5, 0 - movs r1, 0 - bl sub_806AA0C - lsls r0, 24 - cmp r0, 0 - beq _08071D3E - add r0, sp, 0xC - bl sub_8083660 - lsls r0, 24 - cmp r0, 0 - beq _08071D3E - mov r0, sp - movs r1, 0 - strh r5, [r0] - strh r4, [r0, 0x8] - strb r1, [r0, 0x2] - movs r0, 0x64 - bl sub_8084100 - adds r4, r0, 0 - ldr r0, _08071D24 - ldr r0, [r0] - ldr r2, _08071D28 - adds r0, r2 - ldrb r0, [r0] - bl sub_8090168 - lsls r0, 16 - asrs r0, 16 - cmp r4, r0 - bge _08071D2C - movs r0, 0x1 - b _08071D2E - .align 2, 0 -_08071D24: .4byte gUnknown_203B418 -_08071D28: .4byte 0x00000644 -_08071D2C: - movs r0, 0 -_08071D2E: - str r0, [sp, 0x4] - mov r1, sp - movs r0, 0 - strb r0, [r1, 0x10] - mov r0, sp - movs r1, 0 - bl sub_806B7F8 -_08071D3E: - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8071B48 - - thumb_func_start sub_8071D4C -sub_8071D4C: - push {lr} - ldr r3, [r1, 0x70] - ldrb r0, [r3, 0x9] - cmp r0, 0x64 - beq _08071D94 - adds r0, r3, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08071D64 - cmp r0, 0x47 - bne _08071D68 -_08071D64: - movs r0, 0x1 - b _08071D6A -_08071D68: - movs r0, 0 -_08071D6A: - cmp r0, 0 - bne _08071D94 - ldr r1, [r3, 0x18] - adds r2, r1, r2 - ldr r0, _08071D98 - cmp r2, r0 - ble _08071D7A - ldr r2, _08071D9C -_08071D7A: - subs r2, r1 - cmp r2, 0 - beq _08071D94 - movs r0, 0xFE - lsls r0, 1 - adds r1, r3, r0 - ldr r0, [r1] - adds r0, r2 - str r0, [r1] - ldr r0, _08071DA0 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0xD] -_08071D94: - pop {r0} - bx r0 - .align 2, 0 -_08071D98: .4byte 0x0098967e -_08071D9C: .4byte 0x0098967f -_08071DA0: .4byte gUnknown_203B418 - thumb_func_end sub_8071D4C - - thumb_func_start sub_8071DA4 -sub_8071DA4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xD4 - str r0, [sp, 0xB4] - ldr r2, _08071E44 - ldr r1, [r2] - ldrb r0, [r1, 0xD] - cmp r0, 0 - bne _08071DBE - b _08071FE2 -_08071DBE: - movs r0, 0 - strb r0, [r1, 0xD] - ldr r0, [r2] - ldrb r0, [r0, 0x10] - cmp r0, 0 - beq _08071DCC - b _08071FE2 -_08071DCC: - ldr r0, [sp, 0xB4] - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08071DE2 - mov r0, sp - bl sub_80457DC - mov r0, sp - str r0, [sp, 0xB4] -_08071DE2: - movs r4, 0 -_08071DE4: - movs r5, 0 - ldr r0, _08071E44 - ldr r0, [r0] - lsls r1, r4, 2 - ldr r2, _08071E48 - adds r0, r2 - adds r0, r1 - ldr r0, [r0] - mov r8, r0 - movs r0, 0 - str r0, [sp, 0xB8] - movs r1, 0 - movs r2, 0 - str r1, [sp, 0xBC] - str r2, [sp, 0xC0] - movs r0, 0 - movs r1, 0 - str r0, [sp, 0xC4] - str r1, [sp, 0xC8] - adds r1, r4, 0x1 - str r1, [sp, 0xCC] - mov r2, r8 - cmp r2, 0 - bne _08071E16 - b _08071FDA -_08071E16: - mov r0, r8 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08071E24 - b _08071FDA -_08071E24: - mov r0, r8 - ldr r6, [r0, 0x70] - movs r1, 0xE - ldrsh r0, [r6, r1] - cmp r0, 0 - bne _08071E32 - b _08071FDA -_08071E32: - adds r1, r6, 0 - adds r1, 0xF9 - ldrb r0, [r1] - cmp r0, 0 - beq _08071E4C - add r2, sp, 0xB8 - ldrb r2, [r2] - strb r2, [r1] - b _08071FCA - .align 2, 0 -_08071E44: .4byte gUnknown_203B418 -_08071E48: .4byte 0x000135cc -_08071E4C: - movs r1, 0xFE - lsls r1, 1 - adds r0, r6, r1 - ldr r0, [r0] - mov r10, r0 - cmp r0, 0 - beq _08071EB6 - ldrb r0, [r6, 0x7] - cmp r0, 0 - beq _08071E68 - ldrb r1, [r6, 0x9] - add r0, sp, 0x74 - bl sub_808EB48 -_08071E68: - movs r0, 0x10 - ldrsh r2, [r6, r0] - str r2, [sp, 0xB8] - ldrb r1, [r6, 0x14] - str r1, [sp, 0xBC] - ldrb r2, [r6, 0x15] - str r2, [sp, 0xC0] - ldrb r0, [r6, 0x16] - str r0, [sp, 0xC4] - ldrb r1, [r6, 0x17] - str r1, [sp, 0xC8] - ldrb r0, [r6, 0x9] - cmp r0, 0x64 - beq _08071EB6 - ldr r0, [r6, 0x18] - add r0, r10 - str r0, [r6, 0x18] - mov r2, r10 - ldr r0, _08071EE8 - str r2, [r0] - ldr r0, _08071EEC - adds r1, r6, 0 - movs r2, 0 - bl sub_80708B4 - ldr r0, _08071EF0 - ldr r2, [r0] - ldr r0, [sp, 0xB4] - mov r1, r8 - bl sub_80522F4 - ldr r0, [sp, 0xB4] - mov r1, r8 - movs r2, 0x1 - movs r3, 0x1 - bl sub_80723D0 - lsls r0, 24 - lsrs r5, r0, 24 -_08071EB6: - ldr r1, _08071EF4 - adds r0, r6, r1 - ldrb r0, [r0] - adds r4, 0x1 - str r4, [sp, 0xCC] - cmp r0, 0 - beq _08071F3A - movs r2, 0x2 - ldrsh r0, [r6, r2] - add r1, sp, 0x8C - movs r2, 0 - movs r3, 0 - bl sub_808E400 - adds r7, r0, 0 - add r0, sp, 0x8C - mov r9, r0 - cmp r7, 0 - beq _08071F38 - adds r0, r7, 0 - bl sub_8084100 - adds r4, r0, 0 - movs r1, 0 - b _08071F02 - .align 2, 0 -_08071EE8: .4byte gUnknown_202DE30 -_08071EEC: .4byte gUnknown_202DF98 -_08071EF0: .4byte gUnknown_80F9E64 -_08071EF4: .4byte 0x00000149 -_08071EF8: - adds r4, 0x1 - cmp r4, r7 - blt _08071F00 - movs r4, 0 -_08071F00: - adds r1, 0x1 -_08071F02: - cmp r1, r7 - bge _08071F38 - lsls r0, r4, 1 - mov r2, r9 - adds r5, r2, r0 - movs r2, 0 - ldrsh r0, [r5, r2] - str r1, [sp, 0xD0] - bl sub_803D930 - lsls r0, 24 - ldr r1, [sp, 0xD0] - cmp r0, 0 - beq _08071EF8 - movs r2, 0 - ldrsh r0, [r5, r2] - bl sub_80687D0 - ldr r1, [sp, 0xD0] - cmp r0, 0 - beq _08071EF8 - movs r0, 0 - ldrsh r2, [r5, r0] - ldr r0, [sp, 0xB4] - mov r1, r8 - bl sub_8072B78 -_08071F38: - movs r5, 0 -_08071F3A: - cmp r5, 0 - beq _08071F7A - ldrb r0, [r6, 0x6] - cmp r0, 0 - bne _08071F7A - movs r1, 0x10 - ldrsh r0, [r6, r1] - ldr r2, [sp, 0xB8] - subs r0, r2 - ldr r1, _08071FF4 - str r0, [r1] - ldrb r0, [r6, 0x14] - ldr r2, [sp, 0xBC] - subs r0, r2 - str r0, [r1, 0x4] - ldrb r0, [r6, 0x16] - ldr r1, [sp, 0xC4] - subs r0, r1 - ldr r2, _08071FF4 - str r0, [r2, 0x8] - ldrb r0, [r6, 0x15] - ldr r1, [sp, 0xC0] - subs r0, r1 - str r0, [r2, 0xC] - ldrb r0, [r6, 0x17] - ldr r2, [sp, 0xC8] - subs r0, r2 - ldr r1, _08071FF4 - str r0, [r1, 0x10] - mov r0, r8 - bl sub_807218C -_08071F7A: - mov r2, r10 - cmp r2, 0 - beq _08071FCA - ldrb r0, [r6, 0x7] - cmp r0, 0 - beq _08071FCA - ldrb r1, [r6, 0x9] - add r0, sp, 0x80 - bl sub_808EB48 - movs r4, 0 - add r7, sp, 0x74 - add r5, sp, 0x80 -_08071F94: - adds r0, r7, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _08071FC4 - adds r0, r5, r4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08071FC4 - ldr r0, _08071FF8 - mov r1, r8 - movs r2, 0 - bl sub_8045B94 - lsls r1, r4, 24 - lsrs r1, 24 - ldr r0, _08071FFC - bl sub_808EAC0 - ldr r0, _08072000 - ldr r2, [r0] - ldr r0, [sp, 0xB4] - mov r1, r8 - bl sub_80522F4 -_08071FC4: - adds r4, 0x1 - cmp r4, 0xB - ble _08071F94 -_08071FCA: - movs r1, 0xFE - lsls r1, 1 - adds r0, r6, r1 - movs r1, 0 - str r1, [r0] - ldr r2, _08072004 - adds r0, r6, r2 - strb r1, [r0] -_08071FDA: - ldr r4, [sp, 0xCC] - cmp r4, 0x13 - bgt _08071FE2 - b _08071DE4 -_08071FE2: - add sp, 0xD4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08071FF4: .4byte gUnknown_202DE30 -_08071FF8: .4byte gUnknown_202DF98 -_08071FFC: .4byte gUnknown_202DE58 -_08072000: .4byte gUnknown_80FF730 -_08072004: .4byte 0x00000149 - thumb_func_end sub_8071DA4 - - thumb_func_start sub_8072008 -sub_8072008: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x38 - mov r9, r0 - mov r8, r1 - adds r4, r2, 0 - ldr r0, [sp, 0x58] - lsls r3, 24 - lsrs r3, 24 - mov r10, r3 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x24] - mov r0, r8 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08072036 - b _08072162 -_08072036: - movs r0, 0 - str r0, [sp, 0x28] - mov r1, r8 - ldr r5, [r1, 0x70] - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _0807204C - add r0, sp, 0xC - ldrb r1, [r5, 0x9] - bl sub_808EB48 -_0807204C: - movs r0, 0x10 - ldrsh r2, [r5, r0] - str r2, [sp, 0x2C] - ldrb r6, [r5, 0x14] - ldrb r7, [r5, 0x15] - ldrb r1, [r5, 0x16] - str r1, [sp, 0x30] - ldrb r2, [r5, 0x17] - str r2, [sp, 0x34] - adds r0, r5, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _0807206C - cmp r0, 0x47 - bne _08072070 -_0807206C: - movs r0, 0x1 - b _08072072 -_08072070: - movs r0, 0 -_08072072: - cmp r0, 0 - bne _080720E6 - ldrb r0, [r5, 0x9] - adds r2, r0, r4 - cmp r2, 0x63 - ble _08072080 - movs r2, 0x64 -_08072080: - cmp r2, r0 - beq _080720E6 - movs r0, 0x2 - ldrsh r1, [r5, r0] - mov r0, sp - bl sub_808E010 - ldr r0, [sp] - str r0, [r5, 0x18] - mov r0, r9 - mov r1, r8 - mov r2, r10 - ldr r3, [sp, 0x24] - bl sub_80723D0 - ldr r1, [sp, 0x28] - orrs r1, r0 - lsls r0, r1, 24 - lsrs r0, 24 - str r0, [sp, 0x28] - cmp r0, 0 - beq _080720E6 - ldrb r0, [r5, 0x6] - cmp r0, 0 - bne _080720E6 - ldr r1, _08072174 - movs r2, 0x10 - ldrsh r0, [r5, r2] - ldr r2, [sp, 0x2C] - subs r0, r2 - str r0, [r1] - ldrb r0, [r5, 0x14] - subs r0, r6 - str r0, [r1, 0x4] - ldrb r0, [r5, 0x16] - ldr r2, [sp, 0x30] - subs r0, r2 - str r0, [r1, 0x8] - ldrb r0, [r5, 0x15] - subs r0, r7 - str r0, [r1, 0xC] - ldrb r0, [r5, 0x17] - ldr r2, [sp, 0x34] - subs r0, r2 - str r0, [r1, 0x10] - mov r0, r10 - cmp r0, 0 - beq _080720E6 - mov r0, r8 - bl sub_807218C -_080720E6: - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _08072130 - add r4, sp, 0x18 - ldrb r1, [r5, 0x9] - adds r0, r4, 0 - bl sub_808EB48 - movs r6, 0 - add r7, sp, 0xC -_080720FA: - adds r0, r7, r6 - ldrb r0, [r0] - cmp r0, 0 - bne _0807212A - adds r0, r4, r6 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807212A - ldr r0, _08072178 - mov r1, r8 - movs r2, 0 - bl sub_8045B94 - lsls r1, r6, 24 - lsrs r1, 24 - ldr r0, _0807217C - bl sub_808EAC0 - ldr r0, _08072180 - ldr r2, [r0] - mov r0, r9 - mov r1, r8 - bl sub_80522F4 -_0807212A: - adds r6, 0x1 - cmp r6, 0xB - ble _080720FA -_08072130: - movs r1, 0xFE - lsls r1, 1 - adds r0, r5, r1 - movs r1, 0 - str r1, [r0] - ldr r2, _08072184 - adds r0, r5, r2 - strb r1, [r0] - ldr r0, [sp, 0x28] - cmp r0, 0 - bne _08072162 - mov r1, r10 - cmp r1, 0 - beq _08072162 - ldr r0, _08072178 - mov r1, r8 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08072188 - ldr r2, [r0] - mov r0, r9 - mov r1, r8 - bl sub_80522F4 -_08072162: - add sp, 0x38 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08072174: .4byte gUnknown_202DE30 -_08072178: .4byte gUnknown_202DF98 -_0807217C: .4byte gUnknown_202DE58 -_08072180: .4byte gUnknown_80FF730 -_08072184: .4byte 0x00000149 -_08072188: .4byte gUnknown_80F9B74 - thumb_func_end sub_8072008 - - thumb_func_start sub_807218C -sub_807218C: - push {r4-r6,lr} - sub sp, 0x190 - adds r4, r0, 0 - movs r6, 0 - ldr r5, [r4, 0x70] - movs r1, 0 - bl sub_806A2BC - ldr r0, _080721C8 - adds r1, r5, 0 - movs r2, 0 - bl sub_80708B4 - adds r0, r4, 0 - bl sub_8070BC0 - lsls r0, 24 - cmp r0, 0 - beq _08072200 - movs r3, 0 - movs r0, 0x2 - ldrsh r1, [r5, r0] - adds r0, r5, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - bne _080721CC - movs r1, 0xD2 - lsls r1, 1 - b _080721EC - .align 2, 0 -_080721C8: .4byte gUnknown_202DF98 -_080721CC: - cmp r0, 0x47 - bne _080721D8 - ldr r1, _080721D4 - b _080721EC - .align 2, 0 -_080721D4: .4byte 0x000001a5 -_080721D8: - cmp r0, 0x41 - bne _080721EC - ldr r0, _080721F8 - ldr r0, [r0] - ldr r2, _080721FC - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080721EC - movs r3, 0x1 -_080721EC: - mov r0, sp - movs r2, 0x3 - bl sub_806A3D4 - b _0807220A - .align 2, 0 -_080721F8: .4byte gUnknown_203B418 -_080721FC: .4byte 0x0000065c -_08072200: - ldr r0, _08072308 - ldr r1, [r0] - mov r0, sp - bl strcpy -_0807220A: - movs r0, 0 - mov r1, sp - movs r2, 0x1 - bl PrintFieldMessage - mov r0, sp - movs r1, 0 - strb r1, [r0] - ldr r4, _0807230C - ldr r0, [r4] - cmp r0, 0 - ble _0807222E - ldr r0, _08072310 - ldr r1, [r0] - mov r0, sp - bl strcat - adds r6, 0x1 -_0807222E: - ldr r0, [r4, 0x4] - cmp r0, 0 - ble _0807225A - ldr r0, _08072314 - adds r1, r6, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _0807224E - ldr r0, _08072318 - ldrb r1, [r1] - lsls r1, 2 - adds r1, r0 - ldr r1, [r1] - mov r0, sp - bl strcat -_0807224E: - ldr r0, _0807231C - ldr r1, [r0] - mov r0, sp - bl strcat - adds r6, 0x1 -_0807225A: - ldr r0, _0807230C - ldr r0, [r0, 0x8] - cmp r0, 0 - ble _08072288 - ldr r0, _08072314 - adds r1, r6, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _0807227C - ldr r0, _08072318 - ldrb r1, [r1] - lsls r1, 2 - adds r1, r0 - ldr r1, [r1] - mov r0, sp - bl strcat -_0807227C: - ldr r0, _08072320 - ldr r1, [r0] - mov r0, sp - bl strcat - adds r6, 0x1 -_08072288: - ldr r0, _0807230C - ldr r0, [r0, 0xC] - cmp r0, 0 - ble _080722B6 - ldr r0, _08072314 - adds r1, r6, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _080722AA - ldr r0, _08072318 - ldrb r1, [r1] - lsls r1, 2 - adds r1, r0 - ldr r1, [r1] - mov r0, sp - bl strcat -_080722AA: - ldr r0, _08072324 - ldr r1, [r0] - mov r0, sp - bl strcat - adds r6, 0x1 -_080722B6: - ldr r0, _0807230C - ldr r0, [r0, 0x10] - cmp r0, 0 - ble _080722E2 - ldr r0, _08072314 - adds r1, r6, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _080722D8 - ldr r0, _08072318 - ldrb r1, [r1] - lsls r1, 2 - adds r1, r0 - ldr r1, [r1] - mov r0, sp - bl strcat -_080722D8: - ldr r0, _08072328 - ldr r1, [r0] - mov r0, sp - bl strcat -_080722E2: - mov r0, sp - ldrb r0, [r0] - cmp r0, 0 - beq _080722F4 - movs r0, 0 - mov r1, sp - movs r2, 0x1 - bl PrintFieldMessage -_080722F4: - bl sub_8083600 - movs r1, 0 - bl sub_806A2BC - add sp, 0x190 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08072308: .4byte gUnknown_80FCF18 -_0807230C: .4byte gUnknown_202DE30 -_08072310: .4byte gUnknown_80F9ACC -_08072314: .4byte gUnknown_8107010 -_08072318: .4byte gUnknown_8107018 -_0807231C: .4byte gUnknown_80F9AEC -_08072320: .4byte gUnknown_80F9B10 -_08072324: .4byte gUnknown_80F9B34 -_08072328: .4byte gUnknown_80F9B58 - thumb_func_end sub_807218C - - thumb_func_start sub_807232C -sub_807232C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - mov r8, r0 - adds r5, r1, 0 - adds r7, r2, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080723B6 - movs r6, 0 - ldr r4, [r5, 0x70] - adds r0, r4, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08072358 - cmp r0, 0x47 - bne _0807235C -_08072358: - movs r0, 0x1 - b _0807235E -_0807235C: - movs r0, 0 -_0807235E: - cmp r0, 0 - bne _0807238C - ldrb r0, [r4, 0x9] - subs r2, r0, r7 - cmp r2, 0 - bgt _0807236C - movs r2, 0x1 -_0807236C: - cmp r2, r0 - beq _0807238C - movs r0, 0x2 - ldrsh r1, [r4, r0] - mov r0, sp - bl sub_808E010 - ldr r0, [sp] - str r0, [r4, 0x18] - mov r0, r8 - adds r1, r5, 0 - bl sub_80725A4 - orrs r6, r0 - lsls r0, r6, 24 - lsrs r6, r0, 24 -_0807238C: - movs r1, 0xFE - lsls r1, 1 - adds r0, r4, r1 - movs r1, 0 - str r1, [r0] - ldr r2, _080723C4 - adds r0, r4, r2 - strb r1, [r0] - cmp r6, 0 - bne _080723B6 - ldr r0, _080723C8 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _080723CC - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 -_080723B6: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080723C4: .4byte 0x00000149 -_080723C8: .4byte gUnknown_202DF98 -_080723CC: .4byte gUnknown_80F9B94 - thumb_func_end sub_807232C - - thumb_func_start sub_80723D0 -sub_80723D0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - str r0, [sp, 0xC] - mov r10, r1 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x10] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x14] - movs r0, 0 - str r0, [sp, 0x18] - mov r0, r10 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08072422 - mov r1, r10 - ldr r5, [r1, 0x70] - movs r0, 0x2 - ldrsh r3, [r5, r0] - str r3, [sp, 0x1C] - ldr r1, [r5, 0x18] - str r1, [sp, 0x20] - adds r0, r5, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08072418 - cmp r0, 0x47 - bne _0807241C -_08072418: - movs r0, 0x1 - b _0807241E -_0807241C: - movs r0, 0 -_0807241E: - cmp r0, 0 - beq _08072426 -_08072422: - movs r0, 0 - b _08072576 -_08072426: - ldrb r0, [r5, 0x9] - adds r0, 0x1 - mov r8, r0 - mov r9, sp - b _0807255A -_08072430: - mov r3, r8 - strb r3, [r5, 0x9] - ldr r0, [sp, 0x20] - str r0, [r5, 0x18] - ldr r1, [sp, 0x10] - cmp r1, 0 - beq _080724A4 - ldrb r0, [r5, 0x6] - cmp r0, 0 - bne _08072480 - mov r0, r10 - movs r1, 0 - bl sub_806A2BC - ldr r3, [sp, 0x18] - cmp r3, 0 - bne _08072456 - bl sub_8083D58 -_08072456: - ldr r0, _08072474 - mov r1, r8 - str r1, [r0] - ldr r0, _08072478 - adds r1, r5, 0 - movs r2, 0 - bl sub_80708B4 - ldr r0, _0807247C - ldr r1, [r0] - mov r0, r10 - bl sub_80528F4 - b _080724A4 - .align 2, 0 -_08072474: .4byte gUnknown_202DE30 -_08072478: .4byte gUnknown_202DF98 -_0807247C: .4byte gUnknown_80F9E80 -_08072480: - ldr r3, [sp, 0x18] - cmp r3, 0 - bne _0807248A - bl sub_8083D58 -_0807248A: - ldr r0, _08072588 - mov r1, r8 - str r1, [r0] - ldr r0, _0807258C - adds r1, r5, 0 - movs r2, 0 - bl sub_80708B4 - ldr r0, _08072590 - ldr r1, [r0] - mov r0, r10 - bl sub_805239C -_080724A4: - movs r3, 0x1 - str r3, [sp, 0x18] - mov r1, r9 - ldrh r0, [r1, 0x4] - ldrh r3, [r5, 0x10] - adds r0, r3 - movs r2, 0 - strh r0, [r5, 0x10] - ldrh r1, [r1, 0x4] - ldrh r3, [r5, 0xE] - adds r1, r3 - strh r1, [r5, 0xE] - lsls r0, 16 - ldr r1, _08072594 - cmp r0, r1 - ble _080724C8 - ldr r0, _08072598 - strh r0, [r5, 0x10] -_080724C8: - movs r0, 0xE - ldrsh r1, [r5, r0] - ldrh r2, [r5, 0x10] - movs r3, 0x10 - ldrsh r0, [r5, r3] - cmp r1, r0 - blt _080724D8 - strh r2, [r5, 0xE] -_080724D8: - ldr r7, _0807259C - ldrb r4, [r5, 0x14] - str r4, [r7] - ldrb r1, [r5, 0x15] - str r1, [r7, 0x4] - ldr r6, _080725A0 - ldrb r2, [r5, 0x16] - str r2, [r6] - ldrb r0, [r5, 0x17] - mov r12, r0 - mov r3, r9 - ldrb r0, [r3, 0x6] - adds r4, r0 - str r4, [r7] - ldrb r0, [r3, 0x7] - adds r1, r0 - str r1, [r7, 0x4] - ldrb r0, [r3, 0x8] - adds r2, r0 - str r2, [r6] - ldrb r0, [r3, 0x9] - mov r1, r12 - adds r3, r1, r0 - str r3, [r6, 0x4] - cmp r4, 0xFE - ble _08072510 - movs r3, 0xFF - str r3, [r7] -_08072510: - ldr r0, [r7, 0x4] - cmp r0, 0xFE - ble _0807251A - movs r0, 0xFF - str r0, [r7, 0x4] -_0807251A: - ldr r0, [r6] - cmp r0, 0xFE - ble _08072524 - movs r1, 0xFF - str r1, [r6] -_08072524: - ldr r0, [r6, 0x4] - cmp r0, 0xFE - ble _0807252E - movs r3, 0xFF - str r3, [r6, 0x4] -_0807252E: - mov r0, r10 - bl sub_807191C - mov r0, r10 - bl sub_8079764 - ldr r0, [r7] - strb r0, [r5, 0x14] - ldr r0, [r7, 0x4] - strb r0, [r5, 0x15] - ldr r0, [r6] - strb r0, [r5, 0x16] - ldr r0, [r6, 0x4] - strb r0, [r5, 0x17] - ldr r0, [sp, 0xC] - mov r1, r10 - ldr r2, [sp, 0x10] - ldr r3, [sp, 0x14] - bl sub_8072778 - movs r0, 0x1 - add r8, r0 -_0807255A: - mov r1, r8 - cmp r1, 0x64 - bgt _08072574 - mov r0, sp - ldr r1, [sp, 0x1C] - mov r2, r8 - bl sub_808E010 - ldr r0, [sp] - ldr r3, [sp, 0x20] - cmp r0, r3 - bgt _08072574 - b _08072430 -_08072574: - ldr r0, [sp, 0x18] -_08072576: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08072588: .4byte gUnknown_202DE30 -_0807258C: .4byte gUnknown_202DF98 -_08072590: .4byte gUnknown_80F9E80 -_08072594: .4byte 0x03e60000 -_08072598: .4byte 0x000003e7 -_0807259C: .4byte gUnknown_202F31C -_080725A0: .4byte gUnknown_202F324 - thumb_func_end sub_80723D0 - - thumb_func_start sub_80725A4 -sub_80725A4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - str r0, [sp, 0xC] - str r1, [sp, 0x10] - adds r0, r1, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080725C2 - b _0807272E -_080725C2: - ldr r0, [sp, 0x10] - ldr r5, [r0, 0x70] - movs r2, 0x2 - ldrsh r1, [r5, r2] - str r1, [sp, 0x18] - ldr r3, [r5, 0x18] - str r3, [sp, 0x1C] - ldrb r0, [r5, 0x9] - str r0, [sp, 0x20] - adds r0, r5, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _080725E2 - cmp r0, 0x47 - bne _080725E6 -_080725E2: - movs r0, 0x1 - b _080725E8 -_080725E6: - movs r0, 0 -_080725E8: - cmp r0, 0 - beq _080725EE - b _0807272E -_080725EE: - movs r1, 0x1 - mov r8, r1 - b _080725F8 -_080725F4: - movs r2, 0x1 - add r8, r2 -_080725F8: - ldrb r3, [r5, 0x9] - cmp r8, r3 - bge _08072610 - mov r0, sp - ldr r1, [sp, 0x18] - mov r2, r8 - bl sub_808E010 - ldr r0, [sp] - ldr r1, [sp, 0x1C] - cmp r0, r1 - blt _080725F4 -_08072610: - mov r2, r8 - subs r2, 0x1 - str r2, [sp, 0x14] - ldrb r3, [r5, 0x9] - mov r8, r3 - cmp r8, r2 - ble _08072710 - mov r9, sp - movs r0, 0x1 - mov r10, r0 -_08072624: - mov r4, r8 - adds r4, 0x1 - mov r1, r8 - cmp r1, 0x63 - bgt _08072640 - mov r0, sp - ldr r1, [sp, 0x18] - adds r2, r4, 0 - bl sub_808E010 - ldr r0, [sp] - subs r0, 0x1 - str r0, [r5, 0x18] - b _08072644 -_08072640: - ldr r2, [sp, 0x1C] - str r2, [r5, 0x18] -_08072644: - ldr r3, [sp, 0x20] - cmp r3, r8 - ble _08072704 - mov r0, sp - ldr r1, [sp, 0x18] - adds r2, r4, 0 - bl sub_808E010 - mov r0, r8 - strb r0, [r5, 0x9] - ldrh r0, [r5, 0x10] - mov r2, r9 - ldrh r1, [r2, 0x4] - subs r0, r1 - strh r0, [r5, 0x10] - ldrh r0, [r5, 0xE] - ldrh r1, [r2, 0x4] - subs r0, r1 - strh r0, [r5, 0xE] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - bgt _08072676 - mov r3, r10 - strh r3, [r5, 0xE] -_08072676: - movs r1, 0x10 - ldrsh r0, [r5, r1] - cmp r0, 0x1 - bgt _08072682 - mov r2, r10 - strh r2, [r5, 0x10] -_08072682: - movs r3, 0xE - ldrsh r1, [r5, r3] - ldrh r2, [r5, 0x10] - movs r3, 0x10 - ldrsh r0, [r5, r3] - cmp r1, r0 - blt _08072692 - strh r2, [r5, 0xE] -_08072692: - ldr r7, _08072734 - ldrb r4, [r5, 0x14] - str r4, [r7] - ldrb r1, [r5, 0x15] - str r1, [r7, 0x4] - ldr r6, _08072738 - ldrb r2, [r5, 0x16] - str r2, [r6] - ldrb r0, [r5, 0x17] - mov r12, r0 - mov r3, r9 - ldrb r0, [r3, 0x6] - subs r4, r0 - str r4, [r7] - ldrb r0, [r3, 0x7] - subs r1, r0 - str r1, [r7, 0x4] - ldrb r0, [r3, 0x8] - subs r2, r0 - str r2, [r6] - ldrb r0, [r3, 0x9] - mov r1, r12 - subs r3, r1, r0 - str r3, [r6, 0x4] - cmp r4, 0x1 - bgt _080726CA - mov r2, r10 - str r2, [r7] -_080726CA: - ldr r0, [r7, 0x4] - cmp r0, 0x1 - bgt _080726D4 - mov r3, r10 - str r3, [r7, 0x4] -_080726D4: - ldr r0, [r6] - cmp r0, 0x1 - bgt _080726DE - mov r0, r10 - str r0, [r6] -_080726DE: - ldr r0, [r6, 0x4] - cmp r0, 0x1 - bgt _080726E8 - mov r1, r10 - str r1, [r6, 0x4] -_080726E8: - ldr r0, [sp, 0x10] - bl sub_807191C - ldr r0, [sp, 0x10] - bl sub_8079764 - ldr r0, [r7] - strb r0, [r5, 0x14] - ldr r0, [r7, 0x4] - strb r0, [r5, 0x15] - ldr r0, [r6] - strb r0, [r5, 0x16] - ldr r0, [r6, 0x4] - strb r0, [r5, 0x17] -_08072704: - movs r2, 0x1 - negs r2, r2 - add r8, r2 - ldr r3, [sp, 0x14] - cmp r8, r3 - bgt _08072624 -_08072710: - ldr r0, _0807273C - adds r1, r5, 0 - movs r2, 0 - bl sub_80708B4 - ldrb r1, [r5, 0x9] - ldr r0, [sp, 0x20] - cmp r1, r0 - bne _08072744 - ldr r0, _08072740 - ldr r2, [r0] - ldr r0, [sp, 0xC] - ldr r1, [sp, 0x10] - bl sub_80522F4 -_0807272E: - movs r0, 0 - b _08072760 - .align 2, 0 -_08072734: .4byte gUnknown_202F31C -_08072738: .4byte gUnknown_202F324 -_0807273C: .4byte gUnknown_202DF98 -_08072740: .4byte gUnknown_80F9EEC -_08072744: - ldr r0, _08072770 - str r1, [r0] - movs r1, 0xD3 - lsls r1, 1 - ldr r0, [sp, 0x10] - bl sub_80421C0 - ldr r0, _08072774 - ldr r2, [r0] - ldr r0, [sp, 0xC] - ldr r1, [sp, 0x10] - bl sub_80522F4 - movs r0, 0x1 -_08072760: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08072770: .4byte gUnknown_202DE30 -_08072774: .4byte gUnknown_80F9EC8 - thumb_func_end sub_80725A4 - - thumb_func_start sub_8072778 -sub_8072778: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xD0 - mov r9, r1 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0xC4] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0xC8] - ldr r0, [r1, 0x70] - mov r8, r0 - movs r1, 0 - str r1, [sp, 0xCC] - ldrb r0, [r0, 0x6] - cmp r0, 0 - beq _080727A8 - movs r2, 0 - str r2, [sp, 0xC8] - movs r4, 0 - str r4, [sp, 0xC4] -_080727A8: - mov r0, r8 - movs r2, 0x2 - ldrsh r1, [r0, r2] - ldrb r2, [r0, 0x9] - movs r4, 0xC - ldrsh r3, [r0, r4] - mov r0, sp - bl sub_808E0AC - adds r7, r0, 0 - add r4, sp, 0x20 - movs r1, 0x8C - lsls r1, 1 - add r1, r8 - adds r0, r4, 0 - bl sub_8093FC8 - mov r10, r4 - cmp r7, 0 - beq _08072810 - adds r0, r7, 0 - bl sub_8084100 - movs r2, 0 - lsls r0, 1 - mov r1, sp - adds r6, r1, r0 - mov r5, sp - adds r5, 0x21 - mov r3, r10 -_080727E4: - lsls r0, r2, 3 - add r0, sp - adds r0, 0x20 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08072806 - ldrh r1, [r6] - adds r0, r3, 0 - bl sub_8092A88 - ldrb r1, [r5] - movs r0, 0x4 - orrs r0, r1 - strb r0, [r5] - b _08072810 -_08072806: - adds r5, 0x8 - adds r3, 0x8 - adds r2, 0x1 - cmp r2, 0x7 - ble _080727E4 -_08072810: - movs r5, 0 - movs r4, 0x1 -_08072814: - movs r7, 0 - movs r2, 0 -_08072818: - lsls r0, r2, 3 - add r0, sp - adds r0, 0x20 - ldrb r1, [r0] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0807282A - adds r7, 0x1 -_0807282A: - adds r2, 0x1 - cmp r2, 0x7 - ble _08072818 - cmp r7, 0x4 - bgt _080728D4 - movs r3, 0 - movs r5, 0 - cmp r3, r7 - bge _0807287C - movs r4, 0x8C - lsls r4, 1 - add r4, r8 - mov r6, r10 -_08072844: - lsls r0, r5, 3 - movs r2, 0x8C - lsls r2, 1 - add r2, r8 - adds r2, r0 - ldr r0, [r6] - ldr r1, [r6, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - ldrb r1, [r4, 0x1] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08072872 - movs r0, 0xFB - ands r0, r1 - strb r0, [r4, 0x1] - add r0, sp, 0x60 - adds r1, r4, 0 - movs r2, 0 - bl sub_80928C0 - movs r3, 0x1 -_08072872: - adds r4, 0x8 - adds r6, 0x8 - adds r5, 0x1 - cmp r5, r7 - blt _08072844 -_0807287C: - cmp r5, 0x3 - bgt _08072894 - movs r2, 0x8C - lsls r2, 1 - movs r1, 0 -_08072886: - lsls r0, r5, 3 - add r0, r8 - adds r0, r2 - strb r1, [r0] - adds r5, 0x1 - cmp r5, 0x3 - ble _08072886 -_08072894: - cmp r3, 0 - beq _08072928 - ldr r2, [sp, 0xC4] - cmp r2, 0 - beq _08072928 - ldr r0, _080728C8 - mov r1, r8 - movs r2, 0 - bl sub_80708B4 - ldr r0, _080728CC - add r1, sp, 0x60 - bl strcpy - mov r0, r9 - movs r1, 0x9C - lsls r1, 1 - bl sub_80421C0 - ldr r0, _080728D0 - ldr r1, [r0] - mov r0, r9 - bl sub_80528F4 - b _08072928 - .align 2, 0 -_080728C8: .4byte gUnknown_202DF98 -_080728CC: .4byte gUnknown_202DE58 -_080728D0: .4byte gUnknown_80F9F04 -_080728D4: - mov r1, r8 - ldrb r0, [r1, 0x6] - cmp r0, 0 - bne _08072918 - ldr r2, [sp, 0xC8] - cmp r2, 0 - beq _08072918 - ldr r0, [sp, 0xCC] - cmp r0, 0 - bne _08072902 - ldr r1, [sp, 0xC4] - cmp r1, 0 - beq _08072902 - movs r0, 0xA - movs r1, 0x6 - bl sub_803E708 - ldr r0, _08072914 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage -_08072902: - movs r2, 0x1 - str r2, [sp, 0xCC] - mov r0, r9 - mov r1, r10 - movs r3, 0 - bl sub_8063E70 - b _08072920 - .align 2, 0 -_08072914: .4byte gUnknown_80F9FA4 -_08072918: - mov r0, r9 - mov r1, r10 - bl sub_8072B24 -_08072920: - adds r5, 0x1 - cmp r5, 0x1D - bgt _08072928 - b _08072814 -_08072928: - add sp, 0xD0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8072778 - - thumb_func_start sub_8072938 -sub_8072938: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xA4 - mov r9, r0 - lsls r1, 16 - lsrs r5, r1, 16 - ldr r0, [r0, 0x70] - mov r8, r0 - movs r1, 0 - mov r10, r1 - movs r1, 0x8C - lsls r1, 1 - add r1, r8 - mov r0, sp - bl sub_8093FC8 - movs r3, 0 - mov r4, sp - mov r2, sp -_08072964: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08072980 - adds r0, r2, 0 - adds r1, r5, 0 - bl sub_8092A88 - ldrb r1, [r4, 0x1] - movs r0, 0x4 - orrs r0, r1 - strb r0, [r4, 0x1] - b _0807298A -_08072980: - adds r4, 0x8 - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x7 - ble _08072964 -_0807298A: - movs r4, 0 - movs r5, 0x1 -_0807298E: - movs r7, 0 - mov r2, sp - movs r3, 0x7 -_08072994: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _080729A0 - adds r7, 0x1 -_080729A0: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08072994 - cmp r7, 0x4 - bgt _08072A50 - movs r5, 0 - cmp r5, r7 - bge _080729F4 - movs r4, 0x8C - lsls r4, 1 - add r4, r8 - mov r6, sp -_080729BA: - lsls r0, r5, 3 - movs r2, 0x8C - lsls r2, 1 - add r2, r8 - adds r2, r0 - ldr r0, [r6] - ldr r1, [r6, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - ldrb r1, [r4, 0x1] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080729EA - movs r0, 0xFB - ands r0, r1 - strb r0, [r4, 0x1] - add r0, sp, 0x40 - adds r1, r4, 0 - movs r2, 0 - bl sub_80928C0 - movs r0, 0x1 - mov r10, r0 -_080729EA: - adds r4, 0x8 - adds r6, 0x8 - adds r5, 0x1 - cmp r5, r7 - blt _080729BA -_080729F4: - cmp r5, 0x3 - bgt _08072A0C - movs r2, 0x8C - lsls r2, 1 - movs r1, 0 -_080729FE: - lsls r0, r5, 3 - add r0, r8 - adds r0, r2 - strb r1, [r0] - adds r5, 0x1 - cmp r5, 0x3 - ble _080729FE -_08072A0C: - mov r1, r10 - cmp r1, 0 - beq _08072A92 - mov r1, r8 - ldrb r0, [r1, 0x6] - cmp r0, 0 - bne _08072A8C - ldr r0, _08072A44 - mov r1, r9 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08072A48 - add r1, sp, 0x40 - bl strcpy - mov r0, r9 - movs r1, 0x9C - lsls r1, 1 - bl sub_80421C0 - ldr r0, _08072A4C - ldr r1, [r0] - mov r0, r9 - bl sub_80528F4 - b _08072A8C - .align 2, 0 -_08072A44: .4byte gUnknown_202DF98 -_08072A48: .4byte gUnknown_202DE58 -_08072A4C: .4byte gUnknown_80F9F04 -_08072A50: - movs r0, 0 - mov r10, r0 - mov r1, r8 - ldrb r0, [r1, 0x6] - cmp r0, 0 - bne _08072A84 - ldr r0, _08072A80 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - mov r0, r9 - mov r1, sp - movs r2, 0x1 - movs r3, 0x1 - bl sub_8063E70 - lsls r0, 24 - cmp r0, 0 - bne _08072A84 - movs r0, 0 - b _08072AB0 - .align 2, 0 -_08072A80: .4byte gUnknown_80FDF40 -_08072A84: - adds r4, 0x1 - cmp r4, 0x1D - bgt _08072A8C - b _0807298E -_08072A8C: - mov r0, r10 - cmp r0, 0 - bne _08072AAE -_08072A92: - mov r1, r8 - ldrb r0, [r1, 0x6] - cmp r0, 0 - bne _08072AAE - ldr r0, _08072AC0 - mov r1, r9 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08072AC4 - ldr r1, [r0] - mov r0, r9 - bl sub_80528F4 -_08072AAE: - movs r0, 0x1 -_08072AB0: - add sp, 0xA4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08072AC0: .4byte gUnknown_202DF98 -_08072AC4: .4byte gUnknown_80F9F2C - thumb_func_end sub_8072938 - - thumb_func_start sub_8072AC8 -sub_8072AC8: - push {r4-r7,lr} - sub sp, 0x4 - adds r6, r0, 0 - adds r7, r2, 0 - lsls r1, 16 - asrs r0, r1, 16 - movs r3, 0 - adds r2, r6, 0x6 -_08072AD8: - strh r3, [r2] - subs r2, 0x2 - cmp r2, r6 - bge _08072AD8 - movs r5, 0 - bl sub_8092B18 - adds r4, r0, 0 - b _08072B04 -_08072AEA: - cmp r5, 0x4 - bne _08072AF6 - movs r0, 0x4 - bl sub_8084100 - b _08072AFA -_08072AF6: - adds r0, r5, 0 - adds r5, 0x1 -_08072AFA: - lsls r0, 1 - adds r0, r6 - mov r1, sp - ldrh r1, [r1] - strh r1, [r0] -_08072B04: - ldrb r0, [r4] - cmp r0, 0 - beq _08072B1C - adds r0, r4, 0 - mov r1, sp - bl sub_808E07C - adds r4, r0, 0 - ldrb r0, [r4] - adds r4, 0x1 - cmp r0, r7 - ble _08072AEA -_08072B1C: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8072AC8 - - thumb_func_start sub_8072B24 -sub_8072B24: - push {r4-r7,lr} - adds r5, r1, 0 - movs r4, 0 - movs r7, 0x1 - movs r6, 0xFD - adds r2, r5, 0 - movs r3, 0x7 -_08072B32: - ldrb r1, [r2] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08072B44 - adds r0, r6, 0 - ands r0, r1 - strb r0, [r2] - adds r4, 0x1 -_08072B44: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08072B32 - adds r0, r4, 0 - bl sub_8084100 - adds r3, r0, 0 - adds r4, r5, 0 - adds r4, 0x38 - cmp r3, 0x6 - bgt _08072B6C - lsls r0, r3, 3 - adds r2, r0, r5 -_08072B60: - ldr r0, [r2, 0x8] - ldr r1, [r2, 0xC] - stm r2!, {r0,r1} - adds r3, 0x1 - cmp r3, 0x6 - ble _08072B60 -_08072B6C: - movs r0, 0 - strb r0, [r4] - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8072B24 - - thumb_func_start sub_8072B78 -sub_8072B78: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x20 - mov r8, r0 - adds r7, r1, 0 - lsls r5, r2, 16 - asrs r5, 16 - ldr r6, [r7, 0x70] - ldr r4, _08072BFC - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_80708B4 - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_808D908 - adds r0, r5, 0 - bl sub_80687D0 - adds r4, r0, 0 - lsls r0, r5, 16 - lsrs r0, 16 - strh r0, [r6, 0x4] - strh r0, [r6, 0x2] - ldrb r2, [r6, 0x9] - mov r0, sp - adds r1, r5, 0 - bl sub_808E010 - ldr r0, [sp] - str r0, [r6, 0x18] - str r4, [r7, 0x64] - adds r0, r6, 0 - movs r1, 0 - bl sub_806BFC0 - adds r0, r7, 0 - bl sub_8069E0C - adds r0, r7, 0 - movs r1, 0x7 - bl sub_806CCB4 - ldr r0, _08072C00 - ldr r2, [r0] - mov r0, r8 - adds r1, r7, 0 - bl sub_80522F4 - adds r0, r7, 0 - bl sub_8042A44 - bl sub_8083D78 - movs r0, 0x9E - lsls r0, 1 - cmp r5, r0 - bne _08072C74 - movs r5, 0 - ldr r4, _08072C04 - b _08072C0C - .align 2, 0 -_08072BFC: .4byte gUnknown_202DF98 -_08072C00: .4byte gUnknown_80FE2EC -_08072C04: .4byte gUnknown_80F4448 -_08072C08: - adds r4, 0x4 - adds r5, 0x1 -_08072C0C: - cmp r5, 0x7 - bgt _08072C36 - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x4 - ldrsh r1, [r7, r2] - adds r0, r1 - movs r3, 0x2 - ldrsh r1, [r4, r3] - movs r3, 0x6 - ldrsh r2, [r7, r3] - adds r1, r2 - bl sub_804954C - adds r1, r0, 0 - ldr r0, _08072C80 - bl sub_807034C - lsls r0, 24 - cmp r0, 0 - bne _08072C08 -_08072C36: - ldr r0, _08072C80 - mov r8, r0 - bl sub_803D930 - lsls r0, 24 - cmp r0, 0 - beq _08072C74 - add r0, sp, 0xC - movs r3, 0 - movs r4, 0 - mov r1, r8 - strh r1, [r0] - ldrb r1, [r6, 0x9] - strh r1, [r0, 0x8] - strb r3, [r0, 0x2] - ldr r1, _08072C84 - lsls r2, r5, 2 - adds r2, r1 - ldrh r1, [r7, 0x4] - ldrh r5, [r2] - adds r1, r5 - strh r1, [r0, 0xC] - ldrh r1, [r7, 0x6] - ldrh r2, [r2, 0x2] - adds r1, r2 - strh r1, [r0, 0xE] - str r4, [r0, 0x4] - strb r3, [r0, 0x10] - movs r1, 0x1 - bl sub_806B7F8 -_08072C74: - add sp, 0x20 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08072C80: .4byte 0x0000013d -_08072C84: .4byte gUnknown_80F4448 - thumb_func_end sub_8072B78 - - thumb_func_start sub_8072C88 -sub_8072C88: - push {lr} - ldr r1, [r0, 0x70] - ldrb r0, [r1, 0x6] - cmp r0, 0 - bne _08072CA2 - adds r0, r1, 0 - adds r0, 0x94 - ldrb r0, [r0] - bl sub_808EAFC - lsls r0, 24 - lsrs r0, 24 - b _08072CA4 -_08072CA2: - movs r0, 0 -_08072CA4: - pop {r1} - bx r1 - thumb_func_end sub_8072C88 - - thumb_func_start sub_8072CA8 -sub_8072CA8: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, [r5, 0x70] - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _08072CEC - bl sub_8083600 - adds r4, r0, 0 - cmp r4, 0 - beq _08072CEC - ldr r0, [r4, 0x70] - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x2 - beq _08072CEC - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - cmp r0, 0 - bne _08072CEC - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8045A00 - lsls r0, 24 - cmp r0, 0 - beq _08072CEC - adds r0, r4, 0 - b _08072CEE -_08072CEC: - movs r0, 0 -_08072CEE: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8072CA8 - - thumb_func_start sub_8072CF4 -sub_8072CF4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r4, r0, 0 - movs r0, 0x1 - bl sub_804178C - ldr r1, _08072D4C - movs r0, 0x1 - strb r0, [r1] - ldr r6, [r4, 0x70] - adds r0, r6, 0 - adds r0, 0xFC - movs r1, 0 - strb r1, [r0] - subs r0, 0x9 - strb r1, [r0] - ldr r0, _08072D50 - ldr r0, [r0] - adds r0, 0xB8 - str r4, [r0] - ldr r2, _08072D54 - adds r0, r6, 0 - adds r0, 0x44 - ldrh r0, [r0] - lsls r1, r0, 1 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08072D64 - ldrb r0, [r6, 0x7] - cmp r0, 0 - beq _08072D58 - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r1, [r0] - adds r0, r4, 0 - bl sub_805EFB4 - b _08072D64 - .align 2, 0 -_08072D4C: .4byte gUnknown_203B434 -_08072D50: .4byte gUnknown_203B418 -_08072D54: .4byte gUnknown_80F58F4 -_08072D58: - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r1, [r0] - adds r0, r4, 0 - bl sub_8075BA4 -_08072D64: - adds r0, r4, 0 - movs r1, 0 - bl sub_8070D04 - lsls r0, 24 - cmp r0, 0 - beq _08072D86 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80570F4 - lsls r0, 24 - cmp r0, 0 - beq _08072D86 - adds r0, r4, 0 - bl sub_8079764 -_08072D86: - movs r7, 0x1 - movs r5, 0xFB - movs r0, 0x8C - lsls r0, 1 - adds r2, r6, r0 - movs r3, 0x3 -_08072D92: - ldrb r1, [r2] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08072DA4 - ldrb r1, [r2, 0x1] - adds r0, r5, 0 - ands r0, r1 - strb r0, [r2, 0x1] -_08072DA4: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08072D92 - adds r0, r4, 0 - movs r1, 0 - bl sub_8045028 - lsls r0, 24 - cmp r0, 0 - bne _08072E08 - adds r0, r4, 0 - bl sub_807520C - lsls r0, 24 - cmp r0, 0 - beq _08072DF0 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08072DD2 - b _080732D4 -_08072DD2: - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08072DE0 - b _080732D4 -_08072DE0: - ldr r0, _08072DEC - ldrb r0, [r0] - cmp r0, 0 - beq _08072DF0 - movs r0, 0x1 - b _080732D6 - .align 2, 0 -_08072DEC: .4byte gUnknown_202F32D -_08072DF0: - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _08072DFC - movs r0, 0xA - bl sub_8052740 -_08072DFC: - adds r0, r4, 0 - bl sub_806A1E8 - movs r0, 0xA - bl sub_803E46C -_08072E08: - adds r0, r6, 0 - adds r0, 0x44 - ldrh r1, [r0] - adds r5, r0, 0 - cmp r1, 0x1 - bls _08072E26 - cmp r1, 0x4 - beq _08072E26 - cmp r1, 0x2 - beq _08072E26 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r6, r2 - movs r0, 0x1 - strb r0, [r1] -_08072E26: - movs r3, 0 - mov r10, r3 - movs r7, 0xA5 - lsls r7, 1 - adds r0, r6, r7 - mov r1, r10 - strb r1, [r0] - ldr r0, _08072E50 - strb r1, [r0] - ldr r0, _08072E54 - strb r1, [r0] - ldrh r0, [r5] - subs r0, 0x2 - cmp r0, 0x3F - bls _08072E46 - b _080731B4 -_08072E46: - lsls r0, 2 - ldr r1, _08072E58 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08072E50: .4byte gUnknown_202F221 -_08072E54: .4byte gUnknown_202F222 -_08072E58: .4byte _08072E5C - .align 2, 0 -_08072E5C: - .4byte _08072F5C - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _08073104 - .4byte _080730A4 - .4byte _0807310C - .4byte _0807311C - .4byte _080731B4 - .4byte _08073094 - .4byte _08073094 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _08073094 - .4byte _0807314C - .4byte _08073154 - .4byte _0807303E - .4byte _080731B4 - .4byte _0807315C - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _08073186 - .4byte _0807318E - .4byte _08073170 - .4byte _08073046 - .4byte _0807311C - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _0807309C - .4byte _08073162 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080731B4 - .4byte _080730AC - .4byte _080730B4 - .4byte _080730C4 - .4byte _08073196 - .4byte _08073114 - .4byte _080730E0 - .4byte _080730CC - .4byte _080730D6 - .4byte _080730BC - .4byte _0807317E - .4byte _080731B4 - .4byte _0807311C -_08072F5C: - adds r0, r6, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x2 - beq _08072F76 - cmp r0, 0x7 - beq _08072F76 - cmp r0, 0x5 - beq _08072F76 - cmp r0, 0x3 - beq _08072F76 - cmp r0, 0x4 - bne _08072F84 -_08072F76: - movs r0, 0 - strh r0, [r5] - ldr r2, _08072F80 - adds r1, r6, r2 - b _08072FDA - .align 2, 0 -_08072F80: .4byte 0x00000147 -_08072F84: - movs r3, 0 - mov r9, r3 - ldr r1, _08072FE0 - adds r2, r6, 0 - adds r2, 0x46 - ldrb r3, [r2] - lsls r0, r3, 2 - adds r0, r1 - ldrh r1, [r0] - ldrh r7, [r4, 0x4] - adds r1, r7 - lsls r1, 16 - ldrh r0, [r0, 0x2] - ldrh r7, [r4, 0x6] - adds r0, r7 - lsls r0, 16 - lsrs r1, 16 - mov r8, r1 - orrs r1, r0 - mov r8, r1 - ldrh r1, [r6] - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - adds r7, r2, 0 - cmp r0, 0 - bne _08072FCC - adds r0, r4, 0 - adds r1, r3, 0 - bl sub_8070D6C - lsls r0, 24 - cmp r0, 0 - bne _08072FCC - movs r2, 0x1 - mov r9, r2 -_08072FCC: - mov r3, r9 - cmp r3, 0 - beq _08072FE8 - movs r0, 0 - strh r0, [r5] - ldr r7, _08072FE4 - adds r1, r6, r7 -_08072FDA: - movs r0, 0x1 - strb r0, [r1] - b _080731B8 - .align 2, 0 -_08072FE0: .4byte gUnknown_80F4448 -_08072FE4: .4byte 0x00000147 -_08072FE8: - ldrh r1, [r4, 0x6] - lsls r1, 16 - ldrh r0, [r4, 0x4] - orrs r0, r1 - str r0, [sp] - mov r0, r8 - lsls r1, r0, 16 - asrs r1, 16 - asrs r2, r0, 16 - adds r0, r4, 0 - movs r3, 0 - bl sub_80694C0 - ldrb r1, [r7] - adds r0, r4, 0 - mov r2, sp - bl sub_8074FB0 - adds r0, r4, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08073038 - adds r0, r6, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08073038 - adds r0, r4, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _08073038 - adds r0, r4, 0x4 - bl sub_804AE08 -_08073038: - movs r1, 0x1 - mov r10, r1 - b _080731B8 -_0807303E: - adds r0, r4, 0 - bl sub_807CABC - b _080731B8 -_08073046: - ldr r0, _08073064 - ldr r1, [r0] - ldr r2, _08073068 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x15 - bne _08073074 - ldr r3, _0807306C - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _08073074 - ldr r0, _08073070 - b _080731A2 - .align 2, 0 -_08073064: .4byte gUnknown_203B418 -_08073068: .4byte 0x00000644 -_0807306C: .4byte 0x000037fe -_08073070: .4byte gUnknown_80FA5B4 -_08073074: - bl sub_804267C - ldr r0, _0807308C - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] - ldr r1, _08073090 - adds r0, r6, 0 - adds r0, 0x46 - ldrb r0, [r0] - strb r0, [r1] - b _080731B8 - .align 2, 0 -_0807308C: .4byte gUnknown_203B418 -_08073090: .4byte gUnknown_202F32C -_08073094: - adds r0, r4, 0 - bl sub_8067110 - b _080731B8 -_0807309C: - adds r0, r4, 0 - bl sub_807CB3C - b _080731B8 -_080730A4: - adds r0, r4, 0 - bl sub_8066744 - b _080731B8 -_080730AC: - adds r0, r4, 0 - bl sub_80668D0 - b _080731B8 -_080730B4: - adds r0, r4, 0 - bl sub_8066AC0 - b _080731B8 -_080730BC: - adds r0, r4, 0 - bl sub_8066BD4 - b _080731B8 -_080730C4: - adds r0, r4, 0 - bl sub_8066CF0 - b _080731B8 -_080730CC: - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806675C - b _080731B8 -_080730D6: - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806684C - b _080731B8 -_080730E0: - ldr r0, _080730FC - ldr r1, [r0] - adds r2, r1, 0 - adds r2, 0xBC - adds r0, r6, 0 - adds r0, 0x48 - ldrb r0, [r0] - lsls r0, 2 - ldr r7, _08073100 - adds r1, r7 - adds r1, r0 - ldr r0, [r1] - str r0, [r2] - b _080731B8 - .align 2, 0 -_080730FC: .4byte gUnknown_203B418 -_08073100: .4byte 0x0001357c -_08073104: - adds r0, r4, 0 - bl sub_8066D04 - b _080731B8 -_0807310C: - adds r0, r4, 0 - bl sub_8066E14 - b _080731B8 -_08073114: - adds r0, r4, 0 - bl sub_8066FA4 - b _080731B8 -_0807311C: - adds r0, r6, 0 - bl sub_8071A70 - lsls r0, 24 - cmp r0, 0 - beq _08073136 - adds r0, r4, 0 - bl nullsub_95 - adds r0, r4, 0 - bl sub_80671A0 - b _080731B8 -_08073136: - ldr r0, _08073144 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08073148 - b _080731A2 - .align 2, 0 -_08073144: .4byte gUnknown_202DF98 -_08073148: .4byte gUnknown_80FE6D4 -_0807314C: - adds r0, r4, 0 - bl sub_8067510 - b _080731B8 -_08073154: - adds r0, r4, 0 - bl sub_8067884 - b _080731B8 -_0807315C: - movs r1, 0xB0 - lsls r1, 1 - b _08073164 -_08073162: - ldr r1, _0807316C -_08073164: - adds r0, r4, 0 - bl sub_8067904 - b _080731B8 - .align 2, 0 -_0807316C: .4byte 0x00000163 -_08073170: - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_807FE9C - b _080731B8 -_0807317E: - adds r0, r4, 0 - bl sub_8073D08 - b _080731B8 -_08073186: - adds r0, r4, 0 - bl sub_8073CF0 - b _080731B8 -_0807318E: - adds r0, r4, 0 - bl sub_8073CFC - b _080731B8 -_08073196: - ldr r0, _080731AC - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _080731B0 -_080731A2: - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - b _080731B8 - .align 2, 0 -_080731AC: .4byte gUnknown_202DF98 -_080731B0: .4byte gUnknown_80FE478 -_080731B4: - movs r0, 0x1 - strh r0, [r5] -_080731B8: - adds r0, r4, 0 - bl sub_807FD84 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080731CC - b _080732D4 -_080731CC: - ldr r0, [r4, 0x70] - movs r2, 0xA5 - lsls r2, 1 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - bne _080731E2 - strb r0, [r1] - adds r0, r4, 0 - bl sub_8079764 -_080731E2: - movs r0, 0 - bl sub_8041888 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080732D4 - bl sub_8085140 - ldr r3, _080732E8 - adds r1, r6, r3 - ldrb r0, [r1] - cmp r0, 0 - beq _08073242 - movs r5, 0 - strb r5, [r1] - movs r7, 0x8C - lsls r7, 1 - adds r2, r6, r7 - movs r0, 0x1 - mov r12, r0 - movs r7, 0x10 - movs r3, 0x3 -_08073214: - ldrb r1, [r2] - mov r0, r12 - ands r0, r1 - cmp r0, 0 - beq _0807322C - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _0807322C - movs r0, 0 - strb r0, [r2, 0x4] - movs r5, 0x1 -_0807322C: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08073214 - cmp r5, 0 - beq _08073242 - ldr r0, _080732EC - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 -_08073242: - bl sub_807360C - bl sub_8044B84 - lsls r0, 24 - cmp r0, 0 - bne _08073264 - bl sub_807348C - bl sub_80732F0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080732D4 -_08073264: - mov r1, r10 - cmp r1, 0 - beq _08073270 - adds r0, r4, 0 - bl sub_8075818 -_08073270: - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080732D4 - bl sub_8044B84 - lsls r0, 24 - cmp r0, 0 - bne _0807328A - bl sub_8046D20 -_0807328A: - movs r0, 0 - bl sub_8041888 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080732D4 - movs r2, 0xA2 - lsls r2, 1 - adds r0, r6, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080732D4 - mov r3, r10 - cmp r3, 0 - bne _080732D4 - adds r1, r4, 0x4 - adds r0, r4, 0 - bl sub_80706A4 - lsls r0, 24 - cmp r0, 0 - beq _080732C8 - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_080732C8: - adds r0, r4, 0 - bl sub_8074094 - adds r0, r4, 0 - bl sub_8071DA4 -_080732D4: - movs r0, 0 -_080732D6: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080732E8: .4byte 0x0000014b -_080732EC: .4byte gUnknown_80FD2CC - thumb_func_end sub_8072CF4 - - thumb_func_start sub_80732F0 -sub_80732F0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - movs r4, 0 -_080732FE: - movs r5, 0 - ldr r0, _0807335C - ldr r0, [r0] - lsls r1, r4, 2 - ldr r2, _08073360 - adds r0, r2 - adds r0, r1 - ldr r0, [r0] - mov r8, r0 - bl sub_80450E0 - lsls r0, 24 - adds r4, 0x1 - str r4, [sp, 0x10] - cmp r0, 0 - bne _08073320 - b _08073472 -_08073320: - mov r0, r8 - ldr r7, [r0, 0x70] - movs r1, 0xB2 - lsls r1, 1 - adds r4, r7, r1 - ldrb r0, [r4] - cmp r0, 0xFF - bne _08073332 - b _08073472 -_08073332: - adds r2, r0, 0 - mov r9, r2 - mov r0, r8 - movs r1, 0x1 - bl sub_8070D04 - lsls r0, 24 - cmp r0, 0 - bne _0807336E - mov r0, r8 - bl sub_8070B28 - lsls r0, 24 - cmp r0, 0 - bne _08073364 - ldrb r0, [r4] - movs r2, 0xFF - orrs r0, r2 - strb r0, [r4] - b _08073472 - .align 2, 0 -_0807335C: .4byte gUnknown_203B418 -_08073360: .4byte 0x000135cc -_08073364: - adds r0, r7, 0 - adds r0, 0xEC - ldrb r0, [r0] - cmp r0, 0x1 - bne _08073378 -_0807336E: - ldrb r0, [r4] - movs r1, 0xFF - orrs r0, r1 - strb r0, [r4] - b _08073472 -_08073378: - movs r0, 0x4 - bl sub_8084100 - adds r3, r0, 0 - movs r4, 0 -_08073382: - lsls r0, r3, 3 - movs r2, 0x8C - lsls r2, 1 - adds r0, r2 - adds r2, r7, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08073448 - ldr r0, [r2] - ldr r1, [r2, 0x4] - str r0, [sp, 0x8] - str r1, [sp, 0xC] - ldr r1, [sp, 0x8] - lsrs r0, r1, 16 - cmp r0, 0x8A - beq _08073448 - adds r1, r0, 0 - ldr r0, _08073434 - cmp r1, r0 - beq _08073448 - movs r6, 0 - movs r0, 0x46 - adds r0, r7 - mov r10, r0 - movs r1, 0x8C - lsls r1, 1 - adds r4, r7, r1 -_080733BC: - lsls r0, r6, 3 - movs r2, 0x8C - lsls r2, 1 - adds r0, r2 - adds r5, r7, r0 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080733F4 - ldrb r0, [r7, 0x7] - cmp r0, 0 - bne _080733DE - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080733F4 -_080733DE: - ldrh r0, [r4, 0x2] - cmp r0, 0xE3 - bne _080733F4 - mov r0, r8 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80573CC - lsls r0, 24 - cmp r0, 0 - bne _08073440 -_080733F4: - adds r4, 0x8 - adds r6, 0x1 - cmp r6, 0x3 - ble _080733BC -_080733FC: - ldr r0, _08073438 - mov r1, r8 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807343C - ldr r1, [r0] - mov r0, r8 - bl sub_80522A8 - movs r0, 0x7 - mov r1, r9 - ands r1, r0 - movs r0, 0 - mov r2, r10 - strb r1, [r2] - str r0, [sp] - add r0, sp, 0x8 - str r0, [sp, 0x4] - mov r0, r8 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8055FA0 - movs r5, 0x1 - b _08073456 - .align 2, 0 -_08073434: .4byte 0x00000147 -_08073438: .4byte gUnknown_202DF98 -_0807343C: .4byte gUnknown_80FCF38 -_08073440: - adds r0, r5, 0x4 - bl sub_80838EC - b _080733FC -_08073448: - adds r3, 0x1 - cmp r3, 0x4 - bne _08073450 - movs r3, 0 -_08073450: - adds r4, 0x1 - cmp r4, 0x3 - ble _08073382 -_08073456: - movs r2, 0xB2 - lsls r2, 1 - adds r1, r7, r2 - ldrb r0, [r1] - movs r2, 0xFF - orrs r0, r2 - strb r0, [r1] - cmp r5, 0 - beq _08073472 - mov r0, r8 - movs r1, 0xB8 - lsls r1, 2 - bl sub_80421C0 -_08073472: - ldr r4, [sp, 0x10] - cmp r4, 0x13 - bgt _0807347A - b _080732FE -_0807347A: - 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_80732F0 - - thumb_func_start sub_807348C -sub_807348C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - movs r4, 0 - movs r0, 0xFF - mov r9, r0 -_0807349E: - ldr r0, _080734E8 - ldr r0, [r0] - lsls r1, r4, 2 - ldr r2, _080734EC - adds r0, r2 - adds r0, r1 - ldr r7, [r0] - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - adds r4, 0x1 - str r4, [sp, 0x10] - cmp r0, 0 - bne _080734BE - b _080735E6 -_080734BE: - ldr r6, [r7, 0x70] - ldr r0, _080734F0 - adds r4, r6, r0 - ldrb r0, [r4] - cmp r0, 0xFF - bne _080734CC - b _080735E6 -_080734CC: - adds r1, r0, 0 - mov r8, r1 - adds r0, r7, 0 - movs r1, 0x1 - bl sub_8070D04 - lsls r0, 24 - cmp r0, 0 - beq _080734F4 - ldrb r0, [r4] - mov r2, r9 - orrs r0, r2 - strb r0, [r4] - b _080735DA - .align 2, 0 -_080734E8: .4byte gUnknown_203B418 -_080734EC: .4byte 0x000135cc -_080734F0: .4byte 0x00000165 -_080734F4: - adds r0, r7, 0 - bl sub_8070B28 - lsls r0, 24 - cmp r0, 0 - bne _08073514 - ldrb r0, [r4] - mov r1, r9 - orrs r0, r1 - strb r0, [r4] - movs r2, 0xB2 - lsls r2, 1 - adds r1, r6, r2 - ldrb r0, [r1] - mov r2, r9 - b _080735E2 -_08073514: - adds r0, r6, 0 - adds r0, 0xEC - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807354A - ldrb r0, [r4] - mov r1, r9 - orrs r0, r1 - strb r0, [r4] - movs r2, 0xB2 - lsls r2, 1 - adds r1, r6, r2 - ldrb r0, [r1] - mov r2, r9 - b _080735E2 -_08073532: - ldr r0, [r5] - ldr r1, [r5, 0x4] - str r0, [sp, 0x8] - str r1, [sp, 0xC] - adds r0, r5, 0x4 - bl sub_80838EC - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_806ACE8 - b _0807359C -_0807354A: - movs r3, 0 - movs r0, 0x46 - adds r0, r6 - mov r10, r0 - movs r1, 0x8C - lsls r1, 1 - adds r4, r6, r1 -_08073558: - lsls r0, r3, 3 - movs r2, 0x8C - lsls r2, 1 - adds r0, r2 - adds r5, r6, r0 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08073594 - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _0807357A - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08073594 -_0807357A: - ldrh r0, [r4, 0x2] - cmp r0, 0x19 - bne _08073594 - adds r0, r7, 0 - adds r1, r5, 0 - movs r2, 0x1 - str r3, [sp, 0x14] - bl sub_80573CC - lsls r0, 24 - ldr r3, [sp, 0x14] - cmp r0, 0 - bne _08073532 -_08073594: - adds r4, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - ble _08073558 -_0807359C: - ldr r0, _08073600 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08073604 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - movs r0, 0x7 - mov r1, r8 - ands r1, r0 - movs r0, 0 - mov r2, r10 - strb r1, [r2] - str r0, [sp] - add r0, sp, 0x8 - str r0, [sp, 0x4] - adds r0, r7, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8055FA0 - ldr r2, _08073608 - adds r1, r6, r2 - ldrb r0, [r1] - mov r2, r9 - orrs r0, r2 - strb r0, [r1] -_080735DA: - movs r0, 0xB2 - lsls r0, 1 - adds r1, r6, r0 - ldrb r0, [r1] -_080735E2: - orrs r0, r2 - strb r0, [r1] -_080735E6: - ldr r4, [sp, 0x10] - cmp r4, 0x13 - bgt _080735EE - b _0807349E -_080735EE: - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08073600: .4byte gUnknown_202DF98 -_08073604: .4byte gUnknown_80FCF50 -_08073608: .4byte 0x00000165 - thumb_func_end sub_807348C - - thumb_func_start sub_807360C -sub_807360C: - push {r4,r5,lr} - movs r5, 0 -_08073610: - ldr r0, _08073650 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08073654 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08073644 - ldr r0, [r4, 0x70] - movs r2, 0xA9 - lsls r2, 1 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - beq _08073644 - movs r0, 0 - strb r0, [r1] - adds r0, r4, 0 - adds r1, r4, 0 - bl sub_8077274 -_08073644: - adds r5, 0x1 - cmp r5, 0x13 - ble _08073610 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08073650: .4byte gUnknown_203B418 -_08073654: .4byte 0x000135cc - thumb_func_end sub_807360C - - thumb_func_start sub_8073658 -sub_8073658: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x58 - mov r8, r0 - ldr r6, [r0, 0x70] - bl sub_8070C60 - lsls r0, 24 - cmp r0, 0 - beq _080736B8 - adds r1, r6, 0 - adds r1, 0xFC - movs r0, 0 - strb r0, [r1] - b _080739C4 -_0807367C: - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x24 - bl sub_8044C94 - adds r0, r6, 0 - adds r0, 0x48 - add r1, sp, 0x54 - ldrb r1, [r1] - strb r1, [r0] - mov r2, r8 - ldrh r1, [r2, 0x4] - adds r0, 0x4 - strh r1, [r0] - ldrh r0, [r2, 0x6] - adds r1, r6, 0 - adds r1, 0x4E - strh r0, [r1] - ldr r0, _080736B4 - adds r0, r7, r0 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - adds r1, r6, 0 - adds r1, 0x46 - strb r0, [r1] - b _08073718 - .align 2, 0 -_080736B4: .4byte gUnknown_202F330 -_080736B8: - adds r0, r6, 0 - adds r0, 0xFC - ldrb r0, [r0] - cmp r0, 0 - bne _080736C4 - b _080737DC -_080736C4: - adds r7, r6, 0 - adds r7, 0x60 - ldrb r1, [r7] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080736D4 - b _080739C4 -_080736D4: - movs r3, 0x81 - str r3, [sp, 0x54] - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0807372C - mov r0, r8 - movs r1, 0x2 - adds r2, r7, 0 - movs r3, 0x1 - bl sub_80739DC - movs r5, 0 - ldr r0, _08073724 - ldr r0, [r0] - cmp r5, r0 - bge _08073718 - ldr r4, _08073728 -_080736FE: - lsls r7, r5, 2 - ldr r0, [r4] - bl sub_8084144 - lsls r0, 24 - cmp r0, 0 - bne _0807367C - adds r4, 0x4 - adds r5, 0x1 - ldr r0, _08073724 - ldr r0, [r0] - cmp r5, r0 - blt _080736FE -_08073718: - ldr r0, _08073724 - ldr r0, [r0] - cmp r5, r0 - beq _08073722 - b _080739C4 -_08073722: - b _08073792 - .align 2, 0 -_08073724: .4byte gUnknown_203B440 -_08073728: .4byte gUnknown_202F358 -_0807372C: - cmp r0, 0x1 - bne _0807377C - mov r0, r8 - adds r1, r7, 0 - mov r2, sp - movs r3, 0x1 - bl sub_8073AA0 - ldr r0, _08073778 - ldr r0, [r0] - cmp r0, 0 - beq _08073792 - bl sub_8084100 - adds r4, r0, 0 - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x24 - bl sub_8044C94 - adds r0, r6, 0 - adds r0, 0x48 - add r1, sp, 0x54 - ldrb r1, [r1] - strb r1, [r0] - mov r2, r8 - ldrh r1, [r2, 0x4] - adds r0, 0x4 - strh r1, [r0] - ldrh r0, [r2, 0x6] - adds r1, r6, 0 - adds r1, 0x4E - strh r0, [r1] - mov r0, r8 - adds r0, 0x4 - lsls r4, 2 - add r4, sp - b _0807395E - .align 2, 0 -_08073778: .4byte gUnknown_203B440 -_0807377C: - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08073792 - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x23 - bl sub_8044C94 - b _080738CE -_08073792: - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x39 - bl sub_8044C94 - b _080739C4 -_0807379E: - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x24 - bl sub_8044C94 - adds r0, r6, 0 - adds r0, 0x48 - add r3, sp, 0x54 - ldrb r3, [r3] - strb r3, [r0] - mov r0, r8 - ldrh r1, [r0, 0x4] - adds r0, r6, 0 - adds r0, 0x4C - strh r1, [r0] - mov r1, r8 - ldrh r0, [r1, 0x6] - adds r1, r6, 0 - adds r1, 0x4E - strh r0, [r1] - ldr r0, _080737D8 - add r0, r10 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - adds r1, r6, 0 - adds r1, 0x46 - strb r0, [r1] - b _080739C4 - .align 2, 0 -_080737D8: .4byte gUnknown_202F330 -_080737DC: - mov r0, r8 - movs r1, 0x16 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _080737EC - b _080739C4 -_080737EC: - movs r2, 0x1 - str r2, [sp, 0x50] -_080737F0: - ldr r3, [sp, 0x50] - cmp r3, 0x1 - bne _080737FE - adds r7, r6, 0 - adds r7, 0x60 - movs r0, 0x81 - b _0807384E -_080737FE: - ldr r1, [sp, 0x50] - cmp r1, 0 - bne _08073832 - mov r2, r8 - movs r3, 0x4 - ldrsh r0, [r2, r3] - movs r3, 0x6 - ldrsh r1, [r2, r3] - bl sub_804954C - adds r4, r0, 0 - ldr r0, [r4, 0x14] - cmp r0, 0 - bne _0807381C - b _080739B8 -_0807381C: - bl sub_80450F8 - cmp r0, 0x3 - beq _08073826 - b _080739B8 -_08073826: - ldr r0, [r4, 0x14] - bl sub_8045108 - adds r7, r0, 0 - movs r0, 0x80 - b _0807384E -_08073832: - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _0807383A - b _080739C4 -_0807383A: - ldr r1, _080738C0 - ldr r2, [sp, 0x50] - lsls r0, r2, 2 - subs r0, 0x8 - ldr r1, [r1] - adds r7, r1, r0 - adds r0, r2, 0 - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 -_0807384E: - str r0, [sp, 0x54] - ldrb r1, [r7] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0807385C - b _080739B8 -_0807385C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08073866 - b _080739B8 -_08073866: - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08073870 - b _080739B8 -_08073870: - ldrb r0, [r7, 0x2] - movs r1, 0 - bl sub_8090DAC - lsls r0, 24 - cmp r0, 0 - beq _080738EC - mov r0, r8 - adds r1, r7, 0 - movs r2, 0x2 - bl sub_8048F28 - adds r5, r0, 0 - cmp r5, 0 - beq _080738EC - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - cmp r4, 0x9 - bne _080738A4 - ldrb r0, [r6, 0x6] - cmp r0, 0 - beq _080738EC -_080738A4: - adds r0, r5, 0 - bl sub_8084144 - lsls r0, 24 - cmp r0, 0 - beq _080738EC - cmp r4, 0x9 - bne _080738C4 - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x31 - bl sub_8044C94 - b _080738CE - .align 2, 0 -_080738C0: .4byte gUnknown_203B460 -_080738C4: - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x23 - bl sub_8044C94 -_080738CE: - adds r0, r6, 0 - adds r0, 0x48 - add r3, sp, 0x54 - ldrb r3, [r3] - strb r3, [r0] - mov r0, r8 - ldrh r1, [r0, 0x4] - adds r0, r6, 0 - adds r0, 0x4C - strh r1, [r0] - mov r2, r8 - ldrh r1, [r2, 0x6] - adds r0, 0x2 - strh r1, [r0] - b _080739C4 -_080738EC: - adds r0, r6, 0 - bl sub_8071A70 - lsls r0, 24 - cmp r0, 0 - beq _080739B8 - movs r3, 0x1 - mov r9, r3 -_080738FC: - ldrb r0, [r7, 0x2] - mov r1, r9 - bl sub_8090DAC - lsls r0, 24 - cmp r0, 0 - beq _080739AE - ldrb r0, [r7, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08073978 - mov r0, r8 - adds r1, r7, 0 - mov r2, sp - movs r3, 0 - bl sub_8073AA0 - ldr r1, _08073974 - ldr r0, [r1] - cmp r0, 0 - beq _080739AE - bl sub_8084100 - adds r4, r0, 0 - adds r0, r6, 0 - adds r0, 0x44 - movs r1, 0x24 - bl sub_8044C94 - adds r0, r6, 0 - adds r0, 0x48 - add r2, sp, 0x54 - ldrb r2, [r2] - strb r2, [r0] - mov r3, r8 - ldrh r1, [r3, 0x4] - adds r0, 0x4 - strh r1, [r0] - ldrh r0, [r3, 0x6] - adds r1, r6, 0 - adds r1, 0x4E - strh r0, [r1] - lsls r4, 2 - add r4, sp - mov r0, r8 - adds r0, 0x4 -_0807395E: - adds r1, r4, 0 - bl sub_80983D8 - movs r1, 0x7 - ands r0, r1 - adds r1, r6, 0 - adds r1, 0x46 - strb r0, [r1] - ldr r0, [r4] - str r0, [r6, 0x58] - b _080739C4 - .align 2, 0 -_08073974: .4byte gUnknown_203B440 -_08073978: - mov r0, r8 - mov r1, r9 - adds r2, r7, 0 - movs r3, 0 - bl sub_80739DC - movs r5, 0 - ldr r1, _080739D4 - ldr r0, [r1] - cmp r5, r0 - bge _080739AE - ldr r4, _080739D8 -_08073990: - lsls r2, r5, 2 - mov r10, r2 - ldr r0, [r4] - bl sub_8084144 - lsls r0, 24 - cmp r0, 0 - beq _080739A2 - b _0807379E -_080739A2: - adds r4, 0x4 - adds r5, 0x1 - ldr r3, _080739D4 - ldr r0, [r3] - cmp r5, r0 - blt _08073990 -_080739AE: - movs r0, 0x1 - add r9, r0 - mov r1, r9 - cmp r1, 0x2 - ble _080738FC -_080739B8: - ldr r2, [sp, 0x50] - adds r2, 0x1 - str r2, [sp, 0x50] - cmp r2, 0x15 - bgt _080739C4 - b _080737F0 -_080739C4: - add sp, 0x58 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080739D4: .4byte gUnknown_203B440 -_080739D8: .4byte gUnknown_202F358 - thumb_func_end sub_8073658 - - thumb_func_start sub_80739DC -sub_80739DC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r5, r0, 0 - mov r10, r1 - mov r9, r2 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - ldr r1, _08073A44 - movs r0, 0 - str r0, [r1] - ldr r1, _08073A48 - movs r2, 0 - adds r0, r1, 0x7 -_08073A00: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _08073A00 - movs r7, 0 -_08073A0A: - ldr r0, _08073A4C - ldr r0, [r0] - lsls r1, r7, 2 - ldr r2, _08073A50 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08073A88 - cmp r5, r4 - beq _08073A88 - mov r0, r10 - cmp r0, 0x1 - bne _08073A54 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - cmp r0, 0 - bne _08073A88 - movs r6, 0x3 - b _08073A6A - .align 2, 0 -_08073A44: .4byte gUnknown_203B440 -_08073A48: .4byte gUnknown_202F350 -_08073A4C: .4byte gUnknown_203B418 -_08073A50: .4byte 0x000135cc -_08073A54: - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08073A88 - movs r6, 0x1 -_08073A6A: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - beq _08073A88 - mov r2, r8 - str r2, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - mov r2, r9 - adds r3, r6, 0 - bl sub_8073B78 -_08073A88: - adds r7, 0x1 - cmp r7, 0x13 - ble _08073A0A - 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_80739DC - - thumb_func_start sub_8073AA0 -sub_8073AA0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r5, r0, 0 - mov r10, r1 - mov r9, r2 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - ldr r1, _08073B6C - movs r0, 0 - str r0, [r1] - movs r6, 0 - adds r7, r1, 0 -_08073AC0: - ldr r0, _08073B70 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _08073B74 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08073B56 - cmp r5, r4 - beq _08073B56 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - beq _08073B56 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08073B56 - movs r3, 0x4 - ldrsh r1, [r4, r3] - movs r2, 0x4 - ldrsh r0, [r5, r2] - subs r2, r1, r0 - cmp r2, 0 - bge _08073B10 - negs r2, r2 -_08073B10: - movs r3, 0x6 - ldrsh r1, [r4, r3] - movs r3, 0x6 - ldrsh r0, [r5, r3] - subs r1, r0 - cmp r1, 0 - bge _08073B20 - negs r1, r1 -_08073B20: - cmp r1, r2 - bge _08073B26 - adds r1, r2, 0 -_08073B26: - cmp r1, 0xA - bgt _08073B56 - mov r0, r8 - cmp r0, 0 - bne _08073B44 - adds r0, r4, 0 - mov r1, r10 - movs r2, 0x1 - bl sub_8048F28 - bl sub_8084144 - lsls r0, 24 - cmp r0, 0 - beq _08073B56 -_08073B44: - ldr r2, [r7] - lsls r1, r2, 2 - add r1, r9 - ldrh r0, [r4, 0x4] - strh r0, [r1] - ldrh r0, [r4, 0x6] - strh r0, [r1, 0x2] - adds r2, 0x1 - str r2, [r7] -_08073B56: - adds r6, 0x1 - cmp r6, 0x13 - ble _08073AC0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08073B6C: .4byte gUnknown_203B440 -_08073B70: .4byte gUnknown_203B418 -_08073B74: .4byte 0x000135cc - thumb_func_end sub_8073AA0 - - thumb_func_start sub_8073B78 -sub_8073B78: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r4, r0, 0 - adds r5, r1, 0 - mov r9, r2 - mov r10, r3 - ldr r0, [sp, 0x20] - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - movs r0, 0x4 - ldrsh r1, [r4, r0] - movs r2, 0x4 - ldrsh r0, [r5, r2] - subs r2, r1, r0 - cmp r2, 0 - bge _08073BA2 - negs r2, r2 -_08073BA2: - movs r3, 0x6 - ldrsh r1, [r4, r3] - movs r6, 0x6 - ldrsh r0, [r5, r6] - subs r1, r0 - cmp r1, 0 - bge _08073BB2 - negs r1, r1 -_08073BB2: - ldr r0, [r4, 0x70] - adds r0, 0xE0 - ldrb r0, [r0] - cmp r0, 0 - bne _08073BCA - adds r0, r1, 0 - cmp r1, r2 - bge _08073BC4 - adds r0, r2, 0 -_08073BC4: - cmp r0, 0xA - ble _08073BCA - b _08073CDC -_08073BCA: - movs r6, 0x1 - negs r6, r6 - cmp r2, r1 - bne _08073C14 - movs r7, 0x4 - ldrsh r1, [r4, r7] - movs r2, 0x4 - ldrsh r0, [r5, r2] - ldrh r2, [r4, 0x4] - ldrh r3, [r5, 0x4] - cmp r1, r0 - bge _08073BFA - movs r6, 0x6 - ldrsh r1, [r4, r6] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - bge _08073BF2 - movs r6, 0x1 - b _08073C7E -_08073BF2: - cmp r1, r0 - ble _08073BFA - movs r6, 0x3 - b _08073C7E -_08073BFA: - lsls r1, r2, 16 - lsls r0, r3, 16 - movs r6, 0x7 - cmp r1, r0 - ble _08073C7A - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r2, 0x6 - ldrsh r0, [r5, r2] - cmp r1, r0 - ble _08073C7A - movs r6, 0x5 - b _08073C7E -_08073C14: - movs r3, 0x4 - ldrsh r1, [r4, r3] - movs r7, 0x4 - ldrsh r0, [r5, r7] - ldrh r2, [r4, 0x4] - ldrh r3, [r5, 0x4] - cmp r1, r0 - bne _08073C34 - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - bge _08073C34 - movs r6, 0 - b _08073C7E -_08073C34: - lsls r1, r2, 16 - lsls r0, r3, 16 - cmp r1, r0 - bge _08073C4C - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - bne _08073C4C - movs r6, 0x2 - b _08073C7E -_08073C4C: - lsls r1, r2, 16 - lsls r0, r3, 16 - cmp r1, r0 - bne _08073C64 - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - ble _08073C64 - movs r6, 0x4 - b _08073C7E -_08073C64: - lsls r1, r2, 16 - lsls r0, r3, 16 - cmp r1, r0 - ble _08073C7A - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r2, 0x6 - ldrsh r0, [r5, r2] - cmp r1, r0 - bne _08073C7A - movs r6, 0x6 -_08073C7A: - cmp r6, 0 - blt _08073CDC -_08073C7E: - ldr r0, _08073CC0 - adds r7, r6, r0 - ldrb r0, [r7] - cmp r0, 0 - bne _08073CDC - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - movs r3, 0xA - bl sub_807C9F8 - lsls r0, 24 - cmp r0, 0 - beq _08073CDC - movs r0, 0x1 - strb r0, [r7] - ldr r1, _08073CC4 - ldr r0, _08073CC8 - ldr r0, [r0] - lsls r0, 2 - adds r1, r0, r1 - str r6, [r1] - ldr r1, _08073CCC - adds r4, r0, r1 - mov r3, r8 - cmp r3, 0 - bne _08073CD0 - adds r0, r5, 0 - mov r1, r9 - mov r2, r10 - bl sub_8048F28 - b _08073CD2 - .align 2, 0 -_08073CC0: .4byte gUnknown_202F350 -_08073CC4: .4byte gUnknown_202F330 -_08073CC8: .4byte gUnknown_203B440 -_08073CCC: .4byte gUnknown_202F358 -_08073CD0: - movs r0, 0x64 -_08073CD2: - str r0, [r4] - ldr r1, _08073CEC - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_08073CDC: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08073CEC: .4byte gUnknown_203B440 - thumb_func_end sub_8073B78 - - thumb_func_start sub_8073CF0 -sub_8073CF0: - push {lr} - bl sub_8067110 - pop {r0} - bx r0 - thumb_func_end sub_8073CF0 - - thumb_func_start sub_8073CFC -sub_8073CFC: - push {lr} - bl sub_80671A0 - pop {r0} - bx r0 - thumb_func_end sub_8073CFC - - thumb_func_start sub_8073D08 -sub_8073D08: - push {lr} - bl sub_8073D14 - pop {r0} - bx r0 - thumb_func_end sub_8073D08 - - thumb_func_start sub_8073D14 -sub_8073D14: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xB0 - adds r6, r0, 0 - ldr r4, [r6, 0x70] - bl sub_8045128 - ldr r5, [r0, 0x14] - cmp r5, 0 - bne _08073D30 - b _0807407A -_08073D30: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08073D3C - b _0807407A -_08073D3C: - ldr r0, _08073D68 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldrb r0, [r4, 0x7] - cmp r0, 0 - beq _08073D4E - b _0807407A -_08073D4E: - ldrb r0, [r4, 0x8] - cmp r0, 0x1 - bne _08073D56 - b _0807407A -_08073D56: - adds r0, r4, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _08073D64 - cmp r0, 0x47 - bne _08073D6C -_08073D64: - movs r0, 0x1 - b _08073D6E - .align 2, 0 -_08073D68: .4byte gUnknown_202DF98 -_08073D6C: - movs r0, 0 -_08073D6E: - cmp r0, 0 - beq _08073D74 - b _0807407A -_08073D74: - adds r0, r4, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08073D80 - b _0807407A -_08073D80: - ldr r0, [r6, 0x70] - mov r10, r0 - adds r0, r5, 0 - bl sub_8045108 - adds r5, r0, 0 - ldrb r1, [r5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08073D98 - b _0807407A -_08073D98: - adds r0, r6, 0 - movs r1, 0x1 - bl sub_8071518 - lsls r0, 24 - cmp r0, 0 - beq _08073DC8 - ldr r0, _08073DBC - adds r1, r5, 0 - bl sub_8045BF8 - ldr r0, _08073DC0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08073DC4 - b _0807404C - .align 2, 0 -_08073DBC: .4byte gUnknown_202DE58 -_08073DC0: .4byte gUnknown_202DF98 -_08073DC4: .4byte gUnknown_80F8F88 -_08073DC8: - mov r1, r10 - ldrb r0, [r1, 0x6] - cmp r0, 0 - bne _08073E24 - ldrb r0, [r5, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bne _08073E24 - mov r7, r10 - ldrb r0, [r7, 0x6] - cmp r0, 0 - beq _08073DF4 - ldr r0, _08073DF0 - bl sub_8083E38 - b _08073DFC - .align 2, 0 -_08073DF0: .4byte 0x0000014b -_08073DF4: - movs r0, 0xA6 - lsls r0, 1 - bl sub_8083E38 -_08073DFC: - adds r0, r5, 0 - bl sub_80915D4 - bl sub_80913A0 - ldr r0, _08073E1C - adds r1, r5, 0 - bl sub_8045BF8 - adds r0, r6, 0x4 - movs r1, 0x1 - bl sub_80461C8 - ldr r0, _08073E20 - b _0807404C - .align 2, 0 -_08073E1C: .4byte gUnknown_202DE58 -_08073E20: .4byte gUnknown_80F9054 -_08073E24: - ldr r0, _08073E64 - ldr r0, [r0] - ldr r1, _08073E68 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08073E70 - mov r7, r10 - ldrb r0, [r7, 0x6] - cmp r0, 0 - bne _08073E70 - movs r4, 0 - add r2, sp, 0x54 - adds r7, 0x60 - ldr r0, _08073E6C - mov r1, sp - ldr r0, [r0] - adds r3, r2, 0 -_08073E48: - stm r3!, {r0} - stm r1!, {r4} - adds r0, 0x4 - adds r4, 0x1 - cmp r4, 0x13 - ble _08073E48 - str r7, [r2, 0x50] - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0x50] - movs r0, 0x15 - mov r8, r0 - b _08073E80 - .align 2, 0 -_08073E64: .4byte gUnknown_203B418 -_08073E68: .4byte 0x0000065b -_08073E6C: .4byte gUnknown_203B460 -_08073E70: - mov r0, r10 - adds r0, 0x60 - str r0, [sp, 0x54] - movs r0, 0x1 - negs r0, r0 - str r0, [sp] - movs r1, 0x1 - mov r8, r1 -_08073E80: - ldrb r0, [r5, 0x2] - add r7, sp, 0xA8 - strb r0, [r7] - adds r0, r7, 0 - ldrb r0, [r0] - cmp r0, 0x8 - bls _08073E90 - b _08073FA8 -_08073E90: - ldrb r1, [r5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08073E9C - b _08073FA8 -_08073E9C: - movs r1, 0x1 - negs r1, r1 - mov r12, r1 - mov r7, r12 - str r7, [sp, 0xAC] - movs r4, 0 - cmp r4, r8 - bge _08073EEC - ldr r0, _08073F94 - mov r9, r0 - add r3, sp, 0x54 -_08073EB2: - ldr r2, [r3] - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08073EE4 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08073EE4 - ldr r1, [r5] - mov r7, r9 - ands r1, r7 - ldr r0, [r2] - ands r0, r7 - cmp r1, r0 - bne _08073EE4 - ldrb r0, [r2, 0x1] - cmp r0, 0x63 - beq _08073EE4 - ldr r1, [sp, 0xAC] - cmp r1, r0 - bge _08073EE4 - str r0, [sp, 0xAC] - mov r12, r4 -_08073EE4: - adds r3, 0x4 - adds r4, 0x1 - cmp r4, r8 - blt _08073EB2 -_08073EEC: - movs r0, 0x1 - negs r0, r0 - cmp r12, r0 - bne _08073F40 - mov r7, r12 - str r7, [sp, 0xAC] - movs r4, 0 - cmp r4, r8 - bge _08073F38 - add r0, sp, 0xA8 - ldrb r0, [r0] - mov r9, r0 - add r3, sp, 0x54 -_08073F06: - ldr r2, [r3] - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08073F30 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08073F30 - ldrb r1, [r2, 0x2] - cmp r9, r1 - bne _08073F30 - ldrb r0, [r2, 0x1] - cmp r0, 0x63 - beq _08073F30 - ldr r7, [sp, 0xAC] - cmp r7, r0 - bge _08073F30 - str r0, [sp, 0xAC] - mov r12, r4 -_08073F30: - adds r3, 0x4 - adds r4, 0x1 - cmp r4, r8 - blt _08073F06 -_08073F38: - movs r0, 0x1 - negs r0, r0 - cmp r12, r0 - beq _08073FA8 -_08073F40: - add r0, sp, 0x54 - mov r1, r12 - lsls r4, r1, 2 - adds r3, r0, r4 - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r5, 0x1] - adds r1, r0 - cmp r1, 0x62 - ble _08073F56 - movs r1, 0x63 -_08073F56: - strb r1, [r2, 0x1] - ldrb r1, [r5] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08073F6C - ldr r0, [r3] - ldrb r1, [r0] - movs r2, 0x8 - orrs r1, r2 - strb r1, [r0] -_08073F6C: - ldr r0, _08073F98 - adds r1, r5, 0 - bl sub_8045BF8 - adds r0, r6, 0x4 - movs r1, 0x1 - bl sub_80461C8 - movs r0, 0xA5 - lsls r0, 1 - bl sub_8083E38 - mov r7, sp - adds r0, r7, r4 - ldr r0, [r0] - cmp r0, 0 - bge _08073FA0 - ldr r0, _08073F9C - b _0807404C - .align 2, 0 -_08073F94: .4byte 0x00ff0008 -_08073F98: .4byte gUnknown_202DE58 -_08073F9C: .4byte gUnknown_80F9018 -_08073FA0: - ldr r0, _08073FA4 - b _0807404C - .align 2, 0 -_08073FA4: .4byte gUnknown_80F9050 -_08073FA8: - movs r4, 0 - cmp r4, r8 - bge _08073FD2 - ldr r0, [sp, 0x54] - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08073FD2 - movs r3, 0x1 - add r2, sp, 0x54 -_08073FBE: - adds r2, 0x4 - adds r4, 0x1 - cmp r4, r8 - bge _08073FD2 - ldr r0, [r2] - ldrb r1, [r0] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _08073FBE -_08073FD2: - cmp r4, r8 - bne _08073FEC - ldr r0, _08073FE4 - adds r1, r5, 0 - bl sub_8045BF8 - ldr r0, _08073FE8 - b _0807404C - .align 2, 0 -_08073FE4: .4byte gUnknown_202DE58 -_08073FE8: .4byte gUnknown_80F8F54 -_08073FEC: - mov r1, r10 - ldrb r0, [r1, 0x6] - cmp r0, 0 - beq _08074000 - ldr r0, _08073FFC - bl sub_8083E38 - b _08074008 - .align 2, 0 -_08073FFC: .4byte 0x0000014b -_08074000: - movs r0, 0xA5 - lsls r0, 1 - bl sub_8083E38 -_08074008: - lsls r0, r4, 2 - add r0, sp - ldr r0, [r0] - cmp r0, 0 - bge _08074034 - ldr r0, [r5] - mov r7, r10 - str r0, [r7, 0x60] - ldr r0, _0807402C - adds r1, r5, 0 - bl sub_8045BF8 - adds r0, r6, 0x4 - movs r1, 0x1 - bl sub_80461C8 - ldr r0, _08074030 - b _0807404C - .align 2, 0 -_0807402C: .4byte gUnknown_202DE58 -_08074030: .4byte gUnknown_80F9018 -_08074034: - adds r0, r5, 0 - bl sub_8091290 - lsls r0, 24 - cmp r0, 0 - beq _08074060 - ldr r0, _08074058 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807405C -_0807404C: - ldr r1, [r0] - adds r0, r6, 0 - bl sub_805239C - b _0807407A - .align 2, 0 -_08074058: .4byte gUnknown_202DF98 -_0807405C: .4byte gUnknown_80F8FAC -_08074060: - ldr r0, _0807408C - adds r1, r5, 0 - bl sub_8045BF8 - adds r0, r6, 0x4 - movs r1, 0x1 - bl sub_80461C8 - ldr r0, _08074090 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_805239C -_0807407A: - add sp, 0xB0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807408C: .4byte gUnknown_202DE58 -_08074090: .4byte gUnknown_80F9050 - thumb_func_end sub_8073D14 - - thumb_func_start sub_8074094 -sub_8074094: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - adds r5, r0, 0 - cmp r5, 0 - bne _080740AA - bl _08074B2E -_080740AA: - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080740B8 - bl _08074B2E -_080740B8: - bl sub_8044B28 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - beq _080740C8 - bl _08074B2E -_080740C8: - ldr r0, [r5, 0x70] - mov r8, r0 - movs r0, 0xA3 - lsls r0, 1 - add r0, r8 - strb r6, [r0] - bl sub_805229C - adds r0, r5, 0 - bl sub_807E8F0 - adds r0, r5, 0 - movs r1, 0x16 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08074170 - ldr r4, _0807434C - add r4, r8 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bls _08074102 - movs r0, 0x13 - strb r0, [r4] -_08074102: - movs r0, 0x64 - bl sub_8084100 - ldr r2, _08074350 - ldrb r1, [r4] - lsls r1, 1 - adds r1, r2 - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _08074170 - strb r6, [r4] - adds r0, r5, 0 - bl sub_80444F4 - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074136 - bl _08074B2E -_08074136: - bl sub_8044B28 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08074146 - bl _08074B2E -_08074146: - adds r0, r5, 0 - adds r1, r5, 0 - movs r2, 0 - movs r3, 0 - bl sub_807D148 - mov r3, r8 - ldrb r0, [r3, 0x7] - cmp r0, 0 - bne _0807415C - b _080743B0 -_0807415C: - ldr r1, _08074354 - ldr r0, [r1] - strb r4, [r0, 0x1] - ldr r0, [r1] - movs r4, 0xB8 - lsls r4, 3 - adds r0, r4 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] -_08074170: - mov r1, r8 - ldrb r0, [r1, 0x7] - cmp r0, 0 - bne _0807417A - b _080743B0 -_0807417A: - movs r2, 0 - mov r9, r2 - movs r4, 0xA - adds r0, r5, 0 - movs r1, 0x17 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08074190 - movs r4, 0 -_08074190: - adds r0, r5, 0 - movs r1, 0x1F - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _080741A0 - subs r4, 0x1 -_080741A0: - adds r0, r5, 0 - movs r1, 0x10 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _080741B0 - subs r4, 0x1 -_080741B0: - adds r0, r5, 0 - movs r1, 0x1B - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _080741C0 - adds r4, 0x1 -_080741C0: - adds r0, r5, 0 - movs r1, 0xA - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _080741D0 - adds r4, 0x1 -_080741D0: - adds r0, r5, 0 - movs r1, 0x2B - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _080741E0 - adds r4, 0x1 -_080741E0: - cmp r4, 0 - bge _080741E6 - movs r4, 0 -_080741E6: - cmp r4, 0x13 - ble _080741EC - movs r4, 0x13 -_080741EC: - mov r3, r9 - str r3, [sp, 0x8] - ldr r0, _08074358 - str r0, [sp, 0xC] - add r6, sp, 0x10 - lsls r2, r4, 3 - ldr r0, _0807435C - adds r2, r0 - adds r0, r6, 0 - add r1, sp, 0x8 - bl sub_800A34C - ldr r2, _08074360 - add r2, r8 - ldrb r0, [r2] - cmp r0, 0x1 - bls _0807421E - ldr r1, _08074364 - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - lsls r1, 16 - ldr r0, [r6, 0x4] - adds r0, r1 - str r0, [r6, 0x4] -_0807421E: - mov r4, r9 - strb r4, [r2] - movs r4, 0x9E - lsls r4, 1 - add r4, r8 - ldr r7, [r4] - add r0, sp, 0x18 - adds r1, r6, 0 - bl sub_80943A8 - ldr r2, [sp, 0x18] - add r0, sp, 0x1C - adds r1, r7, 0 - bl sub_80942C0 - ldr r0, [sp, 0x1C] - str r0, [r4] - movs r6, 0x1 - adds r0, r7, 0 - bl sub_8094450 - cmp r0, 0x13 - ble _0807425C - ldr r0, [r4] - bl sub_8094450 - cmp r0, 0x13 - bgt _0807425C - ldr r0, _08074368 - ldr r0, [r0] - mov r9, r0 -_0807425C: - adds r0, r7, 0 - bl sub_8094450 - cmp r0, 0x9 - ble _0807427C - movs r0, 0x9E - lsls r0, 1 - add r0, r8 - ldr r0, [r0] - bl sub_8094450 - cmp r0, 0x9 - bgt _0807427C - ldr r0, _0807436C - ldr r0, [r0] - mov r9, r0 -_0807427C: - movs r4, 0x9E - lsls r4, 1 - add r4, r8 - ldr r0, [r4] - bl sub_8094450 - cmp r0, 0 - bne _08074298 - add r0, sp, 0x20 - movs r1, 0 - bl sub_80943A0 - ldr r0, [sp, 0x20] - str r0, [r4] -_08074298: - ldr r0, [r4] - bl sub_8094450 - cmp r0, 0 - bge _080742AE - add r0, sp, 0x24 - movs r1, 0 - bl sub_80943A0 - ldr r0, [sp, 0x24] - str r0, [r4] -_080742AE: - ldr r0, [r4] - bl sub_8094450 - cmp r0, 0 - bne _08074384 - bl sub_805E804 - adds r0, r5, 0 - bl sub_80444F4 - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080742D8 - bl _08074B2E -_080742D8: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080742E6 - bl _08074B2E -_080742E6: - ldr r3, _08074354 - ldr r0, [r3] - ldr r2, _08074370 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0x9 - bhi _080742F8 - adds r0, 0x1 - strb r0, [r1] -_080742F8: - ldr r0, [r3] - adds r0, r2 - ldrb r2, [r0] - cmp r2, 0x1 - bne _08074308 - ldr r0, _08074374 - ldr r0, [r0] - mov r9, r0 -_08074308: - cmp r2, 0x2 - bne _08074314 - ldr r0, _08074378 - ldr r0, [r0] - mov r9, r0 - movs r6, 0 -_08074314: - cmp r2, 0x3 - bne _08074320 - ldr r0, _0807437C - ldr r0, [r0] - mov r9, r0 - movs r6, 0 -_08074320: - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A96C - ldr r3, _08074380 - adds r0, r5, 0 - movs r1, 0x1 - movs r2, 0xE - bl sub_806F324 - movs r1, 0xA3 - lsls r1, 1 - add r1, r8 - movs r0, 0x1 - strb r0, [r1] - ldr r0, [r4] - bl sub_8094450 - cmp r0, 0 - beq _08074390 - b _080743B0 - .align 2, 0 -_0807434C: .4byte 0x00000169 -_08074350: .4byte gUnknown_80F5594 -_08074354: .4byte gUnknown_203B418 -_08074358: .4byte 0x0000199a -_0807435C: .4byte gUnknown_80F54F4 -_08074360: .4byte 0x00000153 -_08074364: .4byte gUnknown_80F60DC -_08074368: .4byte gUnknown_80FD594 -_0807436C: .4byte gUnknown_80FD5B8 -_08074370: .4byte 0x00000679 -_08074374: .4byte gUnknown_80FD5DC -_08074378: .4byte gUnknown_80FD608 -_0807437C: .4byte gUnknown_80FD628 -_08074380: .4byte 0x00000211 -_08074384: - ldr r0, _08074408 - ldr r0, [r0] - ldr r1, _0807440C - adds r0, r1 - movs r1, 0 - strb r1, [r0] -_08074390: - mov r2, r9 - cmp r2, 0 - beq _080743B0 - cmp r6, 0 - beq _080743A0 - ldr r0, _08074410 - bl sub_8083E38 -_080743A0: - adds r0, r5, 0 - mov r1, r9 - bl sub_80522A8 - movs r0, 0x1E - movs r1, 0x32 - bl sub_803E708 -_080743B0: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080743BE - b _08074B2E -_080743BE: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080743CA - b _08074B2E -_080743CA: - ldr r0, _08074408 - ldr r0, [r0] - ldr r3, _08074414 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _08074480 - adds r0, r5, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _0807441C - adds r0, r5, 0 - movs r1, 0x6 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - bne _08074466 - ldr r0, _08074418 - movs r4, 0 - ldrsh r1, [r0, r4] - movs r3, 0x88 - lsls r3, 2 - adds r0, r5, 0 - movs r2, 0x12 - bl sub_806F324 - b _08074466 - .align 2, 0 -_08074408: .4byte gUnknown_203B418 -_0807440C: .4byte 0x00000679 -_08074410: .4byte 0x00000153 -_08074414: .4byte 0x0000e266 -_08074418: .4byte gUnknown_80F4F8E -_0807441C: - adds r0, r5, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08074466 - adds r0, r5, 0 - movs r1, 0x9 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - bne _08074466 - adds r0, r5, 0 - movs r1, 0xD - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - bne _08074466 - adds r0, r5, 0 - movs r1, 0x11 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - bne _08074466 - ldr r0, _08074608 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r3, 0x88 - lsls r3, 2 - adds r0, r5, 0 - movs r2, 0x12 - bl sub_806F324 -_08074466: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074474 - b _08074B2E -_08074474: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074480 - b _08074B2E -_08074480: - movs r0, 0x64 - bl sub_8084100 - adds r4, r0, 0 - adds r0, r5, 0 - movs r1, 0x21 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _080744D8 - ldr r0, _0807460C - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r4, r0 - bge _080744D8 - adds r0, r5, 0 - bl sub_8070A58 - lsls r0, 24 - cmp r0, 0 - beq _080744D8 - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080744C0 - b _08074B2E -_080744C0: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080744CC - b _08074B2E -_080744CC: - adds r0, r5, 0 - adds r1, r5, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8079F20 -_080744D8: - adds r0, r5, 0 - movs r1, 0xB - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807450C - ldr r2, _08074610 - add r2, r8 - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - ldrb r1, [r2] - ldr r0, _08074614 - movs r4, 0 - ldrsh r0, [r0, r4] - cmp r1, r0 - blt _0807450C - movs r0, 0 - strb r0, [r2] - adds r0, r5, 0 - adds r1, r5, 0 - movs r2, 0x7F - movs r3, 0 - bl sub_8077910 -_0807450C: - mov r0, r8 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x4 - bne _0807453C - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807452A - b _08074B2E -_0807452A: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074536 - b _08074B2E -_08074536: - adds r0, r5, 0 - bl sub_80420B8 -_0807453C: - mov r0, r8 - adds r0, 0xAC - ldrb r1, [r0] - adds r6, r0, 0 - cmp r1, 0x1 - bne _080745B6 - mov r4, r8 - adds r4, 0xAE - ldrb r0, [r4] - cmp r0, 0 - beq _0807455C - subs r0, 0x1 - strb r0, [r4] - lsls r0, 24 - cmp r0, 0 - bne _0807459C -_0807455C: - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074570 - b _08074B2E -_08074570: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _0807457C - b _08074B2E -_0807457C: - ldr r0, _08074618 - ldrh r0, [r0] - strb r0, [r4] - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A96C - ldr r0, _0807461C - movs r2, 0 - ldrsh r1, [r0, r2] - movs r3, 0x82 - lsls r3, 2 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_806F324 -_0807459C: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080745AA - b _08074B2E -_080745AA: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080745B6 - b _08074B2E -_080745B6: - ldrb r0, [r6] - cmp r0, 0x2 - bne _08074628 - mov r4, r8 - adds r4, 0xAE - ldrb r0, [r4] - cmp r0, 0 - beq _080745D0 - subs r0, 0x1 - strb r0, [r4] - lsls r0, 24 - cmp r0, 0 - bne _08074696 -_080745D0: - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080745E4 - b _08074B2E -_080745E4: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080745F0 - b _08074B2E -_080745F0: - ldr r0, _08074620 - ldrh r0, [r0] - strb r0, [r4] - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A96C - ldr r0, _08074624 - movs r3, 0 - ldrsh r1, [r0, r3] - b _0807468C - .align 2, 0 -_08074608: .4byte gUnknown_80F4F8E -_0807460C: .4byte gUnknown_80F4E0C -_08074610: .4byte 0x00000113 -_08074614: .4byte gUnknown_80F4F30 -_08074618: .4byte gUnknown_80F4F32 -_0807461C: .4byte gUnknown_80F4F70 -_08074620: .4byte gUnknown_80F4F34 -_08074624: .4byte gUnknown_80F4F72 -_08074628: - cmp r0, 0x3 - bne _080746B0 - mov r2, r8 - adds r2, 0xAE - ldrb r0, [r2] - cmp r0, 0 - beq _08074640 - subs r0, 0x1 - strb r0, [r2] - lsls r0, 24 - cmp r0, 0 - bne _08074696 -_08074640: - mov r1, r8 - adds r1, 0xAF - ldrb r4, [r1] - cmp r4, 0x1C - bhi _0807464E - adds r0, r4, 0x1 - strb r0, [r1] -_0807464E: - ldr r0, _08074718 - ldrh r0, [r0] - strb r0, [r2] - cmp r4, 0x1C - ble _0807465A - movs r4, 0x1D -_0807465A: - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807466E - b _08074B2E -_0807466E: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _0807467A - b _08074B2E -_0807467A: - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A96C - ldr r1, _0807471C - lsls r0, r4, 1 - adds r0, r1 - movs r4, 0 - ldrsh r1, [r0, r4] -_0807468C: - ldr r3, _08074720 - adds r0, r5, 0 - movs r2, 0x3 - bl sub_806F324 -_08074696: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080746A4 - b _08074B2E -_080746A4: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080746B0 - b _08074B2E -_080746B0: - mov r0, r8 - adds r0, 0xB0 - ldrb r1, [r0] - mov r10, r0 - cmp r1, 0x7 - bne _08074730 - mov r4, r8 - adds r4, 0xB9 - ldrb r0, [r4] - cmp r0, 0 - beq _080746D0 - subs r0, 0x1 - strb r0, [r4] - lsls r0, 24 - cmp r0, 0 - bne _08074786 -_080746D0: - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080746E4 - b _08074B2E -_080746E4: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080746F0 - b _08074B2E -_080746F0: - ldr r0, _08074724 - ldrh r0, [r0] - strb r0, [r4] - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A96C - mov r0, r8 - adds r0, 0xB4 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_8041C4C - ldr r0, _08074728 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r3, _0807472C - adds r0, r5, 0 - movs r2, 0x2 - b _08074782 - .align 2, 0 -_08074718: .4byte gUnknown_80F4F36 -_0807471C: .4byte gUnknown_80F4FC8 -_08074720: .4byte 0x0000020a -_08074724: .4byte gUnknown_80F4F38 -_08074728: .4byte gUnknown_80F4F74 -_0807472C: .4byte 0x00000209 -_08074730: - cmp r1, 0x4 - bne _080747B0 - mov r4, r8 - adds r4, 0xB9 - ldrb r0, [r4] - cmp r0, 0 - beq _08074748 - subs r0, 0x1 - strb r0, [r4] - lsls r0, 24 - cmp r0, 0 - bne _08074786 -_08074748: - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807475C - b _08074B2E -_0807475C: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074768 - b _08074B2E -_08074768: - ldr r0, _080747A4 - ldrh r0, [r0] - strb r0, [r4] - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A96C - ldr r0, _080747A8 - movs r3, 0 - ldrsh r1, [r0, r3] - ldr r3, _080747AC - adds r0, r5, 0 - movs r2, 0x5 -_08074782: - bl sub_806F324 -_08074786: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074794 - b _08074B2E -_08074794: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080747A0 - b _08074B2E -_080747A0: - b _08074802 - .align 2, 0 -_080747A4: .4byte gUnknown_80F4F3A -_080747A8: .4byte gUnknown_80F4F76 -_080747AC: .4byte 0x0000020b -_080747B0: - cmp r1, 0x5 - bne _08074802 - mov r4, r8 - adds r4, 0xB9 - ldrb r0, [r4] - cmp r0, 0 - beq _080747C8 - subs r0, 0x1 - strb r0, [r4] - lsls r0, 24 - cmp r0, 0 - bne _08074802 -_080747C8: - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080747DC - b _08074B2E -_080747DC: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080747E8 - b _08074B2E -_080747E8: - ldr r0, _080748D4 - ldrh r0, [r0] - strb r0, [r4] - ldr r0, _080748D8 - movs r4, 0 - ldrsh r2, [r0, r4] - movs r0, 0x1 - str r0, [sp] - adds r0, r5, 0 - adds r1, r5, 0 - movs r3, 0 - bl sub_8077C44 -_08074802: - mov r0, r8 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807488A - mov r2, r8 - adds r2, 0xCC - ldrb r0, [r2] - cmp r0, 0 - beq _08074820 - subs r0, 0x1 - strb r0, [r2] - lsls r0, 24 - cmp r0, 0 - bne _08074870 -_08074820: - mov r0, r8 - movs r3, 0x10 - ldrsh r1, [r0, r3] - cmp r1, 0 - bge _0807482C - adds r1, 0x3 -_0807482C: - asrs r4, r1, 2 - cmp r4, 0 - bne _08074834 - movs r4, 0x1 -_08074834: - ldr r0, _080748DC - ldrh r0, [r0] - strb r0, [r2] - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807484E - b _08074B2E -_0807484E: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _0807485A - b _08074B2E -_0807485A: - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A96C - movs r3, 0x83 - lsls r3, 2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x7 - bl sub_806F324 -_08074870: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807487E - b _08074B2E -_0807487E: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _0807488A - b _08074B2E -_0807488A: - mov r3, r8 - adds r3, 0xD0 - ldrb r4, [r3] - mov r9, r4 - cmp r4, 0x1 - beq _08074898 - b _080749AE -_08074898: - mov r2, r8 - adds r2, 0xDA - ldrb r0, [r2] - cmp r0, 0 - beq _080748AC - subs r0, 0x1 - strb r0, [r2] - lsls r0, 24 - cmp r0, 0 - bne _08074994 -_080748AC: - ldr r0, _080748E0 - movs r1, 0 - ldrsh r6, [r0, r1] - ldr r0, _080748E4 - ldr r1, [r0] - mov r0, r8 - adds r0, 0xD8 - ldrb r0, [r0] - lsls r0, 2 - ldr r4, _080748E8 - adds r1, r4 - adds r1, r0 - ldr r4, [r1] - ldr r0, _080748EC - ldrh r0, [r0] - strb r0, [r2] - cmp r4, 0 - bne _080748F0 - strb r4, [r3] - b _08074994 - .align 2, 0 -_080748D4: .4byte gUnknown_80F4F3C -_080748D8: .4byte gUnknown_80F4FB2 -_080748DC: .4byte gUnknown_80F4F3E -_080748E0: .4byte gUnknown_80F4FB4 -_080748E4: .4byte gUnknown_203B418 -_080748E8: .4byte 0x000135cc -_080748EC: .4byte gUnknown_80F4F40 -_080748F0: - ldr r0, [r4, 0x70] - adds r0, 0x98 - mov r1, r8 - adds r1, 0xD4 - ldr r2, [r0] - ldr r0, [r1] - cmp r2, r0 - beq _08074906 - movs r0, 0 - strb r0, [r3] - b _08074994 -_08074906: - adds r0, r5, 0 - movs r1, 0x3A - bl sub_8071824 - lsls r0, 24 - lsrs r7, r0, 24 - adds r0, r5, 0 - bl sub_80444F4 - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807492C - b _08074B2E -_0807492C: - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807493A - b _08074B2E -_0807493A: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074946 - b _08074B2E -_08074946: - mov r1, r10 - ldrb r0, [r1] - cmp r0, 0x1 - beq _08074994 - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A96C - ldr r3, _08074980 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x9 - bl sub_806F324 - cmp r7, 0 - beq _08074984 - adds r0, r4, 0 - adds r1, r4, 0 - bl sub_807A96C - movs r3, 0xFD - lsls r3, 1 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0xD - bl sub_806F324 - b _08074994 - .align 2, 0 -_08074980: .4byte 0x0000020d -_08074984: - mov r2, r9 - str r2, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r6, 0 - movs r3, 0 - bl sub_8077C44 -_08074994: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080749A2 - b _08074B2E -_080749A2: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080749AE - b _08074B2E -_080749AE: - mov r4, r8 - adds r4, 0xFD - ldrb r0, [r4] - cmp r0, 0 - beq _08074A46 - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074A46 - movs r0, 0 - bl sub_807520C - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080749D8 - b _08074B2E -_080749D8: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _080749E4 - b _08074B2E -_080749E4: - ldr r0, _08074A18 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08074A1C - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A96C - mov r0, r8 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x7 - bne _08074A24 - ldr r0, _08074A20 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _08074A30 - .align 2, 0 -_08074A18: .4byte gUnknown_202DFE8 -_08074A1C: .4byte gUnknown_80FEB30 -_08074A20: .4byte gUnknown_810075C -_08074A24: - ldr r1, _08074B40 - ldr r3, _08074B44 - adds r0, r5, 0 - movs r2, 0xB - bl sub_806F324 -_08074A30: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08074B2E - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08074B2E -_08074A46: - mov r0, r8 - adds r0, 0xC0 - ldrb r1, [r0] - adds r7, r0, 0 - cmp r1, 0x1 - bne _08074AD4 - mov r4, r8 - adds r4, 0xC1 - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074AD4 - strb r0, [r7] - adds r0, r5, 0 - movs r1, 0 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - bne _08074AD4 - adds r0, r5, 0 - movs r1, 0 - bl sub_8070D04 - lsls r0, 24 - cmp r0, 0 - bne _08074AD4 - adds r0, r5, 0 - bl sub_8070CD0 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - bne _08074AD4 - movs r0, 0 - bl sub_807520C - add r4, sp, 0x28 - ldr r1, _08074B48 - adds r0, r4, 0 - bl sub_8092A88 - ldrb r0, [r4] - movs r1, 0x10 - orrs r0, r1 - strb r0, [r4] - str r6, [sp] - str r4, [sp, 0x4] - adds r0, r5, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_8055FA0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08074B2E - bl sub_8044B28 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _08074B2E - mov r0, r8 - adds r0, 0xA0 - str r1, [r0] -_08074AD4: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08074B2E - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08074B2E - ldrb r0, [r7] - cmp r0, 0xC - bne _08074B1E - mov r4, r8 - adds r4, 0xC1 - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074B1E - strb r0, [r7] - movs r1, 0xA5 - lsls r1, 1 - add r1, r8 - strb r0, [r1] - ldr r0, _08074B4C - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08074B50 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_08074B1E: - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08074B2E - bl sub_8044B28 -_08074B2E: - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08074B40: .4byte 0x0000270f -_08074B44: .4byte 0x0000020e -_08074B48: .4byte 0x00000165 -_08074B4C: .4byte gUnknown_202DF98 -_08074B50: .4byte gUnknown_80FABD8 - thumb_func_end sub_8074094 - - thumb_func_start sub_8074B54 -sub_8074B54: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - cmp r7, 0 - bne _08074B62 - b _08074F96 -_08074B62: - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074B6E - b _08074F96 -_08074B6E: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074B7A - b _08074F96 -_08074B7A: - bl sub_805229C - ldr r6, [r7, 0x70] - movs r1, 0xA3 - lsls r1, 1 - adds r0, r6, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08074C48 - adds r0, r6, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x2 - beq _08074C48 - cmp r0, 0x3 - beq _08074C48 - movs r4, 0 - ldrb r0, [r6, 0x6] - cmp r0, 0 - bne _08074BAE - movs r2, 0x2 - ldrsh r0, [r6, r2] - bl sub_808DB2C - lsls r0, 24 - lsrs r4, r0, 24 -_08074BAE: - cmp r4, 0 - beq _08074C48 - adds r0, r7, 0 - movs r1, 0xA - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08074BC8 - ldr r0, _08074EF8 - movs r3, 0 - ldrsh r0, [r0, r3] - adds r4, r0 -_08074BC8: - adds r0, r6, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0x6 - bne _08074BDA - ldr r0, _08074EFC - movs r1, 0 - ldrsh r0, [r0, r1] - adds r4, r0 -_08074BDA: - adds r0, r7, 0 - movs r1, 0x3 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08074BFE - adds r0, r7, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bne _08074BFE - ldr r0, _08074F00 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r4, r0 -_08074BFE: - movs r0, 0xFA - lsls r0, 1 - cmp r4, r0 - ble _08074C08 - adds r4, r0, 0 -_08074C08: - cmp r4, 0x1D - bgt _08074C0E - movs r4, 0x1E -_08074C0E: - movs r3, 0xFC - lsls r3, 1 - adds r1, r6, r3 - ldrh r0, [r6, 0x10] - ldrh r2, [r1] - adds r0, r2 - strh r0, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, r4 - blt _08074C38 -_08074C24: - ldrh r0, [r6, 0xE] - adds r0, 0x1 - strh r0, [r6, 0xE] - ldrh r0, [r1] - subs r0, r4 - strh r0, [r1] - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, r4 - bge _08074C24 -_08074C38: - movs r3, 0xE - ldrsh r1, [r6, r3] - ldrh r2, [r6, 0x10] - movs r3, 0x10 - ldrsh r0, [r6, r3] - cmp r1, r0 - blt _08074C48 - strh r2, [r6, 0xE] -_08074C48: - adds r0, r6, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0 - beq _08074C6E - adds r4, r6, 0 - adds r4, 0xA9 - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074C6E - adds r0, r7, 0 - adds r1, r7, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_807A124 -_08074C6E: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074C7C - b _08074F96 -_08074C7C: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074C88 - b _08074F96 -_08074C88: - adds r0, r6, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0 - beq _08074CAA - adds r4, r6, 0 - adds r4, 0xAD - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074CAA - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_807A290 -_08074CAA: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074CB8 - b _08074F96 -_08074CB8: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074CC4 - b _08074F96 -_08074CC4: - adds r0, r6, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0 - beq _08074CE6 - adds r4, r6, 0 - adds r4, 0xB8 - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074CE6 - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_807A324 -_08074CE6: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074CF4 - b _08074F96 -_08074CF4: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074D00 - b _08074F96 -_08074D00: - adds r0, r6, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0 - beq _08074D22 - adds r4, r6, 0 - adds r4, 0xBD - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074D22 - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_807A400 -_08074D22: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074D30 - b _08074F96 -_08074D30: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074D3C - b _08074F96 -_08074D3C: - adds r0, r6, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0 - beq _08074D5E - adds r4, r6, 0 - adds r4, 0xC5 - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074D5E - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_807A4C8 -_08074D5E: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074D6C - b _08074F96 -_08074D6C: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074D78 - b _08074F96 -_08074D78: - adds r0, r6, 0 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0 - beq _08074D9C - adds r4, r6, 0 - adds r4, 0xCB - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074D9C - adds r0, r7, 0 - adds r1, r7, 0 - movs r2, 0 - bl sub_807A5D0 -_08074D9C: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074DAA - b _08074F96 -_08074DAA: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074DB6 - b _08074F96 -_08074DB6: - adds r0, r6, 0 - adds r0, 0xD0 - ldrb r0, [r0] - cmp r0, 0 - beq _08074DD8 - adds r4, r6, 0 - adds r4, 0xD9 - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074DD8 - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_807A6C8 -_08074DD8: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074DE6 - b _08074F96 -_08074DE6: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074DF2 - b _08074F96 -_08074DF2: - adds r0, r6, 0 - adds r0, 0xDC - ldrb r0, [r0] - cmp r0, 0 - beq _08074E14 - adds r4, r6, 0 - adds r4, 0xDD - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074E14 - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_807A734 -_08074E14: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074E22 - b _08074F96 -_08074E22: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074E2E - b _08074F96 -_08074E2E: - adds r0, r6, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0 - beq _08074E50 - adds r4, r6, 0 - adds r4, 0xE5 - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074E50 - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_807A7C8 -_08074E50: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074E5E - b _08074F96 -_08074E5E: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _08074E6A - b _08074F96 -_08074E6A: - adds r0, r6, 0 - adds r0, 0xE8 - ldrb r0, [r0] - cmp r0, 0 - beq _08074E8C - adds r4, r6, 0 - adds r4, 0xE9 - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074E8C - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_807A888 -_08074E8C: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08074E9A - b _08074F96 -_08074E9A: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08074F96 - adds r0, r6, 0 - adds r0, 0xEC - ldrb r0, [r0] - cmp r0, 0 - beq _08074EC6 - adds r4, r6, 0 - adds r4, 0xED - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074EC6 - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_807A924 -_08074EC6: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08074F96 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08074F96 - adds r4, r6, 0 - adds r4, 0xFA - ldrb r0, [r4] - cmp r0, 0 - beq _08074F18 - adds r0, r4, 0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074F18 - ldr r0, _08074F04 - adds r1, r7, 0 - b _08074F08 - .align 2, 0 -_08074EF8: .4byte gUnknown_80F4FC4 -_08074EFC: .4byte gUnknown_80F4FC0 -_08074F00: .4byte gUnknown_80F4FC2 -_08074F04: .4byte gUnknown_202DF98 -_08074F08: - movs r2, 0 - bl sub_8045B94 - ldr r0, _08074FA0 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 -_08074F18: - movs r0, 0 - mov r8, r0 - movs r5, 0 -_08074F1E: - ldr r1, _08074FA4 - adds r0, r6, r1 - adds r4, r0, r5 - ldrb r0, [r4] - cmp r0, 0 - beq _08074F3C - adds r0, r5, r1 - adds r0, r6, r0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074F3C - movs r2, 0x1 - mov r8, r2 -_08074F3C: - movs r3, 0x84 - lsls r3, 1 - adds r0, r6, r3 - adds r4, r0, r5 - ldrb r0, [r4] - cmp r0, 0 - beq _08074F5C - adds r0, r5, r3 - adds r0, r6, r0 - bl sub_80838EC - ldrb r0, [r4] - cmp r0, 0 - bne _08074F5C - movs r0, 0x1 - mov r8, r0 -_08074F5C: - adds r5, 0x1 - cmp r5, 0x4 - ble _08074F1E - mov r1, r8 - cmp r1, 0 - beq _08074F96 - ldr r0, [r7, 0x70] - movs r2, 0x82 - lsls r2, 1 - adds r0, r2 - ldr r4, [r0] - adds r0, r7, 0 - bl sub_8070774 - adds r5, r0, 0 - cmp r4, r5 - beq _08074F96 - ldr r0, _08074FA8 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r1, _08074FAC - lsls r0, r5, 2 - adds r0, r1 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 -_08074F96: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08074FA0: .4byte gUnknown_8100740 -_08074FA4: .4byte 0x0000010d -_08074FA8: .4byte gUnknown_202DF98 -_08074FAC: .4byte gUnknown_80FA124 - thumb_func_end sub_8074B54 - - thumb_func_start sub_8074FB0 -sub_8074FB0: - push {r4-r6,lr} - adds r3, r0, 0 - adds r5, r1, 0 - ldr r4, [r3, 0x70] - movs r1, 0xFA - lsls r1, 1 - adds r0, r4, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x3 - ble _08074FD0 - adds r1, r4, 0 - adds r1, 0x44 - movs r0, 0 - strh r0, [r1] - b _08075040 -_08074FD0: - ldr r0, _08074FE0 - ldr r0, [r0] - ldrb r0, [r0] - cmp r0, 0 - beq _08074FE8 - ldr r1, _08074FE4 - movs r0, 0x2 - b _08074FEC - .align 2, 0 -_08074FE0: .4byte gUnknown_203B46C -_08074FE4: .4byte gUnknown_202F378 -_08074FE8: - ldr r1, _08075048 - movs r0, 0x1 -_08074FEC: - str r0, [r1] - adds r6, r1, 0 - movs r1, 0xFA - lsls r1, 1 - adds r0, r4, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - movs r0, 0xC2 - lsls r0, 1 - adds r1, r0 - adds r1, r4, r1 - movs r0, 0 - strb r0, [r1, 0x1A] - str r5, [r1, 0xC] - ldrh r0, [r3, 0x4] - strh r0, [r1] - ldrh r0, [r3, 0x6] - strh r0, [r1, 0x2] - movs r3, 0 - ldrsh r0, [r2, r3] - str r0, [r1, 0x4] - movs r3, 0x2 - ldrsh r0, [r2, r3] - str r0, [r1, 0x8] - ldr r0, _0807504C - lsls r2, r5, 2 - adds r2, r0 - movs r5, 0 - ldrsh r0, [r2, r5] - ldr r3, [r6] - muls r0, r3 - str r0, [r1, 0x10] - movs r5, 0x2 - ldrsh r0, [r2, r5] - muls r0, r3 - str r0, [r1, 0x14] - adds r0, r4, 0 - bl sub_8075050 -_08075040: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08075048: .4byte gUnknown_202F378 -_0807504C: .4byte gUnknown_80F4D44 - thumb_func_end sub_8074FB0 - - thumb_func_start sub_8075050 -sub_8075050: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r9, r0 - adds r6, r1, 0 - ldr r0, _08075070 - ldr r0, [r0] - ldrb r0, [r0] - cmp r0, 0 - beq _08075078 - ldr r1, _08075074 - movs r0, 0x2 - b _0807507C - .align 2, 0 -_08075070: .4byte gUnknown_203B46C -_08075074: .4byte gUnknown_202F378 -_08075078: - ldr r1, _080750D0 - movs r0, 0x1 -_0807507C: - str r0, [r1] - movs r1, 0xFA - lsls r1, 1 - add r1, r9 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - bne _080750D4 - ldr r0, _080750D0 - ldr r1, [r0] - lsls r1, 1 - movs r0, 0x18 - bl __divsi3 - movs r1, 0xCE - lsls r1, 1 - add r1, r9 - strh r0, [r1] - movs r2, 0xCA - lsls r2, 1 - add r2, r9 - ldr r1, [r2] - lsls r1, 1 - str r1, [r2] - movs r2, 0xCC - lsls r2, 1 - add r2, r9 - ldr r1, [r2] - lsls r1, 1 - str r1, [r2] - strh r0, [r6, 0x18] - ldr r0, [r6, 0x10] - lsls r0, 1 - str r0, [r6, 0x10] - ldr r0, [r6, 0x14] - lsls r0, 1 - str r0, [r6, 0x14] - b _080751F8 - .align 2, 0 -_080750D0: .4byte gUnknown_202F378 -_080750D4: - cmp r0, 0x3 - bne _08075160 - ldr r1, [r6, 0x10] - str r1, [sp] - ldr r0, [r6, 0x14] - str r0, [sp, 0x4] - movs r4, 0xCE - lsls r4, 1 - add r4, r9 - movs r5, 0 - movs r7, 0x1 -_080750EA: - ldr r1, _0807515C - ldr r0, [r1] - lsls r1, r0, 1 - adds r1, r0 - movs r0, 0x18 - bl __divsi3 - strh r0, [r4] - movs r3, 0xCA - lsls r3, 1 - add r3, r9 - adds r3, r5 - ldr r1, [r3] - lsls r0, r1, 1 - adds r0, r1 - str r0, [r3] - movs r2, 0xCC - lsls r2, 1 - add r2, r9 - adds r2, r5 - ldr r1, [r2] - lsls r0, r1, 1 - adds r0, r1 - str r0, [r2] - ldr r0, [r3] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [r3] - ldr r0, [r2] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [r2] - adds r4, 0x1C - adds r5, 0x1C - subs r7, 0x1 - cmp r7, 0 - bge _080750EA - ldr r1, _0807515C - ldr r0, [r1] - lsls r1, r0, 1 - adds r1, r0 - movs r0, 0x18 - bl __divsi3 - strh r0, [r6, 0x18] - ldr r1, [sp] - lsls r0, r1, 1 - adds r0, r1 - str r0, [r6, 0x10] - ldr r1, [sp, 0x4] - lsls r0, r1, 1 - adds r0, r1 - str r0, [r6, 0x14] - b _080751F8 - .align 2, 0 -_0807515C: .4byte gUnknown_202F378 -_08075160: - cmp r0, 0x4 - bne _080751EC - ldr r0, [r6, 0x10] - str r0, [sp] - ldr r1, [r6, 0x14] - str r1, [sp, 0x4] - movs r7, 0xCE - lsls r7, 1 - add r7, r9 - movs r0, 0 - mov r8, r0 - movs r1, 0x2 - mov r10, r1 -_0807517A: - ldr r0, _080751E8 - ldr r1, [r0] - lsls r1, 2 - movs r0, 0x18 - bl __divsi3 - strh r0, [r7] - movs r4, 0xCA - lsls r4, 1 - add r4, r9 - add r4, r8 - ldr r0, [r4] - lsls r0, 2 - str r0, [r4] - movs r5, 0xCC - lsls r5, 1 - add r5, r9 - add r5, r8 - ldr r0, [r5] - lsls r0, 2 - str r0, [r5] - ldr r0, [r4] - movs r1, 0x3 - bl __divsi3 - str r0, [r4] - ldr r0, [r5] - movs r1, 0x3 - bl __divsi3 - str r0, [r5] - adds r7, 0x1C - movs r1, 0x1C - add r8, r1 - movs r0, 0x1 - negs r0, r0 - add r10, r0 - mov r1, r10 - cmp r1, 0 - bge _0807517A - ldr r0, _080751E8 - ldr r1, [r0] - lsls r1, 2 - movs r0, 0x18 - bl __divsi3 - strh r0, [r6, 0x18] - ldr r1, [sp] - lsls r0, r1, 2 - str r0, [r6, 0x10] - ldr r1, [sp, 0x4] - lsls r0, r1, 2 - str r0, [r6, 0x14] - b _080751F8 - .align 2, 0 -_080751E8: .4byte gUnknown_202F378 -_080751EC: - ldr r0, _08075208 - ldr r1, [r0] - movs r0, 0x18 - bl __divsi3 - strh r0, [r6, 0x18] -_080751F8: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08075208: .4byte gUnknown_202F378 - thumb_func_end sub_8075050 - - thumb_func_start sub_807520C -sub_807520C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - mov r10, r0 - movs r7, 0 - movs r0, 0 - mov r9, r0 - ldr r0, _08075238 - mov r1, r9 - strb r1, [r0] - ldr r0, _0807523C - ldr r0, [r0] - ldrb r0, [r0] - cmp r0, 0 - beq _08075244 - ldr r1, _08075240 - movs r0, 0x2 - b _08075248 - .align 2, 0 -_08075238: .4byte gUnknown_202F32D -_0807523C: .4byte gUnknown_203B46C -_08075240: .4byte gUnknown_202F378 -_08075244: - ldr r1, _080752D0 - movs r0, 0x1 -_08075248: - str r0, [r1] - movs r2, 0 - mov r8, r2 -_0807524E: - ldr r0, _080752D4 - ldr r0, [r0] - mov r3, r8 - lsls r1, r3, 2 - ldr r4, _080752D8 - adds r0, r4 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807534C - ldr r4, [r5, 0x70] - movs r1, 0xFA - lsls r1, 1 - adds r0, r4, r1 - movs r3, 0 - ldrsh r2, [r0, r3] - cmp r2, 0 - bne _080752E0 - ldr r0, _080752DC - adds r1, r4, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _0807534C - strb r2, [r1] - movs r1, 0xB6 - lsls r1, 1 - adds r6, r4, r1 - ldr r1, [r6] - cmp r1, 0 - beq _0807534C - ldr r0, [r5, 0x4] - cmp r1, r0 - beq _0807534C - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - beq _080752B2 - adds r0, r5, 0 - bl sub_8070CD0 - lsls r0, 24 - cmp r0, 0 - bne _0807534C -_080752B2: - adds r0, r5, 0x4 - adds r1, r6, 0 - bl sub_80983D8 - adds r1, r0, 0 - adds r0, r4, 0 - adds r0, 0x46 - ldrb r0, [r0] - cmp r1, r0 - beq _0807534C - adds r0, r5, 0 - bl sub_806CE68 - b _0807534C - .align 2, 0 -_080752D0: .4byte gUnknown_202F378 -_080752D4: .4byte gUnknown_203B418 -_080752D8: .4byte 0x000135cc -_080752DC: .4byte 0x00000147 -_080752E0: - ldrh r1, [r4] - movs r2, 0x80 - lsls r2, 6 - adds r0, r2, 0 - orrs r0, r1 - strh r0, [r4] - movs r3, 0xC4 - lsls r3, 1 - adds r0, r4, r3 - ldr r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r1, 0xC0 - lsls r1, 4 - adds r0, r1 - str r0, [sp] - movs r2, 0xC6 - lsls r2, 1 - adds r0, r4, r2 - ldr r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r3, 0x80 - lsls r3, 5 - adds r0, r3 - str r0, [sp, 0x4] - adds r0, r5, 0 - mov r1, sp - bl sub_804535C - movs r1, 0xC8 - lsls r1, 1 - adds r0, r4, r1 - ldr r2, [r0] - adds r0, r5, 0 - movs r1, 0 - bl sub_806CDFC - movs r2, 0xFB - lsls r2, 1 - adds r0, r4, r2 - movs r3, 0 - strh r3, [r0] - movs r7, 0x1 - adds r0, r5, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0807534C - movs r4, 0x1 - mov r9, r4 -_0807534C: - movs r0, 0x1 - add r8, r0 - mov r1, r8 - cmp r1, 0x13 - bgt _08075358 - b _0807524E -_08075358: - cmp r7, 0 - bne _08075360 - movs r0, 0 - b _0807566C -_08075360: - ldr r0, _08075390 - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0xB8 - ldr r2, [r1] - str r2, [sp, 0x10] - mov r3, r10 - str r3, [r1] - ldr r4, _08075394 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _0807537C - b _080754AE -_0807537C: - mov r0, r9 - cmp r0, 0 - bne _08075384 - b _080754AE -_08075384: - movs r0, 0x35 - bl sub_80526D0 - movs r5, 0 - b _0807549E - .align 2, 0 -_08075390: .4byte gUnknown_203B418 -_08075394: .4byte 0x0000066c -_08075398: - movs r0, 0x7 - bl sub_803E46C - movs r1, 0 - mov r8, r1 - adds r5, 0x1 - mov r9, r5 -_080753A6: - ldr r0, _08075420 - ldr r0, [r0] - mov r2, r8 - lsls r1, r2, 2 - ldr r3, _08075424 - adds r0, r3 - adds r0, r1 - ldr r3, [r0] - adds r0, r3, 0 - str r3, [sp, 0x14] - bl sub_80450E0 - lsls r0, 24 - ldr r3, [sp, 0x14] - cmp r0, 0 - beq _08075492 - ldr r0, [r3, 0x70] - adds r7, r0, 0 - movs r4, 0xFB - lsls r4, 1 - adds r5, r7, r4 - movs r1, 0 - ldrsh r0, [r5, r1] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - movs r2, 0xC2 - lsls r2, 1 - adds r1, r2 - adds r4, r7, r1 - movs r0, 0xFA - lsls r0, 1 - adds r6, r7, r0 - movs r1, 0 - ldrsh r0, [r6, r1] - cmp r0, 0 - beq _08075492 - ldr r1, [r4, 0x10] - ldr r2, [r4, 0x14] - adds r0, r3, 0 - bl sub_804539C - ldrh r0, [r4, 0x18] - subs r0, 0x1 - strh r0, [r4, 0x18] - lsls r0, 16 - asrs r2, r0, 16 - ldr r3, [sp, 0x14] - cmp r2, 0 - bne _08075492 - ldrh r0, [r5] - adds r0, 0x1 - strh r0, [r5] - lsls r0, 16 - asrs r0, 16 - movs r4, 0 - ldrsh r1, [r6, r4] - cmp r0, r1 - bne _08075428 - strh r2, [r6] - b _08075492 - .align 2, 0 -_08075420: .4byte gUnknown_203B418 -_08075424: .4byte 0x000135cc -_08075428: - movs r0, 0 - ldrsh r1, [r5, r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - movs r2, 0xC4 - lsls r2, 1 - adds r1, r7, r2 - adds r1, r0 - ldr r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r4, 0xC0 - lsls r4, 4 - adds r0, r4 - str r0, [sp, 0x8] - movs r0, 0 - ldrsh r1, [r5, r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r2, 0x4 - adds r1, r7, r2 - adds r1, r0 - ldr r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r4, 0x80 - lsls r4, 5 - adds r0, r4 - add r1, sp, 0x8 - str r0, [r1, 0x4] - adds r0, r3, 0 - str r3, [sp, 0x14] - bl sub_804535C - movs r0, 0 - ldrsh r1, [r5, r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - movs r2, 0xC8 - lsls r2, 1 - adds r1, r7, r2 - adds r1, r0 - ldr r2, [r1] - ldr r3, [sp, 0x14] - adds r0, r3, 0 - movs r1, 0 - bl sub_806CDFC -_08075492: - movs r3, 0x1 - add r8, r3 - mov r4, r8 - cmp r4, 0x13 - ble _080753A6 - mov r5, r9 -_0807549E: - ldr r0, _08075510 - ldr r1, [r0] - movs r0, 0x18 - bl __divsi3 - cmp r5, r0 - bge _080754AE - b _08075398 -_080754AE: - movs r0, 0 - mov r8, r0 -_080754B2: - ldr r0, _08075514 - ldr r0, [r0] - mov r2, r8 - lsls r1, r2, 2 - ldr r3, _08075518 - adds r0, r3 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080754F6 - ldr r4, [r5, 0x70] - movs r0, 0xFA - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0 - strh r0, [r1] - adds r0, r5, 0 - bl nullsub_97 - ldrh r0, [r4] - movs r2, 0x80 - lsls r2, 6 - adds r1, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _080754F6 - adds r0, r5, 0 - movs r1, 0 - bl sub_804535C -_080754F6: - movs r3, 0x1 - add r8, r3 - mov r4, r8 - cmp r4, 0x13 - ble _080754B2 - bl sub_807AA30 - movs r7, 0 -_08075506: - movs r5, 0 - adds r0, r7, 0x1 - mov r8, r0 - b _08075600 - .align 2, 0 -_08075510: .4byte gUnknown_202F378 -_08075514: .4byte gUnknown_203B418 -_08075518: .4byte 0x000135cc -_0807551C: - ldr r2, [r4, 0x70] - cmp r7, 0 - bne _0807552A - ldrb r0, [r2, 0x7] - cmp r0, 0 - beq _080755FE - b _08075530 -_0807552A: - ldrb r0, [r2, 0x7] - cmp r0, 0 - bne _080755FE -_08075530: - ldr r6, [r4, 0x4] - ldrh r1, [r2] - movs r3, 0x80 - lsls r3, 6 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _080755BC - ldr r3, _08075560 - adds r0, r3, 0 - ands r0, r1 - strh r0, [r2] - ldrb r0, [r2, 0x7] - cmp r0, 0 - beq _08075564 - adds r0, r4, 0x4 - bl sub_804AC20 - movs r0, 0 - bl sub_807EC28 - bl sub_805EE30 - b _0807556A - .align 2, 0 -_08075560: .4byte 0x0000dfff -_08075564: - adds r0, r4, 0 - bl sub_8075708 -_0807556A: - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080755FE - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807562A - movs r0, 0 - bl sub_8043ED0 - adds r0, r4, 0 - bl sub_8074094 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080755FE - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807562A - adds r0, r4, 0 - bl sub_8071DA4 - bl sub_8046D20 - ldr r0, _08075650 - ldr r0, [r0] - ldr r1, _08075654 - adds r0, r1 - ldrb r1, [r0] - adds r0, r4, 0 - bl sub_8075900 -_080755BC: - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080755FE - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807562A - ldr r0, [r4, 0x4] - cmp r6, r0 - beq _080755DE - ldr r1, _08075658 - movs r0, 0x1 - strb r0, [r1] -_080755DE: - adds r0, r4, 0 - bl sub_806A5B8 - adds r1, r4, 0x4 - adds r0, r4, 0 - bl sub_80706A4 - lsls r0, 24 - cmp r0, 0 - beq _080755FE - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_080755FE: - adds r5, 0x1 -_08075600: - cmp r5, 0x13 - bgt _0807562A - ldr r0, _08075650 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0807565C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080755FE - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807562A - b _0807551C -_0807562A: - mov r7, r8 - cmp r7, 0x1 - bgt _08075632 - b _08075506 -_08075632: - bl sub_8086AC0 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08075660 - bl sub_8085140 - ldr r0, _08075650 - ldr r0, [r0] - adds r0, 0xB8 - ldr r3, [sp, 0x10] - str r3, [r0] - b _0807566A - .align 2, 0 -_08075650: .4byte gUnknown_203B418 -_08075654: .4byte 0x00003a08 -_08075658: .4byte gUnknown_202F32D -_0807565C: .4byte 0x000135cc -_08075660: - ldr r0, _0807567C - ldr r0, [r0] - adds r0, 0xB8 - ldr r4, [sp, 0x10] - str r4, [r0] -_0807566A: - movs r0, 0x1 -_0807566C: - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0807567C: .4byte gUnknown_203B418 - thumb_func_end sub_807520C - - thumb_func_start sub_8075680 -sub_8075680: - push {r4-r7,lr} - movs r7, 0 -_08075684: - ldr r0, _080756FC - ldr r0, [r0] - lsls r1, r7, 2 - ldr r2, _08075700 - adds r0, r2 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080756EE - ldr r6, [r5, 0x70] - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _080756EE - movs r0, 0xB6 - lsls r0, 1 - adds r4, r6, r0 - ldr r1, [r4] - cmp r1, 0 - beq _080756EE - ldr r0, [r5, 0x4] - cmp r1, r0 - beq _080756EE - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - bne _080756EE - adds r0, r5, 0x4 - adds r1, r4, 0 - bl sub_80983D8 - adds r4, r0, 0 - movs r1, 0x7 - ands r0, r1 - adds r1, r6, 0 - adds r1, 0x46 - strb r0, [r1] - adds r0, r5, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - adds r2, r4, 0 - bl sub_806CDD4 -_080756EE: - adds r7, 0x1 - cmp r7, 0x13 - ble _08075684 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080756FC: .4byte gUnknown_203B418 -_08075700: .4byte 0x000135cc - thumb_func_end sub_8075680 - - thumb_func_start nullsub_97 -nullsub_97: - bx lr - thumb_func_end nullsub_97 - - thumb_func_start sub_8075708 -sub_8075708: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r4, r0, 0 - ldr r6, [r4, 0x70] - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807580C - adds r0, r4, 0 - bl sub_8045128 - adds r5, r0, 0 - adds r0, r4, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08075752 - adds r0, r6, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08075752 - adds r0, r4, 0 - movs r1, 0x9 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _08075752 - adds r0, r4, 0x4 - bl sub_804AE84 -_08075752: - ldr r5, [r5, 0x14] - cmp r5, 0 - beq _0807580C - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x5 - bhi _0807580C - lsls r0, 2 - ldr r1, _0807576C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807576C: .4byte _08075770 - .align 2, 0 -_08075770: - .4byte _0807580C - .4byte _0807580C - .4byte _08075788 - .4byte _08075806 - .4byte _0807580C - .4byte _0807580C -_08075788: - adds r0, r5, 0 - bl sub_8045104 - adds r7, r0, 0 - movs r0, 0 - mov r8, r0 - mov r9, r0 - adds r0, r4, 0 - movs r1, 0x13 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _080757BA - adds r1, r5, 0 - adds r1, 0x20 - ldrb r0, [r1] - cmp r0, 0 - bne _080757BA - movs r0, 0x1 - strb r0, [r1] - bl sub_8049ED4 - movs r0, 0x1 - mov r9, r0 -_080757BA: - ldrb r0, [r7, 0x1] - cmp r0, 0 - bne _080757D2 - adds r0, r5, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - beq _080757EC - ldrb r0, [r6, 0x6] - cmp r0, 0 - bne _080757EC - b _080757F2 -_080757D2: - cmp r0, 0x1 - bne _080757DE - ldrb r0, [r6, 0x6] - cmp r0, 0 - beq _080757EC - b _080757F2 -_080757DE: - cmp r0, 0x2 - bne _080757EC - ldrb r0, [r6, 0x6] - cmp r0, 0 - bne _080757EC - movs r0, 0x1 - mov r8, r0 -_080757EC: - mov r0, r8 - cmp r0, 0 - beq _0807580C -_080757F2: - mov r0, r9 - cmp r0, 0 - bne _0807580C - adds r1, r4, 0x4 - adds r0, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_807FE9C - b _0807580C -_08075806: - adds r0, r4, 0 - bl sub_8073D14 -_0807580C: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8075708 - - thumb_func_start sub_8075818 -sub_8075818: - push {r4-r6,lr} - adds r4, r0, 0 - ldr r6, [r4, 0x70] - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080758F6 - adds r0, r4, 0 - bl sub_8045128 - adds r5, r0, 0 - adds r0, r4, 0 - movs r1, 0xD - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08075848 - ldrh r1, [r5] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _080758F2 -_08075848: - ldr r4, [r5, 0x14] - cmp r4, 0 - beq _080758F6 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x5 - bhi _080758F6 - lsls r0, 2 - ldr r1, _08075864 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08075864: .4byte _08075868 - .align 2, 0 -_08075868: - .4byte _080758F6 - .4byte _080758F6 - .4byte _08075880 - .4byte _080758BE - .4byte _080758F6 - .4byte _080758F6 -_08075880: - adds r0, r4, 0 - bl sub_8045104 - movs r1, 0 - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _080758A0 - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - beq _080758B8 - ldrb r0, [r6, 0x6] - cmp r0, 0 - bne _080758B8 - b _080758F2 -_080758A0: - cmp r0, 0x1 - bne _080758AC - ldrb r0, [r6, 0x6] - cmp r0, 0 - beq _080758B8 - b _080758F2 -_080758AC: - cmp r0, 0x2 - bne _080758B8 - ldrb r0, [r6, 0x6] - cmp r0, 0 - bne _080758B8 - movs r1, 0x1 -_080758B8: - cmp r1, 0 - beq _080758F6 - b _080758F2 -_080758BE: - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _080758F6 - adds r0, r6, 0 - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080758F6 - ldrh r1, [r5] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _080758E2 - ldrb r0, [r6, 0x6] - cmp r0, 0 - bne _080758F6 -_080758E2: - adds r0, r4, 0 - bl sub_8045108 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080758F6 -_080758F2: - movs r0, 0x1 - b _080758F8 -_080758F6: - movs r0, 0 -_080758F8: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8075818 - - thumb_func_start sub_8075900 -sub_8075900: - push {r4-r6,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807597A - ldr r0, [r4, 0x70] - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _0807597A - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807597A - ldr r5, _08075980 - ldr r0, [r5] - ldr r1, _08075984 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0807597A - adds r0, r4, 0 - bl sub_8045128 - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0807597A - bl sub_8083600 - ldr r1, _08075988 - ldr r1, [r1] - bl sub_80522A8 - ldr r0, [r5] - ldr r1, _0807598C - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_807AB38 - movs r0, 0 - bl sub_8041888 - adds r0, r4, 0x4 - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - beq _0807597A - movs r0, 0x78 - movs r1, 0x39 - bl sub_803E708 -_0807597A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08075980: .4byte gUnknown_203B418 -_08075984: .4byte 0x00000671 -_08075988: .4byte gUnknown_80FE308 -_0807598C: .4byte 0x00000672 - thumb_func_end sub_8075900 - - thumb_func_start sub_8075990 -sub_8075990: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r7, r0, 0 - ldr r5, [r7, 0x70] - ldrh r1, [r5] - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0 - beq _080759C2 - adds r0, r5, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x6 - beq _080759B8 - b _08075B92 -_080759B8: - adds r0, r7, 0 - adds r1, r7, 0 - bl sub_807A324 - b _08075B92 -_080759C2: - movs r1, 0x80 - lsls r1, 1 - adds r0, r5, r1 - strb r6, [r0] - adds r0, r5, 0 - adds r0, 0xA4 - ldrb r1, [r0] - mov r9, r0 - cmp r1, 0 - beq _080759E4 - adds r0, r7, 0 - bl sub_8085A50 - lsls r0, 24 - cmp r0, 0 - bne _080759E4 - b _08075B92 -_080759E4: - mov r2, r9 - ldrb r0, [r2] - cmp r0, 0x1 - beq _08075A36 - adds r4, r5, 0 - adds r4, 0xFC - ldrb r0, [r4] - cmp r0, 0 - beq _08075A36 - adds r0, r7, 0 - bl sub_8070C60 - lsls r0, 24 - cmp r0, 0 - beq _08075A24 - strb r6, [r4] - ldr r0, _08075A1C - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08075A20 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - b _08075B92 - .align 2, 0 -_08075A1C: .4byte gUnknown_202DF98 -_08075A20: .4byte gUnknown_81004E4 -_08075A24: - adds r0, r7, 0 - bl sub_8073658 - adds r0, r5, 0 - adds r0, 0x44 - ldrh r0, [r0] - cmp r0, 0 - beq _08075A36 - b _08075B92 -_08075A36: - adds r0, r7, 0 - bl sub_807001C - lsls r0, 24 - cmp r0, 0 - beq _08075A44 - b _08075B92 -_08075A44: - ldr r0, _08075AA4 - ldr r0, [r0] - ldr r1, _08075AA8 - adds r0, r1 - ldrb r0, [r0] - movs r2, 0x44 - adds r2, r5 - mov r8, r2 - cmp r0, 0 - beq _08075AB6 - movs r6, 0 -_08075A5A: - ldr r0, _08075AA4 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _08075AAC - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08075AB0 - ldr r0, [r4, 0x70] - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x2 - bne _08075AB0 - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - beq _08075AB0 - ldr r0, [r4, 0x70] - adds r0, 0xC9 - ldrb r0, [r0] - movs r1, 0x1 - cmp r0, 0 - beq _08075A9A - movs r1, 0x2 -_08075A9A: - movs r2, 0x80 - lsls r2, 1 - adds r0, r5, r2 - strb r1, [r0] - b _08075AB6 - .align 2, 0 -_08075AA4: .4byte gUnknown_203B418 -_08075AA8: .4byte 0x000037fc -_08075AAC: .4byte 0x000135cc -_08075AB0: - adds r6, 0x1 - cmp r6, 0x13 - ble _08075A5A -_08075AB6: - mov r4, r8 - adds r0, r4, 0 - bl sub_8044C88 - mov r1, r9 - ldrb r0, [r1] - cmp r0, 0x1 - bne _08075AF4 - movs r2, 0x2 - ldrsh r1, [r5, r2] - adds r0, r4, 0 - bl sub_8044CA0 - movs r0, 0x8 - bl sub_8084100 - adds r1, r5, 0 - adds r1, 0x46 - strb r0, [r1] - ldrh r1, [r7, 0x4] - movs r2, 0xB6 - lsls r2, 1 - adds r0, r5, r2 - strh r1, [r0] - ldrh r0, [r7, 0x6] - subs r0, 0x1 - movs r1, 0xB7 - lsls r1, 1 - adds r2, r5, r1 - strh r0, [r2] - b _08075B92 -_08075AF4: - adds r0, r7, 0 - bl sub_8073658 - ldrh r6, [r4] - cmp r6, 0 - bne _08075B92 - adds r0, r7, 0 - movs r1, 0x15 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _08075B3C - adds r0, r7, 0 - bl sub_807BB94 - ldrh r0, [r4] - cmp r0, 0 - bne _08075B92 - adds r0, r5, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - beq _08075B46 - movs r1, 0x2 - ldrsh r0, [r5, r1] - bl sub_808DB48 - lsls r0, 24 - cmp r0, 0 - beq _08075B92 - adds r0, r7, 0 - movs r1, 0x1 - bl sub_807ADB8 - b _08075B92 -_08075B3C: - adds r0, r5, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - bne _08075B52 -_08075B46: - movs r2, 0x2 - ldrsh r1, [r5, r2] - adds r0, r4, 0 - bl sub_8044CA0 - b _08075B92 -_08075B52: - movs r1, 0x2 - ldrsh r0, [r5, r1] - bl sub_808DB48 - lsls r0, 24 - cmp r0, 0 - beq _08075B68 - adds r0, r7, 0 - movs r1, 0x1 - bl sub_807ADB8 -_08075B68: - mov r2, r8 - ldrh r0, [r2] - cmp r0, 0x1 - bhi _08075B92 - adds r0, r7, 0 - bl sub_807BB94 - mov r1, r8 - ldrh r0, [r1] - cmp r0, 0x1 - bls _08075B92 - adds r0, r5, 0 - adds r0, 0x79 - strb r6, [r0] - movs r2, 0xA2 - lsls r2, 1 - adds r0, r5, r2 - strb r6, [r0] - ldr r1, _08075BA0 - adds r0, r5, r1 - strb r6, [r0] -_08075B92: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08075BA0: .4byte 0x00000147 - thumb_func_end sub_8075990 - - thumb_func_start sub_8075BA4 -sub_8075BA4: - push {r4,r5,lr} - adds r5, r0, 0 - lsls r1, 24 - ldr r4, [r5, 0x70] - cmp r1, 0 - beq _08075BD0 - adds r0, r4, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x4 - bne _08075BD0 - adds r0, r4, 0 - adds r0, 0x46 - ldrb r1, [r0] - adds r1, 0x4 - movs r2, 0x7 - ands r1, r2 - strb r1, [r0] - adds r0, r5, 0 - bl sub_8069DCC - b _08075BEC -_08075BD0: - adds r0, r4, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - bne _08075BEC - movs r0, 0x8 - bl sub_8084100 - adds r1, r4, 0 - adds r1, 0x46 - strb r0, [r1] - adds r0, r5, 0 - bl sub_8069DCC -_08075BEC: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8075BA4 - - thumb_func_start sub_8075BF4 -sub_8075BF4: - push {r4-r7,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08075C0A - movs r0, 0 - b _08075C52 -_08075C0A: - ldr r6, [r5, 0x70] - adds r1, r6, 0 - adds r1, 0xA8 - ldrb r0, [r1] - cmp r0, 0x3 - beq _08075C48 - cmp r0, 0x1 - beq _08075C44 - movs r0, 0x1 - strb r0, [r1] - cmp r4, 0x7F - beq _08075C3C - adds r0, r5, 0 - movs r1, 0x2F - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08075C3C - lsrs r0, r4, 31 - adds r0, r4, r0 - asrs r4, r0, 1 - cmp r4, 0 - bgt _08075C3C - movs r4, 0x1 -_08075C3C: - adds r0, r6, 0 - adds r0, 0xA9 - strb r4, [r0] - b _08075C4A -_08075C44: - movs r7, 0x1 - b _08075C4A -_08075C48: - movs r7, 0x2 -_08075C4A: - adds r0, r5, 0 - bl sub_80418D4 - adds r0, r7, 0 -_08075C52: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8075BF4 - - thumb_func_start sub_8075C58 -sub_8075C58: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - mov r8, r2 - lsls r3, 24 - lsrs r5, r3, 24 - adds r7, r5, 0 - movs r2, 0x1 - adds r3, r5, 0 - bl sub_8075CFC - lsls r0, 24 - cmp r0, 0 - bne _08075CEC - ldr r0, [r4, 0x70] - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x2 - bne _08075C90 - cmp r5, 0 - beq _08075CEC - ldr r0, _08075C8C - b _08075CCE - .align 2, 0 -_08075C8C: .4byte gUnknown_80FB380 -_08075C90: - cmp r0, 0x5 - bne _08075CA0 - cmp r7, 0 - beq _08075CEC - ldr r0, _08075C9C - b _08075CCE - .align 2, 0 -_08075C9C: .4byte gUnknown_80FB384 -_08075CA0: - adds r0, r4, 0 - bl sub_8041AF4 - adds r0, r4, 0 - mov r1, r8 - bl sub_8075BF4 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r4, 0 - movs r1, 0x8 - bl sub_806CE68 - cmp r5, 0x1 - bne _08075CC8 - ldr r0, _08075CC4 - b _08075CCE - .align 2, 0 -_08075CC4: .4byte gUnknown_80FB338 -_08075CC8: - cmp r5, 0x2 - bne _08075CE0 - ldr r0, _08075CDC -_08075CCE: - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08075CEC - .align 2, 0 -_08075CDC: .4byte gUnknown_80FB35C -_08075CE0: - ldr r0, _08075CF8 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08075CEC: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08075CF8: .4byte gUnknown_80FB318 - thumb_func_end sub_8075C58 - - thumb_func_start sub_8075CFC -sub_8075CFC: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r7, r2, 24 - lsls r3, 24 - lsrs r5, r3, 24 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08075DAA - ldr r0, _08075D4C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - cmp r7, 0 - beq _08075D34 - adds r0, r6, 0 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08075DAA -_08075D34: - adds r0, r4, 0 - movs r1, 0x11 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _08075D54 - cmp r5, 0 - beq _08075DAA - ldr r0, _08075D50 - b _08075DA0 - .align 2, 0 -_08075D4C: .4byte gUnknown_202DF98 -_08075D50: .4byte gUnknown_80FCD54 -_08075D54: - adds r0, r4, 0 - movs r1, 0x36 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08075D70 - cmp r5, 0 - beq _08075DAA - ldr r0, _08075D6C - b _08075DA0 - .align 2, 0 -_08075D6C: .4byte gUnknown_80FCD58 -_08075D70: - adds r0, r4, 0 - movs r1, 0x49 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08075D8C - cmp r5, 0 - beq _08075DAA - ldr r0, _08075D88 - b _08075DA0 - .align 2, 0 -_08075D88: .4byte gUnknown_80FCD88 -_08075D8C: - adds r0, r4, 0 - movs r1, 0x15 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08075DB4 - cmp r5, 0 - beq _08075DAA - ldr r0, _08075DB0 -_08075DA0: - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08075DAA: - movs r0, 0x1 - b _08075DB6 - .align 2, 0 -_08075DB0: .4byte gUnknown_80FD548 -_08075DB4: - movs r0, 0 -_08075DB6: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8075CFC - - thumb_func_start sub_8075DBC -sub_8075DBC: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r7, r0, 0 - adds r5, r1, 0 - mov r8, r2 - movs r0, 0 - mov r9, r0 - adds r0, r7, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_8075CFC - lsls r0, 24 - cmp r0, 0 - bne _08075E62 - ldr r6, [r5, 0x70] - adds r4, r6, 0 - adds r4, 0xA8 - ldrb r0, [r4] - cmp r0, 0x2 - beq _08075E50 - adds r0, r5, 0 - bl sub_8041EC8 - ldrb r0, [r4] - cmp r0, 0x3 - beq _08075E1A - adds r4, 0x1 - mov r0, r8 - strb r0, [r4] - adds r0, r5, 0 - movs r1, 0x2F - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08075E1E - ldrb r0, [r4] - lsrs r0, 1 - strb r0, [r4] - cmp r0, 0 - bne _08075E1E - movs r0, 0x1 - strb r0, [r4] - b _08075E1E -_08075E1A: - movs r0, 0x1 - mov r9, r0 -_08075E1E: - adds r1, r6, 0 - adds r1, 0xA8 - movs r0, 0x3 - strb r0, [r1] - adds r0, r5, 0 - movs r1, 0x8 - bl sub_806CE68 - mov r0, r9 - cmp r0, 0 - beq _08075E3C - ldr r0, _08075E38 - b _08075E3E - .align 2, 0 -_08075E38: .4byte gUnknown_80FB3CC -_08075E3C: - ldr r0, _08075E4C -_08075E3E: - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _08075E5C - .align 2, 0 -_08075E4C: .4byte gUnknown_80FB3A4 -_08075E50: - ldr r0, _08075E70 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08075E5C: - adds r0, r5, 0 - bl sub_80418D4 -_08075E62: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08075E70: .4byte gUnknown_80FB3D0 - thumb_func_end sub_8075DBC - - thumb_func_start sub_8075E74 -sub_8075E74: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r7, r0, 0 - adds r5, r1, 0 - mov r8, r2 - movs r0, 0 - mov r9, r0 - adds r0, r7, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8075CFC - lsls r0, 24 - cmp r0, 0 - bne _08075F22 - ldr r6, [r5, 0x70] - adds r4, r6, 0 - adds r4, 0xA8 - ldrb r0, [r4] - cmp r0, 0x2 - beq _08075F10 - adds r0, r5, 0 - bl sub_8041ED8 - ldrb r0, [r4] - cmp r0, 0 - beq _08075EB2 - cmp r0, 0x4 - bne _08075ED8 -_08075EB2: - adds r4, r6, 0 - adds r4, 0xA9 - mov r0, r8 - strb r0, [r4] - adds r0, r5, 0 - movs r1, 0x2F - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08075EDC - ldrb r0, [r4] - lsrs r0, 1 - strb r0, [r4] - cmp r0, 0 - bne _08075EDC - movs r0, 0x1 - strb r0, [r4] - b _08075EDC -_08075ED8: - movs r0, 0x1 - mov r9, r0 -_08075EDC: - adds r1, r6, 0 - adds r1, 0xA8 - movs r0, 0x5 - strb r0, [r1] - adds r0, r5, 0 - movs r1, 0x8 - bl sub_806CE68 - mov r0, r9 - cmp r0, 0 - beq _08075EFC - ldr r0, _08075EF8 - b _08075EFE - .align 2, 0 -_08075EF8: .4byte gUnknown_80FB360 -_08075EFC: - ldr r0, _08075F0C -_08075EFE: - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _08075F1C - .align 2, 0 -_08075F0C: .4byte gUnknown_80FB31C -_08075F10: - ldr r0, _08075F30 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08075F1C: - adds r0, r5, 0 - bl sub_80418D4 -_08075F22: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08075F30: .4byte gUnknown_80FB388 - thumb_func_end sub_8075E74 - - thumb_func_start sub_8075F34 -sub_8075F34: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r6, r2, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_8075CFC - lsls r0, 24 - cmp r0, 0 - bne _08075FC2 - ldr r2, [r4, 0x70] - adds r1, r2, 0 - adds r1, 0xA8 - ldrb r0, [r1] - cmp r0, 0 - bne _08075F78 - movs r0, 0x4 - strb r0, [r1] - adds r0, r2, 0 - adds r0, 0xA9 - strb r6, [r0] - adds r0, r4, 0 - bl nullsub_91 - adds r0, r4, 0 - movs r1, 0x8 - bl sub_806CE68 - ldr r0, _08075F74 - b _08075F9E - .align 2, 0 -_08075F74: .4byte gUnknown_80FB3E0 -_08075F78: - cmp r0, 0x1 - beq _08075F84 - cmp r0, 0x3 - beq _08075F84 - cmp r0, 0x5 - bne _08075F8C -_08075F84: - ldr r0, _08075F88 - b _08075F9E - .align 2, 0 -_08075F88: .4byte gUnknown_80FB418 -_08075F8C: - cmp r0, 0x2 - bne _08075F98 - ldr r0, _08075F94 - b _08075F9E - .align 2, 0 -_08075F94: .4byte gUnknown_80FB3F8 -_08075F98: - cmp r0, 0x4 - bne _08075FB0 - ldr r0, _08075FAC -_08075F9E: - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08075FBC - .align 2, 0 -_08075FAC: .4byte gUnknown_80FB414 -_08075FB0: - ldr r0, _08075FC8 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08075FBC: - adds r0, r4, 0 - bl sub_80418D4 -_08075FC2: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08075FC8: .4byte gUnknown_80FB3E0 - thumb_func_end sub_8075F34 - - thumb_func_start sub_8075FCC -sub_8075FCC: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - movs r7, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08076086 - ldr r5, [r4, 0x70] - adds r0, r5, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08075FF4 - cmp r0, 0x5 - beq _08075FF4 - cmp r0, 0x3 - bne _08075FF6 -_08075FF4: - movs r7, 0x1 -_08075FF6: - ldr r0, _08076060 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xA8 - ldrb r0, [r1] - cmp r0, 0x2 - beq _08076074 - movs r0, 0x2 - strb r0, [r1] - ldr r1, _08076064 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xA9 - strb r0, [r1] - ldr r0, _08076068 - adds r1, r5, r0 - movs r0, 0xFF - strb r0, [r1] - adds r0, 0x65 - adds r1, r5, r0 - movs r0, 0x1 - negs r0, r0 - strb r0, [r1] - adds r0, r4, 0 - bl sub_8041EE8 - adds r0, r4, 0 - movs r1, 0x8 - bl sub_806CE68 - cmp r7, 0 - beq _08076050 - ldr r0, _0807606C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08076050: - ldr r0, _08076070 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08076080 - .align 2, 0 -_08076060: .4byte gUnknown_202DF98 -_08076064: .4byte gUnknown_80F4E7C -_08076068: .4byte 0x00000165 -_0807606C: .4byte gUnknown_80FB41C -_08076070: .4byte gUnknown_80FB458 -_08076074: - ldr r0, _0807608C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08076080: - adds r0, r4, 0 - bl sub_80418D4 -_08076086: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807608C: .4byte gUnknown_80FB43C - thumb_func_end sub_8075FCC - - thumb_func_start sub_8076090 -sub_8076090: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r6, r0, 0 - adds r4, r1, 0 - adds r7, r3, 0 - ldr r0, [sp, 0x1C] - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807613A - ldr r5, [r4, 0x70] - mov r0, r8 - cmp r0, 0 - beq _080760D0 - adds r0, r6, 0 - adds r1, r4, 0 - mov r2, r9 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _0807613A -_080760D0: - ldr r0, _08076100 - adds r1, r5, 0 - movs r2, 0 - bl sub_80708B4 - adds r1, r5, 0 - adds r1, 0xBC - ldrb r0, [r1] - cmp r0, 0x3 - beq _08076110 - movs r0, 0x3 - strb r0, [r1] - adds r1, r7, 0x1 - adds r0, r5, 0 - adds r0, 0xBD - strb r1, [r0] - adds r0, r4, 0 - bl nullsub_72 - cmp r7, 0x1 - bne _08076108 - ldr r0, _08076104 - b _08076116 - .align 2, 0 -_08076100: .4byte gUnknown_202DF98 -_08076104: .4byte gUnknown_80FB480 -_08076108: - ldr r0, _0807610C - b _08076116 - .align 2, 0 -_0807610C: .4byte gUnknown_80FB4D4 -_08076110: - cmp r7, 0x1 - bne _08076128 - ldr r0, _08076124 -_08076116: - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08076134 - .align 2, 0 -_08076124: .4byte gUnknown_80FB4B0 -_08076128: - ldr r0, _08076148 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08076134: - adds r0, r4, 0 - bl sub_80418D4 -_0807613A: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08076148: .4byte gUnknown_80FB4F0 - thumb_func_end sub_8076090 - - thumb_func_start sub_807614C -sub_807614C: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r7, r2, 24 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08076206 - ldr r5, [r4, 0x70] - adds r0, r6, 0 - adds r1, r4, 0 - adds r2, r7, 0 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08076206 - adds r0, r4, 0 - movs r1, 0x29 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _080761A8 - ldr r0, _080761A0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - cmp r7, 0 - beq _08076206 - ldr r0, _080761A4 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08076206 - .align 2, 0 -_080761A0: .4byte gUnknown_202DF98 -_080761A4: .4byte gUnknown_80FCC4C -_080761A8: - ldr r0, _080761E8 - adds r1, r5, 0 - movs r2, 0 - bl sub_80708B4 - adds r1, r5, 0 - adds r1, 0xBC - ldrb r0, [r1] - cmp r0, 0x7 - beq _080761F4 - movs r0, 0x7 - strb r0, [r1] - ldr r1, _080761EC - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xBD - strb r0, [r1] - adds r0, r4, 0 - bl sub_8041EF8 - ldr r0, _080761F0 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08076200 - .align 2, 0 -_080761E8: .4byte gUnknown_202DF98 -_080761EC: .4byte gUnknown_80F4F00 -_080761F0: .4byte gUnknown_80FB50C -_080761F4: - ldr r0, _0807620C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08076200: - adds r0, r4, 0 - bl sub_80418D4 -_08076206: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807620C: .4byte gUnknown_80FB52C - thumb_func_end sub_807614C - - thumb_func_start sub_8076210 -sub_8076210: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r7, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - lsls r3, 24 - lsrs r3, 24 - mov r10, r3 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08076238 - b _080763DA -_08076238: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r10 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - beq _0807624A - b _080763DA -_0807624A: - ldr r0, [r5, 0x70] - mov r8, r0 - ldr r0, _08076274 - mov r1, r8 - movs r2, 0 - bl sub_80708B4 - adds r0, r5, 0 - movs r1, 0x42 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807627C - mov r1, r10 - cmp r1, 0 - bne _0807626E - b _080763DA -_0807626E: - ldr r0, _08076278 - b _080762CC - .align 2, 0 -_08076274: .4byte gUnknown_202DF98 -_08076278: .4byte gUnknown_80FCE5C -_0807627C: - adds r0, r5, 0 - movs r1, 0x2 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _0807629C - mov r2, r10 - cmp r2, 0 - bne _08076292 - b _080763DA -_08076292: - ldr r0, _08076298 - b _080762CC - .align 2, 0 -_08076298: .4byte gUnknown_80FCE84 -_0807629C: - adds r0, r5, 0 - bl sub_8045128 - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x2 - bne _080762E8 - ldr r1, _080762D8 - ldr r0, _080762DC - ldr r0, [r0] - ldr r3, _080762E0 - adds r0, r3 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080762E8 - mov r3, r10 - cmp r3, 0 - bne _080762CA - b _080763DA -_080762CA: - ldr r0, _080762E4 -_080762CC: - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _080763DA - .align 2, 0 -_080762D8: .4byte gUnknown_810ACC0 -_080762DC: .4byte gUnknown_203B418 -_080762E0: .4byte 0x00003a0e -_080762E4: .4byte gUnknown_80FEBBC -_080762E8: - movs r6, 0x1 - mov r1, r8 - adds r1, 0xAC - ldrb r0, [r1] - cmp r0, 0x1 - beq _08076338 - movs r4, 0 - strb r6, [r1] - ldr r1, _08076330 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - mov r1, r8 - adds r1, 0xAD - strb r0, [r1] - mov r0, r8 - adds r0, 0xAE - strb r4, [r0] - adds r0, 0x1 - strb r4, [r0] - movs r6, 0 - mov r0, r9 - cmp r0, 0 - beq _08076322 - adds r0, r5, 0 - bl sub_8041C34 -_08076322: - ldr r0, _08076334 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _08076344 - .align 2, 0 -_08076330: .4byte gUnknown_80F4E30 -_08076334: .4byte gUnknown_80FB548 -_08076338: - ldr r0, _080763E8 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08076344: - adds r0, r5, 0 - bl sub_80418D4 - adds r0, r5, 0 - movs r1, 0x19 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _080763DA - cmp r6, 0 - bne _080763DA - movs r1, 0 - mov r9, r1 - movs r6, 0 -_08076362: - movs r2, 0x4 - ldrsh r0, [r5, r2] - ldr r1, _080763EC - lsls r2, r6, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r5, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - ldr r4, [r0, 0x10] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080763D4 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _080763D4 - mov r0, r9 - cmp r0, 0 - bne _080763B8 - movs r1, 0x1 - mov r9, r1 - ldr r0, _080763F0 - mov r1, r8 - movs r2, 0 - bl sub_80708B4 - ldr r0, _080763F4 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_080763B8: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807167C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080763D4 - adds r0, r7, 0 - adds r1, r4, 0 - movs r2, 0x1 - mov r3, r10 - bl sub_8076210 -_080763D4: - adds r6, 0x1 - cmp r6, 0x7 - ble _08076362 -_080763DA: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080763E8: .4byte gUnknown_80FB564 -_080763EC: .4byte gUnknown_80F4448 -_080763F0: .4byte gUnknown_202DF98 -_080763F4: .4byte gUnknown_80FF01C - thumb_func_end sub_8076210 - - thumb_func_start sub_80763F8 -sub_80763F8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r7, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - mov r10, r2 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807641A - b _080765C0 -_0807641A: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r10 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - beq _0807642C - b _080765C0 -_0807642C: - ldr r0, [r5, 0x70] - mov r8, r0 - ldr r0, _08076454 - mov r1, r8 - movs r2, 0 - bl sub_80708B4 - adds r0, r5, 0 - movs r1, 0x14 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0807645C - mov r1, r10 - cmp r1, 0 - bne _08076450 - b _080765C0 -_08076450: - ldr r0, _08076458 - b _080764A4 - .align 2, 0 -_08076454: .4byte gUnknown_202DF98 -_08076458: .4byte gUnknown_80FD524 -_0807645C: - adds r0, r5, 0 - movs r1, 0x45 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807647C - mov r3, r10 - cmp r3, 0 - bne _08076472 - b _080765C0 -_08076472: - ldr r0, _08076478 - b _080764A4 - .align 2, 0 -_08076478: .4byte gUnknown_80FCEB0 -_0807647C: - adds r0, r5, 0 - movs r1, 0x8 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - bne _0807649A - adds r0, r5, 0 - movs r1, 0x11 - bl sub_8071858 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _080764B4 -_0807649A: - mov r0, r10 - cmp r0, 0 - bne _080764A2 - b _080765C0 -_080764A2: - ldr r0, _080764B0 -_080764A4: - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _080765C0 - .align 2, 0 -_080764B0: .4byte gUnknown_80FCEDC -_080764B4: - movs r6, 0x1 - mov r1, r8 - adds r1, 0xAC - ldrb r0, [r1] - cmp r0, 0x3 - beq _08076520 - cmp r0, 0x2 - beq _0807650C - movs r0, 0x2 - strb r0, [r1] - ldr r1, _08076504 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - mov r1, r8 - adds r1, 0xAD - strb r0, [r1] - mov r0, r8 - adds r0, 0xAE - strb r4, [r0] - adds r0, 0x1 - strb r4, [r0] - movs r6, 0 - adds r0, r5, 0 - bl sub_8041C6C - ldr r0, _08076508 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - adds r0, r5, 0 - movs r1, 0x8 - bl sub_806CE94 - b _0807652C - .align 2, 0 -_08076504: .4byte gUnknown_80F4E34 -_08076508: .4byte gUnknown_80FB598 -_0807650C: - ldr r0, _0807651C - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _0807652C - .align 2, 0 -_0807651C: .4byte gUnknown_80FB5D4 -_08076520: - ldr r0, _080765D0 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0807652C: - adds r0, r5, 0 - movs r1, 0x19 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _080765BA - cmp r6, 0 - bne _080765BA - movs r1, 0 - mov r9, r1 - movs r6, 0 -_08076544: - movs r3, 0x4 - ldrsh r0, [r5, r3] - ldr r1, _080765D4 - lsls r2, r6, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r5, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - ldr r4, [r0, 0x10] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080765B4 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _080765B4 - mov r0, r9 - cmp r0, 0 - bne _0807659A - movs r1, 0x1 - mov r9, r1 - ldr r0, _080765D8 - mov r1, r8 - movs r2, 0 - bl sub_80708B4 - ldr r0, _080765DC - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0807659A: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807167C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080765B4 - adds r0, r7, 0 - adds r1, r4, 0 - mov r2, r10 - bl sub_80763F8 -_080765B4: - adds r6, 0x1 - cmp r6, 0x7 - ble _08076544 -_080765BA: - adds r0, r5, 0 - bl sub_80418D4 -_080765C0: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080765D0: .4byte gUnknown_80FB5F8 -_080765D4: .4byte gUnknown_80F4448 -_080765D8: .4byte gUnknown_202DF98 -_080765DC: .4byte gUnknown_80FF01C - thumb_func_end sub_80763F8 - - thumb_func_start sub_80765E0 -sub_80765E0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r7, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - mov r10, r2 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08076602 - b _08076790 -_08076602: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r10 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - beq _08076614 - b _08076790 -_08076614: - ldr r0, [r5, 0x70] - mov r8, r0 - ldr r0, _0807663C - mov r1, r8 - movs r2, 0 - bl sub_80708B4 - adds r0, r5, 0 - movs r1, 0x14 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08076644 - mov r1, r10 - cmp r1, 0 - bne _08076638 - b _08076790 -_08076638: - ldr r0, _08076640 - b _0807668C - .align 2, 0 -_0807663C: .4byte gUnknown_202DF98 -_08076640: .4byte gUnknown_80FD524 -_08076644: - adds r0, r5, 0 - movs r1, 0x45 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08076664 - mov r3, r10 - cmp r3, 0 - bne _0807665A - b _08076790 -_0807665A: - ldr r0, _08076660 - b _0807668C - .align 2, 0 -_08076660: .4byte gUnknown_80FCEB0 -_08076664: - adds r0, r5, 0 - movs r1, 0x8 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - bne _08076682 - adds r0, r5, 0 - movs r1, 0x11 - bl sub_8071858 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0807669C -_08076682: - mov r0, r10 - cmp r0, 0 - bne _0807668A - b _08076790 -_0807668A: - ldr r0, _08076698 -_0807668C: - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _08076790 - .align 2, 0 -_08076698: .4byte gUnknown_80FCEDC -_0807669C: - movs r6, 0x1 - mov r1, r8 - adds r1, 0xAC - ldrb r0, [r1] - cmp r0, 0x3 - beq _080766F0 - movs r0, 0x3 - strb r0, [r1] - ldr r1, _080766E8 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - mov r1, r8 - adds r1, 0xAD - strb r0, [r1] - mov r0, r8 - adds r0, 0xAE - strb r4, [r0] - adds r0, 0x1 - strb r4, [r0] - movs r6, 0 - adds r0, r5, 0 - bl sub_8041C7C - ldr r0, _080766EC - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - adds r0, r5, 0 - movs r1, 0x8 - bl sub_806CE94 - b _080766FC - .align 2, 0 -_080766E8: .4byte gUnknown_80F4E38 -_080766EC: .4byte gUnknown_80FB5B4 -_080766F0: - ldr r0, _080767A0 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_080766FC: - adds r0, r5, 0 - movs r1, 0x19 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807678A - cmp r6, 0 - bne _0807678A - movs r1, 0 - mov r9, r1 - movs r6, 0 -_08076714: - movs r3, 0x4 - ldrsh r0, [r5, r3] - ldr r1, _080767A4 - lsls r2, r6, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r5, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - ldr r4, [r0, 0x10] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08076784 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _08076784 - mov r0, r9 - cmp r0, 0 - bne _0807676A - movs r1, 0x1 - mov r9, r1 - ldr r0, _080767A8 - mov r1, r8 - movs r2, 0 - bl sub_80708B4 - ldr r0, _080767AC - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0807676A: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807167C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08076784 - adds r0, r7, 0 - adds r1, r4, 0 - mov r2, r10 - bl sub_80765E0 -_08076784: - adds r6, 0x1 - cmp r6, 0x7 - ble _08076714 -_0807678A: - adds r0, r5, 0 - bl sub_80418D4 -_08076790: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080767A0: .4byte gUnknown_80FB5F8 -_080767A4: .4byte gUnknown_80F4448 -_080767A8: .4byte gUnknown_202DF98 -_080767AC: .4byte gUnknown_80FF01C - thumb_func_end sub_80765E0 - - thumb_func_start sub_80767B0 -sub_80767B0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r4, r2, 24 - adds r6, r4, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080767CE - b _080768C8 -_080767CE: - ldr r0, _0807680C - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r7, [r5, 0x70] - adds r0, r7, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080768C8 - mov r0, r8 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _080768C8 - adds r0, r5, 0 - movs r1, 0x41 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08076814 - cmp r4, 0 - beq _080768C8 - ldr r0, _08076810 - b _0807685C - .align 2, 0 -_0807680C: .4byte gUnknown_202DF98 -_08076810: .4byte gUnknown_80FCDE0 -_08076814: - adds r0, r5, 0 - movs r1, 0x6 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _08076830 - cmp r4, 0 - beq _080768C8 - ldr r0, _0807682C - b _0807685C - .align 2, 0 -_0807682C: .4byte gUnknown_80FCE00 -_08076830: - adds r0, r5, 0 - bl sub_8045128 - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x2 - bne _08076878 - ldr r1, _08076868 - ldr r0, _0807686C - ldr r0, [r0] - ldr r2, _08076870 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08076878 - cmp r6, 0 - beq _080768C8 - ldr r0, _08076874 -_0807685C: - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 - b _080768C8 - .align 2, 0 -_08076868: .4byte gUnknown_810ACC0 -_0807686C: .4byte gUnknown_203B418 -_08076870: .4byte 0x00003a0e -_08076874: .4byte gUnknown_80FCE34 -_08076878: - adds r6, r7, 0 - adds r6, 0xB0 - ldrb r0, [r6] - subs r0, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08076892 - adds r0, r7, 0 - adds r0, 0x9C - ldr r0, [r0] - bl sub_8076CB4 -_08076892: - adds r0, r5, 0 - bl sub_8041F08 - movs r4, 0 - movs r0, 0x1 - strb r0, [r6] - ldr r1, _080768D4 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r7, 0 - adds r1, 0xB8 - strb r0, [r1] - adds r0, r7, 0 - adds r0, 0xB9 - strb r4, [r0] - ldr r0, _080768D8 - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 - adds r0, r5, 0 - bl sub_80418D4 -_080768C8: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080768D4: .4byte gUnknown_80F4E2C -_080768D8: .4byte gUnknown_80FB610 - thumb_func_end sub_80767B0 - - thumb_func_start sub_80768DC -sub_80768DC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - adds r5, r1, 0 - lsls r2, 16 - asrs r2, 16 - mov r8, r2 - lsls r3, 24 - lsrs r4, r3, 24 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080769BE - adds r0, r7, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _080769BE - ldr r6, [r5, 0x70] - adds r0, r6, 0 - adds r0, 0xB0 - ldrb r1, [r0] - subs r0, r1, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0807692A - adds r0, r6, 0 - adds r0, 0x9C - ldr r0, [r0] - bl sub_8076CB4 - b _08076948 -_0807692A: - lsls r0, r1, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _08076948 - ldr r0, _0807699C - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _080769A0 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08076948: - ldr r0, _0807699C - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r6, 0 - adds r1, 0xB0 - ldrb r0, [r1] - cmp r0, 0x7 - beq _080769AC - movs r4, 0 - movs r0, 0x7 - strb r0, [r1] - ldr r1, _080769A4 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r6, 0 - adds r1, 0xB8 - strb r0, [r1] - adds r0, r6, 0 - adds r0, 0xB9 - strb r4, [r0] - subs r0, 0x5 - mov r1, r8 - str r1, [r0] - adds r0, r5, 0 - bl nullsub_71 - ldr r0, _080769A8 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - adds r0, r5, 0 - movs r1, 0x8 - bl sub_806CE94 - b _080769B8 - .align 2, 0 -_0807699C: .4byte gUnknown_202DF98 -_080769A0: .4byte gUnknown_80FA844 -_080769A4: .4byte gUnknown_80F4E58 -_080769A8: .4byte gUnknown_80FB628 -_080769AC: - ldr r0, _080769C8 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_080769B8: - adds r0, r5, 0 - bl sub_80418D4 -_080769BE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080769C8: .4byte gUnknown_80FB64C - thumb_func_end sub_80768DC - - thumb_func_start sub_80769CC -sub_80769CC: - push {r4-r7,lr} - adds r7, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08076A9A - adds r0, r7, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08076A9A - ldr r6, [r5, 0x70] - adds r0, r6, 0 - adds r0, 0xB0 - ldrb r1, [r0] - subs r0, r1, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08076A0C - adds r0, r6, 0 - adds r0, 0x9C - ldr r0, [r0] - bl sub_8076CB4 - b _08076A2A -_08076A0C: - lsls r0, r1, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _08076A2A - ldr r0, _08076A78 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08076A7C - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08076A2A: - ldr r0, _08076A78 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r6, 0 - adds r1, 0xB0 - ldrb r0, [r1] - cmp r0, 0x2 - beq _08076A88 - movs r4, 0 - movs r0, 0x2 - strb r0, [r1] - ldr r1, _08076A80 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r6, 0 - adds r1, 0xB8 - strb r0, [r1] - adds r0, r6, 0 - adds r0, 0xB9 - strb r4, [r0] - adds r0, r5, 0 - bl nullsub_70 - ldr r0, _08076A84 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - adds r0, r5, 0 - movs r1, 0x8 - bl sub_806CE94 - b _08076A94 - .align 2, 0 -_08076A78: .4byte gUnknown_202DF98 -_08076A7C: .4byte gUnknown_80FA844 -_08076A80: .4byte gUnknown_80F4E54 -_08076A84: .4byte gUnknown_80FB668 -_08076A88: - ldr r0, _08076AA0 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08076A94: - adds r0, r5, 0 - bl sub_80418D4 -_08076A9A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08076AA0: .4byte gUnknown_80FB688 - thumb_func_end sub_80769CC - - thumb_func_start sub_8076AA4 -sub_8076AA4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08076B3A - ldr r1, [r5, 0x70] - adds r7, r1, 0 - adds r6, r1, 0 - adds r6, 0xB0 - ldrb r0, [r6] - subs r0, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08076AD8 - adds r0, r1, 0 - adds r0, 0x9C - ldr r0, [r0] - bl sub_8076CB4 -_08076AD8: - ldr r0, _08076B1C - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldrb r0, [r6] - cmp r0, 0x5 - beq _08076B28 - movs r4, 0 - movs r0, 0x5 - strb r0, [r6] - ldr r1, _08076B20 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r7, 0 - adds r1, 0xB8 - strb r0, [r1] - adds r0, r7, 0 - adds r0, 0xB9 - strb r4, [r0] - adds r0, r5, 0 - bl nullsub_90 - ldr r0, _08076B24 - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 - b _08076B34 - .align 2, 0 -_08076B1C: .4byte gUnknown_202DF98 -_08076B20: .4byte gUnknown_80F4E60 -_08076B24: .4byte gUnknown_80FB6A4 -_08076B28: - ldr r0, _08076B44 - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 -_08076B34: - adds r0, r5, 0 - bl sub_80418D4 -_08076B3A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08076B44: .4byte gUnknown_80FB6C0 - thumb_func_end sub_8076AA4 - - thumb_func_start sub_8076B48 -sub_8076B48: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08076B60 - b _08076C9E -_08076B60: - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0 - beq _08076B74 - b _08076C9E -_08076B74: - ldr r5, [r6, 0x70] - ldr r0, [r4, 0x70] - mov r8, r0 - adds r1, r5, 0 - adds r1, 0xB0 - ldrb r0, [r1] - subs r0, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _08076C20 - mov r2, r8 - adds r2, 0xB0 - ldrb r0, [r2] - cmp r0, 0x3 - beq _08076C20 - cmp r0, 0x4 - beq _08076C20 - movs r0, 0x3 - strb r0, [r1] - adds r1, 0x8 - movs r0, 0x7F - strb r0, [r1] - adds r0, r5, 0 - adds r0, 0xB9 - strb r7, [r0] - movs r0, 0x4 - strb r0, [r2] - ldr r1, _08076C0C - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - mov r1, r8 - adds r1, 0xB8 - strb r0, [r1] - mov r0, r8 - adds r0, 0xB9 - strb r7, [r0] - adds r2, r5, 0 - adds r2, 0x9C - ldr r0, _08076C10 - ldr r1, [r0] - ldr r0, _08076C14 - adds r1, r0 - ldr r0, [r1] - str r0, [r2] - mov r2, r8 - adds r2, 0x9C - ldr r0, [r1] - str r0, [r2] - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - adds r0, r6, 0 - adds r1, r4, 0 - bl nullsub_69 - ldr r0, _08076C18 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08076C1C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - adds r0, r4, 0 - movs r1, 0x8 - bl sub_806CE94 - b _08076C98 - .align 2, 0 -_08076C0C: .4byte gUnknown_80F4E5C -_08076C10: .4byte gUnknown_203B418 -_08076C14: .4byte 0x000037f4 -_08076C18: .4byte gUnknown_202DF98 -_08076C1C: .4byte gUnknown_80FB6D8 -_08076C20: - adds r7, r5, 0 - adds r7, 0xB0 - ldrb r0, [r7] - cmp r0, 0x3 - bne _08076C40 - ldr r0, _08076CA8 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08076CAC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08076C40: - mov r5, r8 - adds r5, 0xB0 - ldrb r0, [r5] - cmp r0, 0x3 - bne _08076C60 - ldr r0, _08076CA8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08076CAC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08076C60: - ldrb r0, [r7] - cmp r0, 0x4 - bne _08076C7C - ldr r0, _08076CA8 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08076CB0 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08076C7C: - ldrb r0, [r5] - cmp r0, 0x4 - bne _08076C98 - ldr r0, _08076CA8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08076CB0 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08076C98: - adds r0, r4, 0 - bl sub_80418D4 -_08076C9E: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08076CA8: .4byte gUnknown_202DF98 -_08076CAC: .4byte gUnknown_80FB6FC -_08076CB0: .4byte gUnknown_80FB718 - thumb_func_end sub_8076B48 - - thumb_func_start sub_8076CB4 -sub_8076CB4: - push {r4-r7,lr} - adds r7, r0, 0 - movs r5, 0 - movs r6, 0 -_08076CBC: - ldr r0, _08076D08 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08076D0C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08076CFA - ldr r1, [r4, 0x70] - adds r2, r1, 0 - adds r2, 0x9C - ldr r0, [r2] - cmp r0, r7 - bne _08076CF4 - adds r1, 0xB0 - ldrb r0, [r1] - subs r0, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08076CF2 - strb r6, [r1] -_08076CF2: - str r6, [r2] -_08076CF4: - adds r0, r4, 0 - bl sub_80418D4 -_08076CFA: - adds r5, 0x1 - cmp r5, 0x13 - ble _08076CBC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08076D08: .4byte gUnknown_203B418 -_08076D0C: .4byte 0x000135cc - thumb_func_end sub_8076CB4 - - thumb_func_start sub_8076D10 -sub_8076D10: - push {r4-r7,lr} - adds r7, r0, 0 - adds r6, r1, 0 - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08076E0E - adds r0, r7, 0 - adds r1, r6, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08076E0E - adds r0, r6, 0 - bl sub_8041C08 - ldr r4, [r6, 0x70] - adds r5, r4, 0 - adds r5, 0xB0 - ldrb r0, [r5] - subs r0, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08076D54 - adds r0, r4, 0 - adds r0, 0x9C - ldr r0, [r0] - bl sub_8076CB4 -_08076D54: - ldr r0, _08076D74 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldrb r0, [r5] - cmp r0, 0x6 - beq _08076DAC - movs r0, 0x6 - strb r0, [r5] - ldrb r0, [r4, 0x7] - cmp r0, 0 - beq _08076D7C - ldr r1, _08076D78 - b _08076D7E - .align 2, 0 -_08076D74: .4byte gUnknown_202DF98 -_08076D78: .4byte gUnknown_80F4EBC -_08076D7C: - ldr r1, _08076DA4 -_08076D7E: - adds r0, r6, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r4, 0 - adds r1, 0xB8 - strb r0, [r1] - adds r1, r4, 0 - adds r1, 0xB9 - movs r0, 0 - strb r0, [r1] - ldr r0, _08076DA8 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_80522F4 - b _08076DB8 - .align 2, 0 -_08076DA4: .4byte gUnknown_80F4EC0 -_08076DA8: .4byte gUnknown_80FB7BC -_08076DAC: - ldr r0, _08076E14 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_80522F4 -_08076DB8: - ldrb r0, [r4, 0x6] - cmp r0, 0 - beq _08076E08 - movs r5, 0 - movs r7, 0 -_08076DC2: - ldr r0, _08076E18 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08076E1C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08076E02 - ldr r1, [r4, 0x70] - adds r3, r1, 0 - adds r3, 0x78 - ldrb r0, [r3] - cmp r0, 0x1 - bne _08076E02 - adds r2, r1, 0 - adds r2, 0x80 - ldr r0, [r2] - cmp r0, r6 - bne _08076E02 - movs r0, 0x6 - strb r0, [r3] - str r7, [r2] - adds r0, r1, 0 - adds r0, 0x7C - strh r7, [r0] - subs r0, 0x2 - strb r7, [r0] -_08076E02: - adds r5, 0x1 - cmp r5, 0x3 - ble _08076DC2 -_08076E08: - adds r0, r6, 0 - bl sub_80418D4 -_08076E0E: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08076E14: .4byte gUnknown_80FB7DC -_08076E18: .4byte gUnknown_203B418 -_08076E1C: .4byte 0x0001357c - thumb_func_end sub_8076D10 - - thumb_func_start sub_8076E20 -sub_8076E20: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - mov r9, r3 - ldr r0, [sp, 0x1C] - ldr r1, [sp, 0x20] - lsls r0, 24 - lsrs r7, r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08076E4C - b _08076F6E -_08076E4C: - cmp r5, 0 - beq _08076E64 - ldr r0, _08076E5C - ldr r1, _08076E60 - ldr r1, [r1] - bl strcpy - b _08076E6E - .align 2, 0 -_08076E5C: .4byte gUnknown_202DE58 -_08076E60: .4byte gUnknown_80FC0C8 -_08076E64: - ldr r0, _08076EA0 - ldr r1, _08076EA4 - ldr r1, [r1] - bl strcpy -_08076E6E: - cmp r7, 0 - beq _08076EE4 - adds r0, r6, 0 - adds r1, r4, 0 - mov r2, r8 - bl sub_8071728 - lsls r0, 24 - cmp r0, 0 - bne _08076F6E - adds r0, r4, 0 - movs r1, 0xB - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08076EB0 - ldr r0, _08076EA8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08076EAC - b _08076ECE - .align 2, 0 -_08076EA0: .4byte gUnknown_202DE58 -_08076EA4: .4byte gUnknown_80FC0B8 -_08076EA8: .4byte gUnknown_202DF98 -_08076EAC: .4byte gUnknown_80FD550 -_08076EB0: - adds r0, r4, 0 - movs r1, 0x9 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08076EE4 - cmp r5, 0 - bne _08076EE4 - ldr r0, _08076EDC - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08076EE0 -_08076ECE: - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08076F6E - .align 2, 0 -_08076EDC: .4byte gUnknown_202DF98 -_08076EE0: .4byte gUnknown_80FCA60 -_08076EE4: - ldr r7, [r4, 0x70] - ldr r0, _08076F0C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8041F28 - mov r0, r9 - cmp r0, 0x1 - bne _08076F18 - ldr r0, _08076F10 - ldr r1, _08076F14 - ldr r1, [r1] - bl strcpy - b _08076F22 - .align 2, 0 -_08076F0C: .4byte gUnknown_202DF98 -_08076F10: .4byte gUnknown_202DEA8 -_08076F14: .4byte gUnknown_80FC0E4 -_08076F18: - ldr r0, _08076F50 - ldr r1, _08076F54 - ldr r1, [r1] - bl strcpy -_08076F22: - lsls r1, r5, 1 - adds r0, r7, 0 - adds r0, 0x1C - adds r1, r0, r1 - movs r2, 0 - ldrsh r3, [r1, r2] - mov r0, r9 - subs r3, r0 - cmp r3, 0 - bge _08076F38 - movs r3, 0 -_08076F38: - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, r3 - beq _08076F5C - strh r3, [r1] - ldr r0, _08076F58 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08076F68 - .align 2, 0 -_08076F50: .4byte gUnknown_202DEA8 -_08076F54: .4byte gUnknown_80FC0D4 -_08076F58: .4byte gUnknown_80FC15C -_08076F5C: - ldr r0, _08076F7C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08076F68: - adds r0, r4, 0 - bl sub_80418D4 -_08076F6E: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08076F7C: .4byte gUnknown_80FC274 - thumb_func_end sub_8076E20 - - thumb_func_start sub_8076F80 -sub_8076F80: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - mov r9, r3 - ldr r0, [sp, 0x1C] - ldr r1, [sp, 0x20] - lsls r0, 24 - lsrs r7, r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08077072 - cmp r5, 0 - beq _08076FC4 - ldr r0, _08076FBC - ldr r1, _08076FC0 - ldr r1, [r1] - bl strcpy - b _08076FCE - .align 2, 0 -_08076FBC: .4byte gUnknown_202DE58 -_08076FC0: .4byte gUnknown_80FC0AC -_08076FC4: - ldr r0, _08077008 - ldr r1, _0807700C - ldr r1, [r1] - bl strcpy -_08076FCE: - cmp r7, 0 - beq _08076FE2 - adds r0, r6, 0 - adds r1, r4, 0 - mov r2, r8 - bl sub_8071728 - lsls r0, 24 - cmp r0, 0 - bne _08077072 -_08076FE2: - ldr r7, [r4, 0x70] - ldr r0, _08077010 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8041F4C - mov r0, r9 - cmp r0, 0x1 - bne _0807701C - ldr r0, _08077014 - ldr r1, _08077018 - ldr r1, [r1] - bl strcpy - b _08077026 - .align 2, 0 -_08077008: .4byte gUnknown_202DE58 -_0807700C: .4byte gUnknown_80FC09C -_08077010: .4byte gUnknown_202DF98 -_08077014: .4byte gUnknown_202DEA8 -_08077018: .4byte gUnknown_80FC0E4 -_0807701C: - ldr r0, _08077054 - ldr r1, _08077058 - ldr r1, [r1] - bl strcpy -_08077026: - lsls r1, r5, 1 - adds r0, r7, 0 - adds r0, 0x20 - adds r1, r0, r1 - movs r2, 0 - ldrsh r3, [r1, r2] - mov r0, r9 - subs r3, r0 - cmp r3, 0 - bge _0807703C - movs r3, 0 -_0807703C: - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, r3 - beq _08077060 - strh r3, [r1] - ldr r0, _0807705C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _0807706C - .align 2, 0 -_08077054: .4byte gUnknown_202DEA8 -_08077058: .4byte gUnknown_80FC0D4 -_0807705C: .4byte gUnknown_80FC158 -_08077060: - ldr r0, _08077080 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_0807706C: - adds r0, r4, 0 - bl sub_80418D4 -_08077072: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08077080: .4byte gUnknown_80FC248 - thumb_func_end sub_8076F80 - - thumb_func_start sub_8077084 -sub_8077084: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r4, r1, 0 - adds r5, r2, 0 - adds r6, r3, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08077152 - ldr r7, [r4, 0x70] - ldr r0, _080770C4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8041F70 - cmp r5, 0 - beq _080770D0 - ldr r0, _080770C8 - ldr r1, _080770CC - ldr r1, [r1] - bl strcpy - b _080770DA - .align 2, 0 -_080770C4: .4byte gUnknown_202DF98 -_080770C8: .4byte gUnknown_202DE58 -_080770CC: .4byte gUnknown_80FC0C8 -_080770D0: - ldr r0, _080770EC - ldr r1, _080770F0 - ldr r1, [r1] - bl strcpy -_080770DA: - cmp r6, 0x1 - bne _080770FC - ldr r0, _080770F4 - ldr r1, _080770F8 - ldr r1, [r1] - bl strcpy - b _08077106 - .align 2, 0 -_080770EC: .4byte gUnknown_202DE58 -_080770F0: .4byte gUnknown_80FC0B8 -_080770F4: .4byte gUnknown_202DEA8 -_080770F8: .4byte gUnknown_80FC0E4 -_080770FC: - ldr r0, _08077134 - ldr r1, _08077138 - ldr r1, [r1] - bl strcpy -_08077106: - lsls r1, r5, 1 - adds r0, r7, 0 - adds r0, 0x1C - adds r1, r0, r1 - movs r0, 0 - ldrsh r3, [r1, r0] - adds r3, r6 - cmp r3, 0x13 - ble _0807711A - movs r3, 0x14 -_0807711A: - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, r3 - beq _08077140 - strh r3, [r1] - ldr r0, _0807713C - ldr r2, [r0] - mov r0, r8 - adds r1, r4, 0 - bl sub_80522F4 - b _0807714C - .align 2, 0 -_08077134: .4byte gUnknown_202DEA8 -_08077138: .4byte gUnknown_80FC0D4 -_0807713C: .4byte gUnknown_80FC13C -_08077140: - ldr r0, _0807715C - ldr r2, [r0] - mov r0, r8 - adds r1, r4, 0 - bl sub_80522F4 -_0807714C: - adds r0, r4, 0 - bl sub_80418D4 -_08077152: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807715C: .4byte gUnknown_80FC270 - thumb_func_end sub_8077084 - - thumb_func_start sub_8077160 -sub_8077160: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r4, r1, 0 - adds r5, r2, 0 - adds r6, r3, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807722E - ldr r7, [r4, 0x70] - ldr r0, _080771A0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8041F94 - cmp r5, 0 - beq _080771AC - ldr r0, _080771A4 - ldr r1, _080771A8 - ldr r1, [r1] - bl strcpy - b _080771B6 - .align 2, 0 -_080771A0: .4byte gUnknown_202DF98 -_080771A4: .4byte gUnknown_202DE58 -_080771A8: .4byte gUnknown_80FC0AC -_080771AC: - ldr r0, _080771C8 - ldr r1, _080771CC - ldr r1, [r1] - bl strcpy -_080771B6: - cmp r6, 0x1 - bne _080771D8 - ldr r0, _080771D0 - ldr r1, _080771D4 - ldr r1, [r1] - bl strcpy - b _080771E2 - .align 2, 0 -_080771C8: .4byte gUnknown_202DE58 -_080771CC: .4byte gUnknown_80FC09C -_080771D0: .4byte gUnknown_202DEA8 -_080771D4: .4byte gUnknown_80FC0E4 -_080771D8: - ldr r0, _08077210 - ldr r1, _08077214 - ldr r1, [r1] - bl strcpy -_080771E2: - lsls r1, r5, 1 - adds r0, r7, 0 - adds r0, 0x20 - adds r1, r0, r1 - movs r0, 0 - ldrsh r3, [r1, r0] - adds r3, r6 - cmp r3, 0x13 - ble _080771F6 - movs r3, 0x14 -_080771F6: - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, r3 - beq _0807721C - strh r3, [r1] - ldr r0, _08077218 - ldr r2, [r0] - mov r0, r8 - adds r1, r4, 0 - bl sub_80522F4 - b _08077228 - .align 2, 0 -_08077210: .4byte gUnknown_202DEA8 -_08077214: .4byte gUnknown_80FC0D4 -_08077218: .4byte gUnknown_80FC138 -_0807721C: - ldr r0, _08077238 - ldr r2, [r0] - mov r0, r8 - adds r1, r4, 0 - bl sub_80522F4 -_08077228: - adds r0, r4, 0 - bl sub_80418D4 -_0807722E: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08077238: .4byte gUnknown_80FC21C - thumb_func_end sub_8077160 - - thumb_func_start sub_807723C -sub_807723C: - push {r4,lr} - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08077258 - adds r0, r4, 0 - movs r1, 0x48 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - bne _0807725C -_08077258: - movs r0, 0 - b _0807726C -_0807725C: - ldr r0, [r4, 0x70] - movs r1, 0x28 - ldrsh r0, [r0, r1] - cmp r0, 0x1 - bgt _0807726A - movs r0, 0x2 - b _0807726C -_0807726A: - movs r0, 0x1 -_0807726C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_807723C - - thumb_func_start sub_8077274 -sub_8077274: - push {r4,r5,lr} - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080772B4 - ldr r0, [r5, 0x70] - adds r4, r0, 0 - ldr r0, _080772BC - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - movs r0, 0x28 - ldrsh r1, [r4, r0] - adds r1, 0x1 - cmp r1, 0x1 - ble _0807729E - movs r1, 0x2 -_0807729E: - movs r2, 0x28 - ldrsh r0, [r4, r2] - cmp r0, r1 - beq _080772AE - strh r1, [r4, 0x28] - adds r0, r5, 0 - bl sub_8041C58 -_080772AE: - adds r0, r5, 0 - bl sub_80418D4 -_080772B4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080772BC: .4byte gUnknown_202DF98 - thumb_func_end sub_8077274 - - thumb_func_start sub_80772C0 -sub_80772C0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r9, r0 - adds r5, r1, 0 - adds r4, r2, 0 - adds r7, r3, 0 - ldr r0, [sp, 0x20] - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080772E6 - b _08077422 -_080772E6: - cmp r4, 0 - beq _08077300 - ldr r0, _080772F8 - ldr r1, _080772FC - ldr r1, [r1] - bl strcpy - b _0807730A - .align 2, 0 -_080772F8: .4byte gUnknown_202DE58 -_080772FC: .4byte gUnknown_80FC0C8 -_08077300: - ldr r0, _08077340 - ldr r1, _08077344 - ldr r1, [r1] - bl strcpy -_0807730A: - cmp r7, 0xFF - bgt _08077320 - mov r0, r9 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_8071728 - lsls r0, 24 - cmp r0, 0 - beq _08077320 - b _08077422 -_08077320: - adds r0, r5, 0 - movs r1, 0xB - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08077350 - cmp r7, 0xFF - bgt _08077350 - ldr r0, _08077348 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807734C - b _08077376 - .align 2, 0 -_08077340: .4byte gUnknown_202DE58 -_08077344: .4byte gUnknown_80FC0B8 -_08077348: .4byte gUnknown_202DF98 -_0807734C: .4byte gUnknown_80FD550 -_08077350: - adds r0, r5, 0 - movs r1, 0x9 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807738C - cmp r4, 0 - bne _0807738C - cmp r7, 0xFF - bgt _0807738C - cmp r6, 0 - beq _08077422 - ldr r0, _08077384 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08077388 -_08077376: - ldr r2, [r0] - mov r0, r9 - adds r1, r5, 0 - bl sub_80522F4 - b _08077422 - .align 2, 0 -_08077384: .4byte gUnknown_202DF98 -_08077388: .4byte gUnknown_80FCA60 -_0807738C: - ldr r0, [r5, 0x70] - mov r8, r0 - ldr r0, _080773B8 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - lsls r1, r4, 2 - mov r0, r8 - adds r0, 0x2C - adds r0, r1 - ldr r0, [r0] - mov r10, r0 - adds r6, r1, 0 - cmp r7, 0xFF - bgt _080773BC - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8041FD8 - b _080773C4 - .align 2, 0 -_080773B8: .4byte gUnknown_202DF98 -_080773BC: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8041FB4 -_080773C4: - mov r0, r8 - adds r0, 0x2C - adds r4, r0, r6 - ldr r0, [r4] - adds r1, r7, 0 - bl sub_8009DA4 - str r0, [r4] - cmp r0, 0x1 - bgt _080773DC - movs r0, 0x2 - str r0, [r4] -_080773DC: - ldr r0, [r4] - ldr r1, _080773F0 - cmp r0, r1 - ble _080773E6 - str r1, [r4] -_080773E6: - ldr r0, [r4] - cmp r10, r0 - ble _080773F8 - ldr r0, _080773F4 - b _080773FE - .align 2, 0 -_080773F0: .4byte 0x000063fd -_080773F4: .4byte gUnknown_80FC11C -_080773F8: - cmp r10, r0 - bge _08077410 - ldr r0, _0807740C -_080773FE: - ldr r2, [r0] - mov r0, r9 - adds r1, r5, 0 - bl sub_80522F4 - b _0807741C - .align 2, 0 -_0807740C: .4byte gUnknown_80FC118 -_08077410: - ldr r0, _08077430 - ldr r2, [r0] - mov r0, r9 - adds r1, r5, 0 - bl sub_80522F4 -_0807741C: - adds r0, r5, 0 - bl sub_80418D4 -_08077422: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08077430: .4byte gUnknown_80FC184 - thumb_func_end sub_80772C0 - - thumb_func_start sub_8077434 -sub_8077434: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r9, r0 - adds r5, r1, 0 - adds r4, r2, 0 - mov r8, r3 - ldr r0, [sp, 0x20] - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807752E - cmp r4, 0 - beq _08077470 - ldr r0, _08077468 - ldr r1, _0807746C - ldr r1, [r1] - bl strcpy - b _0807747A - .align 2, 0 -_08077468: .4byte gUnknown_202DE58 -_0807746C: .4byte gUnknown_80FC0AC -_08077470: - ldr r0, _080774BC - ldr r1, _080774C0 - ldr r1, [r1] - bl strcpy -_0807747A: - mov r0, r8 - cmp r0, 0xFF - bgt _08077490 - mov r0, r9 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_8071728 - lsls r0, 24 - cmp r0, 0 - bne _0807752E -_08077490: - ldr r7, [r5, 0x70] - ldr r0, _080774C4 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - lsls r1, r4, 2 - adds r0, r7, 0 - adds r0, 0x34 - adds r0, r1 - ldr r0, [r0] - mov r10, r0 - adds r6, r1, 0 - mov r0, r8 - cmp r0, 0xFF - bgt _080774C8 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804201C - b _080774D0 - .align 2, 0 -_080774BC: .4byte gUnknown_202DE58 -_080774C0: .4byte gUnknown_80FC09C -_080774C4: .4byte gUnknown_202DF98 -_080774C8: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8041FFC -_080774D0: - adds r0, r7, 0 - adds r0, 0x34 - adds r4, r0, r6 - ldr r0, [r4] - mov r1, r8 - bl sub_8009DA4 - str r0, [r4] - cmp r0, 0x1 - bgt _080774E8 - movs r0, 0x2 - str r0, [r4] -_080774E8: - ldr r0, [r4] - ldr r1, _080774FC - cmp r0, r1 - ble _080774F2 - str r1, [r4] -_080774F2: - ldr r0, [r4] - cmp r10, r0 - ble _08077504 - ldr r0, _08077500 - b _0807750A - .align 2, 0 -_080774FC: .4byte 0x000063fd -_08077500: .4byte gUnknown_80FC114 -_08077504: - cmp r10, r0 - bge _0807751C - ldr r0, _08077518 -_0807750A: - ldr r2, [r0] - mov r0, r9 - adds r1, r5, 0 - bl sub_80522F4 - b _08077528 - .align 2, 0 -_08077518: .4byte gUnknown_80FC0FC -_0807751C: - ldr r0, _0807753C - ldr r2, [r0] - mov r0, r9 - adds r1, r5, 0 - bl sub_80522F4 -_08077528: - adds r0, r5, 0 - bl sub_80418D4 -_0807752E: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807753C: .4byte gUnknown_80FC180 - thumb_func_end sub_8077434 - - thumb_func_start sub_8077540 -sub_8077540: - push {r4-r7,lr} - adds r7, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080775D2 - ldr r6, [r4, 0x70] - ldr r0, _08077578 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8042040 - cmp r5, 0 - beq _08077584 - ldr r0, _0807757C - ldr r1, _08077580 - ldr r1, [r1] - bl strcpy - b _0807758E - .align 2, 0 -_08077578: .4byte gUnknown_202DF98 -_0807757C: .4byte gUnknown_202DE58 -_08077580: .4byte gUnknown_80FC090 -_08077584: - ldr r0, _080775B4 - ldr r1, _080775B8 - ldr r1, [r1] - bl strcpy -_0807758E: - lsls r0, r5, 1 - adds r1, r6, 0 - adds r1, 0x24 - adds r1, r0 - ldrh r2, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0x13 - bgt _080775C0 - adds r0, r2, 0x1 - strh r0, [r1] - ldr r0, _080775BC - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _080775CC - .align 2, 0 -_080775B4: .4byte gUnknown_202DE58 -_080775B8: .4byte gUnknown_80FC084 -_080775BC: .4byte gUnknown_80FC1C4 -_080775C0: - ldr r0, _080775D8 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_80522F4 -_080775CC: - adds r0, r4, 0 - bl sub_80418D4 -_080775D2: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080775D8: .4byte gUnknown_80FC218 - thumb_func_end sub_8077540 - - thumb_func_start sub_80775DC -sub_80775DC: - push {r4-r7,lr} - adds r7, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - lsls r3, 24 - lsrs r4, r3, 24 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080776B6 - cmp r6, 0 - beq _0807760C - ldr r0, _08077604 - ldr r1, _08077608 - ldr r1, [r1] - bl strcpy - b _08077616 - .align 2, 0 -_08077604: .4byte gUnknown_202DE58 -_08077608: .4byte gUnknown_80FC090 -_0807760C: - ldr r0, _08077654 - ldr r1, _08077658 - ldr r1, [r1] - bl strcpy -_08077616: - adds r0, r7, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_8071728 - lsls r0, 24 - cmp r0, 0 - bne _080776B6 - adds r0, r5, 0 - movs r1, 0x1E - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08077664 - cmp r6, 0 - bne _08077664 - cmp r4, 0 - beq _080776B6 - ldr r0, _0807765C - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08077660 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _080776B6 - .align 2, 0 -_08077654: .4byte gUnknown_202DE58 -_08077658: .4byte gUnknown_80FC084 -_0807765C: .4byte gUnknown_202DF98 -_08077660: .4byte gUnknown_80FCA64 -_08077664: - ldr r4, [r5, 0x70] - ldr r0, _0807769C - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8042060 - lsls r0, r6, 1 - adds r4, 0x24 - adds r1, r4, r0 - ldrh r2, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - beq _080776A4 - subs r0, r2, 0x1 - strh r0, [r1] - ldr r0, _080776A0 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _080776B0 - .align 2, 0 -_0807769C: .4byte gUnknown_202DF98 -_080776A0: .4byte gUnknown_80FC1A4 -_080776A4: - ldr r0, _080776BC - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_080776B0: - adds r0, r5, 0 - bl sub_80418D4 -_080776B6: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080776BC: .4byte gUnknown_80FC1F0 - thumb_func_end sub_80775DC - - thumb_func_start sub_80776C0 -sub_80776C0: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r6, r2, 24 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08077776 - adds r0, r5, 0 - adds r1, r4, 0 - adds r2, r6, 0 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08077776 - adds r0, r4, 0 - movs r1, 0x1F - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08077718 - ldr r0, _08077710 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - cmp r6, 0 - beq _08077776 - ldr r0, _08077714 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08077776 - .align 2, 0 -_08077710: .4byte gUnknown_202DF98 -_08077714: .4byte gUnknown_80FCC18 -_08077718: - ldr r6, [r4, 0x70] - ldr r0, _08077758 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r6, 0 - adds r1, 0xBC - ldrb r0, [r1] - cmp r0, 0x1 - beq _08077764 - movs r0, 0x1 - strb r0, [r1] - ldr r1, _0807775C - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r6, 0 - adds r1, 0xBD - strb r0, [r1] - adds r0, r4, 0 - bl sub_80420A0 - ldr r0, _08077760 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08077770 - .align 2, 0 -_08077758: .4byte gUnknown_202DF98 -_0807775C: .4byte gUnknown_80F4E3C -_08077760: .4byte gUnknown_80FB2E0 -_08077764: - ldr r0, _0807777C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08077770: - adds r0, r4, 0 - bl sub_80418D4 -_08077776: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807777C: .4byte gUnknown_80FB300 - thumb_func_end sub_80776C0 - - thumb_func_start sub_8077780 -sub_8077780: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r7, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - mov r10, r2 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080777A2 - b _080778F0 -_080777A2: - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r10 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - beq _080777B4 - b _080778F0 -_080777B4: - adds r0, r5, 0 - movs r1, 0x16 - bl sub_8071824 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _080777EC - ldr r0, _080777E4 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - mov r0, r10 - cmp r0, 0 - bne _080777D6 - b _080778F0 -_080777D6: - ldr r0, _080777E8 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _080778F0 - .align 2, 0 -_080777E4: .4byte gUnknown_202DF98 -_080777E8: .4byte gUnknown_80FCBF8 -_080777EC: - movs r6, 0x1 - ldr r1, [r5, 0x70] - mov r8, r1 - ldr r0, _08077844 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - mov r1, r8 - adds r1, 0xAC - ldrb r0, [r1] - cmp r0, 0x4 - beq _08077850 - movs r0, 0x4 - strb r0, [r1] - ldr r1, _08077848 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - mov r1, r8 - adds r1, 0xAD - strb r0, [r1] - mov r0, r8 - adds r0, 0xAE - strb r4, [r0] - adds r0, 0x1 - strb r4, [r0] - movs r6, 0 - ldr r0, _0807784C - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 - adds r0, r5, 0 - bl sub_8041C1C - adds r0, r5, 0 - bl sub_8070774 - b _0807785C - .align 2, 0 -_08077844: .4byte gUnknown_202DF98 -_08077848: .4byte gUnknown_80F4E50 -_0807784C: .4byte gUnknown_80FB2AC -_08077850: - ldr r0, _08077900 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0807785C: - adds r0, r5, 0 - movs r1, 0x19 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _080778EA - cmp r6, 0 - bne _080778EA - movs r3, 0 - mov r9, r3 - movs r6, 0 -_08077874: - movs r1, 0x4 - ldrsh r0, [r5, r1] - ldr r1, _08077904 - lsls r2, r6, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r5, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - ldr r4, [r0, 0x10] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080778E4 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _080778E4 - mov r0, r9 - cmp r0, 0 - bne _080778CA - movs r1, 0x1 - mov r9, r1 - ldr r0, _08077908 - mov r1, r8 - movs r2, 0 - bl sub_80708B4 - ldr r0, _0807790C - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80522F4 -_080778CA: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807167C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080778E4 - adds r0, r7, 0 - adds r1, r4, 0 - mov r2, r10 - bl sub_8077780 -_080778E4: - adds r6, 0x1 - cmp r6, 0x7 - ble _08077874 -_080778EA: - adds r0, r5, 0 - bl sub_80418D4 -_080778F0: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08077900: .4byte gUnknown_80FB2CC -_08077904: .4byte gUnknown_80F4448 -_08077908: .4byte gUnknown_202DF98 -_0807790C: .4byte gUnknown_80FF01C - thumb_func_end sub_8077780 - - thumb_func_start sub_8077910 -sub_8077910: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r8, r0 - adds r5, r1, 0 - adds r4, r2, 0 - lsls r3, 24 - lsrs r3, 24 - mov r9, r3 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080779DE - cmp r4, 0 - bne _08077940 - ldr r1, _08077964 - adds r0, r5, 0 - movs r2, 0 - bl sub_808417C - adds r4, r0, 0x1 -_08077940: - ldr r6, [r5, 0x70] - ldr r0, _08077968 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - bl sub_8070774 - adds r7, r0, 0 - cmp r7, 0x4 - bne _08077970 - mov r0, r9 - cmp r0, 0 - beq _080779D8 - ldr r0, _0807796C - b _0807799E - .align 2, 0 -_08077964: .4byte gUnknown_80F4E40 -_08077968: .4byte gUnknown_202DF98 -_0807796C: .4byte gUnknown_80FC2B8 -_08077970: - movs r2, 0 - movs r0, 0x84 - lsls r0, 1 - adds r1, r6, r0 - b _08077988 -_0807797A: - adds r2, 0x1 - cmp r2, 0x4 - bgt _08077990 - movs r1, 0x84 - lsls r1, 1 - adds r0, r6, r1 - adds r1, r0, r2 -_08077988: - ldrb r0, [r1] - cmp r0, 0 - bne _0807797A - strb r4, [r1] -_08077990: - adds r0, r5, 0 - bl sub_8070774 - adds r4, r0, 0 - cmp r7, r4 - bne _080779B0 - ldr r0, _080779AC -_0807799E: - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 - b _080779D8 - .align 2, 0 -_080779AC: .4byte gUnknown_80FC298 -_080779B0: - adds r0, r5, 0 - bl sub_8041CB8 - ldr r1, _080779EC - lsls r0, r4, 2 - adds r0, r1 - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 - adds r1, r6, 0 - adds r1, 0xF8 - movs r2, 0 - movs r0, 0x1 - strb r0, [r1] - movs r1, 0xA4 - lsls r1, 1 - adds r0, r6, r1 - strb r2, [r0] -_080779D8: - adds r0, r5, 0 - bl sub_80418D4 -_080779DE: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080779EC: .4byte gUnknown_80FA124 - thumb_func_end sub_8077910 - - thumb_func_start sub_80779F0 -sub_80779F0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r10, r0 - adds r5, r1, 0 - mov r8, r2 - lsls r3, 24 - lsrs r3, 24 - mov r9, r3 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08077AD0 - mov r0, r10 - adds r1, r5, 0 - mov r2, r9 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08077AD0 - ldr r7, [r5, 0x70] - ldr r0, _08077A48 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - bl sub_8070774 - str r0, [sp] - cmp r0, 0 - bne _08077A50 - mov r0, r9 - cmp r0, 0 - beq _08077ACA - ldr r0, _08077A4C - b _08077AA2 - .align 2, 0 -_08077A48: .4byte gUnknown_202DF98 -_08077A4C: .4byte gUnknown_80FC2D8 -_08077A50: - movs r0, 0 - cmp r0, r8 - bge _08077A8C -_08077A56: - movs r1, 0 - adds r6, r0, 0x1 -_08077A5A: - ldr r2, _08077A78 - adds r0, r7, r2 - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0 - bne _08077A80 - adds r0, r5, 0 - ldr r1, _08077A7C - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - strb r0, [r4] - b _08077A86 - .align 2, 0 -_08077A78: .4byte 0x0000010d -_08077A7C: .4byte gUnknown_80F4E48 -_08077A80: - adds r1, 0x1 - cmp r1, 0x4 - ble _08077A5A -_08077A86: - adds r0, r6, 0 - cmp r0, r8 - blt _08077A56 -_08077A8C: - adds r0, r5, 0 - bl sub_8070774 - adds r4, r0, 0 - ldr r0, [sp] - cmp r0, r4 - bne _08077AB4 - mov r2, r9 - cmp r2, 0 - beq _08077ACA - ldr r0, _08077AB0 -_08077AA2: - ldr r2, [r0] - mov r0, r10 - adds r1, r5, 0 - bl sub_80522F4 - b _08077ACA - .align 2, 0 -_08077AB0: .4byte gUnknown_80FC298 -_08077AB4: - adds r0, r5, 0 - bl sub_8041CCC - ldr r0, _08077AE0 - lsls r1, r4, 2 - adds r1, r0 - ldr r2, [r1] - mov r0, r10 - adds r1, r5, 0 - bl sub_80522F4 -_08077ACA: - adds r0, r5, 0 - bl sub_80418D4 -_08077AD0: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08077AE0: .4byte gUnknown_80FA124 - thumb_func_end sub_80779F0 - - thumb_func_start sub_8077AE4 -sub_8077AE4: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r5, r2, 24 - adds r7, r5, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08077BAA - adds r0, r6, 0 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08077BAA - ldr r0, _08077B2C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r4, 0 - movs r1, 0x12 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08077B34 - cmp r5, 0 - beq _08077BAA - ldr r0, _08077B30 - b _08077B48 - .align 2, 0 -_08077B2C: .4byte gUnknown_202DF98 -_08077B30: .4byte gUnknown_80FD500 -_08077B34: - adds r0, r4, 0 - movs r1, 0x40 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08077B58 - cmp r7, 0 - beq _08077BAA - ldr r0, _08077B54 -_08077B48: - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08077BAA - .align 2, 0 -_08077B54: .4byte gUnknown_80FCDB4 -_08077B58: - adds r0, r4, 0 - bl sub_8041BE8 - ldr r5, [r4, 0x70] - adds r1, r5, 0 - adds r1, 0xBC - ldrb r0, [r1] - cmp r0, 0x2 - beq _08077B98 - movs r0, 0x2 - strb r0, [r1] - ldr r1, _08077B90 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xBD - strb r0, [r1] - ldr r0, _08077B94 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08077BA4 - .align 2, 0 -_08077B90: .4byte gUnknown_80F4E4C -_08077B94: .4byte gUnknown_80FB25C -_08077B98: - ldr r0, _08077BB0 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08077BA4: - adds r0, r4, 0 - bl sub_80418D4 -_08077BAA: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08077BB0: .4byte gUnknown_80FB27C - thumb_func_end sub_8077AE4 - - thumb_func_start sub_8077BB4 -sub_8077BB4: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r5, r2, 24 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08077C3A - adds r0, r6, 0 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08077C3A - ldr r5, [r4, 0x70] - ldr r0, _08077C1C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xBC - ldrb r0, [r1] - cmp r0, 0x4 - beq _08077C28 - movs r0, 0x4 - strb r0, [r1] - ldr r1, _08077C20 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xBD - strb r0, [r1] - adds r0, r4, 0 - bl sub_8041BF8 - ldr r0, _08077C24 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08077C34 - .align 2, 0 -_08077C1C: .4byte gUnknown_202DF98 -_08077C20: .4byte gUnknown_80F4ECC -_08077C24: .4byte gUnknown_80FB940 -_08077C28: - ldr r0, _08077C40 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08077C34: - adds r0, r4, 0 - bl sub_80418D4 -_08077C3A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08077C40: .4byte gUnknown_80FB960 - thumb_func_end sub_8077BB4 - - thumb_func_start sub_8077C44 -sub_8077C44: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r9, r0 - adds r5, r1, 0 - mov r10, r2 - mov r8, r3 - ldr r0, [sp, 0x24] - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08077C6E - b _08077DC8 -_08077C6E: - ldr r4, [r5, 0x70] - movs r0, 0x10 - ldrsh r7, [r4, r0] - movs r1, 0xE - ldrsh r6, [r4, r1] - ldrh r2, [r4, 0xE] - adds r0, r6, 0 - ldrh r1, [r4, 0x10] - mov r12, r1 - adds r1, r7, 0 - cmp r0, r1 - bne _08077C8C - mov r0, r8 - cmp r0, 0 - bgt _08077C92 -_08077C8C: - mov r3, r10 - cmp r3, 0 - bne _08077CD0 -_08077C92: - ldrh r1, [r4, 0x10] - add r1, r8 - strh r1, [r4, 0x10] - ldrh r0, [r4, 0xE] - add r0, r8 - strh r0, [r4, 0xE] - lsls r1, 16 - asrs r1, 16 - ldr r0, _08077CCC - cmp r1, r0 - ble _08077CAA - strh r0, [r4, 0x10] -_08077CAA: - movs r1, 0xE - ldrsh r0, [r4, r1] - movs r3, 0x10 - ldrsh r2, [r4, r3] - ldrh r1, [r4, 0x10] - cmp r0, r2 - ble _08077CBA - strh r1, [r4, 0xE] -_08077CBA: - movs r1, 0xE - ldrsh r0, [r4, r1] - cmp r0, r2 - bne _08077CC4 - adds r6, r0, 0 -_08077CC4: - adds r0, r5, 0 - bl sub_8041C94 - b _08077CE8 - .align 2, 0 -_08077CCC: .4byte 0x000003e7 -_08077CD0: - mov r3, r10 - adds r0, r2, r3 - strh r0, [r4, 0xE] - lsls r0, 16 - asrs r0, 16 - cmp r0, r1 - ble _08077CE2 - mov r0, r12 - strh r0, [r4, 0xE] -_08077CE2: - adds r0, r5, 0 - bl sub_8041CA8 -_08077CE8: - movs r1, 0x10 - ldrsh r0, [r4, r1] - subs r7, r0, r7 - movs r2, 0xE - ldrsh r0, [r4, r2] - subs r6, r0, r6 - adds r0, r5, 0 - bl sub_80418D4 - ldr r0, _08077D1C - str r6, [r0] - str r7, [r0, 0x4] - ldr r0, _08077D20 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - cmp r6, 0 - bne _08077D28 - cmp r7, 0 - bne _08077D28 - ldr r3, [sp] - cmp r3, 0 - beq _08077DC8 - ldr r0, _08077D24 - b _08077D3A - .align 2, 0 -_08077D1C: .4byte gUnknown_202DE30 -_08077D20: .4byte gUnknown_202DF98 -_08077D24: .4byte gUnknown_80FB204 -_08077D28: - mov r0, r8 - cmp r0, 0 - bne _08077D4C - cmp r6, 0 - bne _08077D4C - ldr r1, [sp] - cmp r1, 0 - beq _08077DC8 - ldr r0, _08077D48 -_08077D3A: - ldr r2, [r0] - mov r0, r9 - adds r1, r5, 0 - bl sub_80522F4 - b _08077DC8 - .align 2, 0 -_08077D48: .4byte gUnknown_80FB21C -_08077D4C: - movs r2, 0 - mov r8, r2 - cmp r7, 0 - beq _08077D6E - adds r0, r5, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _08077D62 - mov r8, r7 -_08077D62: - ldr r0, _08077DA0 - ldr r2, [r0] - mov r0, r9 - adds r1, r5, 0 - bl sub_80522F4 -_08077D6E: - cmp r6, 0 - beq _08077DB4 - adds r0, r5, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _08077D80 - mov r8, r6 -_08077D80: - mov r3, r10 - cmp r3, 0 - beq _08077DB4 - movs r0, 0x10 - ldrsh r1, [r4, r0] - movs r2, 0xE - ldrsh r0, [r4, r2] - cmp r1, r0 - bne _08077DA8 - ldr r0, _08077DA4 - ldr r2, [r0] - mov r0, r9 - adds r1, r5, 0 - bl sub_80522F4 - b _08077DB4 - .align 2, 0 -_08077DA0: .4byte gUnknown_80FB240 -_08077DA4: .4byte gUnknown_80FB1E0 -_08077DA8: - ldr r0, _08077DD8 - ldr r2, [r0] - mov r0, r9 - adds r1, r5, 0 - bl sub_80522F4 -_08077DB4: - mov r3, r8 - cmp r3, 0 - beq _08077DC8 - movs r3, 0x1 - negs r3, r3 - mov r0, r8 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_803ED30 -_08077DC8: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08077DD8: .4byte gUnknown_80FB1C4 - thumb_func_end sub_8077C44 - - thumb_func_start sub_8077DDC -sub_8077DDC: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08077E3C - ldr r0, [r4, 0x70] - adds r1, r0, 0 - adds r1, 0xF1 - ldrb r0, [r1] - cmp r0, 0 - beq _08077E0C - ldr r0, _08077E08 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08077E3C - .align 2, 0 -_08077E08: .4byte gUnknown_80FAEF0 -_08077E0C: - movs r0, 0x1 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_75 - ldr r0, _08077E44 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08077E48 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - movs r0, 0 - bl sub_803F580 - bl sub_8040A84 - adds r0, r4, 0 - bl sub_80418D4 -_08077E3C: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08077E44: .4byte gUnknown_202DF98 -_08077E48: .4byte gUnknown_80FAEA0 - thumb_func_end sub_8077DDC - - thumb_func_start sub_8077E4C -sub_8077E4C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08077EC0 - bl sub_8043D10 - lsls r0, 24 - cmp r0, 0 - beq _08077E70 - ldr r0, _08077E6C - b _08077E7E - .align 2, 0 -_08077E6C: .4byte gUnknown_80FAF3C -_08077E70: - ldr r0, [r4, 0x70] - adds r1, r0, 0 - adds r1, 0xF2 - ldrb r0, [r1] - cmp r0, 0 - beq _08077E90 - ldr r0, _08077E8C -_08077E7E: - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08077EC0 - .align 2, 0 -_08077E8C: .4byte gUnknown_80FAF1C -_08077E90: - movs r0, 0x1 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_76 - ldr r0, _08077EC8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08077ECC - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - movs r0, 0 - bl sub_803F580 - bl sub_8040A84 - adds r0, r4, 0 - bl sub_80418D4 -_08077EC0: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08077EC8: .4byte gUnknown_202DF98 -_08077ECC: .4byte gUnknown_80FAEC8 - thumb_func_end sub_8077E4C - - thumb_func_start sub_8077ED0 -sub_8077ED0: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08077F30 - ldr r0, [r4, 0x70] - adds r1, r0, 0 - adds r1, 0xF0 - ldrb r0, [r1] - cmp r0, 0 - beq _08077F00 - ldr r0, _08077EFC - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08077F30 - .align 2, 0 -_08077EFC: .4byte gUnknown_80FAFD0 -_08077F00: - movs r0, 0x1 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_77 - ldr r0, _08077F38 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08077F3C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - movs r0, 0 - bl sub_803F580 - bl sub_8040A84 - adds r0, r4, 0 - bl sub_80418D4 -_08077F30: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08077F38: .4byte gUnknown_202DF98 -_08077F3C: .4byte gUnknown_80FAFAC - thumb_func_end sub_8077ED0 - - thumb_func_start sub_8077F40 -sub_8077F40: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r5, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r6, r2, 24 - mov r9, r6 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08077F62 - b _08078068 -_08077F62: - adds r0, r5, 0 - bl sub_80450F8 - mov r10, r0 - cmp r0, 0x1 - beq _08077F70 - b _08078068 -_08077F70: - ldr r7, [r4, 0x70] - cmp r5, r4 - bne _08077F88 - cmp r6, 0 - beq _08078068 - ldr r0, _08077F84 - ldr r2, [r0] - adds r0, r4, 0 - b _08078022 - .align 2, 0 -_08077F84: .4byte gUnknown_8100610 -_08077F88: - adds r0, r5, 0 - adds r1, r4, 0 - mov r2, r9 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08078068 - ldr r0, _08077FC0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r4, 0 - movs r1, 0x4 - bl sub_8071858 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - cmp r0, 0 - beq _08077FC8 - mov r0, r9 - cmp r0, 0 - beq _08078068 - ldr r0, _08077FC4 - b _0807801E - .align 2, 0 -_08077FC0: .4byte gUnknown_202DF98 -_08077FC4: .4byte gUnknown_8100640 -_08077FC8: - adds r6, r7, 0 - adds r6, 0xD0 - ldrb r0, [r6] - cmp r0, 0x1 - beq _0807801C - cmp r0, 0x2 - bne _08077FE2 - ldr r0, _08078014 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08077FE2: - mov r1, r10 - strb r1, [r6] - ldr r1, _08078018 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r7, 0 - adds r1, 0xD9 - strb r0, [r1] - adds r0, r7, 0 - adds r0, 0xDA - mov r6, r8 - strb r6, [r0] - adds r0, r4, 0 - bl nullsub_78 - adds r1, r7, 0 - adds r1, 0xD8 - movs r0, 0xFF - strb r0, [r1] - movs r2, 0 - adds r3, r1, 0 - b _08078030 - .align 2, 0 -_08078014: .4byte gUnknown_80FAA8C -_08078018: .4byte gUnknown_80F4EB0 -_0807801C: - ldr r0, _0807802C -_0807801E: - ldr r2, [r0] - adds r0, r5, 0 -_08078022: - adds r1, r4, 0 - bl sub_80522F4 - b _08078068 - .align 2, 0 -_0807802C: .4byte gUnknown_80FAE7C -_08078030: - ldr r0, _08078078 - ldr r0, [r0] - lsls r1, r2, 2 - ldr r6, _0807807C - adds r0, r6 - adds r0, r1 - ldr r0, [r0] - cmp r5, r0 - bne _08078050 - strb r2, [r3] - ldr r0, [r5, 0x70] - adds r1, r7, 0 - adds r1, 0xD4 - adds r0, 0x98 - ldr r0, [r0] - str r0, [r1] -_08078050: - adds r2, 0x1 - cmp r2, 0x13 - ble _08078030 - ldr r0, _08078080 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - adds r0, r4, 0 - bl sub_80418D4 -_08078068: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08078078: .4byte gUnknown_203B418 -_0807807C: .4byte 0x000135cc -_08078080: .4byte gUnknown_80FAE58 - thumb_func_end sub_8077F40 - - thumb_func_start sub_8078084 -sub_8078084: - push {r4-r6,lr} - ldr r6, [r0, 0x70] - movs r5, 0 -_0807808A: - ldr r0, _080780DC - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080780E0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080780D0 - ldr r1, [r4, 0x70] - adds r3, r1, 0 - adds r3, 0xD0 - ldrb r0, [r3] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _080780D0 - adds r0, r1, 0 - adds r0, 0xD4 - adds r1, r6, 0 - adds r1, 0x98 - ldr r2, [r0] - ldr r0, [r1] - cmp r2, r0 - bne _080780D0 - movs r0, 0 - strb r0, [r3] - adds r0, r4, 0 - bl sub_80418D4 -_080780D0: - adds r5, 0x1 - cmp r5, 0x13 - ble _0807808A - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080780DC: .4byte gUnknown_203B418 -_080780E0: .4byte 0x000135cc - thumb_func_end sub_8078084 - - thumb_func_start sub_80780E4 -sub_80780E4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080781C4 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _080781C4 - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _080781C4 - ldr r6, [r4, 0x70] - ldr r0, _0807816C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r7, r6, 0 - adds r7, 0xD0 - ldrb r0, [r7] - cmp r0, 0x2 - beq _08078178 - cmp r0, 0x1 - bne _08078134 - ldr r0, _08078170 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08078134: - movs r0, 0 - mov r8, r0 - movs r0, 0x2 - strb r0, [r7] - ldr r1, _08078174 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r6, 0 - adds r1, 0xD9 - strb r0, [r1] - adds r0, r6, 0 - adds r0, 0xDA - mov r1, r8 - strb r1, [r0] - adds r0, r5, 0 - bl nullsub_74 - adds r1, r6, 0 - adds r1, 0xD8 - movs r0, 0xFF - strb r0, [r1] - movs r2, 0 - adds r3, r1, 0 - b _0807818C - .align 2, 0 -_0807816C: .4byte gUnknown_202DF98 -_08078170: .4byte gUnknown_80FA79C -_08078174: .4byte gUnknown_80F4EF0 -_08078178: - ldr r0, _08078188 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _080781C4 - .align 2, 0 -_08078188: .4byte gUnknown_80FBB78 -_0807818C: - ldr r0, _080781D0 - ldr r0, [r0] - lsls r1, r2, 2 - ldr r7, _080781D4 - adds r0, r7 - adds r0, r1 - ldr r0, [r0] - cmp r5, r0 - bne _080781AC - strb r2, [r3] - ldr r0, [r5, 0x70] - adds r1, r6, 0 - adds r1, 0xD4 - adds r0, 0x98 - ldr r0, [r0] - str r0, [r1] -_080781AC: - adds r2, 0x1 - cmp r2, 0x13 - ble _0807818C - ldr r0, _080781D8 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 - adds r0, r5, 0 - bl sub_80418D4 -_080781C4: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080781D0: .4byte gUnknown_203B418 -_080781D4: .4byte 0x000135cc -_080781D8: .4byte gUnknown_80FBB4C - thumb_func_end sub_80780E4 - - thumb_func_start sub_80781DC -sub_80781DC: - push {r4-r7,lr} - adds r7, r0, 0 - adds r4, r1, 0 - adds r6, r2, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08078242 - ldr r5, [r4, 0x70] - ldr r0, _08078228 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xDC - ldrb r0, [r1] - cmp r0, 0x1 - beq _08078230 - movs r0, 0x1 - strb r0, [r1] - adds r1, r6, 0x1 - adds r0, r5, 0 - adds r0, 0xDD - strb r1, [r0] - adds r0, r4, 0 - bl sub_8041CDC - ldr r0, _0807822C - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _0807823C - .align 2, 0 -_08078228: .4byte gUnknown_202DF98 -_0807822C: .4byte gUnknown_80FB73C -_08078230: - ldr r0, _08078248 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_80522F4 -_0807823C: - adds r0, r4, 0 - bl sub_80418D4 -_08078242: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08078248: .4byte gUnknown_80FB764 - thumb_func_end sub_80781DC - - thumb_func_start sub_807824C -sub_807824C: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r7, r2, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080782C2 - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _080782C2 - ldr r5, [r4, 0x70] - ldr r0, _080782A8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xDC - ldrb r0, [r1] - cmp r0, 0x2 - beq _080782B0 - movs r0, 0x2 - strb r0, [r1] - adds r1, r7, 0x1 - adds r0, r5, 0 - adds r0, 0xDD - strb r1, [r0] - adds r0, r4, 0 - bl sub_8041CEC - ldr r0, _080782AC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _080782BC - .align 2, 0 -_080782A8: .4byte gUnknown_202DF98 -_080782AC: .4byte gUnknown_80FB780 -_080782B0: - ldr r0, _080782C8 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_080782BC: - adds r0, r4, 0 - bl sub_80418D4 -_080782C2: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080782C8: .4byte gUnknown_80FB7A0 - thumb_func_end sub_807824C - - thumb_func_start sub_80782CC -sub_80782CC: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807833E - ldr r5, [r4, 0x70] - ldr r0, _08078320 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xDC - ldrb r0, [r1] - cmp r0, 0x3 - beq _0807832C - movs r0, 0x3 - strb r0, [r1] - ldr r1, _08078324 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xDD - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_79 - ldr r0, _08078328 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08078338 - .align 2, 0 -_08078320: .4byte gUnknown_202DF98 -_08078324: .4byte gUnknown_80F4EC4 -_08078328: .4byte gUnknown_80FB8BC -_0807832C: - ldr r0, _08078344 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08078338: - adds r0, r4, 0 - bl sub_80418D4 -_0807833E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08078344: .4byte gUnknown_80FB8E4 - thumb_func_end sub_80782CC - - thumb_func_start sub_8078348 -sub_8078348: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080783BA - ldr r5, [r4, 0x70] - ldr r0, _0807839C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xDC - ldrb r0, [r1] - cmp r0, 0x4 - beq _080783A8 - movs r0, 0x4 - strb r0, [r1] - ldr r1, _080783A0 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xDD - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_80 - ldr r0, _080783A4 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _080783B4 - .align 2, 0 -_0807839C: .4byte gUnknown_202DF98 -_080783A0: .4byte gUnknown_80F4EC8 -_080783A4: .4byte gUnknown_80FB900 -_080783A8: - ldr r0, _080783C0 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_080783B4: - adds r0, r4, 0 - bl sub_80418D4 -_080783BA: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080783C0: .4byte gUnknown_80FB924 - thumb_func_end sub_8078348 - - thumb_func_start sub_80783C4 -sub_80783C4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - adds r5, r0, 0 - adds r7, r1, 0 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x18] - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _080783E8 - b _0807856A -_080783E8: - adds r0, r5, 0 - adds r1, r7, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - beq _080783FA - b _0807856A -_080783FA: - ldr r4, [r7, 0x70] - ldr r0, _08078420 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r4, 0 - adds r1, 0xC8 - ldrb r0, [r1] - cmp r0, 0x2 - bne _08078428 - ldr r0, _08078424 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_80522F4 - b _0807856A - .align 2, 0 -_08078420: .4byte gUnknown_202DF98 -_08078424: .4byte gUnknown_80FB994 -_08078428: - movs r6, 0 - mov r8, r1 - movs r0, 0xC9 - adds r0, r4 - mov r9, r0 - movs r1, 0xCA - adds r1, r4 - mov r10, r1 - adds r2, r4, 0 - adds r2, 0xCB - str r2, [sp, 0x1C] - adds r4, 0xCC - str r4, [sp, 0x20] -_08078442: - ldr r0, _0807857C - ldr r0, [r0] - lsls r1, r6, 2 - ldr r3, _08078580 - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08078480 - cmp r7, r4 - beq _08078480 - ldr r0, [r4, 0x70] - adds r0, 0xC8 - ldrb r0, [r0] - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08078480 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - bl sub_807A5D0 - movs r0, 0x2A - bl sub_803E46C -_08078480: - adds r6, 0x1 - cmp r6, 0x13 - ble _08078442 - adds r0, r7, 0 - bl sub_8041D38 - ldr r0, _08078584 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - mov r4, r8 - ldrb r0, [r4] - cmp r0, 0 - beq _080784A8 - adds r0, r5, 0 - adds r1, r7, 0 - movs r2, 0x2 - bl sub_807A5D0 -_080784A8: - movs r4, 0 - movs r0, 0x2 - mov r1, r8 - strb r0, [r1] - ldr r0, [r5, 0x70] - ldrb r0, [r0, 0x6] - mov r2, r9 - strb r0, [r2] - mov r3, sp - ldrb r0, [r3, 0x18] - mov r3, r10 - strb r0, [r3] - ldr r1, _08078588 - adds r0, r7, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - ldr r1, [sp, 0x1C] - strb r0, [r1] - ldr r2, [sp, 0x20] - strb r4, [r2] - adds r0, r7, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r7, 0 - bl sub_806CCB4 - ldr r0, _0807857C - ldr r0, [r0] - ldr r3, _0807858C - adds r0, r3 - movs r1, 0x1 - strb r1, [r0] - ldr r0, _08078590 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_80522F4 - movs r6, 0 - mov r8, r6 -_08078502: - ldr r0, _0807857C - ldr r0, [r0] - lsls r1, r6, 2 - ldr r4, _08078580 - adds r0, r4 - adds r0, r1 - ldr r0, [r0] - mov r9, r0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807855E - mov r5, r9 - ldr r4, [r5, 0x70] - adds r1, r4, 0 - adds r1, 0x78 - movs r0, 0x6 - strb r0, [r1] - adds r0, r4, 0 - adds r0, 0x80 - mov r1, r8 - str r1, [r0] - subs r0, 0x4 - strh r1, [r0] - ldrb r0, [r4, 0x7] - cmp r0, 0 - bne _0807855E - mov r1, sp - adds r0, r4, 0 - adds r0, 0x44 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - mov r0, r9 - movs r1, 0x1 - bl sub_807ADB8 - adds r1, r4, 0 - adds r1, 0x44 - mov r0, sp - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} -_0807855E: - adds r6, 0x1 - cmp r6, 0x13 - ble _08078502 - adds r0, r7, 0 - bl sub_80418D4 -_0807856A: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807857C: .4byte gUnknown_203B418 -_08078580: .4byte 0x000135cc -_08078584: .4byte gUnknown_202DF98 -_08078588: .4byte gUnknown_80F4ED0 -_0807858C: .4byte 0x000037fc -_08078590: .4byte gUnknown_80FB978 - thumb_func_end sub_80783C4 - - thumb_func_start sub_8078594 -sub_8078594: - push {r4-r7,lr} - adds r5, r0, 0 - adds r6, r1, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807866E - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807866E - ldr r4, [r5, 0x70] - ldr r7, [r6, 0x70] - adds r0, r5, 0 - movs r1, 0xE - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _08078640 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _0807866E - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - bl sub_807A5D0 - adds r0, r6, 0 - bl sub_8041D48 - movs r1, 0xE - ldrsh r0, [r4, r1] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - strh r0, [r4, 0xE] - cmp r0, 0 - bne _080785F6 - movs r0, 0x1 - strh r0, [r4, 0xE] -_080785F6: - adds r1, r7, 0 - adds r1, 0xC8 - ldrb r0, [r1] - cmp r0, 0x1 - beq _0807861C - movs r0, 0x1 - strb r0, [r1] - ldr r1, _08078634 - adds r0, r6, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r7, 0 - adds r1, 0xCB - strb r0, [r1] - adds r1, 0x1 - movs r0, 0 - strb r0, [r1] -_0807861C: - ldr r0, _08078638 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807863C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80522F4 - b _08078668 - .align 2, 0 -_08078634: .4byte gUnknown_80F4EA4 -_08078638: .4byte gUnknown_202DF98 -_0807863C: .4byte gUnknown_80FB004 -_08078640: - ldr r0, _08078674 - ldr r4, [r0] - adds r0, r5, 0 - adds r1, r5, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8077084 - adds r0, r5, 0 - adds r1, r5, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8077160 - adds r0, r5, 0 - adds r1, r5, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_80779F0 -_08078668: - adds r0, r6, 0 - bl sub_80418D4 -_0807866E: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08078674: .4byte gUnknown_8106A4C - thumb_func_end sub_8078594 - - thumb_func_start sub_8078678 -sub_8078678: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - adds r6, r1, 0 - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08078732 - adds r0, r7, 0 - adds r1, r6, 0 - movs r2, 0x3 - bl sub_807A5D0 - movs r5, 0 -_0807869A: - ldr r0, _0807873C - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08078740 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080786C8 - ldr r0, [r4, 0x70] - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x3 - bne _080786C8 - adds r0, r7, 0 - adds r1, r4, 0 - movs r2, 0 - bl sub_807A5D0 -_080786C8: - adds r5, 0x1 - cmp r5, 0x13 - ble _0807869A - adds r0, r6, 0 - bl nullsub_81 - ldr r5, [r6, 0x70] - mov r8, r5 - adds r1, r5, 0 - adds r1, 0xC8 - ldrb r0, [r1] - cmp r0, 0x3 - beq _08078700 - movs r4, 0 - movs r0, 0x3 - strb r0, [r1] - ldr r1, _08078744 - adds r0, r6, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xCB - strb r0, [r1] - adds r0, r5, 0 - adds r0, 0xCC - strb r4, [r0] -_08078700: - ldr r0, _0807873C - ldr r1, [r0] - ldr r2, _08078748 - adds r0, r1, r2 - str r6, [r0] - ldr r0, _0807874C - adds r1, r0 - mov r0, r8 - adds r0, 0x98 - ldr r0, [r0] - str r0, [r1] - ldr r0, _08078750 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08078754 - ldr r2, [r0] - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_80522F4 - adds r0, r6, 0 - bl sub_80418D4 -_08078732: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807873C: .4byte gUnknown_203B418 -_08078740: .4byte 0x000135cc -_08078744: .4byte gUnknown_80F4EA8 -_08078748: .4byte 0x00017b30 -_0807874C: .4byte 0x00017b3c -_08078750: .4byte gUnknown_202DF98 -_08078754: .4byte gUnknown_80FB01C - thumb_func_end sub_8078678 - - thumb_func_start sub_8078758 -sub_8078758: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080787DA - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _080787DA - ldr r6, [r4, 0x70] - ldr r0, _080787BC - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r6, 0 - adds r1, 0xBC - ldrb r0, [r1] - cmp r0, 0x5 - beq _080787C8 - movs r0, 0x5 - strb r0, [r1] - ldr r1, _080787C0 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r6, 0 - adds r1, 0xBD - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_73 - ldr r0, _080787C4 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _080787D4 - .align 2, 0 -_080787BC: .4byte gUnknown_202DF98 -_080787C0: .4byte gUnknown_80F4ED8 -_080787C4: .4byte gUnknown_80FB9F0 -_080787C8: - ldr r0, _080787E0 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_080787D4: - adds r0, r4, 0 - bl sub_80418D4 -_080787DA: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080787E0: .4byte gUnknown_80FBA14 - thumb_func_end sub_8078758 - - thumb_func_start sub_80787E4 -sub_80787E4: - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08078852 - ldr r4, [r5, 0x70] - ldr r0, _08078834 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - movs r0, 0x89 - lsls r0, 1 - adds r4, r0 - ldrb r0, [r4] - cmp r0, 0x2 - bhi _08078840 - adds r0, 0x1 - strb r0, [r4] - movs r0, 0x1 - bl sub_804178C - adds r0, r5, 0 - bl sub_8041D5C - ldr r1, _08078838 - ldrb r0, [r4] - str r0, [r1] - ldr r0, _0807883C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _0807884C - .align 2, 0 -_08078834: .4byte gUnknown_202DF98 -_08078838: .4byte gUnknown_202DE30 -_0807883C: .4byte gUnknown_80FBA38 -_08078840: - ldr r0, _08078858 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0807884C: - adds r0, r5, 0 - bl sub_80418D4 -_08078852: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08078858: .4byte gUnknown_80FBA60 - thumb_func_end sub_80787E4 - - thumb_func_start sub_807885C -sub_807885C: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080788DE - ldr r0, [r4, 0x70] - adds r7, r0, 0 - adds r5, r7, 0 - adds r5, 0xE4 - ldrb r0, [r5] - cmp r0, 0x2 - bne _08078884 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_807A7C8 -_08078884: - ldr r0, _080788C0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldrb r0, [r5] - cmp r0, 0x1 - beq _080788CC - movs r0, 0x1 - strb r0, [r5] - ldr r1, _080788C4 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r7, 0 - adds r1, 0xE5 - strb r0, [r1] - adds r0, r4, 0 - bl sub_8041D84 - ldr r0, _080788C8 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _080788D8 - .align 2, 0 -_080788C0: .4byte gUnknown_202DF98 -_080788C4: .4byte gUnknown_80F4EE4 -_080788C8: .4byte gUnknown_80FBA80 -_080788CC: - ldr r0, _080788E4 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_080788D8: - adds r0, r4, 0 - bl sub_80418D4 -_080788DE: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080788E4: .4byte gUnknown_80FBAA0 - thumb_func_end sub_807885C - - thumb_func_start sub_80788E8 -sub_80788E8: - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807895E - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _0807895E - adds r0, r5, 0 - bl nullsub_82 - ldr r4, [r5, 0x70] - ldr r0, _08078940 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r4, 0xFD - ldrb r0, [r4] - cmp r0, 0 - bne _0807894C - ldr r1, _08078944 - adds r0, r5, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - strb r0, [r4] - ldr r0, _08078948 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _08078958 - .align 2, 0 -_08078940: .4byte gUnknown_202DF98 -_08078944: .4byte gUnknown_80F4EEC -_08078948: .4byte gUnknown_80FBB04 -_0807894C: - ldr r0, _08078964 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08078958: - adds r0, r5, 0 - bl sub_80418D4 -_0807895E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08078964: .4byte gUnknown_80FBB28 - thumb_func_end sub_80788E8 - - thumb_func_start sub_8078968 -sub_8078968: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - ldr r5, [r4, 0x70] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08078A4A - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08078A4A - movs r3, 0 - ldr r0, _080789E8 - mov r8, r0 - movs r1, 0x1 - mov r12, r1 - movs r0, 0x8C - lsls r0, 1 - adds r2, r5, r0 - movs r7, 0x10 -_080789A2: - ldrb r1, [r2] - mov r0, r12 - ands r0, r1 - cmp r0, 0 - beq _080789B4 - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - bne _080789BC -_080789B4: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - ble _080789A2 -_080789BC: - cmp r3, 0x4 - bne _080789F0 - movs r1, 0x9C - lsls r1, 1 - adds r0, r5, r1 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _080789F0 - mov r0, r8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _080789EC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08078A4A - .align 2, 0 -_080789E8: .4byte gUnknown_202DF98 -_080789EC: .4byte gUnknown_80FBBD4 -_080789F0: - mov r0, r8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xBC - ldrb r0, [r1] - cmp r0, 0x6 - beq _08078A38 - movs r0, 0x6 - strb r0, [r1] - ldr r1, _08078A30 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xBD - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_83 - ldr r0, _08078A34 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08078A44 - .align 2, 0 -_08078A30: .4byte gUnknown_80F4EF4 -_08078A34: .4byte gUnknown_80FBB94 -_08078A38: - ldr r0, _08078A54 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08078A44: - adds r0, r4, 0 - bl sub_80418D4 -_08078A4A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08078A54: .4byte gUnknown_80FBBB8 - thumb_func_end sub_8078968 - - thumb_func_start sub_8078A58 -sub_8078A58: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - mov r8, r0 - adds r6, r1, 0 - adds r7, r2, 0 - adds r5, r3, 0 - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08078B4A - ldr r4, [r6, 0x70] - cmp r5, 0 - beq _08078AE0 - mov r0, sp - adds r1, r5, 0 - bl sub_80943A0 - ldr r2, [sp] - movs r0, 0xA0 - lsls r0, 1 - adds r5, r4, r0 - ldr r7, [r5] - add r0, sp, 0x4 - adds r1, r7, 0 - bl sub_80942C0 - ldr r2, [sp, 0x4] - str r2, [r5] - movs r0, 0x9E - lsls r0, 1 - adds r4, r0 - ldr r1, [r4] - add r0, sp, 0x8 - bl sub_8094318 - ldr r0, [sp, 0x8] - str r0, [r4] - ldr r0, _08078AD0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r7, 0 - bl sub_8094450 - adds r4, r0, 0 - ldr r0, [r5] - bl sub_8094450 - cmp r4, r0 - beq _08078AD8 - adds r0, r6, 0 - bl sub_8041D9C - ldr r0, _08078AD4 - b _08078B22 - .align 2, 0 -_08078AD0: .4byte gUnknown_202DF98 -_08078AD4: .4byte gUnknown_80FBD9C -_08078AD8: - ldr r0, _08078ADC - b _08078B22 - .align 2, 0 -_08078ADC: .4byte gUnknown_80FBE3C -_08078AE0: - add r0, sp, 0xC - adds r1, r7, 0 - bl sub_80943A0 - ldr r2, [sp, 0xC] - movs r0, 0x9E - lsls r0, 1 - adds r4, r0 - ldr r7, [r4] - add r0, sp, 0x10 - adds r1, r7, 0 - bl sub_80942C0 - ldr r0, [sp, 0x10] - str r0, [r4] - ldr r0, _08078B30 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r7, 0 - bl sub_8094450 - adds r5, r0, 0 - ldr r0, [r4] - bl sub_8094450 - cmp r5, r0 - beq _08078B38 - adds r0, r6, 0 - bl nullsub_84 - ldr r0, _08078B34 -_08078B22: - ldr r2, [r0] - mov r0, r8 - adds r1, r6, 0 - bl sub_80522F4 - b _08078B44 - .align 2, 0 -_08078B30: .4byte gUnknown_202DF98 -_08078B34: .4byte gUnknown_80FBD78 -_08078B38: - ldr r0, _08078B58 - ldr r2, [r0] - mov r0, r8 - adds r1, r6, 0 - bl sub_80522F4 -_08078B44: - adds r0, r6, 0 - bl sub_80418D4 -_08078B4A: - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08078B58: .4byte gUnknown_80FBE40 - thumb_func_end sub_8078A58 - - thumb_func_start sub_8078B5C -sub_8078B5C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - mov r9, r0 - adds r6, r1, 0 - mov r10, r2 - str r3, [sp, 0x1C] - ldr r0, [sp, 0x48] - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08078B86 - b _08078D78 -_08078B86: - ldr r7, [r6, 0x70] - ldrb r0, [r7, 0x7] - cmp r0, 0 - bne _08078BB8 - adds r0, r6, 0 - movs r1, 0x1B - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08078BB8 - mov r0, r8 - cmp r0, 0 - bne _08078BA4 - b _08078D78 -_08078BA4: - ldr r0, _08078BB4 - ldr r2, [r0] - mov r0, r9 - adds r1, r6, 0 - bl sub_80522F4 - b _08078D78 - .align 2, 0 -_08078BB4: .4byte gUnknown_80FBEA0 -_08078BB8: - movs r5, 0 - ldr r1, [sp, 0x1C] - cmp r1, 0 - beq _08078BE8 - movs r1, 0x9E - lsls r1, 1 - adds r0, r7, r1 - ldr r0, [r0] - bl sub_8094450 - adds r4, r0, 0 - movs r1, 0xA0 - lsls r1, 1 - adds r0, r7, r1 - ldr r0, [r0] - bl sub_8094450 - cmp r4, r0 - blt _08078BE0 - movs r5, 0x1 -_08078BE0: - ldr r0, _08078C8C - cmp r10, r0 - bne _08078BE8 - movs r5, 0x1 -_08078BE8: - cmp r5, 0 - beq _08078CC0 - movs r0, 0xA0 - lsls r0, 1 - adds r5, r7, r0 - ldr r1, [r5] - str r1, [sp, 0x20] - subs r0, 0x4 - adds r0, r7 - mov r10, r0 - ldr r0, [r0] - bl sub_8094450 - adds r4, r0, 0 - ldr r0, [r5] - bl sub_8094450 - movs r1, 0 - str r1, [sp, 0x24] - cmp r4, r0 - bne _08078C16 - movs r0, 0x1 - str r0, [sp, 0x24] -_08078C16: - mov r0, sp - ldr r1, [sp, 0x1C] - bl sub_80943A0 - ldr r2, [sp] - ldr r1, [r5] - add r0, sp, 0x4 - bl sub_8094268 - ldr r4, [sp, 0x4] - str r4, [r5] - add r0, sp, 0x8 - movs r1, 0xC8 - bl sub_80943A0 - ldr r2, [sp, 0x8] - add r0, sp, 0xC - adds r1, r4, 0 - bl sub_8094318 - ldr r0, [sp, 0xC] - str r0, [r5] - mov r1, r10 - str r0, [r1] - ldr r0, [sp, 0x24] - cmp r0, 0 - bne _08078C5E - mov r1, r8 - cmp r1, 0 - beq _08078C5E - ldr r0, _08078C90 - ldr r2, [r0] - mov r0, r9 - adds r1, r6, 0 - bl sub_80522F4 -_08078C5E: - ldr r0, [sp, 0x20] - bl sub_8094450 - adds r4, r0, 0 - movs r1, 0xA0 - lsls r1, 1 - adds r0, r7, r1 - ldr r0, [r0] - bl sub_8094450 - cmp r4, r0 - bne _08078C9C - ldr r0, _08078C94 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - mov r0, r8 - cmp r0, 0 - beq _08078D72 - ldr r0, _08078C98 - b _08078D4E - .align 2, 0 -_08078C8C: .4byte 0x000003e7 -_08078C90: .4byte gUnknown_80FBE64 -_08078C94: .4byte gUnknown_202DF98 -_08078C98: .4byte gUnknown_80FBDF0 -_08078C9C: - adds r0, r6, 0 - bl sub_8041DB0 - ldr r0, _08078CB8 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - mov r1, r8 - cmp r1, 0 - beq _08078D72 - ldr r0, _08078CBC - b _08078D4E - .align 2, 0 -_08078CB8: .4byte gUnknown_202DF98 -_08078CBC: .4byte gUnknown_80FBDC4 -_08078CC0: - movs r0, 0x9E - lsls r0, 1 - adds r5, r7, r0 - ldr r4, [r5] - add r0, sp, 0x10 - mov r1, r10 - bl sub_80943A0 - ldr r2, [sp, 0x10] - ldr r1, [r5] - add r0, sp, 0x14 - bl sub_8094268 - ldr r1, [sp, 0x14] - str r1, [r5] - movs r0, 0xA0 - lsls r0, 1 - adds r7, r0 - ldr r2, [r7] - add r0, sp, 0x18 - bl sub_8094318 - ldr r0, [sp, 0x18] - str r0, [r5] - ldr r0, _08078D28 - cmp r10, r0 - bne _08078CFA - ldr r0, [r7] - str r0, [r5] -_08078CFA: - adds r0, r6, 0 - bl nullsub_85 - ldr r0, _08078D2C - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r4, 0 - bl sub_8094450 - adds r4, r0, 0 - ldr r0, [r5] - bl sub_8094450 - cmp r4, r0 - bne _08078D34 - mov r1, r8 - cmp r1, 0 - beq _08078D72 - ldr r0, _08078D30 - b _08078D4E - .align 2, 0 -_08078D28: .4byte 0x000003e7 -_08078D2C: .4byte gUnknown_202DF98 -_08078D30: .4byte gUnknown_80FBE14 -_08078D34: - ldr r0, [r5] - bl sub_8094450 - adds r4, r0, 0 - ldr r0, [r7] - bl sub_8094450 - cmp r4, r0 - blt _08078D60 - mov r0, r8 - cmp r0, 0 - beq _08078D72 - ldr r0, _08078D5C -_08078D4E: - ldr r2, [r0] - mov r0, r9 - adds r1, r6, 0 - bl sub_80522F4 - b _08078D72 - .align 2, 0 -_08078D5C: .4byte gUnknown_80FBE64 -_08078D60: - mov r1, r8 - cmp r1, 0 - beq _08078D72 - ldr r0, _08078D88 - ldr r2, [r0] - mov r0, r9 - adds r1, r6, 0 - bl sub_80522F4 -_08078D72: - adds r0, r6, 0 - bl sub_80418D4 -_08078D78: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08078D88: .4byte gUnknown_80FBE84 - thumb_func_end sub_8078B5C - - thumb_func_start sub_8078D8C -sub_8078D8C: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08078E0E - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08078E0E - ldr r6, [r4, 0x70] - ldr r0, _08078DF0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r6, 0 - adds r1, 0xEC - ldrb r0, [r1] - cmp r0, 0x1 - beq _08078DFC - movs r0, 0x1 - strb r0, [r1] - ldr r1, _08078DF4 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r6, 0 - adds r1, 0xED - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_86 - ldr r0, _08078DF8 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08078E08 - .align 2, 0 -_08078DF0: .4byte gUnknown_202DF98 -_08078DF4: .4byte gUnknown_80F4F1C -_08078DF8: .4byte gUnknown_80FBF68 -_08078DFC: - ldr r0, _08078E14 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08078E08: - adds r0, r4, 0 - bl sub_80418D4 -_08078E0E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08078E14: .4byte gUnknown_80FBF84 - thumb_func_end sub_8078D8C - - thumb_func_start sub_8078E18 -sub_8078E18: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _08078E48 - add sp, r4 - mov r10, r0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08078F2E - ldr r7, [r5, 0x70] - adds r0, r7, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x2 - bne _08078E50 - ldr r0, _08078E4C - b _08078EC0 - .align 2, 0 -_08078E48: .4byte 0xfffffe00 -_08078E4C: .4byte gUnknown_80FBF04 -_08078E50: - ldr r0, _08078ECC - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - mov r0, sp - movs r1, 0 - bl sub_803D870 - mov r8, r0 - cmp r0, 0 - beq _08078EBE - movs r0, 0 - mov r9, r0 - movs r6, 0 -_08078E6E: - mov r0, r8 - bl sub_8084100 - lsls r0, 3 - add r0, sp - bl sub_808E9B8 - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r0, r5, 0 - bl sub_8069F54 - lsls r0, 16 - asrs r4, r0, 16 - movs r1, 0x4 - ldrsh r0, [r7, r1] - cmp r4, r0 - beq _08078EAE - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806AA0C - lsls r0, 24 - cmp r0, 0 - beq _08078EAE - adds r0, r4, 0 - bl sub_80687D0 - mov r9, r0 - cmp r0, 0 - bne _08078EB4 -_08078EAE: - adds r6, 0x1 - cmp r6, 0x13 - ble _08078E6E -_08078EB4: - cmp r6, 0x14 - beq _08078EBE - mov r2, r9 - cmp r2, 0 - bne _08078ED4 -_08078EBE: - ldr r0, _08078ED0 -_08078EC0: - ldr r2, [r0] - mov r0, r10 - adds r1, r5, 0 - bl sub_80522F4 - b _08078F2E - .align 2, 0 -_08078ECC: .4byte gUnknown_202DF98 -_08078ED0: .4byte gUnknown_80FBEE4 -_08078ED4: - strh r4, [r7, 0x4] - mov r0, r9 - str r0, [r5, 0x64] - adds r1, r7, 0 - adds r1, 0xE4 - movs r0, 0x2 - strb r0, [r1] - ldr r1, _08078F44 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r7, 0 - adds r1, 0xE5 - strb r0, [r1] - adds r0, r5, 0 - bl sub_806CF98 - adds r0, r5, 0 - bl nullsub_87 - adds r0, r5, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl sub_806CCB4 - ldr r0, _08078F48 - movs r2, 0x4 - ldrsh r1, [r7, r2] - bl sub_808D908 - ldr r0, _08078F4C - ldr r2, [r0] - mov r0, r10 - adds r1, r5, 0 - bl sub_80522F4 - adds r0, r5, 0 - bl sub_80418D4 -_08078F2E: - movs r3, 0x80 - lsls r3, 2 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08078F44: .4byte gUnknown_80F4EFC -_08078F48: .4byte gUnknown_202DFE8 -_08078F4C: .4byte gUnknown_80FBEC0 - thumb_func_end sub_8078E18 - - thumb_func_start sub_8078F50 -sub_8078F50: - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08078FD2 - ldr r0, [r4, 0x70] - adds r7, r0, 0 - adds r5, r7, 0 - adds r5, 0xE4 - ldrb r0, [r5] - cmp r0, 0x2 - bne _08078F78 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_807A7C8 -_08078F78: - ldr r0, _08078FB4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldrb r0, [r5] - cmp r0, 0x3 - beq _08078FC0 - movs r0, 0x3 - strb r0, [r5] - ldr r1, _08078FB8 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r7, 0 - adds r1, 0xE5 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_88 - ldr r0, _08078FBC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08078FCC - .align 2, 0 -_08078FB4: .4byte gUnknown_202DF98 -_08078FB8: .4byte gUnknown_80F4F04 -_08078FBC: .4byte gUnknown_80FBF28 -_08078FC0: - ldr r0, _08078FD8 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08078FCC: - adds r0, r4, 0 - bl sub_80418D4 -_08078FD2: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08078FD8: .4byte gUnknown_80FBF50 - thumb_func_end sub_8078F50 - - thumb_func_start sub_8078FDC -sub_8078FDC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r2, 16 - asrs r7, r2, 16 - mov r10, r7 - movs r0, 0 - mov r8, r0 - mov r9, r0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080790B6 - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _080790B6 - ldr r5, [r4, 0x70] - ldr r0, _08079064 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - movs r1, 0x26 - ldrsh r0, [r5, r1] - cmp r0, 0xA - ble _0807902E - movs r0, 0xA - strh r0, [r5, 0x26] - movs r0, 0x1 - mov r8, r0 -_0807902E: - mov r1, r8 - cmp r1, 0 - beq _0807904C - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_8041DD8 - ldr r0, _08079068 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - movs r0, 0x1 - mov r9, r0 -_0807904C: - adds r5, 0xF5 - ldrb r0, [r5] - cmp r0, 0 - beq _08079070 - ldr r0, _0807906C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _080790B6 - .align 2, 0 -_08079064: .4byte gUnknown_202DF98 -_08079068: .4byte gUnknown_80FC000 -_0807906C: .4byte gUnknown_80FBFB8 -_08079070: - mov r1, r9 - cmp r1, 0 - bne _0807907E - adds r0, r4, 0 - mov r1, r10 - bl sub_8041DD8 -_0807907E: - adds r0, r4, 0 - movs r1, 0xE - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - bne _080790A0 - ldr r0, _0807909C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _080790B0 - .align 2, 0 -_0807909C: .4byte gUnknown_80FBFD8 -_080790A0: - movs r0, 0x1 - strb r0, [r5] - ldr r0, _080790C4 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_080790B0: - adds r0, r4, 0 - bl sub_80418D4 -_080790B6: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080790C4: .4byte gUnknown_80FBF9C - thumb_func_end sub_8078FDC - - thumb_func_start sub_80790C8 -sub_80790C8: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079134 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08079134 - ldr r6, _0807911C - ldr r0, [r6] - ldr r1, _08079120 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08079128 - adds r0, r4, 0 - bl nullsub_89 - ldr r0, [r6] - ldr r1, _08079120 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - adds r0, r4, 0 - bl sub_80418D4 - ldr r0, _08079124 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079134 - .align 2, 0 -_0807911C: .4byte gUnknown_203B418 -_08079120: .4byte 0x00000676 -_08079124: .4byte gUnknown_80FC028 -_08079128: - ldr r0, _0807913C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079134: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807913C: .4byte gUnknown_80FC054 - thumb_func_end sub_80790C8 - - thumb_func_start sub_8079140 -sub_8079140: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080791CE - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _080791CE - ldr r6, [r4, 0x70] - ldr r0, _080791B0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r6, 0 - adds r1, 0xE8 - ldrb r0, [r1] - cmp r0, 0x1 - beq _080791BC - movs r0, 0x1 - strb r0, [r1] - ldr r1, _080791B4 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r6, 0 - adds r1, 0xE9 - strb r0, [r1] - adds r0, r4, 0 - bl sub_8041E0C - ldr r0, _080791B8 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - movs r0, 0x31 - bl sub_803E46C - bl sub_8049ED4 - bl sub_8040A84 - b _080791C8 - .align 2, 0 -_080791B0: .4byte gUnknown_202DF98 -_080791B4: .4byte gUnknown_80F4F08 -_080791B8: .4byte gUnknown_80FB7F4 -_080791BC: - ldr r0, _080791D4 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_080791C8: - adds r0, r4, 0 - bl sub_80418D4 -_080791CE: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080791D4: .4byte gUnknown_80FB810 - thumb_func_end sub_8079140 - - thumb_func_start sub_80791D8 -sub_80791D8: - push {r4-r7,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079266 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08079266 - ldr r7, [r4, 0x70] - ldr r0, _08079248 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r6, r7, 0 - adds r6, 0xE8 - ldrb r0, [r6] - cmp r0, 0x2 - beq _08079254 - adds r0, r4, 0 - bl sub_8041E1C - ldr r0, _0807924C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - movs r0, 0x2 - strb r0, [r6] - ldr r1, _08079250 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r0, 0x1 - adds r1, r7, 0 - adds r1, 0xE9 - strb r0, [r1] - movs r0, 0x1 - bl sub_803F580 - bl sub_8049ED4 - bl sub_8040A84 - b _08079260 - .align 2, 0 -_08079248: .4byte gUnknown_202DF98 -_0807924C: .4byte gUnknown_80FB834 -_08079250: .4byte gUnknown_80F4F0C -_08079254: - ldr r0, _0807926C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079260: - adds r0, r4, 0 - bl sub_80418D4 -_08079266: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807926C: .4byte gUnknown_80FB85C - thumb_func_end sub_80791D8 - - thumb_func_start sub_8079270 -sub_8079270: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080792EE - ldr r5, [r4, 0x70] - ldr r0, _080792D0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xE8 - ldrb r0, [r1] - cmp r0, 0x3 - beq _080792DC - movs r0, 0x3 - strb r0, [r1] - ldr r1, _080792D4 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xE9 - strb r0, [r1] - adds r0, r4, 0 - bl sub_8041E3C - ldr r0, _080792D8 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - movs r0, 0x31 - bl sub_803E46C - bl sub_8049ED4 - bl sub_8040A84 - b _080792E8 - .align 2, 0 -_080792D0: .4byte gUnknown_202DF98 -_080792D4: .4byte gUnknown_80F4F10 -_080792D8: .4byte gUnknown_80FB880 -_080792DC: - ldr r0, _080792F4 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_080792E8: - adds r0, r4, 0 - bl sub_80418D4 -_080792EE: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080792F4: .4byte gUnknown_80FB89C - thumb_func_end sub_8079270 - - thumb_func_start sub_80792F8 -sub_80792F8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r10, r0 - adds r6, r1, 0 - mov r9, r2 - movs r0, 0 - mov r8, r0 - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807939A - ldr r0, [r6, 0x70] - movs r1, 0x8C - lsls r1, 1 - adds r4, r0, r1 - adds r5, r4, 0 - movs r7, 0x3 -_08079326: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0807935E - ldrb r0, [r4, 0x4] - str r0, [sp] - adds r0, r5, 0 - bl sub_8092BF4 - str r0, [sp, 0x4] - ldr r1, [sp] - ldr r0, [sp, 0x4] - cmp r1, r0 - bge _0807935E - ldr r0, [sp] - add r0, r9 - str r0, [sp] - ldr r1, [sp] - ldr r0, [sp, 0x4] - cmp r1, r0 - ble _08079356 - ldr r0, [sp, 0x4] - str r0, [sp] -_08079356: - ldr r0, [sp] - strb r0, [r4, 0x4] - movs r0, 0x1 - mov r8, r0 -_0807935E: - adds r4, 0x8 - adds r5, 0x8 - subs r7, 0x1 - cmp r7, 0 - bge _08079326 - mov r1, r8 - cmp r1, 0 - beq _08079388 - adds r0, r6, 0 - bl sub_8041E4C - ldr r0, _08079384 - ldr r2, [r0] - mov r0, r10 - adds r1, r6, 0 - bl sub_80522F4 - b _08079394 - .align 2, 0 -_08079384: .4byte gUnknown_80FDBD0 -_08079388: - ldr r0, _080793AC - ldr r2, [r0] - mov r0, r10 - adds r1, r6, 0 - bl sub_80522F4 -_08079394: - adds r0, r6, 0 - bl sub_80418D4 -_0807939A: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080793AC: .4byte gUnknown_80FDBF0 - thumb_func_end sub_80792F8 - - thumb_func_start sub_80793B0 -sub_80793B0: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079416 - ldr r0, _080793FC - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, [r4, 0x70] - adds r1, r0, 0 - ldrb r0, [r1, 0x14] - adds r2, r0, 0 - adds r0, r2, r5 - cmp r0, 0xFE - ble _080793DE - movs r0, 0xFF -_080793DE: - strb r0, [r1, 0x14] - lsls r0, 24 - lsrs r0, 24 - cmp r2, r0 - bcs _08079404 - adds r0, r4, 0 - bl sub_8041E60 - ldr r0, _08079400 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079410 - .align 2, 0 -_080793FC: .4byte gUnknown_202DF98 -_08079400: .4byte gUnknown_80FC33C -_08079404: - ldr r0, _0807941C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079410: - adds r0, r4, 0 - bl sub_80418D4 -_08079416: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807941C: .4byte gUnknown_80FC360 - thumb_func_end sub_80793B0 - - thumb_func_start sub_8079420 -sub_8079420: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079486 - ldr r0, _0807946C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, [r4, 0x70] - adds r1, r0, 0 - ldrb r0, [r1, 0x15] - adds r2, r0, 0 - adds r0, r2, r5 - cmp r0, 0xFE - ble _0807944E - movs r0, 0xFF -_0807944E: - strb r0, [r1, 0x15] - lsls r0, 24 - lsrs r0, 24 - cmp r2, r0 - bcs _08079474 - adds r0, r4, 0 - bl sub_8041E74 - ldr r0, _08079470 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079480 - .align 2, 0 -_0807946C: .4byte gUnknown_202DF98 -_08079470: .4byte gUnknown_80FC388 -_08079474: - ldr r0, _0807948C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079480: - adds r0, r4, 0 - bl sub_80418D4 -_08079486: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807948C: .4byte gUnknown_80FC3B4 - thumb_func_end sub_8079420 - - thumb_func_start sub_8079490 -sub_8079490: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080794F6 - ldr r0, _080794DC - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, [r4, 0x70] - adds r1, r0, 0 - ldrb r0, [r1, 0x16] - adds r2, r0, 0 - adds r0, r2, r5 - cmp r0, 0xFE - ble _080794BE - movs r0, 0xFF -_080794BE: - strb r0, [r1, 0x16] - lsls r0, 24 - lsrs r0, 24 - cmp r2, r0 - bcs _080794E4 - adds r0, r4, 0 - bl sub_8041E84 - ldr r0, _080794E0 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _080794F0 - .align 2, 0 -_080794DC: .4byte gUnknown_202DF98 -_080794E0: .4byte gUnknown_80FC3D8 -_080794E4: - ldr r0, _080794FC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_080794F0: - adds r0, r4, 0 - bl sub_80418D4 -_080794F6: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080794FC: .4byte gUnknown_80FC3FC - thumb_func_end sub_8079490 - - thumb_func_start sub_8079500 -sub_8079500: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079566 - ldr r0, _0807954C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, [r4, 0x70] - adds r1, r0, 0 - ldrb r0, [r1, 0x17] - adds r2, r0, 0 - adds r0, r2, r5 - cmp r0, 0xFE - ble _0807952E - movs r0, 0xFF -_0807952E: - strb r0, [r1, 0x17] - lsls r0, 24 - lsrs r0, 24 - cmp r2, r0 - bcs _08079554 - adds r0, r4, 0 - bl sub_8041E94 - ldr r0, _08079550 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079560 - .align 2, 0 -_0807954C: .4byte gUnknown_202DF98 -_08079550: .4byte gUnknown_80FC428 -_08079554: - ldr r0, _0807956C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079560: - adds r0, r4, 0 - bl sub_80418D4 -_08079566: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807956C: .4byte gUnknown_80FC454 - thumb_func_end sub_8079500 - - thumb_func_start sub_8079570 -sub_8079570: - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - ldr r4, [r5, 0x70] - ldr r0, _080795A0 - movs r2, 0 - bl sub_8045B94 - adds r4, 0xE0 - ldrb r0, [r4] - cmp r0, 0x1 - beq _080795A8 - movs r0, 0x1 - strb r0, [r4] - adds r0, r5, 0 - bl sub_8041EA4 - ldr r0, _080795A4 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _080795B4 - .align 2, 0 -_080795A0: .4byte gUnknown_202DFE8 -_080795A4: .4byte gUnknown_80FD20C -_080795A8: - ldr r0, _080795C0 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 -_080795B4: - adds r0, r5, 0 - bl sub_80418D4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080795C0: .4byte gUnknown_80FD22C - thumb_func_end sub_8079570 - - thumb_func_start sub_80795C4 -sub_80795C4: - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - ldr r4, [r5, 0x70] - ldr r0, _080795F4 - movs r2, 0 - bl sub_8045B94 - adds r4, 0xE0 - ldrb r0, [r4] - cmp r0, 0x2 - beq _080795FC - movs r0, 0x2 - strb r0, [r4] - adds r0, r5, 0 - bl sub_8041EB4 - ldr r0, _080795F8 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _08079608 - .align 2, 0 -_080795F4: .4byte gUnknown_202DFE8 -_080795F8: .4byte gUnknown_80FD254 -_080795FC: - ldr r0, _08079614 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 -_08079608: - adds r0, r5, 0 - bl sub_80418D4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08079614: .4byte gUnknown_80FD27C - thumb_func_end sub_80795C4 - - thumb_func_start sub_8079618 -sub_8079618: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r9, r0 - adds r7, r1, 0 - mov r8, r3 - lsls r2, 24 - lsrs r6, r2, 24 - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08079638 - b _08079752 -_08079638: - ldr r5, [r7, 0x70] - ldr r0, _08079660 - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - adds r0, 0xC0 - ldrb r0, [r0] - cmp r0, r6 - bne _08079668 - cmp r6, 0xC - bne _08079668 - ldr r0, _08079664 - ldr r2, [r0] - mov r0, r9 - adds r1, r7, 0 - bl sub_80522F4 - b _08079752 - .align 2, 0 -_08079660: .4byte gUnknown_202DF98 -_08079664: .4byte gUnknown_80FC074 -_08079668: - adds r0, r5, 0 - adds r0, 0xC0 - strb r6, [r0] - movs r4, 0 - movs r1, 0x8C - lsls r1, 1 - adds r0, r5, r1 - subs r2, r6, 0x7 - b _0807968A -_0807967A: - adds r4, 0x1 - cmp r4, 0x3 - bgt _08079694 - lsls r0, r4, 3 - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - adds r0, r5, r0 -_0807968A: - cmp r0, r8 - bne _0807967A - adds r0, r5, 0 - adds r0, 0xC2 - strb r4, [r0] -_08079694: - movs r1, 0xA5 - lsls r1, 1 - adds r0, r5, r1 - movs r1, 0x1 - strb r1, [r0] - movs r4, 0 - lsls r0, r2, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _080796B2 - adds r0, r5, 0 - adds r0, 0xFF - strb r1, [r0] - movs r4, 0x1 - b _080796C6 -_080796B2: - adds r0, r6, 0 - subs r0, 0x9 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _080796C6 - adds r1, r5, 0 - adds r1, 0xFF - movs r0, 0x2 - strb r0, [r1] -_080796C6: - cmp r6, 0x1 - bne _080796E4 - ldr r1, _08079718 - adds r0, r7, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r2, r5, 0 - adds r2, 0xC1 - movs r1, 0 - strb r0, [r2] - adds r0, r5, 0 - adds r0, 0xA0 - str r1, [r0] -_080796E4: - cmp r6, 0xC - bne _080796FA - ldr r1, _0807971C - adds r0, r7, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC1 - strb r0, [r1] -_080796FA: - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_8041BD0 - mov r0, r9 - adds r1, r7, 0 - ldr r2, [sp, 0x1C] - bl sub_80522F4 - adds r0, r7, 0 - bl sub_80418D4 - movs r4, 0 - ldr r6, _08079720 - b _0807972C - .align 2, 0 -_08079718: .4byte gUnknown_80F4E9C -_0807971C: .4byte gUnknown_80F4EA0 -_08079720: .4byte 0x0000c7ff -_08079724: - movs r0, 0x53 - bl sub_803E46C - adds r4, 0x1 -_0807972C: - ldr r0, _08079760 - cmp r4, r0 - bgt _08079752 - movs r1, 0x1 - adds r0, r5, 0 - adds r0, 0xFF - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807974E - movs r1, 0xBA - lsls r1, 1 - adds r0, r5, r1 - ldr r0, [r0] - movs r1, 0 - cmp r0, r6 - ble _0807974E - movs r1, 0x1 -_0807974E: - cmp r1, 0 - beq _08079724 -_08079752: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08079760: .4byte 0x0000018f - thumb_func_end sub_8079618 - - thumb_func_start sub_8079764 -sub_8079764: - push {r4,lr} - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807979A - ldr r2, [r4, 0x70] - adds r3, r2, 0 - adds r3, 0xC0 - ldrb r0, [r3] - cmp r0, 0x1 - beq _08079794 - cmp r0, 0xC - beq _08079794 - movs r1, 0 - strb r1, [r3] - movs r3, 0xA5 - lsls r3, 1 - adds r0, r2, r3 - strb r1, [r0] - adds r0, r2, 0 - adds r0, 0xFF - strb r1, [r0] -_08079794: - adds r0, r4, 0 - bl sub_80418D4 -_0807979A: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8079764 - - thumb_func_start sub_80797A0 -sub_80797A0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r7, r2, 24 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079822 - ldr r6, [r4, 0x70] - ldr r0, _080797E0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r5, r6, 0 - adds r5, 0xC4 - ldrb r0, [r5] - cmp r0, r7 - bne _080797E8 - ldr r0, _080797E4 - ldr r2, [r0] - mov r0, r8 - adds r1, r4, 0 - bl sub_80522F4 - b _08079822 - .align 2, 0 -_080797E0: .4byte gUnknown_202DF98 -_080797E4: .4byte gUnknown_80FB10C -_080797E8: - adds r0, r4, 0 - bl nullsub_57 - ldrb r0, [r5] - cmp r0, 0x4 - beq _0807980A - cmp r0, 0xA - beq _0807980A - ldr r1, _0807982C - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r6, 0 - adds r1, 0xC5 - strb r0, [r1] -_0807980A: - adds r0, r6, 0 - adds r0, 0xC4 - strb r7, [r0] - ldr r0, _08079830 - ldr r2, [r0] - mov r0, r8 - adds r1, r4, 0 - bl sub_80522F4 - adds r0, r4, 0 - bl sub_80418D4 -_08079822: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807982C: .4byte gUnknown_80F4E98 -_08079830: .4byte gUnknown_80FB0E0 - thumb_func_end sub_80797A0 - - thumb_func_start sub_8079834 -sub_8079834: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080798A6 - ldr r5, [r4, 0x70] - ldr r0, _08079888 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0x2 - beq _08079894 - movs r0, 0x2 - strb r0, [r1] - ldr r1, _0807988C - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC5 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_58 - ldr r0, _08079890 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _080798A0 - .align 2, 0 -_08079888: .4byte gUnknown_202DF98 -_0807988C: .4byte gUnknown_80F4E88 -_08079890: .4byte gUnknown_80FB048 -_08079894: - ldr r0, _080798AC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_080798A0: - adds r0, r4, 0 - bl sub_80418D4 -_080798A6: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080798AC: .4byte gUnknown_80FB074 - thumb_func_end sub_8079834 - - thumb_func_start sub_80798B0 -sub_80798B0: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079922 - ldr r5, [r4, 0x70] - ldr r0, _08079904 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0xE - beq _08079910 - movs r0, 0xE - strb r0, [r1] - ldr r1, _08079908 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC5 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_59 - ldr r0, _0807990C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _0807991C - .align 2, 0 -_08079904: .4byte gUnknown_202DF98 -_08079908: .4byte gUnknown_80F4E8C -_0807990C: .4byte gUnknown_80FB09C -_08079910: - ldr r0, _08079928 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_0807991C: - adds r0, r4, 0 - bl sub_80418D4 -_08079922: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08079928: .4byte gUnknown_80FB0C4 - thumb_func_end sub_80798B0 - - thumb_func_start sub_807992C -sub_807992C: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807999E - ldr r5, [r4, 0x70] - ldr r0, _08079980 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0x6 - beq _0807998C - movs r0, 0x6 - strb r0, [r1] - ldr r1, _08079984 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC5 - strb r0, [r1] - adds r0, r4, 0 - bl sub_8041B34 - ldr r0, _08079988 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079998 - .align 2, 0 -_08079980: .4byte gUnknown_202DF98 -_08079984: .4byte gUnknown_80F4EB4 -_08079988: .4byte gUnknown_80FAE1C -_0807998C: - ldr r0, _080799A4 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079998: - adds r0, r4, 0 - bl sub_80418D4 -_0807999E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080799A4: .4byte gUnknown_80FAE3C - thumb_func_end sub_807992C - - thumb_func_start sub_80799A8 -sub_80799A8: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079A1A - ldr r5, [r4, 0x70] - ldr r0, _080799FC - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0x5 - beq _08079A08 - movs r0, 0x5 - strb r0, [r1] - ldr r1, _08079A00 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC5 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_60 - ldr r0, _08079A04 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079A14 - .align 2, 0 -_080799FC: .4byte gUnknown_202DF98 -_08079A00: .4byte gUnknown_80F4E90 -_08079A04: .4byte gUnknown_80FAF5C -_08079A08: - ldr r0, _08079A20 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079A14: - adds r0, r4, 0 - bl sub_80418D4 -_08079A1A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08079A20: .4byte gUnknown_80FAF8C - thumb_func_end sub_80799A8 - - thumb_func_start sub_8079A24 -sub_8079A24: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079A96 - ldr r5, [r4, 0x70] - ldr r0, _08079A78 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0x3 - beq _08079A84 - movs r0, 0x3 - strb r0, [r1] - ldr r1, _08079A7C - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC5 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_61 - ldr r0, _08079A80 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079A90 - .align 2, 0 -_08079A78: .4byte gUnknown_202DF98 -_08079A7C: .4byte gUnknown_80F4E84 -_08079A80: .4byte gUnknown_80FB130 -_08079A84: - ldr r0, _08079A9C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079A90: - adds r0, r4, 0 - bl sub_80418D4 -_08079A96: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08079A9C: .4byte gUnknown_80FB160 - thumb_func_end sub_8079A24 - - thumb_func_start sub_8079AA0 -sub_8079AA0: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079B12 - ldr r5, [r4, 0x70] - ldr r0, _08079AF4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0x1 - beq _08079B00 - movs r0, 0x1 - strb r0, [r1] - ldr r1, _08079AF8 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC5 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_62 - ldr r0, _08079AFC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079B0C - .align 2, 0 -_08079AF4: .4byte gUnknown_202DF98 -_08079AF8: .4byte gUnknown_80F4E80 -_08079AFC: .4byte gUnknown_80FB17C -_08079B00: - ldr r0, _08079B18 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079B0C: - adds r0, r4, 0 - bl sub_80418D4 -_08079B12: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08079B18: .4byte gUnknown_80FB1A8 - thumb_func_end sub_8079AA0 - - thumb_func_start sub_8079B1C -sub_8079B1C: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079B98 - adds r0, r4, 0 - bl nullsub_63 - ldr r5, [r4, 0x70] - adds r1, r5, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0x7 - beq _08079B7C - movs r0, 0x7 - strb r0, [r1] - ldr r1, _08079B70 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC5 - strb r0, [r1] - ldr r0, _08079B74 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08079B78 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079B92 - .align 2, 0 -_08079B70: .4byte gUnknown_80F4ED4 -_08079B74: .4byte gUnknown_202DF98 -_08079B78: .4byte gUnknown_80FB9B0 -_08079B7C: - ldr r0, _08079BA0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _08079BA4 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079B92: - adds r0, r4, 0 - bl sub_80418D4 -_08079B98: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08079BA0: .4byte gUnknown_202DF98 -_08079BA4: .4byte gUnknown_80FB9D8 - thumb_func_end sub_8079B1C - - thumb_func_start sub_8079BA8 -sub_8079BA8: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079C1A - ldr r5, [r4, 0x70] - ldr r0, _08079BFC - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0x8 - beq _08079C08 - movs r0, 0x8 - strb r0, [r1] - ldr r1, _08079C00 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC5 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_64 - ldr r0, _08079C04 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079C14 - .align 2, 0 -_08079BFC: .4byte gUnknown_202DF98 -_08079C00: .4byte gUnknown_80F4EE8 -_08079C04: .4byte gUnknown_80FBAC0 -_08079C08: - ldr r0, _08079C20 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079C14: - adds r0, r4, 0 - bl sub_80418D4 -_08079C1A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08079C20: .4byte gUnknown_80FBAE4 - thumb_func_end sub_8079BA8 - - thumb_func_start sub_8079C24 -sub_8079C24: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079C96 - ldr r5, [r4, 0x70] - ldr r0, _08079C78 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0x9 - beq _08079C84 - movs r0, 0x9 - strb r0, [r1] - ldr r1, _08079C7C - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC5 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_65 - ldr r0, _08079C80 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079C90 - .align 2, 0 -_08079C78: .4byte gUnknown_202DF98 -_08079C7C: .4byte gUnknown_80F4EF8 -_08079C80: .4byte gUnknown_80FBBF0 -_08079C84: - ldr r0, _08079C9C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079C90: - adds r0, r4, 0 - bl sub_80418D4 -_08079C96: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08079C9C: .4byte gUnknown_80FBC14 - thumb_func_end sub_8079C24 - - thumb_func_start sub_8079CA0 -sub_8079CA0: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079D12 - ldr r5, [r4, 0x70] - ldr r0, _08079CF4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0xB - beq _08079D00 - movs r0, 0xB - strb r0, [r1] - ldr r1, _08079CF8 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC5 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_66 - ldr r0, _08079CFC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079D0C - .align 2, 0 -_08079CF4: .4byte gUnknown_202DF98 -_08079CF8: .4byte gUnknown_80F4F18 -_08079CFC: .4byte gUnknown_80FBC38 -_08079D00: - ldr r0, _08079D18 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079D0C: - adds r0, r4, 0 - bl sub_80418D4 -_08079D12: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08079D18: .4byte gUnknown_80FBC5C - thumb_func_end sub_8079CA0 - - thumb_func_start sub_8079D1C -sub_8079D1C: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079DAE - ldr r6, [r4, 0x70] - adds r0, r4, 0 - movs r1, 0x25 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _08079D50 - ldr r0, _08079D4C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079DAE - .align 2, 0 -_08079D4C: .4byte gUnknown_8100720 -_08079D50: - ldr r0, _08079D90 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r6, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0xC - beq _08079D9C - movs r0, 0xC - strb r0, [r1] - ldr r1, _08079D94 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r6, 0 - adds r1, 0xC5 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_67 - ldr r0, _08079D98 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079DA8 - .align 2, 0 -_08079D90: .4byte gUnknown_202DF98 -_08079D94: .4byte gUnknown_80F4F20 -_08079D98: .4byte gUnknown_80FBC7C -_08079D9C: - ldr r0, _08079DB4 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079DA8: - adds r0, r4, 0 - bl sub_80418D4 -_08079DAE: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08079DB4: .4byte gUnknown_80FBCA4 - thumb_func_end sub_8079D1C - - thumb_func_start sub_8079DB8 -sub_8079DB8: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079E2A - ldr r5, [r4, 0x70] - ldr r0, _08079E0C - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r1, r5, 0 - adds r1, 0xC4 - ldrb r0, [r1] - cmp r0, 0xD - beq _08079E18 - movs r0, 0xD - strb r0, [r1] - ldr r1, _08079E10 - adds r0, r4, 0 - movs r2, 0 - bl sub_808417C - adds r0, 0x1 - adds r1, r5, 0 - adds r1, 0xC5 - strb r0, [r1] - adds r0, r4, 0 - bl nullsub_68 - ldr r0, _08079E14 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _08079E24 - .align 2, 0 -_08079E0C: .4byte gUnknown_202DF98 -_08079E10: .4byte gUnknown_80F4F24 -_08079E14: .4byte gUnknown_80FBCC8 -_08079E18: - ldr r0, _08079E30 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079E24: - adds r0, r4, 0 - bl sub_80418D4 -_08079E2A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08079E30: .4byte gUnknown_80FBCF0 - thumb_func_end sub_8079DB8 - - thumb_func_start sub_8079E34 -sub_8079E34: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r8, r0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - movs r6, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08079F0E - ldr r0, [r5, 0x70] - mov r12, r0 - movs r4, 0 - movs r7, 0xA -_08079E5C: - lsls r2, r4, 1 - mov r0, r12 - adds r0, 0x1C - adds r1, r0, r2 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0xA - beq _08079E70 - strh r7, [r1] - movs r6, 0x1 -_08079E70: - mov r0, r12 - adds r0, 0x20 - adds r1, r0, r2 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0xA - beq _08079E82 - strh r7, [r1] - movs r6, 0x1 -_08079E82: - mov r0, r12 - adds r0, 0x24 - adds r1, r0, r2 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0xA - beq _08079E94 - strh r7, [r1] - movs r6, 0x1 -_08079E94: - lsls r3, r4, 2 - mov r0, r12 - adds r0, 0x2C - adds r1, r0, r3 - ldr r0, [r1] - movs r2, 0x80 - lsls r2, 1 - cmp r0, r2 - beq _08079EAA - str r2, [r1] - movs r6, 0x1 -_08079EAA: - mov r0, r12 - adds r0, 0x34 - adds r1, r0, r3 - ldr r0, [r1] - cmp r0, r2 - beq _08079EBA - str r2, [r1] - movs r6, 0x1 -_08079EBA: - adds r4, 0x1 - cmp r4, 0x1 - ble _08079E5C - cmp r6, 0 - beq _08079ECC - adds r0, r5, 0 - bl sub_80420C8 - b _08079ED8 -_08079ECC: - mov r3, r9 - cmp r3, 0 - beq _08079ED8 - adds r0, r5, 0 - bl sub_80420C8 -_08079ED8: - ldr r0, _08079EF4 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - cmp r6, 0 - beq _08079EFC - ldr r0, _08079EF8 - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 - b _08079F08 - .align 2, 0 -_08079EF4: .4byte gUnknown_202DF98 -_08079EF8: .4byte gUnknown_80FBD18 -_08079EFC: - ldr r0, _08079F1C - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 -_08079F08: - adds r0, r5, 0 - bl sub_80418D4 -_08079F0E: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08079F1C: .4byte gUnknown_80FBD3C - thumb_func_end sub_8079E34 - - thumb_func_start sub_8079F20 -sub_8079F20: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r5, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp] - lsls r3, 24 - lsrs r3, 24 - mov r10, r3 - movs r0, 0 - mov r8, r0 - mov r9, r0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08079F50 - b _0807A0B8 -_08079F50: - ldr r7, [r4, 0x70] - adds r0, r4, 0 - bl sub_8070A58 - lsls r0, 24 - cmp r0, 0 - beq _08079FF2 - movs r2, 0x1 - mov r8, r2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_807A124 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _08079F7C - b _0807A0B8 -_08079F7C: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807A290 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807A324 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807A400 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - bl sub_807A5D0 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807A6C8 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807A734 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807A888 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807A924 - adds r1, r7, 0 - adds r1, 0xFD - ldrb r0, [r1] - cmp r0, 0 - beq _08079FD8 - mov r0, r9 - strb r0, [r1] - ldr r0, _0807A08C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079FD8: - adds r1, r7, 0 - adds r1, 0xF5 - ldrb r0, [r1] - cmp r0, 0 - beq _08079FF2 - mov r2, r9 - strb r2, [r1] - ldr r0, _0807A090 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_08079FF2: - adds r0, r4, 0 - bl sub_8070774 - adds r6, r0, 0 - movs r1, 0 - movs r3, 0x4 - ldr r2, _0807A094 - adds r0, r7, r2 -_0807A002: - strb r1, [r0] - subs r0, 0x1 - subs r3, 0x1 - cmp r3, 0 - bge _0807A002 - adds r0, r4, 0 - bl sub_8070774 - cmp r6, r0 - beq _0807A032 - movs r0, 0x1 - mov r8, r0 - ldr r1, _0807A098 - movs r2, 0x82 - lsls r2, 1 - adds r0, r7, r2 - ldr r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_0807A032: - movs r6, 0x1 - movs r0, 0x8C - lsls r0, 1 - adds r2, r7, r0 - movs r7, 0xFE - movs r3, 0x3 -_0807A03E: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0807A05E - ldrb r1, [r2, 0x1] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0807A05E - movs r0, 0x1 - mov r8, r0 - mov r9, r0 - adds r0, r7, 0 - ands r0, r1 - strb r0, [r2, 0x1] -_0807A05E: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _0807A03E - mov r2, r8 - cmp r2, 0 - beq _0807A0A0 - ldr r0, [sp] - cmp r0, 0 - beq _0807A078 - adds r0, r4, 0 - bl sub_80420C8 -_0807A078: - mov r2, r9 - cmp r2, 0 - beq _0807A0B2 - ldr r0, _0807A09C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _0807A0B2 - .align 2, 0 -_0807A08C: .4byte gUnknown_8100594 -_0807A090: .4byte gUnknown_81005B8 -_0807A094: .4byte 0x00000111 -_0807A098: .4byte gUnknown_80FA124 -_0807A09C: .4byte gUnknown_81005DC -_0807A0A0: - mov r0, r10 - cmp r0, 0 - bne _0807A0B2 - ldr r0, _0807A0C8 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_0807A0B2: - adds r0, r4, 0 - bl sub_80418D4 -_0807A0B8: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807A0C8: .4byte gUnknown_81004E8 - thumb_func_end sub_8079F20 - - thumb_func_start sub_807A0CC -sub_807A0CC: - push {r4-r7,lr} - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807A11E - ldr r4, [r5, 0x70] - adds r0, r4, 0 - movs r1, 0 - bl sub_806BFC0 - adds r1, r4, 0 - adds r1, 0xFD - movs r0, 0 - strb r0, [r1] - subs r1, 0x8 - strb r0, [r1] - movs r7, 0x1 - movs r6, 0xFE - movs r0, 0x8C - lsls r0, 1 - adds r2, r4, r0 - movs r3, 0x3 -_0807A0FE: - ldrb r1, [r2] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _0807A110 - ldrb r1, [r2, 0x1] - adds r0, r6, 0 - ands r0, r1 - strb r0, [r2, 0x1] -_0807A110: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _0807A0FE - adds r0, r5, 0 - bl sub_80418D4 -_0807A11E: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807A0CC - - thumb_func_start sub_807A124 -sub_807A124: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r6, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r4, r2, 24 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - movs r0, 0 - mov r9, r0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807A14E - b _0807A27C -_0807A14E: - ldr r7, [r5, 0x70] - ldr r0, _0807A170 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r7, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x6 - bls _0807A166 - b _0807A260 -_0807A166: - lsls r0, 2 - ldr r1, _0807A174 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807A170: .4byte gUnknown_202DF98 -_0807A174: .4byte _0807A178 - .align 2, 0 -_0807A178: - .4byte _0807A260 - .4byte _0807A194 - .4byte _0807A1A0 - .4byte _0807A1B4 - .4byte _0807A228 - .4byte _0807A1E8 - .4byte _0807A260 -_0807A194: - movs r1, 0x1 - mov r9, r1 - ldr r0, _0807A19C - b _0807A1A2 - .align 2, 0 -_0807A19C: .4byte gUnknown_80FA6E8 -_0807A1A0: - ldr r0, _0807A1B0 -_0807A1A2: - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _0807A260 - .align 2, 0 -_0807A1B0: .4byte gUnknown_80FA708 -_0807A1B4: - movs r2, 0x1 - mov r9, r2 - ldr r0, _0807A1DC - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - mov r0, r8 - cmp r0, 0 - beq _0807A260 - ldr r0, _0807A1E0 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r3, _0807A1E4 - adds r0, r5, 0 - movs r2, 0x8 - bl sub_806F324 - b _0807A260 - .align 2, 0 -_0807A1DC: .4byte gUnknown_80FA70C -_0807A1E0: .4byte gUnknown_80F4F78 -_0807A1E4: .4byte 0x0000020f -_0807A1E8: - movs r0, 0x1 - mov r9, r0 - ldr r0, _0807A220 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 - ldr r0, _0807A224 - movs r1, 0 - ldrsh r2, [r0, r1] - movs r4, 0 - str r4, [sp] - adds r0, r6, 0 - adds r1, r5, 0 - movs r3, 0 - bl sub_8077C44 - adds r0, r7, 0 - adds r0, 0xA8 - strb r4, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_8079F20 - b _0807A260 - .align 2, 0 -_0807A220: .4byte gUnknown_80FA710 -_0807A224: .4byte gUnknown_80F4F7A -_0807A228: - cmp r4, 0 - beq _0807A254 - adds r1, r7, 0 - adds r1, 0xA8 - movs r0, 0 - strb r0, [r1] - ldr r1, _0807A250 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_808417C - adds r2, r0, 0 - adds r2, 0x1 - adds r0, r6, 0 - adds r1, r5, 0 - movs r3, 0x1 - bl sub_8075C58 - b _0807A27C - .align 2, 0 -_0807A250: .4byte gUnknown_80F4F2C -_0807A254: - ldr r0, _0807A28C - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0807A260: - adds r1, r7, 0 - adds r1, 0xA8 - movs r0, 0 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80418D4 - mov r2, r9 - cmp r2, 0 - beq _0807A27C - adds r0, r5, 0 - movs r1, 0x8 - bl sub_806CE68 -_0807A27C: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807A28C: .4byte gUnknown_80FA734 - thumb_func_end sub_807A124 - - thumb_func_start sub_807A290 -sub_807A290: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807A31A - ldr r6, [r4, 0x70] - ldr r0, _0807A2C4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r6, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x5 - bhi _0807A30C - lsls r0, 2 - ldr r1, _0807A2C8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807A2C4: .4byte gUnknown_202DF98 -_0807A2C8: .4byte _0807A2CC - .align 2, 0 -_0807A2CC: - .4byte _0807A30C - .4byte _0807A300 - .4byte _0807A2E4 - .4byte _0807A2E4 - .4byte _0807A2EC - .4byte _0807A30C -_0807A2E4: - ldr r0, _0807A2E8 - b _0807A2EE - .align 2, 0 -_0807A2E8: .4byte gUnknown_80FA8A8 -_0807A2EC: - ldr r0, _0807A2FC -_0807A2EE: - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _0807A30C - .align 2, 0 -_0807A2FC: .4byte gUnknown_80FA868 -_0807A300: - ldr r0, _0807A320 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_0807A30C: - adds r1, r6, 0 - adds r1, 0xAC - movs r0, 0 - strb r0, [r1] - adds r0, r4, 0 - bl sub_80418D4 -_0807A31A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807A320: .4byte gUnknown_80FA888 - thumb_func_end sub_807A290 - - thumb_func_start sub_807A324 -sub_807A324: - push {r4-r7,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r7, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807A3F4 - ldr r6, [r4, 0x70] - ldr r0, _0807A358 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r6, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x8 - bhi _0807A3DC - lsls r0, 2 - ldr r1, _0807A35C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807A358: .4byte gUnknown_202DF98 -_0807A35C: .4byte _0807A360 - .align 2, 0 -_0807A360: - .4byte _0807A3DC - .4byte _0807A384 - .4byte _0807A3A0 - .4byte _0807A3B4 - .4byte _0807A3B4 - .4byte _0807A3A0 - .4byte _0807A3D0 - .4byte _0807A398 - .4byte _0807A3DC -_0807A384: - ldr r0, _0807A394 - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - movs r7, 0x1 - b _0807A3DC - .align 2, 0 -_0807A394: .4byte gUnknown_80FA8BC -_0807A398: - ldr r0, _0807A39C - b _0807A3A2 - .align 2, 0 -_0807A39C: .4byte gUnknown_80FA820 -_0807A3A0: - ldr r0, _0807A3B0 -_0807A3A2: - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _0807A3DC - .align 2, 0 -_0807A3B0: .4byte gUnknown_80FA824 -_0807A3B4: - ldr r0, _0807A3CC - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - adds r0, r6, 0 - adds r0, 0x9C - ldr r0, [r0] - bl sub_8076CB4 - b _0807A3DC - .align 2, 0 -_0807A3CC: .4byte gUnknown_80FA81C -_0807A3D0: - ldr r0, _0807A3FC - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 -_0807A3DC: - adds r1, r6, 0 - adds r1, 0xB0 - movs r0, 0 - strb r0, [r1] - adds r0, r4, 0 - bl sub_80418D4 - cmp r7, 0 - beq _0807A3F4 - adds r0, r4, 0 - bl sub_8042A74 -_0807A3F4: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807A3FC: .4byte gUnknown_80FABF8 - thumb_func_end sub_807A324 - - thumb_func_start sub_807A400 -sub_807A400: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807A4BC - ldr r6, [r5, 0x70] - ldr r0, _0807A434 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r6, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x8 - bhi _0807A4A8 - lsls r0, 2 - ldr r1, _0807A438 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807A434: .4byte gUnknown_202DF98 -_0807A438: .4byte _0807A43C - .align 2, 0 -_0807A43C: - .4byte _0807A4A8 - .4byte _0807A49C - .4byte _0807A460 - .4byte _0807A478 - .4byte _0807A468 - .4byte _0807A470 - .4byte _0807A488 - .4byte _0807A480 - .4byte _0807A4A8 -_0807A460: - ldr r0, _0807A464 - b _0807A48A - .align 2, 0 -_0807A464: .4byte gUnknown_80FA800 -_0807A468: - ldr r0, _0807A46C - b _0807A48A - .align 2, 0 -_0807A46C: .4byte gUnknown_80FA97C -_0807A470: - ldr r0, _0807A474 - b _0807A48A - .align 2, 0 -_0807A474: .4byte gUnknown_80FA9DC -_0807A478: - ldr r0, _0807A47C - b _0807A48A - .align 2, 0 -_0807A47C: .4byte gUnknown_80FAC38 -_0807A480: - ldr r0, _0807A484 - b _0807A48A - .align 2, 0 -_0807A484: .4byte gUnknown_80FAB90 -_0807A488: - ldr r0, _0807A498 -_0807A48A: - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 - b _0807A4A8 - .align 2, 0 -_0807A498: .4byte gUnknown_80FAAAC -_0807A49C: - ldr r0, _0807A4C4 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80522F4 -_0807A4A8: - adds r1, r6, 0 - adds r1, 0xBC - movs r0, 0 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80418D4 - adds r0, r5, 0 - bl sub_8070774 -_0807A4BC: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807A4C4: .4byte gUnknown_80FAC18 - thumb_func_end sub_807A400 - - thumb_func_start sub_807A4C8 -sub_807A4C8: - push {r4,r5,lr} - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807A4DA - b _0807A5C4 -_0807A4DA: - ldr r5, [r4, 0x70] - ldr r0, _0807A4FC - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0xF - bhi _0807A5B6 - lsls r0, 2 - ldr r1, _0807A500 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807A4FC: .4byte gUnknown_202DF98 -_0807A500: .4byte _0807A504 - .align 2, 0 -_0807A504: - .4byte _0807A5B6 - .4byte _0807A544 - .4byte _0807A54C - .4byte _0807A554 - .4byte _0807A55C - .4byte _0807A564 - .4byte _0807A56C - .4byte _0807A574 - .4byte _0807A57C - .4byte _0807A584 - .4byte _0807A55C - .4byte _0807A58C - .4byte _0807A594 - .4byte _0807A59C - .4byte _0807A5AC - .4byte _0807A5B6 -_0807A544: - ldr r0, _0807A548 - b _0807A59E - .align 2, 0 -_0807A548: .4byte gUnknown_80FA638 -_0807A54C: - ldr r0, _0807A550 - b _0807A59E - .align 2, 0 -_0807A550: .4byte gUnknown_80FA69C -_0807A554: - ldr r0, _0807A558 - b _0807A59E - .align 2, 0 -_0807A558: .4byte gUnknown_80FA658 -_0807A55C: - ldr r0, _0807A560 - b _0807A59E - .align 2, 0 -_0807A560: .4byte gUnknown_80FA67C -_0807A564: - ldr r0, _0807A568 - b _0807A59E - .align 2, 0 -_0807A568: .4byte gUnknown_80FA6BC -_0807A56C: - ldr r0, _0807A570 - b _0807A59E - .align 2, 0 -_0807A570: .4byte gUnknown_80FA6D4 -_0807A574: - ldr r0, _0807A578 - b _0807A59E - .align 2, 0 -_0807A578: .4byte gUnknown_80FA9C0 -_0807A57C: - ldr r0, _0807A580 - b _0807A59E - .align 2, 0 -_0807A580: .4byte gUnknown_80FAA68 -_0807A584: - ldr r0, _0807A588 - b _0807A59E - .align 2, 0 -_0807A588: .4byte gUnknown_80FAAC8 -_0807A58C: - ldr r0, _0807A590 - b _0807A59E - .align 2, 0 -_0807A590: .4byte gUnknown_80FAAE8 -_0807A594: - ldr r0, _0807A598 - b _0807A59E - .align 2, 0 -_0807A598: .4byte gUnknown_80FAB08 -_0807A59C: - ldr r0, _0807A5A8 -_0807A59E: - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - b _0807A5B6 - .align 2, 0 -_0807A5A8: .4byte gUnknown_80FAB28 -_0807A5AC: - ldr r0, _0807A5CC - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 -_0807A5B6: - adds r1, r5, 0 - adds r1, 0xC4 - movs r0, 0 - strb r0, [r1] - adds r0, r4, 0 - bl sub_80418D4 -_0807A5C4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807A5CC: .4byte gUnknown_80FAB40 - thumb_func_end sub_807A4C8 - - thumb_func_start sub_807A5D0 -sub_807A5D0: - push {r4-r7,lr} - adds r5, r1, 0 - lsls r2, 24 - lsrs r6, r2, 24 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807A6B2 - ldr r7, [r5, 0x70] - ldr r0, _0807A604 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r7, 0 - adds r0, 0xC8 - ldrb r0, [r0] - cmp r0, 0x4 - bhi _0807A6A4 - lsls r0, 2 - ldr r1, _0807A608 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807A604: .4byte gUnknown_202DF98 -_0807A608: .4byte _0807A60C - .align 2, 0 -_0807A60C: - .4byte _0807A6A4 - .4byte _0807A620 - .4byte _0807A668 - .4byte _0807A634 - .4byte _0807A6A4 -_0807A620: - cmp r6, 0x1 - beq _0807A6A4 - ldr r0, _0807A630 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _0807A6A4 - .align 2, 0 -_0807A630: .4byte gUnknown_80FA7BC -_0807A634: - cmp r6, 0x3 - beq _0807A642 - ldr r0, _0807A658 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_0807A642: - ldr r0, _0807A65C - ldr r0, [r0] - ldr r2, _0807A660 - adds r1, r0, r2 - movs r2, 0 - str r2, [r1] - ldr r1, _0807A664 - adds r0, r1 - str r2, [r0] - b _0807A6A4 - .align 2, 0 -_0807A658: .4byte gUnknown_80FA7DC -_0807A65C: .4byte gUnknown_203B418 -_0807A660: .4byte 0x00017b30 -_0807A664: .4byte 0x00017b3c -_0807A668: - adds r0, r7, 0 - adds r0, 0xC8 - movs r4, 0 - strb r4, [r0] - adds r0, r5, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl sub_806CCB4 - ldr r0, _0807A6B8 - ldr r0, [r0] - ldr r2, _0807A6BC - adds r0, r2 - strb r4, [r0] - cmp r6, 0x2 - beq _0807A6A4 - ldr r0, _0807A6C0 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807A6C4 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_0807A6A4: - adds r1, r7, 0 - adds r1, 0xC8 - movs r0, 0 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80418D4 -_0807A6B2: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807A6B8: .4byte gUnknown_203B418 -_0807A6BC: .4byte 0x000037fc -_0807A6C0: .4byte gUnknown_202DF98 -_0807A6C4: .4byte gUnknown_80FA9A0 - thumb_func_end sub_807A5D0 - - thumb_func_start sub_807A6C8 -sub_807A6C8: - push {r4,r5,lr} - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807A72A - ldr r5, [r4, 0x70] - ldr r0, _0807A6F8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - adds r0, 0xD0 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0807A6FC - cmp r0, 0x1 - ble _0807A716 - cmp r0, 0x2 - beq _0807A70C - b _0807A716 - .align 2, 0 -_0807A6F8: .4byte gUnknown_202DF98 -_0807A6FC: - ldr r0, _0807A708 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - b _0807A716 - .align 2, 0 -_0807A708: .4byte gUnknown_80FA79C -_0807A70C: - ldr r0, _0807A730 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 -_0807A716: - adds r1, r5, 0 - adds r1, 0xD0 - movs r0, 0 - strb r0, [r1] - adds r1, 0x8 - movs r0, 0xFF - strb r0, [r1] - adds r0, r4, 0 - bl sub_80418D4 -_0807A72A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807A730: .4byte gUnknown_80FAA8C - thumb_func_end sub_807A6C8 - - thumb_func_start sub_807A734 -sub_807A734: - push {r4,r5,lr} - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807A7BC - ldr r5, [r4, 0x70] - ldr r0, _0807A764 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - adds r0, 0xDC - ldrb r0, [r0] - cmp r0, 0x5 - bhi _0807A7AE - lsls r0, 2 - ldr r1, _0807A768 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807A764: .4byte gUnknown_202DF98 -_0807A768: .4byte _0807A76C - .align 2, 0 -_0807A76C: - .4byte _0807A7AE - .4byte _0807A784 - .4byte _0807A78C - .4byte _0807A794 - .4byte _0807A7A4 - .4byte _0807A7AE -_0807A784: - ldr r0, _0807A788 - b _0807A796 - .align 2, 0 -_0807A788: .4byte gUnknown_80FA8E0 -_0807A78C: - ldr r0, _0807A790 - b _0807A796 - .align 2, 0 -_0807A790: .4byte gUnknown_80FA90C -_0807A794: - ldr r0, _0807A7A0 -_0807A796: - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - b _0807A7AE - .align 2, 0 -_0807A7A0: .4byte gUnknown_80FA934 -_0807A7A4: - ldr r0, _0807A7C4 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 -_0807A7AE: - adds r1, r5, 0 - adds r1, 0xDC - movs r0, 0 - strb r0, [r1] - adds r0, r4, 0 - bl sub_80418D4 -_0807A7BC: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807A7C4: .4byte gUnknown_80FA95C - thumb_func_end sub_807A734 - - thumb_func_start sub_807A7C8 -sub_807A7C8: - push {r4-r6,lr} - adds r4, r1, 0 - movs r6, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807A87E - ldr r5, [r4, 0x70] - ldr r0, _0807A7FC - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x4 - bhi _0807A866 - lsls r0, 2 - ldr r1, _0807A800 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807A7FC: .4byte gUnknown_202DF98 -_0807A800: .4byte _0807A804 - .align 2, 0 -_0807A804: - .4byte _0807A866 - .4byte _0807A818 - .4byte _0807A834 - .4byte _0807A824 - .4byte _0807A866 -_0807A818: - movs r6, 0x1 - ldr r0, _0807A820 - b _0807A826 - .align 2, 0 -_0807A820: .4byte gUnknown_80FA9F4 -_0807A824: - ldr r0, _0807A830 -_0807A826: - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - b _0807A866 - .align 2, 0 -_0807A830: .4byte gUnknown_80FABBC -_0807A834: - movs r0, 0x2 - ldrsh r1, [r5, r0] - adds r0, r4, 0 - bl sub_8069F54 - strh r0, [r5, 0x4] - movs r1, 0x4 - ldrsh r0, [r5, r1] - bl sub_80687D0 - str r0, [r4, 0x64] - adds r0, r4, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_806CCB4 - ldr r0, _0807A884 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 -_0807A866: - adds r1, r5, 0 - adds r1, 0xE4 - movs r0, 0 - strb r0, [r1] - adds r0, r4, 0 - bl sub_80418D4 - cmp r6, 0 - beq _0807A87E - movs r0, 0x1 - bl sub_807EC28 -_0807A87E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807A884: .4byte gUnknown_80FAB6C - thumb_func_end sub_807A7C8 - - thumb_func_start sub_807A888 -sub_807A888: - push {r4,r5,lr} - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807A918 - ldr r5, [r4, 0x70] - ldr r0, _0807A8B8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - adds r0, 0xE8 - ldrb r0, [r0] - cmp r0, 0x4 - bhi _0807A8F6 - lsls r0, 2 - ldr r1, _0807A8BC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807A8B8: .4byte gUnknown_202DF98 -_0807A8BC: .4byte _0807A8C0 - .align 2, 0 -_0807A8C0: - .4byte _0807A8F6 - .4byte _0807A8D4 - .4byte _0807A8DC - .4byte _0807A8EC - .4byte _0807A8F6 -_0807A8D4: - ldr r0, _0807A8D8 - b _0807A8DE - .align 2, 0 -_0807A8D8: .4byte gUnknown_80FAA0C -_0807A8DC: - ldr r0, _0807A8E8 -_0807A8DE: - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - b _0807A8F6 - .align 2, 0 -_0807A8E8: .4byte gUnknown_80FAA2C -_0807A8EC: - ldr r0, _0807A920 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 -_0807A8F6: - adds r0, r5, 0 - adds r0, 0xE8 - movs r1, 0 - strb r1, [r0] - adds r0, r4, 0 - bl sub_80418D4 - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _0807A918 - movs r0, 0x31 - bl sub_803E46C - bl sub_8049ED4 - bl sub_8040A84 -_0807A918: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807A920: .4byte gUnknown_80FAA48 - thumb_func_end sub_807A888 - - thumb_func_start sub_807A924 -sub_807A924: - push {r4,r5,lr} - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807A95C - ldr r4, [r5, 0x70] - ldr r0, _0807A964 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r4, 0xEC - ldrb r0, [r4] - cmp r0, 0x1 - bne _0807A952 - ldr r0, _0807A968 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_0807A952: - movs r0, 0 - strb r0, [r4] - adds r0, r5, 0 - bl sub_80418D4 -_0807A95C: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807A964: .4byte gUnknown_202DF98 -_0807A968: .4byte gUnknown_80FABC0 - thumb_func_end sub_807A924 - - thumb_func_start sub_807A96C -sub_807A96C: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - ldr r0, [r4, 0x70] - adds r5, r0, 0 - movs r2, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x6 - bne _0807A988 - adds r0, r6, 0 - bl sub_807A324 - movs r2, 0x1 -_0807A988: - adds r0, r5, 0 - adds r0, 0xA8 - ldrh r1, [r0] - ldr r0, _0807A9AC - cmp r1, r0 - bne _0807A9A2 - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_807A124 - movs r2, 0x1 -_0807A9A2: - adds r0, r2, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0807A9AC: .4byte 0x00007f01 - thumb_func_end sub_807A96C - - thumb_func_start sub_807A9B0 -sub_807A9B0: - push {r4,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x70] - adds r1, r0, 0 - adds r1, 0xA8 - movs r2, 0 - strb r2, [r1] - adds r0, 0xA9 - strb r2, [r0] - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_806A898 - adds r0, r4, 0 - bl sub_80418D4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_807A9B0 - - thumb_func_start sub_807A9D8 -sub_807A9D8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807AA20 - ldr r2, [r4, 0x70] - adds r3, r2, 0 - adds r3, 0xB0 - ldrb r0, [r3] - cmp r0, 0x1 - bne _0807AA20 - movs r1, 0 - strb r1, [r3] - adds r0, r2, 0 - adds r0, 0xB8 - strb r1, [r0] - adds r0, 0x1 - strb r1, [r0] - ldr r0, _0807AA28 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807AA2C - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80522F4 - adds r0, r4, 0 - bl sub_80418D4 -_0807AA20: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0807AA28: .4byte gUnknown_202DF98 -_0807AA2C: .4byte gUnknown_80FA8BC - thumb_func_end sub_807A9D8 - - thumb_func_start sub_807AA30 -sub_807AA30: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r4, 0 -_0807AA3C: - ldr r0, _0807AAD8 - ldr r0, [r0] - lsls r1, r4, 2 - ldr r2, _0807AADC - adds r0, r2 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - adds r4, 0x1 - mov r10, r4 - cmp r0, 0 - beq _0807AB22 - ldr r1, [r5, 0x70] - adds r0, r1, 0 - adds r0, 0xA8 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807AB22 - adds r0, r1, 0 - adds r0, 0xA9 - ldrb r0, [r0] - cmp r0, 0x7F - bne _0807AB22 - movs r0, 0 - mov r9, r0 - mov r8, r0 - adds r0, r5, 0 - bl sub_80450FC - lsls r0, 24 - lsrs r7, r0, 24 - movs r6, 0 -_0807AA82: - ldr r0, _0807AAD8 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0807AAE0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807AB00 - adds r0, r4, 0 - movs r1, 0x18 - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - bne _0807AB00 - movs r0, 0x4 - ldrsh r1, [r4, r0] - movs r2, 0x4 - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0807AABA - negs r1, r1 -_0807AABA: - cmp r1, 0x1 - bgt _0807AAE4 - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r2, 0x6 - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0807AACE - negs r1, r1 -_0807AACE: - cmp r1, 0x1 - bgt _0807AAE4 - movs r0, 0x1 - mov r9, r0 - b _0807AB06 - .align 2, 0 -_0807AAD8: .4byte gUnknown_203B418 -_0807AADC: .4byte 0x0001358c -_0807AAE0: .4byte 0x0001357c -_0807AAE4: - adds r0, r4, 0 - movs r1, 0x1D - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0807AB00 - adds r0, r4, 0 - bl sub_80450FC - lsls r0, 24 - lsrs r0, 24 - cmp r7, r0 - beq _0807AB1C -_0807AB00: - adds r6, 0x1 - cmp r6, 0x3 - ble _0807AA82 -_0807AB06: - mov r2, r8 - cmp r2, 0 - bne _0807AB1C - mov r0, r9 - cmp r0, 0 - beq _0807AB16 - movs r2, 0x1 - mov r8, r2 -_0807AB16: - mov r0, r8 - cmp r0, 0 - beq _0807AB22 -_0807AB1C: - adds r0, r5, 0 - bl sub_807A9B0 -_0807AB22: - mov r4, r10 - cmp r4, 0xF - ble _0807AA3C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807AA30 - - thumb_func_start sub_807AB38 -sub_807AB38: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1A8 - adds r2, r0, 0 - lsls r1, 24 - lsrs r4, r1, 24 - ldr r0, [r2, 0x70] - ldrb r0, [r0, 0x6] - cmp r0, 0 - beq _0807AB54 - b _0807ADA6 -_0807AB54: - adds r0, r2, 0 - str r2, [sp, 0x1A4] - bl sub_8045128 - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - ldr r2, [sp, 0x1A4] - cmp r0, 0 - bne _0807AB6A - b _0807ADA6 -_0807AB6A: - ldr r3, _0807AC10 - ldr r0, [r3] - ldr r5, _0807AC14 - adds r1, r0, r5 - ldrb r0, [r1] - cmp r0, 0 - beq _0807AB7A - b _0807ADA6 -_0807AB7A: - movs r0, 0x1 - strb r0, [r1] - ldr r3, [r3] - ldr r1, _0807AC18 - adds r0, r3, r1 - ldrb r1, [r0] - cmp r1, 0xFF - bne _0807AB8C - b _0807ADA6 -_0807AB8C: - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r5, _0807AC1C - adds r0, r5 - adds r3, r0 - movs r0, 0 - mov r8, r0 - cmp r4, 0 - beq _0807AC20 - movs r1, 0x6 - ldrsh r0, [r2, r1] - subs r6, r0, 0x4 - adds r0, 0x4 - cmp r6, r0 - ble _0807ABAE - b _0807ACB4 -_0807ABAE: - movs r4, 0x4 - ldrsh r0, [r2, r4] - subs r4, r0, 0x4 - adds r0, 0x4 - adds r5, r6, 0x1 - mov r9, r5 - cmp r4, r0 - bgt _0807AC00 - mov r1, r8 - lsls r0, r1, 2 - mov r1, sp - adds r5, r0, r1 -_0807ABC6: - adds r0, r4, 0 - adds r1, r6, 0 - str r2, [sp, 0x1A4] - bl sub_8049590 - adds r1, r0, 0 - ldr r0, [r1, 0x10] - ldr r2, [sp, 0x1A4] - cmp r0, 0 - bne _0807ABF4 - ldrh r1, [r1] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _0807ABF4 - mov r0, r8 - cmp r0, 0x63 - bgt _0807ABF4 - strh r4, [r5] - strh r6, [r5, 0x2] - adds r5, 0x4 - movs r1, 0x1 - add r8, r1 -_0807ABF4: - adds r4, 0x1 - movs r1, 0x4 - ldrsh r0, [r2, r1] - adds r0, 0x4 - cmp r4, r0 - ble _0807ABC6 -_0807AC00: - mov r6, r9 - movs r4, 0x6 - ldrsh r0, [r2, r4] - adds r0, 0x4 - cmp r6, r0 - ble _0807ABAE - b _0807ACB4 - .align 2, 0 -_0807AC10: .4byte gUnknown_203B418 -_0807AC14: .4byte 0x00000671 -_0807AC18: .4byte 0x00003a0c -_0807AC1C: .4byte 0x000104c4 -_0807AC20: - movs r5, 0x4 - ldrsh r0, [r2, r5] - subs r1, r0, 0x4 - movs r5, 0x2 - ldrsh r4, [r3, r5] - mov r10, r4 - cmp r10, r1 - bge _0807AC32 - mov r10, r1 -_0807AC32: - adds r1, r0, 0x5 - movs r0, 0x6 - ldrsh r7, [r3, r0] - cmp r7, r1 - ble _0807AC3E - adds r7, r1, 0 -_0807AC3E: - movs r1, 0x6 - ldrsh r0, [r2, r1] - subs r2, r0, 0x4 - movs r4, 0x4 - ldrsh r1, [r3, r4] - cmp r1, r2 - bge _0807AC4E - adds r1, r2, 0 -_0807AC4E: - adds r0, 0x5 - movs r5, 0x8 - ldrsh r2, [r3, r5] - cmp r2, r0 - ble _0807AC5A - adds r2, r0, 0 -_0807AC5A: - adds r6, r1, 0 - cmp r6, r2 - bge _0807ACB4 -_0807AC60: - mov r4, r10 - adds r0, r6, 0x1 - mov r9, r0 - cmp r4, r7 - bge _0807ACAE - mov r1, r8 - lsls r0, r1, 2 - mov r1, sp - adds r5, r0, r1 -_0807AC72: - adds r0, r4, 0 - adds r1, r6, 0 - str r2, [sp, 0x1A4] - bl sub_8049590 - adds r1, r0, 0 - ldr r0, [r1, 0x10] - ldr r2, [sp, 0x1A4] - cmp r0, 0 - bne _0807ACA8 - ldrh r1, [r1] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _0807ACA8 - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0807ACA8 - mov r0, r8 - cmp r0, 0x63 - bgt _0807ACA8 - strh r4, [r5] - strh r6, [r5, 0x2] - adds r5, 0x4 - movs r1, 0x1 - add r8, r1 -_0807ACA8: - adds r4, 0x1 - cmp r4, r7 - blt _0807AC72 -_0807ACAE: - mov r6, r9 - cmp r6, r2 - blt _0807AC60 -_0807ACB4: - ldr r0, _0807AD74 - movs r2, 0 - ldrsh r0, [r0, r2] - ldr r1, _0807AD78 - movs r4, 0 - ldrsh r1, [r1, r4] - bl sub_808411C - adds r7, r0, 0 - cmp r7, r8 - blt _0807ACCC - mov r7, r8 -_0807ACCC: - movs r6, 0 - cmp r6, r7 - bge _0807ADA0 - mov r10, r6 -_0807ACD4: - mov r0, r8 - bl sub_8084100 - adds r2, r0, 0 - movs r3, 0 - cmp r3, r8 - bge _0807AD0C - lsls r0, r2, 2 - mov r5, sp - adds r1, r5, r0 - movs r4, 0 - ldrsh r1, [r1, r4] - adds r5, r0, 0 - cmp r1, 0 - bne _0807AD1C -_0807ACF2: - adds r2, 0x1 - cmp r2, r8 - blt _0807ACFA - movs r2, 0 -_0807ACFA: - adds r3, 0x1 - cmp r3, r8 - bge _0807AD0C - lsls r0, r2, 2 - add r0, sp - movs r5, 0 - ldrsh r0, [r0, r5] - cmp r0, 0 - beq _0807ACF2 -_0807AD0C: - lsls r0, r2, 2 - mov r2, sp - adds r1, r2, r0 - movs r4, 0 - ldrsh r1, [r1, r4] - adds r5, r0, 0 - cmp r1, 0 - beq _0807ADA0 -_0807AD1C: - movs r0, 0x1 - bl sub_803D970 - add r4, sp, 0x190 - movs r1, 0 - strh r0, [r4] - mov r0, r10 - strh r0, [r4, 0x8] - strb r1, [r4, 0x2] - mov r1, r10 - str r1, [r4, 0x4] - movs r0, 0x1 - strb r0, [r4, 0x10] - mov r2, sp - adds r1, r2, r5 - ldrh r0, [r1] - strh r0, [r4, 0xC] - ldrh r0, [r1, 0x2] - strh r0, [r4, 0xE] - movs r5, 0 - ldrsh r0, [r4, r5] - movs r1, 0x1 - bl sub_806AA0C - lsls r0, 24 - adds r6, 0x1 - mov r9, r6 - cmp r0, 0 - beq _0807AD9A - adds r0, r4, 0 - movs r1, 0 - bl sub_806B7F8 - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807AD9A - movs r0, 0xC8 - lsls r0, 8 - str r0, [r4, 0x1C] - movs r5, 0 - b _0807AD84 - .align 2, 0 -_0807AD74: .4byte gUnknown_80F4DA2 -_0807AD78: .4byte gUnknown_80F4DA4 -_0807AD7C: - movs r0, 0x57 - bl sub_803E46C - adds r5, 0x1 -_0807AD84: - cmp r5, 0x63 - bgt _0807AD96 - ldr r0, [r4, 0x1C] - movs r1, 0xAA - bl sub_8009DA4 - str r0, [r4, 0x1C] - cmp r0, 0xFF - bgt _0807AD7C -_0807AD96: - mov r0, r10 - str r0, [r4, 0x1C] -_0807AD9A: - mov r6, r9 - cmp r6, r7 - blt _0807ACD4 -_0807ADA0: - movs r0, 0x1 - bl sub_804178C -_0807ADA6: - add sp, 0x1A8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807AB38 - - thumb_func_start sub_807ADB8 -sub_807ADB8: - push {r4-r7,lr} - adds r5, r0, 0 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r4, [r5, 0x70] - adds r0, r4, 0 - adds r0, 0x79 - movs r6, 0 - strb r6, [r0] - adds r0, 0x1 - strb r6, [r0] - adds r0, 0x1 - strb r6, [r0] - adds r0, r5, 0 - movs r1, 0x7 - bl sub_80718AC - lsls r0, 24 - cmp r0, 0 - beq _0807ADFA - movs r1, 0x10 - ldrsh r0, [r4, r1] - lsrs r1, r0, 31 - adds r0, r1 - movs r2, 0xE - ldrsh r1, [r4, r2] - asrs r0, 1 - cmp r1, r0 - bgt _0807ADFA - adds r0, r4, 0 - adds r0, 0x44 - strh r6, [r0] - b _0807AEB4 -_0807ADFA: - adds r0, r5, 0 - movs r1, 0x9 - bl sub_80718AC - lsls r0, 24 - cmp r0, 0 - beq _0807AE12 - adds r1, r4, 0 - adds r1, 0x44 - movs r0, 0 - strh r0, [r1] - b _0807AEB4 -_0807AE12: - ldrb r0, [r4, 0x7] - cmp r0, 0 - bne _0807AE32 - movs r1, 0x9E - lsls r1, 1 - adds r0, r4, r1 - ldr r0, [r0] - bl sub_8094450 - adds r1, r0, 0 - cmp r1, 0 - bne _0807AE32 - adds r0, r4, 0 - adds r0, 0x44 - strh r1, [r0] - b _0807AEB4 -_0807AE32: - adds r0, r4, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807AE6A - adds r0, r4, 0 - adds r0, 0x44 - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_8044CA0 - movs r0, 0x8 - bl sub_8084100 - adds r1, r4, 0 - adds r1, 0x46 - strb r0, [r1] - ldrh r1, [r5, 0x4] - movs r2, 0xB6 - lsls r2, 1 - adds r0, r4, r2 - strh r1, [r0] - ldrh r0, [r5, 0x6] - subs r0, 0x1 - adds r2, 0x2 - adds r1, r4, r2 - strh r0, [r1] - b _0807AEB4 -_0807AE6A: - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_8071518 - lsls r0, 24 - cmp r0, 0 - beq _0807AE80 - adds r0, r5, 0 - bl sub_807B5E0 - b _0807AE9C -_0807AE80: - adds r0, r5, 0 - bl sub_807AEBC - lsls r0, 24 - cmp r0, 0 - beq _0807AE96 - adds r1, r4, 0 - adds r1, 0x44 - movs r0, 0x3F - strh r0, [r1] - b _0807AEB4 -_0807AE96: - adds r0, r5, 0 - bl sub_807AF58 -_0807AE9C: - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _0807AEAC - adds r0, r4, 0 - adds r0, 0x44 - strh r2, [r0] - b _0807AEB4 -_0807AEAC: - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_807B2D8 -_0807AEB4: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807ADB8 - - thumb_func_start sub_807AEBC -sub_807AEBC: - push {r4-r6,lr} - adds r4, r0, 0 - ldr r5, [r4, 0x70] - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807AF50 - adds r0, r4, 0 - bl sub_8070C60 - lsls r0, 24 - cmp r0, 0 - bne _0807AF50 - adds r0, r4, 0 - bl sub_8045128 - adds r6, r0, 0 - ldr r4, [r6, 0x14] - cmp r4, 0 - beq _0807AF50 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x5 - bhi _0807AF50 - lsls r0, 2 - ldr r1, _0807AEFC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0807AEFC: .4byte _0807AF00 - .align 2, 0 -_0807AF00: - .4byte _0807AF50 - .4byte _0807AF50 - .4byte _0807AF50 - .4byte _0807AF18 - .4byte _0807AF50 - .4byte _0807AF50 -_0807AF18: - ldrb r0, [r5, 0x7] - cmp r0, 0 - bne _0807AF50 - adds r0, r5, 0 - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0807AF50 - ldrh r1, [r6] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _0807AF3C - ldrb r0, [r5, 0x6] - cmp r0, 0 - bne _0807AF50 -_0807AF3C: - adds r0, r4, 0 - bl sub_8045108 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0807AF50 - movs r0, 0x1 - b _0807AF52 -_0807AF50: - movs r0, 0 -_0807AF52: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_807AEBC - - thumb_func_start sub_807AF58 -sub_807AF58: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - mov r8, r0 - ldr r7, [r0, 0x70] - bl sub_8072C88 - lsls r0, 24 - cmp r0, 0 - beq _0807AF74 - b _0807B12C -_0807AF74: - ldr r0, _0807AF8C - ldr r1, [r0] - ldr r2, _0807AF90 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0807AF98 - ldr r3, _0807AF94 - adds r6, r1, r3 - movs r4, 0x14 - mov r10, r4 - b _0807AFB4 - .align 2, 0 -_0807AF8C: .4byte gUnknown_203B418 -_0807AF90: .4byte 0x000037fc -_0807AF94: .4byte 0x000135cc -_0807AF98: - ldrb r0, [r7, 0x6] - cmp r0, 0 - beq _0807AFAC - ldr r0, _0807AFA8 - adds r6, r1, r0 - movs r1, 0x4 - mov r10, r1 - b _0807AFB4 - .align 2, 0 -_0807AFA8: .4byte 0x0001357c -_0807AFAC: - ldr r2, _0807B01C - adds r6, r1, r2 - movs r3, 0x10 - mov r10, r3 -_0807AFB4: - mov r0, r8 - bl sub_8070460 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - movs r4, 0x1 - negs r4, r4 - str r4, [sp] - ldr r0, _0807B020 - mov r9, r0 - movs r5, 0 - adds r1, r7, 0 - adds r1, 0x78 - str r1, [sp, 0x8] - cmp r5, r10 - bge _0807B09E -_0807AFD6: - lsls r0, r5, 2 - adds r0, r6 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807B098 - ldr r0, [r4, 0x70] - adds r1, r0, 0 - adds r1, 0xA4 - ldrb r1, [r1] - adds r2, r0, 0 - cmp r1, 0 - bne _0807B098 - ldr r0, _0807B024 - ldr r0, [r0] - ldr r3, _0807B028 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0807B02C - mov r0, r8 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0807B098 - ldr r2, [r4, 0x70] - b _0807B03C - .align 2, 0 -_0807B01C: .4byte 0x0001358c -_0807B020: .4byte 0x000003e7 -_0807B024: .4byte gUnknown_203B418 -_0807B028: .4byte 0x000037fc -_0807B02C: - ldrb r0, [r7, 0x6] - cmp r0, 0 - bne _0807B03C - adds r0, r2, 0 - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x6 - beq _0807B098 -_0807B03C: - ldrb r0, [r2, 0x8] - cmp r0, 0x1 - beq _0807B098 - ldr r0, [sp, 0x4] - cmp r0, 0 - beq _0807B074 - mov r2, r8 - movs r3, 0x4 - ldrsh r1, [r2, r3] - movs r2, 0x4 - ldrsh r0, [r4, r2] - subs r1, r0 - cmp r1, 0 - bge _0807B05A - negs r1, r1 -_0807B05A: - cmp r1, 0x5 - bgt _0807B074 - mov r3, r8 - movs r0, 0x6 - ldrsh r1, [r3, r0] - movs r2, 0x6 - ldrsh r0, [r4, r2] - subs r1, r0 - cmp r1, 0 - bge _0807B070 - negs r1, r1 -_0807B070: - cmp r1, 0x5 - ble _0807B082 -_0807B074: - mov r0, r8 - adds r1, r4, 0 - bl sub_8045A00 - lsls r0, 24 - cmp r0, 0 - beq _0807B098 -_0807B082: - adds r1, r4, 0x4 - mov r0, r8 - adds r0, 0x4 - bl sub_8098434 - cmp r9, r0 - ble _0807B098 - mov r9, r0 - str r5, [sp] - cmp r0, 0x1 - ble _0807B09E -_0807B098: - adds r5, 0x1 - cmp r5, r10 - blt _0807AFD6 -_0807B09E: - ldr r3, [sp] - cmp r3, 0 - blt _0807B12C - movs r2, 0 - movs r5, 0x1 - ldr r4, [sp, 0x8] - strb r5, [r4] - adds r1, r7, 0 - adds r1, 0x88 - lsls r0, r3, 2 - adds r4, r0, r6 - ldr r0, [r4] - ldr r0, [r0, 0x4] - str r0, [r1] - subs r1, 0x8 - ldr r0, [r4] - str r0, [r1] - ldrh r1, [r0, 0x26] - adds r0, r7, 0 - adds r0, 0x7C - strh r1, [r0] - subs r0, 0x2 - strb r5, [r0] - movs r1, 0x8A - lsls r1, 1 - adds r0, r7, r1 - str r2, [r0] - mov r0, r8 - movs r1, 0x8 - bl sub_80718AC - lsls r0, 24 - cmp r0, 0 - bne _0807B0E4 - b _0807B2C6 -_0807B0E4: - mov r0, r8 - bl sub_80719C4 - lsls r0, 24 - cmp r0, 0 - beq _0807B0F2 - b _0807B2C6 -_0807B0F2: - mov r2, r8 - movs r3, 0x4 - ldrsh r1, [r2, r3] - ldr r2, [r4] - movs r4, 0x4 - ldrsh r0, [r2, r4] - subs r1, r0 - cmp r1, 0 - bge _0807B106 - negs r1, r1 -_0807B106: - cmp r1, 0x1 - ble _0807B10C - b _0807B2C6 -_0807B10C: - mov r0, r8 - movs r3, 0x6 - ldrsh r1, [r0, r3] - movs r4, 0x6 - ldrsh r0, [r2, r4] - subs r0, r1, r0 - cmp r0, 0 - bge _0807B11E - negs r0, r0 -_0807B11E: - cmp r0, 0x1 - ble _0807B124 - b _0807B2C6 -_0807B124: - adds r0, r7, 0 - adds r0, 0x7B - strb r5, [r0] - b _0807B2C6 -_0807B12C: - mov r0, r8 - movs r1, 0x1 - bl sub_80718AC - lsls r0, 24 - cmp r0, 0 - bne _0807B17C - ldrb r5, [r7, 0x6] - adds r0, r7, 0 - adds r0, 0x78 - str r0, [sp, 0x8] - cmp r5, 0 - bne _0807B222 - mov r0, r8 - bl sub_8072CA8 - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807B222 - movs r0, 0x1 - ldr r1, [sp, 0x8] - strb r0, [r1] - adds r1, r7, 0 - adds r1, 0x88 - ldr r0, [r4, 0x4] - str r0, [r1] - adds r0, r7, 0 - adds r0, 0x80 - str r4, [r0] - ldrh r1, [r4, 0x26] - subs r0, 0x4 - strh r1, [r0] - movs r2, 0x8A - lsls r2, 1 - adds r0, r7, r2 - str r5, [r0] - b _0807B2C6 -_0807B17C: - ldrb r0, [r7, 0x7] - adds r3, r7, 0 - adds r3, 0x78 - str r3, [sp, 0x8] - cmp r0, 0 - beq _0807B222 - ldr r4, _0807B1BC - ldr r0, [r4] - ldr r1, _0807B1C0 - adds r0, r1 - ldrb r0, [r0] - mov r2, r8 - movs r3, 0x4 - ldrsh r0, [r2, r3] - movs r3, 0x6 - ldrsh r1, [r2, r3] - bl sub_804954C - ldrb r1, [r0, 0x9] - cmp r1, 0xFF - bne _0807B1C4 - mov r4, r8 - movs r0, 0x4 - ldrsh r1, [r4, r0] - subs r2, r1, 0x2 - mov r10, r2 - movs r3, 0x6 - ldrsh r0, [r4, r3] - subs r2, r0, 0x2 - adds r6, r1, 0x2 - adds r0, 0x2 - b _0807B1EC - .align 2, 0 -_0807B1BC: .4byte gUnknown_203B418 -_0807B1C0: .4byte 0x00018209 -_0807B1C4: - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r1, _0807B26C - adds r0, r1 - ldr r1, [r4] - adds r1, r0 - movs r2, 0x2 - ldrsh r0, [r1, r2] - subs r0, 0x1 - mov r10, r0 - movs r3, 0x4 - ldrsh r0, [r1, r3] - subs r2, r0, 0x1 - movs r4, 0x6 - ldrsh r0, [r1, r4] - adds r6, r0, 0x1 - movs r3, 0x8 - ldrsh r0, [r1, r3] - adds r0, 0x1 -_0807B1EC: - mov r9, r0 - adds r5, r2, 0 - adds r4, r7, 0 - adds r4, 0x78 - str r4, [sp, 0x8] - cmp r5, r9 - bgt _0807B222 -_0807B1FA: - mov r4, r10 - cmp r4, r6 - bgt _0807B21C -_0807B200: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - ldr r0, [r0, 0x14] - cmp r0, 0 - beq _0807B216 - bl sub_80450F8 - cmp r0, 0x3 - beq _0807B270 -_0807B216: - adds r4, 0x1 - cmp r4, r6 - ble _0807B200 -_0807B21C: - adds r5, 0x1 - cmp r5, r9 - ble _0807B1FA -_0807B222: - ldr r1, [sp, 0x8] - ldrb r0, [r1] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0807B2C0 - adds r3, r7, 0 - adds r3, 0x80 - ldr r1, [r3] - cmp r1, 0 - beq _0807B2C0 - adds r2, r7, 0 - adds r2, 0x7C - ldrh r0, [r1, 0x26] - ldrh r4, [r2] - cmp r0, r4 - bne _0807B2B4 - ldr r1, [r1, 0x70] - mov r9, r1 - movs r5, 0 - mov r4, r9 - adds r4, 0x68 -_0807B250: - lsls r6, r5, 2 - mov r0, r8 - adds r1, r4, 0 - bl sub_8045ABC - lsls r0, 24 - cmp r0, 0 - bne _0807B294 - adds r4, 0x4 - adds r5, 0x1 - cmp r5, 0x3 - ble _0807B250 - b _0807B2C0 - .align 2, 0 -_0807B26C: .4byte 0x000104c4 -_0807B270: - movs r1, 0 - movs r0, 0x7 - ldr r2, [sp, 0x8] - strb r0, [r2] - adds r0, r7, 0 - adds r0, 0x88 - strh r4, [r0] - adds r0, 0x2 - strh r5, [r0] - subs r0, 0xA - str r1, [r0] - subs r0, 0x4 - strh r1, [r0] - movs r3, 0x8A - lsls r3, 1 - adds r0, r7, r3 - str r1, [r0] - b _0807B2C6 -_0807B294: - movs r2, 0 - movs r0, 0x2 - ldr r4, [sp, 0x8] - strb r0, [r4] - adds r1, r7, 0 - adds r1, 0x88 - mov r0, r9 - adds r0, 0x68 - adds r0, r6 - ldr r0, [r0] - str r0, [r1] - movs r1, 0x8A - lsls r1, 1 - adds r0, r7, r1 - str r2, [r0] - b _0807B2C6 -_0807B2B4: - movs r1, 0 - movs r0, 0x6 - ldr r4, [sp, 0x8] - strb r0, [r4] - str r1, [r3] - strh r1, [r2] -_0807B2C0: - mov r0, r8 - bl sub_807B920 -_0807B2C6: - movs r0, 0x1 - 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_807AF58 - - thumb_func_start sub_807B2D8 -sub_807B2D8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x3C - mov r9, r0 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r5, [r0, 0x70] - movs r0, 0xB6 - lsls r0, 1 - adds r1, r5, r0 - adds r4, r5, 0 - adds r4, 0x88 - ldr r0, [r4] - str r0, [r1] - mov r2, r9 - ldr r1, [r2, 0x4] - ldr r0, [r4] - cmp r1, r0 - beq _0807B348 - mov r6, r9 - adds r6, 0x4 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80983D8 - mov r8, r0 - adds r0, r5, 0 - adds r0, 0x7A - ldrb r1, [r0] - mov r0, r9 - bl sub_8071470 - lsls r0, 24 - cmp r0, 0 - beq _0807B366 - adds r0, r5, 0 - adds r0, 0x78 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807B37C - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8083478 - lsls r0, 24 - cmp r0, 0 - beq _0807B37C - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8098434 - cmp r0, 0x2 - bne _0807B354 -_0807B348: - adds r0, r5, 0 - adds r0, 0x44 - movs r1, 0x1 - bl sub_8044C94 - b _0807B5CE -_0807B354: - cmp r0, 0x1 - bgt _0807B37C - movs r3, 0x4 - add r8, r3 - movs r0, 0x7 - mov r1, r8 - ands r1, r0 - mov r8, r1 - b _0807B37C -_0807B366: - adds r0, r5, 0 - adds r0, 0x7B - ldrb r0, [r0] - cmp r0, 0 - beq _0807B37C - movs r2, 0x4 - add r8, r2 - movs r0, 0x7 - mov r3, r8 - ands r3, r0 - mov r8, r3 -_0807B37C: - add r4, sp, 0x30 - mov r0, r9 - mov r1, r8 - adds r2, r4, 0 - bl sub_8071214 - lsls r0, 24 - cmp r0, 0 - beq _0807B3A8 - adds r0, r5, 0 - adds r0, 0x44 - movs r2, 0x2 - ldrsh r1, [r5, r2] - bl sub_8044CA0 - movs r0, 0x7 - mov r3, r8 - ands r3, r0 - adds r0, r5, 0 - adds r0, 0x46 - strb r3, [r0] - b _0807B5CE -_0807B3A8: - ldrb r0, [r4] - cmp r0, 0 - beq _0807B444 - ldrb r0, [r5, 0x6] - cmp r0, 0 - bne _0807B3E8 - ldr r1, _0807B3E0 - adds r0, r5, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0807B3E8 - adds r0, r5, 0 - adds r0, 0x79 - movs r4, 0x1 - strb r4, [r0] - movs r2, 0xA2 - lsls r2, 1 - adds r0, r5, r2 - strb r4, [r0] - adds r0, r5, 0 - adds r0, 0x44 - movs r1, 0x1 - bl sub_8044C94 - ldr r3, _0807B3E4 - adds r0, r5, r3 - strb r4, [r0] - b _0807B5CE - .align 2, 0 -_0807B3E0: .4byte 0x00000145 -_0807B3E4: .4byte 0x00000147 -_0807B3E8: - mov r0, r9 - movs r2, 0x4 - ldrsh r1, [r0, r2] - ldr r2, _0807B434 - mov r3, r8 - lsls r0, r3, 2 - adds r2, r0, r2 - movs r3, 0 - ldrsh r0, [r2, r3] - adds r1, r0 - adds r0, r5, 0 - adds r0, 0x88 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r1, r0 - bne _0807B43C - mov r1, r9 - movs r3, 0x6 - ldrsh r0, [r1, r3] - movs r3, 0x2 - ldrsh r1, [r2, r3] - adds r0, r1 - adds r1, r5, 0 - adds r1, 0x8A - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bne _0807B43C - adds r0, r5, 0 - adds r0, 0x44 - movs r1, 0x1 - bl sub_8044C94 - ldr r3, _0807B438 - adds r1, r5, r3 - movs r0, 0x1 - strb r0, [r1] - b _0807B5CE - .align 2, 0 -_0807B434: .4byte gUnknown_80F4448 -_0807B438: .4byte 0x00000147 -_0807B43C: - adds r1, r5, 0 - adds r1, 0x79 - movs r0, 0x1 - strb r0, [r1] -_0807B444: - mov r3, sp - mov r2, sp - mov r1, sp - add r0, sp, 0x28 - movs r4, 0x1 - strb r4, [r0] - add r0, sp, 0x20 - strb r4, [r0] - strb r4, [r1, 0x18] - strb r4, [r2, 0x10] - strb r4, [r3, 0x8] - ldrb r6, [r5, 0x6] - cmp r6, 0 - bne _0807B4C8 - mov r0, r8 - ands r0, r4 - cmp r0, 0 - beq _0807B4C8 - mov r1, r9 - movs r2, 0x4 - ldrsh r0, [r1, r2] - adds r1, r5, 0 - adds r1, 0x88 - movs r3, 0 - ldrsh r1, [r1, r3] - subs r2, r0, r1 - cmp r2, 0 - bge _0807B47E - negs r2, r2 -_0807B47E: - mov r0, r9 - movs r3, 0x6 - ldrsh r1, [r0, r3] - adds r0, r5, 0 - adds r0, 0x8A - movs r3, 0 - ldrsh r0, [r0, r3] - subs r1, r0 - cmp r1, 0 - bge _0807B494 - negs r1, r1 -_0807B494: - cmp r2, 0x2 - bgt _0807B4C8 - cmp r1, 0x2 - bgt _0807B4C8 - cmp r2, r1 - beq _0807B4C8 - movs r3, 0x2 - mov r0, r8 - ands r3, r0 - cmp r3, 0 - beq _0807B4BA - cmp r2, r1 - bge _0807B4B4 - mov r0, sp - strb r6, [r0, 0x10] - b _0807B4C8 -_0807B4B4: - mov r0, sp - strb r6, [r0, 0x8] - b _0807B4C8 -_0807B4BA: - cmp r2, r1 - bge _0807B4C4 - mov r0, sp - strb r3, [r0, 0x8] - b _0807B4C8 -_0807B4C4: - mov r0, sp - strb r3, [r0, 0x10] -_0807B4C8: - movs r1, 0x3 - mov r10, r1 - mov r0, r9 - adds r1, r7, 0 - bl sub_8071518 - lsls r0, 24 - cmp r0, 0 - bne _0807B4E4 - adds r0, r5, 0 - adds r0, 0x7B - ldrb r0, [r0] - cmp r0, 0 - beq _0807B4E8 -_0807B4E4: - movs r2, 0x5 - mov r10, r2 -_0807B4E8: - movs r6, 0x1 - adds r3, r5, 0 - adds r3, 0x44 - str r3, [sp, 0x34] - cmp r6, r10 - bge _0807B53C - mov r3, sp - mov r4, sp - adds r4, 0xA - add r7, sp, 0x8 -_0807B4FC: - lsls r0, r6, 3 - add r2, sp, 0x4 - adds r2, r0 - ldr r1, _0807B598 - lsls r0, r6, 2 - adds r0, r1 - ldr r1, [r0] - add r1, r8 - movs r0, 0x7 - ands r1, r0 - str r1, [r2] - mov r0, r9 - adds r2, r4, 0 - str r3, [sp, 0x38] - bl sub_8071214 - strb r0, [r7, 0x1] - lsls r0, 24 - ldr r3, [sp, 0x38] - cmp r0, 0 - bne _0807B532 - ldrb r0, [r4] - cmp r0, 0 - bne _0807B532 - movs r0, 0x1 - strb r0, [r3, 0x10] - strb r0, [r3, 0x8] -_0807B532: - adds r4, 0x8 - adds r7, 0x8 - adds r6, 0x1 - cmp r6, r10 - blt _0807B4FC -_0807B53C: - movs r6, 0x1 - cmp r6, r10 - bge _0807B56E - adds r3, r5, 0 - adds r3, 0x79 - add r1, sp, 0x8 - movs r4, 0x8 - movs r7, 0x1 -_0807B54C: - adds r2, r4, 0 - ldrb r0, [r1, 0x1] - cmp r0, 0 - beq _0807B55A - ldrb r0, [r1] - cmp r0, 0 - bne _0807B5A0 -_0807B55A: - ldrb r0, [r1, 0x2] - cmp r0, 0 - beq _0807B562 - strb r7, [r3] -_0807B562: - adds r1, 0x8 - adds r4, r2, 0 - adds r4, 0x8 - adds r6, 0x1 - cmp r6, r10 - blt _0807B54C -_0807B56E: - ldr r0, [sp, 0x34] - movs r1, 0x1 - bl sub_8044C94 - ldr r1, _0807B59C - adds r0, r5, r1 - movs r1, 0 - movs r2, 0x1 - strb r2, [r0] - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _0807B5BC - adds r0, r5, 0 - adds r0, 0x79 - strb r1, [r0] - movs r2, 0xA2 - lsls r2, 1 - adds r0, r5, r2 - strb r1, [r0] - b _0807B5CE - .align 2, 0 -_0807B598: .4byte gUnknown_80F4D04 -_0807B59C: .4byte 0x00000147 -_0807B5A0: - movs r3, 0x2 - ldrsh r1, [r5, r3] - ldr r0, [sp, 0x34] - bl sub_8044CA0 - add r0, sp, 0x4 - adds r0, r4 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - adds r1, r5, 0 - adds r1, 0x46 - strb r0, [r1] - b _0807B5CE -_0807B5BC: - adds r0, r5, 0 - adds r0, 0x79 - ldrb r0, [r0] - cmp r0, 0 - beq _0807B5CE - movs r1, 0xA2 - lsls r1, 1 - adds r0, r5, r1 - strb r2, [r0] -_0807B5CE: - add sp, 0x3C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807B2D8 - - thumb_func_start sub_807B5E0 -sub_807B5E0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - adds r7, r0, 0 - ldr r0, _0807B61C - str r0, [sp, 0x8] - ldr r1, [r7, 0x70] - str r1, [sp, 0x10] - adds r0, r7, 0 - bl sub_80450FC - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r0, _0807B620 - ldr r1, [r0] - ldr r2, _0807B624 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0807B62C - ldr r3, _0807B628 - adds r0, r1, r3 - movs r4, 0x14 - mov r9, r4 - b _0807B64C - .align 2, 0 -_0807B61C: .4byte 0x000f423f -_0807B620: .4byte gUnknown_203B418 -_0807B624: .4byte 0x000037fc -_0807B628: .4byte 0x000135cc -_0807B62C: - ldr r2, [sp, 0x10] - ldrb r0, [r2, 0x6] - cmp r0, 0 - beq _0807B644 - ldr r3, _0807B640 - adds r0, r1, r3 - movs r4, 0x4 - mov r9, r4 - b _0807B64C - .align 2, 0 -_0807B640: .4byte 0x0001357c -_0807B644: - ldr r2, _0807B790 - adds r0, r1, r2 - movs r3, 0x10 - mov r9, r3 -_0807B64C: - movs r4, 0 - str r4, [sp, 0xC] - movs r1, 0xFF - str r1, [sp, 0x4] - mov r8, r4 - cmp r4, r9 - bge _0807B6D8 - adds r6, r0, 0 -_0807B65C: - ldr r4, [r6] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807B6CE - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - beq _0807B6CE - ldr r0, _0807B794 - ldr r0, [r0] - ldr r2, _0807B798 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0807B69A - adds r0, r7, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0807B6CE -_0807B69A: - adds r1, r4, 0x4 - adds r0, r7, 0x4 - bl sub_8098434 - ldr r3, [sp, 0x8] - cmp r3, r0 - ble _0807B6CE - str r0, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r4, 0 - bl sub_80450FC - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - ldr r1, [sp, 0x10] - adds r1, 0x88 - ldr r4, [sp, 0xC] - ldr r0, [r4, 0x4] - str r0, [r1] - ldr r0, [sp, 0x10] - movs r2, 0xB6 - lsls r2, 1 - adds r1, r0, r2 - ldr r0, [r4, 0x4] - str r0, [r1] -_0807B6CE: - adds r6, 0x4 - movs r3, 0x1 - add r8, r3 - cmp r8, r9 - blt _0807B65C -_0807B6D8: - ldr r0, _0807B79C - ldr r4, [sp, 0x8] - cmp r4, r0 - bne _0807B6E2 - b _0807B906 -_0807B6E2: - ldr r0, [sp, 0x10] - adds r0, 0x88 - str r0, [sp, 0x28] - ldr r1, [sp, 0x10] - adds r1, 0x78 - str r1, [sp, 0x24] - ldr r2, [sp, 0x4] - cmp r10, r2 - beq _0807B6F6 - b _0807B8E0 -_0807B6F6: - mov r3, r10 - cmp r3, 0xFF - bne _0807B6FE - b _0807B8E0 -_0807B6FE: - movs r4, 0x4 - ldrsh r0, [r7, r4] - movs r2, 0x6 - ldrsh r1, [r7, r2] - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0807B7B2 - ldrh r0, [r7, 0x6] - lsls r0, 16 - ldrh r5, [r7, 0x4] - orrs r5, r0 - movs r4, 0 -_0807B71E: - ldr r1, _0807B7A0 - lsls r0, r4, 2 - adds r0, r1 - ldrh r1, [r0] - ldrh r3, [r7, 0x4] - adds r1, r3 - lsls r1, 16 - ldrh r0, [r0, 0x2] - ldrh r2, [r7, 0x6] - adds r0, r2 - lsls r0, 16 - lsrs r5, r1, 16 - orrs r5, r0 - lsls r0, r5, 16 - asrs r0, 16 - asrs r1, r5, 16 - bl sub_804954C - ldrb r0, [r0, 0x9] - cmp r0, r10 - beq _0807B758 - adds r0, r7, 0 - adds r1, r4, 0 - mov r2, sp - bl sub_8071214 - lsls r0, 24 - cmp r0, 0 - bne _0807B75E -_0807B758: - adds r4, 0x1 - cmp r4, 0x7 - ble _0807B71E -_0807B75E: - cmp r4, 0x8 - bne _0807B7A4 - movs r0, 0x8 - bl sub_8084100 - adds r4, r0, 0 - movs r0, 0x6 - ldr r3, [sp, 0x24] - strb r0, [r3] - ldr r0, _0807B7A0 - lsls r1, r4, 2 - adds r1, r0 - ldrh r0, [r1] - ldrh r4, [r7, 0x4] - adds r0, r4 - ldr r2, [sp, 0x28] - strh r0, [r2] - ldrh r0, [r1, 0x2] - ldrh r7, [r7, 0x6] - adds r0, r7 - ldr r1, [sp, 0x10] - adds r1, 0x8A - strh r0, [r1] - movs r0, 0x1 - b _0807B910 - .align 2, 0 -_0807B790: .4byte 0x0001358c -_0807B794: .4byte gUnknown_203B418 -_0807B798: .4byte 0x000037fc -_0807B79C: .4byte 0x000f423f -_0807B7A0: .4byte gUnknown_80F4448 -_0807B7A4: - movs r0, 0x5 - ldr r3, [sp, 0x24] - strb r0, [r3] - ldr r4, [sp, 0x28] - str r5, [r4] - movs r0, 0x1 - b _0807B910 -_0807B7B2: - ldr r0, _0807B8D0 - mov r2, r10 - lsls r1, r2, 7 - ldr r3, _0807B8D4 - adds r1, r3 - ldr r0, [r0] - adds r1, r0, r1 - str r1, [sp, 0x18] - lsls r1, r2, 1 - ldr r4, _0807B8D8 - adds r0, r4 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - str r1, [sp, 0x14] - ldr r3, _0807B8DC - str r3, [sp, 0x20] - movs r4, 0 - str r4, [sp, 0x1C] - ldr r0, [sp, 0xC] - movs r1, 0x4 - ldrsh r3, [r0, r1] - movs r2, 0x4 - ldrsh r0, [r7, r2] - subs r2, r3, r0 - cmp r2, 0 - bge _0807B7EA - negs r2, r2 -_0807B7EA: - ldr r4, [sp, 0xC] - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r4, 0x6 - ldrsh r0, [r7, r4] - subs r1, r0 - mov r8, r1 - cmp r1, 0 - bge _0807B802 - mov r0, r8 - negs r0, r0 - mov r8, r0 -_0807B802: - cmp r8, r2 - bge _0807B808 - mov r8, r2 -_0807B808: - movs r1, 0 - mov r9, r1 - ldr r2, [sp, 0x10] - adds r2, 0x8A - str r2, [sp, 0x2C] - ldr r4, [sp, 0x1C] - ldr r0, [sp, 0x14] - cmp r4, r0 - bge _0807B8AA - mov r10, r3 - ldr r6, [sp, 0x18] -_0807B81E: - movs r1, 0 - ldrsh r3, [r6, r1] - mov r2, r10 - subs r0, r2, r3 - cmp r0, 0 - bge _0807B82C - negs r0, r0 -_0807B82C: - ldr r4, [sp, 0xC] - movs r1, 0x6 - ldrsh r4, [r4, r1] - mov r12, r4 - movs r4, 0x2 - ldrsh r2, [r6, r4] - mov r4, r12 - subs r1, r4, r2 - cmp r1, 0 - bge _0807B842 - negs r1, r1 -_0807B842: - cmp r1, r0 - bge _0807B848 - adds r1, r0, 0 -_0807B848: - movs r0, 0x4 - ldrsh r4, [r7, r0] - subs r0, r3, r4 - movs r3, 0x6 - ldrsh r5, [r7, r3] - subs r3, r2, r5 - movs r2, 0x1 - negs r2, r2 - cmp r0, r2 - bge _0807B85E - adds r0, r2, 0 -_0807B85E: - cmp r3, r2 - bge _0807B864 - adds r3, r2, 0 -_0807B864: - cmp r0, 0x1 - ble _0807B86A - movs r0, 0x1 -_0807B86A: - cmp r3, 0x1 - ble _0807B870 - movs r3, 0x1 -_0807B870: - adds r0, r4, r0 - mov r4, r10 - subs r2, r4, r0 - cmp r2, 0 - bge _0807B87C - negs r2, r2 -_0807B87C: - adds r0, r5, r3 - mov r3, r12 - subs r0, r3, r0 - cmp r0, 0 - bge _0807B888 - negs r0, r0 -_0807B888: - cmp r0, r2 - bge _0807B88E - adds r0, r2, 0 -_0807B88E: - cmp r0, r8 - blt _0807B89E - ldr r4, [sp, 0x20] - cmp r4, r1 - bge _0807B89E - mov r0, r9 - str r0, [sp, 0x1C] - str r1, [sp, 0x20] -_0807B89E: - adds r6, 0x4 - movs r1, 0x1 - add r9, r1 - ldr r2, [sp, 0x14] - cmp r9, r2 - blt _0807B81E -_0807B8AA: - ldr r3, [sp, 0x20] - cmp r3, 0 - blt _0807B8E0 - movs r0, 0x5 - ldr r4, [sp, 0x24] - strb r0, [r4] - ldr r1, [sp, 0x1C] - lsls r0, r1, 2 - ldr r2, [sp, 0x18] - adds r0, r2 - ldrh r1, [r0] - ldr r3, [sp, 0x28] - strh r1, [r3] - ldrh r0, [r0, 0x2] - ldr r4, [sp, 0x2C] - strh r0, [r4] - movs r0, 0x1 - b _0807B910 - .align 2, 0 -_0807B8D0: .4byte gUnknown_203B418 -_0807B8D4: .4byte 0x00010884 -_0807B8D8: .4byte 0x00010844 -_0807B8DC: .4byte 0xfff0bdc1 -_0807B8E0: - movs r0, 0x5 - ldr r1, [sp, 0x24] - strb r0, [r1] - ldr r2, [sp, 0xC] - ldrh r1, [r2, 0x4] - ldrh r0, [r7, 0x4] - subs r1, r0 - subs r0, r1 - ldr r3, [sp, 0x28] - strh r0, [r3] - ldrh r0, [r2, 0x6] - ldrh r1, [r7, 0x6] - subs r0, r1 - subs r1, r0 - ldr r0, [sp, 0x10] - adds r0, 0x8A - strh r1, [r0] - movs r0, 0x1 - b _0807B910 -_0807B906: - adds r0, r7, 0 - bl sub_807B920 - lsls r0, 24 - lsrs r0, 24 -_0807B910: - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_807B5E0 - - thumb_func_start sub_807B920 -sub_807B920: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - adds r6, r0, 0 - ldr r7, [r6, 0x70] - bl sub_80450FC - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0xFF - bne _0807B9DC - movs r0, 0 - str r0, [sp, 0x4] - adds r4, r7, 0 - adds r4, 0x46 - ldrb r0, [r4] - adds r0, 0x4 - mov r8, r0 - movs r0, 0x7 - mov r1, r8 - ands r1, r0 - mov r8, r1 - adds r0, r6, 0 - bl sub_807138C - lsls r0, 24 - mov r9, r4 - cmp r0, 0 - beq _0807B96C - movs r0, 0x8 - bl sub_8084100 - strb r0, [r4] - movs r2, 0x1 - str r2, [sp, 0x4] -_0807B96C: - movs r3, 0 - movs r4, 0x78 - adds r4, r7 - mov r10, r4 - adds r0, r7, 0 - adds r0, 0x88 - str r0, [sp, 0x8] - adds r7, 0x8A - ldr r5, _0807B9D4 -_0807B97E: - mov r1, r9 - ldrb r0, [r1] - ldr r1, [r5] - adds r4, r0, r1 - movs r0, 0x7 - ands r4, r0 - ldr r2, [sp, 0x4] - cmp r2, 0 - beq _0807B994 - cmp r4, r8 - beq _0807B9AA -_0807B994: - adds r0, r6, 0 - adds r1, r4, 0 - mov r2, sp - str r3, [sp, 0xC] - bl sub_8071214 - lsls r0, 24 - ldr r3, [sp, 0xC] - cmp r0, 0 - beq _0807B9AA - b _0807BB42 -_0807B9AA: - adds r5, 0x4 - adds r3, 0x1 - cmp r3, 0x7 - ble _0807B97E - movs r0, 0x8 - bl sub_8084100 - movs r1, 0x6 - mov r3, r10 - strb r1, [r3] - ldr r1, _0807B9D8 - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0] - ldrh r4, [r6, 0x4] - adds r1, r4 - ldr r2, [sp, 0x8] - strh r1, [r2] - ldrh r0, [r0, 0x2] - b _0807BB5A - .align 2, 0 -_0807B9D4: .4byte gUnknown_80F4D04 -_0807B9D8: .4byte gUnknown_80F4448 -_0807B9DC: - ldr r0, _0807BA30 - ldr r2, [r0] - lsls r1, r3, 1 - ldr r4, _0807BA34 - adds r0, r2, r4 - adds r0, r1 - movs r4, 0 - ldrsh r1, [r0, r4] - mov r8, r1 - lsls r0, r3, 7 - ldr r1, _0807BA38 - adds r0, r1 - adds r2, r0 - mov r9, r2 - movs r2, 0x8A - lsls r2, 1 - adds r0, r7, r2 - ldr r0, [r0] - cmp r0, 0 - beq _0807BA40 - movs r0, 0x8 - bl sub_8084100 - adds r2, r7, 0 - adds r2, 0x78 - movs r1, 0x6 - strb r1, [r2] - ldr r1, _0807BA3C - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0] - ldrh r3, [r6, 0x4] - adds r1, r3 - adds r2, 0x10 - strh r1, [r2] - ldrh r0, [r0, 0x2] - ldrh r6, [r6, 0x6] - adds r0, r6 - adds r1, r7, 0 - adds r1, 0x8A - strh r0, [r1] - b _0807BB60 - .align 2, 0 -_0807BA30: .4byte gUnknown_203B418 -_0807BA34: .4byte 0x00010844 -_0807BA38: .4byte 0x00010884 -_0807BA3C: .4byte gUnknown_80F4448 -_0807BA40: - adds r0, r7, 0 - adds r0, 0x78 - ldrb r1, [r0] - mov r10, r0 - cmp r1, 0x4 - beq _0807BAA2 - mov r4, r8 - cmp r4, 0 - bne _0807BA84 - movs r0, 0x8 - bl sub_8084100 - adds r4, r0, 0 - movs r0, 0x6 - mov r1, r10 - strb r0, [r1] - ldr r0, _0807BA80 - lsls r2, r4, 2 - adds r2, r0 - ldrh r0, [r2] - ldrh r3, [r6, 0x4] - adds r0, r3 - adds r1, r7, 0 - adds r1, 0x88 - strh r0, [r1] - ldrh r0, [r2, 0x2] - ldrh r6, [r6, 0x6] - adds r0, r6 - adds r1, 0x2 - strh r0, [r1] - b _0807BB60 - .align 2, 0 -_0807BA80: .4byte gUnknown_80F4448 -_0807BA84: - movs r5, 0 -_0807BA86: - mov r0, r8 - bl sub_8084100 - adds r4, r0, 0 - ldr r0, [r6, 0x4] - lsls r1, r4, 2 - mov r4, r9 - adds r2, r1, r4 - ldr r1, [r2] - cmp r0, r1 - bne _0807BB18 - adds r5, 0x1 - cmp r5, 0x9 - ble _0807BA86 -_0807BAA2: - movs r1, 0x4 - ldrsh r0, [r6, r1] - movs r2, 0x6 - ldrsh r1, [r6, r2] - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0807BB60 - movs r0, 0x8 - bl sub_8084100 - adds r4, r0, 0 - movs r3, 0 - mov r9, r3 -_0807BAC4: - movs r0, 0x7 - ands r4, r0 - movs r0, 0x4 - ldrsh r2, [r6, r0] - ldr r0, _0807BB14 - lsls r1, r4, 2 - adds r1, r0 - movs r3, 0 - ldrsh r0, [r1, r3] - adds r2, r0 - mov r8, r2 - movs r0, 0x6 - ldrsh r2, [r6, r0] - movs r3, 0x2 - ldrsh r0, [r1, r3] - adds r5, r2, r0 - mov r0, r8 - adds r1, r5, 0 - bl sub_804954C - ldrb r0, [r0, 0x9] - cmp r0, 0xFF - bne _0807BB04 - adds r0, r6, 0 - adds r1, r4, 0 - mov r2, sp - adds r2, 0x1 - bl sub_8071214 - lsls r0, 24 - cmp r0, 0 - bne _0807BB2E -_0807BB04: - movs r0, 0x1 - add r9, r0 - adds r4, 0x1 - mov r1, r9 - cmp r1, 0x7 - ble _0807BAC4 - b _0807BB60 - .align 2, 0 -_0807BB14: .4byte gUnknown_80F4448 -_0807BB18: - movs r0, 0x4 - mov r3, r10 - strb r0, [r3] - ldrh r1, [r2] - adds r0, r7, 0 - adds r0, 0x88 - strh r1, [r0] - ldrh r1, [r2, 0x2] - adds r0, 0x2 - strh r1, [r0] - b _0807BB60 -_0807BB2E: - movs r0, 0x3 - mov r4, r10 - strb r0, [r4] - adds r0, r7, 0 - adds r0, 0x88 - mov r1, r8 - strh r1, [r0] - adds r0, 0x2 - strh r5, [r0] - b _0807BB60 -_0807BB42: - movs r0, 0x3 - mov r2, r10 - strb r0, [r2] - ldr r0, _0807BB74 - lsls r1, r4, 2 - adds r1, r0 - ldrh r0, [r1] - ldrh r3, [r6, 0x4] - adds r0, r3 - ldr r4, [sp, 0x8] - strh r0, [r4] - ldrh r0, [r1, 0x2] -_0807BB5A: - ldrh r6, [r6, 0x6] - adds r0, r6 - strh r0, [r7] -_0807BB60: - movs r0, 0x1 - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0807BB74: .4byte gUnknown_80F4448 - thumb_func_end sub_807B920 - - thumb_func_start sub_807BB78 -sub_807BB78: - ldr r3, [r0, 0x70] - adds r1, r3, 0 - adds r1, 0x78 - movs r2, 0 - strb r2, [r1] - adds r1, 0x10 - ldr r0, [r0, 0x4] - str r0, [r1] - adds r0, r3, 0 - adds r0, 0x80 - str r2, [r0] - subs r0, 0x4 - strh r2, [r0] - bx lr - thumb_func_end sub_807BB78 - - thumb_func_start sub_807BB94 -sub_807BB94: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x5C - mov r10, r0 - ldr r0, [r0, 0x70] - mov r8, r0 - mov r0, r10 - movs r1, 0 - bl sub_8070D04 - lsls r0, 24 - cmp r0, 0 - beq _0807BBB6 - b _0807C03A -_0807BBB6: - mov r0, r10 - movs r1, 0x1 - bl sub_8071518 - lsls r0, 24 - cmp r0, 0 - beq _0807BBC6 - b _0807C03A -_0807BBC6: - mov r0, r10 - movs r1, 0x8 - bl sub_80718AC - lsls r0, 24 - cmp r0, 0 - beq _0807BBD6 - b _0807C03A -_0807BBD6: - mov r0, r8 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x2 - bne _0807BBF2 - ldr r0, _0807BC70 - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_8084144 - lsls r0, 24 - cmp r0, 0 - beq _0807BBF2 - b _0807C03A -_0807BBF2: - mov r0, r8 - adds r0, 0xC0 - ldrb r1, [r0] - str r0, [sp, 0x50] - cmp r1, 0 - beq _0807BC7C - movs r5, 0 - movs r4, 0x8C - lsls r4, 1 - add r4, r8 -_0807BC06: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0807BC74 - mov r0, r10 - adds r1, r4, 0 - bl sub_80570AC - lsls r0, 24 - cmp r0, 0 - beq _0807BC74 - mov r0, r8 - adds r0, 0xC2 - ldrb r0, [r0] - cmp r0, r5 - bne _0807BC74 - mov r0, r8 - adds r0, 0x44 - movs r1, 0x15 - bl sub_8044C94 - adds r3, r5, 0 - mov r6, r8 - adds r6, 0x48 - cmp r5, 0 - bgt _0807BC3E - b _0807C006 -_0807BC3E: - ldrb r1, [r4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0807BC4A - b _0807C006 -_0807BC4A: - movs r4, 0x2 - lsls r0, r5, 3 - movs r2, 0x8C - lsls r2, 1 - adds r0, r2 - mov r7, r8 - adds r2, r0, r7 -_0807BC58: - subs r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bgt _0807BC62 - b _0807C006 -_0807BC62: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - bne _0807BC58 - b _0807C006 - .align 2, 0 -_0807BC70: .4byte gUnknown_80F4DB2 -_0807BC74: - adds r4, 0x8 - adds r5, 0x1 - cmp r5, 0x3 - ble _0807BC06 -_0807BC7C: - movs r0, 0 - str r0, [sp, 0x44] - movs r1, 0 - str r1, [sp, 0x40] - movs r2, 0x8C - lsls r2, 1 - add r2, r8 - movs r4, 0x1 - movs r3, 0x4 - movs r5, 0x3 -_0807BC90: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0807BCB0 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _0807BCA8 - ldr r7, [sp, 0x40] - adds r7, 0x1 - str r7, [sp, 0x40] -_0807BCA8: - ldrb r0, [r2, 0x4] - ldr r1, [sp, 0x44] - adds r1, r0 - str r1, [sp, 0x44] -_0807BCB0: - adds r2, 0x8 - subs r5, 0x1 - cmp r5, 0 - bge _0807BC90 - ldr r2, [sp, 0x44] - cmp r2, 0 - bne _0807BCF8 - add r4, sp, 0x2C - movs r1, 0xB0 - lsls r1, 1 - adds r0, r4, 0 - bl sub_8092A88 - mov r0, sp - mov r1, r10 - adds r2, r4, 0 - bl sub_807C04C - mov r0, sp - ldrb r0, [r0] - cmp r0, 0 - bne _0807BCDE - b _0807C03A -_0807BCDE: - mov r0, r8 - adds r0, 0x44 - movs r1, 0x17 - bl sub_8044C94 - mov r0, sp - ldrb r1, [r0, 0x1] - movs r0, 0x7 - ands r0, r1 - mov r1, r8 - adds r1, 0x46 - strb r0, [r1] - b _0807C008 -_0807BCF8: - mov r0, r10 - movs r1, 0xB - bl sub_80718D8 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x48] - mov r0, r10 - movs r1, 0x6 - bl sub_80718D8 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - str r1, [sp, 0x3C] - movs r7, 0 - str r7, [sp, 0x44] - mov r0, sp - adds r0, 0x28 - str r0, [sp, 0x4C] - adds r2, r0, 0 - movs r1, 0x1 - adds r0, 0x3 -_0807BD2A: - strb r1, [r0] - subs r0, 0x1 - cmp r0, r2 - bge _0807BD2A - ldr r1, [sp, 0x3C] - cmp r1, 0 - beq _0807BDC0 - movs r2, 0x63 - movs r4, 0 - movs r5, 0 - movs r3, 0x8C - lsls r3, 1 - add r3, r8 - b _0807BD98 -_0807BD46: - cmp r5, 0 - beq _0807BD7A - ldrb r1, [r3] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0807BD7A - adds r0, r4, 0x1 - adds r6, r5, 0x1 - cmp r0, r5 - bge _0807BD74 - cmp r2, 0x1 - bgt _0807BD74 - adds r1, r4, 0 - cmp r1, r5 - bge _0807BD74 - ldr r2, [sp, 0x4C] - movs r4, 0 -_0807BD6A: - adds r0, r2, r1 - strb r4, [r0] - adds r1, 0x1 - cmp r1, r5 - blt _0807BD6A -_0807BD74: - ldrb r2, [r3, 0x4] - adds r4, r5, 0 - b _0807BD86 -_0807BD7A: - ldrb r1, [r3, 0x4] - cmp r1, r2 - ble _0807BD82 - adds r1, r2, 0 -_0807BD82: - adds r2, r1, 0 - adds r6, r5, 0x1 -_0807BD86: - adds r5, r6, 0 - cmp r5, 0x3 - bgt _0807BDA2 - lsls r0, r5, 3 - movs r7, 0x8C - lsls r7, 1 - adds r0, r7 - mov r1, r8 - adds r3, r1, r0 -_0807BD98: - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0807BD46 -_0807BDA2: - adds r0, r4, 0x1 - cmp r0, r5 - bge _0807BDC0 - cmp r2, 0x1 - bgt _0807BDC0 - adds r1, r4, 0 - cmp r1, r5 - bge _0807BDC0 - ldr r2, [sp, 0x4C] - movs r3, 0 -_0807BDB6: - adds r0, r2, r1 - strb r3, [r0] - adds r1, 0x1 - cmp r1, r5 - blt _0807BDB6 -_0807BDC0: - movs r5, 0 - movs r2, 0 - str r2, [sp, 0x54] - add r4, sp, 0x4 - movs r7, 0x8C - lsls r7, 1 - add r7, r8 - adds r6, r7, 0 - mov r9, sp - mov r0, sp - str r0, [sp, 0x58] -_0807BDD6: - movs r2, 0 - mov r1, r9 - strb r2, [r1] - ldrb r1, [r7] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0807BE64 - ldr r1, [sp, 0x4C] - adds r0, r1, r5 - ldrb r0, [r0] - cmp r0, 0 - beq _0807BE64 - mov r0, r10 - adds r1, r5, 0 - ldr r2, [sp, 0x3C] - bl sub_8057348 - lsls r0, 24 - cmp r0, 0 - beq _0807BE64 - ldrb r1, [r7] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0807BE64 - movs r0, 0x1 - mov r2, r9 - strb r0, [r2] - ldr r1, [sp, 0x50] - ldrb r0, [r1] - cmp r0, 0xB - bne _0807BE38 - ldrh r0, [r7, 0x2] - cmp r0, 0x80 - bne _0807BE24 - movs r2, 0 - str r2, [r4] - b _0807BE64 -_0807BE24: - mov r0, r10 - adds r1, r6, 0 - bl sub_8071A1C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - beq _0807BE4A - movs r0, 0x1 - b _0807BE54 -_0807BE38: - ldr r1, [sp, 0x48] - cmp r1, 0 - beq _0807BE4A - ldr r0, [sp, 0x58] - mov r1, r10 - adds r2, r6, 0 - bl sub_807C04C - b _0807BE54 -_0807BE4A: - adds r0, r6, 0 - bl sub_8092B90 - lsls r0, 24 - lsrs r0, 24 -_0807BE54: - str r0, [r4] - add r0, sp, 0x4 - ldr r2, [sp, 0x54] - adds r0, r2 - ldr r0, [r0] - ldr r1, [sp, 0x44] - adds r1, r0 - str r1, [sp, 0x44] -_0807BE64: - ldr r2, [sp, 0x54] - adds r2, 0x8 - str r2, [sp, 0x54] - adds r4, 0x8 - adds r7, 0x8 - adds r6, 0x8 - movs r0, 0x8 - add r9, r0 - ldr r1, [sp, 0x58] - adds r1, 0x8 - str r1, [sp, 0x58] - adds r5, 0x1 - cmp r5, 0x3 - ble _0807BDD6 - movs r0, 0 - str r0, [sp, 0x24] - mov r0, r10 - movs r1, 0x17 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _0807BECA - ldr r2, [sp, 0x50] - ldrb r0, [r2] - cmp r0, 0xB - beq _0807BECA - add r0, sp, 0x20 - movs r1, 0x1 - strb r1, [r0] - ldrb r0, [r2] - cmp r0, 0xB - bne _0807BEAA - str r1, [sp, 0x24] - b _0807BEC2 -_0807BEAA: - ldr r7, [sp, 0x48] - cmp r7, 0 - beq _0807BEB4 - movs r0, 0x2 - b _0807BEC0 -_0807BEB4: - ldr r0, _0807BEE8 - ldr r2, [sp, 0x40] - lsls r1, r2, 1 - adds r1, r0 - movs r7, 0 - ldrsh r0, [r1, r7] -_0807BEC0: - str r0, [sp, 0x24] -_0807BEC2: - ldr r0, [sp, 0x24] - ldr r1, [sp, 0x44] - adds r1, r0 - str r1, [sp, 0x44] -_0807BECA: - ldr r2, [sp, 0x48] - cmp r2, 0 - beq _0807BF2A - movs r5, 0 - movs r7, 0 - str r7, [sp, 0x44] - add r0, sp, 0x4 - adds r3, r0, 0 - mov r2, sp - movs r4, 0x4 -_0807BEDE: - ldrb r1, [r2] - cmp r1, 0 - bne _0807BEEC - str r1, [r3] - b _0807BEF4 - .align 2, 0 -_0807BEE8: .4byte gUnknown_80F4E22 -_0807BEEC: - ldr r1, [r3] - cmp r5, r1 - bge _0807BEF4 - adds r5, r1, 0 -_0807BEF4: - adds r3, 0x8 - adds r2, 0x8 - subs r4, 0x1 - cmp r4, 0 - bge _0807BEDE - movs r4, 0 - movs r6, 0 - adds r1, r0, 0 - adds r3, r1, 0 - mov r2, sp -_0807BF08: - ldrb r0, [r2] - cmp r0, 0 - beq _0807BF1E - ldr r0, [r1] - cmp r5, r0 - beq _0807BF16 - str r6, [r1] -_0807BF16: - ldr r0, [r3] - ldr r7, [sp, 0x44] - adds r7, r0 - str r7, [sp, 0x44] -_0807BF1E: - adds r1, 0x8 - adds r3, 0x8 - adds r2, 0x8 - adds r4, 0x1 - cmp r4, 0x4 - ble _0807BF08 -_0807BF2A: - ldr r0, [sp, 0x44] - cmp r0, 0 - bne _0807BF32 - b _0807C03A -_0807BF32: - bl sub_8084100 - str r0, [sp, 0x38] - movs r1, 0 - mov r9, r1 - mov r0, r10 - movs r1, 0x17 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _0807BF5A - add r1, sp, 0x34 - mov r0, r10 - movs r2, 0x1 - bl sub_807C854 - lsls r0, 24 - lsrs r6, r0, 24 - b _0807BF5E -_0807BF5A: - movs r6, 0 - str r6, [sp, 0x34] -_0807BF5E: - movs r5, 0 - mov r4, sp - movs r7, 0 -_0807BF64: - ldrb r0, [r4] - cmp r0, 0 - beq _0807C010 - add r0, sp, 0x4 - adds r0, r7 - ldr r0, [r0] - cmp r0, 0 - beq _0807C010 - add r9, r0 - ldr r2, [sp, 0x38] - cmp r9, r2 - blt _0807C010 - cmp r5, 0x4 - bne _0807BF9C - cmp r6, 0 - beq _0807C03A - mov r0, r8 - adds r0, 0x44 - movs r1, 0x32 - bl sub_8044C94 - ldr r0, [sp, 0x34] - movs r1, 0x7 - ands r0, r1 - mov r1, r8 - adds r1, 0x46 - strb r0, [r1] - b _0807C008 -_0807BF9C: - movs r0, 0x8C - lsls r0, 1 - mov r9, r0 - adds r2, r7, r0 - add r2, r8 - adds r0, r4, 0 - mov r1, r10 - bl sub_807C04C - ldrb r0, [r4] - cmp r0, 0 - beq _0807C01A - mov r0, r8 - adds r0, 0x44 - movs r1, 0x15 - bl sub_8044C94 - adds r3, r5, 0 - mov r6, r8 - adds r6, 0x48 - movs r1, 0x46 - add r1, r8 - mov r12, r1 - cmp r5, 0 - ble _0807BFFC - mov r2, r8 - adds r0, r2, r7 - add r0, r9 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0807BFFC - movs r7, 0x2 - lsls r0, r5, 3 - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - adds r2, r0, r2 -_0807BFEA: - subs r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - ble _0807BFFC - ldrb r1, [r2] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - bne _0807BFEA -_0807BFFC: - ldrb r1, [r4, 0x1] - movs r0, 0x7 - ands r0, r1 - mov r2, r12 - strb r0, [r2] -_0807C006: - strb r3, [r6] -_0807C008: - mov r0, r10 - bl sub_8069DCC - b _0807C03A -_0807C010: - adds r4, 0x8 - adds r7, 0x8 - adds r5, 0x1 - cmp r5, 0x4 - ble _0807BF64 -_0807C01A: - cmp r6, 0 - beq _0807C03A - mov r0, r8 - adds r0, 0x44 - movs r1, 0x32 - bl sub_8044C94 - ldr r0, [sp, 0x34] - movs r1, 0x7 - ands r0, r1 - mov r1, r8 - adds r1, 0x46 - strb r0, [r1] - mov r0, r10 - bl sub_8069DCC -_0807C03A: - add sp, 0x5C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807BB94 - - thumb_func_start sub_807C04C -sub_807C04C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - str r0, [sp, 0x8] - adds r6, r1, 0 - mov r10, r2 - movs r0, 0x1 - str r0, [sp, 0x10] - ldr r4, [r6, 0x70] - movs r1, 0 - mov r8, r1 - ldr r1, _0807C0C8 - movs r2, 0 - adds r0, r1, 0x7 -_0807C06E: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _0807C06E - adds r0, r6, 0 - mov r1, r10 - movs r2, 0x1 - bl sub_807CD64 - lsls r0, 16 - asrs r0, 16 - str r0, [sp, 0xC] - adds r0, r6, 0 - movs r1, 0x8 - bl sub_80718D8 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x14] - movs r0, 0 - ldr r2, [sp, 0x8] - strb r0, [r2] - adds r0, r4, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x5 - bne _0807C0B0 - mov r0, r10 - bl sub_8092C54 - lsls r0, 24 - cmp r0, 0 - beq _0807C0C4 -_0807C0B0: - ldr r3, [sp, 0x14] - cmp r3, 0 - beq _0807C0CC - adds r0, r6, 0 - mov r1, r10 - bl sub_805C498 - lsls r0, 24 - cmp r0, 0 - bne _0807C0CC -_0807C0C4: - movs r0, 0x1 - b _0807C48C - .align 2, 0 -_0807C0C8: .4byte gUnknown_202F380 -_0807C0CC: - movs r0, 0xF0 - ldr r1, [sp, 0xC] - ands r0, r1 - cmp r0, 0 - beq _0807C0DE - cmp r0, 0x10 - beq _0807C0DE - cmp r0, 0x20 - bne _0807C19C -_0807C0DE: - adds r0, r4, 0 - adds r0, 0xE8 - ldrb r1, [r0] - cmp r1, 0x1 - bne _0807C128 - subs r0, 0xA2 - ldrb r7, [r0] - ldr r0, _0807C118 - adds r0, r7, r0 - ldrb r3, [r0] - cmp r3, 0 - beq _0807C0F8 - b _0807C3F6 -_0807C0F8: - strb r1, [r0] - ldr r0, _0807C11C - add r0, r8 - strb r7, [r0] - ldr r0, _0807C120 - mov r4, r8 - lsls r2, r4, 2 - adds r0, r2, r0 - movs r1, 0x63 - str r1, [r0] - ldr r0, _0807C124 - adds r2, r0 - str r3, [r2] - movs r0, 0x1 - add r8, r0 - b _0807C3F6 - .align 2, 0 -_0807C118: .4byte gUnknown_202F380 -_0807C11C: .4byte gUnknown_202F388 -_0807C120: .4byte gUnknown_202F390 -_0807C124: .4byte gUnknown_202F3B0 -_0807C128: - movs r7, 0 - movs r0, 0xF0 - ldr r1, [sp, 0xC] - ands r0, r1 - lsls r5, r0, 16 -_0807C132: - movs r2, 0x4 - ldrsh r0, [r6, r2] - ldr r1, _0807C198 - lsls r2, r7, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r4, 0x6 - ldrsh r1, [r6, r4] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - ldr r4, [r0, 0x10] - cmp r4, 0 - beq _0807C18E - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0807C18E - asrs r0, r5, 16 - cmp r0, 0x10 - beq _0807C178 - cmp r0, 0x20 - beq _0807C178 - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8071138 - lsls r0, 24 - cmp r0, 0 - beq _0807C18E -_0807C178: - mov r0, r10 - str r0, [sp] - ldr r1, [sp, 0x14] - str r1, [sp, 0x4] - mov r0, r8 - ldr r1, [sp, 0xC] - adds r2, r6, 0 - adds r3, r4, 0 - bl sub_807C580 - mov r8, r0 -_0807C18E: - adds r7, 0x1 - cmp r7, 0x7 - ble _0807C132 - b _0807C3F6 - .align 2, 0 -_0807C198: .4byte gUnknown_80F4448 -_0807C19C: - cmp r0, 0x30 - bne _0807C1F0 - movs r5, 0 -_0807C1A2: - ldr r0, _0807C1E8 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0807C1EC - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807C1E0 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - beq _0807C1E0 - mov r3, r10 - str r3, [sp] - ldr r0, [sp, 0x14] - str r0, [sp, 0x4] - mov r0, r8 - ldr r1, [sp, 0xC] - adds r2, r6, 0 - adds r3, r4, 0 - bl sub_807C580 - mov r8, r0 -_0807C1E0: - adds r5, 0x1 - cmp r5, 0x13 - ble _0807C1A2 - b _0807C3F6 - .align 2, 0 -_0807C1E8: .4byte gUnknown_203B418 -_0807C1EC: .4byte 0x000135cc -_0807C1F0: - cmp r0, 0x40 - bne _0807C2A8 - movs r7, 0 - ldr r1, _0807C2A4 - mov r9, r1 -_0807C1FA: - movs r2, 0x4 - ldrsh r0, [r6, r2] - mov r3, r9 - movs r4, 0 - ldrsh r1, [r3, r4] - adds r0, r1 - movs r2, 0x6 - ldrsh r1, [r6, r2] - movs r4, 0x2 - ldrsh r2, [r3, r4] - adds r1, r2 - bl sub_804954C - adds r4, r0, 0 - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8071138 - lsls r0, 24 - cmp r0, 0 - beq _0807C296 - ldr r5, [r4, 0x10] - cmp r5, 0 - beq _0807C250 - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0807C250 - mov r4, r8 - mov r0, r10 - str r0, [sp] - ldr r1, [sp, 0x14] - str r1, [sp, 0x4] - adds r0, r4, 0 - ldr r1, [sp, 0xC] - adds r2, r6, 0 - adds r3, r5, 0 - bl sub_807C580 - mov r8, r0 - cmp r4, r8 - bne _0807C296 -_0807C250: - movs r2, 0x4 - ldrsh r0, [r6, r2] - mov r3, r9 - movs r4, 0 - ldrsh r1, [r3, r4] - lsls r1, 1 - adds r0, r1 - movs r2, 0x6 - ldrsh r1, [r6, r2] - movs r4, 0x2 - ldrsh r2, [r3, r4] - lsls r2, 1 - adds r1, r2 - bl sub_804954C - adds r4, r0, 0 - ldr r5, [r4, 0x10] - cmp r5, 0 - beq _0807C296 - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0807C296 - mov r0, r10 - str r0, [sp] - ldr r1, [sp, 0x14] - str r1, [sp, 0x4] - mov r0, r8 - ldr r1, [sp, 0xC] - adds r2, r6, 0 - adds r3, r5, 0 - bl sub_807C580 - mov r8, r0 -_0807C296: - movs r2, 0x4 - add r9, r2 - adds r7, 0x1 - cmp r7, 0x7 - ble _0807C1FA - b _0807C3F6 - .align 2, 0 -_0807C2A4: .4byte gUnknown_80F4448 -_0807C2A8: - cmp r0, 0x50 - beq _0807C2B0 - cmp r0, 0x80 - bne _0807C394 -_0807C2B0: - movs r3, 0x1 - str r3, [sp, 0x18] - cmp r0, 0x50 - bne _0807C2BC - movs r4, 0xA - str r4, [sp, 0x18] -_0807C2BC: - movs r0, 0 - mov r9, r0 -_0807C2C0: - ldr r0, _0807C37C - ldr r0, [r0] - mov r2, r9 - lsls r1, r2, 2 - ldr r3, _0807C380 - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807C370 - cmp r6, r4 - beq _0807C370 - adds r1, r4, 0x4 - adds r0, r6, 0x4 - bl sub_80983D8 - adds r5, r0, 0 - ldr r0, _0807C384 - adds r7, r5, r0 - ldrb r0, [r7] - cmp r0, 0 - bne _0807C370 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - beq _0807C370 - adds r0, r6, 0 - adds r1, r4, 0 - ldr r2, [sp, 0x18] - bl sub_807C4A0 - lsls r0, 24 - cmp r0, 0 - beq _0807C370 - ldr r0, [sp, 0x14] - str r0, [sp] - ldr r0, [sp, 0xC] - adds r1, r6, 0 - adds r2, r4, 0 - mov r3, r10 - bl sub_807C648 - lsls r0, 24 - cmp r0, 0 - beq _0807C370 - adds r0, r6, 0 - adds r1, r4, 0 - adds r2, r5, 0 - ldr r3, [sp, 0x18] - bl sub_807C9F8 - lsls r0, 24 - cmp r0, 0 - beq _0807C370 - movs r0, 0x1 - strb r0, [r7] - ldr r0, _0807C388 - add r0, r8 - strb r5, [r0] - adds r0, r6, 0 - mov r1, r10 - bl sub_8071A1C - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r6, 0 - ldr r1, [sp, 0xC] - adds r2, r4, 0 - bl sub_807C7AC - ldr r1, _0807C38C - mov r3, r8 - lsls r2, r3, 2 - adds r1, r2, r1 - str r0, [r1] - ldr r0, _0807C390 - adds r2, r0 - str r4, [r2] - movs r4, 0x1 - add r8, r4 -_0807C370: - movs r0, 0x1 - add r9, r0 - mov r1, r9 - cmp r1, 0x13 - ble _0807C2C0 - b _0807C3F6 - .align 2, 0 -_0807C37C: .4byte gUnknown_203B418 -_0807C380: .4byte 0x000135cc -_0807C384: .4byte gUnknown_202F380 -_0807C388: .4byte gUnknown_202F388 -_0807C38C: .4byte gUnknown_202F390 -_0807C390: .4byte gUnknown_202F3B0 -_0807C394: - cmp r0, 0x60 - bne _0807C3DC - movs r5, 0 -_0807C39A: - ldr r0, _0807C3D4 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0807C3D8 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807C3CA - mov r3, r10 - str r3, [sp] - ldr r0, [sp, 0x14] - str r0, [sp, 0x4] - mov r0, r8 - ldr r1, [sp, 0xC] - adds r2, r6, 0 - adds r3, r4, 0 - bl sub_807C580 - mov r8, r0 -_0807C3CA: - adds r5, 0x1 - cmp r5, 0x13 - ble _0807C39A - b _0807C3F6 - .align 2, 0 -_0807C3D4: .4byte gUnknown_203B418 -_0807C3D8: .4byte 0x000135cc -_0807C3DC: - cmp r0, 0x70 - bne _0807C3F6 - mov r1, r10 - str r1, [sp] - ldr r2, [sp, 0x14] - str r2, [sp, 0x4] - mov r0, r8 - ldr r1, [sp, 0xC] - adds r2, r6, 0 - adds r3, r6, 0 - bl sub_807C580 - mov r8, r0 -_0807C3F6: - mov r3, r8 - cmp r3, 0 - bne _0807C402 - ldr r4, [sp, 0x8] - strb r3, [r4] - b _0807C48A -_0807C402: - movs r4, 0 - movs r3, 0 - mov r0, r8 - cmp r0, 0 - ble _0807C420 - ldr r2, _0807C464 - mov r1, r8 -_0807C410: - ldr r0, [r2] - cmp r3, r0 - bge _0807C418 - adds r3, r0, 0 -_0807C418: - adds r2, 0x4 - subs r1, 0x1 - cmp r1, 0 - bne _0807C410 -_0807C420: - mov r1, r8 - cmp r1, 0 - ble _0807C43A - movs r5, 0 - ldr r2, _0807C464 -_0807C42A: - ldr r0, [r2] - cmp r3, r0 - beq _0807C432 - str r5, [r2] -_0807C432: - adds r2, 0x4 - subs r1, 0x1 - cmp r1, 0 - bne _0807C42A -_0807C43A: - str r3, [sp, 0x10] - mov r2, r8 - cmp r2, 0 - ble _0807C450 - ldr r2, _0807C464 - mov r1, r8 -_0807C446: - ldm r2!, {r0} - adds r4, r0 - subs r1, 0x1 - cmp r1, 0 - bne _0807C446 -_0807C450: - adds r0, r4, 0 - bl sub_8084100 - adds r2, r0, 0 - movs r1, 0 - cmp r1, r8 - bge _0807C478 - ldr r3, _0807C464 - b _0807C470 - .align 2, 0 -_0807C464: .4byte gUnknown_202F390 -_0807C468: - adds r3, 0x4 - adds r1, 0x1 - cmp r1, r8 - bge _0807C478 -_0807C470: - ldr r0, [r3] - subs r2, r0 - cmp r2, 0 - bge _0807C468 -_0807C478: - movs r0, 0x1 - ldr r3, [sp, 0x8] - strb r0, [r3] - ldr r0, _0807C49C - adds r0, r1, r0 - ldrb r0, [r0] - strb r0, [r3, 0x1] - movs r0, 0x8 - str r0, [r3, 0x4] -_0807C48A: - ldr r0, [sp, 0x10] -_0807C48C: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0807C49C: .4byte gUnknown_202F388 - thumb_func_end sub_807C04C - - thumb_func_start sub_807C4A0 -sub_807C4A0: - push {r4-r7,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x4 - ldrsh r1, [r4, r0] - movs r3, 0x4 - ldrsh r0, [r5, r3] - subs r3, r1, r0 - cmp r3, 0 - bge _0807C4B6 - negs r3, r3 -_0807C4B6: - movs r6, 0x6 - ldrsh r1, [r4, r6] - movs r7, 0x6 - ldrsh r0, [r5, r7] - subs r1, r0 - cmp r1, 0 - bge _0807C4C6 - negs r1, r1 -_0807C4C6: - adds r0, r1, 0 - cmp r1, r3 - bge _0807C4CE - adds r0, r3, 0 -_0807C4CE: - cmp r0, 0xA - bgt _0807C578 - cmp r0, r2 - bgt _0807C578 - movs r6, 0x1 - negs r6, r6 - cmp r3, r1 - bne _0807C516 - movs r0, 0x4 - ldrsh r1, [r4, r0] - movs r2, 0x4 - ldrsh r0, [r5, r2] - ldrh r2, [r4, 0x4] - ldrh r3, [r5, 0x4] - cmp r1, r0 - bge _0807C4FE - movs r6, 0x6 - ldrsh r1, [r4, r6] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - blt _0807C574 - cmp r1, r0 - bgt _0807C574 -_0807C4FE: - lsls r1, r2, 16 - lsls r0, r3, 16 - movs r6, 0x7 - cmp r1, r0 - ble _0807C570 - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r2, 0x6 - ldrsh r0, [r5, r2] - cmp r1, r0 - ble _0807C570 - b _0807C574 -_0807C516: - movs r3, 0x4 - ldrsh r1, [r4, r3] - movs r7, 0x4 - ldrsh r0, [r5, r7] - ldrh r2, [r4, 0x4] - ldrh r3, [r5, 0x4] - cmp r1, r0 - bne _0807C532 - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - blt _0807C574 -_0807C532: - lsls r1, r2, 16 - lsls r0, r3, 16 - cmp r1, r0 - bge _0807C546 - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - beq _0807C574 -_0807C546: - lsls r1, r2, 16 - lsls r0, r3, 16 - cmp r1, r0 - bne _0807C55A - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - bgt _0807C574 -_0807C55A: - lsls r1, r2, 16 - lsls r0, r3, 16 - cmp r1, r0 - ble _0807C570 - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r2, 0x6 - ldrsh r0, [r5, r2] - cmp r1, r0 - bne _0807C570 - movs r6, 0x6 -_0807C570: - cmp r6, 0 - blt _0807C578 -_0807C574: - movs r0, 0x1 - b _0807C57A -_0807C578: - movs r0, 0 -_0807C57A: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_807C4A0 - - thumb_func_start sub_807C580 -sub_807C580: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r0, 0 - adds r5, r2, 0 - adds r7, r3, 0 - ldr r0, [sp, 0x28] - lsls r1, 16 - asrs r1, 16 - mov r9, r1 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r2, [r5, 0x70] - ldr r1, [r5, 0x4] - ldr r0, [r7, 0x4] - cmp r1, r0 - beq _0807C5BC - movs r0, 0xF0 - mov r1, r9 - ands r0, r1 - cmp r0, 0x30 - beq _0807C5BC - cmp r0, 0x60 - beq _0807C5BC - cmp r0, 0x70 - bne _0807C5C4 -_0807C5BC: - adds r0, r2, 0 - adds r0, 0x46 - ldrb r4, [r0] - b _0807C5CE -_0807C5C4: - adds r0, r5, 0x4 - adds r1, r7, 0x4 - bl sub_80983D8 - adds r4, r0, 0 -_0807C5CE: - ldr r0, _0807C638 - adds r0, r4 - mov r8, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _0807C624 - mov r0, r10 - str r0, [sp] - mov r0, r9 - adds r1, r5, 0 - adds r2, r7, 0 - ldr r3, [sp, 0x24] - bl sub_807C648 - lsls r0, 24 - cmp r0, 0 - beq _0807C624 - movs r0, 0x1 - mov r1, r8 - strb r0, [r1] - ldr r0, _0807C63C - adds r0, r6, r0 - strb r4, [r0] - adds r0, r5, 0 - ldr r1, [sp, 0x24] - bl sub_8071A1C - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r5, 0 - mov r1, r9 - adds r2, r7, 0 - bl sub_807C7AC - ldr r1, _0807C640 - lsls r2, r6, 2 - adds r1, r2, r1 - str r0, [r1] - ldr r0, _0807C644 - adds r2, r0 - str r7, [r2] - adds r6, 0x1 -_0807C624: - adds r0, r6, 0 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0807C638: .4byte gUnknown_202F380 -_0807C63C: .4byte gUnknown_202F388 -_0807C640: .4byte gUnknown_202F390 -_0807C644: .4byte gUnknown_202F3B0 - thumb_func_end sub_807C580 - - thumb_func_start sub_807C648 -sub_807C648: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r5, r1, 0 - adds r4, r2, 0 - mov r8, r3 - ldr r1, [sp, 0x1C] - lsls r0, 16 - asrs r6, r0, 16 - lsls r1, 24 - lsrs r1, 24 - mov r9, r1 - movs r7, 0 - movs r0, 0xF - ands r0, r6 - adds r1, r0, 0 - cmp r1, 0 - bne _0807C686 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0807C6E0 - movs r7, 0x1 - b _0807C6E4 -_0807C686: - cmp r1, 0x1 - beq _0807C6BE - cmp r1, 0x2 - bne _0807C692 - ldr r1, [r4, 0x70] - b _0807C69C -_0807C692: - cmp r1, 0x5 - bne _0807C6B6 - ldr r1, [r4, 0x70] - cmp r5, r4 - beq _0807C6B2 -_0807C69C: - movs r7, 0x1 - ldrb r0, [r1, 0x8] - cmp r0, 0x1 - beq _0807C6B2 - adds r0, r1, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x4 - beq _0807C6B2 - cmp r0, 0x1 - bne _0807C6E0 -_0807C6B2: - movs r0, 0 - b _0807C7A0 -_0807C6B6: - cmp r1, 0x6 - bne _0807C6D4 - cmp r5, r4 - beq _0807C6B2 -_0807C6BE: - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8071598 - lsls r0, 24 - cmp r0, 0 - bne _0807C6E0 - movs r7, 0x1 - b _0807C6E4 -_0807C6D4: - subs r0, 0x3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _0807C6E0 - movs r7, 0x1 -_0807C6E0: - cmp r7, 0 - beq _0807C79E -_0807C6E4: - mov r0, r9 - cmp r0, 0 - beq _0807C77C - adds r0, r5, 0 - adds r1, r4, 0 - mov r2, r8 - bl sub_805CEB8 - lsls r0, 24 - cmp r0, 0 - beq _0807C6B2 - movs r1, 0xF0 - lsls r1, 4 - ands r1, r6 - movs r0, 0x80 - lsls r0, 1 - cmp r1, r0 - beq _0807C78A - movs r0, 0x80 - lsls r0, 2 - cmp r1, r0 - beq _0807C76E - movs r0, 0xC0 - lsls r0, 2 - cmp r1, r0 - bne _0807C720 - adds r0, r4, 0 - bl sub_8070A58 - b _0807C774 -_0807C720: - movs r0, 0x80 - lsls r0, 3 - cmp r1, r0 - bne _0807C730 - adds r0, r4, 0 - bl sub_8070B28 - b _0807C774 -_0807C730: - movs r0, 0xC0 - lsls r0, 3 - cmp r1, r0 - bne _0807C75A - ldr r1, [r4, 0x70] - adds r0, r1, 0 - adds r0, 0x5C - ldrb r0, [r0] - cmp r0, 0xE - beq _0807C74E - adds r0, r1, 0 - adds r0, 0x5D - ldrb r0, [r0] - cmp r0, 0xE - bne _0807C6B2 -_0807C74E: - adds r0, r1, 0 - adds r0, 0xF5 - ldrb r0, [r0] - cmp r0, 0 - beq _0807C79E - b _0807C6B2 -_0807C75A: - movs r0, 0xA0 - lsls r0, 3 - cmp r1, r0 - bne _0807C79E - adds r0, r4, 0 - bl sub_8070A58 - lsls r0, 24 - cmp r0, 0 - bne _0807C79E -_0807C76E: - adds r0, r4, 0 - bl sub_8070B48 -_0807C774: - lsls r0, 24 - cmp r0, 0 - bne _0807C79E - b _0807C6B2 -_0807C77C: - movs r0, 0xF0 - lsls r0, 4 - ands r0, r6 - movs r1, 0x80 - lsls r1, 1 - cmp r0, r1 - bne _0807C79E -_0807C78A: - mov r0, r8 - movs r1, 0x2 - bl sub_8092BD8 - adds r4, r0, 0 - movs r0, 0x64 - bl sub_8084100 - cmp r0, r4 - bge _0807C6B2 -_0807C79E: - adds r0, r7, 0 -_0807C7A0: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_807C648 - - thumb_func_start sub_807C7AC -sub_807C7AC: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r5, r0, 0 - mov r8, r2 - lsls r1, 16 - asrs r1, 16 - lsls r3, 24 - lsrs r3, 24 - mov r9, r3 - movs r6, 0x1 - ldr r4, [r2, 0x70] - adds r7, r4, 0 - ldrb r0, [r4, 0x6] - cmp r0, 0 - beq _0807C7D6 - movs r0, 0xF - ands r0, r1 - cmp r0, 0 - beq _0807C7DA -_0807C7D6: - movs r0, 0x1 - b _0807C848 -_0807C7DA: - adds r0, r5, 0 - movs r1, 0x9 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _0807C804 - ldr r0, _0807C7FC - ldr r0, [r0] - movs r2, 0x2 - ldrsh r1, [r4, r2] - ldr r2, _0807C800 - adds r0, r2 - adds r0, r1 - ldrb r6, [r0] - b _0807C846 - .align 2, 0 -_0807C7FC: .4byte gUnknown_203B418 -_0807C800: .4byte 0x0000363c -_0807C804: - adds r0, r5, 0 - movs r1, 0xA - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _0807C828 - ldrb r1, [r7, 0xE] - movs r2, 0xC - negs r2, r2 - adds r0, r2, 0 - subs r0, r1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - bne _0807C846 - movs r6, 0x1 - b _0807C846 -_0807C828: - adds r0, r5, 0 - movs r1, 0xB - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _0807C846 - adds r0, r5, 0 - mov r1, r8 - mov r2, r9 - bl sub_806E654 - adds r0, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 -_0807C846: - adds r0, r6, 0 -_0807C848: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_807C7AC - - thumb_func_start sub_807C854 -sub_807C854: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x50 - adds r7, r0, 0 - str r1, [sp, 0x40] - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x44] - ldr r0, [r7, 0x70] - movs r1, 0 - mov r8, r1 - adds r1, r0, 0 - adds r1, 0x46 - ldrb r6, [r1] - adds r0, 0xE8 - ldrb r0, [r0] - movs r3, 0x8 - mov r10, r3 - cmp r0, 0x1 - bne _0807C886 - movs r0, 0x1 - mov r10, r0 -_0807C886: - movs r4, 0 - adds r0, r7, 0 - movs r1, 0x9 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _0807C8A4 - adds r0, r7, 0 - movs r1, 0xA - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _0807C8A6 -_0807C8A4: - movs r4, 0x1 -_0807C8A6: - str r4, [sp, 0x48] - adds r0, r7, 0 - movs r1, 0x8 - bl sub_80718D8 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4C] - movs r1, 0 - mov r9, r1 - cmp r9, r10 - bge _0807C952 -_0807C8BE: - movs r0, 0x7 - ands r6, r0 - movs r3, 0x4 - ldrsh r0, [r7, r3] - ldr r1, _0807C95C - lsls r2, r6, 2 - adds r2, r1 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r3, 0x6 - ldrsh r1, [r7, r3] - movs r3, 0x2 - ldrsh r2, [r2, r3] - adds r1, r2 - bl sub_804954C - ldr r5, [r0, 0x10] - cmp r5, 0 - beq _0807C948 - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0807C948 - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_8071138 - lsls r0, 24 - cmp r0, 0 - beq _0807C948 - adds r0, r7, 0 - adds r1, r5, 0 - movs r2, 0 - ldr r3, [sp, 0x44] - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0807C948 - ldr r0, [sp, 0x4C] - cmp r0, 0 - beq _0807C922 - ldr r0, [r5, 0x70] - adds r0, 0xB0 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0807C948 -_0807C922: - mov r1, r8 - lsls r4, r1, 2 - mov r3, sp - adds r0, r3, r4 - str r6, [r0] - adds r0, r7, 0 - movs r1, 0 - adds r2, r5, 0 - movs r3, 0 - bl sub_807C7AC - add r1, sp, 0x20 - adds r1, r4 - str r0, [r1] - ldr r0, [sp, 0x48] - cmp r0, 0 - beq _0807C960 - movs r1, 0x1 - add r8, r1 -_0807C948: - movs r3, 0x1 - add r9, r3 - adds r6, 0x1 - cmp r9, r10 - blt _0807C8BE -_0807C952: - mov r0, r8 - cmp r0, 0 - bne _0807C966 - movs r0, 0 - b _0807C9E8 - .align 2, 0 -_0807C95C: .4byte gUnknown_80F4448 -_0807C960: - ldr r1, [sp, 0x40] - str r6, [r1] - b _0807C9E6 -_0807C966: - movs r4, 0 - movs r3, 0 - mov r0, r8 - cmp r0, 0 - ble _0807C984 - add r1, sp, 0x20 - mov r2, r8 -_0807C974: - ldr r0, [r1] - cmp r3, r0 - bge _0807C97C - adds r3, r0, 0 -_0807C97C: - adds r1, 0x4 - subs r2, 0x1 - cmp r2, 0 - bne _0807C974 -_0807C984: - mov r1, r8 - cmp r1, 0 - ble _0807C9A0 - movs r5, 0 - add r1, sp, 0x20 - mov r2, r8 -_0807C990: - ldr r0, [r1] - cmp r3, r0 - beq _0807C998 - str r5, [r1] -_0807C998: - adds r1, 0x4 - subs r2, 0x1 - cmp r2, 0 - bne _0807C990 -_0807C9A0: - mov r3, r8 - cmp r3, 0 - ble _0807C9B4 - add r1, sp, 0x20 - mov r2, r8 -_0807C9AA: - ldm r1!, {r0} - adds r4, r0 - subs r2, 0x1 - cmp r2, 0 - bne _0807C9AA -_0807C9B4: - adds r0, r4, 0 - bl sub_8084100 - adds r1, r0, 0 - movs r2, 0 - cmp r2, r8 - bge _0807C9DC - ldr r0, [sp, 0x20] - subs r1, r0 - cmp r1, 0 - blt _0807C9DC - add r3, sp, 0x20 -_0807C9CC: - adds r3, 0x4 - adds r2, 0x1 - cmp r2, r8 - bge _0807C9DC - ldr r0, [r3] - subs r1, r0 - cmp r1, 0 - bge _0807C9CC -_0807C9DC: - lsls r0, r2, 2 - add r0, sp - ldr r0, [r0] - ldr r1, [sp, 0x40] - str r0, [r1] -_0807C9E6: - movs r0, 0x1 -_0807C9E8: - add sp, 0x50 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_807C854 - - thumb_func_start sub_807C9F8 -sub_807C9F8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r4, r0, 0 - mov r10, r1 - adds r7, r2, 0 - adds r5, r3, 0 - movs r0, 0x4 - ldrsh r1, [r4, r0] - mov r2, r10 - movs r3, 0x4 - ldrsh r0, [r2, r3] - subs r2, r1, r0 - cmp r2, 0 - bge _0807CA1C - negs r2, r2 -_0807CA1C: - movs r6, 0x6 - ldrsh r1, [r4, r6] - mov r3, r10 - movs r6, 0x6 - ldrsh r0, [r3, r6] - subs r6, r1, r0 - cmp r6, 0 - bge _0807CA2E - negs r6, r6 -_0807CA2E: - cmp r6, r2 - bge _0807CA34 - adds r6, r2, 0 -_0807CA34: - cmp r6, r5 - ble _0807CA3A - adds r6, r5, 0 -_0807CA3A: - adds r0, r4, 0 - movs r1, 0x3 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - bne _0807CA50 - cmp r6, r5 - bgt _0807CAAC -_0807CA4C: - movs r0, 0x1 - b _0807CAAE -_0807CA50: - movs r0, 0x4 - ldrsh r5, [r4, r0] - movs r1, 0x6 - ldrsh r4, [r4, r1] - ldr r1, _0807CA70 - lsls r0, r7, 2 - adds r0, r1 - movs r3, 0 - ldrsh r2, [r0, r3] - mov r9, r2 - movs r2, 0x2 - ldrsh r1, [r0, r2] - mov r8, r1 - movs r7, 0 - b _0807CA94 - .align 2, 0 -_0807CA70: .4byte gUnknown_80F4448 -_0807CA74: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0807CAAC - ldr r0, [r2, 0x10] - cmp r0, r10 - beq _0807CA4C - cmp r0, 0 - bne _0807CAAC - adds r7, 0x1 -_0807CA94: - cmp r7, r6 - bgt _0807CAAC - add r5, r9 - add r4, r8 - cmp r5, 0 - ble _0807CAAC - cmp r4, 0 - ble _0807CAAC - cmp r5, 0x36 - bgt _0807CAAC - cmp r4, 0x1E - ble _0807CA74 -_0807CAAC: - movs r0, 0 -_0807CAAE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_807C9F8 - - thumb_func_start sub_807CABC -sub_807CABC: - push {r4-r6,lr} - sub sp, 0x4 - adds r4, r0, 0 - movs r6, 0 - b _0807CADC -_0807CAC6: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807CB0A - ldr r1, _0807CB38 - adds r0, r5, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0807CB0A - adds r6, 0x1 -_0807CADC: - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8070828 - cmp r6, r0 - bge _0807CB0A - ldr r5, [r4, 0x70] - adds r0, r5, 0 - adds r0, 0x48 - ldrb r1, [r0] - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8055A00 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807CAC6 -_0807CB0A: - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8057588 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807CB2A - ldr r0, [r4, 0x70] - adds r0, 0x48 - ldrb r1, [r0] - adds r0, r4, 0 - bl sub_806A9B4 -_0807CB2A: - adds r0, r4, 0 - bl sub_806A1B0 - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807CB38: .4byte 0x00000159 - thumb_func_end sub_807CABC - - thumb_func_start sub_807CB3C -sub_807CB3C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - adds r6, r0, 0 - ldr r7, [r6, 0x70] - movs r1, 0 - movs r2, 0x15 - bl sub_8044D90 - adds r2, r0, 0 - ldr r5, [r2] - ldrb r1, [r2] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0807CB80 - ldr r0, _0807CB78 - adds r1, r2, 0 - bl sub_8045BF8 - ldr r0, _0807CB7C - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - b _0807CD54 - .align 2, 0 -_0807CB78: .4byte gUnknown_202DE58 -_0807CB7C: .4byte gUnknown_80FE3E8 -_0807CB80: - add r0, sp, 0x8 - adds r1, r7, 0 - adds r1, 0x44 - ldm r1!, {r2-r4} - stm r0!, {r2-r4} - ldm r1!, {r2-r4} - stm r0!, {r2-r4} - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - beq _0807CBAC - ldr r0, _0807CBA8 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - movs r4, 0x1 - b _0807CCDE - .align 2, 0 -_0807CBA8: .4byte gUnknown_81004C4 -_0807CBAC: - movs r0, 0x1 - mov r8, r0 - add r4, sp, 0x20 - lsls r5, 8 - lsrs r0, r5, 24 - bl sub_80913CC - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl sub_8092A88 - ldrb r0, [r7, 0x7] - mov r10, r4 - mov r9, r5 - cmp r0, 0 - bne _0807CC08 - ldr r1, _0807CC20 - ldr r0, [sp, 0x28] - ands r0, r1 - mov r1, r8 - orrs r0, r1 - str r0, [sp, 0x28] - movs r0, 0xA - add r4, sp, 0x28 - str r0, [r4, 0x4] - movs r3, 0x8C - lsls r3, 1 - adds r2, r7, r3 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_807C04C - ldrb r0, [r4] - cmp r0, 0 - beq _0807CC08 - ldrb r1, [r4, 0x1] - movs r0, 0x7 - ands r0, r1 - adds r1, r7, 0 - adds r1, 0x46 - strb r0, [r1] - adds r0, r6, 0 - bl sub_8069DCC -_0807CC08: - adds r0, r7, 0 - adds r0, 0xBC - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807CC2C - ldr r0, _0807CC24 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807CC28 - b _0807CC3C - .align 2, 0 -_0807CC20: .4byte 0xffffff00 -_0807CC24: .4byte gUnknown_202DF98 -_0807CC28: .4byte gUnknown_80FC714 -_0807CC2C: - cmp r0, 0x7 - bne _0807CC50 - ldr r0, _0807CC48 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807CC4C -_0807CC3C: - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - b _0807CCDC - .align 2, 0 -_0807CC48: .4byte gUnknown_202DF98 -_0807CC4C: .4byte gUnknown_80FC718 -_0807CC50: - adds r0, r7, 0 - adds r0, 0xAC - ldrb r0, [r0] - cmp r0, 0x4 - bne _0807CC72 - ldr r0, _0807CCB8 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807CCBC - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - movs r4, 0 - mov r8, r4 -_0807CC72: - mov r0, r8 - cmp r0, 0 - beq _0807CCDC - mov r5, r9 - lsrs r0, r5, 24 - cmp r0, 0xB6 - beq _0807CC84 - cmp r0, 0xBF - bne _0807CCC0 -_0807CC84: - adds r0, r6, 0 - movs r1, 0 - movs r2, 0x7A - bl sub_8044DF0 - mov r2, r10 - ldrb r1, [r2] - movs r0, 0x8 - movs r4, 0 - orrs r0, r1 - add r3, sp, 0x20 - movs r1, 0x4 - orrs r0, r1 - strb r0, [r3] - movs r0, 0xA - strb r0, [r3, 0x4] - lsrs r2, r5, 24 - str r4, [sp] - str r3, [sp, 0x4] - adds r0, r6, 0 - movs r1, 0 - movs r3, 0 - bl sub_8055FA0 - b _0807CCDE - .align 2, 0 -_0807CCB8: .4byte gUnknown_202DF98 -_0807CCBC: .4byte gUnknown_80FC6A8 -_0807CCC0: - mov r3, r9 - lsrs r2, r3, 24 - movs r0, 0 - str r0, [sp] - mov r4, r10 - str r4, [sp, 0x4] - adds r0, r6, 0 - movs r1, 0 - movs r3, 0 - bl sub_8055FA0 - lsls r0, 24 - lsrs r4, r0, 24 - b _0807CCDE -_0807CCDC: - movs r4, 0 -_0807CCDE: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807CD38 - cmp r4, 0 - beq _0807CCF8 - adds r0, r6, 0 - movs r1, 0 - movs r2, 0x7A - bl sub_8044DF0 -_0807CCF8: - adds r0, r6, 0 - bl sub_8071DA4 - adds r0, r6, 0 - movs r1, 0x8 - bl sub_806CE68 - ldrb r0, [r7, 0x7] - cmp r0, 0 - beq _0807CD18 - adds r0, r6, 0x4 - bl sub_804AC20 - movs r0, 0 - bl sub_807EC28 -_0807CD18: - adds r0, r6, 0 - bl sub_806A5B8 - ldr r0, _0807CD30 - ldr r0, [r0] - ldr r1, _0807CD34 - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_8075900 - b _0807CD44 - .align 2, 0 -_0807CD30: .4byte gUnknown_203B418 -_0807CD34: .4byte 0x00003a08 -_0807CD38: - cmp r4, 0 - beq _0807CD44 - add r0, sp, 0x8 - movs r1, 0 - bl sub_8044D40 -_0807CD44: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807CD54 - adds r0, r6, 0 - bl sub_806A1B0 -_0807CD54: - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807CB3C - - thumb_func_start sub_807CD64 -sub_807CD64: - push {r4,r5,lr} - adds r3, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - ldrh r0, [r4, 0x2] - cmp r0, 0xED - bne _0807CD88 - cmp r5, 0 - bne _0807CD88 - adds r0, r3, 0 - movs r1, 0xE - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - bne _0807CD88 - movs r0, 0x73 - b _0807CD94 -_0807CD88: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8092AE0 - lsls r0, 16 - asrs r0, 16 -_0807CD94: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_807CD64 - - thumb_func_start sub_807CD9C -sub_807CD9C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x34 - mov r9, r0 - adds r6, r1, 0 - adds r4, r2, 0 - movs r0, 0xA - str r0, [sp, 0x24] - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - beq _0807CDC4 - ldr r0, _0807CDC0 - b _0807CDFE - .align 2, 0 -_0807CDC0: .4byte gUnknown_80FC9E8 -_0807CDC4: - cmp r9, r6 - bne _0807CDE4 - ldr r0, _0807CDDC - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807CDE0 - ldr r2, [r0] - adds r0, r6, 0 - b _0807CE02 - .align 2, 0 -_0807CDDC: .4byte gUnknown_202DF98 -_0807CDE0: .4byte gUnknown_80FCA10 -_0807CDE4: - ldr r0, _0807CE0C - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r6, 0 - movs r1, 0xE - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807CE28 - ldr r0, _0807CE10 -_0807CDFE: - ldr r2, [r0] - mov r0, r9 -_0807CE02: - adds r1, r6, 0 - bl sub_80522F4 - b _0807D02A - .align 2, 0 -_0807CE0C: .4byte gUnknown_202DF98 -_0807CE10: .4byte gUnknown_80FCBCC -_0807CE14: - str r0, [sp, 0x28] - b _0807CF26 -_0807CE18: - ldrh r0, [r5] - movs r1, 0x3 - ands r1, r0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - mov r10, r0 - b _0807CF20 -_0807CE28: - ldr r1, [r6, 0x70] - adds r2, r4, 0x4 - movs r3, 0x7 - adds r0, r2, 0 - ands r0, r3 - adds r1, 0x46 - strb r0, [r1] - movs r0, 0x7 - ands r2, r0 - adds r0, r6, 0 - movs r1, 0x6 - bl sub_806CDD4 - ldr r1, _0807D03C - adds r0, r6, 0 - bl sub_80421C0 - ldr r0, _0807D040 - ldr r2, [r0] - mov r0, r9 - adds r1, r6, 0 - bl sub_80522F4 - movs r1, 0x1 - mov r10, r1 - movs r2, 0 - str r2, [sp, 0x28] - lsls r1, r4, 2 - ldr r0, _0807D044 - adds r1, r0 - mov r8, r1 - add r7, sp, 0x18 -_0807CE68: - ldr r2, [r6, 0x4] - str r2, [sp, 0x18] - ldrh r0, [r7] - mov r3, r8 - ldrh r3, [r3] - adds r0, r3 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _0807D048 - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x18] - asrs r0, r1, 16 - mov r2, r8 - ldrh r2, [r2, 0x2] - adds r0, r2 - lsls r0, 16 - ldr r2, _0807D04C - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x18] - movs r3, 0 - ldrsh r0, [r7, r3] - cmp r0, 0 - blt _0807CF20 - asrs r1, r2, 16 - cmp r1, 0 - blt _0807CF20 - cmp r0, 0x37 - bgt _0807CF20 - cmp r1, 0x1F - bgt _0807CF20 - mov r1, r8 - movs r2, 0 - ldrsh r0, [r1, r2] - lsls r0, 10 - str r0, [sp, 0x2C] - movs r3, 0x2 - ldrsh r0, [r1, r3] - lsls r0, 10 - str r0, [sp, 0x30] - movs r4, 0x5 -_0807CEBC: - adds r0, r6, 0 - ldr r1, [sp, 0x2C] - ldr r2, [sp, 0x30] - bl sub_804539C - adds r0, r6, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0807CED8 - movs r0, 0x19 - bl sub_803E46C -_0807CED8: - subs r4, 0x1 - cmp r4, 0 - bge _0807CEBC - movs r1, 0 - ldrsh r0, [r7, r1] - ldr r1, [sp, 0x18] - asrs r1, 16 - bl sub_804954C - adds r5, r0, 0 - ldr r0, [r5, 0x10] - cmp r0, 0 - bne _0807CE14 - add r4, sp, 0x18 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80705F0 - lsls r0, 24 - cmp r0, 0 - bne _0807CE18 - movs r2, 0 - ldrsh r1, [r7, r2] - movs r3, 0x2 - ldrsh r2, [r4, r3] - adds r0, r6, 0 - movs r3, 0x1 - bl sub_80694C0 - ldr r0, [sp, 0x24] - subs r0, 0x1 - str r0, [sp, 0x24] - cmp r0, 0 - bgt _0807CE68 - movs r1, 0x1 - mov r10, r1 -_0807CF20: - mov r2, r10 - cmp r2, 0 - bne _0807CF4E -_0807CF26: - adds r1, r6, 0x4 - adds r0, r6, 0 - bl sub_807D068 - ldr r0, _0807D050 - movs r3, 0 - ldrsh r2, [r0, r3] - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - ldr r0, _0807D054 - str r0, [sp, 0x8] - str r1, [sp, 0xC] - str r1, [sp, 0x10] - str r1, [sp, 0x14] - mov r0, r9 - adds r1, r6, 0 - movs r3, 0 - bl sub_806F370 -_0807CF4E: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807D02A - ldr r0, [sp, 0x28] - cmp r0, 0 - beq _0807CF9E - add r4, sp, 0x1C - ldr r1, _0807D058 - adds r0, r4, 0 - bl sub_8092A88 - ldr r0, [sp, 0x28] - adds r1, r4, 0 - bl sub_80571F0 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0807CF9E - mov r0, r9 - ldr r1, [sp, 0x28] - bl sub_807A96C - ldr r0, _0807D050 - movs r1, 0 - ldrsh r2, [r0, r1] - str r4, [sp] - str r4, [sp, 0x4] - ldr r0, _0807D05C - str r0, [sp, 0x8] - str r4, [sp, 0xC] - str r4, [sp, 0x10] - str r4, [sp, 0x14] - mov r0, r9 - ldr r1, [sp, 0x28] - movs r3, 0 - bl sub_806F370 -_0807CF9E: - bl sub_8044B28 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _0807D02A - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807D02A - adds r0, r6, 0 - bl sub_806A5B8 - adds r4, r6, 0x4 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80706A4 - lsls r0, 24 - cmp r0, 0 - beq _0807CFD8 - adds r0, r6, 0 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_0807CFD8: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807D02A - adds r0, r6, 0 - movs r1, 0x8 - bl sub_806CE68 - ldr r0, [r6, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0807D014 - ldr r1, _0807D060 - ldr r0, [r1] - strb r5, [r0, 0x1] - ldr r0, [r1] - movs r2, 0xB8 - lsls r2, 3 - adds r0, r2 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - adds r0, r4, 0 - bl sub_804AC20 - movs r0, 0 - bl sub_807EC28 -_0807D014: - adds r0, r6, 0 - bl sub_806A5B8 - ldr r0, _0807D060 - ldr r0, [r0] - ldr r3, _0807D064 - adds r0, r3 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_8075900 -_0807D02A: - add sp, 0x34 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807D03C: .4byte 0x000001a3 -_0807D040: .4byte gUnknown_80F8A0C -_0807D044: .4byte gUnknown_80F4448 -_0807D048: .4byte 0xffff0000 -_0807D04C: .4byte 0x0000ffff -_0807D050: .4byte gUnknown_80F4F90 -_0807D054: .4byte 0x00000219 -_0807D058: .4byte 0x00000163 -_0807D05C: .4byte 0x0000021a -_0807D060: .4byte gUnknown_203B418 -_0807D064: .4byte 0x00003a08 - thumb_func_end sub_807CD9C - - thumb_func_start sub_807D068 -sub_807D068: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - adds r6, r0, 0 - movs r0, 0 - ldrsh r2, [r1, r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 11 - movs r2, 0xC0 - lsls r2, 4 - adds r2, r0 - mov r10, r2 - movs r0, 0x2 - ldrsh r1, [r1, r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r1, 0x80 - lsls r1, 5 - adds r1, r0 - mov r9, r1 - ldr r0, [r6, 0xC] - subs r0, r2 - cmp r0, 0 - bge _0807D0A4 - negs r0, r0 -_0807D0A4: - ldr r1, [r6, 0x10] - cmp r0, 0xB - bgt _0807D0B8 - mov r2, r9 - subs r0, r1, r2 - cmp r0, 0 - bge _0807D0B4 - negs r0, r0 -_0807D0B4: - cmp r0, 0xB - ble _0807D11E -_0807D0B8: - movs r0, 0 - mov r8, r0 - ldr r5, [r6, 0xC] - adds r4, r1, 0 - mov r1, r10 - subs r0, r1, r5 - movs r1, 0xC - bl __divsi3 - str r0, [sp, 0x8] - mov r2, r9 - subs r0, r2, r4 - movs r1, 0xC - bl __divsi3 - str r0, [sp, 0xC] - mov r0, sp - str r0, [sp, 0x10] - movs r7, 0xB -_0807D0DE: - ldr r1, [sp, 0x8] - adds r5, r1 - ldr r2, [sp, 0xC] - adds r4, r2 - str r5, [sp] - ldr r0, [sp, 0x10] - str r4, [r0, 0x4] - mov r0, r8 - bl sub_8009C7C - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - str r1, [r6, 0x1C] - adds r0, r6, 0 - mov r1, sp - bl sub_804535C - adds r0, r6, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0807D114 - movs r0, 0x1A - bl sub_803E46C -_0807D114: - movs r1, 0xAA - add r8, r1 - subs r7, 0x1 - cmp r7, 0 - bge _0807D0DE -_0807D11E: - mov r2, r10 - str r2, [sp] - mov r0, r9 - str r0, [sp, 0x4] - movs r0, 0 - str r0, [r6, 0x1C] - adds r0, r6, 0 - mov r1, sp - bl sub_804535C - movs r0, 0x1A - bl sub_803E46C - 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_807D068 - - thumb_func_start sub_807D148 -sub_807D148: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - mov r8, r0 - adds r5, r1, 0 - mov r9, r2 - str r3, [sp, 0x4] - ldr r0, [r5, 0x70] - mov r10, r0 - movs r1, 0 - str r1, [sp, 0x8] - ldr r0, _0807D180 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - movs r1, 0xE - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807D188 - ldr r0, _0807D184 - b _0807D194 - .align 2, 0 -_0807D180: .4byte gUnknown_202DF98 -_0807D184: .4byte gUnknown_80FCAE8 -_0807D188: - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - beq _0807D1A4 - ldr r0, _0807D1A0 -_0807D194: - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 - b _0807D3A8 - .align 2, 0 -_0807D1A0: .4byte gUnknown_80FC97C -_0807D1A4: - mov r2, r9 - cmp r2, 0x1 - bne _0807D1DC - ldr r0, _0807D1D0 - ldr r0, [r0] - ldr r3, _0807D1D4 - adds r0, r3 - ldr r1, [r0] - ldr r0, [r5, 0x4] - cmp r1, r0 - bne _0807D1DC - ldr r0, _0807D1D8 - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 - mov r0, r8 - adds r1, r5, 0 - bl sub_8076D10 - b _0807D3A8 - .align 2, 0 -_0807D1D0: .4byte gUnknown_203B418 -_0807D1D4: .4byte 0x0000e21c -_0807D1D8: .4byte gUnknown_80FC9A0 -_0807D1DC: - ldr r0, _0807D27C - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 - adds r0, r5, 0 - adds r1, r5, 0 - bl sub_807A96C - mov r0, r8 - adds r1, r5, 0 - bl sub_80421AC - adds r0, r5, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0807D252 - mov r0, r10 - adds r0, 0x46 - ldrb r4, [r0] - ldr r1, [r5, 0x1C] - movs r2, 0x80 - lsls r2, 4 - adds r1, r2 - str r1, [r5, 0x1C] - ldr r2, _0807D280 - adds r6, r0, 0 - cmp r1, r2 - bgt _0807D252 - movs r7, 0x7 -_0807D21E: - ldr r0, _0807D284 - ldr r0, [r0] - movs r1, 0x3 - ands r0, r1 - cmp r0, 0 - bne _0807D23C - adds r4, 0x1 - ands r4, r7 - adds r0, r4, 0 - ands r0, r7 - strb r0, [r6] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_806CE68 -_0807D23C: - movs r0, 0x22 - bl sub_803E46C - ldr r1, [r5, 0x1C] - movs r3, 0x80 - lsls r3, 4 - adds r1, r3 - str r1, [r5, 0x1C] - ldr r0, _0807D280 - cmp r1, r0 - ble _0807D21E -_0807D252: - mov r0, r9 - cmp r0, 0x1 - beq _0807D288 - cmp r0, 0x1 - bcc _0807D264 - cmp r0, 0x2 - beq _0807D2B0 - cmp r0, 0x3 - beq _0807D2C8 -_0807D264: - mov r0, sp - bl sub_8083660 - lsls r0, 24 - cmp r0, 0 - bne _0807D2CE - ldr r0, [r5, 0x4] - str r0, [sp] - movs r1, 0x1 - str r1, [sp, 0x8] - b _0807D2CE - .align 2, 0 -_0807D27C: .4byte gUnknown_80FC584 -_0807D280: .4byte 0x00009fff -_0807D284: .4byte gUnknown_202EDCC -_0807D288: - ldr r0, _0807D2A8 - ldr r1, [r0] - ldr r2, _0807D2AC - adds r1, r2 - mov r0, sp - bl sub_808384C - lsls r0, 24 - cmp r0, 0 - bne _0807D2CE - ldr r0, [r5, 0x4] - str r0, [sp] - movs r3, 0x1 - str r3, [sp, 0x8] - b _0807D2CE - .align 2, 0 -_0807D2A8: .4byte gUnknown_203B418 -_0807D2AC: .4byte 0x0000e21c -_0807D2B0: - mov r0, sp - ldr r1, [sp, 0x4] - bl sub_808384C - lsls r0, 24 - cmp r0, 0 - bne _0807D2CE - ldr r0, [r5, 0x4] - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x8] - b _0807D2CE -_0807D2C8: - ldr r1, [sp, 0x4] - ldr r0, [r1] - str r0, [sp] -_0807D2CE: - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r3, 0x2 - ldrsh r2, [r0, r3] - adds r0, r5, 0 - movs r3, 0x1 - bl sub_80694C0 - adds r0, r5, 0 - movs r1, 0 - bl sub_804535C - adds r0, r5, 0 - bl sub_807BB78 - movs r0, 0x1 - bl sub_803F580 - adds r0, r5, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0807D340 - mov r1, r10 - adds r1, 0x46 - ldrb r4, [r1] - movs r0, 0x9C - lsls r0, 8 - str r0, [r5, 0x1C] - adds r6, r1, 0 - movs r7, 0x7 -_0807D310: - ldr r0, _0807D3B8 - ldr r0, [r0] - movs r1, 0x3 - ands r0, r1 - cmp r0, 0 - bne _0807D32E - adds r4, 0x1 - ands r4, r7 - adds r0, r4, 0 - ands r0, r7 - strb r0, [r6] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_806CE68 -_0807D32E: - movs r0, 0x22 - bl sub_803E46C - ldr r0, [r5, 0x1C] - ldr r1, _0807D3BC - adds r0, r1 - str r0, [r5, 0x1C] - cmp r0, 0 - bgt _0807D310 -_0807D340: - movs r4, 0 - str r4, [r5, 0x1C] - movs r0, 0x22 - bl sub_803E46C - ldr r2, [sp, 0x8] - cmp r2, 0 - beq _0807D35C - ldr r0, _0807D3C0 - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 -_0807D35C: - mov r3, r9 - cmp r3, 0x1 - bne _0807D36A - mov r0, r8 - adds r1, r5, 0 - bl sub_8076D10 -_0807D36A: - mov r1, r10 - ldrb r0, [r1, 0x7] - cmp r0, 0 - beq _0807D392 - adds r0, r5, 0x4 - bl sub_804AC20 - ldr r1, _0807D3C4 - ldr r0, [r1] - strb r4, [r0, 0x1] - ldr r0, [r1] - movs r2, 0xB8 - lsls r2, 3 - adds r0, r2 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - movs r0, 0 - bl sub_807EC28 -_0807D392: - adds r0, r5, 0 - bl sub_806A5B8 - ldr r0, _0807D3C4 - ldr r0, [r0] - ldr r3, _0807D3C8 - adds r0, r3 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8075900 -_0807D3A8: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807D3B8: .4byte gUnknown_202EDCC -_0807D3BC: .4byte 0xfffffc00 -_0807D3C0: .4byte gUnknown_80FCB14 -_0807D3C4: .4byte gUnknown_203B418 -_0807D3C8: .4byte 0x00003a08 - thumb_func_end sub_807D148 - - thumb_func_start sub_807D3CC -sub_807D3CC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - mov r8, r0 - movs r2, 0 - ldr r4, _0807D448 - ldr r0, [r4] - ldr r1, _0807D44C - adds r0, r1 - ldrb r6, [r0] - cmp r6, 0 - bne _0807D3E8 - movs r6, 0x2 -_0807D3E8: - mov r0, r8 - str r2, [sp] - bl sub_80450FC - lsls r0, 24 - lsrs r1, r0, 24 - ldr r2, [sp] - cmp r1, 0xFF - bne _0807D450 - mov r3, r8 - movs r1, 0x6 - ldrsh r0, [r3, r1] - subs r5, r0, r6 - adds r0, r6 - cmp r5, r0 - bgt _0807D4A8 -_0807D408: - mov r3, r8 - movs r1, 0x4 - ldrsh r0, [r3, r1] - subs r4, r0, r6 - adds r0, r6 - adds r7, r5, 0x1 - cmp r4, r0 - bgt _0807D438 -_0807D418: - adds r0, r4, 0 - adds r1, r5, 0 - str r2, [sp] - bl sub_807D4E0 - ldr r2, [sp] - orrs r2, r0 - lsls r0, r2, 24 - lsrs r2, r0, 24 - adds r4, 0x1 - mov r3, r8 - movs r1, 0x4 - ldrsh r0, [r3, r1] - adds r0, r6 - cmp r4, r0 - ble _0807D418 -_0807D438: - adds r5, r7, 0 - mov r3, r8 - movs r1, 0x6 - ldrsh r0, [r3, r1] - adds r0, r6 - cmp r5, r0 - ble _0807D408 - b _0807D4A8 - .align 2, 0 -_0807D448: .4byte gUnknown_203B418 -_0807D44C: .4byte 0x00018209 -_0807D450: - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r3, _0807D468 - adds r0, r3 - ldr r1, [r4] - adds r6, r1, r0 - movs r1, 0x4 - ldrsh r0, [r6, r1] - subs r5, r0, 0x1 - b _0807D49E - .align 2, 0 -_0807D468: .4byte 0x000104c4 -_0807D46C: - movs r1, 0x2 - ldrsh r0, [r6, r1] - subs r4, r0, 0x1 - movs r3, 0x6 - ldrsh r0, [r6, r3] - adds r0, 0x1 - adds r7, r5, 0x1 - cmp r4, r0 - bgt _0807D49C -_0807D47E: - adds r0, r4, 0 - adds r1, r5, 0 - str r2, [sp] - bl sub_807D4E0 - ldr r2, [sp] - orrs r2, r0 - lsls r0, r2, 24 - lsrs r2, r0, 24 - adds r4, 0x1 - movs r1, 0x6 - ldrsh r0, [r6, r1] - adds r0, 0x1 - cmp r4, r0 - ble _0807D47E -_0807D49C: - adds r5, r7, 0 -_0807D49E: - movs r3, 0x8 - ldrsh r0, [r6, r3] - adds r0, 0x1 - cmp r5, r0 - ble _0807D46C -_0807D4A8: - cmp r2, 0 - beq _0807D4C4 - ldr r0, _0807D4C0 - ldr r1, [r0] - mov r0, r8 - bl sub_80522A8 - bl sub_8040A84 - bl sub_8049ED4 - b _0807D4CE - .align 2, 0 -_0807D4C0: .4byte gUnknown_80FD2F8 -_0807D4C4: - ldr r0, _0807D4DC - ldr r1, [r0] - mov r0, r8 - bl sub_80522A8 -_0807D4CE: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807D4DC: .4byte gUnknown_80FD320 - thumb_func_end sub_807D3CC - - thumb_func_start sub_807D4E0 -sub_807D4E0: - push {r4,lr} - bl sub_804954C - ldr r4, [r0, 0x14] - cmp r4, 0 - beq _0807D506 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x2 - bne _0807D506 - adds r1, r4, 0 - adds r1, 0x20 - ldrb r0, [r1] - cmp r0, 0 - bne _0807D506 - movs r0, 0x1 - strb r0, [r1] - b _0807D508 -_0807D506: - movs r0, 0 -_0807D508: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_807D4E0 - - thumb_func_start sub_807D510 -sub_807D510: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _0807D540 - add sp, r4 - ldr r1, _0807D544 - add r1, sp - str r0, [r1] - movs r2, 0 - movs r3, 0xD1 - lsls r3, 4 - add r3, sp - str r2, [r3] - ldr r4, _0807D548 - add r4, sp - str r2, [r4] - add r5, sp, 0x4 - mov r8, r5 - mov r10, r2 - mov r9, r2 - add r7, sp, 0x8 - b _0807D606 - .align 2, 0 -_0807D540: .4byte 0xfffff2d4 -_0807D544: .4byte 0x00000d08 -_0807D548: .4byte 0x00000d0c -_0807D54C: - movs r0, 0x4 - ldrsh r1, [r5, r0] - ldr r2, _0807D650 - add r2, sp - ldr r2, [r2] - movs r3, 0x4 - ldrsh r0, [r2, r3] - subs r1, r0 - cmp r1, 0 - bge _0807D562 - negs r1, r1 -_0807D562: - cmp r1, 0x2 - bgt _0807D580 - movs r3, 0x6 - ldrsh r1, [r5, r3] - ldr r4, _0807D650 - add r4, sp - ldr r4, [r4] - movs r2, 0x6 - ldrsh r0, [r4, r2] - subs r1, r0 - cmp r1, 0 - bge _0807D57C - negs r1, r1 -_0807D57C: - cmp r1, 0x2 - ble _0807D5FE -_0807D580: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_804954C - ldrh r1, [r0] - movs r2, 0x3 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0807D5FE - mov r3, r8 - str r2, [r3] - ldr r4, _0807D654 - add r4, sp - ldr r1, _0807D658 - add r1, sp - ldr r1, [r1] - lsls r0, r1, 2 - adds r4, r0 - str r4, [r7, 0x6C] - ldr r0, [r5, 0x4] - str r0, [r7] - movs r2, 0x4 - ldrsh r0, [r5, r2] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, 0x4 - lsls r1, 8 - movs r3, 0x6 - ldrsh r0, [r5, r3] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 3 - adds r2, 0x4 - lsls r2, 8 - mov r0, r8 - bl sub_8045394 - movs r2, 0 - movs r1, 0 - strh r1, [r7, 0x22] - movs r0, 0x1 - strb r0, [r7, 0x1C] - strb r2, [r7, 0x1E] - str r1, [r7, 0x18] - ldr r0, _0807D65C - ldr r0, [r0] - ldr r5, _0807D660 - adds r0, r5 - add r0, r9 - ldr r0, [r0] - str r0, [r4] - adds r7, 0x74 - movs r0, 0x74 - add r8, r0 - ldr r2, _0807D658 - add r2, sp - ldr r1, [r2] - adds r1, 0x1 - str r1, [r2] -_0807D5FE: - movs r3, 0x4 - add r9, r3 - movs r4, 0x1 - add r10, r4 -_0807D606: - ldr r0, _0807D65C - ldr r1, [r0] - ldr r5, _0807D664 - adds r0, r1, r5 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r10, r0 - bge _0807D634 - ldr r3, _0807D668 - adds r0, r1, r3 - add r0, r9 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807D5FE - ldr r4, _0807D658 - add r4, sp - ldr r4, [r4] - cmp r4, 0x18 - ble _0807D54C -_0807D634: - ldr r5, _0807D658 - add r5, sp - ldr r5, [r5] - cmp r5, 0 - bne _0807D670 - ldr r0, _0807D66C - ldr r1, [r0] - ldr r2, _0807D650 - add r2, sp - ldr r0, [r2] - bl sub_80522A8 - b _0807D9F4 - .align 2, 0 -_0807D650: .4byte 0x00000d08 -_0807D654: .4byte 0x00000b58 -_0807D658: .4byte 0x00000d0c -_0807D65C: .4byte gUnknown_203B418 -_0807D660: .4byte 0x00003804 -_0807D664: .4byte 0x00003904 -_0807D668: .4byte 0x0001361c -_0807D66C: .4byte gUnknown_80FE034 -_0807D670: - movs r1, 0 - movs r7, 0x1D - ldr r0, _0807D754 - add r0, sp -_0807D678: - strb r1, [r0] - subs r0, 0x1 - subs r7, 0x1 - cmp r7, 0 - bge _0807D678 - movs r7, 0 - ldr r3, _0807D758 - add r3, sp - ldr r3, [r3] - cmp r7, r3 - blt _0807D690 - b _0807D7CC -_0807D690: - ldr r4, _0807D75C - mov r10, r4 - ldr r5, _0807D760 - movs r0, 0 - ldrsh r5, [r5, r0] - ldr r0, _0807D764 - add r0, sp - str r5, [r0] -_0807D6A0: - movs r1, 0 - mov r9, r1 - ldr r2, _0807D768 - add r2, sp - ldr r2, [r2] - ldrh r0, [r2, 0x4] - ldr r1, _0807D76C - ands r6, r1 - orrs r6, r0 - ldrh r0, [r2, 0x6] - lsls r0, 16 - mov r4, r10 - ands r6, r4 - orrs r6, r0 - mov r4, r9 - adds r5, r7, 0x1 - movs r0, 0xD2 - lsls r0, 4 - add r0, sp - str r5, [r0] - ldr r1, _0807D760 - ldr r2, _0807D764 - add r2, sp - ldr r2, [r2] - cmp r2, 0x63 - beq _0807D790 - ldr r3, _0807D770 - add r3, sp - mov r8, r3 -_0807D6DA: - ldr r0, _0807D774 - add r0, sp - adds r0, r4 - ldr r5, _0807D778 - add r5, sp - str r0, [r5] - ldrb r0, [r0] - cmp r0, 0 - bne _0807D77C - lsls r2, r4, 2 - adds r2, r1 - ldrh r0, [r2] - ldr r1, _0807D768 - add r1, sp - ldr r1, [r1] - ldrh r1, [r1, 0x4] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _0807D76C - ands r6, r1 - orrs r6, r0 - ldrh r0, [r2, 0x2] - ldr r2, _0807D768 - add r2, sp - ldr r2, [r2] - ldrh r2, [r2, 0x6] - adds r0, r2 - lsls r0, 16 - mov r3, r10 - ands r6, r3 - orrs r6, r0 - lsls r0, r6, 16 - asrs r0, 16 - asrs r1, r6, 16 - bl sub_804954C - adds r2, r0, 0 - ldrh r1, [r2] - movs r3, 0x3 - ands r3, r1 - cmp r3, 0x1 - bne _0807D77C - movs r5, 0x80 - lsls r5, 2 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _0807D77C - ldr r0, [r2, 0x14] - cmp r0, 0 - bne _0807D77C - lsls r0, r7, 2 - add r0, r8 - str r6, [r0] - ldr r0, _0807D778 - add r0, sp - ldr r0, [r0] - strb r3, [r0] - b _0807D7B8 - .align 2, 0 -_0807D754: .4byte 0x00000d05 -_0807D758: .4byte 0x00000d0c -_0807D75C: .4byte 0x0000ffff -_0807D760: .4byte gUnknown_80F4468 -_0807D764: .4byte 0x00000d18 -_0807D768: .4byte 0x00000d08 -_0807D76C: .4byte 0xffff0000 -_0807D770: .4byte 0x00000bbc -_0807D774: .4byte 0x00000ce8 -_0807D778: .4byte 0x00000d28 -_0807D77C: - adds r4, 0x1 - cmp r4, 0x1D - bgt _0807D790 - lsls r0, r4, 2 - ldr r1, _0807D9B4 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0x63 - bne _0807D6DA -_0807D790: - mov r3, r9 - cmp r3, 0 - bne _0807D7B8 - movs r0, 0x74 - muls r0, r7 - add r0, sp - adds r0, 0x4 - str r3, [r0] - ldr r1, _0807D9B8 - add r1, sp - lsls r0, r7, 2 - adds r1, r0 - ldrh r2, [r1] - mov r0, r10 - orrs r0, r2 - strh r0, [r1] - ldrh r2, [r1, 0x2] - mov r0, r10 - orrs r0, r2 - strh r0, [r1, 0x2] -_0807D7B8: - movs r4, 0xD2 - lsls r4, 4 - add r4, sp - ldr r7, [r4] - ldr r5, _0807D9BC - add r5, sp - ldr r5, [r5] - cmp r7, r5 - bge _0807D7CC - b _0807D6A0 -_0807D7CC: - movs r7, 0 - ldr r0, _0807D9BC - add r0, sp - ldr r0, [r0] - cmp r7, r0 - bge _0807D866 -_0807D7D8: - movs r0, 0x74 - adds r1, r7, 0 - muls r1, r0 - mov r8, r1 - mov r4, sp - add r4, r8 - adds r4, 0x4 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807D85A - adds r0, r4, 0x4 - movs r1, 0x1 - bl sub_80461C8 - movs r2, 0x4 - ldrsh r0, [r4, r2] - movs r3, 0x6 - ldrsh r1, [r4, r3] - bl sub_80402AC - movs r5, 0xC2 - lsls r5, 4 - add r5, sp - lsls r6, r7, 3 - adds r5, r6 - ldr r4, _0807D9B8 - add r4, sp - lsls r0, r7, 2 - adds r4, r0 - movs r0, 0 - ldrsh r1, [r4, r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, 0x4 - lsls r0, 8 - add r1, sp, 0x10 - add r1, r8 - ldr r1, [r1] - subs r0, r1 - movs r1, 0x3C - bl __divsi3 - str r0, [r5] - ldr r5, _0807D9C0 - add r5, sp - adds r5, r6 - movs r2, 0x2 - ldrsh r1, [r4, r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, 0x4 - lsls r0, 8 - add r1, sp, 0x14 - add r1, r8 - ldr r1, [r1] - subs r0, r1 - movs r1, 0x3C - bl __divsi3 - str r0, [r5] -_0807D85A: - adds r7, 0x1 - ldr r3, _0807D9BC - add r3, sp - ldr r3, [r3] - cmp r7, r3 - blt _0807D7D8 -_0807D866: - movs r1, 0xD1 - lsls r1, 1 - ldr r4, _0807D9C4 - add r4, sp - ldr r0, [r4] - bl sub_80421C0 - movs r5, 0 - mov r9, r5 - ldr r0, _0807D9C8 - ldr r0, [r0] - ldr r1, _0807D9CC - adds r0, r1 - ldrb r0, [r0] - ldr r2, _0807D9D0 - add r2, sp - str r0, [r2] - mov r10, r5 - movs r6, 0 -_0807D88C: - movs r7, 0 - mov r3, r10 - adds r3, 0x22 - ldr r4, _0807D9D4 - add r4, sp - str r3, [r4] - adds r5, r6, 0x1 - ldr r0, _0807D9D8 - add r0, sp - str r5, [r0] - ldr r1, _0807D9BC - add r1, sp - ldr r1, [r1] - cmp r7, r1 - bge _0807D916 - mov r2, r9 - lsls r2, 24 - mov r8, r2 -_0807D8B0: - movs r0, 0x74 - adds r5, r7, 0 - muls r5, r0 - mov r4, sp - adds r4, r5 - adds r4, 0x4 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807D90A - movs r0, 0xC2 - lsls r0, 4 - add r0, sp - lsls r2, r7, 3 - adds r0, r2 - ldr r1, [r0] - ldr r0, _0807D9C0 - add r0, sp - adds r0, r2 - ldr r2, [r0] - adds r0, r4, 0 - bl sub_804539C - mov r0, r10 - bl sub_8009C7C - add r2, sp, 0x20 - adds r2, r5 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - str r1, [r2] - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - ldr r3, _0807D9D0 - add r3, sp - ldr r1, [r3] - movs r2, 0 - mov r4, r8 - lsrs r3, r4, 24 - bl sub_80462AC -_0807D90A: - adds r7, 0x1 - ldr r5, _0807D9BC - add r5, sp - ldr r5, [r5] - cmp r7, r5 - blt _0807D8B0 -_0807D916: - movs r0, 0x13 - bl sub_803E46C - ldr r0, _0807D9D4 - add r0, sp - ldr r0, [r0] - mov r10, r0 - movs r0, 0x3 - ands r0, r6 - cmp r0, 0 - bne _0807D930 - movs r1, 0x1 - add r9, r1 -_0807D930: - movs r0, 0x7 - mov r2, r9 - ands r2, r0 - mov r9, r2 - ldr r3, _0807D9D8 - add r3, sp - ldr r6, [r3] - cmp r6, 0x3B - ble _0807D88C - movs r7, 0 - ldr r4, _0807D9BC - add r4, sp - ldr r4, [r4] - cmp r7, r4 - bge _0807D996 -_0807D94E: - ldr r0, _0807D9B8 - add r0, sp - lsls r1, r7, 2 - adds r4, r0, r1 - movs r5, 0 - ldrsh r0, [r4, r5] - cmp r0, 0 - blt _0807D98A - movs r0, 0x74 - muls r0, r7 - add r0, sp - adds r0, 0x4 - bl sub_8045108 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_80460F8 - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_80402AC - movs r3, 0x1 - movs r4, 0xD1 - lsls r4, 4 - add r4, sp - str r3, [r4] -_0807D98A: - adds r7, 0x1 - ldr r5, _0807D9BC - add r5, sp - ldr r5, [r5] - cmp r7, r5 - blt _0807D94E -_0807D996: - movs r0, 0xD1 - lsls r0, 4 - add r0, sp - ldr r0, [r0] - cmp r0, 0 - beq _0807D9E0 - ldr r0, _0807D9DC - ldr r1, [r0] - ldr r2, _0807D9C4 - add r2, sp - ldr r0, [r2] - bl sub_80522A8 - b _0807D9EE - .align 2, 0 -_0807D9B4: .4byte gUnknown_80F4468 -_0807D9B8: .4byte 0x00000bbc -_0807D9BC: .4byte 0x00000d0c -_0807D9C0: .4byte 0x00000c24 -_0807D9C4: .4byte 0x00000d08 -_0807D9C8: .4byte gUnknown_203B418 -_0807D9CC: .4byte 0x00018210 -_0807D9D0: .4byte 0x00000d14 -_0807D9D4: .4byte 0x00000d1c -_0807D9D8: .4byte 0x00000d24 -_0807D9DC: .4byte gUnknown_80FE060 -_0807D9E0: - ldr r0, _0807DA08 - ldr r1, [r0] - ldr r3, _0807DA0C - add r3, sp - ldr r0, [r3] - bl sub_80522A8 -_0807D9EE: - movs r0, 0x1 - bl sub_807EC28 -_0807D9F4: - ldr r3, _0807DA10 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807DA08: .4byte gUnknown_80FE034 -_0807DA0C: .4byte 0x00000d08 -_0807DA10: .4byte 0x00000d2c - thumb_func_end sub_807D510 - - thumb_func_start sub_807DA14 -sub_807DA14: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r5, r0, 0 - adds r6, r1, 0 - lsls r2, 24 - lsrs r4, r2, 24 - ldr r0, [r6, 0x70] - mov r10, r0 - adds r0, r6, 0 - movs r1, 0xE - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807DA50 - ldr r0, _0807DA48 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807DA4C - b _0807DA5C - .align 2, 0 -_0807DA48: .4byte gUnknown_202DF98 -_0807DA4C: .4byte gUnknown_80FCB98 -_0807DA50: - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - beq _0807DA6C - ldr r0, _0807DA68 -_0807DA5C: - ldr r2, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80522F4 - b _0807DB5E - .align 2, 0 -_0807DA68: .4byte gUnknown_80FC9C0 -_0807DA6C: - cmp r4, 0x8 - bne _0807DA76 - mov r0, r10 - adds r0, 0x46 - ldrb r4, [r0] -_0807DA76: - adds r0, r6, 0 - movs r1, 0x6 - adds r2, r4, 0 - bl sub_806CDD4 - lsls r1, r4, 2 - adds r2, r6, 0x4 - mov r9, r2 - ldr r0, _0807DAFC - adds r1, r0 - mov r8, r1 -_0807DA8C: - ldrh r0, [r6, 0x4] - mov r3, r8 - ldrh r3, [r3] - adds r0, r3 - lsls r0, 16 - ldrh r1, [r6, 0x6] - mov r2, r8 - ldrh r2, [r2, 0x2] - adds r1, r2 - lsls r1, 16 - lsrs r7, r0, 16 - orrs r7, r1 - lsls r0, r7, 16 - asrs r5, r0, 16 - cmp r5, 0 - ble _0807DB00 - asrs r4, r7, 16 - cmp r4, 0 - ble _0807DB00 - cmp r5, 0x36 - bgt _0807DB00 - cmp r4, 0x1E - bgt _0807DB00 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_804954C - adds r1, r0, 0 - ldr r0, [r1, 0x10] - cmp r0, 0 - bne _0807DB00 - ldrh r1, [r1] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0807DB00 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - movs r3, 0 - bl sub_80694C0 - adds r0, r6, 0 - movs r1, 0 - bl sub_804535C - adds r0, r6, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0807DA8C - movs r0, 0x3A - bl sub_803E46C - b _0807DA8C - .align 2, 0 -_0807DAFC: .4byte gUnknown_80F4448 -_0807DB00: - adds r0, r6, 0 - bl sub_806A5B8 - mov r1, r9 - adds r0, r6, 0 - bl sub_80706A4 - lsls r0, 24 - cmp r0, 0 - beq _0807DB20 - adds r0, r6, 0 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_0807DB20: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807DB5E - adds r0, r6, 0 - movs r1, 0x8 - bl sub_806CE68 - mov r3, r10 - ldrb r0, [r3, 0x7] - cmp r0, 0 - beq _0807DB48 - mov r0, r9 - bl sub_804AC20 - movs r0, 0 - bl sub_807EC28 -_0807DB48: - adds r0, r6, 0 - bl sub_806A5B8 - ldr r0, _0807DB6C - ldr r0, [r0] - ldr r1, _0807DB70 - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_8075900 -_0807DB5E: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807DB6C: .4byte gUnknown_203B418 -_0807DB70: .4byte 0x00003a08 - thumb_func_end sub_807DA14 - - thumb_func_start sub_807DB74 -sub_807DB74: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r7, r0, 0 - movs r0, 0 - mov r8, r0 - bl sub_80441E8 - lsls r0, 24 - cmp r0, 0 - beq _0807DB94 - ldr r0, _0807DB90 - b _0807DBA0 - .align 2, 0 -_0807DB90: .4byte gUnknown_80FD060 -_0807DB94: - bl sub_804AF74 - lsls r0, 24 - cmp r0, 0 - beq _0807DBB0 - ldr r0, _0807DBAC -_0807DBA0: - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - b _0807DC54 - .align 2, 0 -_0807DBAC: .4byte gUnknown_80FD08C -_0807DBB0: - movs r5, 0 - ldr r0, _0807DC24 - adds r6, r0, 0 -_0807DBB6: - movs r4, 0 -_0807DBB8: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x2 - bne _0807DBE2 - adds r0, r1, 0 - ands r0, r6 - movs r1, 0x1 - orrs r0, r1 - strh r0, [r2] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80498A8 - movs r1, 0x1 - mov r8, r1 -_0807DBE2: - adds r4, 0x1 - cmp r4, 0x37 - ble _0807DBB8 - adds r5, 0x1 - cmp r5, 0x1F - ble _0807DBB6 - movs r5, 0 -_0807DBF0: - movs r4, 0 - adds r6, r5, 0x1 -_0807DBF4: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049BB0 - adds r4, 0x1 - cmp r4, 0x37 - ble _0807DBF4 - adds r5, r6, 0 - cmp r5, 0x1F - ble _0807DBF0 - mov r0, r8 - cmp r0, 0 - beq _0807DC30 - ldr r1, _0807DC28 - adds r0, r7, 0 - bl sub_80421C0 - ldr r0, _0807DC2C - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 - b _0807DC3A - .align 2, 0 -_0807DC24: .4byte 0x0000fffc -_0807DC28: .4byte 0x000001a1 -_0807DC2C: .4byte gUnknown_80FD05C -_0807DC30: - ldr r0, _0807DC60 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80522A8 -_0807DC3A: - ldr r0, _0807DC64 - ldr r0, [r0] - movs r1, 0xCE - lsls r1, 3 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - bl sub_806CF60 - bl sub_8040A84 - bl sub_8049ED4 -_0807DC54: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807DC60: .4byte gUnknown_80FD060 -_0807DC64: .4byte gUnknown_203B418 - thumb_func_end sub_807DB74 - - thumb_func_start sub_807DC68 -sub_807DC68: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r9, r0 - ldr r0, _0807DC88 - ldr r1, [r0] - ldr r2, _0807DC8C - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0807DC94 - ldr r0, _0807DC90 - b _0807DCB8 - .align 2, 0 -_0807DC88: .4byte gUnknown_203B418 -_0807DC8C: .4byte 0x00003a08 -_0807DC90: .4byte gUnknown_80FD3C8 -_0807DC94: - ldr r3, _0807DCA4 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0807DCAC - ldr r0, _0807DCA8 - b _0807DCB8 - .align 2, 0 -_0807DCA4: .4byte 0x00003a0b -_0807DCA8: .4byte gUnknown_80FD3CC -_0807DCAC: - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - beq _0807DCC8 - ldr r0, _0807DCC4 -_0807DCB8: - ldr r1, [r0] - mov r0, r9 - bl sub_80522A8 - b _0807DF0E - .align 2, 0 -_0807DCC4: .4byte gUnknown_80FD3D0 -_0807DCC8: - movs r0, 0 - mov r8, r0 - movs r5, 0x1 - movs r1, 0 - mov r10, r1 - ldr r2, _0807DD68 - adds r7, r2, 0 -_0807DCD6: - movs r4, 0x1 -_0807DCD8: - movs r6, 0 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2] - ldr r3, _0807DD6C - adds r0, r3, 0 - adds r3, r1, 0 - ands r3, r0 - strh r3, [r2] - mov r0, r10 - strb r0, [r2, 0x9] - movs r0, 0x10 - ands r0, r3 - cmp r0, 0 - bne _0807DD94 - movs r0, 0x80 - lsls r0, 1 - adds r1, r0, 0 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0807DD94 - ldrh r0, [r2, 0x4] - movs r1, 0x3 - orrs r0, r1 - strh r0, [r2, 0x4] - ldr r1, _0807DD70 - adds r0, r1, 0 - adds r1, r3, 0 - ands r1, r0 - strh r1, [r2] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0807DD28 - movs r3, 0x1 - mov r8, r3 -_0807DD28: - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x2 - beq _0807DD94 - cmp r0, 0x3 - beq _0807DD94 - cmp r5, 0x1 - beq _0807DD44 - cmp r4, 0x1 - beq _0807DD44 - cmp r5, 0x36 - beq _0807DD44 - cmp r4, 0x1E - bne _0807DD5C -_0807DD44: - ldr r0, [r2, 0x14] - cmp r0, 0 - bne _0807DD5C - ldr r0, _0807DD74 - ldr r0, [r0] - movs r1, 0xCE - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0807DD5C - movs r6, 0x1 -_0807DD5C: - cmp r6, 0 - beq _0807DD78 - ldrh r0, [r2] - ands r0, r7 - movs r1, 0x2 - b _0807DD90 - .align 2, 0 -_0807DD68: .4byte 0x0000fffc -_0807DD6C: .4byte 0x0000fbff -_0807DD70: .4byte 0x0000fff7 -_0807DD74: .4byte gUnknown_203B418 -_0807DD78: - ldrh r1, [r2] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - beq _0807DD94 - adds r0, r1, 0 - ands r0, r7 - movs r1, 0x1 - orrs r0, r1 - movs r3, 0x80 - lsls r3, 3 - adds r1, r3, 0 -_0807DD90: - orrs r0, r1 - strh r0, [r2] -_0807DD94: - adds r4, 0x1 - cmp r4, 0x1E - ble _0807DCD8 - adds r5, 0x1 - cmp r5, 0x36 - ble _0807DCD6 - ldr r0, _0807DF1C - ldr r1, [r0] - ldr r2, _0807DF20 - adds r0, r1, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - adds r2, 0x2 - adds r1, r2 - movs r3, 0 - ldrsh r1, [r1, r3] - movs r2, 0x1 - bl sub_8050C30 - lsls r0, 24 - cmp r0, 0 - beq _0807DE02 - movs r5, 0 - movs r6, 0x84 - lsls r6, 8 - movs r7, 0 -_0807DDC8: - movs r4, 0 -_0807DDCA: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2] - movs r3, 0x80 - lsls r3, 1 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0807DDF6 - adds r0, r6, 0 - ands r0, r1 - cmp r0, r6 - bne _0807DDF6 - ldr r3, _0807DF24 - adds r0, r3, 0 - ands r0, r1 - movs r1, 0x2 - orrs r0, r1 - strh r0, [r2] -_0807DDF6: - adds r4, 0x1 - cmp r4, 0x1F - ble _0807DDCA - adds r5, 0x1 - cmp r5, 0x37 - ble _0807DDC8 -_0807DE02: - mov r0, r8 - cmp r0, 0 - beq _0807DE14 - ldr r0, _0807DF1C - ldr r0, [r0] - ldr r1, _0807DF28 - adds r0, r1 - movs r1, 0 - strb r1, [r0] -_0807DE14: - movs r5, 0 -_0807DE16: - movs r4, 0 - adds r6, r5, 0x1 -_0807DE1A: - mov r2, r8 - cmp r2, 0 - beq _0807DE30 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049590 - ldrh r2, [r0] - movs r1, 0x40 - orrs r1, r2 - strh r1, [r0] -_0807DE30: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8049BB0 - adds r4, 0x1 - cmp r4, 0x1F - ble _0807DE1A - adds r5, r6, 0 - cmp r5, 0x37 - ble _0807DE16 - movs r5, 0 -_0807DE46: - ldr r0, _0807DF1C - ldr r0, [r0] - lsls r1, r5, 2 - ldr r3, _0807DF2C - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807DE74 - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl sub_804954C - ldrb r1, [r0, 0x9] - adds r0, r4, 0 - adds r0, 0x25 - strb r1, [r0] -_0807DE74: - adds r5, 0x1 - cmp r5, 0x13 - ble _0807DE46 - bl sub_804EB30 - bl sub_804AAD4 - bl sub_8049884 - bl sub_806CF60 - bl sub_8040A84 - bl sub_8049ED4 - ldr r0, _0807DF30 - ldr r1, [r0] - mov r0, r9 - bl sub_80522A8 - movs r0, 0x28 - movs r1, 0x2B - bl sub_803E708 - mov r0, r9 - movs r1, 0x1 - bl sub_8075900 - movs r5, 0 -_0807DEAE: - ldr r0, _0807DF1C - ldr r0, [r0] - lsls r1, r5, 2 - ldr r3, _0807DF2C - adds r0, r3 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807DEF4 - adds r0, r4, 0 - bl sub_806A5B8 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807DEF4 - adds r1, r4, 0x4 - adds r0, r4, 0 - bl sub_80706A4 - lsls r0, 24 - cmp r0, 0 - beq _0807DEF4 - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_0807DEF4: - adds r5, 0x1 - cmp r5, 0x13 - ble _0807DEAE - ldr r0, _0807DF1C - ldr r0, [r0] - ldr r1, _0807DF34 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - movs r0, 0x14 - movs r1, 0x2B - bl sub_803E708 -_0807DF0E: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807DF1C: .4byte gUnknown_203B418 -_0807DF20: .4byte 0x0000e21c -_0807DF24: .4byte 0x0000fffc -_0807DF28: .4byte 0x00003a0c -_0807DF2C: .4byte 0x000135cc -_0807DF30: .4byte gUnknown_80FD3A0 -_0807DF34: .4byte 0x00003a08 - thumb_func_end sub_807DC68 - - thumb_func_start sub_807DF38 -sub_807DF38: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - str r0, [sp, 0x8] - mov r10, r1 - str r2, [sp, 0xC] - adds r6, r3, 0 - ldr r0, [sp, 0x40] - ldr r1, [sp, 0x44] - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x10] - lsls r1, 16 - asrs r1, 16 - str r1, [sp, 0x14] - movs r5, 0 - b _0807DF62 -_0807DF60: - adds r5, 0x1 -_0807DF62: - cmp r5, 0x13 - bgt _0807DF8E - ldr r0, _0807DFA8 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0807DFAC - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807DF60 - adds r0, r4, 0 - movs r1, 0x15 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807DF60 -_0807DF8E: - cmp r5, 0x14 - beq _0807DFB4 - ldr r0, [sp, 0x8] - mov r1, r10 - bl sub_804218C - ldr r0, _0807DFB0 - mov r1, r10 - movs r2, 0 - bl sub_8045B94 - b _0807DFC2 - .align 2, 0 -_0807DFA8: .4byte gUnknown_203B418 -_0807DFAC: .4byte 0x000135cc -_0807DFB0: .4byte gUnknown_202DF98 -_0807DFB4: - mov r0, r10 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bne _0807DFD4 -_0807DFC2: - ldr r0, _0807DFD0 - ldr r2, [r0] - ldr r0, [sp, 0x8] - mov r1, r10 - bl sub_80522F4 - b _0807E174 - .align 2, 0 -_0807DFD0: .4byte gUnknown_80F96EC -_0807DFD4: - ldr r0, [sp, 0x8] - mov r1, r10 - adds r2, r6, 0 - bl sub_804216C - ldr r0, _0807E184 - mov r1, r10 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807E188 - ldr r2, [r0] - ldr r0, [sp, 0x8] - mov r1, r10 - bl sub_80522F4 - movs r5, 0 - ldr r0, _0807E18C - lsls r1, r6, 2 - adds r0, r1, r0 - ldr r0, [r0] - mov r9, r0 - ldrh r4, [r0] - movs r3, 0 - ldrsh r0, [r0, r3] - str r1, [sp, 0x1C] - cmp r0, 0x63 - bne _0807E00E - b _0807E124 -_0807E00E: - mov r0, sp - adds r0, 0x4 - str r0, [sp, 0x18] -_0807E014: - ldr r1, [sp, 0xC] - ldrh r0, [r1] - adds r0, r4, r0 - lsls r0, 16 - lsrs r0, 16 - ldr r2, _0807E190 - ldr r1, [sp, 0x4] - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x4] - ldr r2, [sp, 0xC] - ldrh r0, [r2, 0x2] - mov r3, r9 - ldrh r3, [r3, 0x2] - adds r0, r3 - lsls r0, 16 - ldr r2, _0807E194 - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x4] - ldr r1, [sp, 0x18] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - blt _0807E112 - asrs r1, r2, 16 - cmp r1, 0 - blt _0807E112 - cmp r0, 0x37 - bgt _0807E112 - cmp r1, 0x1F - bgt _0807E112 - bl sub_8049590 - mov r8, r0 - ldr r0, [sp, 0x18] - movs r2, 0 - ldrsh r1, [r0, r2] - cmp r1, 0 - ble _0807E0BE - ldr r0, [sp, 0x4] - asrs r0, 16 - cmp r0, 0 - ble _0807E0BE - cmp r1, 0x36 - bgt _0807E0BE - cmp r0, 0x1E - bgt _0807E0BE - mov r3, r8 - ldrh r1, [r3] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _0807E0BE - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0807E0BE - ldr r2, _0807E198 - adds r0, r2, 0 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strh r0, [r3] - movs r5, 0x1 - negs r5, r5 - add r7, sp, 0x4 -_0807E09A: - movs r4, 0x1 - negs r4, r4 - adds r6, r5, 0x1 -_0807E0A0: - movs r3, 0 - ldrsh r0, [r7, r3] - adds r0, r4 - ldr r1, [sp, 0x4] - asrs r1, 16 - adds r1, r5 - bl sub_80498A8 - adds r4, 0x1 - cmp r4, 0x1 - ble _0807E0A0 - adds r5, r6, 0 - cmp r5, 0x1 - ble _0807E09A - movs r5, 0x1 -_0807E0BE: - mov r0, r8 - ldr r4, [r0, 0x14] - cmp r4, 0 - beq _0807E0DC - cmp r4, r10 - beq _0807E0DC - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x3 - bne _0807E0DC - add r0, sp, 0x4 - movs r1, 0 - bl sub_80461C8 -_0807E0DC: - mov r1, r8 - ldr r4, [r1, 0x10] - cmp r4, 0 - beq _0807E112 - cmp r4, r10 - beq _0807E112 - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0807E112 - ldr r0, _0807E19C - ldr r2, [sp, 0x1C] - adds r0, r2, r0 - ldr r0, [r0] - str r0, [sp] - ldr r0, [sp, 0x8] - adds r1, r4, 0 - ldr r2, [sp, 0x10] - ldr r3, [sp, 0x14] - bl sub_807E1A0 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807E124 -_0807E112: - movs r3, 0x4 - add r9, r3 - mov r0, r9 - ldrh r4, [r0] - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x63 - beq _0807E124 - b _0807E014 -_0807E124: - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807E174 - mov r0, r10 - bl sub_80450F8 - cmp r0, 0x1 - bne _0807E14E - ldr r0, _0807E19C - ldr r2, [sp, 0x1C] - adds r0, r2, r0 - ldr r0, [r0] - str r0, [sp] - ldr r0, [sp, 0x8] - mov r1, r10 - ldr r2, [sp, 0x10] - ldr r3, [sp, 0x14] - bl sub_807E1A0 -_0807E14E: - cmp r5, 0 - beq _0807E174 - movs r5, 0 -_0807E154: - movs r4, 0 - adds r6, r5, 0x1 -_0807E158: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8049BB0 - adds r4, 0x1 - cmp r4, 0x37 - ble _0807E158 - adds r5, r6, 0 - cmp r5, 0x1F - ble _0807E154 - bl sub_8040A84 - bl sub_8049ED4 -_0807E174: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807E184: .4byte gUnknown_202DF98 -_0807E188: .4byte gUnknown_80F96BC -_0807E18C: .4byte gUnknown_8107178 -_0807E190: .4byte 0xffff0000 -_0807E194: .4byte 0x0000ffff -_0807E198: .4byte 0x0000fffc -_0807E19C: .4byte gUnknown_203B444 - thumb_func_end sub_807DF38 - - thumb_func_start sub_807E1A0 -sub_807E1A0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x24 - mov r9, r0 - adds r6, r1, 0 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - lsls r3, 16 - asrs r7, r3, 16 - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807E244 - ldr r5, [r6, 0x70] - add r4, sp, 0x1C - ldr r1, _0807E20C - adds r0, r4, 0 - bl sub_8092A88 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80571F0 - lsls r0, 24 - cmp r0, 0 - bne _0807E244 - ldrb r0, [r5, 0x6] - cmp r0, 0 - bne _0807E210 - movs r0, 0xE - ldrsh r4, [r5, r0] - lsrs r0, r4, 31 - adds r5, r4, r0 - asrs r4, r5, 1 - adds r0, r6, 0 - movs r1, 0x2 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _0807E202 - lsrs r0, r5, 31 - adds r0, r4, r0 - asrs r4, r0, 1 -_0807E202: - cmp r4, 0 - bgt _0807E226 - movs r4, 0x1 - b _0807E226 - .align 2, 0 -_0807E20C: .4byte 0x00000163 -_0807E210: - ldr r4, [sp, 0x40] - adds r0, r6, 0 - movs r1, 0x2 - bl sub_8071858 - lsls r0, 24 - cmp r0, 0 - beq _0807E226 - lsrs r0, r4, 31 - adds r0, r4, r0 - asrs r4, r0, 1 -_0807E226: - add r0, sp, 0x18 - str r0, [sp] - mov r0, r8 - str r0, [sp, 0x4] - str r7, [sp, 0x8] - movs r0, 0 - str r0, [sp, 0xC] - str r0, [sp, 0x10] - str r0, [sp, 0x14] - mov r0, r9 - adds r1, r6, 0 - adds r2, r4, 0 - movs r3, 0 - bl sub_806F370 -_0807E244: - add sp, 0x24 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807E1A0 - - thumb_func_start sub_807E254 -sub_807E254: - push {r4-r7,lr} - sub sp, 0x8 - adds r6, r0, 0 - adds r7, r1, 0 - movs r1, 0xE - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807E274 - ldr r0, _0807E270 - adds r1, r6, 0 - b _0807E286 - .align 2, 0 -_0807E270: .4byte gUnknown_202DF98 -_0807E274: - adds r0, r7, 0 - movs r1, 0xE - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807E2A4 - ldr r0, _0807E29C - adds r1, r7, 0 -_0807E286: - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807E2A0 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_80522F4 - b _0807E366 - .align 2, 0 -_0807E29C: .4byte gUnknown_202DF98 -_0807E2A0: .4byte gUnknown_80FCAC0 -_0807E2A4: - ldrh r1, [r6, 0x6] - lsls r1, 16 - ldrh r0, [r6, 0x4] - orrs r0, r1 - str r0, [sp] - ldrh r1, [r7, 0x6] - lsls r1, 16 - ldrh r0, [r7, 0x4] - orrs r0, r1 - str r0, [sp, 0x4] - mov r5, sp - mov r0, sp - bl nullsub_93 - add r4, sp, 0x4 - adds r0, r4, 0 - bl nullsub_93 - movs r0, 0 - ldrsh r1, [r4, r0] - movs r0, 0x2 - ldrsh r2, [r4, r0] - adds r0, r6, 0 - movs r3, 0x1 - bl sub_80694C0 - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0x2 - ldrsh r2, [r5, r0] - adds r0, r7, 0 - movs r3, 0x1 - bl sub_80694C0 - adds r0, r6, 0 - movs r1, 0 - bl sub_804535C - adds r0, r7, 0 - movs r1, 0 - bl sub_804535C - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807E330 - ldr r0, [r6, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0807E31A - adds r0, r6, 0x4 - bl sub_804AC20 - movs r0, 0 - bl sub_807EC28 -_0807E31A: - adds r0, r6, 0 - bl sub_806A5B8 - ldr r0, _0807E370 - ldr r0, [r0] - ldr r1, _0807E374 - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_8075900 -_0807E330: - adds r0, r7, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807E366 - ldr r0, [r7, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0807E350 - adds r0, r7, 0x4 - bl sub_804AC20 - movs r0, 0 - bl sub_807EC28 -_0807E350: - adds r0, r7, 0 - bl sub_806A5B8 - ldr r0, _0807E370 - ldr r0, [r0] - ldr r2, _0807E374 - adds r0, r2 - ldrb r1, [r0] - adds r0, r7, 0 - bl sub_8075900 -_0807E366: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807E370: .4byte gUnknown_203B418 -_0807E374: .4byte 0x00003a08 - thumb_func_end sub_807E254 - - thumb_func_start sub_807E378 -sub_807E378: - push {r4-r7,lr} - bl sub_8083600 - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807E38C - b _0807E564 -_0807E38C: - ldr r0, _0807E41C - ldr r1, [r0] - ldr r3, _0807E420 - adds r2, r1, r3 - ldrh r3, [r2] - movs r5, 0 - ldrsh r1, [r2, r5] - adds r6, r0, 0 - cmp r1, 0 - ble _0807E3AA - subs r0, r3, 0x1 - strh r0, [r2] - lsls r0, 16 - cmp r0, 0 - bgt _0807E3B4 -_0807E3AA: - ldr r0, [r6] - ldr r1, _0807E424 - adds r0, r1 - movs r1, 0x3 - strb r1, [r0] -_0807E3B4: - adds r5, r6, 0 - ldr r1, [r5] - ldr r7, _0807E424 - adds r0, r1, r7 - ldrb r0, [r0] - cmp r0, 0 - bne _0807E434 - ldr r2, _0807E420 - adds r0, r1, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r0, 0xF9 - ble _0807E3D0 - b _0807E564 -_0807E3D0: - bl sub_805E804 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806A2BC - adds r0, r4, 0 - bl sub_807520C - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _0807E3EE - b _0807E564 -_0807E3EE: - ldr r0, _0807E428 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - ldr r1, _0807E42C - ldr r0, [r5] - ldr r2, _0807E430 - adds r0, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0 - bl sub_80426C8 - ldr r0, [r5] - adds r0, r7 - movs r1, 0x1 - strb r1, [r0] - b _0807E564 - .align 2, 0 -_0807E41C: .4byte gUnknown_203B418 -_0807E420: .4byte 0x00000666 -_0807E424: .4byte 0x0000067a -_0807E428: .4byte gUnknown_80F9C4C -_0807E42C: .4byte gUnknown_80F5FAC -_0807E430: .4byte 0x00003a0e -_0807E434: - cmp r0, 0x1 - bne _0807E4A0 - ldr r2, _0807E490 - adds r0, r1, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r0, 0x95 - ble _0807E446 - b _0807E564 -_0807E446: - bl sub_805E804 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806A2BC - adds r0, r4, 0 - bl sub_807520C - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _0807E464 - b _0807E564 -_0807E464: - ldr r0, _0807E494 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - ldr r1, _0807E498 - ldr r0, [r5] - ldr r2, _0807E49C - adds r0, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x1 - bl sub_80426C8 - ldr r0, [r5] - adds r0, r7 - movs r1, 0x2 - strb r1, [r0] - b _0807E564 - .align 2, 0 -_0807E490: .4byte 0x00000666 -_0807E494: .4byte gUnknown_80F9C70 -_0807E498: .4byte gUnknown_80F5FAC -_0807E49C: .4byte 0x00003a0e -_0807E4A0: - cmp r0, 0x2 - bne _0807E508 - ldr r2, _0807E4F8 - adds r0, r1, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r0, 0x31 - bgt _0807E564 - bl sub_805E804 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806A2BC - adds r0, r4, 0 - bl sub_807520C - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807E564 - ldr r0, _0807E4FC - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - ldr r1, _0807E500 - ldr r0, [r5] - ldr r2, _0807E504 - adds r0, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x2 - bl sub_80426C8 - ldr r0, [r5] - adds r0, r7 - movs r1, 0x3 - strb r1, [r0] - b _0807E564 - .align 2, 0 -_0807E4F8: .4byte 0x00000666 -_0807E4FC: .4byte gUnknown_80F9C8C -_0807E500: .4byte gUnknown_80F5FAC -_0807E504: .4byte 0x00003a0e -_0807E508: - ldr r5, _0807E56C - adds r0, r1, r5 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bgt _0807E564 - bl sub_805E804 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806A2BC - adds r0, r4, 0 - bl sub_807520C - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _0807E564 - ldr r0, _0807E570 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80522A8 - ldr r1, _0807E574 - ldr r0, [r6] - ldr r2, _0807E578 - adds r0, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x3 - bl sub_80426C8 - ldr r0, [r6] - adds r0, r7 - movs r1, 0x4 - strb r1, [r0] - ldr r1, _0807E57C - adds r0, r4, 0 - adds r2, r4, 0 - bl sub_8068FE0 -_0807E564: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807E56C: .4byte 0x00000666 -_0807E570: .4byte gUnknown_80F9CBC -_0807E574: .4byte gUnknown_80F5FAC -_0807E578: .4byte 0x00003a0e -_0807E57C: .4byte 0x0000021e - thumb_func_end sub_807E378 - - thumb_func_start sub_807E580 -sub_807E580: - push {lr} - cmp r0, 0 - beq _0807E596 - movs r1, 0x2D - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0807E596 - movs r0, 0 - b _0807E5A0 -_0807E596: - ldr r0, _0807E5A4 - ldr r0, [r0] - ldr r1, _0807E5A8 - adds r0, r1 - ldrb r0, [r0] -_0807E5A0: - pop {r1} - bx r1 - .align 2, 0 -_0807E5A4: .4byte gUnknown_203B418 -_0807E5A8: .4byte 0x0000e264 - thumb_func_end sub_807E580 - - thumb_func_start sub_807E5AC -sub_807E5AC: - push {lr} - ldr r0, _0807E5DC - ldr r0, [r0] - ldr r1, _0807E5E0 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x8 - bne _0807E5C6 - movs r0, 0x8 - bl sub_8084100 - lsls r0, 24 - lsrs r0, 24 -_0807E5C6: - bl sub_807E5E4 - bl sub_8069E8C - movs r0, 0 - movs r1, 0x1 - bl sub_807EAA0 - pop {r0} - bx r0 - .align 2, 0 -_0807E5DC: .4byte gUnknown_203B418 -_0807E5E0: .4byte 0x0001c578 - thumb_func_end sub_807E5AC - - thumb_func_start sub_807E5E4 -sub_807E5E4: - push {r4-r6,lr} - ldr r3, _0807E674 - ldr r1, [r3] - ldr r2, _0807E678 - adds r1, r2 - movs r4, 0 - strb r0, [r1] - ldr r0, [r3] - adds r2, r0, r2 - ldrb r1, [r2] - ldr r2, _0807E67C - adds r0, r2 - strb r1, [r0] - ldr r0, [r3] - ldr r1, _0807E680 - adds r0, r1 - strb r4, [r0] - movs r2, 0 - adds r4, r3, 0 - ldr r6, _0807E684 - movs r1, 0 - ldr r5, _0807E688 -_0807E610: - ldr r0, [r4] - adds r0, r6 - adds r0, r2 - strb r1, [r0] - ldr r0, [r4] - adds r0, r5 - adds r0, r2 - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x7 - ble _0807E610 - ldr r0, [r3] - ldr r2, _0807E68C - adds r0, r2 - movs r2, 0 - movs r1, 0x9 - strb r1, [r0] - ldr r0, [r3] - ldr r1, _0807E690 - adds r0, r1 - strb r2, [r0] - ldr r0, [r3] - adds r1, 0x1 - adds r0, r1 - strb r2, [r0] - movs r6, 0xBE - lsls r6, 1 - ldr r5, _0807E694 - movs r4, 0xBF - lsls r4, 1 -_0807E64C: - ldr r0, [r3] - lsls r1, r2, 2 - adds r0, r1 - adds r0, r6 - strb r2, [r0] - ldr r0, [r3] - adds r0, r1 - adds r0, r5 - strb r2, [r0] - ldr r0, [r3] - adds r0, r1 - adds r0, r4 - strb r2, [r0] - adds r2, 0x1 - cmp r2, 0xFF - ble _0807E64C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807E674: .4byte gUnknown_203B418 -_0807E678: .4byte 0x0000e265 -_0807E67C: .4byte 0x0000e264 -_0807E680: .4byte 0x0000e279 -_0807E684: .4byte 0x0000e267 -_0807E688: .4byte 0x0000e26f -_0807E68C: .4byte 0x0000e266 -_0807E690: .4byte 0x0000e277 -_0807E694: .4byte 0x0000017d - thumb_func_end sub_807E5E4 - - thumb_func_start sub_807E698 -sub_807E698: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - movs r0, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 16 - str r0, [sp, 0x4] - ldr r0, _0807E724 - ldr r0, [r0] - ldr r0, [r0, 0x4] - mov r10, r0 - movs r0, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - ldr r1, [sp] - bl sub_8042818 - movs r0, 0x25 - bl sub_803E46C - movs r0, 0x1 - bl sub_804178C - ldr r1, _0807E728 - ldrb r0, [r1] - str r0, [sp, 0x8] - movs r0, 0x1 - strb r0, [r1] - movs r1, 0 - mov r9, r1 - ldr r2, _0807E72C - mov r8, r2 -_0807E6EC: - movs r7, 0 - movs r0, 0x25 - bl sub_803E46C - movs r6, 0 - ldr r1, [sp, 0x4] - lsls r0, r1, 2 - mov r2, r10 - adds r5, r0, r2 - movs r0, 0xFF - mov r12, r0 -_0807E702: - mov r1, r8 - ldr r0, [r1] - adds r0, r6 - movs r2, 0xBE - lsls r2, 1 - adds r4, r0, r2 - ldrb r0, [r4] - ldrb r3, [r5] - subs r1, r0, r3 - cmp r1, 0 - bge _0807E71A - negs r1, r1 -_0807E71A: - cmp r1, 0x9 - bgt _0807E730 - strb r3, [r4] - b _0807E746 - .align 2, 0 -_0807E724: .4byte gUnknown_202ECA0 -_0807E728: .4byte gUnknown_203B40D -_0807E72C: .4byte gUnknown_203B418 -_0807E730: - movs r7, 0x1 - adds r2, r0, 0 - adds r1, r3, 0 - cmp r2, r1 - bcs _0807E73E - adds r0, 0xA - b _0807E744 -_0807E73E: - cmp r2, r1 - bls _0807E746 - subs r0, 0xA -_0807E744: - strb r0, [r4] -_0807E746: - mov r1, r8 - ldr r0, [r1] - adds r0, r6 - ldr r2, _0807E764 - adds r4, r0, r2 - ldrb r0, [r4] - ldrb r3, [r5, 0x1] - subs r1, r0, r3 - cmp r1, 0 - bge _0807E75C - negs r1, r1 -_0807E75C: - cmp r1, 0x9 - bgt _0807E768 - strb r3, [r4] - b _0807E77E - .align 2, 0 -_0807E764: .4byte 0x0000017d -_0807E768: - movs r7, 0x1 - adds r2, r0, 0 - adds r1, r3, 0 - cmp r2, r1 - bcs _0807E776 - adds r0, 0xA - b _0807E77C -_0807E776: - cmp r2, r1 - bls _0807E77E - subs r0, 0xA -_0807E77C: - strb r0, [r4] -_0807E77E: - mov r1, r8 - ldr r0, [r1] - adds r0, r6 - movs r2, 0xBF - lsls r2, 1 - adds r4, r0, r2 - ldrb r0, [r4] - ldrb r3, [r5, 0x2] - subs r1, r0, r3 - cmp r1, 0 - bge _0807E796 - negs r1, r1 -_0807E796: - cmp r1, 0x9 - bgt _0807E79E - strb r3, [r4] - b _0807E7B4 -_0807E79E: - movs r7, 0x1 - adds r2, r0, 0 - adds r1, r3, 0 - cmp r2, r1 - bcs _0807E7AC - adds r0, 0xA - b _0807E7B2 -_0807E7AC: - cmp r2, r1 - bls _0807E7B4 - subs r0, 0xA -_0807E7B2: - strb r0, [r4] -_0807E7B4: - adds r6, 0x4 - adds r5, 0x4 - movs r0, 0x1 - negs r0, r0 - add r12, r0 - mov r1, r12 - cmp r1, 0 - bge _0807E702 - movs r0, 0 - movs r1, 0 - bl sub_803E874 - cmp r7, 0 - beq _0807E7DA - movs r2, 0x1 - add r9, r2 - mov r0, r9 - cmp r0, 0x3F - ble _0807E6EC -_0807E7DA: - ldr r0, _0807E7F8 - mov r1, sp - ldrb r1, [r1, 0x8] - strb r1, [r0] - ldr r0, [sp] - bl sub_807E7FC - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807E7F8: .4byte gUnknown_203B40D - thumb_func_end sub_807E698 - - thumb_func_start sub_807E7FC -sub_807E7FC: - push {r4-r6,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r6, _0807E874 - ldr r0, [r6] - ldr r1, _0807E878 - adds r0, r1 - ldr r5, [r0] - cmp r5, 0 - bne _0807E816 - bl sub_8083600 - adds r5, r0, 0 -_0807E816: - cmp r4, 0 - beq _0807E844 - ldr r0, [r6] - ldr r2, _0807E87C - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0807E844 - ldr r4, _0807E880 - movs r0, 0 - bl sub_807E580 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_807EA18 - ldr r0, _0807E884 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 -_0807E844: - movs r5, 0 -_0807E846: - ldr r0, _0807E874 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0807E888 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807E866 - adds r0, r4, 0 - bl sub_807E8F0 -_0807E866: - adds r5, 0x1 - cmp r5, 0x13 - ble _0807E846 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0807E874: .4byte gUnknown_203B418 -_0807E878: .4byte 0x000181f8 -_0807E87C: .4byte 0x0001356c -_0807E880: .4byte gUnknown_202DF98 -_0807E884: .4byte gUnknown_80FC5E0 -_0807E888: .4byte 0x000135cc - thumb_func_end sub_807E7FC - - thumb_func_start sub_807E88C -sub_807E88C: - push {r4-r7,lr} - movs r0, 0 - bl sub_807E580 - lsls r0, 24 - ldr r1, _0807E8E4 - ldr r1, [r1] - ldr r1, [r1, 0x4] - movs r4, 0 - ldr r5, _0807E8E8 - lsrs r0, 14 - adds r3, r0, r1 - movs r6, 0xBE - lsls r6, 1 -_0807E8A8: - ldr r0, [r5] - lsls r2, r4, 2 - adds r0, r2 - ldrb r1, [r3] - adds r0, r6 - strb r1, [r0] - ldr r0, [r5] - adds r0, r2 - ldrb r1, [r3, 0x1] - ldr r7, _0807E8EC - adds r0, r7 - strb r1, [r0] - ldr r0, [r5] - adds r0, r2 - ldrb r1, [r3, 0x2] - movs r2, 0xBF - lsls r2, 1 - adds r0, r2 - strb r1, [r0] - adds r3, 0x4 - adds r4, 0x1 - cmp r4, 0xFF - ble _0807E8A8 - movs r0, 0 - movs r1, 0 - bl sub_803E874 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807E8E4: .4byte gUnknown_202ECA0 -_0807E8E8: .4byte gUnknown_203B418 -_0807E8EC: .4byte 0x0000017d - thumb_func_end sub_807E88C - - thumb_func_start sub_807E8F0 -sub_807E8F0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r5, r0, 0 - movs r0, 0 - mov r8, r0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807E90E - b _0807EA0A -_0807E90E: - ldr r4, [r5, 0x70] - movs r0, 0x4 - ldrsh r1, [r4, r0] - mov r9, r1 - mov r1, sp - adds r6, r4, 0 - adds r6, 0x5C - ldrb r0, [r6] - strb r0, [r1] - adds r7, r4, 0 - adds r7, 0x5D - ldrb r0, [r7] - strb r0, [r1, 0x1] - adds r0, r5, 0 - bl sub_8070774 - adds r0, r5, 0 - movs r1, 0x25 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807E958 - adds r0, r5, 0 - bl sub_807E580 - ldr r1, _0807E954 - lsls r0, 24 - lsrs r0, 22 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r6] - mov r1, r8 - strb r1, [r7] - b _0807E984 - .align 2, 0 -_0807E954: .4byte gUnknown_80F520C -_0807E958: - adds r0, r4, 0 - adds r0, 0xC4 - ldrb r0, [r0] - cmp r0, 0xC - beq _0807E984 - adds r0, r4, 0 - adds r0, 0xF6 - ldrb r0, [r0] - cmp r0, 0 - bne _0807E984 - movs r1, 0x2 - ldrsh r0, [r4, r1] - movs r1, 0 - bl sub_808DC68 - strb r0, [r6] - movs r1, 0x2 - ldrsh r0, [r4, r1] - movs r1, 0x1 - bl sub_808DC68 - strb r0, [r7] -_0807E984: - mov r0, sp - adds r1, r4, 0 - adds r1, 0x5C - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bne _0807E9A0 - mov r0, sp - adds r1, r4, 0 - adds r1, 0x5D - ldrb r0, [r0, 0x1] - ldrb r1, [r1] - cmp r0, r1 - beq _0807E9A4 -_0807E9A0: - movs r0, 0x1 - mov r8, r0 -_0807E9A4: - ldr r1, _0807E9D0 - adds r0, r1, 0 - ldrh r1, [r4, 0x2] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x3 - bhi _0807E9FE - adds r0, r5, 0 - movs r1, 0x25 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807E9D4 - movs r0, 0x2 - ldrsh r1, [r4, r0] - adds r0, r5, 0 - bl sub_8069F54 - b _0807E9D8 - .align 2, 0 -_0807E9D0: .4byte 0xfffffe88 -_0807E9D4: - movs r0, 0xBC - lsls r0, 1 -_0807E9D8: - strh r0, [r4, 0x4] - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r0, r9 - beq _0807E9FE - bl sub_80687D0 - str r0, [r5, 0x64] - adds r0, r5, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl sub_806CCB4 - movs r0, 0x1 - mov r8, r0 -_0807E9FE: - mov r1, r8 - cmp r1, 0 - beq _0807EA0A - adds r0, r5, 0 - bl sub_80429D8 -_0807EA0A: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807E8F0 - - thumb_func_start sub_807EA18 -sub_807EA18: - push {lr} - lsls r1, 24 - ldr r2, _0807EA2C - lsrs r1, 22 - adds r1, r2 - ldr r1, [r1] - bl strcpy - pop {r0} - bx r0 - .align 2, 0 -_0807EA2C: .4byte gUnknown_80F9A54 - thumb_func_end sub_807EA18 - - thumb_func_start sub_807EA30 -sub_807EA30: - push {lr} - lsls r0, 24 - cmp r0, 0 - bne _0807EA6C - ldr r1, _0807EA5C - movs r0, 0 - movs r2, 0 - bl sub_808417C - ldr r1, _0807EA60 - ldr r1, [r1] - ldr r2, _0807EA64 - adds r1, r2 - strb r0, [r1] - bl sub_8083600 - ldr r1, _0807EA68 - ldr r1, [r1] - bl sub_80522A8 - b _0807EA8C - .align 2, 0 -_0807EA5C: .4byte gUnknown_80F4EAC -_0807EA60: .4byte gUnknown_203B418 -_0807EA64: .4byte 0x0000e277 -_0807EA68: .4byte gUnknown_80FAD8C -_0807EA6C: - ldr r1, _0807EA90 - movs r0, 0 - movs r2, 0 - bl sub_808417C - ldr r1, _0807EA94 - ldr r1, [r1] - ldr r2, _0807EA98 - adds r1, r2 - strb r0, [r1] - bl sub_8083600 - ldr r1, _0807EA9C - ldr r1, [r1] - bl sub_80522A8 -_0807EA8C: - pop {r0} - bx r0 - .align 2, 0 -_0807EA90: .4byte gUnknown_80F4EAC -_0807EA94: .4byte gUnknown_203B418 -_0807EA98: .4byte 0x0000e278 -_0807EA9C: .4byte gUnknown_80FADB0 - thumb_func_end sub_807EA30 - - thumb_func_start sub_807EAA0 -sub_807EAA0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - lsls r1, 24 - lsrs r1, 24 - str r1, [sp, 0x4] - movs r0, 0 - mov r8, r0 - movs r1, 0x1 - negs r1, r1 - mov r9, r1 - movs r2, 0 - str r2, [sp, 0x8] - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - movs r5, 0 - ldr r7, _0807EAF0 - ldr r6, _0807EAF4 -_0807EAD6: - ldr r3, [r7] - adds r0, r3, r6 - adds r4, r0, r5 - ldr r1, _0807EAF8 - adds r0, r3, r1 - adds r0, r5 - ldrb r0, [r0] - ldrb r2, [r4] - adds r1, r0, 0 - cmp r2, r1 - bcs _0807EAFC - strb r0, [r4] - b _0807EB08 - .align 2, 0 -_0807EAF0: .4byte gUnknown_203B418 -_0807EAF4: .4byte 0x0000e267 -_0807EAF8: .4byte 0x0000e26f -_0807EAFC: - cmp r2, r1 - bls _0807EB08 - adds r0, r5, r6 - adds r0, r3, r0 - bl sub_80838EC -_0807EB08: - ldr r0, [r7] - ldr r2, _0807EB38 - adds r0, r2 - adds r0, r5 - ldrb r1, [r0] - ldr r0, _0807EB3C - cmp r8, r1 - bge _0807EB1C - mov r8, r1 - mov r9, r5 -_0807EB1C: - adds r5, 0x1 - cmp r5, 0x7 - ble _0807EAD6 - mov r1, r9 - cmp r1, 0 - bge _0807EB44 - ldr r0, [r0] - ldr r2, _0807EB40 - adds r1, r0, r2 - ldrb r1, [r1] - subs r2, 0x1 - adds r0, r2 - strb r1, [r0] - b _0807EB4E - .align 2, 0 -_0807EB38: .4byte 0x0000e267 -_0807EB3C: .4byte gUnknown_203B418 -_0807EB40: .4byte 0x0000e265 -_0807EB44: - ldr r0, [r0] - ldr r1, _0807EB94 - adds r0, r1 - mov r2, r9 - strb r2, [r0] -_0807EB4E: - ldr r0, _0807EB98 - ldr r1, [r0] - ldr r2, _0807EB9C - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0807EB64 - ldr r0, _0807EB94 - adds r1, r0 - movs r0, 0 - strb r0, [r1] -_0807EB64: - movs r0, 0 - bl sub_807E580 - lsls r0, 24 - lsrs r0, 24 - cmp r10, r0 - bne _0807EB78 - ldr r1, [sp, 0x4] - cmp r1, 0 - beq _0807EB82 -_0807EB78: - movs r2, 0x1 - str r2, [sp, 0x8] - ldr r0, [sp] - bl sub_807E698 -_0807EB82: - ldr r0, _0807EB98 - ldr r0, [r0] - ldr r2, _0807EBA0 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - beq _0807EBA4 - subs r0, 0x1 - b _0807EBA6 - .align 2, 0 -_0807EB94: .4byte 0x0000e264 -_0807EB98: .4byte gUnknown_203B418 -_0807EB9C: .4byte 0x0000e279 -_0807EBA0: .4byte 0x0000e266 -_0807EBA4: - movs r0, 0x9 -_0807EBA6: - strb r0, [r1] - ldr r4, _0807EC14 - ldr r0, [r4] - ldr r2, _0807EC18 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - beq _0807EBD4 - adds r0, r1, 0 - bl sub_80838EC - ldr r0, [r4] - ldr r1, _0807EC18 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0807EBD4 - bl sub_8083600 - ldr r1, _0807EC1C - ldr r1, [r1] - bl sub_80522A8 -_0807EBD4: - ldr r4, _0807EC14 - ldr r0, [r4] - ldr r2, _0807EC20 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - beq _0807EC00 - adds r0, r1, 0 - bl sub_80838EC - ldr r0, [r4] - ldr r1, _0807EC20 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0807EC00 - bl sub_8083600 - ldr r1, _0807EC24 - ldr r1, [r1] - bl sub_80522A8 -_0807EC00: - ldr r0, [sp, 0x8] - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0807EC14: .4byte gUnknown_203B418 -_0807EC18: .4byte 0x0000e277 -_0807EC1C: .4byte gUnknown_80FA778 -_0807EC20: .4byte 0x0000e278 -_0807EC24: .4byte gUnknown_80FA758 - thumb_func_end sub_807EAA0 - - thumb_func_start sub_807EC28 -sub_807EC28: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - beq _0807EC46 - b _0807EF32 -_0807EC46: - bl sub_8083600 - adds r7, r0, 0 - ldr r0, [r7, 0x70] - mov r9, r0 - ldr r4, _0807ECB4 - ldr r0, [r4] - movs r5, 0xD3 - lsls r5, 3 - adds r0, r5 - ldrb r0, [r0] - str r0, [sp, 0x8] - adds r0, r7, 0 - bl sub_8045128 - ldrh r0, [r0] - lsrs r0, 5 - mov r10, r0 - movs r0, 0x1 - mov r1, r10 - ands r1, r0 - mov r10, r1 - ldr r0, [r4] - adds r0, r5 - strb r1, [r0] - ldr r0, [r4] - ldr r3, _0807ECB8 - adds r0, r3 - mov r2, r10 - strb r2, [r0] - ldr r2, [r4] - ldr r6, _0807ECBC - adds r0, r2, r6 - ldrb r1, [r0] - cmp r1, 0 - beq _0807EC90 - b _0807EF32 -_0807EC90: - adds r6, 0x26 - adds r0, r2, r6 - ldr r0, [r0] - cmp r0, 0 - bne _0807EC9C - b _0807EF32 -_0807EC9C: - mov r0, r9 - adds r0, 0xE4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0807ECC0 - adds r0, r2, r5 - strb r1, [r0] - ldr r0, [r4] - adds r0, r3 - strb r1, [r0] - b _0807EF32 - .align 2, 0 -_0807ECB4: .4byte gUnknown_203B418 -_0807ECB8: .4byte 0x00000699 -_0807ECBC: .4byte 0x0000066e -_0807ECC0: - movs r0, 0 - str r0, [sp, 0xC] - movs r6, 0 -_0807ECC6: - ldr r0, _0807ED48 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0807ED4C - adds r0, r2 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807ED0E - ldr r0, [r5, 0x70] - ldrb r0, [r0, 0x8] - cmp r0, 0x1 - bne _0807ED0E - adds r0, r5, 0 - bl sub_8070BC0 - lsls r0, 24 - cmp r0, 0 - beq _0807ED0E - adds r0, r7, 0 - bl sub_80450FC - adds r4, r0, 0 - adds r0, r5, 0 - bl sub_80450FC - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - bne _0807ED0E - movs r0, 0x1 - str r0, [sp, 0xC] -_0807ED0E: - adds r6, 0x1 - cmp r6, 0xF - ble _0807ECC6 - ldr r1, _0807ED50 - ldr r0, [sp] - ands r0, r1 - movs r1, 0xBE - lsls r1, 1 - orrs r0, r1 - ldr r1, _0807ED54 - ands r0, r1 - str r0, [sp] - ldr r1, [sp, 0x8] - cmp r1, 0 - bne _0807ED5C - mov r2, r10 - cmp r2, 0x1 - bne _0807ED64 - ldr r6, [sp, 0xC] - cmp r6, 0 - bne _0807ED3A - b _0807EF32 -_0807ED3A: - ldr r0, _0807ED58 - ldr r1, [r0] - mov r0, sp - movs r2, 0x1 - bl PrintFieldMessage - b _0807EF32 - .align 2, 0 -_0807ED48: .4byte gUnknown_203B418 -_0807ED4C: .4byte 0x0001358c -_0807ED50: .4byte 0xffff0000 -_0807ED54: .4byte 0xff00ffff -_0807ED58: .4byte gUnknown_80FE674 -_0807ED5C: - mov r0, r10 - cmp r0, 0x1 - bne _0807ED64 - b _0807EF32 -_0807ED64: - ldr r1, [sp, 0x8] - cmp r1, 0x1 - bne _0807ED70 - mov r2, r10 - cmp r2, 0 - beq _0807ED78 -_0807ED70: - mov r6, r8 - cmp r6, 0 - bne _0807ED78 - b _0807EF32 -_0807ED78: - movs r0, 0 - str r0, [sp, 0x10] - movs r1, 0 - str r1, [sp, 0x14] - bl sub_807EF48 - lsls r0, 24 - cmp r0, 0 - bne _0807ED8C - b _0807EECC -_0807ED8C: - movs r2, 0x1 - str r2, [sp, 0x14] - movs r6, 0 -_0807ED92: - ldr r0, _0807EE90 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0807EE94 - adds r0, r2 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807EDAE - b _0807EEC4 -_0807EDAE: - ldr r0, [r5, 0x70] - ldrb r0, [r0, 0x8] - cmp r0, 0x1 - beq _0807EDB8 - b _0807EEC4 -_0807EDB8: - adds r0, r5, 0 - bl sub_8070BC0 - lsls r0, 24 - cmp r0, 0 - bne _0807EDC6 - b _0807EEC4 -_0807EDC6: - adds r0, r7, 0 - bl sub_80450FC - adds r4, r0, 0 - adds r0, r5, 0 - bl sub_80450FC - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - bne _0807EEC4 - movs r6, 0x1 - str r6, [sp, 0x10] - movs r0, 0x4 - ldrsh r1, [r7, r0] - movs r2, 0x4 - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0807EDF0 - negs r1, r1 -_0807EDF0: - cmp r1, 0x1 - bgt _0807EE10 - movs r6, 0x6 - ldrsh r1, [r7, r6] - movs r2, 0x6 - ldrsh r0, [r5, r2] - subs r1, r0 - cmp r1, 0 - bge _0807EE04 - negs r1, r1 -_0807EE04: - adds r6, r7, 0x4 - mov r9, r6 - adds r0, r5, 0x4 - mov r8, r0 - cmp r1, 0x1 - ble _0807EE72 -_0807EE10: - movs r3, 0x1 - negs r3, r3 - add r6, sp, 0x4 - adds r1, r7, 0x4 - mov r9, r1 - adds r2, r5, 0x4 - mov r8, r2 -_0807EE1E: - movs r4, 0x1 - negs r4, r4 -_0807EE22: - ldrh r0, [r7, 0x4] - adds r0, r3 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _0807EE98 - ldr r2, [sp, 0x4] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x4] - ldrh r0, [r7, 0x6] - adds r0, r4 - lsls r0, 16 - ldr r1, _0807EE9C - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x4] - movs r2, 0 - ldrsh r0, [r6, r2] - asrs r1, 16 - str r3, [sp, 0x18] - bl sub_804954C - ldrb r0, [r0, 0x9] - ldr r3, [sp, 0x18] - cmp r0, 0xFF - beq _0807EE66 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80703A0 - lsls r0, 24 - ldr r3, [sp, 0x18] - cmp r0, 0 - beq _0807EEA0 -_0807EE66: - adds r4, 0x1 - cmp r4, 0x1 - ble _0807EE22 - adds r3, 0x1 - cmp r3, 0x1 - ble _0807EE1E -_0807EE72: - adds r0, r7, 0 - bl sub_8070BC0 - lsls r0, 24 - cmp r0, 0 - beq _0807EEAE - mov r0, r9 - mov r1, r8 - bl sub_80983D8 - adds r1, r0, 0 - adds r0, r7, 0 - bl sub_806CE34 - b _0807EEB2 - .align 2, 0 -_0807EE90: .4byte gUnknown_203B418 -_0807EE94: .4byte 0x0001358c -_0807EE98: .4byte 0xffff0000 -_0807EE9C: .4byte 0x0000ffff -_0807EEA0: - adds r0, r7, 0 - adds r1, r5, 0 - movs r2, 0x3 - adds r3, r6, 0 - bl sub_807D148 - b _0807EE72 -_0807EEAE: - movs r6, 0 - str r6, [sp, 0x10] -_0807EEB2: - mov r0, r8 - mov r1, r9 - bl sub_80983D8 - adds r1, r0, 0 - adds r0, r5, 0 - bl sub_806CE68 - b _0807EECC -_0807EEC4: - adds r6, 0x1 - cmp r6, 0xF - bgt _0807EECC - b _0807ED92 -_0807EECC: - ldr r0, [sp, 0x14] - cmp r0, 0 - beq _0807EF04 - ldr r1, [sp, 0x10] - cmp r1, 0 - beq _0807EEDE - ldr r0, [sp, 0xC] - cmp r0, 0 - bne _0807EF04 -_0807EEDE: - ldr r0, _0807EEF8 - ldr r0, [r0] - ldr r2, _0807EEFC - adds r1, r0, r2 - ldr r6, _0807EF00 - adds r0, r6 - ldr r1, [r1] - ldr r0, [r0] - cmp r1, r0 - ble _0807EF32 -_0807EEF2: - bl sub_807F33C - b _0807EF32 - .align 2, 0 -_0807EEF8: .4byte gUnknown_203B418 -_0807EEFC: .4byte 0x00000694 -_0807EF00: .4byte 0x0000068c -_0807EF04: - ldr r0, [sp, 0x10] - bl sub_807EFFC - ldr r0, [sp, 0x10] - bl sub_807F19C - cmp r0, 0 - bne _0807EEF2 - ldr r0, [sp, 0x8] - cmp r0, 0x1 - bne _0807EF32 - mov r1, r10 - cmp r1, 0 - bne _0807EF32 - ldr r2, [sp, 0xC] - cmp r2, 0 - beq _0807EF32 - ldr r0, _0807EF44 - ldr r1, [r0] - mov r0, sp - movs r2, 0x1 - bl PrintFieldMessage -_0807EF32: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807EF44: .4byte gUnknown_80FE65C - thumb_func_end sub_807EC28 - - thumb_func_start sub_807EF48 -sub_807EF48: - push {lr} - ldr r0, _0807EF70 - ldr r2, [r0] - ldr r1, _0807EF74 - adds r0, r2, r1 - ldr r3, _0807EF78 - adds r1, r2, r3 - ldr r0, [r0] - ldr r1, [r1] - subs r0, r1 - cmp r0, 0 - bgt _0807EF7C - movs r1, 0xD2 - lsls r1, 3 - adds r0, r2, r1 - ldr r0, [r0] - cmp r0, 0 - bne _0807EF7C - movs r0, 0 - b _0807EF7E - .align 2, 0 -_0807EF70: .4byte gUnknown_203B418 -_0807EF74: .4byte 0x00000694 -_0807EF78: .4byte 0x0000068c -_0807EF7C: - movs r0, 0x1 -_0807EF7E: - pop {r1} - bx r1 - thumb_func_end sub_807EF48 - - thumb_func_start sub_807EF84 -sub_807EF84: - push {r4,lr} - sub sp, 0x4 - ldr r1, _0807EFD0 - ldr r0, [sp] - ands r0, r1 - movs r1, 0xBE - lsls r1, 1 - orrs r0, r1 - ldr r1, _0807EFD4 - ands r0, r1 - str r0, [sp] - movs r0, 0x1 - bl sub_807EFFC - movs r0, 0x1 - bl sub_807F19C - adds r4, r0, 0 - cmp r4, 0 - beq _0807EFE2 - bl sub_8083600 - bl sub_8045128 - ldrh r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0807EFDC - cmp r4, 0x2 - beq _0807EFEE - ldr r0, _0807EFD8 - ldr r1, [r0] - mov r0, sp - movs r2, 0x1 - bl PrintFieldMessage - b _0807EFEE - .align 2, 0 -_0807EFD0: .4byte 0xffff0000 -_0807EFD4: .4byte 0xff00ffff -_0807EFD8: .4byte gUnknown_80FE63C -_0807EFDC: - bl sub_807F33C - b _0807EFEE -_0807EFE2: - ldr r0, _0807EFF8 - ldr r1, [r0] - mov r0, sp - movs r2, 0x1 - bl PrintFieldMessage -_0807EFEE: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807EFF8: .4byte gUnknown_80FE5F0 - thumb_func_end sub_807EF84 - - thumb_func_start sub_807EFFC -sub_807EFFC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r3, r0, 24 - ldr r4, _0807F168 - ldr r0, [r4] - movs r5, 0xD2 - lsls r5, 3 - adds r2, r0, r5 - ldr r0, [r2] - cmp r0, 0 - bne _0807F01E - b _0807F158 -_0807F01E: - ldr r1, _0807F16C - ldr r0, [sp] - ands r0, r1 - movs r1, 0xBE - lsls r1, 1 - orrs r0, r1 - ldr r1, _0807F170 - ands r0, r1 - str r0, [sp] - cmp r3, 0 - bne _0807F036 - b _0807F158 -_0807F036: - ldr r1, _0807F174 - ldr r0, [r2] - str r0, [r1] - ldr r0, _0807F178 - ldr r1, [r0] - mov r0, sp - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - beq _0807F04E - b _0807F158 -_0807F04E: - movs r0, 0xA6 - lsls r0, 1 - bl sub_8083E38 - ldr r0, [r4] - adds r0, r5 - ldr r0, [r0] - bl sub_80913A0 - ldr r0, [r4] - ldr r2, _0807F17C - adds r1, r0, r2 - ldr r1, [r1] - str r1, [sp, 0xC] - ldr r2, _0807F180 - adds r1, r0, r2 - ldr r6, [r1] - ldr r1, _0807F184 - adds r0, r1 - ldr r0, [r0] - cmp r6, r0 - bgt _0807F134 - mov r8, r4 -_0807F07C: - mov r2, r8 - ldr r0, [r2] - ldr r2, _0807F188 - adds r1, r0, r2 - ldr r5, [r1] - ldr r1, _0807F18C - adds r0, r1 - ldr r0, [r0] - adds r2, r6, 0x1 - mov r10, r2 - cmp r5, r0 - bgt _0807F124 - lsls r0, r6, 16 - lsrs r0, 16 - mov r9, r0 -_0807F09A: - lsls r0, r5, 16 - mov r1, r9 - orrs r0, r1 - str r0, [sp, 0x4] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - adds r4, r0, 0 - ldrh r1, [r4] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0807F114 - ldr r0, [r4, 0x14] - cmp r0, 0 - beq _0807F114 - bl sub_80450F8 - cmp r0, 0x3 - bne _0807F114 - ldr r0, [r4, 0x14] - bl sub_8045108 - adds r2, r0, 0 - ldrb r1, [r2] - movs r7, 0x2 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0807F114 - ldr r0, [r2] - str r0, [sp, 0x8] - add r4, sp, 0x4 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80461C8 - ldr r0, [sp, 0x8] - lsrs r0, 16 - lsls r0, 24 - lsrs r0, 24 - bl sub_80914E4 - lsls r0, 24 - add r3, sp, 0x8 - cmp r0, 0 - beq _0807F10A - ldrb r0, [r3] - adds r2, r7, 0 - orrs r2, r0 - ldr r1, _0807F190 - ldr r0, [sp, 0x8] - ands r0, r1 - orrs r0, r2 - str r0, [sp, 0x8] -_0807F10A: - adds r0, r4, 0 - adds r1, r3, 0 - movs r2, 0x1 - bl sub_80460F8 -_0807F114: - adds r5, 0x1 - mov r2, r8 - ldr r0, [r2] - ldr r1, _0807F18C - adds r0, r1 - ldr r0, [r0] - cmp r5, r0 - ble _0807F09A -_0807F124: - mov r6, r10 - mov r2, r8 - ldr r0, [r2] - ldr r1, _0807F184 - adds r0, r1 - ldr r0, [r0] - cmp r6, r0 - ble _0807F07C -_0807F134: - ldr r0, _0807F168 - ldr r0, [r0] - ldr r1, _0807F194 - adds r2, r0, r1 - subs r1, 0x8 - adds r0, r1 - ldr r1, [r0] - ldr r0, [sp, 0xC] - subs r1, r0 - ldr r0, [r2] - adds r0, r1 - str r0, [r2] - ldr r0, _0807F198 - ldr r1, [r0] - mov r0, sp - movs r2, 0x1 - bl PrintFieldMessage -_0807F158: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807F168: .4byte gUnknown_203B418 -_0807F16C: .4byte 0xffff0000 -_0807F170: .4byte 0xff00ffff -_0807F174: .4byte gUnknown_202DE30 -_0807F178: .4byte gUnknown_80FE5C0 -_0807F17C: .4byte 0x0000068c -_0807F180: .4byte 0x0000e240 -_0807F184: .4byte 0x0000e248 -_0807F188: .4byte 0x0000e244 -_0807F18C: .4byte 0x0000e24c -_0807F190: .4byte 0xffffff00 -_0807F194: .4byte 0x00000694 -_0807F198: .4byte gUnknown_80FE4F4 - thumb_func_end sub_807EFFC - - thumb_func_start sub_807F19C -sub_807F19C: - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r2, r0, 24 - ldr r1, _0807F1EC - ldr r0, [sp] - ands r0, r1 - movs r1, 0xBE - lsls r1, 1 - orrs r0, r1 - ldr r1, _0807F1F0 - ands r0, r1 - str r0, [sp] - ldr r0, _0807F1F4 - ldr r0, [r0] - ldr r3, _0807F1F8 - adds r1, r0, r3 - subs r3, 0x8 - adds r0, r3 - ldr r1, [r1] - ldr r0, [r0] - subs r4, r1, r0 - cmp r4, 0 - bgt _0807F1CE - b _0807F31A -_0807F1CE: - cmp r2, 0 - beq _0807F1E6 - ldr r0, _0807F1FC - str r4, [r0] - ldr r0, _0807F200 - ldr r1, [r0] - mov r0, sp - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - beq _0807F204 -_0807F1E6: - movs r0, 0x1 - b _0807F31C - .align 2, 0 -_0807F1EC: .4byte 0xffff0000 -_0807F1F0: .4byte 0xff00ffff -_0807F1F4: .4byte gUnknown_203B418 -_0807F1F8: .4byte 0x00000694 -_0807F1FC: .4byte gUnknown_202DE30 -_0807F200: .4byte gUnknown_80FE568 -_0807F204: - ldr r0, _0807F224 - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - cmp r0, r4 - bge _0807F22C - ldr r0, _0807F228 - ldr r1, [r0] - mov r0, sp - movs r2, 0x1 - bl PrintFieldMessage - movs r0, 0x2 - b _0807F31C - .align 2, 0 -_0807F224: .4byte gUnknown_203B460 -_0807F228: .4byte gUnknown_80FE520 -_0807F22C: - movs r0, 0xA6 - lsls r0, 1 - bl sub_8083E38 - negs r0, r4 - bl sub_80913A0 - movs r6, 0 -_0807F23C: - movs r5, 0 - adds r7, r6, 0x1 -_0807F240: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - adds r4, r0, 0 - ldrh r1, [r4] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _0807F27E - ldr r0, [r4, 0x14] - cmp r0, 0 - beq _0807F27E - bl sub_80450F8 - cmp r0, 0x3 - bne _0807F27E - ldr r0, [r4, 0x14] - bl sub_8045108 - adds r4, r0, 0 - ldrb r0, [r4, 0x2] - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - beq _0807F27E - ldrb r1, [r4] - movs r0, 0xFD - ands r0, r1 - strb r0, [r4] -_0807F27E: - adds r5, 0x1 - cmp r5, 0x1F - ble _0807F240 - adds r6, r7, 0 - cmp r6, 0x37 - ble _0807F23C - movs r5, 0 -_0807F28C: - ldr r0, _0807F324 - lsls r1, r5, 2 - ldr r0, [r0] - adds r4, r0, r1 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0807F2B2 - ldrb r0, [r4, 0x2] - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - beq _0807F2B2 - ldrb r1, [r4] - movs r0, 0xFD - ands r0, r1 - strb r0, [r4] -_0807F2B2: - adds r5, 0x1 - cmp r5, 0x13 - ble _0807F28C - movs r5, 0 -_0807F2BA: - ldr r0, _0807F328 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0807F32C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807F2F8 - ldr r0, [r4, 0x70] - adds r4, r0, 0 - adds r4, 0x60 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0807F2F8 - ldrb r0, [r4, 0x2] - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - beq _0807F2F8 - ldrb r1, [r4] - movs r0, 0xFD - ands r0, r1 - strb r0, [r4] -_0807F2F8: - adds r5, 0x1 - cmp r5, 0x13 - ble _0807F2BA - ldr r0, _0807F328 - ldr r0, [r0] - ldr r3, _0807F330 - adds r1, r0, r3 - ldr r2, _0807F334 - adds r0, r2 - ldr r0, [r0] - str r0, [r1] - ldr r0, _0807F338 - ldr r1, [r0] - mov r0, sp - movs r2, 0x1 - bl PrintFieldMessage -_0807F31A: - movs r0, 0 -_0807F31C: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0807F324: .4byte gUnknown_203B460 -_0807F328: .4byte gUnknown_203B418 -_0807F32C: .4byte 0x000135cc -_0807F330: .4byte 0x00000694 -_0807F334: .4byte 0x0000068c -_0807F338: .4byte gUnknown_80FE4D4 - thumb_func_end sub_807F19C - - thumb_func_start sub_807F33C -sub_807F33C: - push {r4-r7,lr} - ldr r2, _0807F41C - ldr r0, [r2] - ldr r1, _0807F420 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r2] - ldr r2, _0807F424 - adds r0, r2 - strb r1, [r0] - bl sub_8083600 - ldr r1, _0807F428 - ldr r1, [r1] - bl sub_80522A8 - movs r6, 0 -_0807F360: - movs r5, 0 - adds r7, r6, 0x1 -_0807F364: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_804954C - adds r4, r0, 0 - ldr r0, [r4, 0x14] - cmp r0, 0 - beq _0807F38A - bl sub_80450F8 - cmp r0, 0x3 - bne _0807F38A - ldr r0, [r4, 0x14] - bl sub_8045108 - ldrb r2, [r0] - movs r1, 0xFD - ands r1, r2 - strb r1, [r0] -_0807F38A: - adds r5, 0x1 - cmp r5, 0x1F - ble _0807F364 - adds r6, r7, 0 - cmp r6, 0x37 - ble _0807F360 - movs r6, 0 - ldr r4, _0807F42C - movs r5, 0x1 - movs r3, 0xFD -_0807F39E: - lsls r1, r6, 2 - ldr r0, [r4] - adds r2, r0, r1 - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0807F3B4 - adds r0, r3, 0 - ands r0, r1 - strb r0, [r2] -_0807F3B4: - adds r6, 0x1 - cmp r6, 0x13 - ble _0807F39E - movs r6, 0 -_0807F3BC: - ldr r0, _0807F41C - ldr r0, [r0] - lsls r1, r6, 2 - ldr r3, _0807F430 - adds r0, r3 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807F3F4 - ldr r4, [r5, 0x70] - movs r0, 0 - strb r0, [r4, 0x8] - adds r0, r5, 0 - bl sub_8070774 - adds r4, 0x60 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0807F3F4 - movs r0, 0xFD - ands r0, r1 - strb r0, [r4] -_0807F3F4: - adds r6, 0x1 - cmp r6, 0x13 - ble _0807F3BC - ldr r0, _0807F41C - ldr r1, [r0] - ldr r2, _0807F434 - adds r0, r1, r2 - movs r2, 0 - str r2, [r0] - ldr r3, _0807F438 - adds r0, r1, r3 - str r2, [r0] - movs r0, 0xD2 - lsls r0, 3 - adds r1, r0 - str r2, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807F41C: .4byte gUnknown_203B418 -_0807F420: .4byte 0x0000066e -_0807F424: .4byte 0x0000066f -_0807F428: .4byte gUnknown_80FE4B8 -_0807F42C: .4byte gUnknown_203B460 -_0807F430: .4byte 0x000135cc -_0807F434: .4byte 0x00000694 -_0807F438: .4byte 0x0000068c - thumb_func_end sub_807F33C - - thumb_func_start sub_807F43C -sub_807F43C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10C - str r0, [sp, 0xEC] - mov r8, r1 - mov r0, r8 - movs r1, 0xE - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _0807F470 - ldr r0, _0807F468 - mov r1, r8 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807F46C - b _0807F694 - .align 2, 0 -_0807F468: .4byte gUnknown_202DF98 -_0807F46C: .4byte gUnknown_80FCB40 -_0807F470: - ldr r0, [sp, 0xEC] - cmp r0, r8 - bne _0807F490 - ldr r0, _0807F488 - mov r1, r8 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807F48C - ldr r2, [r0] - mov r0, r8 - b _0807F698 - .align 2, 0 -_0807F488: .4byte gUnknown_202DF98 -_0807F48C: .4byte gUnknown_80FCB70 -_0807F490: - mov r1, r8 - ldr r0, [r1, 0x4] - add r1, sp, 0xD4 - str r0, [r1] - movs r2, 0 - str r2, [sp, 0xF0] -_0807F49C: - movs r3, 0 - mov r9, r3 - movs r7, 0 - mov r4, sp - adds r4, 0x18 - str r4, [sp, 0x108] -_0807F4A8: - ldr r0, _0807F504 - ldr r0, [r0] - lsls r1, r7, 2 - ldr r2, _0807F508 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - adds r3, r7, 0x1 - str r3, [sp, 0x104] - cmp r0, 0 - bne _0807F4C8 - b _0807F602 -_0807F4C8: - ldr r0, [sp, 0xEC] - cmp r0, r4 - bne _0807F4D0 - b _0807F602 -_0807F4D0: - cmp r8, r4 - bne _0807F4D6 - b _0807F602 -_0807F4D6: - adds r1, r4, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - bne _0807F4E4 - b _0807F602 -_0807F4E4: - ldr r1, [sp, 0xF0] - cmp r1, 0 - bne _0807F50C - ldr r0, [sp, 0xEC] - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0807F500 - b _0807F602 -_0807F500: - b _0807F51E - .align 2, 0 -_0807F504: .4byte gUnknown_203B418 -_0807F508: .4byte 0x000135cc -_0807F50C: - ldr r0, [sp, 0xEC] - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8071598 - lsls r0, 24 - cmp r0, 0 - bne _0807F602 -_0807F51E: - ldr r2, [sp, 0xF0] - cmp r2, 0 - bne _0807F594 - movs r5, 0 - add r6, sp, 0xC8 - adds r3, r7, 0x1 - str r3, [sp, 0x104] - adds r7, r6, 0 - ldr r0, _0807F588 - mov r10, r0 -_0807F532: - ldr r0, _0807F58C - lsls r3, r5, 2 - adds r3, r0 - ldrh r0, [r4, 0x4] - ldrh r1, [r3] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r1, [r6] - mov r2, r10 - ands r1, r2 - orrs r1, r0 - str r1, [r7] - ldrh r2, [r4, 0x6] - ldrh r3, [r3, 0x2] - adds r2, r3 - lsls r2, 16 - ldr r0, _0807F590 - ands r1, r0 - orrs r1, r2 - str r1, [r7] - mov r0, r8 - add r1, sp, 0xC8 - bl sub_80703A0 - lsls r0, 24 - cmp r0, 0 - beq _0807F570 - adds r5, 0x1 - cmp r5, 0x7 - ble _0807F532 -_0807F570: - cmp r5, 0x8 - beq _0807F602 - mov r3, r9 - cmp r3, 0x27 - bgt _0807F602 - ldr r0, [r4, 0x4] - ldr r4, [sp, 0x108] - stm r4!, {r0} - str r4, [sp, 0x108] - movs r0, 0x1 - add r9, r0 - b _0807F602 - .align 2, 0 -_0807F588: .4byte 0xffff0000 -_0807F58C: .4byte gUnknown_80F4448 -_0807F590: .4byte 0x0000ffff -_0807F594: - movs r5, 0 - add r6, sp, 0xCC - adds r1, r7, 0x1 - str r1, [sp, 0x104] - adds r7, r6, 0 - mov r2, r9 - lsls r0, r2, 2 - add r0, sp - adds r0, 0x18 - mov r10, r0 -_0807F5A8: - ldr r0, _0807F630 - lsls r3, r5, 2 - adds r3, r0 - ldrh r0, [r4, 0x4] - ldrh r1, [r3] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r2, _0807F634 - ldr r1, [r6] - ands r1, r2 - orrs r1, r0 - str r1, [r7] - ldrh r2, [r4, 0x6] - ldrh r3, [r3, 0x2] - adds r2, r3 - lsls r2, 16 - ldr r0, _0807F638 - ands r1, r0 - orrs r1, r2 - str r1, [r7] - mov r0, r8 - add r1, sp, 0xCC - bl sub_80703A0 - lsls r0, 24 - cmp r0, 0 - bne _0807F5FC - mov r2, r9 - cmp r2, 0x27 - bgt _0807F5FC - ldr r0, [r6] - mov r3, r10 - adds r3, 0x4 - mov r10, r3 - subs r3, 0x4 - stm r3!, {r0} - ldr r0, [sp, 0x108] - adds r0, 0x4 - str r0, [sp, 0x108] - movs r1, 0x1 - add r9, r1 -_0807F5FC: - adds r5, 0x1 - cmp r5, 0x7 - ble _0807F5A8 -_0807F602: - ldr r7, [sp, 0x104] - cmp r7, 0x13 - bgt _0807F60A - b _0807F4A8 -_0807F60A: - mov r2, r9 - cmp r2, 0 - bne _0807F63C - ldr r3, [sp, 0xF0] - adds r3, 0x1 - str r3, [sp, 0xF0] - cmp r3, 0x1 - bgt _0807F61C - b _0807F49C -_0807F61C: - ldr r0, [sp, 0xEC] - adds r0, 0x4 - add r4, sp, 0xB8 - adds r1, r4, 0 - bl sub_80833E8 - movs r7, 0 - add r5, sp, 0xD0 - adds r6, r5, 0 - b _0807F654 - .align 2, 0 -_0807F630: .4byte gUnknown_80F4448 -_0807F634: .4byte 0xffff0000 -_0807F638: .4byte 0x0000ffff -_0807F63C: - mov r0, r9 - bl sub_8084100 - lsls r0, 2 - add r0, sp - adds r0, 0x18 - ldr r0, [r0] - str r0, [sp, 0xD4] - b _0807F6A8 -_0807F64E: - ldr r0, [r5] - str r0, [sp, 0xD4] - b _0807F68E -_0807F654: - ldr r0, [r4] - ldr r1, [r4, 0x8] - bl sub_808411C - lsls r0, 16 - lsrs r0, 16 - ldr r2, _0807F6A0 - ldr r1, [r5] - ands r1, r2 - orrs r1, r0 - str r1, [r6] - ldr r0, [r4, 0x4] - ldr r1, [r4, 0xC] - bl sub_808411C - lsls r0, 16 - ldrh r1, [r6] - orrs r1, r0 - str r1, [r6] - mov r0, r8 - add r1, sp, 0xD0 - bl sub_80703A0 - lsls r0, 24 - cmp r0, 0 - beq _0807F64E - adds r7, 0x1 - cmp r7, 0x63 - ble _0807F654 -_0807F68E: - cmp r7, 0x64 - bne _0807F6A8 - ldr r0, _0807F6A4 -_0807F694: - ldr r2, [r0] - ldr r0, [sp, 0xEC] -_0807F698: - mov r1, r8 - bl sub_80522F4 - b _0807F99C - .align 2, 0 -_0807F6A0: .4byte 0xffff0000 -_0807F6A4: .4byte gUnknown_80FE6B4 -_0807F6A8: - ldr r0, _0807F860 - mov r1, r8 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0807F864 - ldr r2, [r0] - ldr r0, [sp, 0xEC] - mov r1, r8 - bl sub_80522F4 - mov r0, r8 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0807F6D0 - ldr r0, _0807F868 - bl sub_8083E38 -_0807F6D0: - movs r4, 0 - str r4, [sp, 0x100] - mov r1, r8 - ldr r0, [r1, 0x70] - adds r0, 0x46 - ldrb r0, [r0] - mov r9, r0 - add r2, sp, 0xD4 - movs r3, 0 - ldrsh r1, [r2, r3] - mov r4, r8 - movs r3, 0x4 - ldrsh r0, [r4, r3] - subs r3, r1, r0 - movs r4, 0x2 - ldrsh r1, [r2, r4] - mov r2, r8 - movs r4, 0x6 - ldrsh r0, [r2, r4] - subs r1, r0 - cmp r1, r3 - bge _0807F6FE - adds r1, r3, 0 -_0807F6FE: - lsls r6, r1, 4 - cmp r6, 0x50 - ble _0807F706 - movs r6, 0x50 -_0807F706: - cmp r6, 0x9 - bgt _0807F70C - movs r6, 0xA -_0807F70C: - mov r1, r8 - adds r1, 0x4 - add r0, sp, 0xD4 - bl sub_80983D8 - adds r5, r0, 0 - add r2, sp, 0xD4 - movs r1, 0 - ldrsh r0, [r2, r1] - lsls r4, r0, 1 - adds r4, r0 - lsls r4, 11 - movs r3, 0xC0 - lsls r3, 4 - adds r4, r3 - ldr r0, _0807F86C - lsls r5, 2 - adds r5, r0 - movs r1, 0 - ldrsh r0, [r5, r1] - lsls r0, 8 - movs r1, 0x3 - bl __divsi3 - adds r4, r0 - str r4, [sp, 0xF4] - movs r3, 0xD6 - add r3, sp - movs r2, 0 - ldrsh r0, [r3, r2] - lsls r4, r0, 1 - adds r4, r0 - lsls r4, 11 - movs r0, 0x80 - lsls r0, 5 - adds r4, r0 - movs r1, 0x2 - ldrsh r0, [r5, r1] - lsls r0, 8 - movs r1, 0x3 - bl __divsi3 - adds r4, r0 - str r4, [sp, 0xF8] - mov r2, r8 - ldr r5, [r2, 0xC] - ldr r3, [sp, 0xF4] - subs r0, r3, r5 - adds r1, r6, 0 - bl __divsi3 - str r0, [sp, 0xFC] - mov r0, r8 - ldr r4, [r0, 0x10] - ldr r1, [sp, 0xF8] - subs r0, r1, r4 - adds r1, r6, 0 - bl __divsi3 - mov r10, r0 - add r0, sp, 0xD8 - str r5, [r0] - str r4, [r0, 0x4] - movs r7, 0 - adds r5, r0, 0 - cmp r7, r6 - bge _0807F7FC - adds r4, r5, 0 -_0807F794: - ldr r0, [r5] - ldr r2, [sp, 0xFC] - adds r0, r2, r0 - str r0, [r4] - ldr r0, [r4, 0x4] - add r0, r10 - str r0, [r4, 0x4] - mov r0, r8 - adds r1, r4, 0 - bl sub_804535C - mov r0, r8 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0807F7E6 - ldr r0, [sp, 0x100] - bl sub_8009C7C - lsls r0, 5 - mov r3, r8 - str r0, [r3, 0x1C] - movs r0, 0x3B - bl sub_803E46C - movs r0, 0x3 - ands r0, r7 - cmp r0, 0 - bne _0807F7E6 - movs r0, 0x7 - mov r1, r9 - ands r1, r0 - mov r9, r1 - mov r0, r8 - movs r1, 0x6 - mov r2, r9 - bl sub_806CDD4 - movs r2, 0x1 - add r9, r2 -_0807F7E6: - movs r0, 0x80 - lsls r0, 4 - adds r1, r6, 0 - bl __divsi3 - ldr r3, [sp, 0x100] - adds r3, r0 - str r3, [sp, 0x100] - adds r7, 0x1 - cmp r7, r6 - blt _0807F794 -_0807F7FC: - ldr r4, [sp, 0xF4] - str r4, [r5] - add r1, sp, 0xD8 - ldr r0, [sp, 0xF8] - str r0, [r1, 0x4] - movs r0, 0 - mov r2, r8 - str r0, [r2, 0x1C] - mov r0, r8 - bl sub_804535C - movs r0, 0x3B - bl sub_803E46C - mov r3, r8 - ldr r0, [r3, 0x70] - movs r1, 0x7 - mov r4, r9 - ands r4, r1 - adds r0, 0x46 - strb r4, [r0] - add r2, sp, 0xD4 - movs r1, 0 - ldrsh r0, [r2, r1] - adds r4, r2, 0 - movs r3, 0x2 - ldrsh r1, [r4, r3] - bl sub_804954C - ldr r6, [r0, 0x10] - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - bne _0807F876 - add r2, sp, 0xD4 - movs r0, 0 - ldrsh r1, [r2, r0] - movs r3, 0x2 - ldrsh r2, [r4, r3] - mov r0, r8 - movs r3, 0x1 - bl sub_80694C0 - mov r0, r8 - bl sub_807F9BC - b _0807F99C - .align 2, 0 -_0807F860: .4byte gUnknown_202DF98 -_0807F864: .4byte gUnknown_80FE690 -_0807F868: .4byte 0x000001a3 -_0807F86C: .4byte gUnknown_80F4448 -_0807F870: - ldr r0, [r7] - str r0, [sp, 0xD4] - b _0807F8BE -_0807F876: - movs r5, 0 - add r4, sp, 0xE0 - adds r7, r4, 0 -_0807F87C: - ldr r0, _0807F8D0 - lsls r3, r5, 2 - adds r3, r0 - add r1, sp, 0xD4 - ldrh r0, [r1] - ldrh r2, [r3] - adds r0, r2 - lsls r0, 16 - lsrs r0, 16 - ldr r2, _0807F8D4 - ldr r1, [r7] - ands r1, r2 - orrs r1, r0 - str r1, [r4] - add r0, sp, 0xD4 - ldrh r2, [r0, 0x2] - ldrh r3, [r3, 0x2] - adds r2, r3 - lsls r2, 16 - ldr r0, _0807F8D8 - ands r1, r0 - orrs r1, r2 - str r1, [r4] - mov r0, r8 - add r1, sp, 0xE0 - bl sub_80703A0 - lsls r0, 24 - cmp r0, 0 - beq _0807F870 - adds r5, 0x1 - cmp r5, 0x7 - ble _0807F87C -_0807F8BE: - cmp r5, 0x8 - bne _0807F8DC - ldr r0, [sp, 0xEC] - mov r1, r8 - movs r2, 0 - movs r3, 0 - bl sub_807D148 - b _0807F8FA - .align 2, 0 -_0807F8D0: .4byte gUnknown_80F4448 -_0807F8D4: .4byte 0xffff0000 -_0807F8D8: .4byte 0x0000ffff -_0807F8DC: - mov r0, r8 - add r1, sp, 0xD4 - bl sub_807D068 - add r0, sp, 0xD4 - movs r3, 0 - ldrsh r1, [r0, r3] - movs r0, 0xD6 - add r0, sp - movs r4, 0 - ldrsh r2, [r0, r4] - mov r0, r8 - movs r3, 0x1 - bl sub_80694C0 -_0807F8FA: - adds r0, r6, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _0807F954 - add r4, sp, 0xE4 - ldr r1, _0807F9AC - adds r0, r4, 0 - bl sub_8092A88 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80571F0 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0807F93C - ldr r0, _0807F9B0 - movs r3, 0 - ldrsh r2, [r0, r3] - str r1, [sp] - str r1, [sp, 0x4] - ldr r0, _0807F9B4 - str r0, [sp, 0x8] - str r1, [sp, 0xC] - str r1, [sp, 0x10] - str r1, [sp, 0x14] - ldr r0, [sp, 0xEC] - adds r1, r6, 0 - movs r3, 0 - bl sub_806F370 -_0807F93C: - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807F954 - ldr r0, [r6, 0x70] - adds r0, 0x46 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_806CE68 -_0807F954: - ldr r0, _0807F9B0 - movs r4, 0 - ldrsh r2, [r0, r4] - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - ldr r0, _0807F9B8 - str r0, [sp, 0x8] - str r1, [sp, 0xC] - str r1, [sp, 0x10] - str r1, [sp, 0x14] - ldr r0, [sp, 0xEC] - mov r1, r8 - movs r3, 0 - bl sub_806F370 - mov r0, r8 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807F98E - mov r1, r8 - ldr r0, [r1, 0x70] - adds r0, 0x46 - ldrb r1, [r0] - mov r0, r8 - bl sub_806CE68 -_0807F98E: - movs r0, 0x1E - movs r1, 0x3B - bl sub_803E708 - mov r0, r8 - bl sub_807F9BC -_0807F99C: - add sp, 0x10C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807F9AC: .4byte 0x00000163 -_0807F9B0: .4byte gUnknown_80F4F92 -_0807F9B4: .4byte 0x0000021a -_0807F9B8: .4byte 0x00000219 - thumb_func_end sub_807F43C - - thumb_func_start sub_807F9BC -sub_807F9BC: - push {r4,lr} - adds r4, r0, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0807FA0A - ldr r0, [r4, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0807F9F4 - ldr r2, _0807FA10 - ldr r1, [r2] - movs r0, 0 - strb r0, [r1, 0x1] - ldr r0, [r2] - movs r1, 0xB8 - lsls r1, 3 - adds r0, r1 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - adds r0, r4, 0x4 - bl sub_804AC20 - movs r0, 0 - bl sub_807EC28 -_0807F9F4: - adds r0, r4, 0 - bl sub_806A5B8 - ldr r0, _0807FA10 - ldr r0, [r0] - ldr r1, _0807FA14 - adds r0, r1 - ldrb r1, [r0] - adds r0, r4, 0 - bl sub_8075900 -_0807FA0A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807FA10: .4byte gUnknown_203B418 -_0807FA14: .4byte 0x00003a08 - thumb_func_end sub_807F9BC - - thumb_func_start sub_807FA18 -sub_807FA18: - push {r4-r7,lr} - sub sp, 0x4 - movs r6, 0 -_0807FA1E: - movs r5, 0 - adds r7, r6, 0x1 -_0807FA22: - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_8049590 - adds r4, r0, 0 - ldrh r1, [r4, 0x4] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0807FA88 - lsls r0, r5, 16 - lsls r1, r6, 16 - lsrs r0, 16 - orrs r0, r1 - str r0, [sp] - ldrh r1, [r4, 0x4] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0807FA4E - movs r0, 0x6 - b _0807FA56 -_0807FA4E: - bl sub_803D6FC - lsls r0, 24 - lsrs r0, 24 -_0807FA56: - cmp r0, 0x11 - bne _0807FA72 - movs r0, 0x11 - mov r1, sp - movs r2, 0x2 - bl sub_8045684 - cmp r0, 0 - beq _0807FA88 - str r0, [r4, 0x14] - adds r1, r0, 0 - adds r1, 0x20 - movs r0, 0x1 - b _0807FA86 -_0807FA72: - mov r1, sp - movs r2, 0 - bl sub_8045684 - cmp r0, 0 - beq _0807FA88 - str r0, [r4, 0x14] - adds r1, r0, 0 - adds r1, 0x20 - movs r0, 0 -_0807FA86: - strb r0, [r1] -_0807FA88: - adds r5, 0x1 - cmp r5, 0x37 - ble _0807FA22 - adds r6, r7, 0 - cmp r6, 0x1F - ble _0807FA1E - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_807FA18 - - thumb_func_start sub_807FA9C -sub_807FA9C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - ldr r2, _0807FAC4 - ldr r0, [r2] - ldr r3, _0807FAC8 - adds r1, r0, r3 - ldrb r1, [r1] - str r1, [sp] - ldr r1, _0807FACC - adds r0, r1 - movs r3, 0 - ldrsh r0, [r0, r3] - subs r1, r0, 0x5 - mov r8, r1 - b _0807FBFE - .align 2, 0 -_0807FAC4: .4byte gUnknown_203B418 -_0807FAC8: .4byte 0x0001820f -_0807FACC: .4byte 0x000181ea -_0807FAD0: - ldr r0, [r2] - ldr r2, _0807FC18 - adds r0, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - subs r5, r0, 0x6 - adds r0, 0x6 - mov r1, r8 - adds r1, 0x1 - str r1, [sp, 0x4] - cmp r5, r0 - blt _0807FAEA - b _0807FBEE -_0807FAEA: - ldr r7, _0807FC1C - ldr r2, _0807FC20 - mov r10, r2 - lsls r0, r5, 1 - adds r0, r5 - lsls r0, 3 - mov r9, r0 -_0807FAF8: - movs r6, 0 - adds r0, r5, 0 - mov r1, r8 - bl sub_804954C - adds r4, r0, 0 - ldr r0, [r4, 0x14] - cmp r0, 0 - beq _0807FB24 - bl sub_80450F8 - cmp r0, 0x2 - bne _0807FB24 - ldr r0, [r4, 0x14] - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - bne _0807FB22 - ldr r3, [sp] - cmp r3, 0 - beq _0807FB24 -_0807FB22: - movs r6, 0x1 -_0807FB24: - ldrh r0, [r4] - movs r2, 0x80 - lsls r2, 2 - adds r1, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0807FB34 - movs r6, 0x1 -_0807FB34: - cmp r6, 0 - beq _0807FBD6 - ldr r0, _0807FC24 - ldr r1, [r0] - ldr r3, _0807FC28 - adds r0, r1, r3 - movs r2, 0 - ldrsh r0, [r0, r2] - mov r2, r9 - subs r3, r2, r0 - mov r2, r8 - lsls r0, r2, 1 - add r0, r8 - lsls r0, 3 - ldr r2, _0807FC2C - adds r1, r2 - movs r2, 0 - ldrsh r1, [r1, r2] - subs r2, r0, r1 - movs r0, 0x20 - negs r0, r0 - cmp r3, r0 - blt _0807FBD6 - cmp r2, r0 - blt _0807FBD6 - movs r0, 0x88 - lsls r0, 1 - cmp r3, r0 - bgt _0807FBD6 - cmp r2, 0xC0 - bgt _0807FBD6 - ldrh r1, [r7] - mov r0, r10 - ands r0, r1 - strh r0, [r7] - ldr r1, _0807FC30 - ands r1, r2 - lsls r1, 4 - ldrh r2, [r7, 0x6] - movs r0, 0xF - ands r0, r2 - orrs r0, r1 - strh r0, [r7, 0x6] - ldr r0, _0807FC34 - ands r3, r0 - ldrh r0, [r7, 0x2] - movs r2, 0xFE - lsls r2, 8 - adds r1, r2, 0 - ands r0, r1 - orrs r0, r3 - strh r0, [r7, 0x2] - ldrh r1, [r7, 0x4] - mov r0, r10 - ands r0, r1 - movs r3, 0xC0 - lsls r3, 4 - orrs r0, r3 - movs r1, 0 - orrs r0, r1 - movs r1, 0xA0 - lsls r1, 8 - ldr r2, _0807FC30 - ands r0, r2 - orrs r0, r1 - movs r3, 0 - orrs r0, r3 - movs r2, 0xFE - lsls r2, 1 - movs r3, 0xFC - lsls r3, 8 - adds r1, r3, 0 - ands r0, r1 - orrs r0, r2 - strh r0, [r7, 0x4] - adds r0, r7, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl AddSprite -_0807FBD6: - movs r0, 0x18 - add r9, r0 - adds r5, 0x1 - ldr r0, _0807FC24 - ldr r0, [r0] - ldr r1, _0807FC18 - adds r0, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r0, 0x6 - cmp r5, r0 - blt _0807FAF8 -_0807FBEE: - ldr r3, [sp, 0x4] - mov r8, r3 - ldr r2, _0807FC24 - ldr r0, [r2] - ldr r1, _0807FC38 - adds r0, r1 - movs r3, 0 - ldrsh r0, [r0, r3] -_0807FBFE: - adds r0, 0x5 - cmp r8, r0 - bge _0807FC06 - b _0807FAD0 -_0807FC06: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807FC18: .4byte 0x000181e8 -_0807FC1C: .4byte gUnknown_202EDC0 -_0807FC20: .4byte 0x0000f3ff -_0807FC24: .4byte gUnknown_203B418 -_0807FC28: .4byte 0x000181f0 -_0807FC2C: .4byte 0x000181f2 -_0807FC30: .4byte 0x00000fff -_0807FC34: .4byte 0x000001ff -_0807FC38: .4byte 0x000181ea - thumb_func_end sub_807FA9C - - thumb_func_start sub_807FC3C -sub_807FC3C: - push {r4-r7,lr} - ldr r6, _0807FC70 - ldr r4, [r6] - ldrh r5, [r0] - ldr r7, _0807FC74 - adds r3, r4, r7 - strh r5, [r3] - ldrh r3, [r0, 0x2] - ldr r5, _0807FC78 - adds r0, r4, r5 - strh r3, [r0] - adds r7, 0x4 - adds r4, r7 - strb r1, [r4] - ldr r0, [r6] - ldr r1, _0807FC7C - adds r0, r1 - strb r2, [r0] - ldr r0, [r6] - subs r5, 0x6 - adds r0, r5 - movs r1, 0x1 - strb r1, [r0] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807FC70: .4byte gUnknown_203B418 -_0807FC74: .4byte 0x00013574 -_0807FC78: .4byte 0x00013576 -_0807FC7C: .4byte 0x00013579 - thumb_func_end sub_807FC3C - - thumb_func_start sub_807FC80 -sub_807FC80: - push {lr} - movs r1, 0 - ldrsh r2, [r0, r1] - movs r3, 0x2 - ldrsh r1, [r0, r3] - adds r0, r2, 0 - bl sub_8049590 - adds r2, r0, 0 - ldrh r1, [r2] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - bne _0807FCCA - ldrb r0, [r2, 0x9] - cmp r0, 0xFF - beq _0807FCCA - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0807FCCA - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _0807FCCA - movs r0, 0x3 - ands r0, r1 - cmp r0, 0x1 - bne _0807FCCA - ldr r0, [r2, 0x14] - cmp r0, 0 - beq _0807FCCE - bl sub_80450F8 - cmp r0, 0x2 - beq _0807FCCE -_0807FCCA: - movs r0, 0 - b _0807FCD0 -_0807FCCE: - movs r0, 0x1 -_0807FCD0: - pop {r1} - bx r1 - thumb_func_end sub_807FC80 - - thumb_func_start sub_807FCD4 -sub_807FCD4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - movs r1, 0 - ldrsh r0, [r7, r1] - movs r2, 0x2 - ldrsh r1, [r7, r2] - bl sub_8049590 - adds r6, r0, 0 - cmp r5, 0x13 - bls _0807FD12 - movs r4, 0 - b _0807FCFE -_0807FCFC: - adds r4, 0x1 -_0807FCFE: - cmp r4, 0x1D - bgt _0807FD0C - bl sub_803D6FC - adds r5, r0, 0 - cmp r5, 0x11 - beq _0807FCFC -_0807FD0C: - cmp r4, 0x1E - bne _0807FD12 - movs r5, 0x10 -_0807FD12: - ldrh r1, [r6] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - bne _0807FD6E - ldrb r0, [r6, 0x9] - cmp r0, 0xFF - beq _0807FD6E - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0807FD6E - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _0807FD6E - movs r4, 0x3 - ands r4, r1 - cmp r4, 0x1 - bne _0807FD6E - ldr r0, [r6, 0x14] - cmp r0, 0 - beq _0807FD60 - bl sub_80450F8 - cmp r0, 0x2 - bne _0807FD6E - ldr r0, [r6, 0x14] - bl sub_8045104 - strb r5, [r0] - ldr r0, [r6, 0x14] - bl sub_8045104 - mov r1, r8 - strb r1, [r0, 0x1] - ldr r0, [r6, 0x14] - b _0807FD74 -_0807FD60: - adds r0, r5, 0 - adds r1, r7, 0 - mov r2, r8 - bl sub_8045684 - cmp r0, 0 - bne _0807FD72 -_0807FD6E: - movs r0, 0 - b _0807FD7A -_0807FD72: - str r0, [r6, 0x14] -_0807FD74: - adds r0, 0x20 - strb r4, [r0] - movs r0, 0x1 -_0807FD7A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_807FCD4 - - thumb_func_start sub_807FD84 -sub_807FD84: - push {r4-r6,lr} - adds r6, r0, 0 - movs r5, 0 - ldr r4, _0807FD9C - ldr r0, [r4] - ldr r2, _0807FDA0 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - bne _0807FDA4 - movs r0, 0 - b _0807FDF6 - .align 2, 0 -_0807FD9C: .4byte gUnknown_203B418 -_0807FDA0: .4byte 0x00013570 -_0807FDA4: - strb r5, [r1] - ldr r2, [r4] - ldr r3, _0807FDD8 - adds r0, r2, r3 - adds r3, 0x4 - adds r1, r2, r3 - ldrb r1, [r1] - adds r3, 0x1 - adds r2, r3 - ldrb r2, [r2] - bl sub_807FCD4 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _0807FDE0 - ldr r1, [r4] - ldr r0, _0807FDD8 - adds r1, r0 - ldr r0, _0807FDDC - ldr r2, [r0] - adds r0, r6, 0 - bl sub_8052364 - b _0807FDF0 - .align 2, 0 -_0807FDD8: .4byte 0x00013574 -_0807FDDC: .4byte gUnknown_80FC5F8 -_0807FDE0: - ldr r1, [r4] - ldr r2, _0807FDFC - adds r1, r2 - ldr r0, _0807FE00 - ldr r2, [r0] - adds r0, r6, 0 - bl sub_8052364 -_0807FDF0: - bl sub_8049ED4 - adds r0, r5, 0 -_0807FDF6: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0807FDFC: .4byte 0x00013574 -_0807FE00: .4byte gUnknown_80FC5FC - thumb_func_end sub_807FD84 - - thumb_func_start sub_807FE04 -sub_807FE04: - push {r4,r5,lr} - adds r2, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - movs r1, 0 - ldrsh r0, [r2, r1] - movs r3, 0x2 - ldrsh r1, [r2, r3] - bl sub_8049590 - adds r4, r0, 0 - ldr r0, [r4, 0x14] - cmp r0, 0 - beq _0807FE3C - bl sub_80450F8 - cmp r0, 0x2 - bne _0807FE3C - ldr r1, [r4, 0x14] - movs r0, 0 - str r0, [r1] - str r0, [r4, 0x14] - cmp r5, 0 - beq _0807FE38 - bl sub_8049ED4 -_0807FE38: - movs r0, 0x1 - b _0807FE3E -_0807FE3C: - movs r0, 0 -_0807FE3E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_807FE04 - - thumb_func_start sub_807FE44 -sub_807FE44: - push {r4,r5,lr} - adds r2, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - movs r1, 0 - ldrsh r0, [r2, r1] - movs r3, 0x2 - ldrsh r1, [r2, r3] - bl sub_804954C - adds r4, r0, 0 - ldr r0, [r4, 0x14] - cmp r0, 0 - beq _0807FE7C - bl sub_80450F8 - cmp r0, 0x2 - bne _0807FE7C - ldr r0, [r4, 0x14] - adds r0, 0x20 - movs r1, 0x1 - strb r1, [r0] - cmp r5, 0 - beq _0807FE78 - bl sub_8049ED4 -_0807FE78: - movs r0, 0x1 - b _0807FE7E -_0807FE7C: - movs r0, 0 -_0807FE7E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_807FE44 - - thumb_func_start sub_807FE84 -sub_807FE84: - push {lr} - lsls r1, 24 - ldr r2, _0807FE98 - lsrs r1, 22 - adds r1, r2 - ldr r1, [r1] - bl strcpy - pop {r0} - bx r0 - .align 2, 0 -_0807FE98: .4byte gUnknown_80F91F0 - thumb_func_end sub_807FE84 - - thumb_func_start sub_807FE9C -sub_807FE9C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - adds r5, r0, 0 - mov r9, r1 - str r2, [sp] - lsls r3, 24 - lsrs r6, r3, 24 - movs r2, 0 - ldrsh r0, [r1, r2] - movs r3, 0x2 - ldrsh r1, [r1, r3] - bl sub_8049590 - str r0, [sp, 0x4] - ldr r0, [r0, 0x14] - mov r10, r0 - movs r1, 0 - str r1, [sp, 0x8] - cmp r0, 0 - bne _0807FECE - b _080801B4 -_0807FECE: - bl sub_80450F8 - cmp r0, 0x2 - beq _0807FED8 - b _080801B4 -_0807FED8: - mov r0, r10 - bl sub_8045104 - mov r8, r0 - ldr r0, _0807FF58 - mov r2, r8 - ldrb r1, [r2] - bl sub_807FE84 - ldr r3, [sp, 0x4] - ldr r4, [r3, 0x10] - cmp r4, 0 - beq _0807FEFE - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x1 - beq _0807FEFE - movs r4, 0 -_0807FEFE: - mov r1, r10 - adds r1, 0x20 - ldrb r0, [r1] - str r0, [sp, 0xC] - movs r0, 0x1 - strb r0, [r1] - cmp r4, 0 - beq _0807FF96 - adds r0, r4, 0 - bl sub_806A1E8 - cmp r6, 0 - beq _0807FF96 - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0x11 - beq _0807FF96 - movs r0, 0x64 - bl sub_8084100 - adds r7, r0, 0 - movs r6, 0 - adds r0, r4, 0 - movs r1, 0x1C - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _0807FF3C - ldr r0, _0807FF5C - ldr r6, [r0] -_0807FF3C: - ldr r2, [sp, 0xC] - cmp r2, 0x1 - beq _0807FF50 - ldr r0, _0807FF60 - ldr r0, [r0] - ldr r3, _0807FF64 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _0807FF68 -_0807FF50: - cmp r7, 0 - bge _0807FF70 - b _0807FF6C - .align 2, 0 -_0807FF58: .4byte gUnknown_202DF98 -_0807FF5C: .4byte gUnknown_80FDB5C -_0807FF60: .4byte gUnknown_203B418 -_0807FF64: .4byte 0x0001820f -_0807FF68: - cmp r7, 0xE - bgt _0807FF70 -_0807FF6C: - ldr r0, _0807FFD8 - ldr r6, [r0] -_0807FF70: - cmp r6, 0 - beq _0807FF96 - mov r0, r9 - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - beq _0807FF84 - bl sub_8049ED4 -_0807FF84: - adds r0, r5, 0 - adds r1, r4, 0 - adds r2, r6, 0 - bl sub_80522F4 - ldr r0, [sp] - cmp r0, 0 - bne _0807FF96 - b _080801B4 -_0807FF96: - mov r0, r9 - bl sub_803F428 - lsls r0, 24 - cmp r0, 0 - beq _0807FFFA - movs r1, 0xAE - lsls r1, 1 - movs r0, 0 - bl sub_80421C0 - bl sub_8049ED4 - mov r1, r8 - ldrb r2, [r1] - adds r0, r5, 0 - mov r1, r9 - bl sub_804225C - ldr r0, _0807FFDC - ldr r0, [r0] - ldr r2, _0807FFE0 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0807FFE8 - ldr r0, _0807FFE4 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80522A8 - b _0807FFFA - .align 2, 0 -_0807FFD8: .4byte gUnknown_80FDB7C -_0807FFDC: .4byte gUnknown_203B418 -_0807FFE0: .4byte 0x0001820a -_0807FFE4: .4byte gUnknown_80FD7F4 -_0807FFE8: - ldr r0, _08080010 - mov r3, r8 - ldrb r1, [r3] - lsls r1, 2 - adds r1, r0 - ldr r1, [r1] - adds r0, r5, 0 - bl sub_80522A8 -_0807FFFA: - cmp r4, 0 - beq _08080020 - mov r1, r8 - ldrb r0, [r1, 0x1] - cmp r0, 0x2 - bne _08080014 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806F480 - b _08080020 - .align 2, 0 -_08080010: .4byte gUnknown_80FD7F8 -_08080014: - cmp r0, 0x1 - bne _08080020 - adds r0, r4, 0 - movs r1, 0 - bl sub_806F480 -_08080020: - mov r2, r8 - ldrb r0, [r2] - cmp r0, 0x1B - bls _0808002A - b _08080194 -_0808002A: - lsls r0, 2 - ldr r1, _08080034 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08080034: .4byte _08080038 - .align 2, 0 -_08080038: - .4byte _080800A8 - .4byte _080800B2 - .4byte _080800BC - .4byte _080800C6 - .4byte _080800D0 - .4byte _080800DA - .4byte _080800E6 - .4byte _080800F0 - .4byte _080800FA - .4byte _08080104 - .4byte _0808010E - .4byte _08080118 - .4byte _08080122 - .4byte _0808012C - .4byte _08080136 - .4byte _08080140 - .4byte _0808014A - .4byte _08080168 - .4byte _08080172 - .4byte _08080180 - .4byte _08080194 - .4byte _08080194 - .4byte _08080194 - .4byte _08080194 - .4byte _08080194 - .4byte _08080194 - .4byte _08080194 - .4byte _080800DA -_080800A8: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8080A5C - b _08080194 -_080800B2: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80801CC - b _08080194 -_080800BC: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_808024C - b _08080194 -_080800C6: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8080418 - b _08080194 -_080800D0: - adds r0, r5, 0 - mov r1, r9 - bl sub_8080620 - b _0808017A -_080800DA: - adds r0, r5, 0 - adds r1, r4, 0 - ldr r2, [sp, 0x4] - bl sub_8080504 - b _08080194 -_080800E6: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8080374 - b _08080194 -_080800F0: - mov r0, r10 - adds r1, r4, 0 - bl sub_8080884 - b _08080194 -_080800FA: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8080364 - b _08080194 -_08080104: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8080388 - b _08080194 -_0808010E: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80803B4 - b _08080194 -_08080118: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80807C0 - b _08080194 -_08080122: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80803C8 - b _08080194 -_0808012C: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80803D8 - b _08080194 -_08080136: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80803F8 - b _08080194 -_08080140: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8080700 - b _08080194 -_0808014A: - cmp r4, 0 - beq _08080194 - ldr r0, _08080160 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r3, _08080164 - adds r0, r4, 0 - movs r2, 0xF - bl sub_806F324 - b _08080194 - .align 2, 0 -_08080160: .4byte gUnknown_80F4F86 -_08080164: .4byte 0x00000213 -_08080168: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80807B4 - b _08080194 -_08080172: - adds r0, r5, 0 - mov r1, r9 - bl sub_80808A4 -_0808017A: - movs r3, 0x1 - str r3, [sp, 0x8] - b _08080194 -_08080180: - cmp r4, 0 - beq _08080194 - ldr r0, _080801C4 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r3, _080801C8 - adds r0, r4, 0 - movs r2, 0xA - bl sub_806F324 -_08080194: - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080801A6 - adds r0, r4, 0 - bl sub_8071DA4 -_080801A6: - ldr r3, [sp, 0x8] - cmp r3, 0 - beq _080801B4 - mov r0, r9 - movs r1, 0x1 - bl sub_807FE04 -_080801B4: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080801C4: .4byte gUnknown_80F4F84 -_080801C8: .4byte 0x00000206 - thumb_func_end sub_807FE9C - - thumb_func_start sub_80801CC -sub_80801CC: - push {r4,r5,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r4, r1, 0 - cmp r4, 0 - beq _08080240 - movs r0, 0x64 - bl sub_8084100 - adds r1, r0, 0 - cmp r0, 0x18 - bgt _080801EC - ldr r0, _080801E8 - b _080801F2 - .align 2, 0 -_080801E8: .4byte gUnknown_8106A4C -_080801EC: - cmp r0, 0x31 - bgt _0808020C - ldr r0, _08080208 -_080801F2: - ldr r2, [r0] - movs r0, 0x1 - str r0, [sp] - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8076E20 - b _08080240 - .align 2, 0 -_08080208: .4byte gUnknown_8106A50 -_0808020C: - cmp r1, 0x4A - bgt _0808022C - ldr r0, _08080228 - ldr r2, [r0] - movs r0, 0x1 - str r0, [sp] - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8076F80 - b _08080240 - .align 2, 0 -_08080228: .4byte gUnknown_8106A4C -_0808022C: - ldr r0, _08080248 - ldr r2, [r0] - movs r0, 0x1 - str r0, [sp] - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8076F80 -_08080240: - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08080248: .4byte gUnknown_8106A50 - thumb_func_end sub_80801CC - - thumb_func_start sub_808024C -sub_808024C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x5C - str r0, [sp, 0x54] - mov r10, r1 - ldr r0, [r1, 0x70] - mov r8, r0 - mov r0, r10 - movs r1, 0xE - bl sub_8046CB0 - lsls r0, 24 - cmp r0, 0 - beq _08080278 - ldr r0, _08080274 - b _08080300 - .align 2, 0 -_08080274: .4byte gUnknown_80FDC7C -_08080278: - movs r6, 0 - mov r1, r8 - ldrb r0, [r1, 0x7] - movs r1, 0x60 - add r1, r8 - mov r9, r1 - cmp r0, 0 - beq _080802C8 - movs r5, 0 - ldr r7, _0808030C - mov r0, sp - str r0, [sp, 0x58] -_08080290: - lsls r4, r5, 2 - ldr r0, [r7] - adds r2, r4, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080802C2 - ldrb r0, [r2, 0x2] - bl sub_8091544 - lsls r0, 24 - cmp r0, 0 - beq _080802C2 - ldr r0, [r7] - adds r2, r0, r4 - ldrb r1, [r2] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080802C2 - ldr r1, [sp, 0x58] - stm r1!, {r2} - str r1, [sp, 0x58] - adds r6, 0x1 -_080802C2: - adds r5, 0x1 - cmp r5, 0x13 - ble _08080290 -_080802C8: - mov r0, r9 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080802FA - mov r0, r8 - adds r0, 0x62 - ldrb r0, [r0] - bl sub_8091544 - lsls r0, 24 - cmp r0, 0 - beq _080802FA - mov r0, r9 - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080802FA - lsls r0, r6, 2 - add r0, sp - mov r1, r9 - str r1, [r0] - adds r6, 0x1 -_080802FA: - cmp r6, 0 - bne _08080314 - ldr r0, _08080310 -_08080300: - ldr r2, [r0] - ldr r0, [sp, 0x54] - mov r1, r10 - bl sub_80522F4 - b _0808034A - .align 2, 0 -_0808030C: .4byte gUnknown_203B460 -_08080310: .4byte gUnknown_80FDC40 -_08080314: - adds r0, r6, 0 - bl sub_8084100 - ldr r2, _0808035C - lsls r0, 2 - mov r1, sp - adds r4, r1, r0 - ldr r1, [r4] - adds r0, r2, 0 - bl sub_8045BF8 - ldr r2, [r4] - ldrb r1, [r2] - movs r0, 0x8 - orrs r0, r1 - strb r0, [r2] - movs r1, 0xC9 - lsls r1, 1 - mov r0, r10 - bl sub_80421C0 - ldr r0, _08080360 - ldr r2, [r0] - ldr r0, [sp, 0x54] - mov r1, r10 - bl sub_80522F4 -_0808034A: - add sp, 0x5C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808035C: .4byte gUnknown_202DE58 -_08080360: .4byte gUnknown_80FDC18 - thumb_func_end sub_808024C - - thumb_func_start sub_8080364 -sub_8080364: - push {lr} - cmp r1, 0 - beq _08080370 - movs r2, 0x1 - bl sub_8077AE4 -_08080370: - pop {r0} - bx r0 - thumb_func_end sub_8080364 - - thumb_func_start sub_8080374 -sub_8080374: - push {lr} - cmp r1, 0 - beq _08080382 - movs r2, 0 - movs r3, 0 - bl sub_807D148 -_08080382: - pop {r0} - bx r0 - thumb_func_end sub_8080374 - - thumb_func_start sub_8080388 -sub_8080388: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - cmp r4, 0 - beq _080803A8 - ldr r1, _080803B0 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_808417C - adds r2, r0, 0 - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8075C58 -_080803A8: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080803B0: .4byte gUnknown_80F4E74 - thumb_func_end sub_8080388 - - thumb_func_start sub_80803B4 -sub_80803B4: - push {lr} - cmp r1, 0 - beq _080803C2 - movs r2, 0x1 - movs r3, 0x1 - bl sub_80779F0 -_080803C2: - pop {r0} - bx r0 - thumb_func_end sub_80803B4 - - thumb_func_start sub_80803C8 -sub_80803C8: - push {lr} - cmp r1, 0 - beq _080803D4 - movs r2, 0x1 - bl sub_80763F8 -_080803D4: - pop {r0} - bx r0 - thumb_func_end sub_80803C8 - - thumb_func_start sub_80803D8 -sub_80803D8: - push {lr} - sub sp, 0x8 - adds r2, r1, 0x4 - movs r3, 0 - str r3, [sp] - ldr r3, _080803F4 - str r3, [sp, 0x4] - movs r3, 0x1 - bl sub_807DF38 - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_080803F4: .4byte 0x00000212 - thumb_func_end sub_80803D8 - - thumb_func_start sub_80803F8 -sub_80803F8: - push {lr} - sub sp, 0x8 - adds r2, r1, 0x4 - movs r3, 0 - str r3, [sp] - ldr r3, _08080414 - str r3, [sp, 0x4] - movs r3, 0x2 - bl sub_807DF38 - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_08080414: .4byte 0x00000212 - thumb_func_end sub_80803F8 - - thumb_func_start sub_8080418 -sub_8080418: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x58 - mov r8, r0 - adds r6, r1, 0 - movs r0, 0 - mov r9, r0 - cmp r6, 0 - beq _080804F0 - ldr r7, [r6, 0x70] - movs r3, 0 - ldrb r0, [r7, 0x7] - cmp r0, 0 - beq _0808045A - ldr r0, _080804C0 - movs r1, 0x1 - mov r12, r1 - ldr r2, [r0] - mov r4, sp - movs r5, 0x13 -_08080444: - ldrb r1, [r2] - mov r0, r12 - ands r0, r1 - cmp r0, 0 - beq _08080452 - stm r4!, {r2} - adds r3, 0x1 -_08080452: - adds r2, 0x4 - subs r5, 0x1 - cmp r5, 0 - bge _08080444 -_0808045A: - adds r2, r7, 0 - adds r2, 0x60 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08080470 - lsls r0, r3, 2 - add r0, sp - str r2, [r0] - adds r3, 0x1 -_08080470: - cmp r3, 0 - ble _080804B6 - mov r4, sp - adds r5, r3, 0 -_08080478: - ldr r0, [r4] - ldrb r0, [r0, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _080804AE - ldr r0, [r4] - ldrb r0, [r0, 0x2] - cmp r0, 0x54 - beq _080804AE - movs r0, 0x64 - bl sub_8084100 - ldr r1, _080804C4 - movs r2, 0 - ldrsh r1, [r1, r2] - cmp r0, r1 - bge _080804AE - movs r0, 0x1 - add r9, r0 - ldr r0, [r4] - movs r1, 0x54 - movs r2, 0x2 - bl sub_8045C28 -_080804AE: - adds r4, 0x4 - subs r5, 0x1 - cmp r5, 0 - bne _08080478 -_080804B6: - mov r1, r9 - cmp r1, 0x1 - bne _080804CC - ldr r0, _080804C8 - b _080804D4 - .align 2, 0 -_080804C0: .4byte gUnknown_203B460 -_080804C4: .4byte gUnknown_80F4E0E -_080804C8: .4byte gUnknown_80FD788 -_080804CC: - mov r2, r9 - cmp r2, 0 - bne _080804E4 - ldr r0, _080804E0 -_080804D4: - ldr r2, [r0] - mov r0, r8 - adds r1, r6, 0 - bl sub_80522F4 - b _080804F0 - .align 2, 0 -_080804E0: .4byte gUnknown_80FD7D4 -_080804E4: - ldr r0, _08080500 - ldr r2, [r0] - mov r0, r8 - adds r1, r6, 0 - bl sub_80522F4 -_080804F0: - add sp, 0x58 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08080500: .4byte gUnknown_80FD7AC - thumb_func_end sub_8080418 - - thumb_func_start sub_8080504 -sub_8080504: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r4, r1, 0 - adds r7, r2, 0 - movs r0, 0 - mov r8, r0 - cmp r4, 0 - bne _0808051A - b _0808060E -_0808051A: - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - beq _08080534 - ldr r0, _08080530 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - b _0808060E - .align 2, 0 -_08080530: .4byte gUnknown_80FED0C -_08080534: - ldr r5, [r4, 0x70] - adds r0, r4, 0 - bl sub_8045888 - lsls r0, 24 - cmp r0, 0 - beq _0808055E - adds r0, r7, 0 - movs r1, 0x1B - bl sub_8080B00 - movs r1, 0x1 - mov r8, r1 - ldr r1, _080805A4 - adds r0, r4, 0 - bl sub_80421C0 - movs r0, 0x1E - movs r1, 0x48 - bl sub_803E708 -_0808055E: - ldrb r0, [r5, 0x7] - cmp r0, 0 - beq _080805C4 - bl sub_8043D10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _080805B4 - movs r2, 0xAE - lsls r2, 1 - adds r0, r5, r2 - movs r1, 0x1 - strb r1, [r0] - adds r2, 0x2 - adds r0, r5, r2 - strb r1, [r0] - movs r0, 0x28 - movs r1, 0x4B - bl sub_803E708 - ldr r0, _080805A8 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r3, _080805AC - adds r0, r4, 0 - movs r2, 0x11 - bl sub_806F324 - ldr r0, _080805B0 - ldr r1, [r0] - movs r0, 0x2 - strb r0, [r1, 0x2] - b _0808060E - .align 2, 0 -_080805A4: .4byte 0x00000193 -_080805A8: .4byte gUnknown_80F4F8A -_080805AC: .4byte 0x00000215 -_080805B0: .4byte gUnknown_203B418 -_080805B4: - ldr r0, _080805C0 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_80522A8 - b _08080600 - .align 2, 0 -_080805C0: .4byte gUnknown_80F9728 -_080805C4: - ldr r0, _080805E4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldrb r0, [r5, 0x6] - cmp r0, 0 - beq _080805EC - ldr r0, _080805E8 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80522F4 - b _080805F6 - .align 2, 0 -_080805E4: .4byte gUnknown_202DF98 -_080805E8: .4byte gUnknown_80F970C -_080805EC: - ldr r0, _08080618 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_805239C -_080805F6: - ldr r1, _0808061C - adds r0, r4, 0 - adds r2, r6, 0 - bl sub_8068FE0 -_08080600: - mov r0, r8 - cmp r0, 0 - beq _0808060E - adds r0, r7, 0 - movs r1, 0x5 - bl sub_8080B00 -_0808060E: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08080618: .4byte gUnknown_80F970C -_0808061C: .4byte 0x00000215 - thumb_func_end sub_8080504 - - thumb_func_start sub_8080620 -sub_8080620: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - str r0, [sp, 0x14] - adds r7, r1, 0 - movs r0, 0x3 - bl sub_8084100 - adds r6, r0, 0 - adds r4, r6, 0x2 - movs r0, 0x8 - bl sub_8084100 - adds r5, r0, 0 - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - bne _080806CA - movs r0, 0 - mov r8, r0 - cmp r8, r4 - bge _080806BA - mov r4, sp - movs r1, 0 - mov r10, r1 - movs r2, 0 - mov r9, r2 - adds r6, 0x2 -_08080660: - movs r0, 0 - bl sub_803D970 - movs r1, 0x7 - ands r5, r1 - strh r0, [r4] - movs r1, 0 - ldrsh r0, [r4, r1] - movs r1, 0 - bl sub_806AA0C - lsls r0, 24 - cmp r0, 0 - beq _080806B2 - mov r2, r9 - strh r2, [r4, 0x8] - mov r0, r10 - strb r0, [r4, 0x2] - ldr r0, _080806D8 - lsls r1, r5, 2 - adds r1, r0 - ldrh r0, [r1] - ldrh r2, [r7] - adds r0, r2 - strh r0, [r4, 0xC] - ldrh r0, [r1, 0x2] - ldrh r1, [r7, 0x2] - adds r0, r1 - strh r0, [r4, 0xE] - mov r2, r9 - str r2, [sp, 0x4] - mov r0, r10 - strb r0, [r4, 0x10] - mov r0, sp - movs r1, 0x1 - bl sub_806B7F8 - cmp r0, 0 - beq _080806B2 - movs r1, 0x1 - add r8, r1 -_080806B2: - adds r5, 0x1 - subs r6, 0x1 - cmp r6, 0 - bne _08080660 -_080806BA: - movs r1, 0xCA - lsls r1, 1 - adds r0, r7, 0 - bl sub_80421EC - mov r2, r8 - cmp r2, 0 - bne _080806E0 -_080806CA: - ldr r0, _080806DC - ldr r1, [r0] - ldr r0, [sp, 0x14] - bl sub_80522A8 - b _080806EA - .align 2, 0 -_080806D8: .4byte gUnknown_80F4448 -_080806DC: .4byte gUnknown_80FED04 -_080806E0: - ldr r0, _080806FC - ldr r1, [r0] - ldr r0, [sp, 0x14] - bl sub_80522A8 -_080806EA: - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080806FC: .4byte gUnknown_80FED00 - thumb_func_end sub_8080620 - - thumb_func_start sub_8080700 -sub_8080700: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x20 - mov r8, r0 - adds r5, r1, 0 - movs r0, 0 - mov r12, r0 - cmp r5, 0 - beq _080807A4 - ldr r7, [r5, 0x70] - movs r4, 0 - movs r3, 0 - mov r6, sp -_0808071C: - lsls r0, r3, 3 - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - adds r2, r7, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08080742 - ldrb r0, [r2, 0x4] - cmp r0, 0 - beq _08080742 - lsls r1, r4, 2 - stm r6!, {r2} - add r0, sp, 0x10 - adds r0, r1 - str r3, [r0] - adds r4, 0x1 -_08080742: - adds r3, 0x1 - cmp r3, 0x3 - ble _0808071C - cmp r4, 0 - beq _0808077A - adds r0, r4, 0 - bl sub_8084100 - adds r4, r0, 0 - lsls r4, 2 - mov r0, sp - adds r2, r0, r4 - ldr r1, [r2] - movs r0, 0 - strb r0, [r1, 0x4] - ldr r0, _08080790 - ldr r1, [r2] - movs r2, 0 - bl sub_80928C0 - add r0, sp, 0x10 - adds r0, r4 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_806A9B4 - movs r1, 0x1 - mov r12, r1 -_0808077A: - mov r0, r12 - cmp r0, 0 - beq _08080798 - ldr r0, _08080794 - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 - b _080807A4 - .align 2, 0 -_08080790: .4byte gUnknown_202DE58 -_08080794: .4byte gUnknown_80FDA80 -_08080798: - ldr r0, _080807B0 - ldr r2, [r0] - mov r0, r8 - adds r1, r5, 0 - bl sub_80522F4 -_080807A4: - add sp, 0x20 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080807B0: .4byte gUnknown_80FDAA0 - thumb_func_end sub_8080700 - - thumb_func_start sub_80807B4 -sub_80807B4: - push {lr} - movs r2, 0 - bl sub_8079E34 - pop {r0} - bx r0 - thumb_func_end sub_80807B4 - - thumb_func_start sub_80807C0 -sub_80807C0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - mov r8, r0 - adds r7, r1, 0 - movs r0, 0 - mov r9, r0 - cmp r7, 0 - beq _08080870 - mov r0, r8 - movs r2, 0x1 - bl sub_80716E8 - lsls r0, 24 - cmp r0, 0 - bne _08080870 - ldr r0, [r7, 0x70] - movs r5, 0 - movs r6, 0x1 - movs r1, 0x8C - lsls r1, 1 - adds r2, r0, r1 - adds r3, r2, 0 - mov r12, sp - movs r4, 0x3 -_080807F6: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08080816 - ldrb r1, [r2, 0x1] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - bne _08080816 - mov r0, r12 - adds r0, 0x4 - mov r12, r0 - subs r0, 0x4 - stm r0!, {r3} - adds r5, 0x1 -_08080816: - adds r2, 0x8 - adds r3, 0x8 - subs r4, 0x1 - cmp r4, 0 - bge _080807F6 - cmp r5, 0 - beq _08080848 - adds r0, r5, 0 - bl sub_8084100 - lsls r0, 2 - mov r1, sp - adds r3, r1, r0 - ldr r2, [r3] - ldrb r1, [r2, 0x1] - movs r0, 0x1 - orrs r0, r1 - strb r0, [r2, 0x1] - ldr r0, _0808085C - ldr r1, [r3] - movs r2, 0 - bl sub_80928C0 - movs r0, 0x1 - mov r9, r0 -_08080848: - mov r1, r9 - cmp r1, 0 - beq _08080864 - ldr r0, _08080860 - ldr r2, [r0] - mov r0, r8 - adds r1, r7, 0 - bl sub_80522F4 - b _08080870 - .align 2, 0 -_0808085C: .4byte gUnknown_202DE58 -_08080860: .4byte gUnknown_80FDB04 -_08080864: - ldr r0, _08080880 - ldr r2, [r0] - mov r0, r8 - adds r1, r7, 0 - bl sub_80522F4 -_08080870: - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08080880: .4byte gUnknown_80FDB2C - thumb_func_end sub_80807C0 - - thumb_func_start sub_8080884 -sub_8080884: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - cmp r4, 0 - beq _0808089E - movs r0, 0x8 - bl sub_8084100 - adds r2, r0, 0 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_807CD9C -_0808089E: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8080884 - - thumb_func_start sub_80808A4 -sub_80808A4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - str r0, [sp, 0x14] - adds r5, r1, 0 - movs r0, 0 - str r0, [sp, 0x20] - ldr r6, _080808D0 - ldr r0, [r6] - ldr r1, _080808D4 - adds r0, r1 - ldrb r4, [r0] - bl sub_80441BC - lsls r0, 24 - cmp r0, 0 - beq _080808DC - ldr r0, _080808D8 - b _08080A2E - .align 2, 0 -_080808D0: .4byte gUnknown_203B418 -_080808D4: .4byte 0x00018209 -_080808D8: .4byte gUnknown_80FED08 -_080808DC: - cmp r4, 0 - bne _080808E2 - movs r4, 0x2 -_080808E2: - movs r2, 0 - ldrsh r0, [r5, r2] - movs r3, 0x2 - ldrsh r1, [r5, r3] - bl sub_804954C - ldrb r1, [r0, 0x9] - cmp r1, 0xFF - bne _0808090A - movs r0, 0 - ldrsh r1, [r5, r0] - subs r2, r1, r4 - str r2, [sp, 0x18] - movs r3, 0x2 - ldrsh r0, [r5, r3] - subs r2, r0, r4 - adds r1, r4 - mov r10, r1 - adds r0, r4 - b _08080934 -_0808090A: - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r1, _08080994 - adds r0, r1 - ldr r1, [r6] - adds r1, r0 - movs r2, 0x2 - ldrsh r0, [r1, r2] - subs r0, 0x1 - str r0, [sp, 0x18] - movs r3, 0x4 - ldrsh r0, [r1, r3] - subs r2, r0, 0x1 - movs r3, 0x6 - ldrsh r0, [r1, r3] - adds r0, 0x1 - mov r10, r0 - movs r3, 0x8 - ldrsh r0, [r1, r3] - adds r0, 0x1 -_08080934: - str r0, [sp, 0x1C] - adds r7, r2, 0 - ldr r0, [sp, 0x1C] - cmp r7, r0 - bgt _08080A26 -_0808093E: - ldr r6, [sp, 0x18] - adds r1, r7, 0x1 - str r1, [sp, 0x24] - cmp r6, r10 - bgt _08080A1E - mov r5, sp -_0808094A: - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_804954C - adds r4, r0, 0 - ldr r0, [r4, 0x14] - adds r2, r6, 0x1 - mov r9, r2 - cmp r0, 0 - beq _08080A18 - bl sub_80450F8 - cmp r0, 0x3 - bne _08080A18 - ldr r0, [r4, 0x14] - bl sub_8045108 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08080A18 - movs r0, 0xBE - lsls r0, 1 - strh r0, [r5] - movs r2, 0 - mov r4, sp -_08080980: - ldr r0, _08080998 - ldr r0, [r0] - ldr r3, _0808099C - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _080809A0 - movs r0, 0xBE - lsls r0, 1 - b _080809AE - .align 2, 0 -_08080994: .4byte 0x000104c4 -_08080998: .4byte gUnknown_203B418 -_0808099C: .4byte 0x0000066e -_080809A0: - movs r0, 0 - str r2, [sp, 0x28] - bl sub_803D970 - lsls r0, 16 - asrs r0, 16 - ldr r2, [sp, 0x28] -_080809AE: - movs r1, 0 - mov r8, r1 - movs r3, 0 - strh r0, [r4] - movs r1, 0 - ldrsh r0, [r4, r1] - movs r1, 0 - str r2, [sp, 0x28] - str r3, [sp, 0x2C] - bl sub_806AA0C - lsls r0, 24 - ldr r2, [sp, 0x28] - ldr r3, [sp, 0x2C] - cmp r0, 0 - bne _080809D4 - adds r2, 0x1 - cmp r2, 0x63 - ble _08080980 -_080809D4: - movs r2, 0 - ldrsh r0, [r5, r2] - movs r1, 0 - str r3, [sp, 0x2C] - bl sub_806AA0C - lsls r0, 24 - ldr r3, [sp, 0x2C] - cmp r0, 0 - beq _08080A10 - strh r3, [r5, 0x8] - mov r0, r8 - strb r0, [r5, 0x2] - strh r6, [r5, 0xC] - strh r7, [r5, 0xE] - str r3, [sp, 0x4] - strb r0, [r5, 0x10] - mov r0, sp - movs r1, 0x1 - bl sub_806B7F8 - cmp r0, 0 - beq _08080A10 - add r0, sp, 0xC - movs r1, 0 - bl sub_80461C8 - ldr r1, [sp, 0x20] - adds r1, 0x1 - str r1, [sp, 0x20] -_08080A10: - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_80402AC -_08080A18: - mov r6, r9 - cmp r6, r10 - ble _0808094A -_08080A1E: - ldr r7, [sp, 0x24] - ldr r2, [sp, 0x1C] - cmp r7, r2 - ble _0808093E -_08080A26: - ldr r3, [sp, 0x20] - cmp r3, 0 - beq _08080A3C - ldr r0, _08080A38 -_08080A2E: - ldr r1, [r0] - ldr r0, [sp, 0x14] - bl sub_80522A8 - b _08080A46 - .align 2, 0 -_08080A38: .4byte gUnknown_80FDACC -_08080A3C: - ldr r0, _08080A58 - ldr r1, [r0] - ldr r0, [sp, 0x14] - bl sub_80522A8 -_08080A46: - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08080A58: .4byte gUnknown_80FDAE4 - thumb_func_end sub_80808A4 - - thumb_func_start sub_8080A5C -sub_8080A5C: - push {r4-r7,lr} - sub sp, 0xC - adds r7, r0, 0 - adds r4, r1, 0 - cmp r4, 0 - beq _08080AEC - adds r0, r4, 0 - movs r1, 0x6 - movs r2, 0x8 - bl sub_806CDD4 - movs r0, 0x10 - movs r1, 0x55 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0x8 - bl sub_806CE68 - ldr r5, [r4, 0x70] - adds r2, r5, 0 - adds r2, 0x60 - ldrb r1, [r2] - movs r6, 0x1 - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08080AEC - ldr r0, [r5, 0x60] - str r0, [sp, 0x8] - movs r0, 0 - strb r0, [r2] - bl sub_80910B4 - movs r1, 0xC8 - lsls r1, 1 - adds r0, r4, 0 - bl sub_80421C0 - adds r0, r5, 0 - adds r0, 0x46 - ldrb r0, [r0] - movs r2, 0x7 - ands r2, r0 - ldr r0, _08080AF4 - lsls r2, 2 - adds r2, r0 - ldrh r0, [r2] - ldrh r1, [r4, 0x4] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - ldr r3, _08080AF8 - ldr r1, [sp, 0x4] - ands r1, r3 - orrs r1, r0 - str r1, [sp, 0x4] - ldrh r0, [r2, 0x2] - ldrh r2, [r4, 0x6] - adds r0, r2 - lsls r0, 16 - ldr r2, _08080AFC - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0x4] - adds r1, r4, 0x4 - add r3, sp, 0x8 - str r6, [sp] - adds r0, r7, 0 - add r2, sp, 0x4 - bl sub_804687C -_08080AEC: - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08080AF4: .4byte gUnknown_80F4448 -_08080AF8: .4byte 0xffff0000 -_08080AFC: .4byte 0x0000ffff - thumb_func_end sub_8080A5C - - thumb_func_start sub_8080B00 -sub_8080B00: - push {r4,r5,lr} - lsls r1, 24 - lsrs r5, r1, 24 - ldr r4, [r0, 0x14] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08080B2A - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x2 - bne _08080B26 - adds r0, r4, 0 - bl sub_8045104 - strb r5, [r0] -_08080B26: - bl sub_8049ED4 -_08080B2A: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8080B00 - - thumb_func_start sub_8080B30 -sub_8080B30: - push {lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_8082F9C - movs r0, 0 - str r0, [sp, 0xC] - add r1, sp, 0xC - mov r0, sp - movs r2, 0x4 - bl sub_8082FA8 - mov r0, sp - bl sub_8080B90 - mov r0, sp - bl sub_8081454 - mov r0, sp - bl sub_808165C - mov r0, sp - bl sub_808173C - mov r0, sp - bl sub_8080BBC - mov r0, sp - bl sub_8080C44 - mov r0, sp - bl sub_8080CF0 - ldr r1, _08080B8C - mov r0, sp - bl sub_808300C - mov r0, sp - bl nullsub_98 - add sp, 0x10 - pop {r0} - bx r0 - .align 2, 0 -_08080B8C: .4byte gUnknown_81071D4 - thumb_func_end sub_8080B30 - - thumb_func_start sub_8080B90 -sub_8080B90: - push {r4,lr} - adds r4, r0, 0 - ldr r1, _08080BB0 - bl sub_808300C - ldr r0, _08080BB4 - ldr r1, [r0] - ldr r0, _08080BB8 - adds r1, r0 - adds r0, r4, 0 - movs r2, 0x58 - bl sub_8082FA8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08080BB0: .4byte gUnknown_81071E0 -_08080BB4: .4byte gUnknown_203B418 -_08080BB8: .4byte 0x00000644 - thumb_func_end sub_8080B90 - - thumb_func_start sub_8080BBC -sub_8080BBC: - push {r4-r7,lr} - sub sp, 0x8 - adds r6, r0, 0 - ldr r1, _08080C38 - movs r2, 0 - add r0, sp, 0x4 -_08080BC8: - strb r2, [r0] - subs r0, 0x1 - cmp r0, sp - bge _08080BC8 - adds r0, r6, 0 - bl sub_808300C - movs r7, 0 -_08080BD8: - ldr r0, _08080C3C - ldr r0, [r0] - lsls r1, r7, 2 - ldr r2, _08080C40 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - movs r5, 0 - cmp r4, 0 - beq _08080C1A - adds r0, r4, 0 - bl sub_80450F8 - cmp r0, 0x3 - bne _08080C1A - adds r0, r4, 0 - bl sub_8045108 - adds r1, r0, 0 - adds r0, r6, 0 - bl sub_8081788 - adds r1, r4, 0x4 - adds r0, r6, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r4, 0x6 - adds r0, r6, 0 - movs r2, 0x1 - bl sub_8082FA8 - movs r5, 0x1 -_08080C1A: - cmp r5, 0 - bne _08080C28 - adds r0, r6, 0 - mov r1, sp - movs r2, 0x5 - bl sub_8082FA8 -_08080C28: - adds r7, 0x1 - cmp r7, 0x3F - ble _08080BD8 - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08080C38: .4byte gUnknown_81071E0 -_08080C3C: .4byte gUnknown_203B418 -_08080C40: .4byte 0x0001361c - thumb_func_end sub_8080BBC - - thumb_func_start sub_8080C44 -sub_8080C44: - push {r4-r7,lr} - sub sp, 0x8 - adds r6, r0, 0 - movs r7, 0 - ldr r3, _08080CE4 - movs r2, 0xFF -_08080C50: - mov r0, sp - adds r1, r0, r7 - ldrb r0, [r1] - orrs r0, r2 - strb r0, [r1] - adds r7, 0x1 - cmp r7, 0x4 - ble _08080C50 - adds r0, r6, 0 - adds r1, r3, 0 - bl sub_808300C - movs r7, 0 -_08080C6A: - ldr r0, _08080CE8 - ldr r0, [r0] - lsls r1, r7, 2 - ldr r2, _08080CEC - adds r0, r2 - adds r0, r1 - ldr r5, [r0] - movs r4, 0 - cmp r5, 0 - beq _08080CC8 - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x2 - bne _08080CC8 - adds r0, r5, 0 - bl sub_8045104 - adds r4, r0, 0 - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r4, 0x1 - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r5, 0 - adds r1, 0x20 - adds r0, r6, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r5, 0x4 - adds r0, r6, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r5, 0x6 - adds r0, r6, 0 - movs r2, 0x1 - bl sub_8082FA8 - movs r4, 0x1 -_08080CC8: - cmp r4, 0 - bne _08080CD6 - adds r0, r6, 0 - mov r1, sp - movs r2, 0x5 - bl sub_8082FA8 -_08080CD6: - adds r7, 0x1 - cmp r7, 0x3F - ble _08080C6A - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08080CE4: .4byte gUnknown_81071E0 -_08080CE8: .4byte gUnknown_203B418 -_08080CEC: .4byte 0x0001371c - thumb_func_end sub_8080C44 - - thumb_func_start sub_8080CF0 -sub_8080CF0: - push {r4-r6,lr} - adds r6, r0, 0 - ldr r1, _08080DD4 - bl sub_808300C - ldr r4, _08080DD8 - ldr r0, [r4] - ldr r1, _08080DDC - adds r0, r1 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_8083078 - ldr r0, [r4] - ldr r2, _08080DE0 - adds r0, r2 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_8083078 - ldr r0, [r4] - ldr r1, _08080DE4 - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r2, _08080DE8 - adds r0, r2 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _08080DEC - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r2, _08080DF0 - adds r0, r2 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _08080DF4 - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r2, _08080DF8 - adds r0, r2 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _08080DFC - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r2, _08080E00 - adds r0, r2 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_80830B4 - ldr r0, [r4] - movs r1, 0xE0 - lsls r1, 6 - adds r0, r1 - ldrh r1, [r0] - adds r0, r6, 0 - bl sub_8083030 - movs r5, 0 -_08080D9A: - ldr r0, [r4] - lsls r1, r5, 2 - ldr r2, _08080E04 - adds r0, r2 - adds r0, r1 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_8080E0C - adds r5, 0x1 - cmp r5, 0x3 - ble _08080D9A - movs r5, 0 - ldr r4, _08080DD8 -_08080DB6: - ldr r0, [r4] - lsls r1, r5, 2 - ldr r2, _08080E08 - adds r0, r2 - adds r0, r1 - ldr r1, [r0] - adds r0, r6, 0 - bl sub_8080E0C - adds r5, 0x1 - cmp r5, 0xF - ble _08080DB6 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08080DD4: .4byte gUnknown_81071E0 -_08080DD8: .4byte gUnknown_203B418 -_08080DDC: .4byte 0x000037f0 -_08080DE0: .4byte 0x000037f4 -_08080DE4: .4byte 0x000037f8 -_08080DE8: .4byte 0x000037f9 -_08080DEC: .4byte 0x000037fa -_08080DF0: .4byte 0x000037fb -_08080DF4: .4byte 0x000037fc -_08080DF8: .4byte 0x000037fd -_08080DFC: .4byte 0x000037fe -_08080E00: .4byte 0x000037ff -_08080E04: .4byte 0x0001357c -_08080E08: .4byte 0x0001358c - thumb_func_end sub_8080CF0 - - thumb_func_start sub_8080E0C -sub_8080E0C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _08080E88 - add sp, r4 - adds r5, r0, 0 - adds r4, r1, 0 - movs r1, 0 - add r0, sp, 0x20C - str r1, [r0] - movs r1, 0x1 - movs r6, 0x82 - lsls r6, 2 - mov r2, sp - adds r0, r2, r6 - str r1, [r0] - adds r0, r5, 0 - movs r1, 0xAA - bl sub_8083060 - adds r0, r5, 0 - movs r1, 0x55 - bl sub_8083060 - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08080E8C - ldr r6, [r4, 0x70] - add r1, sp, 0x208 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r4, 0x4 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r4, 0x6 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r4, 0 - adds r1, 0x20 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r4, 0 - adds r1, 0x26 - adds r0, r5, 0 - movs r2, 0x2 - bl sub_8082FA8 - b _08080ECC - .align 2, 0 -_08080E88: .4byte 0xfffffd6c -_08080E8C: - mov r0, sp - movs r1, 0 - adds r2, r6, 0 - bl memset - mov r6, sp - add r4, sp, 0x20C - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x2 - bl sub_8082FA8 -_08080ECC: - ldrh r1, [r6] - adds r0, r5, 0 - bl sub_8083030 - movs r0, 0x4 - ldrsh r1, [r6, r0] - adds r0, r5, 0 - bl sub_80817F4 - movs r2, 0x2 - ldrsh r1, [r6, r2] - adds r0, r5, 0 - bl sub_80817F4 - ldrb r1, [r6, 0x6] - adds r0, r5, 0 - bl sub_80830B4 - ldrb r1, [r6, 0x7] - adds r0, r5, 0 - bl sub_80830B4 - ldrb r1, [r6, 0x8] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r6, 0x9] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r6, 0xA] - adds r0, r5, 0 - bl sub_8083060 - adds r1, r6, 0 - adds r1, 0x40 - adds r0, r5, 0 - bl sub_80818C8 - movs r0, 0xC - ldrsh r1, [r6, r0] - adds r0, r5, 0 - bl sub_8083048 - movs r2, 0xE - ldrsh r1, [r6, r2] - adds r0, r5, 0 - bl sub_8083048 - movs r0, 0x10 - ldrsh r1, [r6, r0] - adds r0, r5, 0 - bl sub_8083048 - movs r2, 0x12 - ldrsh r1, [r6, r2] - adds r0, r5, 0 - bl sub_8083048 - ldrb r1, [r6, 0x14] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r6, 0x15] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r6, 0x16] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r6, 0x17] - adds r0, r5, 0 - bl sub_8083060 - ldr r1, [r6, 0x18] - adds r0, r5, 0 - bl sub_8083078 - movs r0, 0x1C - ldrsh r1, [r6, r0] - adds r0, r5, 0 - bl sub_8083048 - movs r2, 0x1E - ldrsh r1, [r6, r2] - adds r0, r5, 0 - bl sub_8083048 - movs r0, 0x20 - ldrsh r1, [r6, r0] - adds r0, r5, 0 - bl sub_8083048 - movs r2, 0x22 - ldrsh r1, [r6, r2] - adds r0, r5, 0 - bl sub_8083048 - movs r0, 0x24 - ldrsh r1, [r6, r0] - adds r0, r5, 0 - bl sub_8083048 - movs r2, 0x26 - ldrsh r1, [r6, r2] - adds r0, r5, 0 - bl sub_8083048 - movs r0, 0x28 - ldrsh r1, [r6, r0] - adds r0, r5, 0 - bl sub_8083048 - ldr r1, [r6, 0x2C] - adds r0, r5, 0 - bl sub_80830A0 - ldr r1, [r6, 0x30] - adds r0, r5, 0 - bl sub_80830A0 - ldr r1, [r6, 0x34] - adds r0, r5, 0 - bl sub_80830A0 - ldr r1, [r6, 0x38] - adds r0, r5, 0 - bl sub_80830A0 - adds r1, r6, 0 - adds r1, 0x44 - adds r0, r5, 0 - bl sub_80817C8 - adds r0, r6, 0 - adds r0, 0x5C - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_808180C - adds r0, r6, 0 - adds r0, 0x5D - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_808180C - adds r0, r6, 0 - adds r0, 0x5E - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8081824 - adds r0, r6, 0 - adds r0, 0x5F - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8081824 - adds r1, r6, 0 - adds r1, 0x60 - adds r0, r5, 0 - bl sub_8081788 - adds r0, r6, 0 - adds r0, 0x64 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80817B0 - movs r1, 0x78 - adds r1, r6 - mov r8, r1 - movs r2, 0x8C - adds r2, r6 - mov r9, r2 - movs r0, 0x90 - adds r0, r6 - mov r10, r0 - adds r1, r6, 0 - adds r1, 0x94 - str r1, [sp, 0x214] - adds r2, r6, 0 - adds r2, 0x3C - str r2, [sp, 0x210] - adds r0, r6, 0 - adds r0, 0x98 - str r0, [sp, 0x218] - adds r1, 0x8 - str r1, [sp, 0x21C] - adds r2, 0x64 - str r2, [sp, 0x220] - adds r0, 0x10 - str r0, [sp, 0x228] - adds r1, 0x10 - str r1, [sp, 0x22C] - adds r2, 0x10 - str r2, [sp, 0x230] - adds r0, 0x14 - str r0, [sp, 0x234] - adds r1, 0x14 - str r1, [sp, 0x238] - adds r2, 0x14 - str r2, [sp, 0x23C] - adds r0, 0xC - str r0, [sp, 0x240] - adds r1, 0x10 - str r1, [sp, 0x244] - adds r2, 0x18 - str r2, [sp, 0x248] - adds r0, 0x18 - str r0, [sp, 0x24C] - adds r1, 0x14 - str r1, [sp, 0x250] - adds r2, 0xC - str r2, [sp, 0x254] - adds r0, 0xC - str r0, [sp, 0x258] - adds r1, 0xC - str r1, [sp, 0x25C] - adds r2, 0x9 - str r2, [sp, 0x260] - adds r0, 0x6 - str r0, [sp, 0x264] - adds r1, 0x3 - str r1, [sp, 0x268] - adds r2, 0x3 - str r2, [sp, 0x26C] - adds r0, 0x9 - str r0, [sp, 0x280] - adds r1, 0x2 - str r1, [sp, 0x270] - adds r2, 0x2 - str r2, [sp, 0x274] - subs r0, 0x4 - str r0, [sp, 0x278] - adds r1, 0x5 - str r1, [sp, 0x27C] - adds r2, 0x6 - str r2, [sp, 0x284] - adds r0, 0x6 - str r0, [sp, 0x288] - adds r1, 0x4 - str r1, [sp, 0x28C] - adds r2, 0x3 - str r2, [sp, 0x290] - subs r0, 0x59 - str r0, [sp, 0x224] - adds r4, r6, 0 - adds r4, 0x68 - movs r7, 0x3 -_080810C2: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80830D8 - adds r4, 0x4 - subs r7, 0x1 - cmp r7, 0 - bge _080810C2 - adds r0, r5, 0 - mov r1, r8 - bl sub_80818E4 - adds r0, r5, 0 - mov r1, r9 - bl sub_8081B54 - adds r0, r5, 0 - mov r1, r10 - bl sub_8081B54 - ldr r2, [sp, 0x214] - ldrb r1, [r2] - adds r0, r5, 0 - bl sub_8081880 - adds r0, r5, 0 - ldr r1, [sp, 0x210] - bl sub_8081898 - ldr r0, [sp, 0x218] - ldr r1, [r0] - adds r0, r5, 0 - bl sub_8083078 - ldr r2, [sp, 0x21C] - ldr r1, [r2] - adds r0, r5, 0 - bl sub_8083078 - ldr r0, [sp, 0x220] - ldr r1, [r0] - adds r0, r5, 0 - bl sub_8083078 - adds r0, r5, 0 - ldr r1, [sp, 0x228] - bl sub_8081920 - adds r0, r5, 0 - ldr r1, [sp, 0x22C] - bl sub_808193C - adds r0, r5, 0 - ldr r1, [sp, 0x230] - bl sub_8081968 - adds r0, r5, 0 - ldr r1, [sp, 0x234] - bl sub_8081994 - adds r0, r5, 0 - ldr r1, [sp, 0x238] - bl sub_80819B0 - adds r0, r5, 0 - ldr r1, [sp, 0x23C] - bl sub_80819D4 - adds r0, r5, 0 - ldr r1, [sp, 0x240] - bl sub_80819F0 - adds r0, r5, 0 - ldr r1, [sp, 0x244] - bl sub_8081A24 - adds r0, r5, 0 - ldr r1, [sp, 0x248] - bl sub_8081A58 - adds r0, r5, 0 - ldr r1, [sp, 0x24C] - bl sub_8081A74 - adds r0, r5, 0 - ldr r1, [sp, 0x250] - bl sub_8081A80 - adds r0, r5, 0 - ldr r1, [sp, 0x254] - bl sub_8081A9C - adds r0, r5, 0 - ldr r1, [sp, 0x258] - bl sub_8081AB8 - ldr r2, [sp, 0x25C] - ldrb r1, [r2] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [sp, 0x260] - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r2, [sp, 0x264] - ldrb r1, [r2] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [sp, 0x268] - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r2, [sp, 0x26C] - ldrb r1, [r2] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [sp, 0x280] - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - ldr r2, [sp, 0x270] - ldrb r1, [r2] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [sp, 0x274] - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r2, [sp, 0x278] - ldrb r1, [r2] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [sp, 0x27C] - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - ldr r2, [sp, 0x284] - ldrb r1, [r2] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [sp, 0x288] - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - ldr r2, [sp, 0x28C] - ldrb r1, [r2] - adds r0, r5, 0 - bl sub_8083060 - ldr r0, [sp, 0x290] - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_808183C - movs r1, 0x80 - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8081854 - movs r2, 0x82 - lsls r2, 1 - adds r0, r6, r2 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_808186C - movs r0, 0x84 - lsls r0, 1 - adds r1, r6, r0 - adds r0, r5, 0 - movs r2, 0x5 - bl sub_808314C - ldr r2, _08081428 - adds r1, r6, r2 - adds r0, r5, 0 - movs r2, 0x5 - bl sub_808314C - movs r1, 0x89 - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - ldr r2, _0808142C - adds r0, r6, r2 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - movs r1, 0x8A - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - movs r2, 0x8C - lsls r2, 1 - adds r1, r6, r2 - adds r0, r5, 0 - bl sub_8081B08 - movs r0, 0x9E - lsls r0, 1 - adds r1, r6, r0 - adds r0, r5, 0 - bl sub_8081B34 - movs r2, 0xA0 - lsls r2, 1 - adds r1, r6, r2 - adds r0, r5, 0 - bl sub_8081B34 - movs r1, 0xA2 - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r2, _08081430 - adds r0, r6, r2 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r1, _08081434 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - movs r2, 0xA3 - lsls r2, 1 - adds r0, r6, r2 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - movs r1, 0xA4 - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r2, _08081438 - adds r0, r6, r2 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - movs r1, 0xA5 - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r2, _0808143C - adds r0, r6, r2 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - movs r1, 0xA6 - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - movs r2, 0xA7 - lsls r2, 1 - adds r0, r6, r2 - ldrh r1, [r0] - adds r0, r5, 0 - bl sub_8083030 - movs r1, 0xA8 - lsls r1, 1 - adds r0, r6, r1 - ldrh r1, [r0] - adds r0, r5, 0 - bl sub_8083030 - movs r2, 0xA9 - lsls r2, 1 - adds r0, r6, r2 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r1, _08081440 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - movs r2, 0xAA - lsls r2, 1 - adds r0, r6, r2 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r1, _08081444 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - movs r2, 0xAB - lsls r2, 1 - adds r0, r6, r2 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - movs r1, 0xB2 - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - ldr r2, _08081448 - adds r0, r6, r2 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - movs r1, 0xB3 - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - ldr r2, _0808144C - adds r0, r6, r2 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - movs r1, 0xB4 - lsls r1, 1 - adds r0, r6, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - ldr r2, _08081450 - adds r0, r6, r2 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - movs r0, 0xB6 - lsls r0, 1 - adds r1, r6, r0 - adds r0, r5, 0 - bl sub_80830D8 - movs r1, 0xBA - lsls r1, 1 - adds r0, r6, r1 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_80830A0 - movs r2, 0xBC - lsls r2, 1 - adds r0, r6, r2 - ldrh r1, [r0] - adds r0, r5, 0 - bl sub_8083030 - movs r1, 0xFC - lsls r1, 1 - adds r0, r6, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r5, 0 - bl sub_8083048 - movs r1, 0xFD - lsls r1, 1 - adds r0, r6, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r5, 0 - bl sub_8083048 - movs r1, 0xFE - lsls r1, 1 - adds r0, r6, r1 - ldr r1, [r0] - adds r0, r5, 0 - bl sub_8083078 - ldr r2, [sp, 0x224] - ldrb r1, [r2] - adds r0, r5, 0 - bl sub_80818B8 - movs r3, 0xA5 - lsls r3, 2 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08081428: .4byte 0x0000010d -_0808142C: .4byte 0x00000113 -_08081430: .4byte 0x00000145 -_08081434: .4byte 0x00000147 -_08081438: .4byte 0x00000149 -_0808143C: .4byte 0x0000014b -_08081440: .4byte 0x00000153 -_08081444: .4byte 0x00000155 -_08081448: .4byte 0x00000165 -_0808144C: .4byte 0x00000167 -_08081450: .4byte 0x00000169 - thumb_func_end sub_8080E0C - - thumb_func_start sub_8081454 -sub_8081454: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r7, r0, 0 - ldr r1, _08081600 - bl sub_808300C - ldr r4, _08081604 - ldr r0, [r4] - ldr r1, _08081608 - adds r0, r1 - ldrb r1, [r0] - adds r0, r7, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r2, _0808160C - adds r0, r2 - ldrb r1, [r0] - adds r0, r7, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _08081610 - adds r0, r1 - ldrb r1, [r0] - adds r0, r7, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r2, _08081614 - adds r0, r2 - ldrb r1, [r0] - adds r0, r7, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _08081618 - adds r0, r1 - ldrb r1, [r0] - adds r0, r7, 0 - bl sub_8083060 - ldr r0, [r4] - ldr r2, _0808161C - adds r0, r2 - ldrb r1, [r0] - adds r0, r7, 0 - bl sub_8083060 - ldr r0, [r4] - ldr r1, _08081620 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r7, 0 - bl sub_8083048 - ldr r0, [r4] - ldr r1, _08081624 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r7, 0 - bl sub_8083048 - ldr r0, [r4] - ldr r1, _08081628 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r7, 0 - bl sub_8083048 - ldr r0, [r4] - ldr r1, _0808162C - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r7, 0 - bl sub_8083048 - ldr r0, [r4] - ldr r1, _08081630 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r7, 0 - bl sub_8083048 - movs r1, 0 - mov r9, r4 -_08081510: - lsls r0, r1, 2 - adds r2, r1, 0x1 - mov r8, r2 - adds r0, r1 - lsls r0, 2 - adds r0, r1 - lsls r0, 6 - ldr r1, _08081634 - adds r6, r0, r1 - movs r5, 0 - movs r4, 0x37 -_08081526: - mov r2, r9 - ldr r1, [r2] - adds r1, r6 - adds r1, r5 - adds r0, r7, 0 - bl sub_8081B60 - adds r5, 0x18 - subs r4, 0x1 - cmp r4, 0 - bge _08081526 - mov r1, r8 - cmp r1, 0x1F - ble _08081510 - ldr r4, _08081604 - ldr r1, [r4] - ldr r0, _08081638 - adds r1, r0 - adds r0, r7, 0 - bl sub_80830D8 - ldr r1, [r4] - ldr r2, _0808163C - adds r1, r2 - adds r0, r7, 0 - bl sub_80830D8 - ldr r6, _08081640 - movs r5, 0x7 -_08081560: - ldr r1, [r4] - adds r1, r6 - adds r0, r7, 0 - bl sub_80830D8 - adds r6, 0x4 - subs r5, 0x1 - cmp r5, 0 - bge _08081560 - ldr r4, _08081604 - ldr r1, [r4] - ldr r0, _08081644 - adds r1, r0 - adds r0, r7, 0 - bl sub_80830F8 - ldr r1, [r4] - ldr r2, _08081648 - adds r1, r2 - adds r0, r7, 0 - bl sub_80830F8 - ldr r1, [r4] - ldr r0, _0808164C - adds r1, r0 - adds r0, r7, 0 - bl sub_808312C - movs r1, 0 - mov r10, r4 -_0808159C: - movs r4, 0 - adds r2, r1, 0x1 - mov r8, r2 - lsls r0, r1, 1 - lsls r2, r1, 3 - mov r9, r2 - adds r0, r1 - lsls r0, 6 - ldr r1, _08081650 - adds r6, r0, r1 - movs r5, 0 -_080815B2: - mov r2, r10 - ldr r1, [r2] - adds r1, r6 - adds r1, r5 - adds r0, r7, 0 - bl sub_8081B60 - mov r1, r10 - ldr r0, [r1] - mov r2, r9 - adds r1, r4, r2 - ldr r2, _08081654 - adds r0, r2 - adds r0, r1 - ldrb r1, [r0] - adds r0, r7, 0 - bl sub_8083060 - adds r5, 0x18 - adds r4, 0x1 - cmp r4, 0x7 - ble _080815B2 - mov r1, r8 - cmp r1, 0x7 - ble _0808159C - ldr r0, _08081604 - ldr r1, [r0] - ldr r0, _08081658 - adds r1, r0 - adds r0, r7, 0 - bl sub_8081B94 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08081600: .4byte gUnknown_81071E0 -_08081604: .4byte gUnknown_203B418 -_08081608: .4byte 0x00003a08 -_0808160C: .4byte 0x00003a09 -_08081610: .4byte 0x00003a0a -_08081614: .4byte 0x00003a0b -_08081618: .4byte 0x00003a0c -_0808161C: .4byte 0x00003a0d -_08081620: .4byte 0x00003a0e -_08081624: .4byte 0x00003a10 -_08081628: .4byte 0x00003a12 -_0808162C: .4byte 0x00003a14 -_08081630: .4byte 0x00003a16 -_08081634: .4byte 0x00003a18 -_08081638: .4byte 0x0000e218 -_0808163C: .4byte 0x0000e21c -_08081640: .4byte 0x0000e220 -_08081644: .4byte 0x0000e240 -_08081648: .4byte 0x0000e250 -_0808164C: .4byte 0x0000e260 -_08081650: .4byte 0x0000e27c -_08081654: .4byte 0x0000e87c -_08081658: .4byte 0x0000e264 - thumb_func_end sub_8081454 - - thumb_func_start sub_808165C -sub_808165C: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r1, _08081708 - bl sub_808300C - ldr r4, _0808170C - ldr r0, [r4] - ldr r1, _08081710 - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - ldr r0, [r4] - ldr r1, _08081714 - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8083060 - ldr r0, [r4] - ldr r1, _08081718 - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _0808171C - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _08081720 - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _08081724 - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _08081728 - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _0808172C - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _08081730 - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _08081734 - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - ldr r0, [r4] - ldr r1, _08081738 - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_80830B4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08081708: .4byte gUnknown_81071E0 -_0808170C: .4byte gUnknown_203B418 -_08081710: .4byte 0x00018208 -_08081714: .4byte 0x00018209 -_08081718: .4byte 0x0001820a -_0808171C: .4byte 0x0001820b -_08081720: .4byte 0x0001820c -_08081724: .4byte 0x0001820d -_08081728: .4byte 0x0001820e -_0808172C: .4byte 0x0001820f -_08081730: .4byte 0x00018210 -_08081734: .4byte 0x00018211 -_08081738: .4byte 0x00018213 - thumb_func_end sub_808165C - - thumb_func_start sub_808173C -sub_808173C: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _08081778 - ldr r0, [r4] - ldr r1, _0808177C - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r5, 0 - bl sub_8083048 - ldr r0, [r4] - ldr r1, _08081780 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r5, 0 - bl sub_8083048 - ldr r0, [r4] - ldr r1, _08081784 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r5, 0 - bl sub_8083048 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08081778: .4byte gUnknown_203B418 -_0808177C: .4byte 0x0001ced6 -_08081780: .4byte 0x0001ced8 -_08081784: .4byte 0x0001ceda - thumb_func_end sub_808173C - - thumb_func_start sub_8081788 -sub_8081788: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r5, 0x1 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r5, 0x2 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_8082FA8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081788 - - thumb_func_start sub_80817B0 -sub_80817B0: - push {lr} - sub sp, 0x4 - mov r2, sp - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80817B0 - - thumb_func_start sub_80817C8 -sub_80817C8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r1, r4, 0x2 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r4, 0 - adds r1, 0x14 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r4, 0x16 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80817C8 - - thumb_func_start sub_80817F4 -sub_80817F4: - push {lr} - sub sp, 0x4 - mov r2, sp - strh r1, [r2] - mov r1, sp - movs r2, 0x2 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80817F4 - - thumb_func_start sub_808180C -sub_808180C: - push {lr} - sub sp, 0x4 - mov r2, sp - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_808180C - - thumb_func_start sub_8081824 -sub_8081824: - push {lr} - sub sp, 0x4 - mov r2, sp - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8081824 - - thumb_func_start sub_808183C -sub_808183C: - push {lr} - sub sp, 0x4 - mov r2, sp - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_808183C - - thumb_func_start sub_8081854 -sub_8081854: - push {lr} - sub sp, 0x4 - mov r2, sp - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8081854 - - thumb_func_start sub_808186C -sub_808186C: - push {lr} - sub sp, 0x4 - str r1, [sp] - mov r1, sp - movs r2, 0x4 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_808186C - - thumb_func_start sub_8081880 -sub_8081880: - push {lr} - sub sp, 0x4 - mov r2, sp - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8081880 - - thumb_func_start sub_8081898 -sub_8081898: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r0, 0 - ldrsh r1, [r4, r0] - adds r0, r5, 0 - bl sub_8083048 - ldrb r1, [r4, 0x2] - adds r0, r5, 0 - bl sub_808180C - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081898 - - thumb_func_start sub_80818B8 -sub_80818B8: - push {lr} - lsls r1, 24 - lsrs r1, 24 - bl sub_8083060 - pop {r0} - bx r0 - thumb_func_end sub_80818B8 - - thumb_func_start sub_80818C8 -sub_80818C8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldrb r1, [r4] - bl sub_8083060 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80818C8 - - thumb_func_start sub_80818E4 -sub_80818E4: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_80830B4 - ldrb r1, [r4, 0x2] - adds r0, r5, 0 - bl sub_80830B4 - ldrb r1, [r4, 0x3] - adds r0, r5, 0 - bl sub_80830B4 - ldrh r1, [r4, 0x4] - adds r0, r5, 0 - bl sub_8083030 - adds r4, 0x10 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80830D8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80818E4 - - thumb_func_start sub_8081920 -sub_8081920: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081920 - - thumb_func_start sub_808193C -sub_808193C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r4, 0x2] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r4, 0x3] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808193C - - thumb_func_start sub_8081968 -sub_8081968: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x8] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r4, 0x9] - adds r0, r5, 0 - bl sub_8083060 - ldr r1, [r4, 0x4] - adds r0, r5, 0 - bl sub_8083078 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081968 - - thumb_func_start sub_8081994 -sub_8081994: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081994 - - thumb_func_start sub_80819B0 -sub_80819B0: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r4, 0x2] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80819B0 - - thumb_func_start sub_80819D4 -sub_80819D4: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80819D4 - - thumb_func_start sub_80819F0 -sub_80819F0: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_80830B4 - ldrb r1, [r4, 0x2] - adds r0, r5, 0 - bl sub_80830B4 - ldrb r1, [r4, 0x3] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r4, 0x4] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80819F0 - - thumb_func_start sub_8081A24 -sub_8081A24: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldr r1, [r4, 0x4] - adds r0, r5, 0 - bl sub_8083078 - ldrb r1, [r4, 0x8] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r4, 0x9] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r4, 0xA] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081A24 - - thumb_func_start sub_8081A58 -sub_8081A58: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081A58 - - thumb_func_start sub_8081A74 -sub_8081A74: - push {lr} - movs r2, 0x1 - bl sub_8082FA8 - pop {r0} - bx r0 - thumb_func_end sub_8081A74 - - thumb_func_start sub_8081A80 -sub_8081A80: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081A80 - - thumb_func_start sub_8081A9C -sub_8081A9C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081A9C - - thumb_func_start sub_8081AB8 -sub_8081AB8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081AB8 - - thumb_func_start sub_8081AD4 -sub_8081AD4: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldrb r1, [r4] - bl sub_8083060 - ldrb r1, [r4, 0x1] - adds r0, r5, 0 - bl sub_8083060 - adds r1, r4, 0x2 - adds r0, r5, 0 - movs r2, 0x2 - bl sub_8082FA8 - ldrb r1, [r4, 0x4] - adds r0, r5, 0 - bl sub_8083060 - ldrb r1, [r4, 0x5] - adds r0, r5, 0 - bl sub_8083060 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081AD4 - - thumb_func_start sub_8081B08 -sub_8081B08: - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - adds r4, r7, 0 - movs r5, 0x3 -_08081B12: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8081AD4 - adds r4, 0x8 - subs r5, 0x1 - cmp r5, 0 - bge _08081B12 - adds r0, r7, 0 - adds r0, 0x20 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_8083060 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8081B08 - - thumb_func_start sub_8081B34 -sub_8081B34: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r0, 0 - ldrsh r1, [r4, r0] - adds r0, r5, 0 - bl sub_8083048 - movs r0, 0x2 - ldrsh r1, [r4, r0] - adds r0, r5, 0 - bl sub_8083048 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081B34 - - thumb_func_start sub_8081B54 -sub_8081B54: - push {lr} - movs r2, 0x3 - bl sub_8082FA8 - pop {r0} - bx r0 - thumb_func_end sub_8081B54 - - thumb_func_start sub_8081B60 -sub_8081B60: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldrh r1, [r4] - bl sub_8083030 - ldrh r1, [r4, 0x4] - adds r0, r5, 0 - bl sub_8083030 - adds r1, r4, 0 - adds r1, 0x9 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r4, 0xE - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8081B60 - - thumb_func_start sub_8081B94 -sub_8081B94: - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r5, 0x1 - adds r0, r6, 0 - movs r2, 0x1 - bl sub_8082FA8 - movs r4, 0 -_08081BAC: - adds r0, r5, 0x3 - adds r0, r4 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_8083060 - adds r0, r5, 0 - adds r0, 0xB - adds r0, r4 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_8083060 - adds r4, 0x1 - cmp r4, 0x7 - ble _08081BAC - ldrb r1, [r5, 0x2] - adds r0, r6, 0 - bl sub_8083060 - ldrb r1, [r5, 0x13] - adds r0, r6, 0 - bl sub_8083060 - ldrb r1, [r5, 0x14] - adds r0, r6, 0 - bl sub_8083060 - ldrb r1, [r5, 0x15] - adds r0, r6, 0 - bl sub_80830B4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8081B94 - - thumb_func_start sub_8081BF4 -sub_8081BF4: - push {lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_8082FD4 - add r1, sp, 0xC - mov r0, sp - movs r2, 0x4 - bl sub_8082FE0 - mov r0, sp - bl sub_8081C50 - mov r0, sp - bl sub_8081C7C - mov r0, sp - bl sub_8081F2C - mov r0, sp - bl sub_808201C - mov r0, sp - bl sub_8082060 - mov r0, sp - bl sub_80820D8 - mov r0, sp - bl sub_808217C - ldr r1, _08081C4C - mov r0, sp - bl sub_8083018 - mov r0, sp - bl nullsub_98 - add sp, 0x10 - pop {r0} - bx r0 - .align 2, 0 -_08081C4C: .4byte gUnknown_81071D4 - thumb_func_end sub_8081BF4 - - thumb_func_start sub_8081C50 -sub_8081C50: - push {r4,lr} - adds r4, r0, 0 - ldr r1, _08081C70 - bl sub_8083018 - ldr r0, _08081C74 - ldr r1, [r0] - ldr r0, _08081C78 - adds r1, r0 - adds r0, r4, 0 - movs r2, 0x58 - bl sub_8082FE0 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08081C70: .4byte gUnknown_81071E0 -_08081C74: .4byte gUnknown_203B418 -_08081C78: .4byte 0x00000644 - thumb_func_end sub_8081C50 - - thumb_func_start sub_8081C7C -sub_8081C7C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r7, r0, 0 - ldr r1, _08081E20 - bl sub_8083018 - adds r0, r7, 0 - bl sub_80831DC - ldr r4, _08081E24 - ldr r1, [r4] - ldr r2, _08081E28 - adds r1, r2 - strb r0, [r1] - adds r0, r7, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r3, _08081E2C - adds r1, r3 - strb r0, [r1] - adds r0, r7, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08081E30 - adds r1, r2 - strb r0, [r1] - adds r0, r7, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r3, _08081E34 - adds r1, r3 - strb r0, [r1] - adds r0, r7, 0 - bl sub_8083188 - ldr r1, [r4] - ldr r2, _08081E38 - adds r1, r2 - strb r0, [r1] - adds r0, r7, 0 - bl sub_8083188 - ldr r1, [r4] - ldr r3, _08081E3C - adds r1, r3 - strb r0, [r1] - adds r0, r7, 0 - bl sub_8083170 - ldr r1, [r4] - ldr r2, _08081E40 - adds r1, r2 - strh r0, [r1] - adds r0, r7, 0 - bl sub_8083170 - ldr r1, [r4] - ldr r3, _08081E44 - adds r1, r3 - strh r0, [r1] - adds r0, r7, 0 - bl sub_8083170 - ldr r1, [r4] - ldr r2, _08081E48 - adds r1, r2 - strh r0, [r1] - adds r0, r7, 0 - bl sub_8083170 - ldr r1, [r4] - ldr r3, _08081E4C - adds r1, r3 - strh r0, [r1] - adds r0, r7, 0 - bl sub_8083170 - ldr r1, [r4] - ldr r2, _08081E50 - adds r1, r2 - strh r0, [r1] - movs r1, 0 - mov r9, r4 -_08081D2E: - lsls r0, r1, 2 - adds r3, r1, 0x1 - mov r8, r3 - adds r0, r1 - lsls r0, 2 - adds r0, r1 - lsls r0, 6 - ldr r1, _08081E54 - adds r6, r0, r1 - movs r5, 0 - movs r4, 0x37 -_08081D44: - mov r2, r9 - ldr r1, [r2] - adds r1, r6 - adds r1, r5 - adds r0, r7, 0 - bl sub_8081E7C - adds r5, 0x18 - subs r4, 0x1 - cmp r4, 0 - bge _08081D44 - mov r1, r8 - cmp r1, 0x1F - ble _08081D2E - ldr r4, _08081E24 - ldr r1, [r4] - ldr r3, _08081E58 - adds r1, r3 - adds r0, r7, 0 - bl sub_80831F8 - ldr r1, [r4] - ldr r0, _08081E5C - adds r1, r0 - adds r0, r7, 0 - bl sub_80831F8 - ldr r6, _08081E60 - movs r5, 0x7 -_08081D7E: - ldr r1, [r4] - adds r1, r6 - adds r0, r7, 0 - bl sub_80831F8 - adds r6, 0x4 - subs r5, 0x1 - cmp r5, 0 - bge _08081D7E - ldr r4, _08081E24 - ldr r1, [r4] - ldr r2, _08081E64 - adds r1, r2 - adds r0, r7, 0 - bl sub_8083220 - ldr r1, [r4] - ldr r3, _08081E68 - adds r1, r3 - adds r0, r7, 0 - bl sub_8083220 - ldr r1, [r4] - ldr r0, _08081E6C - adds r1, r0 - adds r0, r7, 0 - bl sub_8083260 - movs r1, 0 - mov r10, r4 -_08081DBA: - movs r4, 0 - adds r2, r1, 0x1 - mov r8, r2 - lsls r0, r1, 1 - lsls r3, r1, 3 - mov r9, r3 - adds r0, r1 - lsls r0, 6 - ldr r1, _08081E70 - adds r6, r0, r1 - movs r5, 0 -_08081DD0: - mov r2, r10 - ldr r1, [r2] - adds r1, r6 - adds r1, r5 - adds r0, r7, 0 - bl sub_8081E7C - adds r0, r7, 0 - bl sub_8083188 - mov r3, r10 - ldr r1, [r3] - mov r3, r9 - adds r2, r4, r3 - ldr r3, _08081E74 - adds r1, r3 - adds r1, r2 - strb r0, [r1] - adds r5, 0x18 - adds r4, 0x1 - cmp r4, 0x7 - ble _08081DD0 - mov r1, r8 - cmp r1, 0x7 - ble _08081DBA - ldr r0, _08081E24 - ldr r1, [r0] - ldr r0, _08081E78 - adds r1, r0 - adds r0, r7, 0 - bl sub_8081EC0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08081E20: .4byte gUnknown_81071E0 -_08081E24: .4byte gUnknown_203B418 -_08081E28: .4byte 0x00003a08 -_08081E2C: .4byte 0x00003a09 -_08081E30: .4byte 0x00003a0a -_08081E34: .4byte 0x00003a0b -_08081E38: .4byte 0x00003a0c -_08081E3C: .4byte 0x00003a0d -_08081E40: .4byte 0x00003a0e -_08081E44: .4byte 0x00003a10 -_08081E48: .4byte 0x00003a12 -_08081E4C: .4byte 0x00003a14 -_08081E50: .4byte 0x00003a16 -_08081E54: .4byte 0x00003a18 -_08081E58: .4byte 0x0000e218 -_08081E5C: .4byte 0x0000e21c -_08081E60: .4byte 0x0000e220 -_08081E64: .4byte 0x0000e240 -_08081E68: .4byte 0x0000e250 -_08081E6C: .4byte 0x0000e260 -_08081E70: .4byte 0x0000e27c -_08081E74: .4byte 0x0000e87c -_08081E78: .4byte 0x0000e264 - thumb_func_end sub_8081C7C - - thumb_func_start sub_8081E7C -sub_8081E7C: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x18 - bl memset - adds r0, r5, 0 - bl sub_8083158 - movs r6, 0 - strh r0, [r4] - adds r0, r5, 0 - bl sub_8083158 - strh r0, [r4, 0x4] - adds r1, r4, 0 - adds r1, 0x9 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r1, r4, 0 - adds r1, 0xE - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FE0 - str r6, [r4, 0x10] - str r6, [r4, 0x14] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8081E7C - - thumb_func_start sub_8081EC0 -sub_8081EC0: - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x18 - bl memset - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r1, r5, 0x1 - adds r0, r6, 0 - movs r2, 0x1 - bl sub_8082FE0 - movs r4, 0 -_08081EE6: - adds r0, r6, 0 - bl sub_8083188 - adds r1, r5, 0x3 - adds r1, r4 - strb r0, [r1] - adds r0, r6, 0 - bl sub_8083188 - adds r1, r5, 0 - adds r1, 0xB - adds r1, r4 - strb r0, [r1] - adds r4, 0x1 - cmp r4, 0x7 - ble _08081EE6 - adds r0, r6, 0 - bl sub_8083188 - strb r0, [r5, 0x2] - adds r0, r6, 0 - bl sub_8083188 - strb r0, [r5, 0x13] - adds r0, r6, 0 - bl sub_8083188 - strb r0, [r5, 0x14] - adds r0, r6, 0 - bl sub_80831DC - strb r0, [r5, 0x15] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8081EC0 - - thumb_func_start sub_8081F2C -sub_8081F2C: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r1, _08081FE4 - bl sub_8083018 - ldr r4, _08081FE8 - ldr r0, [r4] - ldr r1, _08081FEC - adds r0, r1 - movs r1, 0 - str r1, [r0] - adds r0, r5, 0 - bl sub_8083188 - ldr r1, [r4] - ldr r2, _08081FF0 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083188 - ldr r1, [r4] - ldr r2, _08081FF4 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08081FF8 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08081FFC - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082000 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082004 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082008 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _0808200C - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082010 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082014 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082018 - adds r1, r2 - strb r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08081FE4: .4byte gUnknown_81071E0 -_08081FE8: .4byte gUnknown_203B418 -_08081FEC: .4byte 0x000181f8 -_08081FF0: .4byte 0x00018208 -_08081FF4: .4byte 0x00018209 -_08081FF8: .4byte 0x0001820a -_08081FFC: .4byte 0x0001820b -_08082000: .4byte 0x0001820c -_08082004: .4byte 0x0001820d -_08082008: .4byte 0x0001820e -_0808200C: .4byte 0x0001820f -_08082010: .4byte 0x00018210 -_08082014: .4byte 0x00018211 -_08082018: .4byte 0x00018213 - thumb_func_end sub_8081F2C - - thumb_func_start sub_808201C -sub_808201C: - push {r4,r5,lr} - adds r5, r0, 0 - bl sub_8083170 - ldr r4, _08082050 - ldr r1, [r4] - ldr r2, _08082054 - adds r1, r2 - strh r0, [r1] - adds r0, r5, 0 - bl sub_8083170 - ldr r1, [r4] - ldr r2, _08082058 - adds r1, r2 - strh r0, [r1] - adds r0, r5, 0 - bl sub_8083170 - ldr r1, [r4] - ldr r2, _0808205C - adds r1, r2 - strh r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08082050: .4byte gUnknown_203B418 -_08082054: .4byte 0x0001ced6 -_08082058: .4byte 0x0001ced8 -_0808205C: .4byte 0x0001ceda - thumb_func_end sub_808201C - - thumb_func_start sub_8082060 -sub_8082060: - push {r4-r7,lr} - sub sp, 0x8 - adds r5, r0, 0 - ldr r1, _080820A4 - bl sub_8083018 - add r4, sp, 0x4 - mov r7, sp - movs r6, 0x3F -_08082072: - adds r0, r5, 0 - mov r1, sp - bl sub_80820A8 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80831F8 - ldrb r1, [r7] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08082096 - adds r0, r4, 0 - mov r1, sp - movs r2, 0 - bl sub_80460F8 -_08082096: - subs r6, 0x1 - cmp r6, 0 - bge _08082072 - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080820A4: .4byte gUnknown_81071E0 - thumb_func_end sub_8082060 - - thumb_func_start sub_80820A8 -sub_80820A8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r0, 0 - str r0, [r4] - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r1, r4, 0x1 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r4, 0x2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FE0 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80820A8 - - thumb_func_start sub_80820D8 -sub_80820D8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r5, r0, 0 - ldr r1, _08082178 - bl sub_8083018 - movs r0, 0x1 - add r0, sp - mov r9, r0 - add r1, sp, 0x4 - mov r8, r1 - mov r7, sp - movs r2, 0x3F - mov r10, r2 -_080820FC: - movs r0, 0x6 - strb r0, [r7] - movs r0, 0 - mov r3, sp - strb r0, [r3, 0x1] - adds r0, r5, 0 - mov r1, sp - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r5, 0 - mov r1, sp - adds r1, 0x1 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r5, 0 - bl sub_80831DC - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r5, 0 - add r1, sp, 0x4 - bl sub_80831F8 - ldrb r0, [r7] - cmp r0, 0xFF - beq _0808215C - mov r1, r8 - movs r2, 0 - ldrsh r0, [r1, r2] - mov r3, sp - movs r2, 0x6 - ldrsh r1, [r3, r2] - bl sub_8049590 - adds r4, r0, 0 - ldrb r0, [r7] - mov r3, r9 - ldrb r2, [r3] - mov r1, r8 - bl sub_8045684 - cmp r0, 0 - beq _0808215C - str r0, [r4, 0x14] - adds r0, 0x20 - strb r6, [r0] -_0808215C: - movs r0, 0x1 - negs r0, r0 - add r10, r0 - mov r1, r10 - cmp r1, 0 - bge _080820FC - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08082178: .4byte gUnknown_81071E0 - thumb_func_end sub_80820D8 - - thumb_func_start sub_808217C -sub_808217C: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r1, _08082250 - bl sub_8083018 - adds r0, r5, 0 - bl sub_80831A0 - ldr r4, _08082254 - ldr r1, [r4] - ldr r2, _08082258 - adds r1, r2 - str r0, [r1] - adds r0, r5, 0 - bl sub_80831A0 - ldr r1, [r4] - ldr r2, _0808225C - adds r1, r2 - str r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082260 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082264 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082268 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _0808226C - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082270 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082274 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _08082278 - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [r4] - ldr r2, _0808227C - adds r1, r2 - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083158 - ldr r1, [r4] - movs r2, 0xE0 - lsls r2, 6 - adds r1, r2 - strh r0, [r1] - movs r4, 0 -_08082226: - adds r0, r5, 0 - movs r1, 0x1 - adds r2, r4, 0 - bl sub_8082280 - adds r4, 0x1 - cmp r4, 0x3 - ble _08082226 - movs r4, 0 -_08082238: - adds r0, r5, 0 - movs r1, 0 - adds r2, r4, 0 - bl sub_8082280 - adds r4, 0x1 - cmp r4, 0xF - ble _08082238 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08082250: .4byte gUnknown_81071E0 -_08082254: .4byte gUnknown_203B418 -_08082258: .4byte 0x000037f0 -_0808225C: .4byte 0x000037f4 -_08082260: .4byte 0x000037f8 -_08082264: .4byte 0x000037f9 -_08082268: .4byte 0x000037fa -_0808226C: .4byte 0x000037fb -_08082270: .4byte 0x000037fc -_08082274: .4byte 0x000037fd -_08082278: .4byte 0x000037fe -_0808227C: .4byte 0x000037ff - thumb_func_end sub_808217C - - thumb_func_start sub_8082280 -sub_8082280: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _0808266C - add sp, r4 - adds r5, r0, 0 - str r2, [sp, 0x210] - lsls r1, 24 - lsrs r1, 24 - str r1, [sp, 0x20C] - movs r2, 0x82 - lsls r2, 2 - mov r0, sp - movs r1, 0 - bl memset - adds r0, r5, 0 - bl sub_8083188 - adds r0, r5, 0 - bl sub_8083188 - adds r0, r5, 0 - bl sub_8083188 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x214] - add r4, sp, 0x208 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80831F8 - adds r0, r5, 0 - bl sub_80831DC - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x218] - adds r0, r5, 0 - bl sub_8083158 - lsls r0, 16 - lsrs r0, 16 - str r0, [sp, 0x21C] - ldr r1, _08082670 - movs r0, 0 - str r0, [r1] - adds r0, r5, 0 - bl sub_8083158 - mov r1, sp - strh r0, [r1] - adds r0, r5, 0 - bl sub_8082BC0 - mov r1, sp - strh r0, [r1, 0x4] - adds r0, r5, 0 - bl sub_8082BC0 - mov r1, sp - strh r0, [r1, 0x2] - adds r0, r5, 0 - bl sub_80831DC - mov r1, sp - strb r0, [r1, 0x6] - adds r0, r5, 0 - bl sub_80831DC - mov r1, sp - strb r0, [r1, 0x7] - adds r0, r5, 0 - bl sub_8083188 - mov r1, sp - strb r0, [r1, 0x8] - adds r0, r5, 0 - bl sub_8083188 - mov r1, sp - strb r0, [r1, 0x9] - adds r0, r5, 0 - bl sub_8083188 - mov r1, sp - strb r0, [r1, 0xA] - add r1, sp, 0x40 - adds r0, r5, 0 - bl sub_8082F64 - adds r0, r5, 0 - bl sub_8083170 - mov r1, sp - strh r0, [r1, 0xC] - adds r0, r5, 0 - bl sub_8083170 - mov r1, sp - strh r0, [r1, 0xE] - adds r0, r5, 0 - bl sub_8083170 - mov r1, sp - strh r0, [r1, 0x10] - adds r0, r5, 0 - bl sub_8083170 - mov r1, sp - strh r0, [r1, 0x12] - adds r0, r5, 0 - bl sub_8083188 - mov r1, sp - strb r0, [r1, 0x14] - adds r0, r5, 0 - bl sub_8083188 - mov r1, sp - strb r0, [r1, 0x15] - adds r0, r5, 0 - bl sub_8083188 - mov r1, sp - strb r0, [r1, 0x16] - adds r0, r5, 0 - bl sub_8083188 - mov r1, sp - strb r0, [r1, 0x17] - adds r0, r5, 0 - bl sub_80831A0 - str r0, [sp, 0x18] - adds r0, r5, 0 - bl sub_8083170 - mov r1, sp - strh r0, [r1, 0x1C] - adds r0, r5, 0 - bl sub_8083170 - mov r1, sp - strh r0, [r1, 0x1E] - adds r0, r5, 0 - bl sub_8083170 - mov r1, sp - strh r0, [r1, 0x20] - adds r0, r5, 0 - bl sub_8083170 - mov r1, sp - strh r0, [r1, 0x22] - adds r0, r5, 0 - bl sub_8083170 - mov r1, sp - strh r0, [r1, 0x24] - adds r0, r5, 0 - bl sub_8083170 - mov r1, sp - strh r0, [r1, 0x26] - adds r0, r5, 0 - bl sub_8083170 - mov r1, sp - strh r0, [r1, 0x28] - adds r0, r5, 0 - bl sub_80831C8 - str r0, [sp, 0x2C] - adds r0, r5, 0 - bl sub_80831C8 - str r0, [sp, 0x30] - adds r0, r5, 0 - bl sub_80831C8 - str r0, [sp, 0x34] - adds r0, r5, 0 - bl sub_80831C8 - str r0, [sp, 0x38] - add r1, sp, 0x44 - adds r0, r5, 0 - bl sub_8082CBC - adds r0, r5, 0 - bl sub_8082BFC - add r1, sp, 0x5C - strb r0, [r1] - adds r0, r5, 0 - bl sub_8082BFC - mov r1, sp - adds r1, 0x5D - strb r0, [r1] - adds r0, r5, 0 - bl sub_8082C18 - mov r1, sp - adds r1, 0x5E - strb r0, [r1] - adds r0, r5, 0 - bl sub_8082C18 - mov r1, sp - adds r1, 0x5F - strb r0, [r1] - add r1, sp, 0x60 - adds r0, r5, 0 - bl sub_80820A8 - adds r0, r5, 0 - bl sub_8082BE0 - add r1, sp, 0x64 - strb r0, [r1] - add r7, sp, 0x78 - add r0, sp, 0x8C - mov r8, r0 - add r1, sp, 0x90 - mov r9, r1 - add r2, sp, 0x94 - mov r10, r2 - mov r3, sp - adds r3, 0x3C - str r3, [sp, 0x270] - mov r0, sp - adds r0, 0x98 - str r0, [sp, 0x274] - mov r1, sp - adds r1, 0x9C - str r1, [sp, 0x278] - mov r2, sp - adds r2, 0xA0 - str r2, [sp, 0x27C] - adds r3, 0x6C - str r3, [sp, 0x284] - adds r0, 0x14 - str r0, [sp, 0x288] - adds r1, 0x14 - str r1, [sp, 0x28C] - adds r2, 0x1C - str r2, [sp, 0x290] - adds r3, 0x18 - str r3, [sp, 0x294] - adds r0, 0x18 - str r0, [sp, 0x298] - adds r1, 0x18 - str r1, [sp, 0x29C] - adds r2, 0x14 - str r2, [sp, 0x220] - adds r3, 0x1C - str r3, [sp, 0x224] - adds r0, 0x1C - str r0, [sp, 0x228] - adds r1, 0x1C - str r1, [sp, 0x22C] - adds r2, 0x18 - str r2, [sp, 0x230] - adds r3, 0x10 - str r3, [sp, 0x234] - adds r0, 0x10 - str r0, [sp, 0x238] - adds r1, 0xD - str r1, [sp, 0x23C] - adds r2, 0xA - str r2, [sp, 0x240] - adds r3, 0x7 - str r3, [sp, 0x244] - adds r0, 0x4 - str r0, [sp, 0x248] - adds r1, 0xA - str r1, [sp, 0x25C] - adds r2, 0x3 - str r2, [sp, 0x24C] - adds r3, 0x3 - str r3, [sp, 0x250] - adds r0, 0x3 - str r0, [sp, 0x254] - subs r1, 0x1 - str r1, [sp, 0x258] - adds r2, 0x7 - str r2, [sp, 0x260] - adds r3, 0x7 - str r3, [sp, 0x264] - adds r0, 0x7 - str r0, [sp, 0x268] - adds r1, 0x5 - str r1, [sp, 0x26C] - subs r2, 0x58 - str r2, [sp, 0x280] - add r4, sp, 0x68 - movs r6, 0x3 -_080824DC: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80831F8 - adds r4, 0x4 - subs r6, 0x1 - cmp r6, 0 - bge _080824DC - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_8082CE4 - adds r0, r5, 0 - mov r1, r8 - bl sub_8082D28 - adds r0, r5, 0 - mov r1, r9 - bl sub_8082D28 - adds r0, r5, 0 - bl sub_8082C84 - movs r4, 0 - mov r3, r10 - strb r0, [r3] - adds r0, r5, 0 - ldr r1, [sp, 0x270] - bl sub_8082F80 - adds r0, r5, 0 - bl sub_80831A0 - ldr r1, [sp, 0x274] - str r0, [r1] - adds r0, r5, 0 - bl sub_80831A0 - ldr r2, [sp, 0x278] - str r0, [r2] - adds r0, r5, 0 - bl sub_80831A0 - ldr r3, [sp, 0x27C] - str r0, [r3] - adds r0, r5, 0 - ldr r1, [sp, 0x284] - bl sub_8082D34 - adds r0, r5, 0 - ldr r1, [sp, 0x288] - bl sub_8082D50 - adds r0, r5, 0 - ldr r1, [sp, 0x28C] - bl sub_8082D7C - adds r0, r5, 0 - ldr r1, [sp, 0x290] - bl sub_8082DA8 - adds r0, r5, 0 - ldr r1, [sp, 0x294] - bl sub_8082DC4 - adds r0, r5, 0 - ldr r1, [sp, 0x298] - bl sub_8082DE8 - adds r0, r5, 0 - ldr r1, [sp, 0x29C] - bl sub_8082E04 - adds r0, r5, 0 - ldr r1, [sp, 0x220] - bl sub_8082E38 - adds r0, r5, 0 - ldr r1, [sp, 0x224] - bl sub_8082E6C - adds r0, r5, 0 - ldr r1, [sp, 0x228] - bl sub_8082E88 - adds r0, r5, 0 - ldr r1, [sp, 0x22C] - bl sub_8082E94 - adds r0, r5, 0 - ldr r1, [sp, 0x230] - bl sub_8082EB0 - adds r0, r5, 0 - ldr r1, [sp, 0x234] - bl sub_8082ECC - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [sp, 0x238] - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r2, [sp, 0x23C] - strb r0, [r2] - adds r0, r5, 0 - bl sub_80831DC - ldr r3, [sp, 0x240] - strb r0, [r3] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [sp, 0x244] - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r2, [sp, 0x248] - strb r0, [r2] - adds r0, r5, 0 - bl sub_8083188 - ldr r3, [sp, 0x25C] - strb r0, [r3] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, [sp, 0x24C] - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r2, [sp, 0x250] - strb r0, [r2] - adds r0, r5, 0 - bl sub_80831DC - ldr r3, [sp, 0x254] - strb r0, [r3] - adds r0, r5, 0 - bl sub_8083188 - ldr r1, [sp, 0x258] - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r2, [sp, 0x260] - strb r0, [r2] - adds r0, r5, 0 - bl sub_8083188 - ldr r3, [sp, 0x264] - strb r0, [r3] - adds r0, r5, 0 - bl sub_8083188 - ldr r1, [sp, 0x268] - strb r0, [r1] - adds r0, r5, 0 - bl sub_8082C34 - ldr r2, [sp, 0x26C] - strb r0, [r2] - adds r0, r5, 0 - bl sub_8082C50 - add r1, sp, 0x100 - strb r0, [r1] - adds r0, r5, 0 - bl sub_8082C6C - add r1, sp, 0x104 - str r0, [r1] - add r1, sp, 0x108 - adds r0, r5, 0 - movs r2, 0x5 - bl sub_8083288 - ldr r1, _08082674 - add r1, sp - adds r0, r5, 0 - movs r2, 0x5 - bl sub_8083288 - adds r0, r5, 0 - bl sub_8083188 - movs r1, 0x89 - lsls r1, 1 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083188 - b _08082678 - .align 2, 0 -_0808266C: .4byte 0xfffffd60 -_08082670: .4byte gUnknown_203B450 -_08082674: .4byte 0x0000010d -_08082678: - ldr r1, _08082818 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083188 - add r1, sp, 0x114 - lsls r0, 24 - lsrs r0, 24 - str r0, [r1] - add r1, sp, 0x118 - adds r0, r5, 0 - bl sub_8082F1C - add r1, sp, 0x13C - adds r0, r5, 0 - bl sub_8082F48 - add r1, sp, 0x140 - adds r0, r5, 0 - bl sub_8082F48 - adds r0, r5, 0 - bl sub_80831DC - add r1, sp, 0x144 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, _0808281C - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, _08082820 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - movs r1, 0xA3 - lsls r1, 1 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - add r1, sp, 0x148 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, _08082824 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - movs r1, 0xA5 - lsls r1, 1 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, _08082828 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - add r1, sp, 0x14C - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083158 - movs r1, 0xA7 - lsls r1, 1 - add r1, sp - strh r0, [r1] - adds r0, r5, 0 - bl sub_8083158 - add r1, sp, 0x150 - strh r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - movs r1, 0xA9 - lsls r1, 1 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083188 - ldr r1, _0808282C - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - add r1, sp, 0x154 - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - ldr r1, _08082830 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_80831DC - movs r1, 0xAB - lsls r1, 1 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083188 - add r1, sp, 0x164 - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083188 - ldr r1, _08082834 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083188 - movs r1, 0xB3 - lsls r1, 1 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083188 - ldr r1, _08082838 - add r1, sp - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083188 - add r1, sp, 0x168 - strb r0, [r1] - adds r0, r5, 0 - bl sub_8083188 - ldr r1, _0808283C - add r1, sp - strb r0, [r1] - add r1, sp, 0x16C - adds r0, r5, 0 - bl sub_80831F8 - adds r0, r5, 0 - bl sub_80831C8 - add r1, sp, 0x174 - str r0, [r1] - adds r0, r5, 0 - bl sub_8083158 - add r1, sp, 0x178 - strh r0, [r1] - adds r0, r5, 0 - bl sub_8083170 - add r1, sp, 0x1F8 - strh r0, [r1] - adds r0, r5, 0 - bl sub_8083170 - movs r1, 0xFD - lsls r1, 1 - add r1, sp - strh r0, [r1] - adds r0, r5, 0 - bl sub_80831A0 - add r1, sp, 0x1FC - str r0, [r1] - adds r0, r5, 0 - bl sub_8082CA0 - ldr r3, [sp, 0x280] - strb r0, [r3] - ldr r0, _08082840 - str r4, [r0] - ldr r0, [sp, 0x214] - cmp r0, 0 - beq _080828BE - ldr r1, [sp, 0x20C] - cmp r1, 0 - beq _08082844 - mov r0, sp - movs r2, 0x2 - ldrsh r0, [r0, r2] - mov r1, sp - movs r3, 0x4 - ldrsh r1, [r1, r3] - ldr r2, [sp, 0x210] - bl sub_80828E0 - b _08082856 - .align 2, 0 -_08082818: .4byte 0x00000113 -_0808281C: .4byte 0x00000145 -_08082820: .4byte 0x00000147 -_08082824: .4byte 0x00000149 -_08082828: .4byte 0x0000014b -_0808282C: .4byte 0x00000153 -_08082830: .4byte 0x00000155 -_08082834: .4byte 0x00000165 -_08082838: .4byte 0x00000167 -_0808283C: .4byte 0x00000169 -_08082840: .4byte gUnknown_203B450 -_08082844: - mov r0, sp - movs r1, 0x2 - ldrsh r0, [r0, r1] - mov r1, sp - movs r2, 0x4 - ldrsh r1, [r1, r2] - ldr r2, [sp, 0x210] - bl sub_8082A08 -_08082856: - adds r7, r0, 0 - cmp r7, 0 - beq _080828BE - ldr r6, [r7, 0x70] - movs r5, 0x82 - lsls r5, 2 - mov r3, sp - adds r4, r3, r5 - movs r1, 0 - ldrsh r0, [r4, r1] - ldr r3, _080828D4 - add r3, sp - movs r2, 0 - ldrsh r1, [r3, r2] - bl sub_8049590 - ldr r1, [r4] - str r1, [r7, 0x8] - ldr r1, [r4] - str r1, [r7, 0x4] - str r7, [r0, 0x10] - adds r0, r7, 0 - adds r0, 0x20 - movs r4, 0 - add r1, sp, 0x218 - ldrb r1, [r1] - strb r1, [r0] - add r2, sp, 0x21C - ldrh r2, [r2] - strh r2, [r7, 0x26] - adds r0, r6, 0 - mov r1, sp - adds r2, r5, 0 - bl memcpy - ldr r0, _080828D8 - str r4, [r0] - ldrb r0, [r6, 0x7] - cmp r0, 0 - beq _080828B0 - ldr r0, _080828DC - ldrh r1, [r7, 0x4] - strh r1, [r0] - ldrh r1, [r7, 0x6] - strh r1, [r0, 0x2] -_080828B0: - adds r0, r7, 0 - bl sub_807191C - adds r0, r7, 0 - movs r1, 0 - bl sub_804535C -_080828BE: - movs r3, 0xA8 - lsls r3, 2 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080828D4: .4byte 0x0000020a -_080828D8: .4byte gUnknown_203B450 -_080828DC: .4byte gUnknown_203B410 - thumb_func_end sub_8082280 - - thumb_func_start sub_80828E0 -sub_80828E0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r5, r2, 0 - lsls r0, 16 - asrs r0, 16 - mov r10, r0 - lsls r1, 16 - asrs r1, 16 - mov r8, r1 - movs r4, 0x1 - negs r4, r4 - mov r0, r8 - bl sub_808DACC - lsls r0, 24 - lsrs r6, r0, 24 - movs r3, 0 - movs r0, 0x6 - subs r7, r0, r6 - ldr r0, _08082914 - mov r9, r0 - b _0808291A - .align 2, 0 -_08082914: .4byte gUnknown_202EE70 -_08082918: - adds r3, 0x1 -_0808291A: - cmp r3, r7 - bgt _0808293E - movs r2, 0 - cmp r2, r6 - bge _08082938 - mov r0, r9 - adds r1, r3, r0 - b _08082932 -_0808292A: - adds r1, 0x1 - adds r2, 0x1 - cmp r2, r6 - bge _08082938 -_08082932: - ldrb r0, [r1] - cmp r0, 0 - beq _0808292A -_08082938: - cmp r2, r6 - bne _08082918 - adds r4, r3, 0 -_0808293E: - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - bne _0808294A - movs r0, 0 - b _080829E6 -_0808294A: - ldr r2, _080829F4 - ldr r0, [r2] - lsls r1, r5, 2 - ldr r3, _080829F8 - adds r0, r3 - adds r0, r1 - ldr r7, [r0] - movs r0, 0x1 - mov r9, r0 - str r0, [r7] - adds r0, r7, 0 - adds r0, 0x24 - strb r5, [r0] - lsls r0, r5, 6 - adds r0, r5 - lsls r0, 3 - ldr r1, _080829FC - adds r0, r1 - ldr r1, [r2] - adds r1, r0 - str r1, [r7, 0x70] - movs r5, 0 - mov r3, r10 - strh r3, [r1, 0x2] - ldr r0, [r7, 0x70] - mov r1, r8 - strh r1, [r0, 0x4] - ldr r0, [r7, 0x70] - strb r5, [r0, 0x6] - mov r0, r8 - bl sub_80687D0 - str r0, [r7, 0x64] - lsls r0, r4, 4 - adds r0, 0x40 - adds r1, r7, 0 - adds r1, 0x68 - strh r0, [r1] - adds r1, 0x2 - movs r0, 0x7 - strb r0, [r1] - adds r0, r7, 0 - adds r0, 0x6C - strb r5, [r0] - adds r1, 0x1 - movs r0, 0xFF - strb r0, [r1] - adds r0, r7, 0 - adds r0, 0x6D - mov r3, r9 - strb r3, [r0] - adds r0, 0x2 - strb r3, [r0] - movs r0, 0 - str r0, [r7, 0x1C] - bl sub_8045ACC - ldr r0, [r7, 0x70] - ldr r1, _08082A00 - adds r0, r1 - strb r4, [r0] - ldr r0, [r7, 0x70] - movs r3, 0xB4 - lsls r3, 1 - adds r0, r3 - strb r6, [r0] - cmp r6, 0 - beq _080829E4 - ldr r3, _08082A04 - movs r2, 0x1 - adds r1, r6, 0 -_080829D8: - adds r0, r4, r3 - strb r2, [r0] - adds r4, 0x1 - subs r1, 0x1 - cmp r1, 0 - bne _080829D8 -_080829E4: - adds r0, r7, 0 -_080829E6: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080829F4: .4byte gUnknown_203B418 -_080829F8: .4byte 0x0001357c -_080829FC: .4byte 0x0000069c -_08082A00: .4byte 0x00000167 -_08082A04: .4byte gUnknown_202EE70 - thumb_func_end sub_80828E0 - - thumb_func_start sub_8082A08 -sub_8082A08: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r5, r2, 0 - lsls r0, 16 - asrs r0, 16 - str r0, [sp] - lsls r1, 16 - asrs r1, 16 - mov r9, r1 - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - mov r0, r9 - bl sub_808DACC - lsls r0, 24 - lsrs r6, r0, 24 - movs r3, 0 - movs r0, 0x10 - subs r4, r0, r6 - ldr r7, _08082A3C - b _08082A42 - .align 2, 0 -_08082A3C: .4byte gUnknown_202EE76 -_08082A40: - adds r3, 0x1 -_08082A42: - cmp r3, r4 - bgt _08082A64 - movs r2, 0 - cmp r2, r6 - bge _08082A5E - adds r1, r3, r7 - b _08082A58 -_08082A50: - adds r1, 0x1 - adds r2, 0x1 - cmp r2, r6 - bge _08082A5E -_08082A58: - ldrb r0, [r1] - cmp r0, 0 - beq _08082A50 -_08082A5E: - cmp r2, r6 - bne _08082A40 - mov r8, r3 -_08082A64: - movs r0, 0x1 - negs r0, r0 - cmp r8, r0 - bne _08082A70 - movs r0, 0 - b _08082B1C -_08082A70: - ldr r2, _08082B2C - ldr r0, [r2] - lsls r1, r5, 2 - ldr r3, _08082B30 - adds r0, r3 - adds r0, r1 - ldr r7, [r0] - movs r4, 0x1 - str r4, [r7] - adds r0, r7, 0 - adds r0, 0x24 - movs r1, 0 - mov r10, r1 - strb r5, [r0] - subs r0, 0x2 - mov r3, r10 - strb r3, [r0] - lsls r0, r5, 6 - adds r0, r5 - lsls r0, 3 - ldr r1, _08082B34 - adds r0, r1 - ldr r1, [r2] - adds r1, r0 - str r1, [r7, 0x70] - movs r5, 0 - mov r2, sp - ldrh r2, [r2] - strh r2, [r1, 0x2] - ldr r0, [r7, 0x70] - mov r3, r9 - strh r3, [r0, 0x4] - ldr r0, [r7, 0x70] - strb r4, [r0, 0x6] - mov r0, r9 - bl sub_80687D0 - str r0, [r7, 0x64] - mov r1, r8 - lsls r0, r1, 4 - adds r0, 0xA0 - adds r1, r7, 0 - adds r1, 0x68 - strh r0, [r1] - adds r1, 0x2 - movs r0, 0x7 - strb r0, [r1] - adds r0, r7, 0 - adds r0, 0x6C - strb r5, [r0] - adds r1, 0x1 - movs r0, 0xFF - strb r0, [r1] - adds r0, r7, 0 - adds r0, 0x6D - strb r4, [r0] - adds r0, 0x2 - strb r4, [r0] - mov r2, r10 - str r2, [r7, 0x1C] - ldr r0, [r7, 0x70] - ldr r3, _08082B38 - adds r0, r3 - mov r4, r8 - strb r4, [r0] - ldr r0, [r7, 0x70] - movs r1, 0xB4 - lsls r1, 1 - adds r0, r1 - strb r6, [r0] - cmp r6, 0 - beq _08082B16 - ldr r3, _08082B3C - movs r2, 0x1 - adds r1, r6, 0 -_08082B06: - mov r4, r8 - adds r0, r4, r3 - strb r2, [r0] - movs r0, 0x1 - add r8, r0 - subs r1, 0x1 - cmp r1, 0 - bne _08082B06 -_08082B16: - bl sub_8045ACC - adds r0, r7, 0 -_08082B1C: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08082B2C: .4byte gUnknown_203B418 -_08082B30: .4byte 0x0001358c -_08082B34: .4byte 0x00000ebc -_08082B38: .4byte 0x00000167 -_08082B3C: .4byte gUnknown_202EE76 - thumb_func_end sub_8082A08 - - thumb_func_start sub_8082B40 -sub_8082B40: - push {r4-r6,lr} - sub sp, 0x4 - movs r6, 0 -_08082B46: - ldr r0, _08082BB8 - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _08082BBC - adds r0, r2 - adds r0, r1 - ldr r5, [r0] - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08082BA8 - ldr r4, [r5, 0x70] - movs r1, 0x4 - ldrsh r0, [r4, r1] - bl sub_80687D0 - str r0, [r5, 0x64] - adds r0, r5, 0 - bl sub_806CEBC - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl sub_806CCB4 - ldr r0, [r5, 0x4] - str r0, [sp] - adds r0, r4, 0 - adds r0, 0x98 - ldr r0, [r0] - movs r2, 0x4 - ldrsh r1, [r4, r2] - mov r2, sp - movs r3, 0x3 - bl sub_800F8D0 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8049590 - ldrb r1, [r0, 0x9] - adds r0, r5, 0 - adds r0, 0x25 - strb r1, [r0] -_08082BA8: - adds r6, 0x1 - cmp r6, 0x13 - ble _08082B46 - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08082BB8: .4byte gUnknown_203B418 -_08082BBC: .4byte 0x000135cc - thumb_func_end sub_8082B40 - - thumb_func_start sub_8082BC0 -sub_8082BC0: - push {lr} - sub sp, 0x4 - mov r2, sp - movs r1, 0 - strh r1, [r2] - mov r1, sp - movs r2, 0x2 - bl sub_8082FE0 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8082BC0 - - thumb_func_start sub_8082BE0 -sub_8082BE0: - push {lr} - sub sp, 0x4 - mov r2, sp - movs r1, 0 - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FE0 - mov r0, sp - ldrb r0, [r0] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8082BE0 - - thumb_func_start sub_8082BFC -sub_8082BFC: - push {lr} - sub sp, 0x4 - mov r2, sp - movs r1, 0 - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FE0 - mov r0, sp - ldrb r0, [r0] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8082BFC - - thumb_func_start sub_8082C18 -sub_8082C18: - push {lr} - sub sp, 0x4 - mov r2, sp - movs r1, 0 - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FE0 - mov r0, sp - ldrb r0, [r0] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8082C18 - - thumb_func_start sub_8082C34 -sub_8082C34: - push {lr} - sub sp, 0x4 - mov r2, sp - movs r1, 0 - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FE0 - mov r0, sp - ldrb r0, [r0] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8082C34 - - thumb_func_start sub_8082C50 -sub_8082C50: - push {lr} - sub sp, 0x4 - mov r2, sp - movs r1, 0 - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FE0 - mov r0, sp - ldrb r0, [r0] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8082C50 - - thumb_func_start sub_8082C6C -sub_8082C6C: - push {lr} - sub sp, 0x4 - movs r1, 0 - str r1, [sp] - mov r1, sp - movs r2, 0x4 - bl sub_8082FE0 - ldr r0, [sp] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8082C6C - - thumb_func_start sub_8082C84 -sub_8082C84: - push {lr} - sub sp, 0x4 - mov r2, sp - movs r1, 0 - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FE0 - mov r0, sp - ldrb r0, [r0] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8082C84 - - thumb_func_start sub_8082CA0 -sub_8082CA0: - push {lr} - sub sp, 0x4 - mov r2, sp - movs r1, 0 - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FE0 - mov r0, sp - ldrb r0, [r0] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8082CA0 - - thumb_func_start sub_8082CBC -sub_8082CBC: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r0, 0 - strh r0, [r4] - adds r1, r4, 0x2 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FE0 - movs r0, 0x7 - strb r0, [r4, 0x3] - adds r4, 0x14 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80831F8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082CBC - - thumb_func_start sub_8082CE4 -sub_8082CE4: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r5, 0 - bl sub_80831DC - movs r6, 0 - strb r0, [r4, 0x1] - adds r0, r5, 0 - bl sub_80831DC - strb r0, [r4, 0x2] - adds r0, r5, 0 - bl sub_80831DC - strb r0, [r4, 0x3] - adds r0, r5, 0 - bl sub_8083158 - strh r0, [r4, 0x4] - str r6, [r4, 0x8] - str r6, [r4, 0xC] - adds r4, 0x10 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80831F8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8082CE4 - - thumb_func_start sub_8082D28 -sub_8082D28: - push {lr} - movs r2, 0x3 - bl sub_8082FE0 - pop {r0} - bx r0 - thumb_func_end sub_8082D28 - - thumb_func_start sub_8082D34 -sub_8082D34: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x1] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082D34 - - thumb_func_start sub_8082D50 -sub_8082D50: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x1] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x2] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x3] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082D50 - - thumb_func_start sub_8082D7C -sub_8082D7C: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x8] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x9] - adds r0, r4, 0 - bl sub_80831A0 - str r0, [r5, 0x4] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082D7C - - thumb_func_start sub_8082DA8 -sub_8082DA8: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x1] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082DA8 - - thumb_func_start sub_8082DC4 -sub_8082DC4: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x1] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x2] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082DC4 - - thumb_func_start sub_8082DE8 -sub_8082DE8: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x1] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082DE8 - - thumb_func_start sub_8082E04 -sub_8082E04: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_80831DC - strb r0, [r5, 0x1] - adds r0, r4, 0 - bl sub_80831DC - strb r0, [r5, 0x2] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x3] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x4] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082E04 - - thumb_func_start sub_8082E38 -sub_8082E38: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_80831A0 - str r0, [r5, 0x4] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x8] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x9] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0xA] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082E38 - - thumb_func_start sub_8082E6C -sub_8082E6C: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x1] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082E6C - - thumb_func_start sub_8082E88 -sub_8082E88: - push {lr} - movs r2, 0x1 - bl sub_8082FE0 - pop {r0} - bx r0 - thumb_func_end sub_8082E88 - - thumb_func_start sub_8082E94 -sub_8082E94: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x1] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082E94 - - thumb_func_start sub_8082EB0 -sub_8082EB0: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x1] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082EB0 - - thumb_func_start sub_8082ECC -sub_8082ECC: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x1] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082ECC - - thumb_func_start sub_8082EE8 -sub_8082EE8: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8083188 - strb r0, [r5] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x1] - adds r1, r5, 0x2 - adds r0, r4, 0 - movs r2, 0x2 - bl sub_8082FE0 - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x4] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x5] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082EE8 - - thumb_func_start sub_8082F1C -sub_8082F1C: - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - adds r4, r7, 0 - movs r5, 0x3 -_08082F26: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8082EE8 - adds r4, 0x8 - subs r5, 0x1 - cmp r5, 0 - bge _08082F26 - adds r0, r6, 0 - bl sub_8083188 - adds r1, r7, 0 - adds r1, 0x20 - strb r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8082F1C - - thumb_func_start sub_8082F48 -sub_8082F48: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8083170 - strh r0, [r5] - adds r0, r4, 0 - bl sub_8083170 - strh r0, [r5, 0x2] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082F48 - - thumb_func_start sub_8082F64 -sub_8082F64: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8083188 - strb r0, [r5] - adds r0, r4, 0 - bl sub_8083188 - strb r0, [r5, 0x1] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082F64 - - thumb_func_start sub_8082F80 -sub_8082F80: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8083170 - strh r0, [r5] - adds r0, r4, 0 - bl sub_8082BFC - strb r0, [r5, 0x2] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8082F80 - - thumb_func_start sub_8082F9C -sub_8082F9C: - str r1, [r0] - movs r3, 0 - str r3, [r0, 0x8] - adds r1, r2 - str r1, [r0, 0x4] - bx lr - thumb_func_end sub_8082F9C - - thumb_func_start sub_8082FA8 -sub_8082FA8: - push {r4,lr} - adds r3, r0, 0 - adds r4, r1, 0 - cmp r2, 0 - beq _08082FCC -_08082FB2: - ldr r1, [r3] - ldrb r0, [r4] - strb r0, [r1] - ldr r0, [r3] - adds r0, 0x1 - str r0, [r3] - adds r4, 0x1 - subs r2, 0x1 - ldr r0, [r3, 0x8] - adds r0, 0x1 - str r0, [r3, 0x8] - cmp r2, 0 - bne _08082FB2 -_08082FCC: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8082FA8 - - thumb_func_start sub_8082FD4 -sub_8082FD4: - str r1, [r0] - movs r3, 0 - str r3, [r0, 0x8] - adds r1, r2 - str r1, [r0, 0x4] - bx lr - thumb_func_end sub_8082FD4 - - thumb_func_start sub_8082FE0 -sub_8082FE0: - push {r4,lr} - adds r3, r0, 0 - adds r4, r1, 0 - cmp r2, 0 - beq _08083002 -_08082FEA: - ldr r1, [r3] - ldrb r0, [r1] - strb r0, [r4] - adds r1, 0x1 - str r1, [r3] - adds r4, 0x1 - subs r2, 0x1 - ldr r0, [r3, 0x8] - adds r0, 0x1 - str r0, [r3, 0x8] - cmp r2, 0 - bne _08082FEA -_08083002: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8082FE0 - - thumb_func_start nullsub_98 -nullsub_98: - bx lr - thumb_func_end nullsub_98 - - thumb_func_start sub_808300C -sub_808300C: - push {lr} - movs r2, 0x8 - bl sub_8082FA8 - pop {r0} - bx r0 - thumb_func_end sub_808300C - - thumb_func_start sub_8083018 -sub_8083018: - push {lr} - sub sp, 0xC - mov r1, sp - movs r2, 0x8 - bl sub_8082FE0 - mov r1, sp - movs r0, 0 - strb r0, [r1, 0x8] - add sp, 0xC - pop {r0} - bx r0 - thumb_func_end sub_8083018 - - thumb_func_start sub_8083030 -sub_8083030: - push {lr} - sub sp, 0x4 - mov r2, sp - strh r1, [r2] - mov r1, sp - movs r2, 0x2 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8083030 - - thumb_func_start sub_8083048 -sub_8083048: - push {lr} - sub sp, 0x4 - mov r2, sp - strh r1, [r2] - mov r1, sp - movs r2, 0x2 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8083048 - - thumb_func_start sub_8083060 -sub_8083060: - push {lr} - sub sp, 0x4 - mov r2, sp - strb r1, [r2] - mov r1, sp - movs r2, 0x1 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8083060 - - thumb_func_start sub_8083078 -sub_8083078: - push {lr} - sub sp, 0x4 - str r1, [sp] - mov r1, sp - movs r2, 0x4 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8083078 - - thumb_func_start sub_808308C -sub_808308C: - push {lr} - sub sp, 0x4 - str r1, [sp] - mov r1, sp - movs r2, 0x4 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_808308C - - thumb_func_start sub_80830A0 -sub_80830A0: - push {lr} - sub sp, 0x4 - str r1, [sp] - mov r1, sp - movs r2, 0x4 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80830A0 - - thumb_func_start sub_80830B4 -sub_80830B4: - push {lr} - sub sp, 0x4 - adds r3, r0, 0 - lsls r1, 24 - movs r2, 0 - cmp r1, 0 - beq _080830C4 - movs r2, 0xFF -_080830C4: - mov r0, sp - strb r2, [r0] - adds r0, r3, 0 - mov r1, sp - movs r2, 0x1 - bl sub_8082FA8 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_80830B4 - - thumb_func_start sub_80830D8 -sub_80830D8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r4, 0x2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80830D8 - - thumb_func_start sub_80830F8 -sub_80830F8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r4, 0x4 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r1, r4, 0 - adds r1, 0x8 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r4, 0xC - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80830F8 - - thumb_func_start sub_808312C -sub_808312C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8082FA8 - adds r4, 0x2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FA8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808312C - - thumb_func_start sub_808314C -sub_808314C: - push {lr} - bl sub_8082FA8 - pop {r0} - bx r0 - thumb_func_end sub_808314C - - thumb_func_start sub_8083158 -sub_8083158: - push {lr} - sub sp, 0x4 - mov r1, sp - movs r2, 0x2 - bl sub_8082FE0 - mov r0, sp - ldrh r0, [r0] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8083158 - - thumb_func_start sub_8083170 -sub_8083170: - push {lr} - sub sp, 0x4 - mov r1, sp - movs r2, 0x2 - bl sub_8082FE0 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8083170 - - thumb_func_start sub_8083188 -sub_8083188: - push {lr} - sub sp, 0x4 - mov r1, sp - movs r2, 0x1 - bl sub_8082FE0 - mov r0, sp - ldrb r0, [r0] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8083188 - - thumb_func_start sub_80831A0 -sub_80831A0: - push {lr} - sub sp, 0x4 - mov r1, sp - movs r2, 0x4 - bl sub_8082FE0 - ldr r0, [sp] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_80831A0 - - thumb_func_start sub_80831B4 -sub_80831B4: - push {lr} - sub sp, 0x4 - mov r1, sp - movs r2, 0x4 - bl sub_8082FE0 - ldr r0, [sp] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_80831B4 - - thumb_func_start sub_80831C8 -sub_80831C8: - push {lr} - sub sp, 0x4 - mov r1, sp - movs r2, 0x4 - bl sub_8082FE0 - ldr r0, [sp] - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_80831C8 - - thumb_func_start sub_80831DC -sub_80831DC: - push {lr} - sub sp, 0x4 - mov r1, sp - movs r2, 0x1 - bl sub_8082FE0 - mov r0, sp - ldrb r1, [r0] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_80831DC - - thumb_func_start sub_80831F8 -sub_80831F8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r0, 0 - strh r0, [r4] - strh r0, [r4, 0x2] - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r4, 0x2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FE0 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80831F8 - - thumb_func_start sub_8083220 -sub_8083220: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r0, 0 - str r0, [r4] - str r0, [r4, 0x4] - str r0, [r4, 0x8] - str r0, [r4, 0xC] - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r1, r4, 0x4 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r1, r4, 0 - adds r1, 0x8 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r4, 0xC - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FE0 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8083220 - - thumb_func_start sub_8083260 -sub_8083260: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r0, 0 - strh r0, [r4] - strh r0, [r4, 0x2] - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8082FE0 - adds r4, 0x2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8082FE0 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8083260 - - thumb_func_start sub_8083288 -sub_8083288: - push {lr} - bl sub_8082FE0 - pop {r0} - bx r0 - thumb_func_end sub_8083288 - - thumb_func_start sub_8083294 -sub_8083294: - push {r4-r7,lr} - adds r4, r0, 0 - adds r6, r1, 0 - ldr r7, _080832E8 - ldr r0, [r7] - ldr r1, _080832EC - adds r0, r1 - ldrb r5, [r0] - cmp r5, 0 - bne _080832AA - movs r5, 0x2 -_080832AA: - movs r2, 0 - ldrsh r0, [r4, r2] - movs r3, 0x2 - ldrsh r1, [r4, r3] - bl sub_804954C - ldrb r1, [r0, 0x9] - cmp r1, 0xFF - bne _080832F0 - movs r0, 0 - ldrsh r1, [r4, r0] - movs r2, 0 - ldrsh r0, [r6, r2] - subs r1, r0 - cmp r1, 0 - bge _080832CC - negs r1, r1 -_080832CC: - cmp r1, r5 - bgt _0808332E - movs r3, 0x2 - ldrsh r1, [r4, r3] - movs r4, 0x2 - ldrsh r0, [r6, r4] - subs r0, r1, r0 - cmp r0, 0 - bge _080832E0 - negs r0, r0 -_080832E0: - cmp r0, r5 - bgt _0808332E -_080832E4: - movs r0, 0x1 - b _08083330 - .align 2, 0 -_080832E8: .4byte gUnknown_203B418 -_080832EC: .4byte 0x00018209 -_080832F0: - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r1, _08083338 - adds r0, r1 - ldr r1, [r7] - adds r1, r0 - movs r2, 0x2 - ldrsh r0, [r1, r2] - subs r0, 0x1 - movs r4, 0 - ldrsh r3, [r6, r4] - cmp r0, r3 - bgt _0808332E - movs r2, 0x4 - ldrsh r0, [r1, r2] - subs r0, 0x1 - movs r4, 0x2 - ldrsh r2, [r6, r4] - cmp r0, r2 - bgt _0808332E - movs r4, 0x6 - ldrsh r0, [r1, r4] - adds r0, 0x1 - cmp r0, r3 - ble _0808332E - movs r3, 0x8 - ldrsh r0, [r1, r3] - adds r0, 0x1 - cmp r0, r2 - bgt _080832E4 -_0808332E: - movs r0, 0 -_08083330: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08083338: .4byte 0x000104c4 - thumb_func_end sub_8083294 - - thumb_func_start sub_808333C -sub_808333C: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0x2 - ldrsh r1, [r4, r2] - bl sub_804954C - ldrb r2, [r0, 0x9] - cmp r2, 0xFF - beq _08083394 - ldr r1, _080833C4 - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - ldr r3, _080833C8 - adds r0, r3 - ldr r1, [r1] - adds r1, r0 - movs r6, 0x2 - ldrsh r0, [r1, r6] - subs r0, 0x1 - movs r2, 0 - ldrsh r3, [r5, r2] - cmp r0, r3 - bgt _08083394 - movs r6, 0x4 - ldrsh r0, [r1, r6] - subs r0, 0x1 - movs r6, 0x2 - ldrsh r2, [r5, r6] - cmp r0, r2 - bgt _08083394 - movs r6, 0x6 - ldrsh r0, [r1, r6] - adds r0, 0x1 - cmp r0, r3 - ble _08083394 - movs r3, 0x8 - ldrsh r0, [r1, r3] - adds r0, 0x1 - cmp r0, r2 - bgt _080833DE -_08083394: - movs r6, 0 - ldrsh r3, [r4, r6] - movs r0, 0 - ldrsh r2, [r5, r0] - movs r6, 0x2 - ldrsh r1, [r4, r6] - movs r6, 0x2 - ldrsh r0, [r5, r6] - subs r1, r0 - subs r3, r2 - cmp r3, 0 - bge _080833AE - negs r3, r3 -_080833AE: - cmp r1, 0 - bge _080833B4 - negs r1, r1 -_080833B4: - cmp r1, r3 - bge _080833BA - adds r1, r3, 0 -_080833BA: - cmp r1, 0x2 - ble _080833CC -_080833BE: - movs r0, 0 - b _080833E0 - .align 2, 0 -_080833C4: .4byte gUnknown_203B418 -_080833C8: .4byte 0x000104c4 -_080833CC: - cmp r1, 0x2 - bne _080833DE - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8083478 - lsls r0, 24 - cmp r0, 0 - beq _080833BE -_080833DE: - movs r0, 0x1 -_080833E0: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_808333C - - thumb_func_start sub_80833E8 -sub_80833E8: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r1, 0 - ldrsh r0, [r5, r1] - movs r2, 0x2 - ldrsh r1, [r5, r2] - bl sub_804954C - adds r1, r0, 0 - ldr r0, _08083438 - ldr r3, [r0] - ldr r2, _0808343C - adds r0, r3, r2 - ldrb r2, [r0] - cmp r2, 0 - bne _0808340C - movs r2, 0x2 -_0808340C: - ldrb r0, [r1, 0x9] - cmp r0, 0xFF - bne _08083440 - movs r1, 0 - ldrsh r0, [r5, r1] - subs r0, r2 - str r0, [r4] - movs r1, 0 - ldrsh r0, [r5, r1] - adds r0, r2 - adds r0, 0x1 - str r0, [r4, 0x8] - movs r1, 0x2 - ldrsh r0, [r5, r1] - subs r0, r2 - str r0, [r4, 0x4] - movs r1, 0x2 - ldrsh r0, [r5, r1] - adds r0, r2 - adds r0, 0x1 - b _0808346A - .align 2, 0 -_08083438: .4byte gUnknown_203B418 -_0808343C: .4byte 0x00018209 -_08083440: - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r2, _08083474 - adds r1, r2 - adds r1, r3, r1 - movs r2, 0x2 - ldrsh r0, [r1, r2] - subs r0, 0x1 - str r0, [r4] - movs r2, 0x6 - ldrsh r0, [r1, r2] - adds r0, 0x2 - str r0, [r4, 0x8] - movs r2, 0x4 - ldrsh r0, [r1, r2] - subs r0, 0x1 - str r0, [r4, 0x4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r0, 0x2 -_0808346A: - str r0, [r4, 0xC] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08083474: .4byte 0x000104c4 - thumb_func_end sub_80833E8 - - thumb_func_start sub_8083478 -sub_8083478: - push {r4-r7,lr} - sub sp, 0x4 - adds r3, r0, 0 - adds r6, r1, 0 - movs r0, 0 - ldrsh r1, [r3, r0] - movs r2, 0 - ldrsh r0, [r6, r2] - subs r1, r0 - cmp r1, 0 - bge _08083490 - negs r1, r1 -_08083490: - cmp r1, 0x1 - bgt _080834A8 - movs r5, 0x2 - ldrsh r1, [r3, r5] - movs r2, 0x2 - ldrsh r0, [r6, r2] - subs r1, r0 - cmp r1, 0 - bge _080834A4 - negs r1, r1 -_080834A4: - cmp r1, 0x1 - ble _0808355A -_080834A8: - movs r5, 0 - ldrsh r4, [r3, r5] - movs r1, 0 - ldrsh r0, [r6, r1] - subs r2, r4, r0 - cmp r2, 0 - bge _080834B8 - negs r2, r2 -_080834B8: - movs r5, 0x2 - ldrsh r1, [r3, r5] - movs r5, 0x2 - ldrsh r0, [r6, r5] - subs r0, r1, r0 - cmp r0, 0 - bge _080834C8 - negs r0, r0 -_080834C8: - cmp r0, r2 - bge _080834CE - adds r0, r2, 0 -_080834CE: - cmp r0, 0x2 - bne _0808355E - adds r5, r4, 0 - adds r4, r1, 0 - movs r7, 0 -_080834D8: - movs r1, 0 - ldrsh r0, [r6, r1] - cmp r5, r0 - bge _080834E2 - adds r5, 0x1 -_080834E2: - cmp r5, r0 - ble _080834E8 - subs r5, 0x1 -_080834E8: - movs r2, 0x2 - ldrsh r0, [r6, r2] - cmp r4, r0 - bge _080834F2 - adds r4, 0x1 -_080834F2: - cmp r4, r0 - ble _080834F8 - subs r4, 0x1 -_080834F8: - adds r0, r5, 0 - adds r1, r4, 0 - str r3, [sp] - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - ldr r3, [sp] - cmp r0, 0 - beq _0808355E - adds r7, 0x1 - cmp r7, 0x1 - ble _080834D8 - movs r0, 0 - ldrsh r5, [r6, r0] - movs r1, 0x2 - ldrsh r4, [r6, r1] - movs r7, 0 -_0808351E: - movs r2, 0 - ldrsh r0, [r3, r2] - cmp r5, r0 - bge _08083528 - adds r5, 0x1 -_08083528: - cmp r5, r0 - ble _0808352E - subs r5, 0x1 -_0808352E: - movs r1, 0x2 - ldrsh r0, [r3, r1] - cmp r4, r0 - bge _08083538 - adds r4, 0x1 -_08083538: - cmp r4, r0 - ble _0808353E - subs r4, 0x1 -_0808353E: - adds r0, r5, 0 - adds r1, r4, 0 - str r3, [sp] - bl sub_804954C - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - ldr r3, [sp] - cmp r0, 0 - beq _0808355E - adds r7, 0x1 - cmp r7, 0x1 - ble _0808351E -_0808355A: - movs r0, 0x1 - b _08083560 -_0808355E: - movs r0, 0 -_08083560: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8083478 - - thumb_func_start sub_8083568 -sub_8083568: - push {r4,r5,lr} - lsls r2, 24 - lsrs r5, r2, 24 - ldr r2, _080835E0 - ldr r2, [r2] - ldr r4, _080835E4 - adds r3, r2, r4 - movs r4, 0 - ldrsh r3, [r3, r4] - subs r3, r0, r3 - ldr r0, _080835E8 - adds r2, r0 - movs r4, 0 - ldrsh r0, [r2, r4] - subs r4, r1, r0 - movs r0, 0x10 - negs r0, r0 - cmp r3, r0 - blt _080835F8 - cmp r4, r0 - blt _080835F8 - cmp r3, 0xFF - bgt _080835F8 - cmp r4, 0xAF - bgt _080835F8 - ldr r1, _080835EC - lsls r0, r5, 1 - adds r0, r5 - lsls r0, 2 - adds r0, r1 - movs r1, 0x8 - ldrsh r2, [r0, r1] - adds r2, r3, r2 - ldr r1, _080835F0 - ands r2, r1 - ldrh r3, [r0, 0x2] - movs r1, 0xFE - lsls r1, 8 - ands r1, r3 - orrs r1, r2 - strh r1, [r0, 0x2] - movs r1, 0xA - ldrsh r2, [r0, r1] - adds r2, r4, r2 - ldr r1, _080835F4 - ands r2, r1 - lsls r2, 4 - ldrh r3, [r0, 0x6] - movs r1, 0xF - ands r1, r3 - orrs r1, r2 - strh r1, [r0, 0x6] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl AddSprite - movs r0, 0x1 - b _080835FA - .align 2, 0 -_080835E0: .4byte gUnknown_203B418 -_080835E4: .4byte 0x000181f0 -_080835E8: .4byte 0x000181f2 -_080835EC: .4byte gUnknown_202ED28 -_080835F0: .4byte 0x000001ff -_080835F4: .4byte 0x00000fff -_080835F8: - movs r0, 0 -_080835FA: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8083568 - - thumb_func_start sub_8083600 -sub_8083600: - push {r4,r5,lr} - ldr r0, _08083638 - ldr r0, [r0] - cmp r0, 0 - bne _0808364A - movs r5, 0 -_0808360C: - ldr r0, _0808363C - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08083640 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0808362E - ldr r0, [r4, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - bne _08083644 -_0808362E: - adds r5, 0x1 - cmp r5, 0x3 - ble _0808360C - movs r0, 0 - b _0808364A - .align 2, 0 -_08083638: .4byte gUnknown_203B450 -_0808363C: .4byte gUnknown_203B418 -_08083640: .4byte 0x0001357c -_08083644: - ldr r0, _08083650 - str r4, [r0] - adds r0, r4, 0 -_0808364A: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08083650: .4byte gUnknown_203B450 - thumb_func_end sub_8083600 - - thumb_func_start sub_8083654 -sub_8083654: - push {lr} - bl sub_8083600 - ldr r0, [r0, 0x70] - pop {r1} - bx r1 - thumb_func_end sub_8083654 - - thumb_func_start sub_8083660 -sub_8083660: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _080836D4 - add sp, r4 - movs r1, 0xE0 - lsls r1, 5 - add r1, sp - str r0, [r1] - bl sub_8083600 - ldr r2, _080836D8 - add r2, sp - str r0, [r2] - movs r7, 0 - movs r0, 0 - ldr r1, _080836DC - add r1, sp - str r0, [r1] -_0808368A: - movs r0, 0x38 - bl sub_8084100 - adds r4, r0, 0 - movs r0, 0x20 - bl sub_8084100 - ldr r2, _080836E0 - add r2, sp - str r0, [r2] - ldr r0, _080836D8 - add r0, sp - ldr r0, [r0] - ldr r3, [r0, 0x4] - adds r5, r4, 0 - movs r1, 0 - ldr r4, [r2] - ldr r0, _080836E4 - cmp r7, r0 - ble _080836B4 - b _080837E6 -_080836B4: - movs r2, 0x3 - mov r10, r2 - lsls r0, r7, 2 - mov r2, sp - adds r6, r0, r2 -_080836BE: - movs r0, 0 - mov r8, r0 - adds r2, r5, 0x1 - ldr r0, _080836E8 - add r0, sp - str r2, [r0] - adds r1, 0x1 - ldr r2, _080836EC - add r2, sp - str r1, [r2] - b _0808379C - .align 2, 0 -_080836D4: .4byte 0xffffe3e4 -_080836D8: .4byte 0x00001c04 -_080836DC: .4byte 0x00001c0c -_080836E0: .4byte 0x00001c08 -_080836E4: .4byte 0x000006ff -_080836E8: .4byte 0x00001c14 -_080836EC: .4byte 0x00001c10 -_080836F0: - ldr r0, _08083738 - add r0, sp - ldr r0, [r0] - cmp r0, 0 - bne _0808373C - ldrh r1, [r2] - mov r0, r10 - ands r0, r1 - cmp r0, 0x1 - bne _08083782 - ldrb r0, [r2, 0x9] - cmp r0, 0xFF - beq _08083782 - ldr r0, [r2, 0x14] - cmp r0, 0 - bne _08083782 - ldr r0, [r2, 0x10] - cmp r0, 0 - bne _08083782 - lsls r0, r3, 16 - asrs r0, 16 - subs r0, r5 - cmp r0, 0 - bge _08083722 - negs r0, r0 -_08083722: - cmp r0, 0x5 - bgt _08083788 - asrs r0, r3, 16 - subs r0, r4 - cmp r0, 0 - bge _08083730 - negs r0, r0 -_08083730: - cmp r0, 0x5 - ble _08083782 - b _08083788 - .align 2, 0 -_08083738: .4byte 0x00001c0c -_0808373C: - ldr r1, _08083764 - add r1, sp - ldr r1, [r1] - cmp r1, 0x1 - bne _08083768 - ldrh r1, [r2] - mov r0, r10 - ands r0, r1 - cmp r0, 0x1 - bne _08083782 - ldrb r0, [r2, 0x9] - cmp r0, 0xFF - beq _08083782 - ldr r0, [r2, 0x14] - cmp r0, 0 - bne _08083782 - ldr r0, [r2, 0x10] - cmp r0, 0 - bne _08083782 - b _08083788 - .align 2, 0 -_08083764: .4byte 0x00001c0c -_08083768: - ldrh r1, [r2] - mov r0, r10 - ands r0, r1 - cmp r0, 0x1 - bne _08083782 - ldr r0, [r2, 0x14] - cmp r0, 0 - bne _08083782 - ldr r0, [r2, 0x10] - cmp r0, 0 - bne _08083782 - movs r2, 0x1 - mov r9, r2 -_08083782: - mov r0, r9 - cmp r0, 0 - beq _08083790 -_08083788: - strb r5, [r6] - strb r4, [r6, 0x1] - adds r6, 0x4 - adds r7, 0x1 -_08083790: - adds r4, 0x1 - cmp r4, 0x1F - ble _08083798 - movs r4, 0 -_08083798: - movs r1, 0x1 - add r8, r1 -_0808379C: - mov r2, r8 - cmp r2, 0x1F - bgt _080837C2 - movs r0, 0 - mov r9, r0 - adds r0, r5, 0 - adds r1, r4, 0 - ldr r2, _0808380C - add r2, sp - str r3, [r2] - bl sub_804954C - adds r2, r0, 0 - ldr r0, _08083810 - ldr r1, _0808380C - add r1, sp - ldr r3, [r1] - cmp r7, r0 - ble _080836F0 -_080837C2: - ldr r2, _08083814 - add r2, sp - ldr r5, [r2] - cmp r5, 0x37 - ble _080837CE - movs r5, 0 -_080837CE: - ldr r0, _08083818 - add r0, sp - ldr r1, [r0] - cmp r1, 0x37 - bgt _080837E6 - ldr r2, _0808381C - add r2, sp - ldr r4, [r2] - ldr r0, _08083810 - cmp r7, r0 - bgt _080837E6 - b _080836BE -_080837E6: - cmp r7, 0 - beq _08083820 - adds r0, r7, 0 - bl sub_8084100 - lsls r0, 2 - mov r2, sp - adds r1, r2, r0 - ldrb r0, [r1] - movs r2, 0xE0 - lsls r2, 5 - add r2, sp - ldr r2, [r2] - strh r0, [r2] - ldrb r0, [r1, 0x1] - strh r0, [r2, 0x2] - movs r0, 0x1 - b _08083832 - .align 2, 0 -_0808380C: .4byte 0x00001c18 -_08083810: .4byte 0x000006ff -_08083814: .4byte 0x00001c14 -_08083818: .4byte 0x00001c10 -_0808381C: .4byte 0x00001c08 -_08083820: - ldr r0, _08083844 - add r0, sp - ldr r2, [r0] - adds r2, 0x1 - str r2, [r0] - cmp r2, 0x2 - bgt _08083830 - b _0808368A -_08083830: - movs r0, 0 -_08083832: - ldr r3, _08083848 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08083844: .4byte 0x00001c0c -_08083848: .4byte 0x00001c1c - thumb_func_end sub_8083660 - - thumb_func_start sub_808384C -sub_808384C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r3, r0, 0 - mov r9, r1 - movs r0, 0 - mov r8, r0 - ldr r0, _080838BC - movs r2, 0 - ldrsh r1, [r0, r2] - cmp r1, 0x63 - beq _080838D8 - movs r6, 0 -_0808386A: - adds r2, r6, r0 - movs r4, 0 - ldrsh r1, [r2, r4] - mov r5, r9 - movs r7, 0 - ldrsh r0, [r5, r7] - adds r5, r1, r0 - movs r0, 0x2 - ldrsh r1, [r2, r0] - mov r2, r9 - movs r4, 0x2 - ldrsh r0, [r2, r4] - adds r4, r1, r0 - adds r0, r5, 0 - adds r1, r4, 0 - str r3, [sp] - bl sub_804954C - adds r1, r0, 0 - ldrh r2, [r1] - movs r7, 0x80 - lsls r7, 4 - adds r0, r7, 0 - ands r0, r2 - ldr r3, [sp] - cmp r0, 0 - bne _080838C0 - movs r0, 0x3 - ands r0, r2 - cmp r0, 0x1 - bne _080838C0 - ldr r0, [r1, 0x14] - cmp r0, 0 - bne _080838C0 - ldr r0, [r1, 0x10] - cmp r0, 0 - bne _080838C0 - strh r5, [r3] - strh r4, [r3, 0x2] - movs r0, 0x1 - b _080838DA - .align 2, 0 -_080838BC: .4byte gUnknown_80F4468 -_080838C0: - adds r6, 0x4 - movs r0, 0x1 - add r8, r0 - mov r2, r8 - cmp r2, 0x18 - bgt _080838D8 - ldr r0, _080838E8 - adds r1, r6, r0 - movs r4, 0 - ldrsh r1, [r1, r4] - cmp r1, 0x63 - bne _0808386A -_080838D8: - movs r0, 0 -_080838DA: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080838E8: .4byte gUnknown_80F4468 - thumb_func_end sub_808384C - - thumb_func_start sub_80838EC -sub_80838EC: - push {lr} - adds r2, r0, 0 - ldrb r0, [r2] - adds r1, r0, 0 - cmp r1, 0x7F - beq _08083900 - cmp r1, 0 - beq _08083900 - subs r0, 0x1 - strb r0, [r2] -_08083900: - pop {r0} - bx r0 - thumb_func_end sub_80838EC - - thumb_func_start sub_8083904 -sub_8083904: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - str r0, [sp] - mov r10, r1 - ldr r4, [r1, 0x70] - str r4, [sp, 0x4] - adds r5, r4, 0 - adds r5, 0x46 - ldrb r6, [r5] - mov r0, r10 - movs r1, 0x1 - bl sub_8070B6C - lsls r0, 24 - cmp r0, 0 - beq _08083954 - ldr r0, _08083950 - lsls r2, r6, 2 - adds r2, r0 - movs r0, 0 - ldrsh r1, [r2, r0] - lsls r0, r1, 1 - adds r0, r1 - mov r1, r10 - ldrh r1, [r1, 0x4] - adds r0, r1 - ldr r3, [sp] - strh r0, [r3] - movs r4, 0x2 - ldrsh r1, [r2, r4] - lsls r0, r1, 1 - adds r0, r1 - b _08083A6E - .align 2, 0 -_08083950: .4byte gUnknown_80F4448 -_08083954: - ldr r1, [r4, 0x58] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08083960 - b _08083A8C -_08083960: - ldrb r0, [r5] - ldr r1, _080839A0 - lsls r0, 3 - adds r0, r1 - ldr r7, [r0] - movs r3, 0x4 - ldrsh r2, [r0, r3] - str r2, [sp, 0x8] - movs r2, 0x6 - ldrsh r1, [r0, r2] - str r1, [sp, 0xC] - mov r3, r10 - movs r0, 0x4 - ldrsh r3, [r3, r0] - str r3, [sp, 0x10] - mov r1, r10 - movs r2, 0x6 - ldrsh r1, [r1, r2] - str r1, [sp, 0x14] - ldr r0, _080839A4 - ldr r1, [r0] - ldr r3, _080839A8 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _080839B0 - ldr r4, _080839AC - adds r4, r1, r4 - str r4, [sp, 0x18] - movs r0, 0x14 - b _080839D0 - .align 2, 0 -_080839A0: .4byte gUnknown_80F4CC4 -_080839A4: .4byte gUnknown_203B418 -_080839A8: .4byte 0x000037fc -_080839AC: .4byte 0x000135cc -_080839B0: - ldrb r0, [r4, 0x6] - cmp r0, 0 - bne _080839C8 - ldr r2, _080839C4 - adds r2, r1, r2 - str r2, [sp, 0x18] - movs r3, 0x10 - str r3, [sp, 0x1C] - b _080839D2 - .align 2, 0 -_080839C4: .4byte 0x0001358c -_080839C8: - ldr r4, _08083A78 - adds r4, r1, r4 - str r4, [sp, 0x18] - movs r0, 0x4 -_080839D0: - str r0, [sp, 0x1C] -_080839D2: - movs r1, 0 - ldrsh r0, [r7, r1] - cmp r0, 0x63 - beq _08083A46 -_080839DA: - movs r2, 0 - ldrsh r0, [r7, r2] - ldr r3, [sp, 0x8] - muls r0, r3 - ldr r4, [sp, 0x10] - adds r4, r0 - mov r9, r4 - movs r1, 0x2 - ldrsh r0, [r7, r1] - ldr r2, [sp, 0xC] - muls r0, r2 - ldr r3, [sp, 0x14] - adds r3, r0 - mov r8, r3 - movs r6, 0 - ldr r4, [sp, 0x1C] - cmp r6, r4 - bge _08083A3C - ldr r5, [sp, 0x18] -_08083A00: - ldr r4, [r5] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08083A32 - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r0, r9 - bne _08083A32 - movs r2, 0x6 - ldrsh r0, [r4, r2] - cmp r0, r8 - bne _08083A32 - mov r0, r10 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_8071598 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08083A80 -_08083A32: - adds r5, 0x4 - adds r6, 0x1 - ldr r3, [sp, 0x1C] - cmp r6, r3 - blt _08083A00 -_08083A3C: - adds r7, 0x4 - movs r4, 0 - ldrsh r0, [r7, r4] - cmp r0, 0x63 - bne _080839DA -_08083A46: - ldr r2, _08083A7C - ldr r1, [sp, 0x4] - adds r1, 0x46 - ldrb r0, [r1] - lsls r0, 2 - adds r0, r2 - movs r3, 0 - ldrsh r0, [r0, r3] - lsls r0, 1 - mov r4, r10 - ldrh r4, [r4, 0x4] - adds r0, r4 - ldr r3, [sp] - strh r0, [r3] - ldrb r0, [r1] - lsls r0, 2 - adds r0, r2 - movs r4, 0x2 - ldrsh r0, [r0, r4] - lsls r0, 1 -_08083A6E: - mov r1, r10 - ldrh r1, [r1, 0x6] - adds r0, r1 - strh r0, [r3, 0x2] - b _08083A9E - .align 2, 0 -_08083A78: .4byte 0x0001357c -_08083A7C: .4byte gUnknown_80F4448 -_08083A80: - mov r3, r9 - ldr r2, [sp] - strh r3, [r2] - mov r4, r8 - strh r4, [r2, 0x2] - b _08083A9E -_08083A8C: - ldr r0, [sp, 0x4] - adds r0, 0x58 - ldrh r0, [r0] - ldr r1, [sp] - strh r0, [r1] - ldr r0, [sp, 0x4] - adds r0, 0x5A - ldrh r0, [r0] - strh r0, [r1, 0x2] -_08083A9E: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8083904 - - thumb_func_start sub_8083AB0 -sub_8083AB0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - adds r5, r1, 0 - adds r7, r2, 0 - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - ldr r0, _08083AFC - ldr r0, [r0] - ldr r1, _08083B00 - adds r4, r0, r1 - movs r6, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08083AE4 - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _08083AE4 - ldr r6, [r5, 0x70] -_08083AE4: - ldr r5, [r7, 0x70] - cmp r6, 0 - beq _08083B04 - mov r0, sp - adds r1, r6, 0 - bl sub_80709C8 - adds r0, r4, 0 - mov r1, sp - bl sub_80922F4 - b _08083B0E - .align 2, 0 -_08083AFC: .4byte gUnknown_203B418 -_08083B00: .4byte 0x0001ce98 -_08083B04: - ldr r0, _08083C04 - ldr r1, [r0] - adds r0, r4, 0 - bl sub_80922F4 -_08083B0E: - mov r0, sp - adds r1, r5, 0 - bl sub_80709C8 - adds r0, r4, 0 - adds r0, 0xA - mov r1, sp - bl sub_80922F4 - movs r2, 0 - mov r3, r8 - strh r3, [r4, 0x14] - ldr r0, [r5, 0x60] - str r0, [r4, 0x1C] - ldr r0, [r5, 0x18] - str r0, [r4, 0x20] - ldrb r0, [r5, 0x9] - adds r1, r4, 0 - adds r1, 0x2A - strb r0, [r1] - ldrh r0, [r5, 0x10] - strh r0, [r4, 0x24] - ldrb r0, [r5, 0x14] - subs r1, 0x4 - strb r0, [r1] - ldrb r0, [r5, 0x15] - adds r1, 0x1 - strb r0, [r1] - ldrb r1, [r5, 0x16] - adds r0, r4, 0 - adds r0, 0x28 - strb r1, [r0] - ldrb r0, [r5, 0x17] - adds r1, r4, 0 - adds r1, 0x29 - strb r0, [r1] - ldr r0, _08083C08 - ldr r0, [r0] - ldr r1, _08083C0C - adds r0, r1 - ldr r0, [r0] - str r0, [r4, 0x18] - adds r3, r4, 0 - adds r3, 0x2B - strb r2, [r3] - adds r6, r4, 0 - adds r6, 0x2C - strb r2, [r6] - movs r0, 0x2D - adds r0, r4 - mov r12, r0 - strb r2, [r0] - adds r4, 0x2E - strb r2, [r4] - adds r0, r5, 0 - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08083BF8 - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _08083BF8 - adds r1, r5, 0 - adds r1, 0x62 - ldrb r0, [r1] - cmp r0, 0x13 - bne _08083BA4 - ldr r0, _08083C10 - ldrb r0, [r0] - ldrb r2, [r3] - adds r0, r2 - strb r0, [r3] -_08083BA4: - ldrb r0, [r1] - cmp r0, 0x2B - bne _08083BB4 - ldr r0, _08083C14 - ldrb r0, [r0] - ldrb r2, [r3] - adds r0, r2 - strb r0, [r3] -_08083BB4: - ldrb r0, [r1] - cmp r0, 0x21 - bne _08083BC4 - ldr r0, _08083C18 - ldrb r0, [r0] - ldrb r3, [r6] - adds r0, r3 - strb r0, [r6] -_08083BC4: - ldrb r0, [r1] - cmp r0, 0x2B - bne _08083BD4 - ldr r0, _08083C14 - ldrb r0, [r0] - ldrb r2, [r6] - adds r0, r2 - strb r0, [r6] -_08083BD4: - ldrb r0, [r1] - cmp r0, 0x1E - bne _08083BE8 - ldr r0, _08083C1C - ldrb r0, [r0] - mov r3, r12 - ldrb r3, [r3] - adds r0, r3 - mov r2, r12 - strb r0, [r2] -_08083BE8: - ldrb r0, [r1] - cmp r0, 0x22 - bne _08083BF8 - ldr r0, _08083C20 - ldrb r0, [r0] - ldrb r3, [r4] - adds r0, r3 - strb r0, [r4] -_08083BF8: - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08083C04: .4byte gUnknown_80FE6F4 -_08083C08: .4byte gUnknown_203B418 -_08083C0C: .4byte 0x00000644 -_08083C10: .4byte gUnknown_810AC60 -_08083C14: .4byte gUnknown_810AC68 -_08083C18: .4byte gUnknown_810AC62 -_08083C1C: .4byte gUnknown_810AC64 -_08083C20: .4byte gUnknown_810AC66 - thumb_func_end sub_8083AB0 - - thumb_func_start sub_8083C24 -sub_8083C24: - push {lr} - ldr r0, _08083C3C - ldr r0, [r0] - ldr r1, _08083C40 - adds r0, r1 - movs r2, 0x14 - ldrsh r1, [r0, r2] - ldr r0, _08083C44 - cmp r1, r0 - ble _08083C48 - movs r0, 0 - b _08083C4A - .align 2, 0 -_08083C3C: .4byte gUnknown_203B418 -_08083C40: .4byte 0x0001ce98 -_08083C44: .4byte 0x00000225 -_08083C48: - movs r0, 0x1 -_08083C4A: - pop {r1} - bx r1 - thumb_func_end sub_8083C24 - - thumb_func_start sub_8083C50 -sub_8083C50: - push {lr} - ldr r0, _08083C74 - ldr r0, [r0] - ldr r1, _08083C78 - adds r0, r1 - movs r2, 0x14 - ldrsh r1, [r0, r2] - ldr r0, _08083C7C - cmp r1, r0 - beq _08083C70 - adds r0, 0x3 - cmp r1, r0 - beq _08083C70 - subs r0, 0x2 - cmp r1, r0 - bne _08083C80 -_08083C70: - movs r0, 0x1 - b _08083C82 - .align 2, 0 -_08083C74: .4byte gUnknown_203B418 -_08083C78: .4byte 0x0001ce98 -_08083C7C: .4byte 0x00000227 -_08083C80: - movs r0, 0 -_08083C82: - pop {r1} - bx r1 - thumb_func_end sub_8083C50 - - thumb_func_start sub_8083C88 -sub_8083C88: - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r4, _08083CC4 - ldr r0, [r4] - ldr r1, _08083CC8 - adds r5, r0, r1 - ldr r1, _08083CCC - adds r0, r1 - ldrb r0, [r0] - bl sub_80900F4 - lsls r0, 24 - cmp r0, 0 - bne _08083CB6 - ldr r0, [r4] - ldr r1, _08083CD0 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08083CC0 - cmp r6, 0 - bne _08083CC0 -_08083CB6: - movs r0, 0x14 - ldrsh r1, [r5, r0] - ldr r0, _08083CD4 - cmp r1, r0 - beq _08083CD8 -_08083CC0: - movs r0, 0x1 - b _08083CDA - .align 2, 0 -_08083CC4: .4byte gUnknown_203B418 -_08083CC8: .4byte 0x0001ce98 -_08083CCC: .4byte 0x00000644 -_08083CD0: .4byte 0x0000065c -_08083CD4: .4byte 0x00000227 -_08083CD8: - movs r0, 0 -_08083CDA: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8083C88 - - thumb_func_start sub_8083CE0 -sub_8083CE0: - push {lr} - lsls r0, 24 - cmp r0, 0 - beq _08083CF2 - ldr r0, _08083D00 - movs r1, 0x1A - ldrsh r0, [r0, r1] - cmp r0, 0x1 - ble _08083CFC -_08083CF2: - ldr r0, _08083D04 - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 -_08083CFC: - pop {r0} - bx r0 - .align 2, 0 -_08083D00: .4byte gUnknown_202EE10 -_08083D04: .4byte 0x0000012d - thumb_func_end sub_8083CE0 - - thumb_func_start sub_8083D08 -sub_8083D08: - push {lr} - movs r0, 0x97 - lsls r0, 1 - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 - pop {r0} - bx r0 - thumb_func_end sub_8083D08 - - thumb_func_start sub_8083D1C -sub_8083D1C: - push {lr} - ldr r0, _08083D2C - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 - pop {r0} - bx r0 - .align 2, 0 -_08083D2C: .4byte 0x00000133 - thumb_func_end sub_8083D1C - - thumb_func_start sub_8083D30 -sub_8083D30: - push {lr} - ldr r0, _08083D40 - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 - pop {r0} - bx r0 - .align 2, 0 -_08083D40: .4byte 0x0000012f - thumb_func_end sub_8083D30 - - thumb_func_start sub_8083D44 -sub_8083D44: - push {lr} - movs r0, 0x98 - lsls r0, 1 - movs r1, 0x80 - lsls r1, 1 - bl sub_800C074 - pop {r0} - bx r0 - thumb_func_end sub_8083D44 - - thumb_func_start sub_8083D58 -sub_8083D58: - push {lr} - movs r1, 0x80 - lsls r1, 1 - movs r0, 0xC8 - bl sub_800C074 - pop {r0} - bx r0 - thumb_func_end sub_8083D58 - - thumb_func_start sub_8083D68 -sub_8083D68: - push {lr} - movs r1, 0x80 - lsls r1, 1 - movs r0, 0xCF - bl sub_800C074 - pop {r0} - bx r0 - thumb_func_end sub_8083D68 - - thumb_func_start sub_8083D78 -sub_8083D78: - push {lr} - movs r1, 0x80 - lsls r1, 1 - movs r0, 0xD3 - bl sub_800C074 - pop {r0} - bx r0 - thumb_func_end sub_8083D78 - - thumb_func_start sub_8083D88 -sub_8083D88: - push {lr} - movs r1, 0x80 - lsls r1, 1 - movs r0, 0xCC - bl sub_800C074 - pop {r0} - bx r0 - thumb_func_end sub_8083D88 - - thumb_func_start sub_8083D98 -sub_8083D98: - push {lr} - movs r0, 0x33 - bl sub_8083E88 - ldr r2, _08083DCC - ldr r0, [r2] - ldr r1, _08083DD0 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - ldr r3, _08083DD4 - adds r0, r3 - strb r1, [r0] - ldr r0, [r2] - adds r3, 0x27 - adds r0, r3 - strb r1, [r0] - ldr r0, [r2] - ldr r1, _08083DD8 - adds r0, r1 - ldr r1, _08083DDC - strh r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_08083DCC: .4byte gUnknown_203B418 -_08083DD0: .4byte 0x0000066f -_08083DD4: .4byte 0x00000672 -_08083DD8: .4byte 0x0000066a -_08083DDC: .4byte 0x000003e7 - thumb_func_end sub_8083D98 - - thumb_func_start sub_8083DE0 -sub_8083DE0: - push {lr} - movs r0, 0x34 - bl sub_8083E88 - ldr r2, _08083E14 - ldr r0, [r2] - ldr r1, _08083E18 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - ldr r3, _08083E1C - adds r0, r3 - strb r1, [r0] - ldr r0, [r2] - adds r3, 0x27 - adds r0, r3 - strb r1, [r0] - ldr r0, [r2] - ldr r1, _08083E20 - adds r0, r1 - ldr r1, _08083E24 - strh r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_08083E14: .4byte gUnknown_203B418 -_08083E18: .4byte 0x0000066f -_08083E1C: .4byte 0x00000672 -_08083E20: .4byte 0x0000066a -_08083E24: .4byte 0x000003e7 - thumb_func_end sub_8083DE0 - - thumb_func_start sub_8083E28 -sub_8083E28: - push {lr} - movs r1, 0x80 - lsls r1, 1 - movs r0, 0xCF - bl sub_800C074 - pop {r0} - bx r0 - thumb_func_end sub_8083E28 - - thumb_func_start sub_8083E38 -sub_8083E38: - push {lr} - lsls r0, 16 - lsrs r2, r0, 16 - ldr r0, _08083E54 - cmp r2, r0 - beq _08083E4E - movs r1, 0x80 - lsls r1, 1 - adds r0, r2, 0 - bl sub_800C074 -_08083E4E: - pop {r0} - bx r0 - .align 2, 0 -_08083E54: .4byte 0x000003e5 - thumb_func_end sub_8083E38 - - thumb_func_start sub_8083E58 -sub_8083E58: - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _08083E70 - cmp r1, r0 - beq _08083E6A - adds r0, r1, 0 - bl sub_800C298 -_08083E6A: - pop {r0} - bx r0 - .align 2, 0 -_08083E70: .4byte 0x000003e5 - thumb_func_end sub_8083E58 - - thumb_func_start sub_8083E74 -sub_8083E74: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_800C5D0 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_8083E74 - - thumb_func_start sub_8083E88 -sub_8083E88: - ldr r1, _08083E9C - ldr r1, [r1] - ldr r3, _08083EA0 - adds r2, r1, r3 - movs r3, 0 - strh r0, [r2] - ldr r0, _08083EA4 - adds r1, r0 - strh r3, [r1] - bx lr - .align 2, 0 -_08083E9C: .4byte gUnknown_203B418 -_08083EA0: .4byte 0x0001ceda -_08083EA4: .4byte 0x0001ced4 - thumb_func_end sub_8083E88 - - thumb_func_start sub_8083EA8 -sub_8083EA8: - push {r4,r5,lr} - lsls r0, 16 - lsrs r0, 16 - ldr r2, _08083ECC - ldr r2, [r2] - movs r4, 0x80 - lsls r4, 8 - adds r3, r4, 0 - ldr r5, _08083ED0 - adds r4, r2, r5 - orrs r0, r3 - strh r0, [r4] - ldr r0, _08083ED4 - adds r2, r0 - strh r1, [r2] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08083ECC: .4byte gUnknown_203B418 -_08083ED0: .4byte 0x0001ceda -_08083ED4: .4byte 0x0001ced4 - thumb_func_end sub_8083EA8 - - thumb_func_start sub_8083ED8 -sub_8083ED8: - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_80118C4 - ldr r0, _08083F00 - ldr r1, [r0] - ldr r2, _08083F04 - adds r0, r1, r2 - ldr r2, _08083F08 - strh r2, [r0] - ldr r3, _08083F0C - adds r0, r1, r3 - strh r2, [r0] - ldr r0, _08083F10 - adds r1, r0 - strh r2, [r1] - pop {r0} - bx r0 - .align 2, 0 -_08083F00: .4byte gUnknown_203B418 -_08083F04: .4byte 0x0001ced6 -_08083F08: .4byte 0x000003e7 -_08083F0C: .4byte 0x0001ced8 -_08083F10: .4byte 0x0001ceda - thumb_func_end sub_8083ED8 - - thumb_func_start sub_8083F14 -sub_8083F14: - push {lr} - bl sub_8083F34 - bl sub_8011924 - pop {r0} - bx r0 - thumb_func_end sub_8083F14 - - thumb_func_start sub_8083F24 -sub_8083F24: - push {lr} - bl sub_800C068 - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - thumb_func_end sub_8083F24 - - thumb_func_start sub_8083F34 -sub_8083F34: - ldr r0, _08083F4C - ldr r0, [r0] - ldr r1, _08083F50 - adds r0, r1 - movs r1, 0 - str r1, [r0] - str r1, [r0, 0x4] - ldr r1, _08083F54 - strh r1, [r0, 0xA] - strh r1, [r0, 0xC] - strh r1, [r0, 0xE] - bx lr - .align 2, 0 -_08083F4C: .4byte gUnknown_203B418 -_08083F50: .4byte 0x0001cecc -_08083F54: .4byte 0x000003e7 - thumb_func_end sub_8083F34 - - thumb_func_start sub_8083F58 -sub_8083F58: - push {r4,lr} - ldr r0, _08083F7C - ldr r2, [r0] - ldr r0, _08083F80 - adds r4, r2, r0 - ldr r1, _08083F84 - adds r3, r2, r1 - ldrh r1, [r3] - ldr r0, _08083F88 - cmp r1, r0 - bne _08083FB2 - ldr r1, _08083F8C - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08083F90 - movs r1, 0x12 - b _08083FB2 - .align 2, 0 -_08083F7C: .4byte gUnknown_203B418 -_08083F80: .4byte 0x0001cecc -_08083F84: .4byte 0x0000066a -_08083F88: .4byte 0x000003e7 -_08083F8C: .4byte 0x0000066f -_08083F90: - ldr r1, _08083FA0 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08083FA4 - movs r1, 0x80 - b _08083FB2 - .align 2, 0 -_08083FA0: .4byte 0x00000672 -_08083FA4: - ldr r1, _08083FC4 - adds r0, r2, r1 - ldrb r0, [r0] - movs r1, 0x11 - cmp r0, 0 - bne _08083FB2 - ldrh r1, [r4, 0xE] -_08083FB2: - ldr r0, [r4] - cmp r0, 0x4 - bne _08083FC8 - ldrh r0, [r4, 0xC] - cmp r1, r0 - beq _08083FDA - movs r0, 0x2 - b _08083FD6 - .align 2, 0 -_08083FC4: .4byte 0x00000699 -_08083FC8: - ldr r2, _08083FEC - cmp r1, r2 - beq _08083FDA - ldrh r0, [r4, 0xA] - cmp r0, r2 - bne _08083FDA - movs r0, 0x1 -_08083FD6: - str r0, [r4] - strh r1, [r4, 0xA] -_08083FDA: - ldr r0, [r4] - cmp r0, 0x4 - bhi _08084084 - lsls r0, 2 - ldr r1, _08083FF0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08083FEC: .4byte 0x000003e7 -_08083FF0: .4byte _08083FF4 - .align 2, 0 -_08083FF4: - .4byte _08084084 - .4byte _08084008 - .4byte _08084050 - .4byte _0808405E - .4byte _08084084 -_08084008: - ldrh r1, [r4, 0xA] - ldr r0, _08084014 - cmp r1, r0 - bne _08084018 - movs r0, 0 - b _08084040 - .align 2, 0 -_08084014: .4byte 0x000003e7 -_08084018: - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _08084030 - ldr r0, _0808402C - ands r0, r1 - bl sub_800BDFC - b _0808403A - .align 2, 0 -_0808402C: .4byte 0x00007fff -_08084030: - ldr r0, _08084048 - ands r0, r1 - ldrh r1, [r4, 0x8] - bl sub_800BE8C -_0808403A: - ldrh r0, [r4, 0xA] - strh r0, [r4, 0xC] - movs r0, 0x4 -_08084040: - str r0, [r4] - ldr r0, _0808404C - strh r0, [r4, 0xA] - b _08084084 - .align 2, 0 -_08084048: .4byte 0x00007fff -_0808404C: .4byte 0x000003e7 -_08084050: - movs r0, 0x1E - bl sub_800BFD0 - movs r0, 0x1E - str r0, [r4, 0x4] - movs r0, 0x3 - b _08084082 -_0808405E: - ldr r0, [r4, 0x4] - cmp r0, 0 - beq _0808406C - subs r0, 0x1 - str r0, [r4, 0x4] - cmp r0, 0 - bne _08084084 -_0808406C: - ldrh r1, [r4, 0xA] - ldr r0, _0808407C - cmp r1, r0 - bne _08084080 - bl sub_800BF80 - movs r0, 0 - b _08084082 - .align 2, 0 -_0808407C: .4byte 0x000003e7 -_08084080: - movs r0, 0x1 -_08084082: - str r0, [r4] -_08084084: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8083F58 - - thumb_func_start sub_808408C -sub_808408C: - ldr r2, _0808409C - movs r1, 0x1 - orrs r1, r0 - ldr r0, _080840A0 - ands r0, r1 - str r0, [r2] - bx lr - .align 2, 0 -_0808409C: .4byte gUnknown_203B458 -_080840A0: .4byte 0x00ffffff - thumb_func_end sub_808408C - - thumb_func_start sub_80840A4 -sub_80840A4: - ldr r3, _080840C8 - ldr r0, [r3] - ldr r2, _080840CC - adds r1, r0, 0 - muls r1, r2 - adds r1, 0x1 - lsrs r0, r1, 16 - muls r1, r2 - adds r1, 0x1 - str r1, [r3] - ldr r2, _080840D0 - ands r1, r2 - orrs r0, r1 - ldr r1, _080840D4 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - bx lr - .align 2, 0 -_080840C8: .4byte gUnknown_203B458 -_080840CC: .4byte 0x5d588b65 -_080840D0: .4byte 0xffff0000 -_080840D4: .4byte 0x00ffffff - thumb_func_end sub_80840A4 - - thumb_func_start sub_80840D8 -sub_80840D8: - ldr r2, _080840E4 - movs r1, 0x1 - orrs r1, r0 - str r1, [r2] - bx lr - .align 2, 0 -_080840E4: .4byte gUnknown_203B454 - thumb_func_end sub_80840D8 - - thumb_func_start sub_80840E8 -sub_80840E8: - ldr r2, _080840F8 - ldr r1, [r2] - ldr r0, _080840FC - muls r0, r1 - adds r0, 0x1 - str r0, [r2] - lsrs r0, 16 - bx lr - .align 2, 0 -_080840F8: .4byte gUnknown_203B454 -_080840FC: .4byte 0x5d588b65 - thumb_func_end sub_80840E8 - - thumb_func_start sub_8084100 -sub_8084100: - push {r4,lr} - adds r4, r0, 0 - bl sub_80840E8 - ldr r1, _08084118 - ands r0, r1 - muls r0, r4 - asrs r0, 16 - ands r0, r1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08084118: .4byte 0x0000ffff - thumb_func_end sub_8084100 - - thumb_func_start sub_808411C -sub_808411C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - cmp r5, r4 - beq _0808413C - cmp r5, r4 - blt _08084134 - subs r0, r5, r4 - bl sub_8084100 - adds r0, r4 - b _0808413C -_08084134: - subs r0, r4, r5 - bl sub_8084100 - adds r0, r5 -_0808413C: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_808411C - - thumb_func_start sub_8084144 -sub_8084144: - push {r4,lr} - adds r4, r0, 0 - movs r0, 0x64 - bl sub_8084100 - cmp r0, r4 - blt _08084156 - movs r0, 0 - b _08084158 -_08084156: - movs r0, 0x1 -_08084158: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8084144 - - thumb_func_start sub_8084160 -sub_8084160: - push {r4,lr} - adds r4, r0, 0 - movs r0, 0x64 - bl sub_8084100 - cmp r0, r4 - blt _08084172 - movs r0, 0 - b _08084174 -_08084172: - movs r0, 0x1 -_08084174: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8084160 - - thumb_func_start sub_808417C -sub_808417C: - push {r4-r6,lr} - adds r5, r0, 0 - lsls r2, 24 - lsrs r6, r2, 24 - movs r2, 0 - ldrsh r0, [r1, r2] - movs r2, 0x2 - ldrsh r1, [r1, r2] - bl sub_808411C - adds r4, r0, 0 - adds r0, r5, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080841DC - adds r0, r5, 0 - bl sub_80450F8 - cmp r0, 0x1 - bne _080841DC - cmp r6, 0 - beq _080841DC - adds r0, r5, 0 - movs r1, 0x12 - bl sub_80718D8 - lsls r0, 24 - cmp r0, 0 - beq _080841C4 - cmp r4, 0x7F - beq _080841C4 - lsrs r0, r4, 31 - adds r0, r4, r0 - asrs r4, r0, 1 -_080841C4: - adds r0, r5, 0 - movs r1, 0x14 - bl sub_8071824 - lsls r0, 24 - cmp r0, 0 - beq _080841DC - cmp r4, 0x7F - beq _080841DC - cmp r4, 0x4 - ble _080841DC - movs r4, 0x5 -_080841DC: - cmp r4, 0 - bgt _080841E2 - movs r4, 0x1 -_080841E2: - adds r0, r4, 0 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_808417C - - thumb_func_start sub_80841EC -sub_80841EC: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0xC4 - add r0, sp, 0x60 - mov r8, r0 - movs r1, 0 - movs r2, 0x60 - bl memset - movs r0, 0x6 - str r0, [sp, 0x64] - add r1, sp, 0x68 - movs r6, 0 - movs r0, 0x4 - strh r0, [r1] - movs r2, 0x3 - strh r2, [r1, 0x2] - add r1, sp, 0x6C - movs r0, 0x16 - strh r0, [r1] - mov r0, sp - adds r0, 0x6E - movs r5, 0xE - movs r1, 0xE - strh r1, [r0] - add r0, sp, 0x70 - strh r1, [r0] - add r4, sp, 0xC0 - str r4, [sp, 0x74] - str r2, [sp, 0x7C] - add r0, sp, 0x90 - str r2, [r0, 0x4] - add r0, sp, 0xA8 - str r2, [r0, 0x4] - mov r0, sp - mov r1, r8 - movs r2, 0x60 - bl memcpy - movs r0, 0x1 - strb r0, [r4] - strb r6, [r4, 0x1] - strb r5, [r4, 0x2] - strb r6, [r4, 0x3] - mov r1, sp - movs r0, 0x14 - strh r0, [r1, 0xA] - mov r0, sp - movs r1, 0x1 - bl sub_803ECB4 - ldr r0, _0808426C - ldr r0, [r0] - ldr r1, _08084270 - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r0, _08084274 - cmp r1, r0 - ble _08084278 - bl sub_8083DE0 - b _0808427C - .align 2, 0 -_0808426C: .4byte gUnknown_203B418 -_08084270: .4byte 0x0001ceac -_08084274: .4byte 0x00000225 -_08084278: - bl sub_8083D98 -_0808427C: - ldr r0, _080842B8 - ldr r1, [r0] - ldr r0, _080842BC - ldr r2, [r0] - ldr r0, _080842C0 - adds r2, r0 - movs r0, 0 - bl sub_8094558 - mov r4, sp -_08084290: - movs r0, 0x36 - bl sub_803E668 - bl sub_8083F58 - ldrh r1, [r4, 0xA] - movs r2, 0xA - ldrsh r0, [r4, r2] - cmp r0, 0x3 - ble _080842C4 - subs r0, r1, 0x1 - strh r0, [r4, 0xA] - movs r0, 0xA0 - strb r0, [r4] - mov r0, sp - movs r1, 0x1 - bl sub_803ECB4 - b _08084290 - .align 2, 0 -_080842B8: .4byte gUnknown_80FE6E8 -_080842BC: .4byte gUnknown_203B418 -_080842C0: .4byte 0x0001ce98 -_080842C4: - bl sub_8094D14 - lsls r0, 24 - cmp r0, 0 - bne _080842DA - ldr r0, _080842EC - ldrh r1, [r0, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08084290 -_080842DA: - bl sub_8083D08 - add sp, 0xC4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080842EC: .4byte gUnknown_20255F0 - thumb_func_end sub_80841EC - - thumb_func_start sub_80842F0 -sub_80842F0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r1, _0808436C - ldr r0, [r1] - ldr r2, _08084370 - adds r0, r2 - movs r2, 0 - strb r2, [r0] - ldr r0, [r1] - ldr r3, _08084374 - adds r0, r3 - strb r2, [r0] - ldr r0, [r1] - movs r5, 0xCF - lsls r5, 3 - adds r0, r5 - ldrb r0, [r0] - cmp r0, 0x2 - bne _080843AE - movs r6, 0 - ldr r0, _08084378 - mov r8, r0 - movs r7, 0x1 -_08084320: - lsls r0, r6, 24 - lsrs r0, 24 - bl sub_8096AB4 - adds r4, r0, 0 - ldrb r0, [r4] - cmp r0, 0x6 - bne _080843A8 - ldr r3, _0808436C - ldr r5, [r3] - ldr r1, _0808437C - adds r0, r5, r1 - ldrh r0, [r0] - ldrh r2, [r4, 0x4] - mov r1, r8 - ands r1, r0 - mov r0, r8 - ands r0, r2 - cmp r1, r0 - bne _080843A8 - ldrb r0, [r4, 0x1] - cmp r0, 0x3 - beq _080843A8 - cmp r0, 0x4 - bne _08084380 - ldrb r1, [r4, 0x10] - ldr r2, _08084374 - adds r0, r5, r2 - strb r1, [r0] - ldr r2, [r3] - ldrh r1, [r4, 0xE] - movs r3, 0xD1 - lsls r3, 3 - adds r0, r2, r3 - strh r1, [r0] - strb r7, [r2, 0x9] - b _080843A8 - .align 2, 0 -_0808436C: .4byte gUnknown_203B418 -_08084370: .4byte 0x00000677 -_08084374: .4byte 0x0000068a -_08084378: .4byte 0x0000ffff -_0808437C: .4byte 0x00000644 -_08084380: - cmp r0, 0 - beq _0808438C - cmp r0, 0x2 - beq _0808438C - cmp r0, 0x1 - bne _080843A8 -_0808438C: - ldr r2, [r3] - ldrh r0, [r4, 0xE] - movs r5, 0xD1 - lsls r5, 3 - adds r1, r2, r5 - strh r0, [r1] - ldrb r0, [r4, 0x1] - cmp r0, 0x2 - bne _080843A4 - ldr r1, _080843B8 - adds r0, r2, r1 - strb r7, [r0] -_080843A4: - ldr r0, [r3] - strb r7, [r0, 0x9] -_080843A8: - adds r6, 0x1 - cmp r6, 0x7 - ble _08084320 -_080843AE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080843B8: .4byte 0x00000677 - thumb_func_end sub_80842F0 - - thumb_func_start sub_80843BC -sub_80843BC: - push {r4-r6,lr} - lsls r0, 16 - asrs r6, r0, 16 - movs r4, 0 - ldr r5, _08084418 -_080843C6: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096AB4 - adds r3, r0, 0 - ldrb r0, [r3] - cmp r0, 0x6 - bne _0808440C - ldr r0, _0808441C - ldr r0, [r0] - ldr r1, _08084420 - adds r0, r1 - ldrh r0, [r0] - ldrh r2, [r3, 0x4] - adds r1, r5, 0 - ands r1, r0 - adds r0, r5, 0 - ands r0, r2 - cmp r1, r0 - bne _0808440C - ldrb r0, [r3, 0x1] - cmp r0, 0 - beq _08084400 - cmp r0, 0x4 - beq _08084400 - cmp r0, 0x2 - beq _08084400 - cmp r0, 0x1 - bne _0808440C -_08084400: - movs r1, 0xE - ldrsh r0, [r3, r1] - cmp r6, r0 - bne _0808440C - movs r0, 0x8 - strb r0, [r3] -_0808440C: - adds r4, 0x1 - cmp r4, 0x7 - ble _080843C6 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08084418: .4byte 0x0000ffff -_0808441C: .4byte gUnknown_203B418 -_08084420: .4byte 0x00000644 - thumb_func_end sub_80843BC - - thumb_func_start sub_8084424 -sub_8084424: - push {r4,lr} - movs r4, 0 -_08084428: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096AB4 - adds r1, r0, 0 - ldrb r0, [r1] - cmp r0, 0x8 - bne _0808443C - movs r0, 0x9 - strb r0, [r1] -_0808443C: - adds r4, 0x1 - cmp r4, 0x7 - ble _08084428 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8084424 - - thumb_func_start sub_8084448 -sub_8084448: - push {r4-r7,lr} - adds r5, r0, 0 - ldr r7, [r5, 0x70] - ldr r4, _0808447C - bl sub_8083600 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r5, 0 - bl sub_8070BC0 - lsls r0, 24 - cmp r0, 0 - bne _08084484 - ldr r0, _08084480 - b _080844F0 - .align 2, 0 -_0808447C: .4byte gUnknown_202DF98 -_08084480: .4byte gUnknown_80FA464 -_08084484: - ldr r4, _080844FC - ldr r0, [r4] - ldr r6, _08084500 - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0 - beq _08084540 - ldr r0, _08084504 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - beq _080844A4 - b _080845D4 -_080844A4: - ldr r0, _08084508 - ldr r1, [r4] - adds r1, r6 - ldrb r1, [r1] - movs r2, 0 - bl sub_8090DC4 - movs r3, 0 - ldr r0, _0808450C - adds r6, r0, 0 - ldr r2, [r6] -_080844BA: - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080844E2 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080844E2 - movs r0, 0x18 - ands r0, r1 - cmp r0, 0x18 - beq _080844E2 - ldr r0, [r4] - ldr r1, _08084500 - adds r0, r1 - ldrb r1, [r2, 0x2] - ldrb r0, [r0] - cmp r1, r0 - beq _080844EA -_080844E2: - adds r2, 0x4 - adds r3, 0x1 - cmp r3, 0x13 - ble _080844BA -_080844EA: - cmp r3, 0x14 - bne _08084514 - ldr r0, _08084510 -_080844F0: - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _080845D4 - .align 2, 0 -_080844FC: .4byte gUnknown_203B418 -_08084500: .4byte 0x0000068a -_08084504: .4byte gUnknown_80FA32C -_08084508: .4byte gUnknown_202DE58 -_0808450C: .4byte gUnknown_203B460 -_08084510: .4byte gUnknown_80FA448 -_08084514: - lsls r1, r3, 2 - ldr r0, [r6] - adds r1, r0 - movs r0, 0 - strb r0, [r1, 0x2] - strb r0, [r1, 0x1] - strb r0, [r1] - bl sub_80910B4 - ldr r0, _08084538 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - ldr r0, _0808453C - b _0808455E - .align 2, 0 -_08084538: .4byte gUnknown_80FA2B0 -_0808453C: .4byte gUnknown_80FA370 -_08084540: - ldr r0, _080845B0 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - bne _080845D4 - ldr r0, _080845B4 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - ldr r0, _080845B8 -_0808455E: - ldr r4, [r0] - movs r1, 0x2 - ldrsh r0, [r7, r1] - bl sub_80843BC - adds r0, r5, 0x4 - bl sub_8042A34 - movs r1, 0x87 - lsls r1, 2 - adds r0, r5, 0 - movs r2, 0 - bl sub_8068FE0 - movs r0, 0x1 - bl sub_804178C - ldr r5, _080845BC -_08084582: - movs r0, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - bne _080845C4 - ldr r0, _080845C0 - ldr r1, [r0] - movs r0, 0 - movs r2, 0 - bl sub_8052B8C - adds r1, r0, 0 - cmp r1, 0x1 - bne _08084582 - ldr r0, [r5] - strb r1, [r0, 0x4] - ldr r1, [r5] - movs r0, 0x2 - strb r0, [r1, 0x11] - b _080845D4 - .align 2, 0 -_080845B0: .4byte gUnknown_80FA2F0 -_080845B4: .4byte gUnknown_80FA260 -_080845B8: .4byte gUnknown_80FA36C -_080845BC: .4byte gUnknown_203B418 -_080845C0: .4byte gUnknown_80FA394 -_080845C4: - ldr r0, _080845DC - ldr r1, [r0] - movs r0, 0 - movs r2, 0 - bl sub_8052B8C - cmp r0, 0x1 - bne _08084582 -_080845D4: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080845DC: .4byte gUnknown_80FA3B8 - thumb_func_end sub_8084448 - - thumb_func_start sub_80845E0 -sub_80845E0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r6, r0, 0 - ldr r0, [r6, 0x70] - mov r8, r0 - movs r7, 0 - movs r1, 0 - mov r9, r1 - ldr r4, _08084620 - bl sub_8083600 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0 - bl sub_8045B94 - adds r4, 0x50 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r6, 0 - bl sub_8070BC0 - lsls r0, 24 - cmp r0, 0 - bne _08084630 - ldr r0, _08084624 - b _080846B4 - .align 2, 0 -_08084620: .4byte gUnknown_202DF98 -_08084624: .4byte gUnknown_80FA530 -_08084628: - adds r7, r4, 0 - ldr r2, [r7, 0x70] - mov r9, r2 - b _08084674 -_08084630: - movs r5, 0 -_08084632: - ldr r0, _08084660 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08084664 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0808466E - ldr r0, [r4, 0x70] - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x4A - beq _0808465A - cmp r0, 0x47 - bne _08084668 -_0808465A: - movs r0, 0x1 - b _0808466A - .align 2, 0 -_08084660: .4byte gUnknown_203B418 -_08084664: .4byte 0x0001357c -_08084668: - movs r0, 0 -_0808466A: - cmp r0, 0 - bne _08084628 -_0808466E: - adds r5, 0x1 - cmp r5, 0x3 - ble _08084632 -_08084674: - cmp r7, 0 - bne _08084680 - ldr r0, _0808467C - b _080846B4 - .align 2, 0 -_0808467C: .4byte gUnknown_80FA52C -_08084680: - ldr r0, _0808469C - adds r1, r7, 0 - movs r2, 0 - bl sub_8045B94 - adds r0, r7, 0 - bl sub_8070BC0 - lsls r0, 24 - cmp r0, 0 - bne _080846A4 - ldr r0, _080846A0 - b _080846B4 - .align 2, 0 -_0808469C: .4byte gUnknown_202E038 -_080846A0: .4byte gUnknown_80FA54C -_080846A4: - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8045990 - lsls r0, 24 - cmp r0, 0 - bne _080846C4 - ldr r0, _080846C0 -_080846B4: - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - b _08084768 - .align 2, 0 -_080846C0: .4byte gUnknown_80FA500 -_080846C4: - ldr r0, _08084744 - ldr r1, [r0] - movs r0, 0 - movs r2, 0x1 - bl PrintFieldMessage - mov r1, r8 - movs r2, 0x2 - ldrsh r0, [r1, r2] - bl sub_80843BC - ldr r5, _08084748 - ldr r0, [r5] - ldr r1, _0808474C - adds r0, r1 - ldrb r1, [r0] - mov r0, r9 - adds r0, 0x40 - strb r1, [r0] - adds r0, r6, 0x4 - bl sub_8042A34 - adds r0, r7, 0x4 - bl sub_8042A34 - movs r4, 0x87 - lsls r4, 2 - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8068FE0 - adds r0, r7, 0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8068FE0 - movs r0, 0x1 - bl sub_804178C - ldr r4, _08084750 -_08084716: - movs r0, 0 - ldr r1, [r4] - movs r2, 0x1 - bl sub_8052B8C - cmp r0, 0x1 - bne _08084758 - ldr r0, _08084754 - ldr r1, [r0] - movs r0, 0 - movs r2, 0 - bl sub_8052B8C - adds r1, r0, 0 - cmp r1, 0x1 - bne _08084716 - ldr r0, [r5] - strb r1, [r0, 0x4] - ldr r1, [r5] - movs r0, 0x2 - strb r0, [r1, 0x11] - b _08084768 - .align 2, 0 -_08084744: .4byte gUnknown_80FA4D4 -_08084748: .4byte gUnknown_203B418 -_0808474C: .4byte 0x00000644 -_08084750: .4byte gUnknown_80FA4D8 -_08084754: .4byte gUnknown_80FA394 -_08084758: - ldr r0, _08084774 - ldr r1, [r0] - movs r0, 0 - movs r2, 0 - bl sub_8052B8C - cmp r0, 0x1 - bne _08084716 -_08084768: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08084774: .4byte gUnknown_80FA3B8 - thumb_func_end sub_80845E0 - - thumb_func_start sub_8084778 -sub_8084778: - push {r4,lr} - ldr r0, _080847B8 - ldr r1, _080847BC - bl strcpy - movs r4, 0 -_08084784: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096AB4 - adds r1, r0, 0 - ldrb r0, [r1] - cmp r0, 0x6 - bne _080847C8 - ldr r0, _080847C0 - ldr r0, [r0] - ldr r2, _080847C4 - adds r0, r2 - ldrb r0, [r0] - ldrb r2, [r1, 0x4] - cmp r0, r2 - bne _080847C8 - ldrb r0, [r1, 0x1] - cmp r0, 0x2 - bne _080847C8 - movs r0, 0xE - ldrsh r1, [r1, r0] - ldr r0, _080847B8 - bl sub_808D908 - b _080847CE - .align 2, 0 -_080847B8: .4byte gUnknown_202E088 -_080847BC: .4byte gUnknown_8107224 -_080847C0: .4byte gUnknown_203B418 -_080847C4: .4byte 0x00000644 -_080847C8: - adds r4, 0x1 - cmp r4, 0x7 - ble _08084784 -_080847CE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8084778 - - thumb_func_start sub_80847D4 -sub_80847D4: - push {r4,r5,lr} - ldr r2, _08084820 - ldr r0, [r2] - ldr r1, _08084824 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - ldr r2, _08084828 - adds r0, r2 - strb r1, [r0] - bl sub_8040A84 - movs r4, 0 - ldr r0, _0808482C - ldrb r0, [r0] - cmp r0, 0 - beq _08084846 - movs r3, 0 -_080847FA: - ldr r0, _08084820 - ldr r0, [r0] - ldr r5, _08084830 - adds r0, r5 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r1, 0 - subs r0, 0x1C - cmp r0, 0x15 - bhi _08084810 - movs r1, 0x1B -_08084810: - ldr r2, _0808482C - adds r0, r3, r2 - ldrb r5, [r0] - cmp r1, r5 - bne _08084834 - bl sub_8084854 - b _08084846 - .align 2, 0 -_08084820: .4byte gUnknown_203B418 -_08084824: .4byte 0x00003a0d -_08084828: .4byte 0x0001356c -_0808482C: .4byte gUnknown_8107234 -_08084830: .4byte 0x00003a14 -_08084834: - adds r3, 0x8 - adds r4, 0x1 - ldr r0, _08084850 - cmp r4, r0 - bgt _08084846 - adds r0, r3, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080847FA -_08084846: - bl sub_8097FF8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08084850: .4byte 0x000003e6 - thumb_func_end sub_80847D4 - - thumb_func_start sub_8084854 -sub_8084854: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _08084874 - ldr r2, [r5] - movs r1, 0xCF - lsls r1, 3 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0808487C - ldrb r1, [r4, 0x5] - ldr r3, _08084878 - adds r0, r2, r3 - strb r1, [r0] - b _080848C8 - .align 2, 0 -_08084874: .4byte gUnknown_203B418 -_08084878: .4byte 0x00003a0d -_0808487C: - ldrb r0, [r4, 0x4] - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - beq _08084898 - ldr r0, [r5] - ldrb r1, [r4, 0x5] - ldr r2, _08084894 - adds r0, r2 - strb r1, [r0] - b _080848C8 - .align 2, 0 -_08084894: .4byte 0x00003a0d -_08084898: - ldrb r0, [r4, 0x2] - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - beq _080848B4 - ldr r0, [r5] - ldrb r1, [r4, 0x3] - ldr r3, _080848B0 - adds r0, r3 - strb r1, [r0] - b _080848C8 - .align 2, 0 -_080848B0: .4byte 0x00003a0d -_080848B4: - ldr r0, [r5] - ldrb r1, [r4, 0x1] - ldr r2, _080848E0 - adds r0, r2 - strb r1, [r0] - ldrb r0, [r4, 0x2] - cmp r0, 0x40 - beq _080848C8 - bl sub_8097FA8 -_080848C8: - ldr r0, _080848E4 - ldr r0, [r0] - ldr r3, _080848E8 - adds r0, r3 - movs r1, 0x1 - strb r1, [r0] - movs r0, 0 - bl sub_807E5E4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080848E0: .4byte 0x00003a0d -_080848E4: .4byte gUnknown_203B418 -_080848E8: .4byte 0x00000675 - thumb_func_end sub_8084854 - - thumb_func_start sub_80848EC -sub_80848EC: - movs r0, 0x1 - bx lr - thumb_func_end sub_80848EC - - thumb_func_start sub_80848F0 -sub_80848F0: - push {lr} - ldr r2, _08084918 - ldr r0, [r2] - ldr r1, _0808491C - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r2] - ldr r1, _08084920 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3C - bls _0808490C - b _08084B5C -_0808490C: - lsls r0, 2 - ldr r1, _08084924 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08084918: .4byte gUnknown_203B418 -_0808491C: .4byte 0x0001356c -_08084920: .4byte 0x00003a0d -_08084924: .4byte _08084928 - .align 2, 0 -_08084928: - .4byte _08084A1C - .4byte _08084A2C - .4byte _08084A2C - .4byte _08084A32 - .4byte _08084A38 - .4byte _08084A38 - .4byte _08084A3E - .4byte _08084A44 - .4byte _08084A44 - .4byte _08084A4A - .4byte _08084A50 - .4byte _08084A50 - .4byte _08084A56 - .4byte _08084A5C - .4byte _08084A62 - .4byte _08084A68 - .4byte _08084A6E - .4byte _08084A74 - .4byte _08084A7A - .4byte _08084A80 - .4byte _08084A86 - .4byte _08084A8C - .4byte _08084A92 - .4byte _08084A98 - .4byte _08084A98 - .4byte _08084A9E - .4byte _08084AA4 - .4byte _08084AA4 - .4byte _08084AAA - .4byte _08084AB0 - .4byte _08084AB0 - .4byte _08084AB6 - .4byte _08084ABC - .4byte _08084ABC - .4byte _08084AC2 - .4byte _08084AC8 - .4byte _08084ACE - .4byte _08084AD4 - .4byte _08084ADA - .4byte _08084AE0 - .4byte _08084AE6 - .4byte _08084AEC - .4byte _08084AF2 - .4byte _08084AF8 - .4byte _08084AFE - .4byte _08084B04 - .4byte _08084B0A - .4byte _08084B10 - .4byte _08084B16 - .4byte _08084B1C - .4byte _08084B22 - .4byte _08084B28 - .4byte _08084B2E - .4byte _08084B34 - .4byte _08084B3A - .4byte _08084B40 - .4byte _08084B46 - .4byte _08084B4C - .4byte _08084B52 - .4byte _08084B58 - .4byte _08084A1C -_08084A1C: - ldr r0, [r2] - ldr r1, _08084A28 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - b _08084B5C - .align 2, 0 -_08084A28: .4byte 0x0001356c -_08084A2C: - bl sub_8086B14 - b _08084B5C -_08084A32: - bl sub_8086B94 - b _08084B5C -_08084A38: - bl sub_8086E9C - b _08084B5C -_08084A3E: - bl sub_8086F00 - b _08084B5C -_08084A44: - bl sub_8087230 - b _08084B5C -_08084A4A: - bl sub_808729C - b _08084B5C -_08084A50: - bl sub_80877E8 - b _08084B5C -_08084A56: - bl sub_8087848 - b _08084B5C -_08084A5C: - bl sub_8087F54 - b _08084B5C -_08084A62: - bl sub_8087FB4 - b _08084B5C -_08084A68: - bl sub_8087FF8 - b _08084B5C -_08084A6E: - bl sub_80885A0 - b _08084B5C -_08084A74: - bl sub_80885C4 - b _08084B5C -_08084A7A: - bl sub_808862C - b _08084B5C -_08084A80: - bl sub_80886C4 - b _08084B5C -_08084A86: - bl sub_808875C - b _08084B5C -_08084A8C: - bl sub_8088DC0 - b _08084B5C -_08084A92: - bl sub_8088E5C - b _08084B5C -_08084A98: - bl sub_80892C8 - b _08084B5C -_08084A9E: - bl sub_8089328 - b _08084B5C -_08084AA4: - bl sub_808970C - b _08084B5C -_08084AAA: - bl sub_808974C - b _08084B5C -_08084AB0: - bl sub_8089914 - b _08084B5C -_08084AB6: - bl sub_8089978 - b _08084B5C -_08084ABC: - bl sub_8089C44 - b _08084B5C -_08084AC2: - bl sub_8089C90 - b _08084B5C -_08084AC8: - bl sub_8089EFC - b _08084B5C -_08084ACE: - bl sub_8089F44 - b _08084B5C -_08084AD4: - bl sub_8089F8C - b _08084B5C -_08084ADA: - bl sub_808A264 - b _08084B5C -_08084AE0: - bl sub_808A2C0 - b _08084B5C -_08084AE6: - bl sub_808A308 - b _08084B5C -_08084AEC: - bl sub_808A608 - b _08084B5C -_08084AF2: - bl sub_808A668 - b _08084B5C -_08084AF8: - bl sub_808A9E4 - b _08084B5C -_08084AFE: - bl sub_808AA3C - b _08084B5C -_08084B04: - bl sub_808AA94 - b _08084B5C -_08084B0A: - bl sub_808ACC0 - b _08084B5C -_08084B10: - bl sub_808AD48 - b _08084B5C -_08084B16: - bl sub_808ADCC - b _08084B5C -_08084B1C: - bl sub_808B2F4 - b _08084B5C -_08084B22: - bl sub_808B35C - b _08084B5C -_08084B28: - bl sub_808BDEC - b _08084B5C -_08084B2E: - bl sub_808C10C - b _08084B5C -_08084B34: - bl sub_808C3A0 - b _08084B5C -_08084B3A: - bl sub_808C5C0 - b _08084B5C -_08084B40: - bl sub_808C938 - b _08084B5C -_08084B46: - bl sub_808C9C4 - b _08084B5C -_08084B4C: - bl sub_808CB5C - b _08084B5C -_08084B52: - bl sub_808CBB0 - b _08084B5C -_08084B58: - bl sub_808CD44 -_08084B5C: - bl sub_8097FF8 - pop {r0} - bx r0 - thumb_func_end sub_80848F0 - - thumb_func_start sub_8084B64 -sub_8084B64: - push {lr} - ldr r0, _08084B80 - ldr r0, [r0] - ldr r1, _08084B84 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3C - bls _08084B76 - b _08084DDA -_08084B76: - lsls r0, 2 - ldr r1, _08084B88 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08084B80: .4byte gUnknown_203B418 -_08084B84: .4byte 0x00003a0d -_08084B88: .4byte _08084B8C - .align 2, 0 -_08084B8C: - .4byte _08084DDA - .4byte _08084C80 - .4byte _08084C86 - .4byte _08084C8C - .4byte _08084C92 - .4byte _08084C98 - .4byte _08084C9E - .4byte _08084CA4 - .4byte _08084CAA - .4byte _08084CB0 - .4byte _08084CB6 - .4byte _08084CBC - .4byte _08084CC2 - .4byte _08084CC8 - .4byte _08084CCE - .4byte _08084CD4 - .4byte _08084CDA - .4byte _08084CE0 - .4byte _08084CE6 - .4byte _08084CEC - .4byte _08084CF2 - .4byte _08084CF8 - .4byte _08084CFE - .4byte _08084D04 - .4byte _08084D0A - .4byte _08084D10 - .4byte _08084D16 - .4byte _08084D1C - .4byte _08084D22 - .4byte _08084D28 - .4byte _08084D28 - .4byte _08084D2E - .4byte _08084D34 - .4byte _08084D3A - .4byte _08084D40 - .4byte _08084D46 - .4byte _08084D4C - .4byte _08084D52 - .4byte _08084D58 - .4byte _08084D5E - .4byte _08084D64 - .4byte _08084D6A - .4byte _08084D70 - .4byte _08084D76 - .4byte _08084D7C - .4byte _08084D82 - .4byte _08084D88 - .4byte _08084D8E - .4byte _08084D94 - .4byte _08084D9A - .4byte _08084DA0 - .4byte _08084DA6 - .4byte _08084DAC - .4byte _08084DB2 - .4byte _08084DB8 - .4byte _08084DBE - .4byte _08084DC4 - .4byte _08084DCA - .4byte _08084DD0 - .4byte _08084DD6 - .4byte _08084DDA -_08084C80: - bl sub_8086C0C - b _08084DDA -_08084C86: - bl sub_8086DAC - b _08084DDA -_08084C8C: - bl sub_8086E40 - b _08084DDA -_08084C92: - bl sub_8086FB8 - b _08084DDA -_08084C98: - bl sub_8087064 - b _08084DDA -_08084C9E: - bl sub_8087130 - b _08084DDA -_08084CA4: - bl sub_8087364 - b _08084DDA -_08084CAA: - bl sub_80875C0 - b _08084DDA -_08084CB0: - bl sub_808765C - b _08084DDA -_08084CB6: - bl sub_8087924 - b _08084DDA -_08084CBC: - bl sub_8087B20 - b _08084DDA -_08084CC2: - bl sub_8087C38 - b _08084DDA -_08084CC8: - bl sub_80880B8 - b _08084DDA -_08084CCE: - bl sub_8088304 - b _08084DDA -_08084CD4: - bl sub_8088398 - b _08084DDA -_08084CDA: - bl sub_8088608 - b _08084DDA -_08084CE0: - bl sub_8088618 - b _08084DDA -_08084CE6: - bl sub_8088854 - b _08084DDA -_08084CEC: - bl sub_8088A9C - b _08084DDA -_08084CF2: - bl sub_8088B60 - b _08084DDA -_08084CF8: - bl sub_8088EF4 - b _08084DDA -_08084CFE: - bl sub_8089168 - b _08084DDA -_08084D04: - bl sub_80893E4 - b _08084DDA -_08084D0A: - bl sub_8089500 - b _08084DDA -_08084D10: - bl sub_8089588 - b _08084DDA -_08084D16: - bl sub_80897F0 - b _08084DDA -_08084D1C: - bl sub_8089878 - b _08084DDA -_08084D22: - bl sub_80898E4 - b _08084DDA -_08084D28: - bl sub_8089A30 - b _08084DDA -_08084D2E: - bl sub_8089AD4 - b _08084DDA -_08084D34: - bl sub_8089D2C - b _08084DDA -_08084D3A: - bl sub_8089D8C - b _08084DDA -_08084D40: - bl sub_8089DEC - b _08084DDA -_08084D46: - bl sub_808A020 - b _08084DDA -_08084D4C: - bl sub_808A0C8 - b _08084DDA -_08084D52: - bl sub_808A144 - b _08084DDA -_08084D58: - bl sub_808A39C - b _08084DDA -_08084D5E: - bl sub_808A454 - b _08084DDA -_08084D64: - bl sub_808A4B0 - b _08084DDA -_08084D6A: - bl sub_808A724 - b _08084DDA -_08084D70: - bl sub_808A828 - b _08084DDA -_08084D76: - bl sub_808AB20 - b _08084DDA -_08084D7C: - bl sub_808ABD8 - b _08084DDA -_08084D82: - bl sub_808AC3C - b _08084DDA -_08084D88: - bl sub_808B130 - b _08084DDA -_08084D8E: - bl sub_808B164 - b _08084DDA -_08084D94: - bl sub_808B198 - b _08084DDA -_08084D9A: - bl sub_808B45C - b _08084DDA -_08084DA0: - bl sub_808BA78 - b _08084DDA -_08084DA6: - bl sub_808BE94 - b _08084DDA -_08084DAC: - bl sub_808C1CC - b _08084DDA -_08084DB2: - bl sub_808C43C - b _08084DDA -_08084DB8: - bl sub_808C628 - b _08084DDA -_08084DBE: - bl sub_808C998 - b _08084DDA -_08084DC4: - bl sub_808CA1C - b _08084DDA -_08084DCA: - bl nullsub_101 - b _08084DDA -_08084DD0: - bl sub_808CC04 - b _08084DDA -_08084DD6: - bl sub_808CD9C -_08084DDA: - bl sub_8085764 - bl sub_80857B8 - ldr r0, _08084DF8 - ldr r0, [r0] - ldr r1, _08084DFC - adds r0, r1 - movs r1, 0 - strb r1, [r0] - bl sub_8097FF8 - pop {r0} - bx r0 - .align 2, 0 -_08084DF8: .4byte gUnknown_203B418 -_08084DFC: .4byte 0x0001356c - thumb_func_end sub_8084B64 - - thumb_func_start sub_8084E00 -sub_8084E00: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r3, r1, 24 - lsls r2, 24 - lsrs r5, r2, 24 - cmp r3, 0 - bne _08084E12 - b _0808512E -_08084E12: - ldr r1, _08084E30 - ldr r0, [r1] - ldr r2, _08084E34 - adds r0, r2 - ldrb r0, [r0] - adds r2, r1, 0 - cmp r0, 0x3C - bls _08084E24 - b _0808511A -_08084E24: - lsls r0, 2 - ldr r1, _08084E38 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08084E30: .4byte gUnknown_203B418 -_08084E34: .4byte 0x00003a0d -_08084E38: .4byte _08084E3C - .align 2, 0 -_08084E3C: - .4byte _0808511A - .4byte _08084F30 - .4byte _08084F30 - .4byte _0808511A - .4byte _08084F44 - .4byte _08084F44 - .4byte _0808511A - .4byte _08084F58 - .4byte _08084F58 - .4byte _08084F58 - .4byte _08084F6C - .4byte _08084F6C - .4byte _08084F6C - .4byte _08084F80 - .4byte _08084F80 - .4byte _08084F80 - .4byte _0808511A - .4byte _0808511A - .4byte _08084F94 - .4byte _08084F94 - .4byte _08084F94 - .4byte _0808511A - .4byte _0808511A - .4byte _08084FA8 - .4byte _08084FA8 - .4byte _08084FA8 - .4byte _08084FBC - .4byte _08084FBC - .4byte _0808511A - .4byte _08084FD4 - .4byte _08084FD4 - .4byte _08084FD4 - .4byte _08084FE8 - .4byte _08084FE8 - .4byte _08084FE8 - .4byte _08084FFC - .4byte _08084FFC - .4byte _08084FFC - .4byte _08085010 - .4byte _08085010 - .4byte _08085010 - .4byte _08085024 - .4byte _08085024 - .4byte _08085038 - .4byte _08085038 - .4byte _08085038 - .4byte _0808504C - .4byte _08085064 - .4byte _0808507C - .4byte _08085094 - .4byte _08085094 - .4byte _080850AC - .4byte _080850C4 - .4byte _080850DC - .4byte _080850F4 - .4byte _0808510C - .4byte _0808511A - .4byte _0808511A - .4byte _0808511A - .4byte _0808511A - .4byte _0808511A -_08084F30: - ldr r0, [r2] - ldr r1, _08084F40 - adds r0, r1 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_8086BDC - b _0808511A - .align 2, 0 -_08084F40: .4byte 0x00003a0d -_08084F44: - ldr r0, [r2] - ldr r2, _08084F54 - adds r0, r2 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_8086F54 - b _0808511A - .align 2, 0 -_08084F54: .4byte 0x00003a0d -_08084F58: - ldr r0, [r2] - ldr r1, _08084F68 - adds r0, r1 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_8087334 - b _0808511A - .align 2, 0 -_08084F68: .4byte 0x00003a0d -_08084F6C: - ldr r0, [r2] - ldr r2, _08084F7C - adds r0, r2 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_80878F4 - b _0808511A - .align 2, 0 -_08084F7C: .4byte 0x00003a0d -_08084F80: - ldr r0, [r2] - ldr r1, _08084F90 - adds r0, r1 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_8088088 - b _0808511A - .align 2, 0 -_08084F90: .4byte 0x00003a0d -_08084F94: - ldr r0, [r2] - ldr r2, _08084FA4 - adds r0, r2 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_8088818 - b _0808511A - .align 2, 0 -_08084FA4: .4byte 0x00003a0d -_08084FA8: - ldr r0, [r2] - ldr r1, _08084FB8 - adds r0, r1 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_80893B4 - b _0808511A - .align 2, 0 -_08084FB8: .4byte 0x00003a0d -_08084FBC: - ldr r0, [r2] - ldr r2, _08084FD0 - adds r0, r2 - ldrb r2, [r0] - adds r0, r4, 0 - adds r1, r3, 0 - bl sub_8089788 - b _0808511A - .align 2, 0 -_08084FD0: .4byte 0x00003a0d -_08084FD4: - ldr r0, [r2] - ldr r1, _08084FE4 - adds r0, r1 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_8089A00 - b _0808511A - .align 2, 0 -_08084FE4: .4byte 0x00003a0d -_08084FE8: - ldr r0, [r2] - ldr r2, _08084FF8 - adds r0, r2 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_8089CFC - b _0808511A - .align 2, 0 -_08084FF8: .4byte 0x00003a0d -_08084FFC: - ldr r0, [r2] - ldr r1, _0808500C - adds r0, r1 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_8089FF0 - b _0808511A - .align 2, 0 -_0808500C: .4byte 0x00003a0d -_08085010: - ldr r0, [r2] - ldr r2, _08085020 - adds r0, r2 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_808A36C - b _0808511A - .align 2, 0 -_08085020: .4byte 0x00003a0d -_08085024: - ldr r0, [r2] - ldr r1, _08085034 - adds r0, r1 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_808A6E8 - b _0808511A - .align 2, 0 -_08085034: .4byte 0x00003a0d -_08085038: - ldr r0, [r2] - ldr r2, _08085048 - adds r0, r2 - ldrb r1, [r0] - adds r0, r3, 0 - bl sub_808AAF0 - b _0808511A - .align 2, 0 -_08085048: .4byte 0x00003a0d -_0808504C: - ldr r0, [r2] - ldr r1, _08085060 - adds r0, r1 - ldrb r1, [r0] - adds r2, r4, 0x4 - adds r0, r3, 0 - bl sub_808AE54 - b _0808511A - .align 2, 0 -_08085060: .4byte 0x00003a0d -_08085064: - ldr r0, [r2] - ldr r2, _08085078 - adds r0, r2 - ldrb r1, [r0] - adds r2, r4, 0x4 - adds r0, r3, 0 - bl sub_808AEC8 - b _0808511A - .align 2, 0 -_08085078: .4byte 0x00003a0d -_0808507C: - ldr r0, [r2] - ldr r1, _08085090 - adds r0, r1 - ldrb r1, [r0] - adds r2, r4, 0x4 - adds r0, r3, 0 - bl sub_808AF3C - b _0808511A - .align 2, 0 -_08085090: .4byte 0x00003a0d -_08085094: - ldr r0, [r2] - ldr r2, _080850A8 - adds r0, r2 - ldrb r1, [r0] - adds r0, r3, 0 - adds r2, r5, 0 - bl sub_808B3E4 - b _0808511A - .align 2, 0 -_080850A8: .4byte 0x00003a0d -_080850AC: - ldr r0, [r2] - ldr r1, _080850C0 - adds r0, r1 - ldrb r1, [r0] - adds r0, r3, 0 - adds r2, r5, 0 - bl sub_808BE70 - b _0808511A - .align 2, 0 -_080850C0: .4byte 0x00003a0d -_080850C4: - ldr r0, [r2] - ldr r2, _080850D8 - adds r0, r2 - ldrb r1, [r0] - adds r0, r3, 0 - adds r2, r5, 0 - bl sub_808C1A4 - b _0808511A - .align 2, 0 -_080850D8: .4byte 0x00003a0d -_080850DC: - ldr r0, [r2] - ldr r1, _080850F0 - adds r0, r1 - ldrb r1, [r0] - adds r0, r3, 0 - adds r2, r5, 0 - bl sub_808C414 - b _0808511A - .align 2, 0 -_080850F0: .4byte 0x00003a0d -_080850F4: - ldr r0, [r2] - ldr r2, _08085108 - adds r0, r2 - ldrb r1, [r0] - adds r0, r3, 0 - adds r2, r5, 0 - bl nullsub_100 - b _0808511A - .align 2, 0 -_08085108: .4byte 0x00003a0d -_0808510C: - ldr r0, [r2] - ldr r1, _08085134 - adds r0, r1 - ldrb r1, [r0] - adds r0, r4, 0 - bl sub_808C948 -_0808511A: - cmp r5, 0 - bne _0808512E - ldr r0, _08085138 - ldr r0, [r0] - ldrb r0, [r0, 0x2] - cmp r0, 0 - beq _0808512E - ldr r0, _0808513C - bl sub_8083E88 -_0808512E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08085134: .4byte 0x00003a0d -_08085138: .4byte gUnknown_203B418 -_0808513C: .4byte 0x000003e7 - thumb_func_end sub_8084E00 - - thumb_func_start sub_8085140 -sub_8085140: - push {lr} - ldr r1, _08085160 - ldr r0, [r1] - ldr r2, _08085164 - adds r0, r2 - ldrb r0, [r0] - adds r2, r1, 0 - cmp r0, 0x3C - bls _08085154 - b _08085294 -_08085154: - lsls r0, 2 - ldr r1, _08085168 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08085160: .4byte gUnknown_203B418 -_08085164: .4byte 0x00003a0d -_08085168: .4byte _0808516C - .align 2, 0 -_0808516C: - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085260 - .4byte _08085274 - .4byte _08085288 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 - .4byte _08085294 -_08085260: - ldr r0, [r2] - ldr r1, _08085270 - adds r0, r1 - ldrb r0, [r0] - bl sub_808AFB0 - b _08085294 - .align 2, 0 -_08085270: .4byte 0x00003a0d -_08085274: - ldr r0, [r2] - ldr r2, _08085284 - adds r0, r2 - ldrb r0, [r0] - bl sub_808B030 - b _08085294 - .align 2, 0 -_08085284: .4byte 0x00003a0d -_08085288: - ldr r0, [r2] - ldr r1, _08085298 - adds r0, r1 - ldrb r0, [r0] - bl sub_808B0B0 -_08085294: - pop {r0} - bx r0 - .align 2, 0 -_08085298: .4byte 0x00003a0d - thumb_func_end sub_8085140 - - thumb_func_start sub_808529C -sub_808529C: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - adds r2, r1, 0 - movs r3, 0x40 - movs r0, 0x86 - lsls r0, 1 - cmp r1, r0 - beq _08085348 - cmp r1, r0 - bgt _080852E0 - cmp r1, 0x90 - beq _08085334 - cmp r1, 0x90 - bgt _080852CE - cmp r1, 0x38 - beq _08085354 - cmp r1, 0x38 - bgt _080852C8 - cmp r1, 0x17 - beq _08085328 - b _0808535A -_080852C8: - cmp r1, 0x5E - beq _08085328 - b _0808535A -_080852CE: - cmp r1, 0x92 - beq _08085330 - cmp r1, 0x92 - blt _0808532C - cmp r1, 0x96 - beq _08085340 - cmp r1, 0xFC - beq _08085324 - b _0808535A -_080852E0: - ldr r0, _08085304 - cmp r1, r0 - beq _08085358 - cmp r1, r0 - bgt _08085308 - subs r0, 0x87 - cmp r1, r0 - beq _0808534C - cmp r1, r0 - blt _08085344 - adds r0, 0x5 - cmp r1, r0 - beq _08085350 - adds r0, 0x3A - cmp r1, r0 - beq _08085328 - b _0808535A - .align 2, 0 -_08085304: .4byte 0x00000195 -_08085308: - ldr r0, _08085320 - cmp r2, r0 - beq _08085358 - cmp r2, r0 - blt _08085358 - adds r0, 0x4 - cmp r2, r0 - beq _08085338 - adds r0, 0x1 - cmp r2, r0 - beq _0808533C - b _0808535A - .align 2, 0 -_08085320: .4byte 0x00000197 -_08085324: - movs r3, 0x1 - b _0808535A -_08085328: - movs r3, 0x3 - b _0808535A -_0808532C: - movs r3, 0x5 - b _0808535A -_08085330: - movs r3, 0x7 - b _0808535A -_08085334: - movs r3, 0x9 - b _0808535A -_08085338: - movs r3, 0xC - b _0808535A -_0808533C: - movs r3, 0xF - b _0808535A -_08085340: - movs r3, 0x13 - b _0808535A -_08085344: - movs r3, 0x15 - b _0808535A -_08085348: - movs r3, 0x17 - b _0808535A -_0808534C: - movs r3, 0x19 - b _0808535A -_08085350: - movs r3, 0x1A - b _0808535A -_08085354: - movs r3, 0x11 - b _0808535A -_08085358: - movs r3, 0x1D -_0808535A: - cmp r3, 0x40 - beq _0808536E - adds r0, r3, 0 - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808536E - movs r0, 0 - b _08085370 -_0808536E: - movs r0, 0x1 -_08085370: - pop {r1} - bx r1 - thumb_func_end sub_808529C - - thumb_func_start sub_8085374 -sub_8085374: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x14 - movs r7, 0 - movs r6, 0 - bl sub_808D3F8 - movs r2, 0x8 - ldrsh r1, [r0, r2] - mov r8, r1 - movs r5, 0 -_0808538E: - ldr r0, _08085444 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08085448 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080853BE - ldr r1, [r4, 0x70] - ldrb r0, [r1, 0x7] - cmp r0, 0 - beq _080853B2 - adds r7, r4, 0 -_080853B2: - adds r0, r1, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x41 - bne _080853BE - adds r6, r4, 0 -_080853BE: - adds r5, 0x1 - cmp r5, 0x3 - ble _0808538E - cmp r7, 0 - beq _0808546E - cmp r6, 0 - bne _0808546E - ldr r0, _08085444 - ldr r0, [r0] - ldr r1, _0808544C - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0808546E - movs r6, 0 - ldr r0, _08085450 - ldr r4, [r0] - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0x63 - beq _0808546E - mov r5, sp - movs r0, 0 - mov r9, r0 -_080853EE: - ldrh r0, [r7, 0x4] - adds r0, r4 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _08085454 - ands r4, r1 - orrs r4, r0 - asrs r1, r4, 16 - ldrh r2, [r7, 0x6] - adds r1, r2 - lsls r1, 16 - ldr r0, _08085458 - ands r4, r0 - orrs r4, r1 - lsls r0, r4, 16 - asrs r0, 16 - asrs r1, r4, 16 - bl sub_804954C - adds r1, r0, 0 - mov r0, r8 - bl sub_807034C - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0808545C - mov r0, r8 - strh r0, [r5] - movs r0, 0x1 - strh r0, [r5, 0x8] - movs r0, 0x2 - strb r0, [r5, 0x2] - str r4, [sp, 0xC] - str r1, [sp, 0x4] - mov r1, r9 - strb r1, [r5, 0x10] - mov r0, sp - movs r1, 0x1 - bl sub_806B7F8 - b _0808546E - .align 2, 0 -_08085444: .4byte gUnknown_203B418 -_08085448: .4byte 0x0001357c -_0808544C: .4byte 0x0000065c -_08085450: .4byte gUnknown_80F4598 -_08085454: .4byte 0xffff0000 -_08085458: .4byte 0x0000ffff -_0808545C: - adds r6, 0x1 - ldr r0, _0808547C - lsls r1, r6, 2 - adds r1, r0 - ldr r4, [r1] - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0x63 - bne _080853EE -_0808546E: - add sp, 0x14 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808547C: .4byte gUnknown_80F4598 - thumb_func_end sub_8085374 - - thumb_func_start sub_8085480 -sub_8085480: - push {lr} - bl sub_8083600 - pop {r1} - bx r1 - thumb_func_end sub_8085480 - - thumb_func_start sub_808548C -sub_808548C: - push {r4,r5,lr} - movs r5, 0 -_08085490: - ldr r0, _080854B8 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080854BC - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080854C0 - ldr r0, [r4, 0x70] - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x41 - bne _080854C0 - adds r0, r4, 0 - b _080854CC - .align 2, 0 -_080854B8: .4byte gUnknown_203B418 -_080854BC: .4byte 0x0001357c -_080854C0: - adds r5, 0x1 - cmp r5, 0x3 - ble _08085490 - movs r0, 0x2 - bl sub_8085680 -_080854CC: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_808548C - - thumb_func_start sub_80854D4 -sub_80854D4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x20 - movs r6, 0 - movs r5, 0 - add r0, sp, 0x10 - mov r8, r0 - mov r7, sp -_080854E6: - ldr r0, _080855D8 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080855DC - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08085504 - stm r7!, {r4} - adds r6, 0x1 -_08085504: - adds r5, 0x1 - cmp r5, 0x3 - ble _080854E6 - cmp r6, 0x3 - bgt _0808551C - movs r1, 0 - lsls r0, r6, 2 - add r0, sp -_08085514: - stm r0!, {r1} - adds r6, 0x1 - cmp r6, 0x3 - ble _08085514 -_0808551C: - movs r6, 0 - movs r4, 0 - mov r2, sp - mov r3, r8 - movs r5, 0x3 -_08085526: - ldr r1, [r2] - cmp r1, 0 - beq _0808553A - ldr r0, [r1, 0x70] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0808553A - str r4, [r2] - stm r3!, {r1} - adds r6, 0x1 -_0808553A: - adds r2, 0x4 - subs r5, 0x1 - cmp r5, 0 - bge _08085526 - movs r4, 0 - mov r2, sp - lsls r0, r6, 2 - mov r1, r8 - adds r3, r0, r1 - movs r5, 0x3 -_0808554E: - ldr r1, [r2] - cmp r1, 0 - beq _08085564 - ldr r0, [r1, 0x70] - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x41 - bne _08085564 - str r4, [r2] - stm r3!, {r1} - adds r6, 0x1 -_08085564: - adds r2, 0x4 - subs r5, 0x1 - cmp r5, 0 - bge _0808554E - movs r3, 0 - mov r2, sp - lsls r0, r6, 2 - add r0, r8 - movs r5, 0x3 -_08085576: - ldr r1, [r2] - cmp r1, 0 - beq _08085582 - str r3, [r2] - stm r0!, {r1} - adds r6, 0x1 -_08085582: - adds r2, 0x4 - subs r5, 0x1 - cmp r5, 0 - bge _08085576 - cmp r6, 0x3 - bgt _0808559C - movs r1, 0 - lsls r0, r6, 2 - add r0, r8 -_08085594: - stm r0!, {r1} - adds r6, 0x1 - cmp r6, 0x3 - ble _08085594 -_0808559C: - movs r5, 0 - mov r4, r8 -_080855A0: - lsls r1, r5, 2 - ldr r3, [r4] - cmp r3, 0 - beq _080855C4 - ldr r0, _080855D8 - ldr r0, [r0] - adds r0, r1 - ldr r2, _080855E0 - adds r1, r0, r2 - movs r6, 0 - ldrsh r1, [r1, r6] - adds r2, 0x2 - adds r0, r2 - movs r6, 0 - ldrsh r2, [r0, r6] - adds r0, r3, 0 - bl sub_80856C8 -_080855C4: - adds r4, 0x4 - adds r5, 0x1 - cmp r5, 0x3 - ble _080855A0 - add sp, 0x20 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080855D8: .4byte gUnknown_203B418 -_080855DC: .4byte 0x0001357c -_080855E0: .4byte 0x0000e220 - thumb_func_end sub_80854D4 - - thumb_func_start sub_80855E4 -sub_80855E4: - push {r4-r7,lr} - adds r6, r0, 0 - movs r7, 0 - movs r5, 0 -_080855EC: - ldr r0, _08085634 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08085638 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08085618 - ldr r0, [r4, 0x70] - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x41 - bne _08085612 - movs r7, 0x1 -_08085612: - adds r0, r4, 0 - bl _call_via_r6 -_08085618: - adds r5, 0x1 - cmp r5, 0x3 - ble _080855EC - cmp r7, 0 - bne _0808562E - bl sub_808548C - cmp r0, 0 - beq _0808562E - bl _call_via_r6 -_0808562E: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08085634: .4byte gUnknown_203B418 -_08085638: .4byte 0x0001357c - thumb_func_end sub_80855E4 - - thumb_func_start sub_808563C -sub_808563C: - push {r4-r6,lr} - adds r6, r0, 0 - movs r5, 0 -_08085642: - ldr r0, _08085678 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _0808567C - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0808566C - ldr r0, [r4, 0x70] - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x41 - beq _0808566C - adds r0, r4, 0 - bl _call_via_r6 -_0808566C: - adds r5, 0x1 - cmp r5, 0xF - ble _08085642 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08085678: .4byte gUnknown_203B418 -_0808567C: .4byte 0x0001358c - thumb_func_end sub_808563C - - thumb_func_start sub_8085680 -sub_8085680: - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 -_08085688: - ldr r0, _080856B0 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080856B4 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080856B8 - ldr r0, [r4, 0x70] - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, r6 - bne _080856B8 - adds r0, r4, 0 - b _080856C0 - .align 2, 0 -_080856B0: .4byte gUnknown_203B418 -_080856B4: .4byte 0x000135cc -_080856B8: - adds r5, 0x1 - cmp r5, 0x13 - ble _08085688 - movs r0, 0 -_080856C0: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8085680 - - thumb_func_start sub_80856C8 -sub_80856C8: - push {r4,lr} - adds r4, r0, 0 - movs r3, 0x1 - bl sub_80694C0 - adds r0, r4, 0 - movs r1, 0 - bl sub_804535C - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80856C8 - - thumb_func_start sub_80856E0 -sub_80856E0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r7, r1, 0 - ldr r0, [r6, 0x70] - mov r8, r0 - adds r0, r6, 0 - movs r1, 0x6 - adds r2, r7, 0 - bl sub_80861D4 - movs r5, 0xBA - lsls r5, 1 - add r5, r8 - movs r4, 0x4 -_08085700: - ldr r0, [r5] - movs r1, 0x80 - lsls r1, 2 - adds r0, r1 - str r0, [r5] - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08085700 - movs r1, 0x7 - adds r0, r7, 0 - ands r0, r1 - mov r1, r8 - adds r1, 0x46 - strb r0, [r1] - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_806CE68 - movs r5, 0xBA - lsls r5, 1 - add r5, r8 - movs r4, 0x4 -_08085732: - ldr r0, [r5] - ldr r1, _08085760 - adds r0, r1 - str r0, [r5] - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _08085732 - movs r1, 0xBA - lsls r1, 1 - add r1, r8 - movs r0, 0 - str r0, [r1] - movs r0, 0x46 - bl sub_803E46C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08085760: .4byte 0xfffffe00 - thumb_func_end sub_80856E0 - - thumb_func_start sub_8085764 -sub_8085764: - push {r4,r5,lr} - sub sp, 0x74 - mov r0, sp - bl sub_80457DC - movs r5, 0 -_08085770: - ldr r0, _080857AC - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080857B0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0808579E - ldr r0, [r4, 0x70] - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x2 - bne _0808579E - adds r0, r4, 0 - ldr r1, _080857B4 - mov r2, sp - bl sub_8068FE0 -_0808579E: - adds r5, 0x1 - cmp r5, 0xF - ble _08085770 - add sp, 0x74 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080857AC: .4byte gUnknown_203B418 -_080857B0: .4byte 0x0001358c -_080857B4: .4byte 0x00000207 - thumb_func_end sub_8085764 - - thumb_func_start sub_80857B8 -sub_80857B8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r7, 0 - ldr r0, _08085854 - mov r9, r0 - ldr r1, _08085858 - mov r8, r1 -_080857CA: - mov r2, r9 - ldr r0, [r2] - lsls r1, r7, 2 - ldr r3, _0808585C - adds r0, r3 - adds r0, r1 - ldr r6, [r0] - adds r0, r6, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08085840 - ldr r5, [r6, 0x70] - mov r0, r9 - ldr r1, [r0] - ldrb r0, [r1, 0x4] - cmp r0, 0 - bne _08085840 - ldrb r4, [r1, 0x2] - cmp r4, 0 - bne _08085840 - adds r0, r6, 0 - movs r1, 0 - bl sub_804535C - movs r1, 0xAE - lsls r1, 1 - adds r0, r5, r1 - strb r4, [r0] - adds r1, r5, 0 - adds r1, 0xFE - movs r0, 0x63 - strb r0, [r1] - adds r2, r5, 0 - adds r2, 0x46 - ldrb r0, [r2] - lsls r0, 2 - add r0, r8 - ldrh r1, [r6, 0x4] - ldrh r0, [r0] - adds r1, r0 - movs r3, 0xB6 - lsls r3, 1 - adds r0, r5, r3 - strh r1, [r0] - ldrb r0, [r2] - lsls r0, 2 - add r0, r8 - ldrh r1, [r6, 0x6] - ldrh r0, [r0, 0x2] - adds r1, r0 - adds r3, 0x2 - adds r0, r5, r3 - strh r1, [r0] - ldrb r1, [r2] - adds r0, r6, 0 - bl sub_806CE68 -_08085840: - adds r7, 0x1 - cmp r7, 0x13 - ble _080857CA - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08085854: .4byte gUnknown_203B418 -_08085858: .4byte gUnknown_80F4448 -_0808585C: .4byte 0x000135cc - thumb_func_end sub_80857B8 - - thumb_func_start sub_8085860 -sub_8085860: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - bl sub_803F4A0 - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 11 - movs r1, 0xC0 - lsls r1, 4 - adds r0, r1 - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 11 - movs r2, 0x80 - lsls r2, 5 - adds r1, r2 - bl sub_803F878 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8085860 - - thumb_func_start sub_8085890 -sub_8085890: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - bl sub_803F4A0 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_803F878 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8085890 - - thumb_func_start sub_80858AC -sub_80858AC: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r7, r0, 0 - adds r4, r1, 0 - bl sub_803F994 - adds r6, r0, 0 - bl sub_803F9B0 - adds r5, r0, 0 - ldr r0, [r7] - subs r0, r6 - adds r1, r4, 0 - bl __divsi3 - mov r9, r0 - ldr r0, [r7, 0x4] - subs r0, r5 - adds r1, r4, 0 - bl __divsi3 - mov r8, r0 - movs r0, 0 - bl sub_803F4A0 - cmp r4, 0 - ble _080858FE -_080858E6: - add r6, r9 - add r5, r8 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_803F878 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bne _080858E6 -_080858FE: - ldr r0, [r7] - ldr r1, [r7, 0x4] - bl sub_803F878 - movs r0, 0x46 - bl sub_803E46C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80858AC - - thumb_func_start sub_8085918 -sub_8085918: - push {r4,lr} - ldr r3, [r0, 0x70] - movs r4, 0x7 - adds r2, r1, 0 - ands r2, r4 - adds r3, 0x46 - strb r2, [r3] - bl sub_806CE68 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8085918 - - thumb_func_start sub_8085930 -sub_8085930: - push {r4-r7,lr} - adds r6, r0, 0 - movs r5, 0 - movs r0, 0x7 - adds r7, r6, 0 - ands r7, r0 -_0808593C: - ldr r0, _0808596C - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08085970 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08085982 - cmp r6, 0x7 - ble _08085974 - movs r0, 0x8 - bl RandomCapped - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_806CE68 - b _08085982 - .align 2, 0 -_0808596C: .4byte gUnknown_203B418 -_08085970: .4byte 0x0001357c -_08085974: - ldr r0, [r4, 0x70] - adds r0, 0x46 - strb r7, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_806CE68 -_08085982: - adds r5, 0x1 - cmp r5, 0x3 - ble _0808593C - movs r5, 0 - movs r0, 0x7 - adds r7, r6, 0 - ands r7, r0 -_08085990: - ldr r0, _080859CC - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080859D0 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080859E2 - ldr r1, [r4, 0x70] - adds r0, r1, 0 - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x2 - bne _080859E2 - cmp r6, 0x7 - ble _080859D4 - movs r0, 0x8 - bl RandomCapped - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_806CE68 - b _080859E2 - .align 2, 0 -_080859CC: .4byte gUnknown_203B418 -_080859D0: .4byte 0x0001358c -_080859D4: - adds r0, r1, 0 - adds r0, 0x46 - strb r7, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_806CE68 -_080859E2: - adds r5, 0x1 - cmp r5, 0xF - ble _08085990 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8085930 - - thumb_func_start sub_80859F0 -sub_80859F0: - push {r4-r7,lr} - adds r6, r0, 0 - movs r5, 0 - movs r0, 0x7 - adds r7, r6, 0 - ands r7, r0 -_080859FC: - ldr r0, _08085A2C - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08085A30 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08085A42 - cmp r6, 0x7 - ble _08085A34 - movs r0, 0x8 - bl RandomCapped - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_806CE68 - b _08085A42 - .align 2, 0 -_08085A2C: .4byte gUnknown_203B418 -_08085A30: .4byte 0x0001358c -_08085A34: - ldr r0, [r4, 0x70] - adds r0, 0x46 - strb r7, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_806CE68 -_08085A42: - adds r5, 0x1 - cmp r5, 0xF - ble _080859FC - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80859F0 - - thumb_func_start sub_8085A50 -sub_8085A50: - push {lr} - ldr r0, [r0, 0x70] - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, 0x24 - bhi _08085B04 - lsls r0, 2 - ldr r1, _08085A68 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08085A68: .4byte _08085A6C - .align 2, 0 -_08085A6C: - .4byte _08085B04 - .4byte _08085B00 - .4byte _08085B04 - .4byte _08085B00 - .4byte _08085B04 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B04 - .4byte _08085B04 - .4byte _08085B04 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 - .4byte _08085B00 -_08085B00: - movs r0, 0x1 - b _08085B06 -_08085B04: - movs r0, 0 -_08085B06: - pop {r1} - bx r1 - thumb_func_end sub_8085A50 - - thumb_func_start sub_8085B0C -sub_8085B0C: - push {r4,r5,lr} - sub sp, 0x1C - adds r5, r0, 0 - ldr r1, _08085B48 - mov r0, sp - movs r2, 0x19 - bl memcpy - mov r0, sp - ldrb r0, [r0] - cmp r0, 0 - beq _08085B3E - mov r4, sp -_08085B26: - ldrb r1, [r4] - adds r0, r5, 0 - bl sub_8085918 - movs r0, 0x6 - movs r1, 0x46 - bl sub_803E708 - adds r4, 0x1 - ldrb r0, [r4] - cmp r0, 0 - bne _08085B26 -_08085B3E: - add sp, 0x1C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08085B48: .4byte gUnknown_8107358 - thumb_func_end sub_8085B0C - - thumb_func_start sub_8085B4C -sub_8085B4C: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r0, _08085B7C - str r3, [r0] - cmp r3, 0 - ble _08085B76 - movs r6, 0x1 - adds r4, r1, 0 - adds r1, r5, 0 -_08085B5E: - strb r6, [r1] - ldm r2!, {r0} - str r0, [r1, 0x4] - ldm r4!, {r0} - str r0, [r1, 0xC] - movs r5, 0x4 - ldrsh r0, [r0, r5] - str r0, [r1, 0x8] - adds r1, 0x10 - subs r3, 0x1 - cmp r3, 0 - bne _08085B5E -_08085B76: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08085B7C: .4byte gUnknown_202F3D8 - thumb_func_end sub_8085B4C - - thumb_func_start sub_8085B80 -sub_8085B80: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r1, r0, 0 - movs r0, 0 - mov r8, r0 - movs r7, 0 - ldr r0, _08085BE4 - ldr r0, [r0] - cmp r8, r0 - bge _08085C3E - adds r5, r1, 0 -_08085B98: - ldr r6, [r5, 0x4] - ldr r2, [r6, 0x70] - adds r3, r2, 0 - ldr r4, [r5, 0xC] - ldrb r0, [r5] - cmp r0, 0 - beq _08085C32 - movs r1, 0x1 - mov r8, r1 - ldr r0, [r5, 0x8] - cmp r0, 0 - bne _08085C08 - adds r4, 0x8 - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _08085BE8 - strb r0, [r5] - ldrb r1, [r4] - movs r0, 0x7 - ands r0, r1 - adds r1, r2, 0 - adds r1, 0x46 - strb r0, [r1] - movs r3, 0 - ldrsh r2, [r4, r3] - adds r0, r6, 0 - movs r1, 0x7 - bl sub_806CDD4 - movs r0, 0xA - ldrsh r1, [r4, r0] - movs r3, 0xC - ldrsh r2, [r4, r3] - adds r0, r6, 0 - bl sub_80856C8 - b _08085C32 - .align 2, 0 -_08085BE4: .4byte gUnknown_202F3D8 -_08085BE8: - movs r1, 0x4 - ldrsh r0, [r4, r1] - str r0, [r5, 0x8] - str r4, [r5, 0xC] - ldrb r1, [r4] - movs r0, 0x7 - ands r0, r1 - adds r1, r3, 0 - adds r1, 0x46 - strb r0, [r1] - movs r3, 0 - ldrsh r2, [r4, r3] - adds r0, r6, 0 - movs r1, 0 - bl sub_806CDD4 -_08085C08: - ldr r0, [r5, 0x8] - subs r0, 0x1 - str r0, [r5, 0x8] - ldr r1, _08085C4C - movs r2, 0 - ldrsh r0, [r4, r2] - lsls r0, 2 - adds r0, r1 - movs r3, 0 - ldrsh r1, [r0, r3] - movs r3, 0x2 - ldrsh r2, [r4, r3] - muls r1, r2 - lsls r1, 8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - muls r2, r0 - lsls r2, 8 - adds r0, r6, 0 - bl sub_804539C -_08085C32: - adds r5, 0x10 - adds r7, 0x1 - ldr r0, _08085C50 - ldr r0, [r0] - cmp r7, r0 - blt _08085B98 -_08085C3E: - mov r0, r8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08085C4C: .4byte gUnknown_80F4448 -_08085C50: .4byte gUnknown_202F3D8 - thumb_func_end sub_8085B80 - - thumb_func_start sub_8085C54 -sub_8085C54: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - str r0, [sp, 0x14] - mov r10, r1 - mov r9, r2 - ldr r4, [sp, 0x48] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x18] - lsls r4, 24 - lsrs r4, 24 - bl sub_8085E98 - movs r0, 0 - mov r8, r0 - ldr r0, _08085E70 - ldr r0, [r0] - ldr r5, [r0, 0x4] - cmp r4, 0 - beq _08085CAE - ldr r1, [sp, 0x14] - cmp r1, 0 - blt _08085C92 - lsrs r0, r1, 31 - adds r0, r1, r0 - asrs r0, 1 - str r0, [sp, 0x14] -_08085C92: - mov r2, r10 - cmp r2, 0 - blt _08085CA0 - lsrs r0, r2, 31 - add r0, r10 - asrs r0, 1 - mov r10, r0 -_08085CA0: - mov r3, r9 - cmp r3, 0 - blt _08085CAE - lsrs r0, r3, 31 - add r0, r9 - asrs r0, 1 - mov r9, r0 -_08085CAE: - ldr r1, _08085E74 - ldr r0, [sp, 0x8] - ands r0, r1 - ldr r1, _08085E78 - ands r0, r1 - ldr r1, _08085E7C - ands r0, r1 - str r0, [sp, 0x8] - ldr r0, _08085E80 - ldr r2, [r0] - ldr r0, _08085E84 - ldr r3, [r0] - movs r0, 0xBE - lsls r0, 1 - adds r3, r0 - mov r0, r8 - add r1, sp, 0x8 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - movs r1, 0x1 - add r8, r1 - ldr r2, [sp, 0x14] - lsls r2, 16 - str r2, [sp, 0x1C] - mov r3, r10 - lsls r3, 16 - str r3, [sp, 0x20] - mov r0, r9 - lsls r0, 16 - str r0, [sp, 0x24] - add r7, sp, 0xC - movs r1, 0xA0 - cmp r1, 0x1 - ble _08085D56 - add r6, sp, 0x8 - movs r4, 0xA0 - subs r4, 0x1 -_08085CFA: - ldrb r0, [r5] - ldr r3, [sp, 0x14] - adds r2, r0, r3 - ldrb r0, [r5, 0x1] - mov r3, r10 - adds r1, r0, r3 - ldrb r0, [r5, 0x2] - add r0, r9 - cmp r2, 0xFF - ble _08085D10 - movs r2, 0xFF -_08085D10: - cmp r1, 0xFF - ble _08085D16 - movs r1, 0xFF -_08085D16: - cmp r0, 0xFF - ble _08085D1C - movs r0, 0xFF -_08085D1C: - cmp r2, 0 - bge _08085D22 - movs r2, 0 -_08085D22: - cmp r1, 0 - bge _08085D28 - movs r1, 0 -_08085D28: - cmp r0, 0 - bge _08085D2E - movs r0, 0 -_08085D2E: - strb r2, [r6] - strb r1, [r6, 0x1] - strb r0, [r6, 0x2] - ldr r0, _08085E80 - ldr r2, [r0] - ldr r0, _08085E84 - ldr r3, [r0] - movs r0, 0xBE - lsls r0, 1 - adds r3, r0 - mov r0, r8 - add r1, sp, 0x8 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - movs r1, 0x1 - add r8, r1 - subs r4, 0x1 - cmp r4, 0 - bne _08085CFA -_08085D56: - ldr r2, _08085E88 - ldr r3, [sp, 0x1C] - lsrs r0, r3, 16 - ldr r1, [sp, 0x20] - orrs r0, r1 - str r0, [sp, 0xC] - ldr r3, [sp, 0x24] - lsrs r1, r3, 16 - ldr r0, [r7, 0x4] - ands r0, r2 - orrs r0, r1 - str r0, [r7, 0x4] - ldr r0, _08085E8C - ldr r1, _08085E80 - ldr r3, [r1] - ldr r1, _08085E84 - ldr r1, [r1] - movs r2, 0xBE - lsls r2, 1 - adds r1, r2 - str r1, [sp] - str r7, [sp, 0x4] - movs r1, 0xA0 - movs r2, 0x20 - bl sub_8004C00 - movs r3, 0x20 - add r8, r3 - ldr r5, _08085E90 - add r6, sp, 0x8 - movs r4, 0x20 -_08085D94: - ldrb r0, [r5] - ldr r1, [sp, 0x14] - adds r2, r0, r1 - ldrb r0, [r5, 0x1] - mov r3, r10 - adds r1, r0, r3 - ldrb r0, [r5, 0x2] - add r0, r9 - cmp r2, 0xFF - ble _08085DAA - movs r2, 0xFF -_08085DAA: - cmp r1, 0xFF - ble _08085DB0 - movs r1, 0xFF -_08085DB0: - cmp r0, 0xFF - ble _08085DB6 - movs r0, 0xFF -_08085DB6: - cmp r2, 0 - bge _08085DBC - movs r2, 0 -_08085DBC: - cmp r1, 0 - bge _08085DC2 - movs r1, 0 -_08085DC2: - cmp r0, 0 - bge _08085DC8 - movs r0, 0 -_08085DC8: - strb r2, [r6] - strb r1, [r6, 0x1] - strb r0, [r6, 0x2] - ldr r0, _08085E80 - ldr r2, [r0] - ldr r7, _08085E84 - ldr r3, [r7] - movs r0, 0xBE - lsls r0, 1 - adds r3, r0 - mov r0, r8 - add r1, sp, 0x8 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - movs r1, 0x1 - add r8, r1 - subs r4, 0x1 - cmp r4, 0 - bne _08085D94 - ldr r2, [sp, 0x18] - cmp r2, 0 - beq _08085E5E - ldr r0, [r7] - ldr r3, _08085E94 - adds r0, r3 - ldr r0, [r0] - ldr r5, [r0, 0x4] - movs r0, 0x80 - lsls r0, 1 - mov r8, r0 - add r6, sp, 0x8 - movs r4, 0xD0 -_08085E0A: - ldrb r0, [r5] - ldr r1, [sp, 0x14] - adds r2, r0, r1 - ldrb r0, [r5, 0x1] - mov r3, r10 - adds r1, r0, r3 - ldrb r0, [r5, 0x2] - add r0, r9 - cmp r2, 0xFF - ble _08085E20 - movs r2, 0xFF -_08085E20: - cmp r1, 0xFF - ble _08085E26 - movs r1, 0xFF -_08085E26: - cmp r0, 0xFF - ble _08085E2C - movs r0, 0xFF -_08085E2C: - cmp r2, 0 - bge _08085E32 - movs r2, 0 -_08085E32: - cmp r1, 0 - bge _08085E38 - movs r1, 0 -_08085E38: - cmp r0, 0 - bge _08085E3E - movs r0, 0 -_08085E3E: - strb r2, [r6] - strb r1, [r6, 0x1] - strb r0, [r6, 0x2] - ldr r0, _08085E80 - ldr r2, [r0] - mov r0, r8 - add r1, sp, 0x8 - movs r3, 0 - bl SetBGPaletteBufferColorRGB - adds r5, 0x4 - movs r0, 0x1 - add r8, r0 - subs r4, 0x1 - cmp r4, 0 - bne _08085E0A -_08085E5E: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08085E70: .4byte gUnknown_202EE88 -_08085E74: .4byte 0xffffff00 -_08085E78: .4byte 0xffff00ff -_08085E7C: .4byte 0xff00ffff -_08085E80: .4byte gUnknown_202EDC8 -_08085E84: .4byte gUnknown_203B418 -_08085E88: .4byte 0xffff0000 -_08085E8C: .4byte gUnknown_202EE8C -_08085E90: .4byte gUnknown_202ECA4 -_08085E94: .4byte 0x000181e4 - thumb_func_end sub_8085C54 - - thumb_func_start sub_8085E98 -sub_8085E98: - ldr r0, _08085EA8 - ldr r0, [r0] - ldr r1, _08085EAC - adds r0, r1 - movs r1, 0 - strb r1, [r0] - bx lr - .align 2, 0 -_08085EA8: .4byte gUnknown_203B418 -_08085EAC: .4byte 0x00018215 - thumb_func_end sub_8085E98 - - thumb_func_start sub_8085EB0 -sub_8085EB0: - ldr r0, _08085EC0 - ldr r0, [r0] - ldr r1, _08085EC4 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - bx lr - .align 2, 0 -_08085EC0: .4byte gUnknown_203B418 -_08085EC4: .4byte 0x00018215 - thumb_func_end sub_8085EB0 - - thumb_func_start sub_8085EC8 -sub_8085EC8: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x28 - adds r4, r0, 0 - mov r8, r1 - mov r9, r2 - adds r6, r3, 0 - ldr r5, [sp, 0x40] - lsls r4, 16 - asrs r4, 16 - lsls r5, 24 - lsrs r5, 24 - adds r0, r4, 0 - bl sub_800EE5C - bl sub_800EF64 - movs r0, 0x46 - bl sub_803E46C - str r4, [sp] - mov r0, r8 - str r0, [sp, 0x4] - mov r2, r9 - str r2, [sp, 0x8] - mov r1, sp - ldrh r0, [r6] - movs r2, 0 - strh r0, [r1, 0xC] - ldrh r0, [r6, 0x2] - strh r0, [r1, 0xE] - mov r0, sp - strh r2, [r0, 0x10] - strh r2, [r0, 0x12] - ldr r0, _08085F3C - str r0, [sp, 0x18] - add r1, sp, 0x1C - ldr r0, _08085F40 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - mov r0, sp - bl sub_800E890 - cmp r5, 0 - beq _08085F2E - bl sub_8085F44 - movs r0, 0x1 - negs r0, r0 -_08085F2E: - add sp, 0x28 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08085F3C: .4byte 0x0000ffff -_08085F40: .4byte gUnknown_8107374 - thumb_func_end sub_8085EC8 - - thumb_func_start sub_8085F44 -sub_8085F44: - push {r4,lr} - adds r4, r0, 0 - b _08085F5C -_08085F4A: - ldr r0, _08085F70 - ldr r0, [r0] - ldr r1, _08085F74 - adds r0, r1 - bl sub_800E90C - movs r0, 0x46 - bl sub_803E46C -_08085F5C: - adds r0, r4, 0 - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - bne _08085F4A - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08085F70: .4byte gUnknown_203B418 -_08085F74: .4byte 0x000181f0 - thumb_func_end sub_8085F44 - - thumb_func_start sub_8085F78 -sub_8085F78: - push {lr} - ldr r0, _08085F94 - ldr r0, [r0] - ldr r1, _08085F98 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3C - bls _08085F8A - b _080860A4 -_08085F8A: - lsls r0, 2 - ldr r1, _08085F9C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08085F94: .4byte gUnknown_203B418 -_08085F98: .4byte 0x00003a0d -_08085F9C: .4byte _08085FA0 - .align 2, 0 -_08085FA0: - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _08086094 - .4byte _08086094 - .4byte _08086094 - .4byte _0808609A - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A0 - .4byte _080860A0 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 - .4byte _080860A4 -_08086094: - bl sub_8088848 - b _080860A4 -_0808609A: - bl sub_8088EE8 - b _080860A4 -_080860A0: - bl sub_808A718 -_080860A4: - pop {r0} - bx r0 - thumb_func_end sub_8085F78 - - thumb_func_start sub_80860A8 -sub_80860A8: - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - ldr r0, _08086108 - ldr r2, [r0] - movs r3, 0x1 -_080860B6: - ldrb r1, [r2] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _080860C6 - ldrb r0, [r2, 0x2] - cmp r0, r6 - beq _08086104 -_080860C6: - adds r2, 0x4 - adds r5, 0x1 - cmp r5, 0x13 - ble _080860B6 - movs r5, 0 -_080860D0: - ldr r0, _0808610C - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08086110 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08086114 - ldr r2, [r4, 0x70] - adds r0, r2, 0 - adds r0, 0x60 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08086114 - adds r0, r2, 0 - adds r0, 0x62 - ldrb r0, [r0] - cmp r0, r6 - bne _08086114 -_08086104: - movs r0, 0x1 - b _0808611C - .align 2, 0 -_08086108: .4byte gUnknown_203B460 -_0808610C: .4byte gUnknown_203B418 -_08086110: .4byte 0x0001357c -_08086114: - adds r5, 0x1 - cmp r5, 0x3 - ble _080860D0 - movs r0, 0 -_0808611C: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80860A8 - - thumb_func_start sub_8086124 -sub_8086124: - ldr r0, [r0, 0x70] - movs r2, 0xB0 - lsls r2, 1 - adds r0, r2 - strb r1, [r0] - bx lr - thumb_func_end sub_8086124 - - thumb_func_start sub_8086130 -sub_8086130: - push {lr} - movs r0, 0x3C - bl sub_8083ED8 - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08086194 - ldr r0, [r0] - bl sub_8052FB8 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08086198 - ldr r0, [r0] - bl sub_8052FB8 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808619C - ldr r0, [r0] - bl sub_8052FB8 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _080861A0 - ldr r0, [r0] - bl sub_8052FB8 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _080861A4 - ldr r0, [r0] - bl sub_8052FB8 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - pop {r0} - bx r0 - .align 2, 0 -_08086194: .4byte gUnknown_810665C -_08086198: .4byte gUnknown_810668C -_0808619C: .4byte gUnknown_81066D4 -_080861A0: .4byte gUnknown_81066F0 -_080861A4: .4byte gUnknown_810671C - thumb_func_end sub_8086130 - - thumb_func_start sub_80861A8 -sub_80861A8: - push {lr} - movs r1, 0 - movs r2, 0x8 - bl sub_806CDD4 - pop {r0} - bx r0 - thumb_func_end sub_80861A8 - - thumb_func_start sub_80861B8 -sub_80861B8: - push {r4,r5,lr} - adds r4, r1, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, [r0, 0x70] - adds r1, r4, 0 - bl sub_806CDD4 - adds r5, 0xFE - strb r4, [r5] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80861B8 - - thumb_func_start sub_80861D4 -sub_80861D4: - push {r4,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r1, 24 - bl sub_806CDD4 - adds r0, r4, 0 - bl sub_80861EC - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80861D4 - - thumb_func_start sub_80861EC -sub_80861EC: - ldr r0, [r0, 0x70] - adds r0, 0xFE - movs r1, 0x63 - strb r1, [r0] - bx lr - thumb_func_end sub_80861EC - - thumb_func_start sub_80861F8 -sub_80861F8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - adds r6, r1, 0 - lsls r0, 16 - asrs r0, 16 - adds r5, r0, 0 - lsls r2, 24 - lsrs r2, 24 - mov r10, r2 - bl sub_800EE5C - bl sub_800EF64 - movs r0, 0x46 - bl sub_803E46C - ldr r0, [r6, 0x70] - mov r8, r0 - movs r1, 0 - mov r9, r1 - str r1, [sp, 0x28] - adds r0, r5, 0 - bl sub_800E700 - adds r7, r0, 0 - add r4, sp, 0x28 - movs r2, 0x1 - negs r2, r2 - cmp r7, r2 - beq _0808624A - adds r1, r6, 0 - adds r1, 0x28 - lsls r2, r7, 24 - lsrs r2, 24 - adds r0, r4, 0 - bl sub_800569C -_0808624A: - str r5, [sp] - mov r3, r9 - str r3, [sp, 0x4] - mov r0, r8 - adds r0, 0x46 - ldrb r0, [r0] - str r0, [sp, 0x8] - mov r1, sp - ldr r0, [r6, 0xC] - cmp r0, 0 - bge _08086262 - adds r0, 0xFF -_08086262: - asrs r0, 8 - strh r0, [r1, 0xC] - mov r1, sp - ldr r0, [r6, 0x10] - cmp r0, 0 - bge _08086270 - adds r0, 0xFF -_08086270: - asrs r0, 8 - strh r0, [r1, 0xE] - mov r1, sp - ldrh r0, [r4] - strh r0, [r1, 0x10] - add r0, sp, 0x28 - ldrh r0, [r0, 0x2] - strh r0, [r1, 0x12] - str r7, [sp, 0x14] - ldr r0, _080862B4 - str r0, [sp, 0x18] - add r1, sp, 0x1C - ldr r0, _080862B8 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - mov r0, sp - bl sub_800E890 - mov r4, r10 - cmp r4, 0 - beq _080862A2 - bl sub_8085F44 - movs r0, 0x1 - negs r0, r0 -_080862A2: - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080862B4: .4byte 0x0000ffff -_080862B8: .4byte gUnknown_8107380 - thumb_func_end sub_80861F8 - - thumb_func_start sub_80862BC -sub_80862BC: - push {r4,lr} - adds r4, r0, 0 - movs r0, 0xE8 - lsls r0, 1 - bl sub_8083E38 - ldr r0, _080862D8 - adds r1, r4, 0 - movs r2, 0 - bl sub_80861F8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080862D8: .4byte 0x00000143 - thumb_func_end sub_80862BC - - thumb_func_start sub_80862DC -sub_80862DC: - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r0, [r4, 0xC] - str r0, [sp] - ldr r0, [r4, 0x10] - movs r1, 0xE0 - lsls r1, 6 - adds r0, r1 - str r0, [sp, 0x4] - adds r0, r4, 0 - mov r1, sp - bl sub_804535C - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x4 - bl sub_806CDD4 - adds r0, r4, 0 - bl sub_8086A54 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80862DC - - thumb_func_start sub_8086310 -sub_8086310: - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r0, [r4, 0xC] - str r0, [sp] - ldr r0, [r4, 0x10] - movs r1, 0x90 - lsls r1, 8 - adds r0, r1 - str r0, [sp, 0x4] - adds r0, r4, 0 - mov r1, sp - bl sub_804535C - adds r0, r4, 0 - movs r1, 0 - bl sub_806CE68 - adds r0, r4, 0 - bl sub_8086A3C - adds r4, 0x20 - movs r0, 0 - strb r0, [r4] - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8086310 - - thumb_func_start sub_8086348 -sub_8086348: - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r0, [r4, 0xC] - movs r1, 0xF0 - lsls r1, 7 - adds r0, r1 - str r0, [sp] - ldr r0, [r4, 0x10] - ldr r1, _08086380 - adds r0, r1 - str r0, [sp, 0x4] - adds r0, r4, 0 - mov r1, sp - bl sub_804535C - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x6 - bl sub_806CDD4 - adds r0, r4, 0 - bl sub_8086A54 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08086380: .4byte 0xffffe000 - thumb_func_end sub_8086348 - - thumb_func_start sub_8086384 -sub_8086384: - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r0, [r4, 0xC] - movs r1, 0xF0 - lsls r1, 7 - adds r0, r1 - str r0, [sp] - ldr r0, [r4, 0x10] - str r0, [sp, 0x4] - adds r0, r4, 0 - mov r1, sp - bl sub_804535C - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x6 - bl sub_806CDD4 - adds r0, r4, 0 - bl sub_8086A54 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8086384 - - thumb_func_start sub_80863B8 -sub_80863B8: - push {lr} - movs r1, 0 - movs r2, 0x4 - bl sub_806CDD4 - pop {r0} - bx r0 - thumb_func_end sub_80863B8 - - thumb_func_start sub_80863C8 -sub_80863C8: - push {lr} - movs r1, 0 - movs r2, 0 - bl sub_806CDD4 - pop {r0} - bx r0 - thumb_func_end sub_80863C8 - - thumb_func_start sub_80863D8 -sub_80863D8: - push {lr} - movs r1, 0 - movs r2, 0x6 - bl sub_806CDD4 - pop {r0} - bx r0 - thumb_func_end sub_80863D8 - - thumb_func_start sub_80863E8 -sub_80863E8: - push {lr} - movs r1, 0x6 - movs r2, 0x4 - bl sub_806CDD4 - pop {r0} - bx r0 - thumb_func_end sub_80863E8 - - thumb_func_start sub_80863F8 -sub_80863F8: - push {lr} - movs r1, 0x4 - bl sub_806CE68 - pop {r0} - bx r0 - thumb_func_end sub_80863F8 - - thumb_func_start sub_8086404 -sub_8086404: - push {lr} - movs r1, 0x6 - bl sub_806CE68 - pop {r0} - bx r0 - thumb_func_end sub_8086404 - - thumb_func_start sub_8086410 -sub_8086410: - push {lr} - ldr r2, _08086420 - movs r1, 0 - bl sub_804539C - pop {r0} - bx r0 - .align 2, 0 -_08086420: .4byte 0xffffff00 - thumb_func_end sub_8086410 - - thumb_func_start sub_8086424 -sub_8086424: - push {lr} - movs r2, 0x80 - lsls r2, 1 - movs r1, 0 - bl sub_804539C - pop {r0} - bx r0 - thumb_func_end sub_8086424 - - thumb_func_start sub_8086434 -sub_8086434: - push {lr} - ldr r1, _08086444 - movs r2, 0 - bl sub_804539C - pop {r0} - bx r0 - .align 2, 0 -_08086444: .4byte 0xffffff00 - thumb_func_end sub_8086434 - - thumb_func_start sub_8086448 -sub_8086448: - push {r4,r5,lr} - ldr r0, _08086488 - bl sub_80855E4 - movs r5, 0x37 -_08086452: - bl sub_803F994 - adds r4, r0, 0 - bl sub_803F9B0 - adds r1, r0, 0 - movs r0, 0x80 - lsls r0, 1 - adds r1, r0 - adds r0, r4, 0 - bl sub_803F878 - ldr r0, _0808648C - bl sub_80855E4 - movs r0, 0x46 - bl sub_803E46C - subs r5, 0x1 - cmp r5, 0 - bge _08086452 - ldr r0, _08086490 - bl sub_80855E4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08086488: .4byte sub_80862DC -_0808648C: .4byte sub_8086410 -_08086490: .4byte sub_80863F8 - thumb_func_end sub_8086448 - - thumb_func_start sub_8086494 -sub_8086494: - push {r4,lr} - movs r0, 0x3 - bl sub_8085930 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x2 - bl sub_8085930 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x1 - bl sub_8085930 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0 - bl sub_8085930 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - ldr r0, _080864F4 - bl sub_80855E4 - movs r4, 0x8F -_080864D6: - ldr r0, _080864F8 - bl sub_80855E4 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _080864D6 - ldr r0, _080864FC - bl sub_80855E4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080864F4: .4byte sub_80863C8 -_080864F8: .4byte sub_8086424 -_080864FC: .4byte sub_8086310 - thumb_func_end sub_8086494 - - thumb_func_start sub_8086500 -sub_8086500: - push {r4,r5,lr} - ldr r0, _08086540 - bl sub_80855E4 - movs r5, 0x47 -_0808650A: - bl sub_803F994 - adds r4, r0, 0 - movs r0, 0x80 - lsls r0, 1 - adds r4, r0 - bl sub_803F9B0 - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_803F878 - ldr r0, _08086544 - bl sub_80855E4 - movs r0, 0x46 - bl sub_803E46C - subs r5, 0x1 - cmp r5, 0 - bge _0808650A - ldr r0, _08086548 - bl sub_80855E4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08086540: .4byte sub_8086348 -_08086544: .4byte sub_8086434 -_08086548: .4byte sub_8086404 - thumb_func_end sub_8086500 - - thumb_func_start sub_808654C -sub_808654C: - push {r4,r5,lr} - ldr r0, _0808658C - bl sub_80855E4 - movs r5, 0x77 -_08086556: - bl sub_803F994 - adds r4, r0, 0 - movs r0, 0x80 - lsls r0, 1 - adds r4, r0 - bl sub_803F9B0 - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_803F878 - ldr r0, _08086590 - bl sub_80855E4 - movs r0, 0x46 - bl sub_803E46C - subs r5, 0x1 - cmp r5, 0 - bge _08086556 - ldr r0, _08086594 - bl sub_80855E4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808658C: .4byte sub_8086384 -_08086590: .4byte sub_8086434 -_08086594: .4byte sub_8086404 - thumb_func_end sub_808654C - - thumb_func_start sub_8086598 -sub_8086598: - push {r4,r5,lr} - ldr r0, _080865D8 - bl sub_80855E4 - movs r5, 0x17 -_080865A2: - bl sub_803F994 - adds r4, r0, 0 - bl sub_803F9B0 - adds r1, r0, 0 - ldr r0, _080865DC - adds r1, r0 - adds r0, r4, 0 - bl sub_803F878 - ldr r0, _080865E0 - bl sub_80855E4 - movs r0, 0x46 - bl sub_803E46C - subs r5, 0x1 - cmp r5, 0 - bge _080865A2 - ldr r0, _080865E4 - bl sub_80855E4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080865D8: .4byte sub_80863B8 -_080865DC: .4byte 0xffffff00 -_080865E0: .4byte sub_8086410 -_080865E4: .4byte sub_80863F8 - thumb_func_end sub_8086598 - - thumb_func_start sub_80865E8 -sub_80865E8: - push {r4-r6,lr} - ldr r0, _08086630 - bl sub_80855E4 - ldr r6, _08086634 - movs r5, 0xB -_080865F4: - bl sub_803F994 - adds r4, r0, 0 - bl sub_803F9B0 - adds r1, r0, 0 - movs r0, 0x80 - lsls r0, 2 - adds r1, r0 - adds r0, r4, 0 - bl sub_803F878 - adds r0, r6, 0 - bl sub_80855E4 - adds r0, r6, 0 - bl sub_80855E4 - movs r0, 0x46 - bl sub_803E46C - subs r5, 0x1 - cmp r5, 0 - bge _080865F4 - ldr r0, _08086638 - bl sub_80855E4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08086630: .4byte sub_80863E8 -_08086634: .4byte sub_8086424 -_08086638: .4byte sub_80863F8 - thumb_func_end sub_80865E8 - - thumb_func_start sub_808663C -sub_808663C: - push {r4-r6,lr} - ldr r0, _08086684 - bl sub_80855E4 - ldr r6, _08086688 - movs r5, 0xF -_08086648: - bl sub_803F994 - adds r4, r0, 0 - bl sub_803F9B0 - adds r1, r0, 0 - movs r0, 0x80 - lsls r0, 2 - adds r1, r0 - adds r0, r4, 0 - bl sub_803F878 - adds r0, r6, 0 - bl sub_80855E4 - adds r0, r6, 0 - bl sub_80855E4 - movs r0, 0x46 - bl sub_803E46C - subs r5, 0x1 - cmp r5, 0 - bge _08086648 - ldr r0, _0808668C - bl sub_80855E4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08086684: .4byte sub_80863E8 -_08086688: .4byte sub_8086424 -_0808668C: .4byte sub_80863F8 - thumb_func_end sub_808663C - - thumb_func_start sub_8086690 -sub_8086690: - push {r4,lr} - ldr r0, _080866B8 - bl sub_80855E4 - movs r4, 0x2F -_0808669A: - ldr r0, _080866BC - bl sub_80855E4 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _0808669A - ldr r0, _080866C0 - bl sub_80855E4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080866B8: .4byte sub_80863D8 -_080866BC: .4byte sub_8086434 -_080866C0: .4byte sub_8086404 - thumb_func_end sub_8086690 - - thumb_func_start sub_80866C4 -sub_80866C4: - push {r4,lr} - adds r4, r0, 0 - bl sub_8085480 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8086494 - ldr r0, _080866F8 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080866F8: .4byte gUnknown_203B418 - thumb_func_end sub_80866C4 - - thumb_func_start sub_80866FC -sub_80866FC: - push {r4-r6,lr} - sub sp, 0x4 - movs r4, 0 - movs r6, 0 - movs r5, 0xFA - negs r5, r5 -_08086708: - str r6, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, r5 - bge _08086708 - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80866FC - - thumb_func_start sub_808672C -sub_808672C: - push {lr} - bl sub_803E748 - pop {r0} - bx r0 - thumb_func_end sub_808672C - - thumb_func_start sub_8086738 -sub_8086738: - push {r4,r5,lr} - sub sp, 0x4 - movs r4, 0 - movs r5, 0 -_08086740: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - adds r4, 0xA - cmp r4, 0xF9 - ble _08086740 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8086738 - - thumb_func_start sub_8086764 -sub_8086764: - push {r4,r5,lr} - sub sp, 0x4 - movs r4, 0xFA - movs r5, 0 -_0808676C: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x5 - cmp r4, 0 - bge _0808676C - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8086764 - - thumb_func_start sub_8086794 -sub_8086794: - push {r4,r5,lr} - sub sp, 0x4 - ldr r1, _080867A4 - movs r0, 0 - str r0, [r1] - movs r4, 0 - adds r5, r1, 0 - b _080867AA - .align 2, 0 -_080867A4: .4byte gUnknown_202EDC8 -_080867A8: - adds r4, 0x1 -_080867AA: - cmp r4, 0xC7 - bgt _080867D8 - movs r0, 0 - str r0, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - bl sub_803E9D0 - movs r0, 0x46 - bl sub_803E46C - movs r0, 0x3 - ands r0, r4 - cmp r0, 0 - bne _080867A8 - ldr r0, [r5] - adds r0, 0x1 - str r0, [r5] - cmp r0, 0x1F - bne _080867A8 -_080867D8: - movs r0, 0x46 - bl sub_803E46C - ldr r0, _080867F0 - ldr r1, [r0] - movs r0, 0 - strb r0, [r1, 0x7] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080867F0: .4byte gUnknown_203B418 - thumb_func_end sub_8086794 - - thumb_func_start sub_80867F4 -sub_80867F4: - ldr r1, _08086808 - movs r0, 0 - strb r0, [r1] - strb r0, [r1, 0x1] - strb r0, [r1, 0x2] - strb r0, [r1, 0x3] - strb r0, [r1, 0x4] - strb r0, [r1, 0x5] - bx lr - .align 2, 0 -_08086808: .4byte gUnknown_202F3D0 - thumb_func_end sub_80867F4 - - thumb_func_start sub_808680C -sub_808680C: - push {lr} - ldr r0, _08086824 - movs r1, 0x1 - strb r1, [r0] - ldrb r0, [r0, 0x3] - cmp r0, 0 - beq _08086820 - ldr r0, _08086828 - bl sub_8083E38 -_08086820: - pop {r0} - bx r0 - .align 2, 0 -_08086824: .4byte gUnknown_202F3D0 -_08086828: .4byte 0x000001f9 - thumb_func_end sub_808680C - - thumb_func_start sub_808682C -sub_808682C: - ldr r1, _08086834 - movs r0, 0 - strb r0, [r1] - bx lr - .align 2, 0 -_08086834: .4byte gUnknown_202F3D0 - thumb_func_end sub_808682C - - thumb_func_start sub_8086838 -sub_8086838: - ldr r3, _08086844 - strb r0, [r3, 0x1] - strb r1, [r3, 0x2] - strb r2, [r3, 0x3] - bx lr - .align 2, 0 -_08086844: .4byte gUnknown_202F3D0 - thumb_func_end sub_8086838 - - thumb_func_start sub_8086848 -sub_8086848: - ldr r2, _08086850 - strb r0, [r2, 0x4] - strb r1, [r2, 0x5] - bx lr - .align 2, 0 -_08086850: .4byte gUnknown_202F3D0 - thumb_func_end sub_8086848 - - thumb_func_start sub_8086854 -sub_8086854: - push {r4,lr} - ldr r4, _08086874 - ldrb r1, [r4] - cmp r1, 0 - beq _080868DC - ldrb r0, [r4, 0x4] - cmp r0, 0 - bne _080868A4 - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _08086878 - movs r0, 0x50 - strb r0, [r4, 0x4] - movs r0, 0x10 - b _0808688A - .align 2, 0 -_08086874: .4byte gUnknown_202F3D0 -_08086878: - movs r0, 0x6 - bl RandomCapped - adds r0, 0x2 - strb r0, [r4, 0x4] - movs r0, 0x6 - bl RandomCapped - adds r0, 0x2 -_0808688A: - strb r0, [r4, 0x5] - ldr r0, _0808689C - ldrb r0, [r0, 0x3] - cmp r0, 0 - beq _080868A8 - ldr r0, _080868A0 - bl sub_8083E38 - b _080868A8 - .align 2, 0 -_0808689C: .4byte gUnknown_202F3D0 -_080868A0: .4byte 0x000001f9 -_080868A4: - subs r0, 0x1 - strb r0, [r4, 0x4] -_080868A8: - ldr r3, _080868CC - ldrb r0, [r3, 0x5] - cmp r0, 0 - beq _080868B4 - subs r0, 0x1 - strb r0, [r3, 0x5] -_080868B4: - ldr r0, _080868D0 - ldr r1, [r0] - ldr r0, _080868D4 - adds r1, r0 - ldr r2, _080868D8 - ldrb r0, [r3, 0x5] - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - str r0, [r1] - b _080868E6 - .align 2, 0 -_080868CC: .4byte gUnknown_202F3D0 -_080868D0: .4byte gUnknown_203B418 -_080868D4: .4byte 0x000181fc -_080868D8: .4byte gUnknown_8107314 -_080868DC: - ldr r0, _080868EC - ldr r0, [r0] - ldr r2, _080868F0 - adds r0, r2 - str r1, [r0] -_080868E6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080868EC: .4byte gUnknown_203B418 -_080868F0: .4byte 0x000181fc - thumb_func_end sub_8086854 - - thumb_func_start sub_80868F4 -sub_80868F4: - ldr r1, [r0, 0x70] - movs r2, 0xAE - lsls r2, 1 - adds r1, r2 - movs r2, 0x1 - strb r2, [r1] - ldr r0, [r0, 0x70] - ldr r1, _0808690C - adds r0, r1 - strb r2, [r0] - bx lr - .align 2, 0 -_0808690C: .4byte 0x0000015d - thumb_func_end sub_80868F4 - - thumb_func_start sub_8086910 -sub_8086910: - ldr r1, [r0, 0x70] - movs r2, 0xAE - lsls r2, 1 - adds r1, r2 - movs r2, 0 - strb r2, [r1] - ldr r0, [r0, 0x70] - ldr r1, _08086928 - adds r0, r1 - strb r2, [r0] - bx lr - .align 2, 0 -_08086928: .4byte 0x0000015d - thumb_func_end sub_8086910 - - thumb_func_start sub_808692C -sub_808692C: - push {lr} - movs r0, 0x5 - bl sub_80859F0 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x6 - bl sub_80859F0 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x7 - bl sub_80859F0 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0 - bl sub_80859F0 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - pop {r0} - bx r0 - thumb_func_end sub_808692C - - thumb_func_start sub_808696C -sub_808696C: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, [r5, 0x70] - adds r0, 0x46 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x4 - bl sub_8002984 - adds r4, r0, 0 - lsls r4, 24 - asrs r4, 24 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x2 - adds r3, r4, 0 - bl sub_80869E4 - movs r0, 0xF - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0x5 - bl sub_8002984 - adds r4, r0, 0 - lsls r4, 24 - asrs r4, 24 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x1 - adds r3, r4, 0 - bl sub_80869E4 - movs r0, 0xF - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0x4 - bl sub_8002984 - adds r3, r0, 0 - lsls r3, 24 - asrs r3, 24 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x2 - bl sub_80869E4 - movs r0, 0xF - movs r1, 0x46 - bl sub_803E708 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808696C - - thumb_func_start sub_80869E4 -sub_80869E4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r7, r0, 0 - mov r9, r1 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - lsls r3, 24 - asrs r6, r3, 24 - ldr r0, [r7, 0x70] - adds r0, 0x46 - movs r4, 0 - ldrsb r4, [r0, r4] - cmp r4, r6 - beq _08086A30 - adds r5, r0, 0 -_08086A08: - adds r0, r4, 0 - adds r1, r6, 0 - mov r2, r8 - bl sub_8002A70 - lsls r0, 24 - asrs r4, r0, 24 - movs r0, 0x7 - ands r0, r4 - strb r0, [r5] - ldrb r1, [r5] - adds r0, r7, 0 - bl sub_806CE68 - mov r0, r9 - movs r1, 0x46 - bl sub_803E708 - cmp r4, r6 - bne _08086A08 -_08086A30: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80869E4 - - thumb_func_start sub_8086A3C -sub_8086A3C: - ldr r1, [r0, 0x70] - movs r2, 0xAE - lsls r2, 1 - adds r1, r2 - movs r2, 0x1 - strb r2, [r1] - ldr r0, [r0, 0x70] - movs r1, 0xAF - lsls r1, 1 - adds r0, r1 - strb r2, [r0] - bx lr - thumb_func_end sub_8086A3C - - thumb_func_start sub_8086A54 -sub_8086A54: - ldr r1, [r0, 0x70] - movs r2, 0xAE - lsls r2, 1 - adds r1, r2 - movs r3, 0 - movs r2, 0x1 - strb r2, [r1] - ldr r0, [r0, 0x70] - movs r1, 0xAF - lsls r1, 1 - adds r0, r1 - strb r3, [r0] - bx lr - thumb_func_end sub_8086A54 - - thumb_func_start sub_8086A70 -sub_8086A70: - push {r4-r6,lr} - adds r5, r0, 0 - lsls r2, 16 - lsrs r4, r2, 16 - ldr r3, [r5, 0x70] - adds r2, r3, 0 - movs r0, 0xF7 - adds r0, r3 - mov r12, r0 - movs r0, 0x1 - mov r6, r12 - strb r0, [r6] - ldrh r0, [r3, 0x10] - strh r0, [r3, 0x12] - cmp r1, 0 - beq _08086A94 - strh r1, [r3, 0x10] - strh r1, [r3, 0xE] -_08086A94: - ldr r0, _08086AB8 - ldr r0, [r0] - ldr r1, _08086ABC - adds r0, r1 - strh r4, [r0] - adds r0, r2, 0 - adds r0, 0x8C - mov r2, r12 - ldrb r1, [r2] - bl sub_808EC94 - adds r0, r5, 0 - bl sub_807191C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08086AB8: .4byte gUnknown_203B418 -_08086ABC: .4byte 0x0000066a - thumb_func_end sub_8086A70 - - thumb_func_start sub_8086AC0 -sub_8086AC0: - push {lr} - bl sub_8044B28 - lsls r0, 24 - cmp r0, 0 - bne _08086ADA - ldr r0, _08086AE0 - ldr r0, [r0] - ldrb r0, [r0, 0x2] - cmp r0, 0 - bne _08086ADA - bl sub_8097FF8 -_08086ADA: - pop {r0} - bx r0 - .align 2, 0 -_08086AE0: .4byte gUnknown_203B418 - thumb_func_end sub_8086AC0 - - thumb_func_start sub_8086AE4 -sub_8086AE4: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - ldr r0, _08086B04 - ldr r0, [r0] - ldr r2, _08086B08 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08086B0C - adds r0, r1, 0 - bl sub_808E734 - lsls r0, 24 - lsrs r0, 24 - b _08086B0E - .align 2, 0 -_08086B04: .4byte gUnknown_203B418 -_08086B08: .4byte 0x0000065c -_08086B0C: - movs r0, 0x1 -_08086B0E: - pop {r1} - bx r1 - thumb_func_end sub_8086AE4 - - thumb_func_start sub_8086B14 -sub_8086B14: - push {r4-r6,lr} - mov r6, r8 - push {r6} - bl sub_8085480 - mov r8, r0 - movs r0, 0x4 - bl sub_8085680 - adds r6, r0, 0 - movs r0, 0x3 - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_8085374 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r4, _08086B8C - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r5, 0 - bl _call_via_r4 - ldr r0, [r6, 0x70] - movs r1, 0xAE - lsls r1, 1 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - mov r2, r8 - movs r3, 0x4 - ldrsh r0, [r2, r3] - movs r3, 0x6 - ldrsh r1, [r2, r3] - subs r1, 0x2 - bl sub_8085860 - ldr r4, _08086B90 - adds r0, r4, 0 - movs r1, 0x32 - bl sub_808D8BC - adds r4, 0x50 - adds r0, r4, 0 - movs r1, 0xFC - bl sub_808D8BC - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08086B8C: .4byte sub_8086A3C -_08086B90: .4byte gUnknown_202E038 - thumb_func_end sub_8086B14 - - thumb_func_start sub_8086B94 -sub_8086B94: - push {r4-r6,lr} - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0x4 - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0x3 - bl sub_8085680 - movs r4, 0x87 - lsls r4, 2 - adds r1, r4, 0 - movs r2, 0 - bl sub_8068FE0 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8068FE0 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - movs r1, 0x4 - ldrsh r0, [r6, r1] - movs r2, 0x6 - ldrsh r1, [r6, r2] - bl sub_8085860 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8086B94 - - thumb_func_start sub_8086BDC -sub_8086BDC: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xFF - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x1 - bhi _08086C02 - cmp r0, 0x3 - bne _08086C02 - movs r0, 0x1 - bl sub_8097FA8 - ldr r0, _08086C08 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_08086C02: - pop {r0} - bx r0 - .align 2, 0 -_08086C08: .4byte gUnknown_203B418 - thumb_func_end sub_8086BDC - - thumb_func_start sub_8086C0C -sub_8086C0C: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x10 - bl sub_8085480 - mov r8, r0 - bl sub_808548C - mov r9, r0 - movs r0, 0x4 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x3 - bl sub_8085680 - adds r6, r0, 0 - ldr r0, [r4, 0xC] - str r0, [sp] - ldr r0, [r4, 0x10] - movs r1, 0xC0 - lsls r1, 6 - adds r0, r1 - str r0, [sp, 0x4] - ldr r0, [r6, 0xC] - str r0, [sp, 0x8] - ldr r0, [r6, 0x10] - movs r2, 0x80 - lsls r2, 6 - adds r0, r2 - add r5, sp, 0x8 - str r0, [r5, 0x4] - bl sub_8086448 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - mov r0, r9 - bl sub_80862BC - movs r0, 0x20 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08086D84 - bl sub_8052910 - mov r0, sp - movs r1, 0x40 - bl sub_80858AC - movs r0, 0x40 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x30 - bl sub_80858AC - ldr r0, _08086D88 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, [r4, 0x70] - ldr r2, _08086D8C - adds r1, r0, r2 - movs r0, 0x1 - strb r0, [r1] - mov r0, sp - movs r1, 0x30 - bl sub_80858AC - ldr r0, _08086D90 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x20 - bl sub_80858AC - movs r0, 0x20 - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_8086E74 - ldr r0, _08086D94 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08086D98 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08086D9C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08086DA0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - movs r1, 0xD - movs r2, 0 - bl sub_806CDD4 - ldr r0, _08086DA4 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - mov r0, r9 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x2 - bl sub_80869E4 - mov r0, r8 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x6 - bl sub_80869E4 - ldr r0, _08086DA8 - bl sub_8052910 - mov r0, r9 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x4 - bl sub_80869E4 - mov r0, r8 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x4 - bl sub_80869E4 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0xB - bl sub_8083E88 - movs r0, 0xC - add r8, r0 - mov r0, r8 - movs r1, 0x10 - bl sub_80858AC - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08086D84: .4byte gUnknown_8100768 -_08086D88: .4byte gUnknown_8100798 -_08086D8C: .4byte 0x0000015d -_08086D90: .4byte gUnknown_8100820 -_08086D94: .4byte gUnknown_8100844 -_08086D98: .4byte gUnknown_8100880 -_08086D9C: .4byte gUnknown_8100928 -_08086DA0: .4byte gUnknown_8100A04 -_08086DA4: .4byte gUnknown_8100B80 -_08086DA8: .4byte gUnknown_8100BC0 - thumb_func_end sub_8086C0C - - thumb_func_start sub_8086DAC -sub_8086DAC: - push {r4,r5,lr} - sub sp, 0x8 - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x3 - bl sub_8085680 - adds r4, r0, 0 - ldr r0, [r4, 0xC] - str r0, [sp] - ldr r0, [r4, 0x10] - movs r1, 0x80 - lsls r1, 6 - adds r0, r1 - str r0, [sp, 0x4] - bl sub_8086448 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_8086E74 - mov r0, sp - movs r1, 0x10 - bl sub_80858AC - ldr r0, _08086E34 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08086E38 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0xD - movs r2, 0 - bl sub_806CDD4 - ldr r0, _08086E3C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r5, 0xC - adds r0, r5, 0 - movs r1, 0x10 - bl sub_80858AC - movs r0, 0xB - bl sub_8083E88 - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08086E34: .4byte gUnknown_8100C90 -_08086E38: .4byte gUnknown_8100CBC -_08086E3C: .4byte gUnknown_8100CDC - thumb_func_end sub_8086DAC - - thumb_func_start sub_8086E40 -sub_8086E40: - push {lr} - bl sub_8085480 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08086E6C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08086E70 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] - pop {r0} - bx r0 - .align 2, 0 -_08086E6C: .4byte gUnknown_8100D3C -_08086E70: .4byte gUnknown_203B418 - thumb_func_end sub_8086E40 - - thumb_func_start sub_8086E74 -sub_8086E74: - push {r4,lr} - adds r4, r0, 0 - movs r1, 0xF - movs r2, 0 - bl sub_806CDD4 - adds r0, r4, 0 - bl sub_8086A54 - movs r0, 0xFC - lsls r0, 1 - bl sub_8083E38 - movs r0, 0x44 - movs r1, 0x46 - bl sub_803E708 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8086E74 - - thumb_func_start sub_8086E9C -sub_8086E9C: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_8085374 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r4, _08086EF8 - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r4, 0 - bl sub_808563C - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r4, _08086EFC - adds r0, r4, 0 - movs r1, 0xB - bl sub_808D8BC - adds r0, r4, 0 - adds r0, 0x50 - movs r1, 0x5E - bl sub_808D8BC - adds r4, 0xA0 - adds r0, r4, 0 - movs r1, 0xA - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08086EF8: .4byte sub_8086A3C -_08086EFC: .4byte gUnknown_202E038 - thumb_func_end sub_8086E9C - - thumb_func_start sub_8086F00 -sub_8086F00: - push {r4,lr} - bl sub_8085480 - adds r4, r0, 0 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _08086F4C - bl sub_80855E4 - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r4, _08086F50 - adds r0, r4, 0 - movs r1, 0xB - bl sub_808D8BC - adds r0, r4, 0 - adds r0, 0x50 - movs r1, 0x5E - bl sub_808D8BC - adds r4, 0xA0 - adds r0, r4, 0 - movs r1, 0xA - bl sub_808D8BC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08086F4C: .4byte sub_8086A3C -_08086F50: .4byte gUnknown_202E038 - thumb_func_end sub_8086F00 - - thumb_func_start sub_8086F54 -sub_8086F54: - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - movs r0, 0xFC - lsls r0, 24 - adds r1, r0 - lsrs r1, 24 - cmp r1, 0x1 - bhi _08086FA8 - movs r5, 0 -_08086F6A: - ldr r0, _08086FB0 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _08086FB4 - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _08086F8E - ldr r0, [r4, 0x70] - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, r6 - bne _08086FA8 -_08086F8E: - adds r5, 0x1 - cmp r5, 0xF - ble _08086F6A - movs r0, 0 - cmp r0, 0 - bne _08086FA8 - movs r0, 0x3 - bl sub_8097FA8 - ldr r0, _08086FB0 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_08086FA8: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08086FB0: .4byte gUnknown_203B418 -_08086FB4: .4byte 0x0001358c - thumb_func_end sub_8086F54 - - thumb_func_start sub_8086FB8 -sub_8086FB8: - push {r4,lr} - bl sub_8085480 - adds r4, r0, 0 - bl sub_8086448 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087048 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808704C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8087144 - movs r0, 0xA - bl sub_8083E88 - ldr r0, _08087050 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087054 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087058 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808705C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087060 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08087048: .4byte gUnknown_8100DB0 -_0808704C: .4byte gUnknown_8100E64 -_08087050: .4byte gUnknown_8100E88 -_08087054: .4byte gUnknown_8100F14 -_08087058: .4byte gUnknown_8101004 -_0808705C: .4byte gUnknown_8101050 -_08087060: .4byte gUnknown_81010D0 - thumb_func_end sub_8086FB8 - - thumb_func_start sub_8087064 -sub_8087064: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - bl sub_808548C - adds r5, r0, 0 - bl sub_8086448 - ldr r0, _08087118 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808711C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8087144 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087120 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087124 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0x6 - movs r2, 0x4 - bl sub_806CDD4 - adds r0, r5, 0 - movs r1, 0x6 - movs r2, 0x4 - bl sub_806CDD4 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0x7 - movs r2, 0x4 - bl sub_806CDD4 - adds r0, r5, 0 - movs r1, 0x7 - movs r2, 0x4 - bl sub_806CDD4 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087128 - bl sub_8052910 - ldr r0, _0808712C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08087118: .4byte gUnknown_8101164 -_0808711C: .4byte gUnknown_8100E64 -_08087120: .4byte gUnknown_8101240 -_08087124: .4byte gUnknown_8101310 -_08087128: .4byte gUnknown_810137C -_0808712C: .4byte gUnknown_8101408 - thumb_func_end sub_8087064 - - thumb_func_start sub_8087130 -sub_8087130: - push {lr} - bl sub_8086448 - ldr r0, _08087140 - bl sub_80866C4 - pop {r0} - bx r0 - .align 2, 0 -_08087140: .4byte gUnknown_8101440 - thumb_func_end sub_8087130 - - thumb_func_start sub_8087144 -sub_8087144: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xF0 - movs r0, 0x5 - bl sub_8085680 - adds r7, r0, 0 - movs r0, 0x6 - bl sub_8085680 - mov r8, r0 - movs r0, 0x7 - bl sub_8085680 - mov r9, r0 - ldr r1, _080871E0 - mov r0, sp - movs r2, 0x38 - bl memcpy - add r6, sp, 0x38 - ldr r1, _080871E4 - adds r0, r6, 0 - movs r2, 0x38 - bl memcpy - add r4, sp, 0x70 - ldr r1, _080871E8 - adds r0, r4, 0 - movs r2, 0x38 - bl memcpy - add r5, sp, 0xA8 - mov r0, sp - str r0, [r5] - str r6, [r5, 0x4] - str r4, [r5, 0x8] - add r4, sp, 0xB4 - str r7, [r4] - mov r3, r8 - str r3, [r4, 0x4] - mov r0, r9 - str r0, [r4, 0x8] - movs r0, 0xA - bl sub_8083E88 - adds r0, r7, 0 - bl sub_8086A54 - mov r0, r8 - bl sub_8086A54 - mov r0, r9 - bl sub_8086A54 - add r6, sp, 0xC0 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - movs r3, 0x3 - bl sub_8085B4C - ldr r0, [r7, 0x70] - ldr r2, _080871EC - adds r0, r2 - movs r1, 0x1 - strb r1, [r0] - mov r3, r8 - ldr r0, [r3, 0x70] - adds r0, r2 - strb r1, [r0] - mov r3, r9 - ldr r0, [r3, 0x70] - adds r0, r2 - strb r1, [r0] - b _080871F6 - .align 2, 0 -_080871E0: .4byte gUnknown_810739C -_080871E4: .4byte gUnknown_81073D4 -_080871E8: .4byte gUnknown_810740C -_080871EC: .4byte 0x0000015f -_080871F0: - movs r0, 0x46 - bl sub_803E46C -_080871F6: - adds r0, r6, 0 - bl sub_8085B80 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _080871F0 - ldr r0, [r7, 0x70] - ldr r1, _0808722C - adds r0, r1 - strb r2, [r0] - mov r3, r8 - ldr r0, [r3, 0x70] - adds r0, r1 - strb r2, [r0] - mov r3, r9 - ldr r0, [r3, 0x70] - adds r0, r1 - strb r2, [r0] - add sp, 0xF0 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808722C: .4byte 0x0000015f - thumb_func_end sub_8087144 - - thumb_func_start sub_8087230 -sub_8087230: - push {r4-r6,lr} - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0x8 - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_8085374 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r4, _08087294 - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r5, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r5, 0 - bl _call_via_r4 - movs r1, 0x4 - ldrsh r0, [r6, r1] - movs r2, 0x6 - ldrsh r1, [r6, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r4, _08087298 - movs r1, 0x96 - lsls r1, 1 - adds r0, r4, 0 - bl sub_808D8BC - adds r4, 0x50 - adds r0, r4, 0 - movs r1, 0x91 - bl sub_808D8BC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08087294: .4byte sub_8086A3C -_08087298: .4byte gUnknown_202E038 - thumb_func_end sub_8087230 - - thumb_func_start sub_808729C -sub_808729C: - push {r4-r6,lr} - sub sp, 0x4 - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x8 - bl sub_8085680 - adds r4, r0, 0 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r6, _080872DC - adds r0, r6, 0 - bl sub_80855E4 - movs r0, 0x91 - bl sub_8086AE4 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _080872E0 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _08087300 - .align 2, 0 -_080872DC: .4byte sub_8086A3C -_080872E0: - ldr r0, _0808732C - movs r3, 0 - ldrsh r2, [r0, r3] - str r1, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0 - bl sub_8072008 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r4, 0 - bl _call_via_r6 -_08087300: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r4, _08087330 - movs r1, 0x96 - lsls r1, 1 - adds r0, r4, 0 - bl sub_808D8BC - adds r4, 0x50 - adds r0, r4, 0 - movs r1, 0x91 - bl sub_808D8BC - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808732C: .4byte gUnknown_80F57CC -_08087330: .4byte gUnknown_202E038 - thumb_func_end sub_808729C - - thumb_func_start sub_8087334 -sub_8087334: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xF9 - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x2 - bhi _0808735A - cmp r0, 0x8 - bne _0808735A - movs r0, 0x5 - bl sub_8097FA8 - ldr r0, _08087360 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_0808735A: - pop {r0} - bx r0 - .align 2, 0 -_08087360: .4byte gUnknown_203B418 - thumb_func_end sub_8087334 - - thumb_func_start sub_8087364 -sub_8087364: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x70 - bl sub_8085480 - mov r9, r0 - bl sub_808548C - adds r6, r0, 0 - movs r0, 0x8 - bl sub_8085680 - str r0, [sp, 0x68] - bl sub_8086448 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x2 - bl sub_80869E4 - mov r0, r9 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x6 - bl sub_80869E4 - ldr r0, _08087470 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x4 - bl sub_80869E4 - mov r0, r9 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x4 - bl sub_80869E4 - ldr r0, _08087474 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x3 - bl sub_808775C - bl sub_8083F14 - movs r0, 0xED - lsls r0, 1 - bl sub_8083E38 - ldr r0, _08087478 - bl sub_8052910 - ldr r0, [sp, 0x68] - bl sub_8087704 - movs r0, 0x9 - bl sub_8083E88 - adds r0, r6, 0 - movs r1, 0x6 - movs r2, 0x4 - bl sub_806CDD4 - ldr r0, _0808747C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - movs r1, 0x2 - movs r2, 0x1 - movs r3, 0x1 - bl sub_80869E4 - mov r1, sp - ldr r0, _08087480 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - mov r0, sp - str r0, [sp, 0x58] - str r6, [sp, 0x5C] - add r4, sp, 0x18 - add r1, sp, 0x58 - add r2, sp, 0x5C - adds r0, r4, 0 - movs r3, 0x1 - bl sub_8085B4C - ldr r0, [r6, 0x70] - ldr r2, _08087484 - adds r1, r0, r2 - movs r0, 0x1 - strb r0, [r1] - add r7, sp, 0x28 - add r3, sp, 0x48 - mov r8, r3 - add r0, sp, 0x60 - mov r10, r0 - mov r1, sp - adds r1, 0x64 - str r1, [sp, 0x6C] - b _0808748E - .align 2, 0 -_08087470: .4byte gUnknown_81014B0 -_08087474: .4byte gUnknown_8101504 -_08087478: .4byte gUnknown_81015A0 -_0808747C: .4byte gUnknown_81015D4 -_08087480: .4byte gUnknown_810744C -_08087484: .4byte 0x0000015f -_08087488: - movs r0, 0x46 - bl sub_803E46C -_0808748E: - adds r0, r4, 0 - bl sub_8085B80 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _08087488 - ldr r0, [r6, 0x70] - ldr r2, _08087510 - adds r0, r2 - strb r5, [r0] - ldr r0, [r6, 0x70] - ldr r4, _08087514 - adds r0, r4 - movs r1, 0x1 - strb r1, [r0] - adds r0, r6, 0 - movs r1, 0x2 - movs r2, 0x2 - movs r3, 0x4 - bl sub_80869E4 - ldr r0, _08087518 - bl sub_8052910 - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808751C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, [r6, 0x70] - adds r0, r4 - strb r5, [r0] - adds r0, r6, 0 - movs r1, 0x2 - movs r2, 0x2 - movs r3, 0x5 - bl sub_80869E4 - adds r1, r7, 0 - ldr r0, _08087520 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r3,r4} - stm r1!, {r3,r4} - str r7, [sp, 0x60] - str r6, [sp, 0x64] - mov r0, r8 - mov r1, r10 - ldr r2, [sp, 0x6C] - movs r3, 0x1 - bl sub_8085B4C - mov r4, r9 - adds r4, 0xC - b _0808752A - .align 2, 0 -_08087510: .4byte 0x0000015f -_08087514: .4byte 0x0000015d -_08087518: .4byte gUnknown_81015E8 -_0808751C: .4byte gUnknown_8101624 -_08087520: .4byte gUnknown_8107464 -_08087524: - movs r0, 0x46 - bl sub_803E46C -_0808752A: - mov r0, r8 - bl sub_8085B80 - lsls r0, 24 - cmp r0, 0 - bne _08087524 - adds r0, r6, 0 - movs r1, 0x2 - movs r2, 0x1 - movs r3, 0x3 - bl sub_80869E4 - ldr r0, _080875B0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x3 - bl sub_808775C - ldr r0, _080875B4 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x1 - bl sub_808775C - ldr r0, _080875B8 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x2 - bl sub_808775C - ldr r0, _080875BC - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0x96 - lsls r1, 1 - ldr r0, [sp, 0x68] - movs r2, 0xB - bl sub_8086A70 - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - add sp, 0x70 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080875B0: .4byte gUnknown_810165C -_080875B4: .4byte gUnknown_8101750 -_080875B8: .4byte gUnknown_810178C -_080875BC: .4byte gUnknown_81017B4 - thumb_func_end sub_8087364 - - thumb_func_start sub_80875C0 -sub_80875C0: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x8 - bl sub_8085680 - adds r5, r0, 0 - bl sub_8086448 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087648 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0xED - lsls r0, 1 - bl sub_8083E38 - ldr r0, _0808764C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_8087704 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087650 - bl sub_8052910 - movs r0, 0x1 - bl sub_808775C - ldr r0, _08087654 - bl sub_8052910 - movs r0, 0x2 - bl sub_808775C - ldr r0, _08087658 - bl sub_8052910 - movs r1, 0x96 - lsls r1, 1 - adds r0, r5, 0 - movs r2, 0xB - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08087648: .4byte gUnknown_81017E4 -_0808764C: .4byte gUnknown_81015A0 -_08087650: .4byte gUnknown_8101898 -_08087654: .4byte gUnknown_81018EC -_08087658: .4byte gUnknown_8101918 - thumb_func_end sub_80875C0 - - thumb_func_start sub_808765C -sub_808765C: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x8 - bl sub_8085680 - adds r4, r0, 0 - bl sub_8086448 - movs r0, 0x91 - bl sub_8086AE4 - lsls r0, 24 - cmp r0, 0 - beq _08087688 - ldr r0, _08087684 - bl sub_80866C4 - b _080876EA - .align 2, 0 -_08087684: .4byte gUnknown_8101A38 -_08087688: - movs r0, 0x1 - bl sub_808775C - movs r0, 0xED - lsls r0, 1 - bl sub_8083E38 - ldr r0, _080876F0 - bl sub_8052910 - adds r0, r4, 0 - bl sub_8087704 - ldr r0, _080876F4 - bl sub_8052910 - movs r0, 0x1 - bl sub_808775C - ldr r0, _080876F8 - bl sub_8052910 - movs r0, 0x2 - bl sub_808775C - ldr r0, _080876FC - bl sub_8052910 - movs r0, 0x2 - bl sub_808775C - ldr r0, _08087700 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0x96 - lsls r1, 1 - adds r0, r4, 0 - movs r2, 0xB - bl sub_8086A70 - adds r0, r5, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_080876EA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080876F0: .4byte gUnknown_810193C -_080876F4: .4byte gUnknown_8101970 -_080876F8: .4byte gUnknown_8101994 -_080876FC: .4byte gUnknown_81019E4 -_08087700: .4byte gUnknown_8101A04 - thumb_func_end sub_808765C - - thumb_func_start sub_8087704 -sub_8087704: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, [r5, 0x70] - movs r1, 0xAE - lsls r1, 1 - adds r0, r1 - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r5, 0x70] - movs r1, 0xAF - lsls r1, 1 - adds r0, r1 - strb r2, [r0] - ldr r0, [r5, 0x70] - adds r1, 0x16 - adds r0, r1 - movs r1, 0xC8 - str r1, [r0] - movs r0, 0xF5 - lsls r0, 1 - bl sub_8083E38 - movs r4, 0xC8 -_08087734: - ldr r0, [r5, 0x70] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - lsls r1, r4, 8 - str r1, [r0] - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x5 - cmp r4, 0 - bge _08087734 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8087704 - - thumb_func_start sub_808775C -sub_808775C: - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - movs r0, 0xFB - lsls r0, 1 - bl sub_8083E38 - cmp r5, 0x2 - ble _08087790 - movs r4, 0xFA -_08087770: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _08087770 -_08087790: - cmp r5, 0x1 - ble _080877B6 - movs r4, 0xFA -_08087796: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _08087796 -_080877B6: - movs r4, 0xFA -_080877B8: - adds r2, r4, 0 - cmp r4, 0 - bge _080877C0 - adds r2, r4, 0x3 -_080877C0: - asrs r2, 2 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _080877B8 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808775C - - thumb_func_start sub_80877E8 -sub_80877E8: - push {r4-r6,lr} - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0x9 - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0x26 - bl sub_8083E88 - bl sub_8085374 - bl sub_80854D4 - movs r0, 0x6 - bl sub_8085930 - ldr r4, _08087840 - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r5, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r5, 0 - bl _call_via_r4 - movs r1, 0x4 - ldrsh r0, [r6, r1] - subs r0, 0x3 - movs r2, 0x6 - ldrsh r1, [r6, r2] - subs r1, 0x2 - bl sub_8085860 - ldr r0, _08087844 - movs r1, 0x92 - bl sub_808D8BC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08087840: .4byte sub_8086A3C -_08087844: .4byte gUnknown_202E038 - thumb_func_end sub_80877E8 - - thumb_func_start sub_8087848 -sub_8087848: - push {r4-r6,lr} - sub sp, 0x4 - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x9 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x26 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x6 - bl sub_8085930 - ldr r6, _08087890 - adds r0, r6, 0 - bl sub_80855E4 - movs r0, 0x92 - bl sub_8086AE4 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08087894 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _080878B4 - .align 2, 0 -_08087890: .4byte sub_8086A3C -_08087894: - ldr r0, _080878E8 - movs r3, 0 - ldrsh r2, [r0, r3] - str r1, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0 - bl sub_8072008 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r4, 0 - bl _call_via_r6 -_080878B4: - movs r1, 0x4 - ldrsh r0, [r5, r1] - subs r0, 0x5 - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8085860 - bl sub_803F994 - adds r4, r0, 0 - bl sub_803F9B0 - adds r1, r0, 0 - ldr r3, _080878EC - adds r1, r3 - adds r0, r4, 0 - bl sub_803F878 - ldr r0, _080878F0 - movs r1, 0x92 - bl sub_808D8BC - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080878E8: .4byte gUnknown_80F57CE -_080878EC: .4byte 0xfffff000 -_080878F0: .4byte gUnknown_202E038 - thumb_func_end sub_8087848 - - thumb_func_start sub_80878F4 -sub_80878F4: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xF6 - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x2 - bhi _0808791A - cmp r0, 0x9 - bne _0808791A - movs r0, 0x7 - bl sub_8097FA8 - ldr r0, _08087920 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_0808791A: - pop {r0} - bx r0 - .align 2, 0 -_08087920: .4byte gUnknown_203B418 - thumb_func_end sub_80878F4 - - thumb_func_start sub_8087924 -sub_8087924: - push {r4-r6,lr} - bl sub_8085480 - adds r5, r0, 0 - bl sub_808548C - adds r4, r0, 0 - movs r0, 0x9 - bl sub_8085680 - adds r6, r0, 0 - movs r0, 0xC - movs r1, 0x5 - bl sub_8087D80 - bl sub_8086500 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087AE8 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x5 - bl sub_80869E4 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087AEC - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0xC - movs r1, 0x5 - bl sub_8087D80 - movs r0, 0x9 - movs r1, 0x5 - bl sub_8087DE8 - ldr r0, _08087AF0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x2 - bl sub_80869E4 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x6 - bl sub_80869E4 - ldr r0, _08087AF4 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x6 - bl sub_80869E4 - bl sub_8086690 - ldr r0, _08087AF8 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x5 - bl sub_8085930 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _08087AFC - bl sub_8083E38 - bl sub_8083F14 - bl sub_8087F24 - ldr r0, _08087B00 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087B04 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087B08 - bl sub_8083E38 - adds r0, r4, 0 - movs r1, 0x4 - bl sub_80856E0 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087B0C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8087EB0 - movs r0, 0xED - lsls r0, 1 - bl sub_8083E38 - ldr r0, _08087B10 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x9 - movs r1, 0x5 - bl sub_8087D80 - movs r0, 0xB - movs r1, 0x5 - bl sub_8087DE8 - ldr r0, _08087B14 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0xC - movs r1, 0x5 - bl sub_8087D80 - movs r0, 0x9 - movs r1, 0x5 - bl sub_8087DE8 - adds r0, r6, 0 - bl sub_8087D30 - bl sub_808663C - bl sub_8087EB0 - ldr r0, _08087B18 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0xB - movs r1, 0x6 - bl sub_8087DE8 - ldr r0, _08087B1C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0xC8 - lsls r1, 1 - adds r0, r6, 0 - movs r2, 0xB - bl sub_8086A70 - adds r5, 0xC - adds r0, r5, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08087AE8: .4byte gUnknown_8101A9C -_08087AEC: .4byte gUnknown_8101AD4 -_08087AF0: .4byte gUnknown_8101C30 -_08087AF4: .4byte gUnknown_8101CBC -_08087AF8: .4byte gUnknown_8101D8C -_08087AFC: .4byte 0x000002f2 -_08087B00: .4byte gUnknown_8101DA0 -_08087B04: .4byte gUnknown_8101E1C -_08087B08: .4byte 0x000001cf -_08087B0C: .4byte gUnknown_8101EAC -_08087B10: .4byte gUnknown_8102070 -_08087B14: .4byte gUnknown_81020A4 -_08087B18: .4byte gUnknown_81020D4 -_08087B1C: .4byte gUnknown_8102108 - thumb_func_end sub_8087924 - - thumb_func_start sub_8087B20 -sub_8087B20: - push {r4-r6,lr} - bl sub_8085480 - adds r5, r0, 0 - bl sub_808548C - adds r4, r0, 0 - movs r0, 0x9 - bl sub_8085680 - adds r6, r0, 0 - movs r0, 0xA - movs r1, 0x5 - bl sub_8087D80 - bl sub_8086500 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087C24 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x2 - bl sub_80869E4 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x6 - bl sub_80869E4 - ldr r0, _08087C28 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x6 - bl sub_80869E4 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x6 - bl sub_80869E4 - bl sub_8086690 - bl sub_8087F24 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x5 - bl sub_8085930 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x4 - bl sub_8085930 - adds r0, r6, 0 - bl sub_8087D30 - bl sub_808663C - bl sub_8087EB0 - ldr r0, _08087C2C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0xB - movs r1, 0x6 - bl sub_8087DE8 - ldr r0, _08087C30 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087C34 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0xC8 - lsls r1, 1 - adds r0, r6, 0 - movs r2, 0xB - bl sub_8086A70 - adds r5, 0xC - adds r0, r5, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08087C24: .4byte gUnknown_8102158 -_08087C28: .4byte gUnknown_8102190 -_08087C2C: .4byte gUnknown_8102200 -_08087C30: .4byte gUnknown_8102254 -_08087C34: .4byte gUnknown_81022F8 - thumb_func_end sub_8087B20 - - thumb_func_start sub_8087C38 -sub_8087C38: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x9 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0xC - movs r1, 0x5 - bl sub_8087D80 - bl sub_808654C - movs r0, 0x92 - bl sub_8086AE4 - lsls r0, 24 - cmp r0, 0 - beq _08087CA4 - movs r0, 0x5 - bl sub_8085930 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x4 - bl sub_8085930 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087C9C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087CA0 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] - b _08087D16 - .align 2, 0 -_08087C9C: .4byte gUnknown_8100D3C -_08087CA0: .4byte gUnknown_203B418 -_08087CA4: - ldr r0, _08087D1C - bl sub_8052910 - movs r0, 0x5 - bl sub_8085930 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x4 - bl sub_8085930 - adds r0, r4, 0 - bl sub_8087D30 - ldr r0, _08087D20 - bl sub_8052910 - movs r0, 0xC - movs r1, 0x5 - bl sub_8087D80 - movs r0, 0x9 - movs r1, 0x5 - bl sub_8087DE8 - ldr r0, _08087D24 - bl sub_8052910 - bl sub_8087EB0 - ldr r0, _08087D28 - bl sub_8052910 - movs r0, 0xB - movs r1, 0x6 - bl sub_8087DE8 - ldr r0, _08087D2C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0xC8 - lsls r1, 1 - adds r0, r4, 0 - movs r2, 0xB - bl sub_8086A70 - adds r0, r5, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_08087D16: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08087D1C: .4byte gUnknown_810232C -_08087D20: .4byte gUnknown_8102398 -_08087D24: .4byte gUnknown_81023C4 -_08087D28: .4byte gUnknown_8102400 -_08087D2C: .4byte gUnknown_8102454 - thumb_func_end sub_8087C38 - - thumb_func_start sub_8087D30 -sub_8087D30: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, [r5, 0x70] - movs r1, 0xAE - lsls r1, 1 - adds r0, r1 - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r5, 0x70] - movs r1, 0xAF - lsls r1, 1 - adds r0, r1 - strb r2, [r0] - ldr r0, [r5, 0x70] - adds r1, 0x16 - adds r0, r1 - movs r1, 0xC8 - lsls r1, 8 - str r1, [r0] - movs r0, 0xFC - lsls r0, 1 - bl sub_8083E38 - movs r4, 0xC8 -_08087D62: - ldr r0, [r5, 0x70] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - lsls r1, r4, 8 - str r1, [r0] - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x5 - cmp r4, 0 - bge _08087D62 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8087D30 - - thumb_func_start sub_8087D80 -sub_8087D80: - push {lr} - sub sp, 0x8 - adds r3, r1, 0 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 11 - movs r2, 0xC0 - lsls r2, 4 - adds r0, r1, r2 - cmp r0, 0 - bge _08087D98 - adds r0, 0xFF -_08087D98: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _08087DE0 - ldr r2, [sp, 0x4] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x4] - lsls r0, r3, 1 - adds r0, r3 - lsls r0, 11 - movs r1, 0x80 - lsls r1, 5 - adds r0, r1 - cmp r0, 0 - bge _08087DB8 - adds r0, 0xFF -_08087DB8: - lsls r0, 8 - lsrs r0, 16 - lsls r0, 16 - ldr r1, _08087DE4 - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x4] - movs r0, 0xB9 - lsls r0, 1 - movs r1, 0 - str r1, [sp] - movs r1, 0x10 - movs r2, 0 - add r3, sp, 0x4 - bl sub_8085EC8 - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_08087DE0: .4byte 0xffff0000 -_08087DE4: .4byte 0x0000ffff - thumb_func_end sub_8087D80 - - thumb_func_start sub_8087DE8 -sub_8087DE8: - push {r4-r6,lr} - sub sp, 0x8 - adds r3, r1, 0 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 11 - movs r2, 0xC0 - lsls r2, 4 - adds r0, r1, r2 - cmp r0, 0 - bge _08087E00 - adds r0, 0xFF -_08087E00: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _08087EA8 - ldr r2, [sp, 0x4] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x4] - lsls r0, r3, 1 - adds r0, r3 - lsls r0, 11 - movs r1, 0x80 - lsls r1, 5 - adds r0, r1 - cmp r0, 0 - bge _08087E20 - adds r0, 0xFF -_08087E20: - lsls r0, 8 - lsrs r0, 16 - lsls r0, 16 - ldr r1, _08087EAC - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x4] - movs r0, 0xB9 - lsls r0, 1 - movs r1, 0 - str r1, [sp] - movs r1, 0x16 - movs r2, 0 - add r3, sp, 0x4 - bl sub_8085EC8 - adds r6, r0, 0 - movs r0, 0xF6 - lsls r0, 1 - bl sub_8083E38 - movs r4, 0xFA - movs r5, 0x1 -_08087E4E: - str r5, [sp] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x13 - bgt _08087E4E - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_08087E74: - str r5, [sp] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _08087E74 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - adds r0, r6, 0 - bl sub_8085F44 - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08087EA8: .4byte 0xffff0000 -_08087EAC: .4byte 0x0000ffff - thumb_func_end sub_8087DE8 - - thumb_func_start sub_8087EB0 -sub_8087EB0: - push {r4,lr} - sub sp, 0x4 - ldr r0, _08087F20 - bl sub_8083E38 - movs r4, 0xFA -_08087EBC: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x9 - bgt _08087EBC - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08087F20 - bl sub_8083E38 - movs r4, 0xFA -_08087EEC: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _08087EEC - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08087F20: .4byte 0x000001ed - thumb_func_end sub_8087EB0 - - thumb_func_start sub_8087F24 -sub_8087F24: - push {r4-r6,lr} - sub sp, 0x4 - movs r4, 0 - movs r6, 0 - movs r5, 0x50 - negs r5, r5 -_08087F30: - str r6, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x8 - cmp r4, r5 - bge _08087F30 - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8087F24 - - thumb_func_start sub_8087F54 -sub_8087F54: - push {r4-r6,lr} - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0xD - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_8085374 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r4, _08087FAC - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r5, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r5, 0 - bl _call_via_r4 - movs r1, 0x4 - ldrsh r0, [r6, r1] - movs r2, 0x6 - ldrsh r1, [r6, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _08087FB0 - movs r1, 0x90 - bl sub_808D8BC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08087FAC: .4byte sub_8086A3C -_08087FB0: .4byte gUnknown_202E038 - thumb_func_end sub_8087F54 - - thumb_func_start sub_8087FB4 -sub_8087FB4: - push {r4,lr} - movs r0, 0xD - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_8085374 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r4, 0 - movs r1, 0xF - movs r2, 0 - bl sub_806CDD4 - ldr r0, _08087FF4 - movs r1, 0x90 - bl sub_808D8BC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08087FF4: .4byte gUnknown_202E038 - thumb_func_end sub_8087FB4 - - thumb_func_start sub_8087FF8 -sub_8087FF8: - push {r4-r6,lr} - sub sp, 0x4 - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0xD - bl sub_8085680 - adds r4, r0, 0 - bl sub_8085374 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r6, _0808803C - adds r0, r6, 0 - bl sub_80855E4 - movs r0, 0x90 - bl sub_8086AE4 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08088040 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _08088060 - .align 2, 0 -_0808803C: .4byte sub_8086A3C -_08088040: - ldr r0, _08088080 - movs r3, 0 - ldrsh r2, [r0, r3] - str r1, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0 - bl sub_8072008 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r4, 0 - bl _call_via_r6 -_08088060: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _08088084 - movs r1, 0x90 - bl sub_808D8BC - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08088080: .4byte gUnknown_80F57D0 -_08088084: .4byte gUnknown_202E038 - thumb_func_end sub_8087FF8 - - thumb_func_start sub_8088088 -sub_8088088: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xF3 - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x2 - bhi _080880AE - cmp r0, 0xD - bne _080880AE - movs r0, 0x9 - bl sub_8097FA8 - ldr r0, _080880B4 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_080880AE: - pop {r0} - bx r0 - .align 2, 0 -_080880B4: .4byte gUnknown_203B418 - thumb_func_end sub_8088088 - - thumb_func_start sub_80880B8 -sub_80880B8: - push {r4-r6,lr} - mov r6, r8 - push {r6} - bl sub_8085480 - adds r5, r0, 0 - bl sub_808548C - adds r6, r0, 0 - movs r0, 0xD - bl sub_8085680 - mov r8, r0 - bl sub_8086448 - adds r0, r6, 0 - bl sub_808696C - ldr r0, _080882C8 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8086598 - bl sub_8083F14 - ldr r0, _080882CC - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x2 - bl sub_80869E4 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x6 - bl sub_80869E4 - ldr r0, _080882D0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x6 - bl sub_8085918 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x5 - bl sub_8085918 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x6 - bl sub_8085918 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x7 - bl sub_8085918 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x6 - bl sub_8085918 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x5 - bl sub_8085918 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x6 - bl sub_8085918 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _080882D4 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _080882D8 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x4 - bl sub_80869E4 - adds r0, r6, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x4 - bl sub_80869E4 - ldr r4, _080882DC - adds r0, r4, 0 - bl sub_8083E38 - adds r0, r6, 0 - bl sub_808696C - adds r0, r4, 0 - bl sub_8083E38 - adds r0, r5, 0 - bl sub_808696C - ldr r0, _080882E0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _080882E4 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0 - bl sub_8083E38 - ldr r0, _080882E8 - ldr r0, [r0] - ldr r1, _080882EC - adds r0, r1 - movs r1, 0x7 - strb r1, [r0] - movs r0, 0 - movs r1, 0x1 - bl sub_807EAA0 - movs r0, 0xF7 - lsls r0, 1 - bl sub_8083E38 - bl sub_8088574 - ldr r0, _080882F0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_80884E0 - bl sub_8086738 - movs r0, 0xED - lsls r0, 1 - bl sub_8083E38 - ldr r0, _080882F4 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0xF5 - lsls r0, 1 - bl sub_8083E38 - mov r0, r8 - bl sub_8088484 - bl sub_80865E8 - bl sub_80884E0 - ldr r0, _080882F8 - bl sub_8052910 - mov r0, r8 - movs r1, 0xF - movs r2, 0 - bl sub_806CDD4 - bl sub_80884E0 - ldr r0, _080882FC - bl sub_8052910 - mov r0, r8 - movs r1, 0x10 - movs r2, 0 - bl sub_806CDD4 - bl sub_80884E0 - ldr r0, _08088300 - bl sub_8052910 - mov r0, r8 - movs r1, 0xF - movs r2, 0 - bl sub_806CDD4 - movs r0, 0x10 - movs r1, 0x46 - bl sub_803E708 - movs r1, 0xE1 - lsls r1, 1 - mov r0, r8 - movs r2, 0xB - bl sub_8086A70 - adds r5, 0xC - adds r0, r5, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080882C8: .4byte gUnknown_8102478 -_080882CC: .4byte gUnknown_81025B4 -_080882D0: .4byte gUnknown_81025D4 -_080882D4: .4byte gUnknown_8102610 -_080882D8: .4byte gUnknown_81026C4 -_080882DC: .4byte 0x000001d5 -_080882E0: .4byte gUnknown_810270C -_080882E4: .4byte gUnknown_810272C -_080882E8: .4byte gUnknown_203B418 -_080882EC: .4byte 0x0000e265 -_080882F0: .4byte gUnknown_81027BC -_080882F4: .4byte gUnknown_8102810 -_080882F8: .4byte gUnknown_8102840 -_080882FC: .4byte gUnknown_810286C -_08088300: .4byte gUnknown_81028B8 - thumb_func_end sub_80880B8 - - thumb_func_start sub_8088304 -sub_8088304: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0xD - bl sub_8085680 - adds r4, r0, 0 - ldr r0, _08088384 - ldr r0, [r0] - ldr r1, _08088388 - adds r0, r1 - movs r1, 0x7 - strb r1, [r0] - movs r0, 0 - movs r1, 0x1 - bl sub_807EAA0 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808838C - bl sub_8052910 - adds r0, r4, 0 - movs r1, 0x10 - movs r2, 0 - bl sub_806CDD4 - bl sub_80884E0 - ldr r0, _08088390 - bl sub_8052910 - bl sub_80884E0 - ldr r0, _08088394 - bl sub_8052910 - adds r0, r4, 0 - movs r1, 0xF - movs r2, 0 - bl sub_806CDD4 - movs r0, 0x28 - movs r1, 0x46 - bl sub_803E708 - movs r1, 0xE1 - lsls r1, 1 - adds r0, r4, 0 - movs r2, 0xB - bl sub_8086A70 - adds r5, 0xC - adds r0, r5, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08088384: .4byte gUnknown_203B418 -_08088388: .4byte 0x0000e265 -_0808838C: .4byte gUnknown_81028D4 -_08088390: .4byte gUnknown_8102918 -_08088394: .4byte gUnknown_8102948 - thumb_func_end sub_8088304 - - thumb_func_start sub_8088398 -sub_8088398: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0xD - bl sub_8085680 - adds r4, r0, 0 - bl sub_8086448 - movs r0, 0x90 - bl sub_8086AE4 - lsls r0, 24 - cmp r0, 0 - beq _080883C4 - ldr r0, _080883C0 - bl sub_80866C4 - b _08088460 - .align 2, 0 -_080883C0: .4byte gUnknown_8102A9C -_080883C4: - ldr r0, _08088468 - ldr r0, [r0] - ldr r1, _0808846C - adds r0, r1 - movs r1, 0x7 - strb r1, [r0] - movs r0, 0 - movs r1, 0x1 - bl sub_807EAA0 - bl sub_80884E0 - bl sub_8086738 - movs r0, 0xED - lsls r0, 1 - bl sub_8083E38 - ldr r0, _08088470 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_8088484 - bl sub_80884E0 - ldr r0, _08088474 - bl sub_8052910 - adds r0, r4, 0 - movs r1, 0xF - movs r2, 0 - bl sub_806CDD4 - bl sub_80884E0 - ldr r0, _08088478 - bl sub_8052910 - adds r0, r4, 0 - movs r1, 0x10 - movs r2, 0 - bl sub_806CDD4 - bl sub_80884E0 - ldr r0, _0808847C - bl sub_8052910 - bl sub_80884E0 - ldr r0, _08088480 - bl sub_8052910 - adds r0, r4, 0 - movs r1, 0xF - movs r2, 0 - bl sub_806CDD4 - movs r0, 0x28 - movs r1, 0x46 - bl sub_803E708 - movs r1, 0xE1 - lsls r1, 1 - adds r0, r4, 0 - movs r2, 0xB - bl sub_8086A70 - adds r0, r5, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_08088460: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08088468: .4byte gUnknown_203B418 -_0808846C: .4byte 0x0000e265 -_08088470: .4byte gUnknown_8102984 -_08088474: .4byte gUnknown_81029B4 -_08088478: .4byte gUnknown_8102A18 -_0808847C: .4byte gUnknown_8102A24 -_08088480: .4byte gUnknown_8102A74 - thumb_func_end sub_8088398 - - thumb_func_start sub_8088484 -sub_8088484: - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x70] - movs r1, 0xAE - lsls r1, 1 - adds r0, r1 - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r5, 0x70] - movs r1, 0xAF - lsls r1, 1 - adds r0, r1 - strb r2, [r0] - movs r0, 0xF5 - lsls r0, 1 - bl sub_8083E38 - movs r4, 0xFA -_080884AC: - ldr r0, [r5, 0x70] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - lsls r1, r4, 8 - str r1, [r0] - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x5 - cmp r4, 0 - bge _080884AC - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8088484 - - thumb_func_start sub_80884E0 -sub_80884E0: - push {r4,r5,lr} - sub sp, 0x4 - ldr r0, _08088570 - bl sub_8083E38 - movs r4, 0xFA -_080884EC: - lsrs r0, r4, 31 - adds r0, r4, r0 - asrs r0, 1 - movs r1, 0x1 - str r1, [sp] - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _080884EC - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_08088518: - str r5, [sp] - movs r0, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _08088518 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA -_0808853C: - lsrs r0, r4, 31 - adds r0, r4, r0 - asrs r0, 1 - movs r1, 0x1 - str r1, [sp] - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _0808853C - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08088570: .4byte 0x000002ad - thumb_func_end sub_80884E0 - - thumb_func_start sub_8088574 -sub_8088574: - push {r4,r5,lr} - sub sp, 0x4 - movs r4, 0 - movs r5, 0 -_0808857C: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - adds r4, 0x8 - cmp r4, 0x50 - ble _0808857C - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8088574 - - thumb_func_start sub_80885A0 -sub_80885A0: - push {lr} - movs r0, 0x3C - bl sub_8083ED8 - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - bl sub_8083F14 - ldr r0, _080885C0 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x7] - pop {r0} - bx r0 - .align 2, 0 -_080885C0: .4byte gUnknown_203B418 - thumb_func_end sub_80885A0 - - thumb_func_start sub_80885C4 -sub_80885C4: - push {r4,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x3C - bl sub_8083ED8 - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - bl sub_8083F14 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _08088604 - bl sub_80855E4 - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - subs r1, 0x3 - bl sub_8085860 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08088604: .4byte sub_8086A3C - thumb_func_end sub_80885C4 - - thumb_func_start sub_8088608 -sub_8088608: - ldr r0, _08088614 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] - bx lr - .align 2, 0 -_08088614: .4byte gUnknown_203B418 - thumb_func_end sub_8088608 - - thumb_func_start sub_8088618 -sub_8088618: - push {lr} - bl sub_8086448 - ldr r0, _08088628 - bl sub_80866C4 - pop {r0} - bx r0 - .align 2, 0 -_08088628: .4byte gUnknown_8102B10 - thumb_func_end sub_8088618 - - thumb_func_start sub_808862C -sub_808862C: - push {r4-r6,lr} - mov r6, r8 - push {r6} - bl sub_8085480 - mov r8, r0 - movs r0, 0xA - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0xE - bl sub_8085680 - adds r6, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80867F4 - bl sub_8085374 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r4, _080886B8 - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r5, 0 - movs r1, 0x4 - bl sub_8085918 - adds r0, r5, 0 - movs r1, 0xD - movs r2, 0x4 - bl sub_80861D4 - adds r0, r6, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r6, 0 - bl _call_via_r4 - mov r1, r8 - movs r2, 0x4 - ldrsh r0, [r1, r2] - movs r3, 0x6 - ldrsh r1, [r1, r3] - subs r1, 0x3 - bl sub_8085860 - ldr r4, _080886BC - ldr r1, _080886C0 - adds r0, r4, 0 - bl sub_808D8BC - adds r4, 0x50 - adds r0, r4, 0 - movs r1, 0x41 - bl sub_808D8BC - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080886B8: .4byte sub_8086A3C -_080886BC: .4byte gUnknown_202E038 -_080886C0: .4byte 0x0000019b - thumb_func_end sub_808862C - - thumb_func_start sub_80886C4 -sub_80886C4: - push {r4-r6,lr} - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0xA - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0xE - bl sub_8085680 - adds r4, r0, 0 - ldr r0, _0808874C - bl sub_8083E38 - bl sub_80867F4 - bl sub_8085374 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - movs r1, 0x87 - lsls r1, 2 - adds r0, r5, 0 - movs r2, 0 - bl sub_8068FE0 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r4, 0 - bl sub_8086A3C - movs r1, 0x4 - ldrsh r0, [r6, r1] - movs r2, 0x6 - ldrsh r1, [r6, r2] - bl sub_8085860 - bl sub_803F994 - adds r4, r0, 0 - bl sub_803F9B0 - adds r1, r0, 0 - ldr r0, _08088750 - adds r1, r0 - adds r0, r4, 0 - bl sub_803F878 - ldr r4, _08088754 - ldr r1, _08088758 - adds r0, r4, 0 - bl sub_808D8BC - adds r4, 0x50 - adds r0, r4, 0 - movs r1, 0x41 - bl sub_808D8BC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808874C: .4byte 0x000003e5 -_08088750: .4byte 0xfffff000 -_08088754: .4byte gUnknown_202E038 -_08088758: .4byte 0x0000019b - thumb_func_end sub_80886C4 - - thumb_func_start sub_808875C -sub_808875C: - push {r4-r7,lr} - sub sp, 0x4 - bl sub_8085480 - adds r7, r0, 0 - movs r0, 0xA - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0xE - bl sub_8085680 - adds r5, r0, 0 - bl sub_80867F4 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _080887B4 - bl sub_80855E4 - movs r6, 0x87 - lsls r6, 2 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8068FE0 - ldr r0, _080887B8 - bl sub_8086AE4 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _080887BC - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8068FE0 - b _080887E0 - .align 2, 0 -_080887B4: .4byte sub_8086A3C -_080887B8: .4byte 0x0000019b -_080887BC: - ldr r0, _0808880C - movs r3, 0 - ldrsh r2, [r0, r3] - str r1, [sp] - adds r0, r5, 0 - adds r1, r5, 0 - movs r3, 0 - bl sub_8072008 - adds r0, r5, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r5, 0 - movs r1, 0xF - movs r2, 0 - bl sub_80861D4 -_080887E0: - movs r1, 0x4 - ldrsh r0, [r7, r1] - movs r2, 0x6 - ldrsh r1, [r7, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r4, _08088810 - ldr r1, _08088814 - adds r0, r4, 0 - bl sub_808D8BC - adds r4, 0x50 - adds r0, r4, 0 - movs r1, 0x41 - bl sub_808D8BC - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808880C: .4byte gUnknown_80F57D2 -_08088810: .4byte gUnknown_202E038 -_08088814: .4byte 0x0000019b - thumb_func_end sub_808875C - - thumb_func_start sub_8088818 -sub_8088818: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xEE - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x2 - bhi _0808883E - cmp r0, 0xE - bne _0808883E - movs r0, 0xC - bl sub_8097FA8 - ldr r0, _08088844 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_0808883E: - pop {r0} - bx r0 - .align 2, 0 -_08088844: .4byte gUnknown_203B418 - thumb_func_end sub_8088818 - - thumb_func_start sub_8088848 -sub_8088848: - push {lr} - bl sub_8086854 - pop {r0} - bx r0 - thumb_func_end sub_8088848 - - thumb_func_start sub_8088854 -sub_8088854: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - bl sub_8085480 - adds r5, r0, 0 - bl sub_808548C - mov r8, r0 - movs r0, 0xA - bl sub_8085680 - adds r6, r0, 0 - movs r0, 0xE - bl sub_8085680 - mov r9, r0 - bl sub_8086448 - ldr r0, _08088A5C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08088A60 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_8086838 - bl sub_808680C - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - bl sub_808682C - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08088A64 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_8086838 - bl sub_808680C - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08088A68 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8088CA0 - ldr r0, _08088A6C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08088A70 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r4, _08088A74 - adds r0, r4, 0 - bl sub_8083E38 - mov r0, r8 - bl sub_808696C - ldr r0, _08088A78 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_808682C - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - movs r1, 0x6 - movs r2, 0x4 - bl sub_80861B8 - ldr r0, _08088A7C - bl sub_8083E38 - bl sub_8086738 - movs r1, 0x87 - lsls r1, 2 - adds r0, r6, 0 - movs r2, 0 - bl sub_8068FE0 - ldr r0, _08088A80 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08088A84 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x4 - bl sub_8085930 - bl sub_8086764 - movs r0, 0x28 - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_8083E38 - mov r0, r8 - bl sub_808696C - ldr r0, _08088A88 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_8086838 - bl sub_808680C - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08088A8C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8083F14 - bl sub_8088D30 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08088A90 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08088A94 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - bl sub_808682C - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - movs r0, 0xFD - lsls r0, 1 - bl sub_8083E38 - bl sub_8086738 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _08088A98 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - mov r0, r9 - bl sub_8086A54 - movs r0, 0x4 - bl sub_8085930 - bl sub_8086764 - movs r1, 0xFA - lsls r1, 1 - mov r0, r9 - movs r2, 0xB - bl sub_8086A70 - adds r5, 0xC - adds r0, r5, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08088A5C: .4byte gUnknown_8102E70 -_08088A60: .4byte gUnknown_8102EBC -_08088A64: .4byte gUnknown_8102EE0 -_08088A68: .4byte gUnknown_8102EF8 -_08088A6C: .4byte gUnknown_8102F30 -_08088A70: .4byte gUnknown_8102F64 -_08088A74: .4byte 0x000001d5 -_08088A78: .4byte gUnknown_8102F84 -_08088A7C: .4byte 0x00000205 -_08088A80: .4byte gUnknown_8102FAC -_08088A84: .4byte gUnknown_8102FC4 -_08088A88: .4byte gUnknown_8102FD8 -_08088A8C: .4byte gUnknown_8103054 -_08088A90: .4byte gUnknown_81030D8 -_08088A94: .4byte gUnknown_8103110 -_08088A98: .4byte gUnknown_8103140 - thumb_func_end sub_8088854 - - thumb_func_start sub_8088A9C -sub_8088A9C: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0xE - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_8086838 - bl sub_808680C - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08088B50 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8088CA0 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08088B54 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08088B58 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_808682C - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - bl sub_8083F14 - movs r0, 0xFD - lsls r0, 1 - bl sub_8083E38 - bl sub_8086738 - ldr r0, _08088B5C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_8086A54 - movs r0, 0x4 - bl sub_8085930 - bl sub_8086764 - movs r1, 0xFA - lsls r1, 1 - adds r0, r5, 0 - movs r2, 0xB - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08088B50: .4byte gUnknown_8103188 -_08088B54: .4byte gUnknown_8103228 -_08088B58: .4byte gUnknown_8103310 -_08088B5C: .4byte gUnknown_8103340 - thumb_func_end sub_8088A9C - - thumb_func_start sub_8088B60 -sub_8088B60: - push {r4-r6,lr} - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0xE - bl sub_8085680 - adds r5, r0, 0 - bl sub_8086448 - ldr r0, _08088B88 - bl sub_8086AE4 - lsls r0, 24 - cmp r0, 0 - beq _08088B90 - ldr r0, _08088B8C - bl sub_80866C4 - b _08088BF2 - .align 2, 0 -_08088B88: .4byte 0x0000019b -_08088B8C: .4byte gUnknown_8103488 -_08088B90: - ldr r0, _08088BF8 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_8088C08 - adds r0, r5, 0 - bl sub_8088C08 - ldr r0, _08088BFC - bl sub_8052910 - movs r4, 0xFB - lsls r4, 1 - adds r0, r4, 0 - bl sub_8083E38 - bl sub_8088CA0 - ldr r0, _08088C00 - bl sub_8052910 - adds r0, r4, 0 - bl sub_8083E38 - bl sub_8088CA0 - ldr r0, _08088C04 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0xFA - lsls r1, 1 - adds r0, r5, 0 - movs r2, 0xB - bl sub_8086A70 - adds r0, r6, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_08088BF2: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08088BF8: .4byte gUnknown_81033A0 -_08088BFC: .4byte gUnknown_81033AC -_08088C00: .4byte gUnknown_810343C -_08088C04: .4byte gUnknown_810347C - thumb_func_end sub_8088B60 - - thumb_func_start sub_8088C08 -sub_8088C08: - push {r4,r5,lr} - adds r5, r0, 0 - movs r0, 0x18 - movs r1, 0x10 - bl sub_8086848 - adds r0, r5, 0 - movs r1, 0 - movs r2, 0 - bl sub_806CDD4 - movs r4, 0 -_08088C20: - cmp r4, 0xA - beq _08088C28 - cmp r4, 0x20 - bne _08088C3C -_08088C28: - ldr r0, _08088C9C - bl sub_8083E38 - movs r0, 0 - movs r1, 0x1 - movs r2, 0 - bl sub_8086838 - bl sub_808680C -_08088C3C: - adds r0, r4, 0 - subs r0, 0xA - cmp r0, 0xB - bls _08088C48 - cmp r4, 0x1F - ble _08088C54 -_08088C48: - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x80 - lsls r2, 1 - bl sub_804539C -_08088C54: - movs r0, 0x46 - bl sub_803E46C - adds r4, 0x1 - cmp r4, 0x2B - ble _08088C20 - movs r0, 0x4 - ldrsh r1, [r5, r0] - movs r0, 0x6 - ldrsh r2, [r5, r0] - adds r2, 0x1 - adds r0, r5, 0 - bl sub_80856C8 - adds r0, r5, 0 - movs r1, 0xF - movs r2, 0 - bl sub_80861D4 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_808682C - movs r0, 0x4 - bl sub_8085930 - movs r0, 0x22 - movs r1, 0x46 - bl sub_803E708 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08088C9C: .4byte 0x000001f9 - thumb_func_end sub_8088C08 - - thumb_func_start sub_8088CA0 -sub_8088CA0: - push {r4,lr} - sub sp, 0x4 - movs r4, 0xFA -_08088CA6: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r1, r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _08088CA6 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA -_08088CD0: - lsrs r1, r4, 31 - adds r1, r4, r1 - asrs r1, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _08088CD0 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA -_08088CFA: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r1, r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _08088CFA - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8088CA0 - - thumb_func_start sub_8088D30 -sub_8088D30: - push {r4,lr} - sub sp, 0x4 - movs r4, 0xFA -_08088D36: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r1, r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _08088D36 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA -_08088D60: - lsrs r1, r4, 31 - adds r1, r4, r1 - asrs r1, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _08088D60 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA -_08088D8A: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r1, r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _08088D8A - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8088D30 - - thumb_func_start sub_8088DC0 -sub_8088DC0: - push {r4-r6,lr} - mov r6, r8 - push {r6} - bl sub_8085480 - mov r8, r0 - movs r0, 0xB - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0xC - bl sub_8085680 - adds r6, r0, 0 - bl sub_80867F4 - movs r0, 0 - movs r1, 0x1 - movs r2, 0 - bl sub_8086838 - bl sub_8085374 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r4, _08088E50 - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r5, 0 - bl _call_via_r4 - adds r0, r5, 0 - movs r1, 0xE - movs r2, 0 - bl sub_806CDD4 - adds r0, r6, 0 - bl _call_via_r4 - adds r0, r6, 0 - movs r1, 0xE - movs r2, 0 - bl sub_806CDD4 - mov r1, r8 - movs r2, 0x4 - ldrsh r0, [r1, r2] - movs r3, 0x6 - ldrsh r1, [r1, r3] - subs r1, 0x3 - bl sub_8085860 - ldr r4, _08088E54 - ldr r1, _08088E58 - adds r0, r4, 0 - bl sub_808D8BC - adds r4, 0x50 - adds r0, r4, 0 - movs r1, 0x41 - bl sub_808D8BC - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08088E50: .4byte sub_8086A3C -_08088E54: .4byte gUnknown_202E038 -_08088E58: .4byte 0x0000019b - thumb_func_end sub_8088DC0 - - thumb_func_start sub_8088E5C -sub_8088E5C: - push {r4-r6,lr} - mov r6, r8 - push {r6} - bl sub_8085480 - mov r8, r0 - movs r0, 0xB - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0xC - bl sub_8085680 - adds r6, r0, 0 - bl sub_80867F4 - movs r0, 0 - movs r1, 0x1 - movs r2, 0 - bl sub_8086838 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _08088EDC - bl sub_80855E4 - movs r4, 0x87 - lsls r4, 2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8068FE0 - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8068FE0 - mov r1, r8 - movs r2, 0x4 - ldrsh r0, [r1, r2] - movs r3, 0x6 - ldrsh r1, [r1, r3] - subs r1, 0x3 - bl sub_8085860 - ldr r4, _08088EE0 - ldr r1, _08088EE4 - adds r0, r4, 0 - bl sub_808D8BC - adds r4, 0x50 - adds r0, r4, 0 - movs r1, 0x41 - bl sub_808D8BC - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08088EDC: .4byte sub_8086A3C -_08088EE0: .4byte gUnknown_202E038 -_08088EE4: .4byte 0x0000019b - thumb_func_end sub_8088E5C - - thumb_func_start sub_8088EE8 -sub_8088EE8: - push {lr} - bl sub_8086854 - pop {r0} - bx r0 - thumb_func_end sub_8088EE8 - - thumb_func_start sub_8088EF4 -sub_8088EF4: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0xC - bl sub_8085480 - mov r9, r0 - bl sub_808548C - adds r5, r0, 0 - movs r0, 0xB - bl sub_8085680 - mov r8, r0 - movs r0, 0xC - bl sub_8085680 - adds r6, r0, 0 - mov r0, sp - mov r1, r9 - adds r2, r5, 0 - bl sub_8052D44 - bl sub_8086448 - adds r0, r5, 0 - bl sub_808696C - ldr r0, _08089118 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x2 - bl sub_80869E4 - mov r0, r9 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x6 - bl sub_80869E4 - ldr r0, _0808911C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8083F14 - ldr r0, _08089120 - bl sub_80855E4 - bl sub_808680C - ldr r4, _08089124 - adds r0, r4, 0 - bl sub_8083E38 - movs r0, 0x28 - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08089128 - bl sub_8052910 - movs r0, 0x78 - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_8083E58 - bl sub_808682C - ldr r0, _0808912C - bl sub_80855E4 - movs r0, 0x14 - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x4 - bl sub_8085930 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08089130 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r4, 0x10 - adds r0, r4, 0 - bl sub_8083E38 - adds r0, r5, 0 - bl sub_808696C - ldr r0, _08089134 - bl sub_8083E38 - adds r0, r5, 0 - movs r1, 0x4 - bl sub_80856E0 - ldr r0, _08089138 - bl sub_8052910 - mov r1, r8 - ldr r0, [r1, 0x70] - movs r2, 0xAF - lsls r2, 1 - adds r0, r2 - movs r1, 0 - strb r1, [r0] - ldr r0, [r6, 0x70] - adds r0, r2 - strb r1, [r0] - mov r1, r8 - ldr r0, [r1, 0xC] - ldr r1, [r6, 0xC] - adds r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [sp, 0x4] - mov r0, r8 - ldr r1, [r0, 0x10] - ldr r0, [r6, 0x10] - adds r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 - movs r0, 0x80 - lsls r0, 4 - adds r1, r0 - add r0, sp, 0x4 - str r1, [r0, 0x4] - movs r1, 0x20 - bl sub_80858AC - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - bl sub_80891F0 - ldr r0, _0808913C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08089140 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - mov r0, r9 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x5 - bl sub_80869E4 - ldr r0, _08089144 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08089148 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808914C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - mov r0, r9 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x3 - bl sub_80869E4 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x3 - bl sub_80869E4 - ldr r0, _08089150 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_8083E38 - adds r0, r5, 0 - bl sub_808696C - ldr r0, _08089154 - bl sub_8052910 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08089158 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x2 - bl sub_80869E4 - mov r0, r9 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x6 - bl sub_80869E4 - ldr r0, _0808915C - bl sub_8052910 - bl sub_8089294 - ldr r0, _08089160 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08089164 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08089118: .4byte gUnknown_8102B1C -_0808911C: .4byte gUnknown_8102B54 -_08089120: .4byte sub_80868F4 -_08089124: .4byte 0x000001c5 -_08089128: .4byte gUnknown_8102BC4 -_0808912C: .4byte sub_8086910 -_08089130: .4byte gUnknown_8102BE4 -_08089134: .4byte 0x000001c7 -_08089138: .4byte gUnknown_8102C30 -_0808913C: .4byte gUnknown_8102C54 -_08089140: .4byte gUnknown_8102C98 -_08089144: .4byte gUnknown_8102CB0 -_08089148: .4byte gUnknown_8102CF8 -_0808914C: .4byte gUnknown_8102D34 -_08089150: .4byte gUnknown_8102D4C -_08089154: .4byte gUnknown_8102D7C -_08089158: .4byte gUnknown_8102DFC -_0808915C: .4byte gUnknown_8102E2C -_08089160: .4byte gUnknown_8102E54 -_08089164: .4byte gUnknown_203B418 - thumb_func_end sub_8088EF4 - - thumb_func_start sub_8089168 -sub_8089168: - push {r4,lr} - bl sub_8085480 - adds r4, r0, 0 - bl sub_8086448 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8089168 - - thumb_func_start sub_808919C -sub_808919C: - push {lr} - ldr r2, _080891AC - movs r1, 0 - bl sub_804539C - pop {r0} - bx r0 - .align 2, 0 -_080891AC: .4byte 0xfffffe00 - thumb_func_end sub_808919C - - thumb_func_start sub_80891B0 -sub_80891B0: - push {r4,lr} - adds r4, r0, 0 - movs r1, 0 - movs r2, 0x4 - bl sub_806CDD4 - ldr r0, [r4, 0x70] - ldr r2, _080891CC - adds r1, r0, r2 - movs r0, 0x1 - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080891CC: .4byte 0x0000015f - thumb_func_end sub_80891B0 - - thumb_func_start sub_80891D0 -sub_80891D0: - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x7 - movs r2, 0x4 - bl sub_806CDD4 - ldr r0, [r4, 0x70] - ldr r2, _080891EC - adds r1, r0, r2 - movs r0, 0 - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080891EC: .4byte 0x0000015f - thumb_func_end sub_80891D0 - - thumb_func_start sub_80891F0 -sub_80891F0: - push {r4,lr} - ldr r0, _08089218 - bl sub_80855E4 - movs r4, 0x2F -_080891FA: - ldr r0, _0808921C - bl sub_80855E4 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _080891FA - ldr r0, _08089220 - bl sub_80855E4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08089218: .4byte sub_80891B0 -_0808921C: .4byte sub_808919C -_08089220: .4byte sub_80891D0 - thumb_func_end sub_80891F0 - - thumb_func_start sub_8089224 -sub_8089224: - push {lr} - adds r3, r0, 0 - ldr r1, [r3, 0x10] - movs r0, 0x90 - lsls r0, 8 - cmp r1, r0 - ble _0808928C - ldr r1, [r3, 0xC] - ldr r0, _08089248 - cmp r1, r0 - bgt _08089250 - movs r0, 0xB4 - lsls r0, 8 - cmp r1, r0 - ble _08089256 - ldr r1, _0808924C - b _08089278 - .align 2, 0 -_08089248: .4byte 0x0000e3ff -_0808924C: .4byte 0xfffffe00 -_08089250: - ldr r0, _08089264 - cmp r1, r0 - bgt _0808926C -_08089256: - ldr r2, _08089268 - adds r0, r3, 0 - movs r1, 0 - bl sub_804539C - b _0808928C - .align 2, 0 -_08089264: .4byte 0x0000fbff -_08089268: .4byte 0xfffffe00 -_0808926C: - movs r0, 0x8A - lsls r0, 9 - cmp r1, r0 - bgt _08089282 - movs r1, 0x80 - lsls r1, 2 -_08089278: - adds r0, r3, 0 - movs r2, 0 - bl sub_804539C - b _0808928C -_08089282: - ldr r2, _08089290 - adds r0, r3, 0 - movs r1, 0 - bl sub_804539C -_0808928C: - pop {r0} - bx r0 - .align 2, 0 -_08089290: .4byte 0xfffffe00 - thumb_func_end sub_8089224 - - thumb_func_start sub_8089294 -sub_8089294: - push {r4,lr} - ldr r0, _080892BC - bl sub_80855E4 - movs r4, 0x77 -_0808929E: - ldr r0, _080892C0 - bl sub_80855E4 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _0808929E - ldr r0, _080892C4 - bl sub_80855E4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080892BC: .4byte sub_80891B0 -_080892C0: .4byte sub_8089224 -_080892C4: .4byte sub_80891D0 - thumb_func_end sub_8089294 - - thumb_func_start sub_80892C8 -sub_80892C8: - push {r4-r6,lr} - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0xF - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0x1A - bl sub_8083E88 - bl sub_8085374 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r4, _08089320 - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r5, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r5, 0 - bl _call_via_r4 - movs r1, 0x4 - ldrsh r0, [r6, r1] - movs r2, 0x6 - ldrsh r1, [r6, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _08089324 - movs r1, 0xCE - lsls r1, 1 - bl sub_808D8BC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08089320: .4byte sub_8086A3C -_08089324: .4byte gUnknown_202E038 - thumb_func_end sub_80892C8 - - thumb_func_start sub_8089328 -sub_8089328: - push {r4-r6,lr} - sub sp, 0x4 - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0xF - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x1A - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r6, _08089370 - adds r0, r6, 0 - bl sub_80855E4 - movs r0, 0xCE - lsls r0, 1 - bl sub_8086AE4 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08089374 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _0808938C - .align 2, 0 -_08089370: .4byte sub_8086A3C -_08089374: - ldr r0, _080893AC - movs r3, 0 - ldrsh r2, [r0, r3] - str r1, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0 - bl sub_8072008 - adds r0, r4, 0 - bl _call_via_r6 -_0808938C: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _080893B0 - movs r1, 0xCE - lsls r1, 1 - bl sub_808D8BC - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080893AC: .4byte gUnknown_80F57CA -_080893B0: .4byte gUnknown_202E038 - thumb_func_end sub_8089328 - - thumb_func_start sub_80893B4 -sub_80893B4: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xE9 - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x2 - bhi _080893DA - cmp r0, 0xF - bne _080893DA - movs r0, 0xF - bl sub_8097FA8 - ldr r0, _080893E0 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_080893DA: - pop {r0} - bx r0 - .align 2, 0 -_080893E0: .4byte gUnknown_203B418 - thumb_func_end sub_80893B4 - - thumb_func_start sub_80893E4 -sub_80893E4: - push {r4-r6,lr} - bl sub_8085480 - adds r5, r0, 0 - bl sub_808548C - adds r4, r0, 0 - movs r0, 0xF - bl sub_8085680 - adds r6, r0, 0 - bl sub_8086448 - ldr r0, _080894D4 - bl sub_8052910 - bl sub_8089674 - ldr r0, _080894D8 - bl sub_8052910 - adds r0, r4, 0 - movs r1, 0x4 - bl sub_80856E0 - adds r0, r4, 0 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x2 - bl sub_80869E4 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x6 - bl sub_80869E4 - ldr r0, _080894DC - bl sub_8052910 - adds r0, r4, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x4 - bl sub_80869E4 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x1 - movs r3, 0x4 - bl sub_80869E4 - ldr r0, _080894E0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _080894E4 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _080894E8 - bl sub_8052910 - bl sub_8089674 - movs r0, 0xED - lsls r0, 1 - bl sub_8083E38 - ldr r0, _080894EC - bl sub_8052910 - adds r0, r6, 0 - bl sub_8089620 - ldr r0, _080894F0 - bl sub_8052910 - bl sub_8089674 - ldr r0, _080894F4 - bl sub_8052910 - bl sub_8089674 - ldr r0, _080894F8 - bl sub_8052910 - bl sub_8089674 - ldr r0, _080894FC - bl sub_8052910 - movs r1, 0x96 - lsls r1, 2 - adds r0, r6, 0 - movs r2, 0x20 - bl sub_8086A70 - adds r5, 0xC - adds r0, r5, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080894D4: .4byte gUnknown_8103500 -_080894D8: .4byte gUnknown_810352C -_080894DC: .4byte gUnknown_8103578 -_080894E0: .4byte gUnknown_81035D4 -_080894E4: .4byte gUnknown_8103618 -_080894E8: .4byte gUnknown_810367C -_080894EC: .4byte gUnknown_8103690 -_080894F0: .4byte gUnknown_81036C8 -_080894F4: .4byte gUnknown_81037A0 -_080894F8: .4byte gUnknown_81037D4 -_080894FC: .4byte gUnknown_8103820 - thumb_func_end sub_80893E4 - - thumb_func_start sub_8089500 -sub_8089500: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0xF - bl sub_8085680 - adds r5, r0, 0 - bl sub_8086448 - bl sub_8089674 - movs r0, 0xED - lsls r0, 1 - bl sub_8083E38 - ldr r0, _08089574 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_8089620 - ldr r0, _08089578 - bl sub_8052910 - bl sub_8089674 - ldr r0, _0808957C - bl sub_8052910 - bl sub_8089674 - ldr r0, _08089580 - bl sub_8052910 - bl sub_8089674 - ldr r0, _08089584 - bl sub_8052910 - movs r1, 0x96 - lsls r1, 2 - adds r0, r5, 0 - movs r2, 0x20 - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089574: .4byte gUnknown_8103690 -_08089578: .4byte gUnknown_8103844 -_0808957C: .4byte gUnknown_8103874 -_08089580: .4byte gUnknown_81038A8 -_08089584: .4byte gUnknown_81038F8 - thumb_func_end sub_8089500 - - thumb_func_start sub_8089588 -sub_8089588: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0xF - bl sub_8085680 - adds r4, r0, 0 - bl sub_8086448 - movs r0, 0xCE - lsls r0, 1 - bl sub_8086AE4 - lsls r0, 24 - cmp r0, 0 - beq _080895B8 - ldr r0, _080895B4 - bl sub_80866C4 - b _08089606 - .align 2, 0 -_080895B4: .4byte gUnknown_8103B58 -_080895B8: - movs r0, 0xED - lsls r0, 1 - bl sub_8083E38 - ldr r0, _0808960C - bl sub_8052910 - adds r0, r4, 0 - bl sub_8089620 - ldr r0, _08089610 - bl sub_8052910 - bl sub_8089674 - ldr r0, _08089614 - bl sub_8052910 - bl sub_8089674 - ldr r0, _08089618 - bl sub_8052910 - bl sub_8089674 - ldr r0, _0808961C - bl sub_8052910 - movs r1, 0x96 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0xB - bl sub_8086A70 - adds r0, r5, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_08089606: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808960C: .4byte gUnknown_8103904 -_08089610: .4byte gUnknown_8103938 -_08089614: .4byte gUnknown_8103AA4 -_08089618: .4byte gUnknown_8103AE4 -_0808961C: .4byte gUnknown_8103B30 - thumb_func_end sub_8089588 - - thumb_func_start sub_8089620 -sub_8089620: - push {r4-r6,lr} - adds r6, r0, 0 - ldr r0, [r6, 0x70] - movs r2, 0xAF - lsls r2, 1 - adds r1, r0, r2 - movs r0, 0 - strb r0, [r1] - movs r5, 0xC8 - lsls r5, 8 - movs r4, 0xC0 - lsls r4, 3 - movs r0, 0xFC - lsls r0, 1 - bl sub_8083E38 - b _08089652 -_08089642: - ldr r0, [r6, 0x70] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - str r5, [r0] - movs r0, 0x46 - bl sub_803E46C -_08089652: - subs r5, r4 - subs r4, 0x18 - cmp r4, 0x13 - bgt _0808965C - movs r4, 0x14 -_0808965C: - cmp r5, 0 - bge _08089642 - ldr r0, [r6, 0x70] - movs r2, 0xBA - lsls r2, 1 - adds r0, r2 - movs r1, 0 - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8089620 - - thumb_func_start sub_8089674 -sub_8089674: - push {r4,lr} - sub sp, 0x4 - movs r0, 0xFB - lsls r0, 1 - bl sub_8083E38 - movs r4, 0xFA -_08089682: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r2, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _08089682 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA -_080896AC: - lsrs r0, r4, 31 - adds r0, r4, r0 - asrs r0, 1 - movs r1, 0x1 - str r1, [sp] - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _080896AC - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA -_080896D6: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r2, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _080896D6 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8089674 - - thumb_func_start sub_808970C -sub_808970C: - push {r4,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x7D - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _08089744 - bl sub_80855E4 - ldr r0, _08089748 - bl sub_808563C - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - subs r1, 0x3 - bl sub_8085860 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08089744: .4byte sub_8086A3C -_08089748: .4byte sub_8089908 - thumb_func_end sub_808970C - - thumb_func_start sub_808974C -sub_808974C: - push {r4,lr} - bl sub_8085480 - adds r4, r0, 0 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _08089780 - bl sub_80855E4 - ldr r0, _08089784 - bl sub_808563C - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - subs r1, 0x3 - bl sub_8085860 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08089780: .4byte sub_8086A3C -_08089784: .4byte sub_80898F8 - thumb_func_end sub_808974C - - thumb_func_start sub_8089788 -sub_8089788: - push {r4-r7,lr} - adds r7, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - lsls r2, 24 - movs r0, 0xE6 - lsls r0, 24 - adds r2, r0 - lsrs r2, 24 - cmp r2, 0x1 - bhi _080897E2 - movs r5, 0 -_080897A0: - ldr r0, _080897E8 - ldr r0, [r0] - lsls r1, r5, 2 - ldr r2, _080897EC - adds r0, r2 - adds r0, r1 - ldr r4, [r0] - adds r0, r4, 0 - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _080897C8 - cmp r4, r7 - beq _080897C8 - ldr r0, [r4, 0x70] - adds r0, 0xA4 - ldrb r0, [r0] - cmp r0, r6 - beq _080897E2 -_080897C8: - adds r5, 0x1 - cmp r5, 0xF - ble _080897A0 - movs r0, 0 - cmp r0, 0 - bne _080897E2 - movs r0, 0x11 - bl sub_8097FA8 - ldr r0, _080897E8 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_080897E2: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080897E8: .4byte gUnknown_203B418 -_080897EC: .4byte 0x0001358c - thumb_func_end sub_8089788 - - thumb_func_start sub_80897F0 -sub_80897F0: - push {r4,lr} - bl sub_8085480 - adds r4, r0, 0 - bl sub_8086448 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08089858 - bl sub_808563C - movs r0, 0x20 - movs r1, 0x46 - bl sub_803E708 - bl sub_808692C - ldr r0, _0808985C - bl sub_8052910 - ldr r0, _08089860 - bl sub_8052910 - ldr r0, _08089864 - bl sub_8052910 - ldr r0, _08089868 - bl sub_8052910 - ldr r0, _0808986C - bl sub_8052910 - ldr r0, _08089870 - bl sub_8052910 - ldr r0, _08089874 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08089858: .4byte sub_80862BC -_0808985C: .4byte gUnknown_8103BD8 -_08089860: .4byte gUnknown_8103C00 -_08089864: .4byte gUnknown_8103C3C -_08089868: .4byte gUnknown_8103C74 -_0808986C: .4byte gUnknown_8103CC4 -_08089870: .4byte gUnknown_8103D0C -_08089874: .4byte gUnknown_8103D50 - thumb_func_end sub_80897F0 - - thumb_func_start sub_8089878 -sub_8089878: - push {r4,lr} - bl sub_8085480 - adds r4, r0, 0 - bl sub_8086448 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _080898D0 - bl sub_808563C - movs r0, 0x20 - movs r1, 0x46 - bl sub_803E708 - bl sub_808692C - ldr r0, _080898D4 - bl sub_8052910 - ldr r0, _080898D8 - bl sub_8052910 - ldr r0, _080898DC - bl sub_8052910 - ldr r0, _080898E0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080898D0: .4byte sub_80862BC -_080898D4: .4byte gUnknown_8103D8C -_080898D8: .4byte gUnknown_8103D98 -_080898DC: .4byte gUnknown_8103DD8 -_080898E0: .4byte gUnknown_8103E28 - thumb_func_end sub_8089878 - - thumb_func_start sub_80898E4 -sub_80898E4: - push {lr} - bl sub_8086448 - ldr r0, _080898F4 - bl sub_80866C4 - pop {r0} - bx r0 - .align 2, 0 -_080898F4: .4byte gUnknown_8103E34 - thumb_func_end sub_80898E4 - - thumb_func_start sub_80898F8 -sub_80898F8: - push {lr} - movs r1, 0x87 - lsls r1, 2 - movs r2, 0 - bl sub_8068FE0 - pop {r0} - bx r0 - thumb_func_end sub_80898F8 - - thumb_func_start sub_8089908 -sub_8089908: - push {lr} - movs r1, 0x4 - bl sub_8085918 - pop {r0} - bx r0 - thumb_func_end sub_8089908 - - thumb_func_start sub_8089914 -sub_8089914: - push {r4-r6,lr} - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0x11 - bl sub_8085680 - adds r5, r0, 0 - bl sub_8083F14 - ldr r0, _0808996C - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x7] - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r4, _08089970 - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r5, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r5, 0 - bl _call_via_r4 - movs r1, 0x4 - ldrsh r0, [r6, r1] - movs r2, 0x6 - ldrsh r1, [r6, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _08089974 - movs r1, 0x96 - bl sub_808D8BC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808996C: .4byte gUnknown_203B418 -_08089970: .4byte sub_8086A3C -_08089974: .4byte gUnknown_202E038 - thumb_func_end sub_8089914 - - thumb_func_start sub_8089978 -sub_8089978: - push {r4-r6,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x11 - bl sub_8085680 - adds r4, r0, 0 - bl sub_8083F14 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r6, _080899C0 - adds r0, r6, 0 - bl sub_80855E4 - movs r0, 0x96 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _080899C4 - movs r0, 0x23 - bl sub_8083E88 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _080899DA - .align 2, 0 -_080899C0: .4byte sub_8086A3C -_080899C4: - ldr r0, _080899F8 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x7] - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r4, 0 - bl _call_via_r6 -_080899DA: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _080899FC - movs r1, 0x96 - bl sub_808D8BC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080899F8: .4byte gUnknown_203B418 -_080899FC: .4byte gUnknown_202E038 - thumb_func_end sub_8089978 - - thumb_func_start sub_8089A00 -sub_8089A00: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xE3 - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x2 - bhi _08089A26 - cmp r0, 0x11 - bne _08089A26 - movs r0, 0x13 - bl sub_8097FA8 - ldr r0, _08089A2C - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_08089A26: - pop {r0} - bx r0 - .align 2, 0 -_08089A2C: .4byte gUnknown_203B418 - thumb_func_end sub_8089A00 - - thumb_func_start sub_8089A30 -sub_8089A30: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x11 - bl sub_8085680 - adds r5, r0, 0 - bl sub_8086448 - ldr r0, _08089AC0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x23 - bl sub_8083E88 - bl sub_8086794 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_8089B64 - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08089AC4 - bl sub_8052910 - ldr r0, _08089AC8 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8089BB8 - ldr r0, _08089ACC - bl sub_8052910 - bl sub_8089BB8 - ldr r0, _08089AD0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0xE1 - lsls r1, 2 - adds r0, r5, 0 - movs r2, 0x20 - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089AC0: .4byte gUnknown_8103EA4 -_08089AC4: .4byte gUnknown_8103F0C -_08089AC8: .4byte gUnknown_8103F4C -_08089ACC: .4byte gUnknown_8103FCC -_08089AD0: .4byte gUnknown_8104008 - thumb_func_end sub_8089A30 - - thumb_func_start sub_8089AD4 -sub_8089AD4: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x11 - bl sub_8085680 - adds r4, r0, 0 - bl sub_8086448 - movs r0, 0x96 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _08089B00 - ldr r0, _08089AFC - bl sub_80866C4 - b _08089B4E - .align 2, 0 -_08089AFC: .4byte gUnknown_8104144 -_08089B00: - ldr r0, _08089B54 - bl sub_8052910 - movs r0, 0x23 - bl sub_8083E88 - bl sub_8086794 - adds r0, r4, 0 - bl sub_8089B64 - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - ldr r0, _08089B58 - bl sub_8052910 - bl sub_8089BB8 - ldr r0, _08089B5C - bl sub_8052910 - bl sub_8089BB8 - ldr r0, _08089B60 - bl sub_8052910 - movs r1, 0xE1 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0x20 - bl sub_8086A70 - adds r0, r5, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_08089B4E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089B54: .4byte gUnknown_8104044 -_08089B58: .4byte gUnknown_8104050 -_08089B5C: .4byte gUnknown_81040CC -_08089B60: .4byte gUnknown_8104114 - thumb_func_end sub_8089AD4 - - thumb_func_start sub_8089B64 -sub_8089B64: - push {r4-r6,lr} - adds r6, r0, 0 - ldr r0, [r6, 0x70] - movs r2, 0xAF - lsls r2, 1 - adds r1, r0, r2 - movs r0, 0 - strb r0, [r1] - movs r5, 0xC8 - lsls r5, 8 - movs r4, 0x80 - lsls r4, 3 - movs r0, 0xFC - lsls r0, 1 - bl sub_8083E38 - b _08089B96 -_08089B86: - ldr r0, [r6, 0x70] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - str r5, [r0] - movs r0, 0x46 - bl sub_803E46C -_08089B96: - subs r5, r4 - subs r4, 0xB - cmp r4, 0x1D - bgt _08089BA0 - movs r4, 0x1E -_08089BA0: - cmp r5, 0 - bge _08089B86 - ldr r0, [r6, 0x70] - movs r2, 0xBA - lsls r2, 1 - adds r0, r2 - movs r1, 0 - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8089B64 - - thumb_func_start sub_8089BB8 -sub_8089BB8: - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0xFB - lsls r0, 1 - bl sub_8083E38 - movs r4, 0xFA - movs r5, 0x1 -_08089BC8: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _08089BC8 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_08089BEE: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _08089BEE - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_08089C14: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _08089C14 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8089BB8 - - thumb_func_start sub_8089C44 -sub_8089C44: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x12 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8085860 - ldr r0, _08089C88 - ldr r1, _08089C8C - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089C88: .4byte gUnknown_202E038 -_08089C8C: .4byte 0x0000010d - thumb_func_end sub_8089C44 - - thumb_func_start sub_8089C90 -sub_8089C90: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x12 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _08089CCC - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _08089CD0 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _08089CD8 - .align 2, 0 -_08089CCC: .4byte 0x0000010d -_08089CD0: - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 -_08089CD8: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8085860 - ldr r0, _08089CF4 - ldr r1, _08089CF8 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089CF4: .4byte gUnknown_202E038 -_08089CF8: .4byte 0x0000010d - thumb_func_end sub_8089C90 - - thumb_func_start sub_8089CFC -sub_8089CFC: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xE0 - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x2 - bhi _08089D22 - cmp r0, 0x12 - bne _08089D22 - movs r0, 0x15 - bl sub_8097FA8 - ldr r0, _08089D28 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_08089D22: - pop {r0} - bx r0 - .align 2, 0 -_08089D28: .4byte gUnknown_203B418 - thumb_func_end sub_8089CFC - - thumb_func_start sub_8089D2C -sub_8089D2C: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x12 - bl sub_8085680 - adds r5, r0, 0 - bl sub_8089E68 - ldr r0, _08089D80 - bl sub_8052910 - bl sub_8089E68 - ldr r0, _08089D84 - bl sub_8052910 - bl sub_8089E68 - ldr r0, _08089D88 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0x96 - lsls r1, 2 - adds r0, r5, 0 - movs r2, 0xB - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089D80: .4byte gUnknown_8104150 -_08089D84: .4byte gUnknown_81041AC -_08089D88: .4byte gUnknown_81041F8 - thumb_func_end sub_8089D2C - - thumb_func_start sub_8089D8C -sub_8089D8C: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x12 - bl sub_8085680 - adds r5, r0, 0 - bl sub_8089E68 - ldr r0, _08089DE0 - bl sub_8052910 - bl sub_8089E68 - ldr r0, _08089DE4 - bl sub_8052910 - bl sub_8089E68 - ldr r0, _08089DE8 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0x96 - lsls r1, 2 - adds r0, r5, 0 - movs r2, 0xB - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089DE0: .4byte gUnknown_8104240 -_08089DE4: .4byte gUnknown_81042AC -_08089DE8: .4byte gUnknown_81042B8 - thumb_func_end sub_8089D8C - - thumb_func_start sub_8089DEC -sub_8089DEC: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x12 - bl sub_8085680 - adds r4, r0, 0 - ldr r0, _08089E10 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _08089E18 - ldr r0, _08089E14 - bl sub_80866C4 - b _08089E54 - .align 2, 0 -_08089E10: .4byte 0x0000010d -_08089E14: .4byte gUnknown_81043DC -_08089E18: - bl sub_8089E68 - ldr r0, _08089E5C - bl sub_8052910 - bl sub_8089E68 - ldr r0, _08089E60 - bl sub_8052910 - bl sub_8089E68 - ldr r0, _08089E64 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0x96 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0xB - bl sub_8086A70 - adds r0, r5, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_08089E54: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089E5C: .4byte gUnknown_8104310 -_08089E60: .4byte gUnknown_810439C -_08089E64: .4byte gUnknown_81043C0 - thumb_func_end sub_8089DEC - - thumb_func_start sub_8089E68 -sub_8089E68: - push {r4,r5,lr} - sub sp, 0x4 - ldr r0, _08089EF8 - bl sub_8083E38 - movs r4, 0xFA -_08089E74: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r1, r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _08089E74 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_08089EA0: - str r5, [sp] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _08089EA0 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA -_08089EC4: - lsrs r2, r4, 31 - adds r2, r4, r2 - asrs r2, 1 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - adds r1, r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _08089EC4 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089EF8: .4byte 0x000001ed - thumb_func_end sub_8089E68 - - thumb_func_start sub_8089EFC -sub_8089EFC: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x13 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8085860 - ldr r0, _08089F40 - movs r1, 0x86 - lsls r1, 1 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089F40: .4byte gUnknown_202E038 - thumb_func_end sub_8089EFC - - thumb_func_start sub_8089F44 -sub_8089F44: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x13 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8085860 - ldr r0, _08089F88 - movs r1, 0x86 - lsls r1, 1 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089F88: .4byte gUnknown_202E038 - thumb_func_end sub_8089F44 - - thumb_func_start sub_8089F8C -sub_8089F8C: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x13 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - movs r0, 0x86 - lsls r0, 1 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _08089FC8 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _08089FD0 -_08089FC8: - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 -_08089FD0: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8085860 - ldr r0, _08089FEC - movs r1, 0x86 - lsls r1, 1 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08089FEC: .4byte gUnknown_202E038 - thumb_func_end sub_8089F8C - - thumb_func_start sub_8089FF0 -sub_8089FF0: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xDD - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x2 - bhi _0808A016 - cmp r0, 0x13 - bne _0808A016 - movs r0, 0x17 - bl sub_8097FA8 - ldr r0, _0808A01C - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_0808A016: - pop {r0} - bx r0 - .align 2, 0 -_0808A01C: .4byte gUnknown_203B418 - thumb_func_end sub_8089FF0 - - thumb_func_start sub_808A020 -sub_808A020: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x13 - bl sub_8085680 - adds r5, r0, 0 - ldr r0, _0808A0A4 - bl sub_8052910 - bl sub_808A1D8 - ldr r0, _0808A0A8 - bl sub_8052910 - ldr r0, _0808A0AC - ldr r0, [r0] - ldr r1, _0808A0B0 - adds r0, r1 - movs r1, 0x4 - strb r1, [r0] - movs r0, 0 - movs r1, 0x1 - bl sub_807EAA0 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808A0B4 - bl sub_8052910 - bl sub_808A1D8 - ldr r0, _0808A0B8 - bl sub_8052910 - bl sub_808A1D8 - ldr r0, _0808A0BC - bl sub_8052910 - bl sub_808A1D8 - ldr r0, _0808A0C0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r1, _0808A0C4 - adds r0, r5, 0 - movs r2, 0xB - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A0A4: .4byte gUnknown_8104450 -_0808A0A8: .4byte gUnknown_81044B4 -_0808A0AC: .4byte gUnknown_203B418 -_0808A0B0: .4byte 0x0000e265 -_0808A0B4: .4byte gUnknown_8104510 -_0808A0B8: .4byte gUnknown_810453C -_0808A0BC: .4byte gUnknown_8104570 -_0808A0C0: .4byte gUnknown_81045B0 -_0808A0C4: .4byte 0x0000028a - thumb_func_end sub_808A020 - - thumb_func_start sub_808A0C8 -sub_808A0C8: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x13 - bl sub_8085680 - adds r5, r0, 0 - ldr r0, _0808A12C - ldr r0, [r0] - ldr r1, _0808A130 - adds r0, r1 - movs r1, 0x4 - strb r1, [r0] - movs r0, 0 - movs r1, 0x1 - bl sub_807EAA0 - bl sub_808A1D8 - ldr r0, _0808A134 - bl sub_8052910 - bl sub_808A1D8 - ldr r0, _0808A138 - bl sub_8052910 - bl sub_808A1D8 - ldr r0, _0808A13C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r1, _0808A140 - adds r0, r5, 0 - movs r2, 0xB - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A12C: .4byte gUnknown_203B418 -_0808A130: .4byte 0x0000e265 -_0808A134: .4byte gUnknown_81045F8 -_0808A138: .4byte gUnknown_8104674 -_0808A13C: .4byte gUnknown_81046A0 -_0808A140: .4byte 0x0000028a - thumb_func_end sub_808A0C8 - - thumb_func_start sub_808A144 -sub_808A144: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x13 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x86 - lsls r0, 1 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808A170 - ldr r0, _0808A16C - bl sub_80866C4 - b _0808A1BA - .align 2, 0 -_0808A16C: .4byte gUnknown_8104778 -_0808A170: - ldr r0, _0808A1C0 - ldr r0, [r0] - ldr r1, _0808A1C4 - adds r0, r1 - movs r1, 0x4 - strb r1, [r0] - movs r0, 0 - movs r1, 0x1 - bl sub_807EAA0 - ldr r0, _0808A1C8 - bl sub_8052910 - bl sub_808A1D8 - ldr r0, _0808A1CC - bl sub_8052910 - bl sub_808A1D8 - ldr r0, _0808A1D0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r1, _0808A1D4 - adds r0, r4, 0 - movs r2, 0xB - bl sub_8086A70 - adds r0, r5, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_0808A1BA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A1C0: .4byte gUnknown_203B418 -_0808A1C4: .4byte 0x0000e265 -_0808A1C8: .4byte gUnknown_81046CC -_0808A1CC: .4byte gUnknown_8104744 -_0808A1D0: .4byte gUnknown_810476C -_0808A1D4: .4byte 0x0000028a - thumb_func_end sub_808A144 - - thumb_func_start sub_808A1D8 -sub_808A1D8: - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0xFB - lsls r0, 1 - bl sub_8083E38 - movs r4, 0xFA - movs r5, 0x1 -_0808A1E8: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _0808A1E8 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808A20E: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _0808A20E - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808A234: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _0808A234 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808A1D8 - - thumb_func_start sub_808A264 -sub_808A264: - push {r4-r6,lr} - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0x14 - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r4, _0808A2B8 - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r5, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r5, 0 - bl _call_via_r4 - movs r1, 0x4 - ldrsh r0, [r6, r1] - movs r2, 0x6 - ldrsh r1, [r6, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _0808A2BC - movs r1, 0x87 - lsls r1, 1 - bl sub_808D8BC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808A2B8: .4byte sub_8086A3C -_0808A2BC: .4byte gUnknown_202E038 - thumb_func_end sub_808A264 - - thumb_func_start sub_808A2C0 -sub_808A2C0: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x14 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8085860 - ldr r0, _0808A304 - movs r1, 0x87 - lsls r1, 1 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A304: .4byte gUnknown_202E038 - thumb_func_end sub_808A2C0 - - thumb_func_start sub_808A308 -sub_808A308: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x14 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - movs r0, 0x87 - lsls r0, 1 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808A344 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _0808A34C -_0808A344: - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 -_0808A34C: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8085860 - ldr r0, _0808A368 - movs r1, 0x87 - lsls r1, 1 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A368: .4byte gUnknown_202E038 - thumb_func_end sub_808A308 - - thumb_func_start sub_808A36C -sub_808A36C: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xDA - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x2 - bhi _0808A392 - cmp r0, 0x14 - bne _0808A392 - movs r0, 0x19 - bl sub_8097FA8 - ldr r0, _0808A398 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_0808A392: - pop {r0} - bx r0 - .align 2, 0 -_0808A398: .4byte gUnknown_203B418 - thumb_func_end sub_808A36C - - thumb_func_start sub_808A39C -sub_808A39C: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x14 - bl sub_8085680 - adds r5, r0, 0 - bl sub_8086448 - ldr r0, _0808A434 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808A438 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x1 - movs r1, 0x2 - bl sub_80426C8 - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808A43C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_808A528 - ldr r0, _0808A440 - bl sub_8052910 - ldr r0, _0808A444 - bl sub_8052910 - bl sub_808A57C - ldr r0, _0808A448 - bl sub_8052910 - bl sub_808A57C - ldr r0, _0808A44C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r1, _0808A450 - adds r0, r5, 0 - movs r2, 0xB - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A434: .4byte gUnknown_8104784 -_0808A438: .4byte gUnknown_8104790 -_0808A43C: .4byte gUnknown_81047B0 -_0808A440: .4byte gUnknown_810484C -_0808A444: .4byte gUnknown_8104888 -_0808A448: .4byte gUnknown_81048C8 -_0808A44C: .4byte gUnknown_8104914 -_0808A450: .4byte 0x0000028a - thumb_func_end sub_808A39C - - thumb_func_start sub_808A454 -sub_808A454: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x14 - bl sub_8085680 - adds r5, r0, 0 - ldr r0, _0808A4A0 - bl sub_8052910 - bl sub_808A57C - ldr r0, _0808A4A4 - bl sub_8052910 - bl sub_808A57C - ldr r0, _0808A4A8 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r1, _0808A4AC - adds r0, r5, 0 - movs r2, 0xB - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A4A0: .4byte gUnknown_8104930 -_0808A4A4: .4byte gUnknown_8104980 -_0808A4A8: .4byte gUnknown_8104998 -_0808A4AC: .4byte 0x0000028a - thumb_func_end sub_808A454 - - thumb_func_start sub_808A4B0 -sub_808A4B0: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x14 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x87 - lsls r0, 1 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808A4DC - ldr r0, _0808A4D8 - bl sub_80866C4 - b _0808A512 - .align 2, 0 -_0808A4D8: .4byte gUnknown_8104AC8 -_0808A4DC: - ldr r0, _0808A518 - bl sub_8052910 - bl sub_808A57C - ldr r0, _0808A51C - bl sub_8052910 - bl sub_808A57C - ldr r0, _0808A520 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r1, _0808A524 - adds r0, r4, 0 - movs r2, 0xB - bl sub_8086A70 - adds r0, r5, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_0808A512: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A518: .4byte gUnknown_81049D4 -_0808A51C: .4byte gUnknown_8104A80 -_0808A520: .4byte gUnknown_8104A9C -_0808A524: .4byte 0x0000028a - thumb_func_end sub_808A4B0 - - thumb_func_start sub_808A528 -sub_808A528: - push {r4-r6,lr} - adds r6, r0, 0 - ldr r0, [r6, 0x70] - movs r2, 0xAF - lsls r2, 1 - adds r1, r0, r2 - movs r0, 0 - strb r0, [r1] - movs r5, 0xC8 - lsls r5, 8 - movs r4, 0xC0 - lsls r4, 4 - movs r0, 0xFC - lsls r0, 1 - bl sub_8083E38 - b _0808A55A -_0808A54A: - ldr r0, [r6, 0x70] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - str r5, [r0] - movs r0, 0x46 - bl sub_803E46C -_0808A55A: - subs r5, r4 - subs r4, 0x60 - cmp r4, 0x13 - bgt _0808A564 - movs r4, 0x14 -_0808A564: - cmp r5, 0 - bge _0808A54A - ldr r0, [r6, 0x70] - movs r2, 0xBA - lsls r2, 1 - adds r0, r2 - movs r1, 0 - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_808A528 - - thumb_func_start sub_808A57C -sub_808A57C: - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0xF7 - lsls r0, 1 - bl sub_8083E38 - movs r4, 0xFA - movs r5, 0x1 -_0808A58C: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _0808A58C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808A5B2: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _0808A5B2 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808A5D8: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _0808A5D8 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808A57C - - thumb_func_start sub_808A608 -sub_808A608: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x15 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x1C - bl sub_8083E88 - bl sub_80867F4 - movs r0, 0 - movs r1, 0 - movs r2, 0 - bl sub_8086838 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r4, 0 - bl sub_8086A3C - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x6 - bl sub_8085860 - ldr r0, _0808A660 - ldr r1, _0808A664 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A660: .4byte gUnknown_202E038 -_0808A664: .4byte 0x00000113 - thumb_func_end sub_808A608 - - thumb_func_start sub_808A668 -sub_808A668: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x15 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x1C - bl sub_8083E88 - bl sub_80867F4 - movs r0, 0 - movs r1, 0 - movs r2, 0 - bl sub_8086838 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808A6B0 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808A6B4 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _0808A6C2 - .align 2, 0 -_0808A6B0: .4byte 0x00000113 -_0808A6B4: - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r4, 0 - bl sub_8086A3C -_0808A6C2: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x6 - bl sub_8085860 - ldr r0, _0808A6E0 - ldr r1, _0808A6E4 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A6E0: .4byte gUnknown_202E038 -_0808A6E4: .4byte 0x00000113 - thumb_func_end sub_808A668 - - thumb_func_start sub_808A6E8 -sub_808A6E8: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xD7 - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x1 - bhi _0808A70E - cmp r0, 0x15 - bne _0808A70E - movs r0, 0x1A - bl sub_8097FA8 - ldr r0, _0808A714 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_0808A70E: - pop {r0} - bx r0 - .align 2, 0 -_0808A714: .4byte gUnknown_203B418 - thumb_func_end sub_808A6E8 - - thumb_func_start sub_808A718 -sub_808A718: - push {lr} - bl sub_8086854 - pop {r0} - bx r0 - thumb_func_end sub_808A718 - - thumb_func_start sub_808A724 -sub_808A724: - push {r4-r6,lr} - sub sp, 0x8 - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x15 - bl sub_8085680 - adds r6, r0, 0 - ldr r0, [r5, 0xC] - str r0, [sp] - ldr r0, [r5, 0x10] - ldr r1, _0808A800 - adds r0, r1 - str r0, [sp, 0x4] - mov r0, sp - movs r1, 0x88 - bl sub_80858AC - movs r0, 0x40 - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808A804 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_808A958 - ldr r0, _0808A808 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808A80C - bl sub_80855E4 - bl sub_808680C - ldr r4, _0808A810 - adds r0, r4, 0 - bl sub_8083E38 - movs r0, 0xFA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_808A904 - adds r0, r4, 0 - bl sub_8083E58 - bl sub_808682C - ldr r0, _0808A814 - bl sub_80855E4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808A818 - bl sub_8052910 - ldr r0, _0808A81C - bl sub_8052910 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - bl sub_808A958 - ldr r0, _0808A820 - bl sub_8052910 - bl sub_808A958 - ldr r0, _0808A824 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0xC8 - lsls r1, 2 - adds r0, r6, 0 - movs r2, 0x20 - bl sub_8086A70 - adds r5, 0xC - adds r0, r5, 0 - movs r1, 0x10 - bl sub_80858AC - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808A800: .4byte 0xfffff000 -_0808A804: .4byte gUnknown_8104AD4 -_0808A808: .4byte gUnknown_8104BEC -_0808A80C: .4byte sub_80868F4 -_0808A810: .4byte 0x000001c5 -_0808A814: .4byte sub_8086910 -_0808A818: .4byte gUnknown_8104C10 -_0808A81C: .4byte gUnknown_8104C54 -_0808A820: .4byte gUnknown_8104CB4 -_0808A824: .4byte gUnknown_8104CE0 - thumb_func_end sub_808A724 - - thumb_func_start sub_808A828 -sub_808A828: - push {r4,r5,lr} - sub sp, 0x8 - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x15 - bl sub_8085680 - adds r5, r0, 0 - ldr r0, [r4, 0xC] - str r0, [sp] - ldr r0, [r4, 0x10] - ldr r1, _0808A86C - adds r0, r1 - str r0, [sp, 0x4] - mov r0, sp - movs r1, 0x88 - bl sub_80858AC - movs r0, 0x40 - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808A870 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808A878 - ldr r0, _0808A874 - bl sub_80866C4 - b _0808A8E2 - .align 2, 0 -_0808A86C: .4byte 0xfffff000 -_0808A870: .4byte 0x00000113 -_0808A874: .4byte gUnknown_8104E54 -_0808A878: - ldr r0, _0808A8EC - bl sub_8052910 - bl sub_808A958 - ldr r0, _0808A8F0 - bl sub_80855E4 - bl sub_808680C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_808A904 - bl sub_808682C - ldr r0, _0808A8F4 - bl sub_80855E4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808A8F8 - bl sub_8052910 - bl sub_808A958 - ldr r0, _0808A8FC - bl sub_8052910 - bl sub_808A958 - ldr r0, _0808A900 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0xC8 - lsls r1, 2 - adds r0, r5, 0 - movs r2, 0x20 - bl sub_8086A70 - adds r0, r4, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_0808A8E2: - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A8EC: .4byte gUnknown_8104CEC -_0808A8F0: .4byte sub_80868F4 -_0808A8F4: .4byte sub_8086910 -_0808A8F8: .4byte gUnknown_8104D60 -_0808A8FC: .4byte gUnknown_8104DDC -_0808A900: .4byte gUnknown_8104E0C - thumb_func_end sub_808A828 - - thumb_func_start sub_808A904 -sub_808A904: - push {r4-r6,lr} - adds r6, r0, 0 - ldr r0, [r6, 0x70] - movs r2, 0xAF - lsls r2, 1 - adds r1, r0, r2 - movs r0, 0 - strb r0, [r1] - movs r5, 0xC8 - lsls r5, 8 - movs r4, 0xC0 - lsls r4, 4 - movs r0, 0xFC - lsls r0, 1 - bl sub_8083E38 - b _0808A936 -_0808A926: - ldr r0, [r6, 0x70] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - str r5, [r0] - movs r0, 0x46 - bl sub_803E46C -_0808A936: - subs r5, r4 - subs r4, 0x60 - cmp r4, 0x13 - bgt _0808A940 - movs r4, 0x14 -_0808A940: - cmp r5, 0 - bge _0808A926 - ldr r0, [r6, 0x70] - movs r2, 0xBA - lsls r2, 1 - adds r0, r2 - movs r1, 0 - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_808A904 - - thumb_func_start sub_808A958 -sub_808A958: - push {r4,r5,lr} - sub sp, 0x4 - ldr r0, _0808A9E0 - bl sub_8083E38 - movs r4, 0xFA - movs r5, 0x1 -_0808A966: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _0808A966 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808A98C: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _0808A98C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808A9B2: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _0808A9B2 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808A9E0: .4byte 0x000001ed - thumb_func_end sub_808A958 - - thumb_func_start sub_808A9E4 -sub_808A9E4: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x16 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808AA30 - bl sub_80855E4 - adds r0, r4, 0 - movs r1, 0x4 - bl sub_8085918 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x4 - bl sub_8085860 - ldr r0, _0808AA34 - ldr r1, _0808AA38 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808AA30: .4byte sub_8086A3C -_0808AA34: .4byte gUnknown_202E038 -_0808AA38: .4byte 0x00000199 - thumb_func_end sub_808A9E4 - - thumb_func_start sub_808AA3C -sub_808AA3C: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x16 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808AA88 - bl sub_80855E4 - adds r0, r4, 0 - movs r1, 0x4 - bl sub_8085918 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _0808AA8C - ldr r1, _0808AA90 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808AA88: .4byte sub_8086A3C -_0808AA8C: .4byte gUnknown_202E038 -_0808AA90: .4byte 0x00000199 - thumb_func_end sub_808AA3C - - thumb_func_start sub_808AA94 -sub_808AA94: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x16 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808AAE4 - bl sub_80855E4 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _0808AAE8 - ldr r1, _0808AAEC - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808AAE4: .4byte sub_8086A3C -_0808AAE8: .4byte gUnknown_202E038 -_0808AAEC: .4byte 0x00000199 - thumb_func_end sub_808AA94 - - thumb_func_start sub_808AAF0 -sub_808AAF0: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - movs r2, 0xD5 - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x2 - bhi _0808AB16 - cmp r0, 0x16 - bne _0808AB16 - movs r0, 0x1C - bl sub_8097FA8 - ldr r0, _0808AB1C - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_0808AB16: - pop {r0} - bx r0 - .align 2, 0 -_0808AB1C: .4byte gUnknown_203B418 - thumb_func_end sub_808AAF0 - - thumb_func_start sub_808AB20 -sub_808AB20: - push {r4,r5,lr} - sub sp, 0x10 - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x16 - bl sub_8085680 - adds r4, r0, 0 - ldr r0, [r4, 0xC] - str r0, [sp, 0x4] - ldr r0, [r4, 0x10] - movs r1, 0x80 - lsls r1, 6 - adds r0, r1 - str r0, [sp, 0x8] - ldr r0, _0808ABC4 - str r0, [sp, 0xC] - ldr r0, _0808ABC8 - add r3, sp, 0xC - movs r1, 0x1 - str r1, [sp] - movs r1, 0 - movs r2, 0 - bl sub_8085EC8 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - bl sub_8086448 - add r0, sp, 0x4 - movs r1, 0x18 - bl sub_80858AC - movs r0, 0x2 - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_80862BC - movs r0, 0x20 - movs r1, 0x46 - bl sub_803E708 - bl sub_808692C - ldr r0, _0808ABCC - bl sub_8052910 - bl sub_808AC50 - ldr r0, _0808ABD0 - bl sub_8052910 - bl sub_808AC50 - ldr r0, _0808ABD4 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0x96 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0xB - bl sub_8086A70 - adds r5, 0xC - adds r0, r5, 0 - movs r1, 0x10 - bl sub_80858AC - add sp, 0x10 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808ABC4: .4byte 0x007000fc -_0808ABC8: .4byte 0x000001bd -_0808ABCC: .4byte gUnknown_8104E60 -_0808ABD0: .4byte gUnknown_8104EFC -_0808ABD4: .4byte gUnknown_8104F30 - thumb_func_end sub_808AB20 - - thumb_func_start sub_808ABD8 -sub_808ABD8: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x16 - bl sub_8085680 - adds r5, r0, 0 - bl sub_8086448 - bl sub_808692C - ldr r0, _0808AC30 - bl sub_8052910 - bl sub_808AC50 - ldr r0, _0808AC34 - bl sub_8052910 - bl sub_808AC50 - ldr r0, _0808AC38 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0x96 - lsls r1, 2 - adds r0, r5, 0 - movs r2, 0xB - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808AC30: .4byte gUnknown_8104F64 -_0808AC34: .4byte gUnknown_8104EFC -_0808AC38: .4byte gUnknown_8104F30 - thumb_func_end sub_808ABD8 - - thumb_func_start sub_808AC3C -sub_808AC3C: - push {lr} - bl sub_8086448 - ldr r0, _0808AC4C - bl sub_80866C4 - pop {r0} - bx r0 - .align 2, 0 -_0808AC4C: .4byte gUnknown_8104FC8 - thumb_func_end sub_808AC3C - - thumb_func_start sub_808AC50 -sub_808AC50: - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0xF7 - lsls r0, 1 - bl sub_8083E38 - ldr r1, _0808ACBC - movs r0, 0x1F - str r0, [r1] - movs r4, 0xFA - movs r5, 0x1 -_0808AC66: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _0808AC66 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808AC8C: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _0808AC8C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808ACBC: .4byte gUnknown_202EDC8 - thumb_func_end sub_808AC50 - - thumb_func_start sub_808ACC0 -sub_808ACC0: - push {r4,lr} - ldr r4, _0808ACF4 - adds r0, r4, 0 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808ACF8 - movs r0, 0x17 - bl sub_8085680 - movs r1, 0x87 - lsls r1, 2 - movs r2, 0 - bl sub_8068FE0 - movs r0, 0x22 - bl sub_8097FA8 - movs r0, 0x1D - bl sub_8097FA8 - movs r0, 0x79 - bl sub_808B1CC - b _0808AD38 - .align 2, 0 -_0808ACF4: .4byte 0x00000195 -_0808ACF8: - movs r0, 0x79 - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - bne _0808AD10 - movs r0, 0x7A - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - beq _0808AD1E -_0808AD10: - movs r0, 0x22 - bl sub_8098044 - movs r0, 0x1D - bl sub_8097FA8 - b _0808AD38 -_0808AD1E: - movs r0, 0x22 - bl sub_8098044 - movs r0, 0x1D - bl sub_8098044 - ldr r0, _0808AD40 - bl sub_80855E4 - ldr r0, _0808AD44 - adds r1, r4, 0 - bl sub_808D8BC -_0808AD38: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808AD40: .4byte sub_808B2B0 -_0808AD44: .4byte gUnknown_202E038 - thumb_func_end sub_808ACC0 - - thumb_func_start sub_808AD48 -sub_808AD48: - push {r4,lr} - movs r4, 0xCB - lsls r4, 1 - adds r0, r4, 0 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808AD7E - movs r0, 0x18 - bl sub_8085680 - movs r1, 0x87 - lsls r1, 2 - movs r2, 0 - bl sub_8068FE0 - movs r0, 0x22 - bl sub_8097FA8 - movs r0, 0x1D - bl sub_8097FA8 - movs r0, 0x77 - bl sub_808B1CC - b _0808ADBE -_0808AD7E: - movs r0, 0x77 - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - bne _0808AD96 - movs r0, 0x7A - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - beq _0808ADA4 -_0808AD96: - movs r0, 0x22 - bl sub_8098044 - movs r0, 0x1D - bl sub_8097FA8 - b _0808ADBE -_0808ADA4: - movs r0, 0x22 - bl sub_8098044 - movs r0, 0x1D - bl sub_8098044 - ldr r0, _0808ADC4 - bl sub_80855E4 - ldr r0, _0808ADC8 - adds r1, r4, 0 - bl sub_808D8BC -_0808ADBE: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808ADC4: .4byte sub_808B2B0 -_0808ADC8: .4byte gUnknown_202E038 - thumb_func_end sub_808AD48 - - thumb_func_start sub_808ADCC -sub_808ADCC: - push {r4,lr} - ldr r4, _0808AE00 - adds r0, r4, 0 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808AE04 - movs r0, 0x19 - bl sub_8085680 - movs r1, 0x87 - lsls r1, 2 - movs r2, 0 - bl sub_8068FE0 - movs r0, 0x22 - bl sub_8097FA8 - movs r0, 0x1D - bl sub_8097FA8 - movs r0, 0x78 - bl sub_808B1CC - b _0808AE44 - .align 2, 0 -_0808AE00: .4byte 0x00000197 -_0808AE04: - movs r0, 0x78 - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - bne _0808AE1C - movs r0, 0x7A - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - beq _0808AE2A -_0808AE1C: - movs r0, 0x22 - bl sub_8098044 - movs r0, 0x1D - bl sub_8097FA8 - b _0808AE44 -_0808AE2A: - movs r0, 0x22 - bl sub_8098044 - movs r0, 0x1D - bl sub_8098044 - ldr r0, _0808AE4C - bl sub_80855E4 - ldr r0, _0808AE50 - adds r1, r4, 0 - bl sub_808D8BC -_0808AE44: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808AE4C: .4byte sub_808B2B0 -_0808AE50: .4byte gUnknown_202E038 - thumb_func_end sub_808ADCC - - thumb_func_start sub_808AE54 -sub_808AE54: - push {r4-r6,lr} - sub sp, 0x8 - adds r6, r2, 0 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - bl sub_8085480 - adds r1, r0, 0 - mov r0, sp - movs r2, 0 - bl sub_8052D44 - movs r0, 0x22 - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808AEBA - cmp r4, 0x2E - bne _0808AEBA - cmp r5, 0x17 - bne _0808AEBA - movs r0, 0 - bl sub_808B1CC - movs r0, 0x1D - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808AEBA - add r4, sp, 0x4 - adds r0, r4, 0 - movs r1, 0x79 - movs r2, 0 - bl sub_8090A8C - bl sub_8083600 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_80464C8 - movs r0, 0x72 - bl sub_8083E88 - ldr r0, _0808AEC4 - bl sub_8052910 -_0808AEBA: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808AEC4: .4byte gUnknown_8105040 - thumb_func_end sub_808AE54 - - thumb_func_start sub_808AEC8 -sub_808AEC8: - push {r4-r6,lr} - sub sp, 0x8 - adds r6, r2, 0 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - bl sub_8085480 - adds r1, r0, 0 - mov r0, sp - movs r2, 0 - bl sub_8052D44 - movs r0, 0x22 - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808AF2E - cmp r4, 0x2F - bne _0808AF2E - cmp r5, 0x18 - bne _0808AF2E - movs r0, 0 - bl sub_808B1CC - movs r0, 0x1D - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808AF2E - add r4, sp, 0x4 - adds r0, r4, 0 - movs r1, 0x77 - movs r2, 0 - bl sub_8090A8C - bl sub_8083600 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_80464C8 - movs r0, 0x72 - bl sub_8083E88 - ldr r0, _0808AF38 - bl sub_8052910 -_0808AF2E: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808AF38: .4byte gUnknown_810510C - thumb_func_end sub_808AEC8 - - thumb_func_start sub_808AF3C -sub_808AF3C: - push {r4-r6,lr} - sub sp, 0x8 - adds r6, r2, 0 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - bl sub_8085480 - adds r1, r0, 0 - mov r0, sp - movs r2, 0 - bl sub_8052D44 - movs r0, 0x22 - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808AFA2 - cmp r4, 0x30 - bne _0808AFA2 - cmp r5, 0x19 - bne _0808AFA2 - movs r0, 0 - bl sub_808B1CC - movs r0, 0x1D - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808AFA2 - add r4, sp, 0x4 - adds r0, r4, 0 - movs r1, 0x78 - movs r2, 0 - bl sub_8090A8C - bl sub_8083600 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_80464C8 - movs r0, 0x72 - bl sub_8083E88 - ldr r0, _0808AFAC - bl sub_8052910 -_0808AFA2: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808AFAC: .4byte gUnknown_81051D0 - thumb_func_end sub_808AF3C - - thumb_func_start sub_808AFB0 -sub_808AFB0: - push {r4,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8085480 - adds r1, r0, 0 - mov r0, sp - movs r2, 0 - bl sub_8052D44 - movs r0, 0x22 - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808B01E - cmp r4, 0x2E - bne _0808B01E - movs r0, 0x1D - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808B01E - movs r0, 0x79 - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - beq _0808B01E - movs r0, 0x1D - bl sub_8097FD0 - ldr r4, _0808B028 - bl sub_8083600 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0808B02C - bl sub_8052910 - movs r0, 0 - movs r1, 0xD4 - bl sub_80421C0 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8046D20 -_0808B01E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B028: .4byte gUnknown_202DF98 -_0808B02C: .4byte gUnknown_81050B4 - thumb_func_end sub_808AFB0 - - thumb_func_start sub_808B030 -sub_808B030: - push {r4,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8085480 - adds r1, r0, 0 - mov r0, sp - movs r2, 0 - bl sub_8052D44 - movs r0, 0x22 - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808B09E - cmp r4, 0x2F - bne _0808B09E - movs r0, 0x1D - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808B09E - movs r0, 0x77 - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - beq _0808B09E - movs r0, 0x1D - bl sub_8097FD0 - ldr r4, _0808B0A8 - bl sub_8083600 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0808B0AC - bl sub_8052910 - movs r0, 0 - movs r1, 0xD4 - bl sub_80421C0 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8046D20 -_0808B09E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B0A8: .4byte gUnknown_202DF98 -_0808B0AC: .4byte gUnknown_810517C - thumb_func_end sub_808B030 - - thumb_func_start sub_808B0B0 -sub_808B0B0: - push {r4,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8085480 - adds r1, r0, 0 - mov r0, sp - movs r2, 0 - bl sub_8052D44 - movs r0, 0x22 - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808B11E - cmp r4, 0x30 - bne _0808B11E - movs r0, 0x1D - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808B11E - movs r0, 0x78 - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - beq _0808B11E - movs r0, 0x1D - bl sub_8097FD0 - ldr r4, _0808B128 - bl sub_8083600 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0 - bl sub_8045B94 - ldr r0, _0808B12C - bl sub_8052910 - movs r0, 0 - movs r1, 0xD4 - bl sub_80421C0 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8046D20 -_0808B11E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B128: .4byte gUnknown_202DF98 -_0808B12C: .4byte gUnknown_8105244 - thumb_func_end sub_808B0B0 - - thumb_func_start sub_808B130 -sub_808B130: - push {lr} - movs r0, 0x22 - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808B158 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808B15C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808B160 - bl sub_808563C -_0808B158: - pop {r0} - bx r0 - .align 2, 0 -_0808B15C: .4byte gUnknown_8104FD4 -_0808B160: .4byte sub_808B2C4 - thumb_func_end sub_808B130 - - thumb_func_start sub_808B164 -sub_808B164: - push {lr} - movs r0, 0x22 - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808B18C - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808B190 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808B194 - bl sub_808563C -_0808B18C: - pop {r0} - bx r0 - .align 2, 0 -_0808B190: .4byte gUnknown_8105028 -_0808B194: .4byte sub_808B2D4 - thumb_func_end sub_808B164 - - thumb_func_start sub_808B198 -sub_808B198: - push {lr} - movs r0, 0x22 - bl sub_8098100 - lsls r0, 24 - cmp r0, 0 - bne _0808B1C0 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808B1C4 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808B1C8 - bl sub_808563C -_0808B1C0: - pop {r0} - bx r0 - .align 2, 0 -_0808B1C4: .4byte gUnknown_8105034 -_0808B1C8: .4byte sub_808B2E4 - thumb_func_end sub_808B198 - - thumb_func_start sub_808B1CC -sub_808B1CC: - push {r4-r7,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r7, _0808B21C - ldr r2, [r7] - ldr r1, _0808B220 - adds r0, r2, r1 - ldrh r0, [r0] - ldr r5, _0808B224 - ldr r1, [sp] - ands r1, r5 - orrs r1, r0 - str r1, [sp] - ldr r3, _0808B228 - adds r2, r3 - ldrh r0, [r2] - lsls r0, 16 - ldr r4, _0808B22C - adds r2, r4, 0 - ands r2, r1 - orrs r2, r0 - str r2, [sp] - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - blt _0808B208 - cmp r2, 0 - bge _0808B244 -_0808B208: - bl sub_8083600 - adds r2, r0, 0 - cmp r2, 0 - bne _0808B230 - ldr r1, [r7] - movs r0, 0x1 - strb r0, [r1, 0x2] - b _0808B2A8 - .align 2, 0 -_0808B21C: .4byte gUnknown_203B418 -_0808B220: .4byte 0x00000684 -_0808B224: .4byte 0xffff0000 -_0808B228: .4byte 0x00000686 -_0808B22C: .4byte 0x0000ffff -_0808B230: - ldrh r0, [r2, 0x4] - ldr r1, [sp] - ands r1, r5 - orrs r1, r0 - str r1, [sp] - ldrh r0, [r2, 0x6] - lsls r0, 16 - ands r1, r4 - orrs r1, r0 - str r1, [sp] -_0808B244: - mov r5, sp - mov r0, sp - movs r1, 0 - bl sub_807FE04 - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - movs r3, 0x2 - ldrsh r1, [r5, r3] - bl sub_8049590 - ldrh r2, [r0] - movs r3, 0x80 - lsls r3, 2 - adds r1, r3, 0 - orrs r1, r2 - strh r1, [r0] - cmp r6, 0 - beq _0808B2A0 - adds r0, r6, 0 - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - bne _0808B2A0 - movs r0, 0x7A - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - bne _0808B2A0 - add r4, sp, 0x4 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - bl sub_8090A8C - ldrh r0, [r5, 0x2] - subs r0, 0x1 - strh r0, [r5, 0x2] - mov r0, sp - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80460F8 -_0808B2A0: - bl sub_8049ED4 - bl sub_8040A84 -_0808B2A8: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_808B1CC - - thumb_func_start sub_808B2B0 -sub_808B2B0: - push {lr} - ldr r1, [r0, 0x70] - adds r1, 0x46 - movs r2, 0x4 - strb r2, [r1] - movs r1, 0x4 - bl sub_806CE68 - pop {r0} - bx r0 - thumb_func_end sub_808B2B0 - - thumb_func_start sub_808B2C4 -sub_808B2C4: - push {lr} - movs r1, 0xE1 - lsls r1, 1 - movs r2, 0xB - bl sub_8086A70 - pop {r0} - bx r0 - thumb_func_end sub_808B2C4 - - thumb_func_start sub_808B2D4 -sub_808B2D4: - push {lr} - movs r1, 0xE1 - lsls r1, 1 - movs r2, 0xB - bl sub_8086A70 - pop {r0} - bx r0 - thumb_func_end sub_808B2D4 - - thumb_func_start sub_808B2E4 -sub_808B2E4: - push {lr} - movs r1, 0xE1 - lsls r1, 1 - movs r2, 0xB - bl sub_8086A70 - pop {r0} - bx r0 - thumb_func_end sub_808B2E4 - - thumb_func_start sub_808B2F4 -sub_808B2F4: - push {r4-r6,lr} - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0x1A - bl sub_8085680 - adds r5, r0, 0 - movs r0, 0x79 - bl sub_8083E88 - bl sub_808BCE4 - bl sub_8049ED4 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r4, _0808B350 - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r5, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r5, 0 - bl _call_via_r4 - movs r1, 0x4 - ldrsh r0, [r6, r1] - movs r2, 0x6 - ldrsh r1, [r6, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _0808B354 - ldr r1, _0808B358 - bl sub_808D8BC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808B350: .4byte sub_8086A3C -_0808B354: .4byte gUnknown_202E038 -_0808B358: .4byte 0x0000019d - thumb_func_end sub_808B2F4 - - thumb_func_start sub_808B35C -sub_808B35C: - push {r4-r6,lr} - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0x1A - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x79 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r5, _0808B3A0 - adds r0, r5, 0 - bl sub_80855E4 - ldr r0, _0808B3A4 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808B3A8 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _0808B3BE - .align 2, 0 -_0808B3A0: .4byte sub_8086A3C -_0808B3A4: .4byte 0x0000019d -_0808B3A8: - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - adds r0, r4, 0 - bl _call_via_r5 - bl sub_808BCE4 - bl sub_8049ED4 -_0808B3BE: - movs r1, 0x4 - ldrsh r0, [r6, r1] - movs r2, 0x6 - ldrsh r1, [r6, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _0808B3DC - ldr r1, _0808B3E0 - bl sub_808D8BC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808B3DC: .4byte gUnknown_202E038 -_0808B3E0: .4byte 0x0000019d - thumb_func_end sub_808B35C - - thumb_func_start sub_808B3E4 -sub_808B3E4: - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsls r2, 24 - lsrs r4, r2, 24 - movs r2, 0xCF - lsls r2, 24 - adds r1, r2 - lsrs r1, 24 - cmp r1, 0x1 - bhi _0808B44E - cmp r0, 0x1A - bne _0808B44E - movs r0, 0x1E - bl sub_8097FA8 - cmp r4, 0 - beq _0808B418 - ldr r0, _0808B414 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] - b _0808B44E - .align 2, 0 -_0808B414: .4byte gUnknown_203B418 -_0808B418: - ldr r0, _0808B434 - ldr r0, [r0] - ldr r1, _0808B438 - adds r0, r1 - ldrb r4, [r0] - movs r0, 0x36 - bl sub_80860A8 - lsls r0, 24 - cmp r0, 0 - beq _0808B43C - bl sub_808B5B8 - b _0808B440 - .align 2, 0 -_0808B434: .4byte gUnknown_203B418 -_0808B438: .4byte 0x0001356c -_0808B43C: - bl sub_808B50C -_0808B440: - ldr r0, _0808B454 - ldr r0, [r0] - ldr r2, _0808B458 - adds r0, r2 - strb r4, [r0] - bl sub_8040A84 -_0808B44E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808B454: .4byte gUnknown_203B418 -_0808B458: .4byte 0x0001356c - thumb_func_end sub_808B3E4 - - thumb_func_start sub_808B45C -sub_808B45C: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x1A - bl sub_8085680 - adds r5, r0, 0 - bl sub_8086448 - movs r0, 0x40 - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808B4F8 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808B4FC - bl sub_8052910 - movs r0, 0x37 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80861F8 - ldr r0, _0808B500 - bl sub_80855E4 - movs r0, 0x3C - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_808BBB8 - movs r0, 0x5A - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808B504 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808B508 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0xAF - lsls r1, 1 - adds r0, r5, 0 - movs r2, 0x20 - bl sub_8086A70 - adds r4, 0xC - adds r0, r4, 0 - movs r1, 0x10 - bl sub_80858AC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808B4F8: .4byte gUnknown_8105438 -_0808B4FC: .4byte gUnknown_81054A0 -_0808B500: .4byte sub_80862BC -_0808B504: .4byte gUnknown_81054E4 -_0808B508: .4byte gUnknown_810550C - thumb_func_end sub_808B45C - - thumb_func_start sub_808B50C -sub_808B50C: - push {r4,r5,lr} - movs r0, 0x1A - bl sub_8085680 - adds r5, r0, 0 - ldr r0, _0808B59C - ldr r1, _0808B5A0 - bl sub_808D8BC - ldr r4, _0808B5A4 - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r5, 0 - bl _call_via_r4 - movs r0, 0 - bl sub_8041888 - ldr r0, [r5, 0x70] - movs r1, 0xAE - lsls r1, 1 - adds r0, r1 - movs r1, 0 - movs r4, 0x1 - strb r4, [r0] - ldr r0, [r5, 0x70] - movs r2, 0xAF - lsls r2, 1 - adds r0, r2 - strb r1, [r0] - adds r0, r5, 0 - movs r1, 0xE - movs r2, 0 - bl sub_80861B8 - movs r0, 0x1E - bl sub_8083ED8 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808B5A8 - bl sub_8052910 - movs r0, 0x79 - bl sub_8083E88 - ldr r0, _0808B5AC - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_808BC20 - ldr r0, _0808B5B0 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808B5B4 - ldr r0, [r0] - strb r4, [r0, 0x2] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808B59C: .4byte gUnknown_202E038 -_0808B5A0: .4byte 0x0000019d -_0808B5A4: .4byte sub_808BBA8 -_0808B5A8: .4byte gUnknown_810554C -_0808B5AC: .4byte gUnknown_8105558 -_0808B5B0: .4byte gUnknown_81055F4 -_0808B5B4: .4byte gUnknown_203B418 - thumb_func_end sub_808B50C - - thumb_func_start sub_808B5B8 -sub_808B5B8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x78 - movs r0, 0x1A - bl sub_8085680 - adds r6, r0, 0 - ldr r0, _0808B82C - ldr r1, _0808B830 - bl sub_808D8BC - ldr r4, _0808B834 - adds r0, r4, 0 - bl sub_80855E4 - adds r0, r6, 0 - bl _call_via_r4 - movs r0, 0 - bl sub_8041888 - ldr r0, [r6, 0x70] - movs r1, 0xAE - lsls r1, 1 - adds r0, r1 - movs r1, 0 - movs r4, 0x1 - strb r4, [r0] - ldr r0, [r6, 0x70] - movs r2, 0xAF - lsls r2, 1 - adds r0, r2 - strb r1, [r0] - adds r0, r6, 0 - movs r1, 0xE - movs r2, 0 - bl sub_80861B8 - ldr r0, _0808B838 - bl sub_80855E4 - ldr r0, _0808B83C - ldr r0, [r0] - ldr r1, _0808B840 - adds r0, r1 - strb r4, [r0] - movs r0, 0x1E - bl sub_8083ED8 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808B844 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808B848 - bl sub_8083E38 - movs r0, 0x96 - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_80862BC - ldr r0, _0808B84C - bl sub_8052910 - movs r0, 0x79 - bl sub_8083E88 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - movs r1, 0 - bl sub_80856E0 - movs r0, 0xB5 - lsls r0, 1 - bl sub_8083E38 - ldr r0, _0808B850 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_808696C - ldr r0, _0808B854 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 -_0808B690: - ldr r4, _0808B858 -_0808B692: - movs r0, 0 - ldr r1, [r4] - ldr r2, _0808B85C - ldr r3, _0808B860 - bl sub_8052C68 - mov r9, r0 - cmp r0, 0 - ble _0808B692 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - mov r2, r9 - cmp r2, 0x1 - bne _0808B754 - ldr r0, _0808B864 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_808BC70 - movs r0, 0 - add r7, sp, 0x6C -_0808B6CA: - adds r0, 0x1 - mov r8, r0 - mov r4, sp - movs r5, 0x8 -_0808B6D2: - adds r0, r4, 0 - movs r1, 0x69 - movs r2, 0 - bl sub_8045C28 - adds r4, 0x4 - subs r5, 0x1 - cmp r5, 0 - bge _0808B6D2 - movs r0, 0x3 - bl sub_8084100 - ldrh r1, [r6, 0x4] - adds r1, r0 - subs r1, 0x1 - lsls r1, 16 - lsrs r1, 16 - ldr r2, _0808B868 - ldr r0, [sp, 0x6C] - ands r0, r2 - orrs r0, r1 - str r0, [sp, 0x6C] - movs r0, 0x3 - bl sub_8084100 - ldrh r2, [r6, 0x6] - adds r2, r0 - subs r2, 0x1 - lsls r2, 16 - ldr r0, _0808B86C - ldr r1, [sp, 0x6C] - ands r1, r0 - orrs r1, r2 - str r1, [sp, 0x6C] - movs r2, 0 - ldrsh r0, [r7, r2] - asrs r1, 16 - bl sub_8049590 - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0808B744 - movs r0, 0xA6 - lsls r0, 1 - bl sub_8083E38 - adds r0, r7, 0 - bl sub_808BB3C - adds r0, r6, 0 - adds r1, r7, 0 - mov r2, sp - movs r3, 0x9 - bl sub_8046860 -_0808B744: - mov r0, r8 - cmp r0, 0x5 - ble _0808B6CA - ldr r0, [r6, 0x70] - ldr r2, _0808B870 - adds r1, r0, r2 - movs r0, 0 - strb r0, [r1] -_0808B754: - mov r0, r9 - cmp r0, 0x2 - bne _0808B80A - ldr r0, _0808B874 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_808BC70 - movs r0, 0 - add r1, sp, 0x24 - mov r8, r1 - add r7, sp, 0x70 -_0808B776: - adds r0, 0x1 - mov r10, r0 - mov r4, r8 - movs r5, 0x8 -_0808B77E: - movs r0, 0 - bl sub_803D73C - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - movs r2, 0 - bl sub_8045C28 - adds r4, 0x4 - subs r5, 0x1 - cmp r5, 0 - bge _0808B77E - movs r0, 0x3 - bl sub_8084100 - ldrh r1, [r6, 0x4] - adds r1, r0 - subs r1, 0x1 - lsls r1, 16 - lsrs r1, 16 - ldr r2, _0808B868 - ldr r0, [sp, 0x70] - ands r0, r2 - orrs r0, r1 - str r0, [sp, 0x70] - movs r0, 0x3 - bl sub_8084100 - ldrh r2, [r6, 0x6] - adds r2, r0 - subs r2, 0x1 - lsls r2, 16 - ldr r0, _0808B86C - ldr r1, [sp, 0x70] - ands r1, r0 - orrs r1, r2 - str r1, [sp, 0x70] - movs r2, 0 - ldrsh r0, [r7, r2] - asrs r1, 16 - bl sub_8049590 - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0808B7FA - movs r0, 0xC8 - lsls r0, 1 - bl sub_8083E38 - adds r0, r7, 0 - bl sub_808BB3C - adds r0, r6, 0 - adds r1, r7, 0 - mov r2, r8 - movs r3, 0x9 - bl sub_8046860 -_0808B7FA: - mov r0, r10 - cmp r0, 0x5 - ble _0808B776 - ldr r0, [r6, 0x70] - ldr r2, _0808B870 - adds r1, r0, r2 - movs r0, 0 - strb r0, [r1] -_0808B80A: - mov r0, r9 - cmp r0, 0x3 - bne _0808B8CA - bl sub_808BD94 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3A - bne _0808B87C - ldr r0, _0808B878 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - b _0808B690 - .align 2, 0 -_0808B82C: .4byte gUnknown_202E038 -_0808B830: .4byte 0x0000019d -_0808B834: .4byte sub_808BBA8 -_0808B838: .4byte sub_80861A8 -_0808B83C: .4byte gUnknown_203B418 -_0808B840: .4byte 0x0001356c -_0808B844: .4byte gUnknown_8105668 -_0808B848: .4byte 0x000001a7 -_0808B84C: .4byte gUnknown_8105674 -_0808B850: .4byte gUnknown_81056B8 -_0808B854: .4byte gUnknown_81056DC -_0808B858: .4byte gUnknown_8105798 -_0808B85C: .4byte gUnknown_810579C -_0808B860: .4byte 0x00000705 -_0808B864: .4byte gUnknown_810581C -_0808B868: .4byte 0xffff0000 -_0808B86C: .4byte 0x0000ffff -_0808B870: .4byte 0x0000015d -_0808B874: .4byte gUnknown_8105974 -_0808B878: .4byte gUnknown_8105A08 -_0808B87C: - ldr r0, _0808BA30 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_808BC70 - ldr r0, [r6, 0x70] - ldr r2, _0808BA34 - adds r1, r0, r2 - movs r0, 0 - strb r0, [r1] - ldr r0, _0808BA38 - bl sub_8052910 - adds r0, r4, 0 - bl sub_80925EC - movs r0, 0xD4 - bl sub_8083E38 - bl sub_8083600 - adds r1, r0, 0 - ldr r0, _0808BA3C - movs r2, 0 - bl sub_8045B94 - ldr r0, _0808BA40 - adds r1, r4, 0 - movs r2, 0 - bl sub_8092578 - ldr r0, _0808BA44 - bl sub_8052910 -_0808B8CA: - mov r0, r9 - cmp r0, 0x4 - bne _0808B98E - ldr r0, _0808BA48 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_808BC70 - movs r0, 0 - add r1, sp, 0x48 - mov r8, r1 - add r7, sp, 0x74 -_0808B8EC: - adds r0, 0x1 - mov r10, r0 - mov r4, r8 - movs r5, 0x3 -_0808B8F4: - movs r0, 0x8 - bl sub_8084100 - ldr r2, _0808BA4C - adds r0, r2 - ldrb r1, [r0] - adds r0, r4, 0 - movs r2, 0 - bl sub_8045C28 - adds r4, 0x4 - subs r5, 0x1 - cmp r5, 0 - bge _0808B8F4 - movs r0, 0x3 - bl sub_8084100 - ldrh r1, [r6, 0x4] - adds r1, r0 - subs r1, 0x1 - lsls r1, 16 - lsrs r1, 16 - ldr r2, _0808BA50 - ldr r0, [sp, 0x74] - ands r0, r2 - orrs r0, r1 - str r0, [sp, 0x74] - movs r0, 0x3 - bl sub_8084100 - ldrh r2, [r6, 0x6] - adds r2, r0 - subs r2, 0x1 - lsls r2, 16 - ldr r0, _0808BA54 - ldr r1, [sp, 0x74] - ands r1, r0 - orrs r1, r2 - str r1, [sp, 0x74] - movs r2, 0 - ldrsh r0, [r7, r2] - asrs r1, 16 - bl sub_8049590 - ldrh r1, [r0] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0808B970 - movs r0, 0xC8 - lsls r0, 1 - bl sub_8083E38 - adds r0, r7, 0 - bl sub_808BB3C - adds r0, r6, 0 - adds r1, r7, 0 - mov r2, r8 - movs r3, 0x4 - bl sub_8046860 -_0808B970: - mov r0, r10 - cmp r0, 0x4 - ble _0808B8EC - ldr r0, [r6, 0x70] - ldr r2, _0808BA34 - adds r1, r0, r2 - movs r0, 0 - strb r0, [r1] - ldr r0, _0808BA58 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 -_0808B98E: - mov r0, r9 - cmp r0, 0x5 - bne _0808B9F8 - ldr r0, _0808BA5C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_808BC70 - ldr r0, [r6, 0x70] - ldr r2, _0808BA34 - adds r1, r0, r2 - movs r0, 0 - strb r0, [r1] - ldr r0, _0808BA60 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8083600 - adds r1, r0, 0 - adds r1, 0x4 - adds r0, r6, 0x4 - bl sub_80983D8 - adds r1, r0, 0 - adds r0, r6, 0 - bl sub_8085918 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808BA64 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808BA68 - ldr r0, [r0] - ldr r1, _0808BA6C - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] -_0808B9F8: - ldr r0, _0808BA70 - bl sub_8052910 - adds r0, r6, 0 - bl sub_808BC20 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808BA74 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_808BD38 - add sp, 0x78 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808BA30: .4byte gUnknown_8105AD4 -_0808BA34: .4byte 0x0000015d -_0808BA38: .4byte gUnknown_8105B20 -_0808BA3C: .4byte gUnknown_202DF98 -_0808BA40: .4byte gUnknown_202DE58 -_0808BA44: .4byte gUnknown_8105B68 -_0808BA48: .4byte gUnknown_8105BA8 -_0808BA4C: .4byte gUnknown_81074FC -_0808BA50: .4byte 0xffff0000 -_0808BA54: .4byte 0x0000ffff -_0808BA58: .4byte gUnknown_8105BF4 -_0808BA5C: .4byte gUnknown_8105D2C -_0808BA60: .4byte gUnknown_8105D80 -_0808BA64: .4byte gUnknown_8105D9C -_0808BA68: .4byte gUnknown_203B418 -_0808BA6C: .4byte 0x00000674 -_0808BA70: .4byte gUnknown_81058E0 -_0808BA74: .4byte gUnknown_810593C - thumb_func_end sub_808B5B8 - - thumb_func_start sub_808BA78 -sub_808BA78: - push {lr} - ldr r0, _0808BA94 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808BA9C - bl sub_8086448 - ldr r0, _0808BA98 - bl sub_80866C4 - b _0808BAA0 - .align 2, 0 -_0808BA94: .4byte 0x0000019d -_0808BA98: .4byte gUnknown_8105E14 -_0808BA9C: - bl sub_808B45C -_0808BAA0: - pop {r0} - bx r0 - thumb_func_end sub_808BA78 - - thumb_func_start sub_808BAA4 -sub_808BAA4: - push {r4,r5,lr} - sub sp, 0x4 - ldr r0, _0808BB34 - bl sub_8083E38 - ldr r1, _0808BB38 - movs r0, 0x1F - str r0, [r1] - movs r4, 0xFA - movs r5, 0x1 -_0808BAB8: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _0808BAB8 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808BADE: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _0808BADE - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808BB04: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _0808BB04 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808BB34: .4byte 0x000002c1 -_0808BB38: .4byte gUnknown_202EDC8 - thumb_func_end sub_808BAA4 - - thumb_func_start sub_808BB3C -sub_808BB3C: - push {lr} - sub sp, 0x8 - adds r3, r0, 0 - movs r0, 0 - ldrsh r1, [r3, r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r1, 0xC0 - lsls r1, 4 - adds r0, r1 - cmp r0, 0 - bge _0808BB58 - adds r0, 0xFF -_0808BB58: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _0808BBA0 - ldr r2, [sp, 0x4] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x4] - movs r0, 0x2 - ldrsh r1, [r3, r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - movs r1, 0x80 - lsls r1, 5 - adds r0, r1 - cmp r0, 0 - bge _0808BB7C - adds r0, 0xFF -_0808BB7C: - lsls r0, 8 - lsrs r0, 16 - lsls r0, 16 - ldr r1, _0808BBA4 - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x4] - movs r0, 0 - str r0, [sp] - movs r0, 0x64 - movs r1, 0 - movs r2, 0 - add r3, sp, 0x4 - bl sub_8085EC8 - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_0808BBA0: .4byte 0xffff0000 -_0808BBA4: .4byte 0x0000ffff - thumb_func_end sub_808BB3C - - thumb_func_start sub_808BBA8 -sub_808BBA8: - push {lr} - ldr r0, [r0, 0x70] - movs r1, 0 - bl sub_806BFC0 - pop {r0} - bx r0 - thumb_func_end sub_808BBA8 - - thumb_func_start sub_808BBB8 -sub_808BBB8: - push {r4-r7,lr} - adds r5, r0, 0 - movs r0, 0x1B - adds r1, r5, 0 - movs r2, 0 - bl sub_80861F8 - adds r0, r5, 0 - bl sub_8086A54 - adds r0, r5, 0 - movs r1, 0xE - movs r2, 0 - bl sub_80861B8 - movs r4, 0xA0 - lsls r4, 8 - movs r6, 0x80 - lsls r6, 2 - movs r0, 0xFC - lsls r0, 1 - bl sub_8083E38 - ldr r7, _0808BBEC - b _0808BC00 - .align 2, 0 -_0808BBEC: .4byte 0x000017ff -_0808BBF0: - ldr r0, [r5, 0x70] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - str r4, [r0] - movs r0, 0x46 - bl sub_803E46C -_0808BC00: - subs r4, r6 - cmp r4, r7 - bgt _0808BC0A - movs r6, 0x80 - lsls r6, 1 -_0808BC0A: - cmp r4, 0 - bge _0808BBF0 - ldr r0, [r5, 0x70] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - movs r1, 0 - str r1, [r0] - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_808BBB8 - - thumb_func_start sub_808BC20 -sub_808BC20: - push {r4-r6,lr} - adds r5, r0, 0 - movs r0, 0xA6 - lsls r0, 2 - bl sub_8083E38 - movs r4, 0 - movs r6, 0x7 -_0808BC30: - adds r1, r4, 0 - ands r1, r6 - adds r0, r5, 0 - bl sub_8085918 - movs r0, 0x3 - movs r1, 0x46 - bl sub_803E708 - adds r4, 0x1 - cmp r4, 0x18 - ble _0808BC30 - ldr r0, [r5, 0x70] - movs r2, 0xAF - lsls r2, 1 - adds r1, r0, r2 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _0808BC6C - bl sub_8083E38 - movs r0, 0x63 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80861F8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808BC6C: .4byte 0x0000027f - thumb_func_end sub_808BC20 - - thumb_func_start sub_808BC70 -sub_808BC70: - push {r4,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x70] - ldr r2, _0808BCD4 - adds r1, r0, r2 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _0808BCD8 - bl sub_8052910 - ldr r0, _0808BCDC - bl sub_8083E38 - movs r0, 0x67 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_80861F8 - movs r0, 0xAA - lsls r0, 2 - bl sub_8083E38 - movs r0, 0x68 - adds r1, r4, 0 - movs r2, 0 - bl sub_80861F8 - adds r4, r0, 0 - ldr r0, _0808BCE0 - bl sub_8052910 - adds r0, r4, 0 - bl sub_800E9A8 - lsls r0, 24 - cmp r0, 0 - beq _0808BCC0 - adds r0, r4, 0 - bl sub_800DC14 -_0808BCC0: - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_808BAA4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808BCD4: .4byte 0x0000015d -_0808BCD8: .4byte gUnknown_81058A8 -_0808BCDC: .4byte 0x00000375 -_0808BCE0: .4byte gUnknown_81058C4 - thumb_func_end sub_808BC70 - - thumb_func_start sub_808BCE4 -sub_808BCE4: - push {lr} - ldr r0, _0808BD24 - ldr r1, [r0] - ldr r2, _0808BD28 - adds r0, r1, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - ldr r2, _0808BD2C - adds r1, r2 - movs r2, 0 - ldrsh r1, [r1, r2] - bl sub_8049590 - ldrh r2, [r0] - ldr r1, _0808BD30 - ands r1, r2 - movs r2, 0x10 - orrs r1, r2 - ldr r2, _0808BD34 - ands r1, r2 - strh r1, [r0] - bl sub_8049884 - bl sub_8049B8C - bl sub_8049ED4 - bl sub_8040A84 - pop {r0} - bx r0 - .align 2, 0 -_0808BD24: .4byte gUnknown_203B418 -_0808BD28: .4byte 0x0000e23c -_0808BD2C: .4byte 0x0000e23e -_0808BD30: .4byte 0x0000fffc -_0808BD34: .4byte 0x0000fdff - thumb_func_end sub_808BCE4 - - thumb_func_start sub_808BD38 -sub_808BD38: - push {r4,lr} - ldr r0, _0808BD84 - ldr r1, [r0] - ldr r2, _0808BD88 - adds r0, r1, r2 - movs r4, 0 - ldrsh r0, [r0, r4] - adds r2, 0x2 - adds r1, r2 - movs r4, 0 - ldrsh r1, [r1, r4] - bl sub_8049590 - ldrh r2, [r0] - ldr r1, _0808BD8C - ands r1, r2 - movs r3, 0x1 - orrs r1, r3 - ldr r2, _0808BD90 - ands r1, r2 - movs r4, 0x80 - lsls r4, 2 - adds r2, r4, 0 - orrs r1, r2 - strh r1, [r0] - strb r3, [r0, 0x8] - bl sub_8049884 - bl sub_8049B8C - bl sub_8049ED4 - bl sub_8040A84 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808BD84: .4byte gUnknown_203B418 -_0808BD88: .4byte 0x0000e23c -_0808BD8C: .4byte 0x0000fffc -_0808BD90: .4byte 0x0000ffef - thumb_func_end sub_808BD38 - - thumb_func_start sub_808BD94 -sub_808BD94: - push {r4,r5,lr} - sub sp, 0x3C - movs r5, 0 - movs r4, 0x1 -_0808BD9C: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8092534 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _0808BDC4 - cmp r0, 0x2 - beq _0808BDC4 - ldr r0, _0808BDDC - ldr r0, [r0] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _0808BDC4 - mov r1, sp - adds r0, r1, r5 - strb r4, [r0] - adds r5, 0x1 -_0808BDC4: - adds r4, 0x1 - cmp r4, 0x39 - ble _0808BD9C - cmp r5, 0 - beq _0808BDE0 - adds r0, r5, 0 - bl sub_8084100 - add r0, sp - ldrb r0, [r0] - b _0808BDE2 - .align 2, 0 -_0808BDDC: .4byte gUnknown_203B468 -_0808BDE0: - movs r0, 0x3A -_0808BDE2: - add sp, 0x3C - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_808BD94 - - thumb_func_start sub_808BDEC -sub_808BDEC: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x1B - bl sub_8085680 - adds r4, r0, 0 - bl sub_8083F14 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808BE34 - bl sub_80855E4 - movs r0, 0x89 - lsls r0, 1 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808BE38 - movs r0, 0x23 - bl sub_8083E88 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _0808BE48 - .align 2, 0 -_0808BE34: .4byte sub_8086A3C -_0808BE38: - ldr r0, _0808BE68 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x7] - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 -_0808BE48: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _0808BE6C - movs r1, 0x89 - lsls r1, 1 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808BE68: .4byte gUnknown_203B418 -_0808BE6C: .4byte gUnknown_202E038 - thumb_func_end sub_808BDEC - - thumb_func_start sub_808BE70 -sub_808BE70: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x33 - bne _0808BE8A - cmp r0, 0x1B - bne _0808BE8A - ldr r0, _0808BE90 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_0808BE8A: - pop {r0} - bx r0 - .align 2, 0 -_0808BE90: .4byte gUnknown_203B418 - thumb_func_end sub_808BE70 - - thumb_func_start sub_808BE94 -sub_808BE94: - push {r4-r6,lr} - sub sp, 0x4 - bl sub_8085480 - adds r6, r0, 0 - movs r0, 0x1B - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x89 - lsls r0, 1 - bl sub_808E734 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _0808BEC8 - bl sub_8086448 - ldr r0, _0808BEC4 - bl sub_80866C4 - b _0808BF7C - .align 2, 0 -_0808BEC4: .4byte gUnknown_8106068 -_0808BEC8: - bl sub_8083F14 - bl sub_8086448 - ldr r0, _0808BF84 - bl sub_8052910 - movs r0, 0x23 - movs r1, 0x3C - bl sub_8083EA8 - bl sub_808C0CC - ldr r0, _0808BF88 - bl sub_8052910 - bl sub_808BFA0 - ldr r0, _0808BF8C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808BF90 - bl sub_8052910 - movs r0, 0xFC - lsls r0, 1 - bl sub_8083E38 - adds r0, r4, 0 - movs r1, 0xD - movs r2, 0 - bl sub_80861D4 - movs r0, 0x2B - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - bl sub_80861B8 - ldr r0, _0808BF94 - bl sub_8052910 - bl sub_808BFA0 - ldr r0, _0808BF98 - bl sub_8052910 - bl sub_808C02C - movs r2, 0xFA - negs r2, r2 - str r5, [sp] - adds r0, r2, 0 - adds r1, r2, 0 - movs r3, 0x1 - bl sub_8085C54 - bl sub_8083F14 - adds r0, r4, 0 - movs r1, 0x7 - movs r2, 0 - bl sub_80861D4 - ldr r0, _0808BF9C - bl sub_8052910 - bl sub_808BFA0 - movs r1, 0xC8 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0x20 - bl sub_8086A70 - movs r0, 0x23 - bl sub_8083E88 - adds r0, r6, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_0808BF7C: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808BF84: .4byte gUnknown_8105E88 -_0808BF88: .4byte gUnknown_8105EF8 -_0808BF8C: .4byte gUnknown_8105F38 -_0808BF90: .4byte gUnknown_8105F74 -_0808BF94: .4byte gUnknown_8105FA0 -_0808BF98: .4byte gUnknown_8105FD8 -_0808BF9C: .4byte gUnknown_8106024 - thumb_func_end sub_808BE94 - - thumb_func_start sub_808BFA0 -sub_808BFA0: - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0xFB - lsls r0, 1 - bl sub_8083E38 - movs r4, 0xFA - movs r5, 0x1 -_0808BFB0: - str r5, [sp] - movs r0, 0 - movs r1, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _0808BFB0 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808BFD6: - str r5, [sp] - movs r0, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _0808BFD6 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808BFFC: - str r5, [sp] - movs r0, 0 - movs r1, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _0808BFFC - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808BFA0 - - thumb_func_start sub_808C02C -sub_808C02C: - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0xFB - lsls r0, 1 - bl sub_8083E38 - movs r4, 0 - movs r5, 0 -_0808C03C: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - adds r4, 0x64 - cmp r4, 0xC7 - ble _0808C03C - movs r4, 0xC8 - movs r5, 0 -_0808C05A: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x64 - cmp r4, 0 - bge _0808C05A - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - movs r4, 0 - movs r5, 0 -_0808C080: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - adds r4, 0x64 - cmp r4, 0xC7 - ble _0808C080 - movs r4, 0xC8 - movs r5, 0 -_0808C09E: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x64 - cmp r4, 0 - bge _0808C09E - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808C02C - - thumb_func_start sub_808C0CC -sub_808C0CC: - push {lr} - sub sp, 0x4 - ldr r1, _0808C104 - movs r0, 0x1F - str r0, [r1] - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - bl sub_803E9D0 - movs r0, 0x46 - bl sub_803E46C - ldr r0, _0808C108 - ldr r1, [r0] - movs r0, 0 - strb r0, [r1, 0x7] - bl sub_808BFA0 - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0808C104: .4byte gUnknown_202EDC8 -_0808C108: .4byte gUnknown_203B418 - thumb_func_end sub_808C0CC - - thumb_func_start sub_808C10C -sub_808C10C: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x1C - bl sub_8085680 - adds r4, r0, 0 - bl sub_8083F14 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - movs r0, 0xCD - lsls r0, 1 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808C146 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - b _0808C156 -_0808C146: - ldr r0, _0808C194 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x7] - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 -_0808C156: - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8085860 - bl sub_803F994 - adds r4, r0, 0 - bl sub_803F9B0 - adds r1, r0, 0 - ldr r0, _0808C198 - adds r1, r0 - adds r0, r4, 0 - bl sub_803F878 - ldr r4, _0808C19C - movs r1, 0xCD - lsls r1, 1 - adds r0, r4, 0 - bl sub_808D8BC - adds r4, 0x50 - ldr r1, _0808C1A0 - adds r0, r4, 0 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808C194: .4byte gUnknown_203B418 -_0808C198: .4byte 0xfffff000 -_0808C19C: .4byte gUnknown_202E038 -_0808C1A0: .4byte 0x0000019b - thumb_func_end sub_808C10C - - thumb_func_start sub_808C1A4 -sub_808C1A4: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x34 - bne _0808C1C4 - cmp r0, 0x1C - bne _0808C1C4 - ldr r0, _0808C1C8 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] - movs r0, 0x23 - bl sub_8083E88 -_0808C1C4: - pop {r0} - bx r0 - .align 2, 0 -_0808C1C8: .4byte gUnknown_203B418 - thumb_func_end sub_808C1A4 - - thumb_func_start sub_808C1CC -sub_808C1CC: - push {r4,r5,lr} - bl sub_8085480 - adds r4, r0, 0 - movs r0, 0x1C - bl sub_8085680 - adds r5, r0, 0 - bl sub_8083F14 - movs r0, 0xCD - lsls r0, 1 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808C224 - movs r0, 0x23 - movs r1, 0x3C - bl sub_8083EA8 - adds r0, r4, 0 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C21C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C220 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] - b _0808C2AE - .align 2, 0 -_0808C21C: .4byte gUnknown_81062A8 -_0808C220: .4byte gUnknown_203B418 -_0808C224: - ldr r0, _0808C2B4 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C2B8 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl nullsub_99 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C2BC - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x23 - movs r1, 0x3C - bl sub_8083EA8 - bl sub_808C360 - ldr r0, _0808C2C0 - bl sub_8052910 - bl sub_808C2D4 - ldr r0, _0808C2C4 - bl sub_8052910 - bl sub_808C2D4 - ldr r0, _0808C2C8 - bl sub_8052910 - bl sub_808C2D4 - ldr r0, _0808C2CC - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r1, 0x96 - lsls r1, 2 - adds r0, r5, 0 - movs r2, 0xB - bl sub_8086A70 - movs r0, 0x23 - bl sub_8083E88 - adds r0, r4, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_0808C2AE: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808C2B4: .4byte gUnknown_8106074 -_0808C2B8: .4byte gUnknown_81060BC -_0808C2BC: .4byte gUnknown_8106104 -_0808C2C0: .4byte gUnknown_8106140 -_0808C2C4: .4byte gUnknown_8106214 -_0808C2C8: .4byte gUnknown_8106244 -_0808C2CC: .4byte gUnknown_810627C - thumb_func_end sub_808C1CC - - thumb_func_start nullsub_99 -nullsub_99: - bx lr - thumb_func_end nullsub_99 - - thumb_func_start sub_808C2D4 -sub_808C2D4: - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0xFC - lsls r0, 1 - bl sub_8083E38 - movs r4, 0xFA - movs r5, 0x1 -_0808C2E4: - str r5, [sp] - movs r0, 0 - movs r1, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _0808C2E4 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808C30A: - str r5, [sp] - movs r0, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _0808C30A - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808C330: - str r5, [sp] - movs r0, 0 - movs r1, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _0808C330 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808C2D4 - - thumb_func_start sub_808C360 -sub_808C360: - push {lr} - sub sp, 0x4 - ldr r1, _0808C398 - movs r0, 0x1F - str r0, [r1] - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - bl sub_803E9D0 - movs r0, 0x46 - bl sub_803E46C - ldr r0, _0808C39C - ldr r1, [r0] - movs r0, 0 - strb r0, [r1, 0x7] - bl sub_808C2D4 - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0808C398: .4byte gUnknown_202EDC8 -_0808C39C: .4byte gUnknown_203B418 - thumb_func_end sub_808C360 - - thumb_func_start sub_808C3A0 -sub_808C3A0: - push {r4,lr} - bl sub_8085480 - adds r4, r0, 0 - bl sub_8083F14 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808C3D4 - bl sub_80855E4 - movs r0, 0xCF - lsls r0, 1 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808C3DC - ldr r0, _0808C3D8 - bl sub_808563C - b _0808C3EA - .align 2, 0 -_0808C3D4: .4byte sub_8086A3C -_0808C3D8: .4byte sub_808C590 -_0808C3DC: - ldr r0, _0808C408 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x7] - ldr r0, _0808C40C - bl sub_808563C -_0808C3EA: - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x6 - ldrsh r1, [r4, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _0808C410 - movs r1, 0xCF - lsls r1, 1 - bl sub_808D8BC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808C408: .4byte gUnknown_203B418 -_0808C40C: .4byte sub_808C5A0 -_0808C410: .4byte gUnknown_202E038 - thumb_func_end sub_808C3A0 - - thumb_func_start sub_808C414 -sub_808C414: - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x35 - bne _0808C434 - cmp r0, 0x1D - bne _0808C434 - ldr r0, _0808C438 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] - movs r0, 0x1A - bl sub_8083E88 -_0808C434: - pop {r0} - bx r0 - .align 2, 0 -_0808C438: .4byte gUnknown_203B418 - thumb_func_end sub_808C414 - - thumb_func_start sub_808C43C -sub_808C43C: - push {r4,lr} - bl sub_8085480 - adds r4, r0, 0 - bl sub_8086448 - movs r0, 0xCF - lsls r0, 1 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - beq _0808C464 - ldr r0, _0808C460 - bl sub_80866C4 - b _0808C4A8 - .align 2, 0 -_0808C460: .4byte gUnknown_81063C4 -_0808C464: - ldr r0, _0808C4B0 - bl sub_8052910 - movs r0, 0x1A - movs r1, 0x3C - bl sub_8083EA8 - bl sub_808C550 - ldr r0, _0808C4B4 - bl sub_8052910 - bl sub_808C4C4 - ldr r0, _0808C4B8 - bl sub_8052910 - bl sub_808C4C4 - ldr r0, _0808C4BC - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C4C0 - bl sub_808563C - adds r0, r4, 0 - adds r0, 0xC - movs r1, 0x10 - bl sub_80858AC -_0808C4A8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808C4B0: .4byte gUnknown_81062B4 -_0808C4B4: .4byte gUnknown_81062E8 -_0808C4B8: .4byte gUnknown_8106368 -_0808C4BC: .4byte gUnknown_8106390 -_0808C4C0: .4byte sub_808C5AC - thumb_func_end sub_808C43C - - thumb_func_start sub_808C4C4 -sub_808C4C4: - push {r4,r5,lr} - sub sp, 0x4 - ldr r0, _0808C54C - bl sub_8083E38 - movs r4, 0xFA - movs r5, 0x1 -_0808C4D2: - str r5, [sp] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0x95 - bgt _0808C4D2 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808C4F8: - str r5, [sp] - adds r0, r4, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0xC7 - bgt _0808C4F8 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r4, 0xFA - movs r5, 0x1 -_0808C51E: - str r5, [sp] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - movs r0, 0x46 - bl sub_803E46C - subs r4, 0xA - cmp r4, 0 - bge _0808C51E - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8085EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808C54C: .4byte 0x000002c1 - thumb_func_end sub_808C4C4 - - thumb_func_start sub_808C550 -sub_808C550: - push {lr} - sub sp, 0x4 - ldr r1, _0808C588 - movs r0, 0x1F - str r0, [r1] - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8085C54 - bl sub_803E9D0 - movs r0, 0x46 - bl sub_803E46C - ldr r0, _0808C58C - ldr r1, [r0] - movs r0, 0 - strb r0, [r1, 0x7] - bl sub_808C4C4 - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0808C588: .4byte gUnknown_202EDC8 -_0808C58C: .4byte gUnknown_203B418 - thumb_func_end sub_808C550 - - thumb_func_start sub_808C590 -sub_808C590: - push {lr} - movs r1, 0x87 - lsls r1, 2 - movs r2, 0 - bl sub_8068FE0 - pop {r0} - bx r0 - thumb_func_end sub_808C590 - - thumb_func_start sub_808C5A0 -sub_808C5A0: - push {lr} - movs r1, 0 - bl sub_8085918 - pop {r0} - bx r0 - thumb_func_end sub_808C5A0 - - thumb_func_start sub_808C5AC -sub_808C5AC: - push {lr} - ldr r1, _0808C5BC - movs r2, 0x20 - bl sub_8086A70 - pop {r0} - bx r0 - .align 2, 0 -_0808C5BC: .4byte 0x000003b6 - thumb_func_end sub_808C5AC - - thumb_func_start sub_808C5C0 -sub_808C5C0: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x1E - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x7F - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8085860 - bl sub_803F994 - adds r4, r0, 0 - bl sub_803F9B0 - adds r1, r0, 0 - ldr r0, _0808C61C - adds r1, r0 - adds r0, r4, 0 - bl sub_803F878 - ldr r0, _0808C620 - movs r1, 0x8A - lsls r1, 1 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808C61C: .4byte 0xfffff000 -_0808C620: .4byte gUnknown_202E038 - thumb_func_end sub_808C5C0 - - thumb_func_start nullsub_100 -nullsub_100: - bx lr - thumb_func_end nullsub_100 - - thumb_func_start sub_808C628 -sub_808C628: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - bl sub_8085480 - adds r7, r0, 0 - movs r0, 0x1E - bl sub_8085680 - str r0, [sp] - movs r0, 0x8A - lsls r0, 1 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - bne _0808C658 - ldr r0, [sp] - bl sub_806FD18 - lsls r0, 24 - cmp r0, 0 - bne _0808C680 -_0808C658: - movs r1, 0x87 - lsls r1, 2 - ldr r0, [sp] - movs r2, 0 - bl sub_8068FE0 - adds r0, r7, 0 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C67C - bl sub_8052910 - b _0808C8AC - .align 2, 0 -_0808C67C: .4byte gUnknown_810663C -_0808C680: - adds r0, r7, 0 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r7, 0 - bl sub_80862BC - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C71C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8086598 - bl sub_8086598 - bl sub_8086598 - bl sub_8086598 - ldr r0, _0808C720 - bl sub_8052910 - ldr r4, _0808C724 - adds r0, r4, 0 - bl sub_8083E38 - ldr r0, [sp] - movs r1, 0xA - movs r2, 0 - bl sub_806CDD4 - movs r0, 0x14 - movs r1, 0x46 - bl sub_803E708 - ldr r0, [sp] - movs r1, 0 - bl sub_806CE68 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_8083E38 - ldr r0, [sp] - movs r1, 0xA - movs r2, 0 - bl sub_806CDD4 - ldr r0, _0808C728 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0 - mov r8, r4 - ldr r6, _0808C72C -_0808C70E: - cmp r0, 0 - beq _0808C730 - cmp r0, 0x1 - bne _0808C718 - b _0808C828 -_0808C718: - b _0808C8A6 - .align 2, 0 -_0808C71C: .4byte gUnknown_81063D0 -_0808C720: .4byte gUnknown_8106400 -_0808C724: .4byte 0x000001c7 -_0808C728: .4byte gUnknown_810643C -_0808C72C: .4byte 0x000001d5 -_0808C730: - ldr r5, _0808C75C -_0808C732: - movs r0, 0 - ldr r1, [r5] - ldr r2, _0808C760 - ldr r3, _0808C764 - bl sub_8052C68 - adds r4, r0, 0 - cmp r4, 0 - ble _0808C732 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - cmp r4, 0x1 - bne _0808C824 - bl sub_8083F14 - movs r0, 0xCC - bl sub_8083E38 - b _0808C76E - .align 2, 0 -_0808C75C: .4byte gUnknown_81065A8 -_0808C760: .4byte gUnknown_81065AC -_0808C764: .4byte 0x00000701 -_0808C768: - movs r0, 0x46 - bl sub_803E46C -_0808C76E: - movs r0, 0xCC - bl sub_8083E74 - lsls r0, 24 - cmp r0, 0 - bne _0808C768 - movs r0, 0x7F - bl sub_8083E88 - mov r0, r8 - bl sub_8083E38 - ldr r0, [sp] - movs r1, 0xD - movs r2, 0 - bl sub_80861D4 - movs r0, 0x37 - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_8083E38 - movs r0, 0x1A - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_8083E38 - movs r0, 0x1C - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C818 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r1, [sp] - adds r0, r7, 0 - mov r2, sp - bl sub_806FDF4 - movs r0, 0x7F - bl sub_8083E88 - ldr r0, _0808C81C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - mov r0, r8 - bl sub_8083E38 - ldr r0, [sp] - movs r1, 0xD - movs r2, 0 - bl sub_80861D4 - movs r0, 0x37 - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_8083E38 - movs r0, 0x1A - movs r1, 0x46 - bl sub_803E708 - adds r0, r6, 0 - bl sub_8083E38 - movs r0, 0x1B - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C820 - b _0808C898 - .align 2, 0 -_0808C818: .4byte gUnknown_8106468 -_0808C81C: .4byte gUnknown_810648C -_0808C820: .4byte gUnknown_81064BC -_0808C824: - movs r0, 0x1 - b _0808C8A6 -_0808C828: - ldr r5, _0808C844 -_0808C82A: - movs r0, 0 - ldr r1, [r5] - ldr r2, _0808C848 - ldr r3, _0808C84C - bl sub_8052C68 - adds r4, r0, 0 - cmp r4, 0 - ble _0808C82A - cmp r4, 0x1 - bne _0808C850 - movs r0, 0 - b _0808C8A6 - .align 2, 0 -_0808C844: .4byte gUnknown_810660C -_0808C848: .4byte gUnknown_8106610 -_0808C84C: .4byte 0x00000701 -_0808C850: - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C8D0 - bl sub_8052910 - ldr r1, [sp] - movs r0, 0x3E - movs r2, 0x1 - bl sub_80861F8 - movs r0, 0x18 - movs r1, 0x46 - bl sub_803E708 - ldr r1, [sp] - movs r0, 0x3E - movs r2, 0x1 - bl sub_80861F8 - movs r0, 0xE - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C8D4 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, [sp] - bl sub_808C8E0 - ldr r0, _0808C8D8 -_0808C898: - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - movs r0, 0x2 -_0808C8A6: - cmp r0, 0x2 - beq _0808C8AC - b _0808C70E -_0808C8AC: - movs r0, 0x1E - bl sub_8083ED8 - movs r0, 0x1E - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808C8DC - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808C8D0: .4byte gUnknown_8106500 -_0808C8D4: .4byte gUnknown_8106534 -_0808C8D8: .4byte gUnknown_8106560 -_0808C8DC: .4byte gUnknown_203B418 - thumb_func_end sub_808C628 - - thumb_func_start sub_808C8E0 -sub_808C8E0: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, _0808C934 - bl sub_8083E38 - adds r0, r5, 0 - movs r1, 0 - movs r2, 0 - bl sub_806CDD4 - movs r4, 0 -_0808C8F6: - ldr r0, [r5, 0x70] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - lsls r1, r4, 8 - str r1, [r0] - movs r0, 0x46 - bl sub_803E46C - adds r4, 0x1 - cmp r4, 0xF - ble _0808C8F6 - movs r4, 0x10 -_0808C910: - ldr r0, [r5, 0x70] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - lsls r1, r4, 8 - str r1, [r0] - movs r0, 0x46 - bl sub_803E46C - adds r4, 0x4 - cmp r4, 0xC7 - ble _0808C910 - adds r0, r5, 0 - bl sub_8086A3C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808C934: .4byte 0x000001a5 - thumb_func_end sub_808C8E0 - - thumb_func_start sub_808C938 -sub_808C938: - push {lr} - ldr r0, _0808C944 - bl sub_80855E4 - pop {r0} - bx r0 - .align 2, 0 -_0808C944: .4byte sub_808C9B0 - thumb_func_end sub_808C938 - - thumb_func_start sub_808C948 -sub_808C948: - push {r4-r6,lr} - adds r6, r0, 0 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x37 - bne _0808C98A - movs r5, 0 - movs r4, 0 - b _0808C95C -_0808C95A: - adds r4, 0x1 -_0808C95C: - cmp r4, 0xF - bgt _0808C97E - ldr r0, _0808C990 - ldr r0, [r0] - lsls r1, r4, 2 - ldr r2, _0808C994 - adds r0, r2 - adds r0, r1 - ldr r0, [r0] - cmp r0, r6 - beq _0808C95A - bl sub_80450E0 - lsls r0, 24 - cmp r0, 0 - beq _0808C95A - movs r5, 0x1 -_0808C97E: - cmp r5, 0 - bne _0808C98A - ldr r0, _0808C990 - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0x2] -_0808C98A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808C990: .4byte gUnknown_203B418 -_0808C994: .4byte 0x0001358c - thumb_func_end sub_808C948 - - thumb_func_start sub_808C998 -sub_808C998: - push {lr} - ldr r0, _0808C9AC - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - pop {r0} - bx r0 - .align 2, 0 -_0808C9AC: .4byte gUnknown_8106720 - thumb_func_end sub_808C998 - - thumb_func_start sub_808C9B0 -sub_808C9B0: - push {lr} - ldr r1, [r0, 0x70] - adds r1, 0x46 - movs r2, 0x4 - strb r2, [r1] - movs r1, 0x4 - bl sub_806CE68 - pop {r0} - bx r0 - thumb_func_end sub_808C9B0 - - thumb_func_start sub_808C9C4 -sub_808C9C4: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x7 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808CA10 - bl sub_80855E4 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _0808CA14 - ldr r1, _0808CA18 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808CA10: .4byte sub_8086A3C -_0808CA14: .4byte gUnknown_202E038 -_0808CA18: .4byte 0x0000014d - thumb_func_end sub_808C9C4 - - thumb_func_start sub_808CA1C -sub_808CA1C: - push {r4,r5,lr} - movs r0, 0x7 - bl sub_8085680 - adds r5, r0, 0 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808CB44 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x4 - bl sub_80869E4 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808CB48 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8086448 - bl sub_8086598 - movs r0, 0x20 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_80862BC - movs r0, 0x20 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0 - bl sub_80869E4 - ldr r0, _0808CB4C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r4, _0808CB50 - adds r0, r4, 0 - bl sub_8083E38 - adds r0, r5, 0 - movs r1, 0xA - movs r2, 0 - bl sub_806CDD4 - movs r0, 0x14 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0 - bl sub_806CE68 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_8083E38 - adds r0, r5, 0 - movs r1, 0xA - movs r2, 0 - bl sub_806CDD4 - movs r0, 0x14 - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808CB54 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0 - movs r2, 0 - bl sub_806CDD4 - movs r4, 0x17 -_0808CAF6: - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x80 - lsls r2, 1 - bl sub_804539C - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _0808CAF6 - adds r0, r5, 0 - movs r1, 0 - bl sub_806CE68 - movs r0, 0x20 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_8042B0C - movs r1, 0x87 - lsls r1, 2 - adds r0, r5, 0 - movs r2, 0 - bl sub_8068FE0 - ldr r2, _0808CB58 - ldr r1, [r2] - movs r0, 0x1 - strb r0, [r1, 0x4] - ldr r1, [r2] - movs r0, 0x4 - strb r0, [r1, 0x11] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808CB44: .4byte gUnknown_8106778 -_0808CB48: .4byte gUnknown_81067BC -_0808CB4C: .4byte gUnknown_81067E0 -_0808CB50: .4byte 0x000001c7 -_0808CB54: .4byte gUnknown_8106834 -_0808CB58: .4byte gUnknown_203B418 - thumb_func_end sub_808CA1C - - thumb_func_start sub_808CB5C -sub_808CB5C: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x7 - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl sub_8085860 - ldr r0, _0808CBA4 - ldr r1, _0808CBA8 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808CBA4: .4byte gUnknown_202E038 -_0808CBA8: .4byte 0x0000014d - thumb_func_end sub_808CB5C - - thumb_func_start nullsub_101 -nullsub_101: - bx lr - thumb_func_end nullsub_101 - - thumb_func_start sub_808CBB0 -sub_808CBB0: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x1F - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808CBFC - bl sub_80855E4 - adds r0, r4, 0 - movs r1, 0 - bl sub_8085918 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _0808CC00 - movs r1, 0x82 - lsls r1, 1 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808CBFC: .4byte sub_8086A3C -_0808CC00: .4byte gUnknown_202E038 - thumb_func_end sub_808CBB0 - - thumb_func_start sub_808CC04 -sub_808CC04: - push {r4,r5,lr} - movs r0, 0x1F - bl sub_8085680 - adds r5, r0, 0 - bl sub_808696C - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808CD2C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0x4 - bl sub_80869E4 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808CD30 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - bl sub_8086448 - bl sub_8086598 - movs r0, 0x20 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_80862BC - movs r0, 0x20 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x2 - movs r3, 0 - bl sub_80869E4 - ldr r0, _0808CD34 - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - ldr r4, _0808CD38 - adds r0, r4, 0 - bl sub_8083E38 - adds r0, r5, 0 - movs r1, 0xA - movs r2, 0 - bl sub_806CDD4 - movs r0, 0x14 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0 - bl sub_806CE68 - movs r0, 0x4 - movs r1, 0x46 - bl sub_803E708 - adds r0, r4, 0 - bl sub_8083E38 - adds r0, r5, 0 - movs r1, 0xA - movs r2, 0 - bl sub_806CDD4 - movs r0, 0x14 - movs r1, 0x46 - bl sub_803E708 - ldr r0, _0808CD3C - bl sub_8052910 - movs r0, 0xA - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - movs r1, 0 - movs r2, 0 - bl sub_806CDD4 - movs r4, 0x17 -_0808CCDE: - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x80 - lsls r2, 1 - bl sub_804539C - movs r0, 0x46 - bl sub_803E46C - subs r4, 0x1 - cmp r4, 0 - bge _0808CCDE - adds r0, r5, 0 - movs r1, 0 - bl sub_806CE68 - movs r0, 0x20 - movs r1, 0x46 - bl sub_803E708 - adds r0, r5, 0 - bl sub_8042B0C - movs r1, 0x87 - lsls r1, 2 - adds r0, r5, 0 - movs r2, 0 - bl sub_8068FE0 - ldr r2, _0808CD40 - ldr r1, [r2] - movs r0, 0x1 - strb r0, [r1, 0x4] - ldr r1, [r2] - movs r0, 0x4 - strb r0, [r1, 0x11] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808CD2C: .4byte gUnknown_810688C -_0808CD30: .4byte gUnknown_81068D0 -_0808CD34: .4byte gUnknown_8106918 -_0808CD38: .4byte 0x000001c7 -_0808CD3C: .4byte gUnknown_8106934 -_0808CD40: .4byte gUnknown_203B418 - thumb_func_end sub_808CC04 - - thumb_func_start sub_808CD44 -sub_808CD44: - push {r4,r5,lr} - bl sub_8085480 - adds r5, r0, 0 - movs r0, 0x1F - bl sub_8085680 - adds r4, r0, 0 - movs r0, 0x72 - bl sub_8083E88 - bl sub_80854D4 - movs r0, 0x4 - bl sub_8085930 - ldr r0, _0808CD94 - bl sub_80855E4 - movs r1, 0x87 - lsls r1, 2 - adds r0, r4, 0 - movs r2, 0 - bl sub_8068FE0 - movs r1, 0x4 - ldrsh r0, [r5, r1] - movs r2, 0x6 - ldrsh r1, [r5, r2] - subs r1, 0x3 - bl sub_8085860 - ldr r0, _0808CD98 - movs r1, 0x82 - lsls r1, 1 - bl sub_808D8BC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808CD94: .4byte sub_8086A3C -_0808CD98: .4byte gUnknown_202E038 - thumb_func_end sub_808CD44 - - thumb_func_start sub_808CD9C -sub_808CD9C: - push {lr} - bl sub_8086448 - ldr r0, _0808CDAC - bl sub_80866C4 - pop {r0} - bx r0 - .align 2, 0 -_0808CDAC: .4byte gUnknown_810697C - thumb_func_end sub_808CD9C - - thumb_func_start sub_808CDB0 -sub_808CDB0: - lsls r0, 24 - lsrs r0, 21 - ldr r1, _0808CDBC - adds r0, r1 - bx lr - .align 2, 0 -_0808CDBC: .4byte gUnknown_8107544 - thumb_func_end sub_808CDB0 - - thumb_func_start LoadMonsterParameters -LoadMonsterParameters: - push {lr} - ldr r1, _0808CDE4 - ldr r0, _0808CDE8 - str r0, [r1] - ldr r0, _0808CDEC - ldr r1, _0808CDF0 - bl OpenFileAndGetFileDataPtr - ldr r1, _0808CDF4 - str r0, [r1] - ldr r1, _0808CDF8 - ldr r0, [r0, 0x4] - str r0, [r1] - ldr r1, _0808CDFC - movs r0, 0 - strh r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_0808CDE4: .4byte gUnknown_203B45C -_0808CDE8: .4byte gUnknown_202F400 -_0808CDEC: .4byte gUnknown_81075F4 -_0808CDF0: .4byte gUnknown_8300500 -_0808CDF4: .4byte gUnknown_202F3E4 -_0808CDF8: .4byte gUnknown_202F3E0 -_0808CDFC: .4byte gUnknown_20384E8 - thumb_func_end LoadMonsterParameters - - thumb_func_start sub_808CE00 -sub_808CE00: - ldr r0, _0808CE04 - bx lr - .align 2, 0 -_0808CE04: .4byte gUnknown_202F400 - thumb_func_end sub_808CE00 - - thumb_func_start sub_808CE08 -sub_808CE08: - push {r4-r7,lr} - ldr r4, _0808CE60 - movs r3, 0 - movs r1, 0 - ldr r2, _0808CE64 -_0808CE12: - ldr r0, [r4] - adds r0, r1 - strh r3, [r0] - adds r1, 0x58 - subs r2, 0x1 - cmp r2, 0 - bne _0808CE12 - ldr r5, _0808CE60 - ldr r4, _0808CE68 - movs r3, 0 - movs r1, 0 - movs r2, 0x3 -_0808CE2A: - ldr r0, [r5] - adds r0, r1 - adds r0, r4 - strh r3, [r0] - adds r1, 0x64 - subs r2, 0x1 - cmp r2, 0 - bge _0808CE2A - ldr r7, _0808CE60 - ldr r6, _0808CE6C - movs r4, 0 - movs r3, 0 - ldr r5, _0808CE70 - movs r2, 0x3 -_0808CE46: - ldr r0, [r7] - adds r0, r3 - adds r1, r0, r6 - strh r4, [r1] - adds r0, r5 - strh r4, [r0] - adds r3, 0x58 - subs r2, 0x1 - cmp r2, 0 - bge _0808CE46 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808CE60: .4byte gUnknown_203B45C -_0808CE64: .4byte 0x0000019d -_0808CE68: .4byte 0x00008df8 -_0808CE6C: .4byte 0x00008f90 -_0808CE70: .4byte 0x00008f88 - thumb_func_end sub_808CE08 - - thumb_func_start sub_808CE74 -sub_808CE74: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x6C - mov r8, r2 - lsls r0, 16 - asrs r7, r0, 16 - lsls r1, 24 - mov r2, sp - movs r0, 0x3 - strh r0, [r2] - cmp r1, 0 - beq _0808CE9C - mov r1, sp - movs r0, 0x1 - strb r0, [r1, 0x2] - movs r0, 0x40 - b _0808CEA4 -_0808CE9C: - mov r1, sp - movs r0, 0 - strb r0, [r1, 0x2] - movs r0, 0x41 -_0808CEA4: - strb r0, [r1, 0x4] - mov r0, sp - movs r6, 0 - movs r5, 0x1 - strb r5, [r0, 0x3] - adds r0, r7, 0 - bl sub_808DBC0 - mov r1, sp - movs r4, 0 - strh r0, [r1, 0x16] - adds r0, r7, 0 - movs r1, 0 - bl sub_808DC28 - mov r1, sp - strb r0, [r1, 0x18] - adds r0, r7, 0 - movs r1, 0x1 - bl sub_808DC28 - mov r1, sp - strb r0, [r1, 0x19] - adds r0, r7, 0 - movs r1, 0 - bl sub_808DC48 - mov r1, sp - strb r0, [r1, 0x1A] - adds r0, r7, 0 - movs r1, 0x1 - bl sub_808DC48 - mov r1, sp - strb r0, [r1, 0x1B] - mov r0, sp - strh r5, [r0, 0x14] - strb r4, [r0, 0xC] - strb r4, [r0, 0x10] - add r0, sp, 0x20 - movs r1, 0 - bl sub_808EC94 - mov r0, sp - strh r7, [r0, 0x8] - add r0, sp, 0x28 - strb r4, [r0] - adds r0, 0x1 - strb r4, [r0] - str r6, [sp, 0x1C] - add r0, sp, 0x24 - strb r4, [r0] - mov r0, sp - strb r4, [r0, 0x5] - add r0, sp, 0x2C - adds r1, r7, 0 - bl sub_808E490 - mov r0, r8 - cmp r0, 0 - bne _0808CF5C - add r4, sp, 0x58 - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_808D8BC - add r0, sp, 0x4C - adds r1, r4, 0 - movs r2, 0xA - bl sub_8092310 - lsls r4, r7, 3 - b _0808CF72 -_0808CF36: - mov r1, r8 - ldr r0, [r1] - adds r0, r6 - mov r1, sp - movs r2, 0x58 - bl memcpy - ldr r0, _0808CF58 - ldr r0, [r0] - adds r0, r4 - mov r5, r9 - strb r5, [r0] - adds r0, r7, 0 - bl sub_80980B4 - b _0808CFB8 - .align 2, 0 -_0808CF58: .4byte gUnknown_203B468 -_0808CF5C: - movs r2, 0 - lsls r4, r7, 3 - add r3, sp, 0x4C -_0808CF62: - adds r0, r3, r2 - mov r5, r8 - adds r1, r5, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x9 - ble _0808CF62 -_0808CF72: - ldr r0, _0808CFC8 - ldr r1, [r0] - adds r0, r4, r7 - lsls r0, 3 - adds r0, r1 - ldrb r0, [r0, 0x16] - mov r10, r0 - movs r5, 0 - ldr r0, _0808CFCC - mov r8, r0 - movs r1, 0x1 - mov r9, r1 -_0808CF8A: - movs r0, 0x58 - adds r6, r5, 0 - muls r6, r0 - mov r1, r8 - ldr r0, [r1] - adds r0, r6, r0 - ldrb r1, [r0] - mov r0, r9 - ands r0, r1 - cmp r0, 0 - bne _0808CFAE - adds r0, r5, 0 - bl sub_80923D4 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, r10 - beq _0808CF36 -_0808CFAE: - adds r5, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r5, r0 - ble _0808CF8A -_0808CFB8: - add sp, 0x6C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808CFC8: .4byte gUnknown_202F3E0 -_0808CFCC: .4byte gUnknown_203B45C - thumb_func_end sub_808CE74 - - thumb_func_start sub_808CFD0 -sub_808CFD0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - adds r7, r0, 0 - mov r10, r2 - adds r4, r3, 0 - lsls r1, 16 - asrs r1, 16 - mov r9, r1 - lsls r4, 24 - lsrs r4, 24 - movs r5, 0 - movs r0, 0 - mov r8, r0 - movs r0, 0x1 - movs r6, 0x1 - strh r6, [r7] - strb r5, [r7, 0x2] - strb r0, [r7, 0x3] - mov r0, r9 - bl sub_808DBC0 - strh r0, [r7, 0x16] - mov r0, r9 - movs r1, 0 - bl sub_808DC28 - strb r0, [r7, 0x18] - mov r0, r9 - movs r1, 0x1 - bl sub_808DC28 - strb r0, [r7, 0x19] - mov r0, r9 - movs r1, 0 - bl sub_808DC48 - strb r0, [r7, 0x1A] - mov r0, r9 - movs r1, 0x1 - bl sub_808DC48 - strb r0, [r7, 0x1B] - mov r1, r9 - strh r1, [r7, 0x8] - adds r0, r7, 0 - adds r0, 0x28 - adds r1, r4, 0 - bl sub_8090B08 - mov r4, r8 - str r4, [r7, 0x1C] - adds r0, r7, 0 - adds r0, 0x24 - strb r5, [r0] - strh r6, [r7, 0x14] - ldr r1, [sp, 0x34] - ldr r0, [r1] - str r0, [r7, 0x4] - strb r5, [r7, 0xC] - strb r5, [r7, 0x10] - adds r0, r7, 0 - adds r0, 0x20 - movs r1, 0 - bl sub_808EC94 - ldr r4, [sp, 0x38] - cmp r4, 0 - beq _0808D08C - movs r0, 0x4C - adds r0, r7 - mov r8, r0 - adds r5, r4, 0 - adds r4, r7, 0 - adds r4, 0x2C - movs r6, 0x3 -_0808D06E: - ldrh r0, [r5] - cmp r0, 0 - beq _0808D07E - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_8092AD4 - b _0808D080 -_0808D07E: - strb r0, [r4] -_0808D080: - adds r5, 0x2 - adds r4, 0x8 - subs r6, 0x1 - cmp r6, 0 - bge _0808D06E - b _0808D09A -_0808D08C: - adds r0, r7, 0 - adds r0, 0x2C - mov r1, r9 - bl sub_808E490 - adds r7, 0x4C - mov r8, r7 -_0808D09A: - mov r1, r10 - cmp r1, 0 - bne _0808D0B4 - mov r0, sp - mov r1, r9 - bl sub_808D8BC - mov r0, r8 - mov r1, sp - movs r2, 0xA - bl sub_8092310 - b _0808D0C8 -_0808D0B4: - movs r2, 0 - mov r3, r8 -_0808D0B8: - adds r0, r3, r2 - mov r4, r10 - adds r1, r4, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x9 - ble _0808D0B8 -_0808D0C8: - 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_808CFD0 - - thumb_func_start sub_808D0D8 -sub_808D0D8: - push {r4-r7,lr} - adds r7, r0, 0 - movs r6, 0 - movs r4, 0x1 - strb r4, [r7, 0x3] - movs r1, 0x8 - ldrsh r0, [r7, r1] - bl sub_808DBC0 - movs r5, 0 - strh r0, [r7, 0x16] - movs r2, 0x8 - ldrsh r0, [r7, r2] - movs r1, 0 - bl sub_808DC28 - strb r0, [r7, 0x18] - movs r1, 0x8 - ldrsh r0, [r7, r1] - movs r1, 0x1 - bl sub_808DC28 - strb r0, [r7, 0x19] - movs r2, 0x8 - ldrsh r0, [r7, r2] - movs r1, 0 - bl sub_808DC48 - strb r0, [r7, 0x1A] - movs r1, 0x8 - ldrsh r0, [r7, r1] - movs r1, 0x1 - bl sub_808DC48 - strb r0, [r7, 0x1B] - str r6, [r7, 0x1C] - adds r0, r7, 0 - adds r0, 0x24 - strb r5, [r0] - strh r4, [r7, 0x14] - subs r0, 0x4 - movs r1, 0 - bl sub_808EC94 - adds r0, r7, 0 - adds r0, 0x2C - movs r2, 0x8 - ldrsh r1, [r7, r2] - bl sub_808E490 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_808D0D8 - - thumb_func_start sub_808D144 -sub_808D144: - push {r4-r7,lr} - adds r5, r0, 0 - adds r7, r1, 0 - movs r4, 0 - movs r0, 0x1 - strh r0, [r5] - strb r4, [r5, 0x2] - ldrh r0, [r7, 0x16] - strb r0, [r5, 0x3] - ldrh r0, [r7, 0x14] - strh r0, [r5, 0x16] - ldrh r0, [r7, 0x1A] - strb r0, [r5, 0x18] - ldrh r0, [r7, 0x1C] - strb r0, [r5, 0x19] - ldrh r0, [r7, 0x1E] - strb r0, [r5, 0x1A] - ldrh r0, [r7, 0x20] - strb r0, [r5, 0x1B] - ldrh r0, [r7, 0x4] - strh r0, [r5, 0x8] - adds r0, r5, 0 - adds r0, 0x28 - ldrb r1, [r7, 0x6] - bl sub_8090B08 - ldr r0, [r7, 0x24] - str r0, [r5, 0x1C] - adds r0, r5, 0 - adds r0, 0x24 - strb r4, [r0] - ldrh r0, [r7, 0x18] - strh r0, [r5, 0x14] - ldr r0, [r7, 0x8] - str r0, [r5, 0x4] - strb r4, [r5, 0xC] - strb r4, [r5, 0x10] - adds r0, r5, 0 - adds r0, 0x20 - movs r1, 0 - bl sub_808EC94 - movs r6, 0 - adds r4, r5, 0 - adds r4, 0x2C -_0808D19E: - lsls r1, r6, 1 - adds r0, r7, 0 - adds r0, 0xC - adds r0, r1 - ldrh r1, [r0] - cmp r1, 0 - beq _0808D1B4 - adds r0, r4, 0 - bl sub_8092AD4 - b _0808D1B6 -_0808D1B4: - strb r1, [r4] -_0808D1B6: - adds r4, 0x8 - adds r6, 0x1 - cmp r6, 0x3 - ble _0808D19E - movs r6, 0 - adds r3, r5, 0 - adds r3, 0x4C - ldr r2, [r7] -_0808D1C6: - adds r0, r3, r6 - adds r1, r2, r6 - ldrb r1, [r1] - strb r1, [r0] - adds r6, 0x1 - cmp r6, 0x9 - ble _0808D1C6 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_808D144 - - thumb_func_start sub_808D1DC -sub_808D1DC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - movs r2, 0x8 - ldrsh r1, [r0, r2] - ldr r0, _0808D204 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r6, [r0, 0x16] - ldr r0, _0808D208 - ldr r0, [r0] - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0 - bne _0808D238 - b _0808D268 - .align 2, 0 -_0808D204: .4byte gUnknown_202F3E0 -_0808D208: .4byte gUnknown_203B468 -_0808D20C: - ldr r0, [r7] - adds r0, r5 - mov r1, r8 - movs r2, 0x58 - bl memcpy - ldr r1, [r7] - adds r1, r5 - ldrh r2, [r1] - ldr r0, _0808D234 - ands r0, r2 - strh r0, [r1] - mov r1, r8 - movs r2, 0x8 - ldrsh r0, [r1, r2] - bl sub_80980B4 - ldr r0, [r7] - adds r0, r5 - b _0808D26A - .align 2, 0 -_0808D234: .4byte 0x0000bfff -_0808D238: - movs r4, 0 - ldr r7, _0808D274 -_0808D23C: - movs r0, 0x58 - adds r5, r4, 0 - muls r5, r0 - ldr r0, [r7] - adds r0, r5, r0 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0808D25E - adds r0, r4, 0 - bl sub_80923D4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, r6 - beq _0808D20C -_0808D25E: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0808D23C -_0808D268: - movs r0, 0 -_0808D26A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0808D274: .4byte gUnknown_203B45C - thumb_func_end sub_808D1DC - - thumb_func_start sub_808D278 -sub_808D278: - push {r4-r7,lr} - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808D29C - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrb r6, [r1, 0x16] - ldr r0, _0808D2A0 - ldr r0, [r0] - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0 - bne _0808D2AA - b _0808D2DA - .align 2, 0 -_0808D29C: .4byte gUnknown_202F3E0 -_0808D2A0: .4byte gUnknown_203B468 -_0808D2A4: - ldr r0, [r7] - adds r0, r5 - b _0808D2DC -_0808D2AA: - movs r4, 0 - ldr r7, _0808D2E4 -_0808D2AE: - movs r0, 0x58 - adds r5, r4, 0 - muls r5, r0 - ldr r0, [r7] - adds r0, r5, r0 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0808D2D0 - adds r0, r4, 0 - bl sub_80923D4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, r6 - beq _0808D2A4 -_0808D2D0: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0808D2AE -_0808D2DA: - movs r0, 0 -_0808D2DC: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0808D2E4: .4byte gUnknown_203B45C - thumb_func_end sub_808D278 - - thumb_func_start sub_808D2E8 -sub_808D2E8: - push {r4-r6,lr} - sub sp, 0x60 - adds r4, r0, 0 - adds r6, r1, 0 - adds r5, r2, 0 - ldr r0, [sp, 0x70] - lsls r4, 16 - asrs r4, 16 - lsls r5, 24 - lsrs r5, 24 - str r3, [sp] - str r0, [sp, 0x4] - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r6, 0 - adds r3, r5, 0 - bl sub_808CFD0 - add r0, sp, 0x8 - bl sub_808D1DC - add sp, 0x60 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_808D2E8 - - thumb_func_start sub_808D31C -sub_808D31C: - push {lr} - adds r1, r0, 0 - ldrb r0, [r1, 0x2] - cmp r0, 0 - bne _0808D338 - movs r2, 0 - ldrb r0, [r1, 0x4] - cmp r0, 0x41 - bne _0808D330 - movs r2, 0x1 -_0808D330: - adds r0, r2, 0 - cmp r0, 0 - bne _0808D338 - strh r0, [r1] -_0808D338: - pop {r0} - bx r0 - thumb_func_end sub_808D31C - - thumb_func_start sub_808D33C -sub_808D33C: - push {r4,lr} - movs r3, 0 - ldr r0, _0808D360 - ldr r4, [r0] -_0808D344: - movs r0, 0x58 - muls r0, r3 - adds r2, r0, r4 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808D364 - ldrb r0, [r2, 0x2] - cmp r0, 0 - beq _0808D364 - adds r0, r2, 0 - b _0808D370 - .align 2, 0 -_0808D360: .4byte gUnknown_203B45C -_0808D364: - adds r3, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r3, r0 - ble _0808D344 - movs r0, 0 -_0808D370: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_808D33C - - thumb_func_start sub_808D378 -sub_808D378: - push {r4,lr} - movs r3, 0 - ldr r0, _0808D3A4 - ldr r4, [r0] -_0808D380: - movs r0, 0x58 - muls r0, r3 - adds r2, r0, r4 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808D3A8 - movs r1, 0 - ldrb r0, [r2, 0x4] - cmp r0, 0x41 - bne _0808D39A - movs r1, 0x1 -_0808D39A: - cmp r1, 0 - beq _0808D3A8 - adds r0, r2, 0 - b _0808D3B4 - .align 2, 0 -_0808D3A4: .4byte gUnknown_203B45C -_0808D3A8: - adds r3, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r3, r0 - ble _0808D380 - movs r0, 0 -_0808D3B4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_808D378 - - thumb_func_start sub_808D3BC -sub_808D3BC: - push {r4-r6,lr} - movs r4, 0 - ldr r0, _0808D3E0 - ldr r2, [r0] - adds r3, r2, 0 - movs r6, 0x1 - movs r5, 0xCE - lsls r5, 1 -_0808D3CC: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0808D3E4 - ldrb r0, [r2, 0x4] - cmp r0, 0x40 - bne _0808D3E4 - adds r0, r3, 0 - b _0808D3F0 - .align 2, 0 -_0808D3E0: .4byte gUnknown_203B45C -_0808D3E4: - adds r2, 0x58 - adds r3, 0x58 - adds r4, 0x1 - cmp r4, r5 - ble _0808D3CC - movs r0, 0 -_0808D3F0: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_808D3BC - - thumb_func_start sub_808D3F8 -sub_808D3F8: - push {r4-r6,lr} - movs r4, 0 - ldr r0, _0808D41C - ldr r2, [r0] - adds r3, r2, 0 - movs r6, 0x1 - movs r5, 0xCE - lsls r5, 1 -_0808D408: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0808D420 - ldrb r0, [r2, 0x4] - cmp r0, 0x41 - bne _0808D420 - adds r0, r3, 0 - b _0808D42C - .align 2, 0 -_0808D41C: .4byte gUnknown_203B45C -_0808D420: - adds r2, 0x58 - adds r3, 0x58 - adds r4, 0x1 - cmp r4, r5 - ble _0808D408 - movs r0, 0 -_0808D42C: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_808D3F8 - - thumb_func_start sub_808D434 -sub_808D434: - push {r4-r7,lr} - adds r6, r1, 0 - lsls r0, 16 - asrs r5, r0, 16 - ldr r0, _0808D468 - ldr r2, [r0] - movs r4, 0 - movs r3, 0 - movs r0, 0x1 - mov r12, r0 - movs r7, 0xCE - lsls r7, 1 -_0808D44C: - ldrb r1, [r2] - mov r0, r12 - ands r0, r1 - cmp r0, 0 - beq _0808D46E - movs r1, 0x8 - ldrsh r0, [r2, r1] - cmp r0, r5 - bne _0808D46E - cmp r4, r6 - bne _0808D46C - adds r0, r2, 0 - b _0808D478 - .align 2, 0 -_0808D468: .4byte gUnknown_203B45C -_0808D46C: - adds r4, 0x1 -_0808D46E: - adds r3, 0x1 - adds r2, 0x58 - cmp r3, r7 - ble _0808D44C - movs r0, 0 -_0808D478: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_808D434 - - thumb_func_start sub_808D480 -sub_808D480: - push {r4,r5,lr} - ldr r0, _0808D4A8 - ldr r2, [r0] - movs r4, 0 - movs r5, 0x1 - ldr r3, _0808D4AC -_0808D48C: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0808D498 - adds r4, 0x1 -_0808D498: - subs r3, 0x1 - adds r2, 0x58 - cmp r3, 0 - bne _0808D48C - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0808D4A8: .4byte gUnknown_203B45C -_0808D4AC: .4byte 0x0000019d - thumb_func_end sub_808D480 - - thumb_func_start sub_808D4B0 -sub_808D4B0: - push {r4-r6,lr} - ldr r0, _0808D4F8 - ldr r2, [r0] - movs r5, 0 - movs r4, 0 - ldr r6, _0808D4FC -_0808D4BC: - ldrh r3, [r2] - lsrs r0, r3, 1 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808D4E4 - ldrb r0, [r2, 0x2] - cmp r0, 0 - bne _0808D4E4 - movs r1, 0 - ldrb r0, [r2, 0x4] - cmp r0, 0x41 - bne _0808D4D8 - movs r1, 0x1 -_0808D4D8: - cmp r1, 0 - bne _0808D4E4 - movs r5, 0x1 - adds r0, r6, 0 - ands r0, r3 - strh r0, [r2] -_0808D4E4: - adds r4, 0x1 - adds r2, 0x58 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0808D4BC - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0808D4F8: .4byte gUnknown_203B45C -_0808D4FC: .4byte 0x0000fffd - thumb_func_end sub_808D4B0 - - thumb_func_start sub_808D500 -sub_808D500: - push {r4-r6,lr} - ldr r0, _0808D53C - ldr r2, [r0] - movs r5, 0 - movs r4, 0 - ldr r6, _0808D540 -_0808D50C: - ldrh r3, [r2] - lsrs r0, r3, 1 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808D526 - ldrb r0, [r2, 0x2] - cmp r0, 0 - bne _0808D526 - movs r5, 0x1 - adds r0, r6, 0 - ands r0, r3 - strh r0, [r2] -_0808D526: - adds r4, 0x1 - adds r2, 0x58 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0808D50C - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0808D53C: .4byte gUnknown_203B45C -_0808D540: .4byte 0x0000fffd - thumb_func_end sub_808D500 - - thumb_func_start sub_808D544 -sub_808D544: - push {r4-r7,lr} - adds r4, r0, 0 - ldr r0, _0808D57C - ldr r3, [r0] - movs r5, 0 - movs r2, 0 - movs r7, 0x1 - movs r6, 0xCE - lsls r6, 1 - adds r1, r4, 0 -_0808D558: - ldrh r0, [r3] - lsrs r0, 1 - ands r0, r7 - cmp r0, 0 - beq _0808D56C - cmp r4, 0 - beq _0808D568 - str r2, [r1] -_0808D568: - adds r1, 0x4 - adds r5, 0x1 -_0808D56C: - adds r2, 0x1 - adds r3, 0x58 - cmp r2, r6 - ble _0808D558 - adds r0, r5, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0808D57C: .4byte gUnknown_203B45C - thumb_func_end sub_808D544 - - thumb_func_start sub_808D580 -sub_808D580: - push {r4-r7,lr} - adds r6, r0, 0 - ldr r0, _0808D5AC - ldr r2, [r0] - movs r5, 0 - movs r4, 0 - mov r12, r0 - adds r3, r6, 0 -_0808D590: - ldrb r0, [r2, 0x2] - cmp r0, 0 - beq _0808D5B0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808D5B0 - cmp r6, 0 - beq _0808D5B0 - str r4, [r3] - adds r5, 0x1 - b _0808D5BC - .align 2, 0 -_0808D5AC: .4byte gUnknown_203B45C -_0808D5B0: - adds r4, 0x1 - adds r2, 0x58 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0808D590 -_0808D5BC: - mov r0, r12 - ldr r2, [r0] - movs r4, 0 - lsls r0, r5, 2 - adds r7, r0, r6 -_0808D5C6: - movs r1, 0 - ldrb r0, [r2, 0x4] - cmp r0, 0x41 - bne _0808D5D0 - movs r1, 0x1 -_0808D5D0: - cmp r1, 0 - beq _0808D5F8 - ldrb r0, [r2, 0x2] - cmp r0, 0 - bne _0808D5F8 - ldrh r1, [r2] - lsrs r0, r1, 1 - movs r3, 0x1 - ands r0, r3 - cmp r0, 0 - beq _0808D5F8 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _0808D5F8 - cmp r6, 0 - beq _0808D5F8 - str r4, [r7] - adds r5, 0x1 - b _0808D604 -_0808D5F8: - adds r4, 0x1 - adds r2, 0x58 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0808D5C6 -_0808D604: - mov r0, r12 - ldr r2, [r0] - movs r4, 0 - movs r3, 0x1 - lsls r0, r5, 2 - adds r7, r0, r6 -_0808D610: - ldrh r1, [r2] - lsrs r0, r1, 1 - ands r0, r3 - cmp r0, 0 - beq _0808D63E - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _0808D63E - ldrb r0, [r2, 0x2] - cmp r0, 0 - bne _0808D63E - movs r1, 0 - ldrb r0, [r2, 0x4] - cmp r0, 0x41 - bne _0808D632 - movs r1, 0x1 -_0808D632: - cmp r1, 0 - bne _0808D63E - cmp r6, 0 - beq _0808D63E - stm r7!, {r4} - adds r5, 0x1 -_0808D63E: - adds r4, 0x1 - adds r2, 0x58 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0808D610 - adds r0, r5, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_808D580 - - thumb_func_start sub_808D654 -sub_808D654: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r0, _0808D6A0 - ldr r2, [r0] - movs r6, 0 - movs r4, 0 - adds r3, r5, 0 -_0808D662: - ldrh r0, [r2] - lsrs r0, 1 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808D68C - ldrb r0, [r2, 0x2] - cmp r0, 0 - bne _0808D68C - movs r1, 0 - ldrb r0, [r2, 0x4] - cmp r0, 0x41 - bne _0808D67E - movs r1, 0x1 -_0808D67E: - cmp r1, 0 - bne _0808D68C - cmp r5, 0 - beq _0808D688 - str r4, [r3] -_0808D688: - adds r3, 0x4 - adds r6, 0x1 -_0808D68C: - adds r4, 0x1 - adds r2, 0x58 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0808D662 - adds r0, r6, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0808D6A0: .4byte gUnknown_203B45C - thumb_func_end sub_808D654 - - thumb_func_start sub_808D6A4 -sub_808D6A4: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r0, _0808D6E4 - ldr r2, [r0] - movs r6, 0 - movs r4, 0 - adds r3, r5, 0 -_0808D6B2: - ldrh r0, [r2] - lsrs r0, 1 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808D6CE - ldrb r0, [r2, 0x2] - cmp r0, 0 - bne _0808D6CE - cmp r5, 0 - beq _0808D6CA - str r4, [r3] -_0808D6CA: - adds r3, 0x4 - adds r6, 0x1 -_0808D6CE: - adds r4, 0x1 - adds r2, 0x58 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0808D6B2 - adds r0, r6, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0808D6E4: .4byte gUnknown_203B45C - thumb_func_end sub_808D6A4 - - thumb_func_start sub_808D6E8 -sub_808D6E8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r7, 0 - movs r5, 0 - movs r4, 0 - ldr r0, _0808D740 - mov r8, r0 - movs r6, 0x1 -_0808D6FA: - movs r0, 0x58 - adds r1, r4, 0 - muls r1, r0 - mov r2, r8 - ldr r0, [r2] - adds r2, r0, r1 - ldrh r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0808D728 - lsrs r0, r1, 1 - ands r0, r6 - cmp r0, 0 - beq _0808D728 - movs r1, 0x8 - ldrsh r0, [r2, r1] - bl sub_808DACC - lsls r0, 24 - lsrs r0, 24 - adds r5, r0 - adds r7, 0x1 -_0808D728: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0808D6FA - cmp r5, 0x5 - bgt _0808D744 - cmp r7, 0x3 - bgt _0808D744 - movs r0, 0x1 - b _0808D746 - .align 2, 0 -_0808D740: .4byte gUnknown_203B45C -_0808D744: - movs r0, 0 -_0808D746: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_808D6E8 - - thumb_func_start sub_808D750 -sub_808D750: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - movs r6, 0 - movs r5, 0 - movs r4, 0 - ldr r0, _0808D7C8 - mov r9, r0 - movs r7, 0x1 -_0808D76A: - movs r0, 0x58 - adds r1, r4, 0 - muls r1, r0 - mov r2, r9 - ldr r0, [r2] - adds r1, r0, r1 - ldrh r2, [r1] - adds r0, r7, 0 - ands r0, r2 - cmp r0, 0 - beq _0808D798 - lsrs r0, r2, 1 - ands r0, r7 - cmp r0, 0 - beq _0808D798 - movs r2, 0x8 - ldrsh r0, [r1, r2] - bl sub_808DACC - lsls r0, 24 - lsrs r0, 24 - adds r5, r0 - adds r6, 0x1 -_0808D798: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0808D76A - cmp r6, 0x3 - bgt _0808D7CC - ldr r2, _0808D7C8 - movs r0, 0x58 - mov r1, r8 - muls r1, r0 - ldr r0, [r2] - adds r1, r0, r1 - movs r2, 0x8 - ldrsh r0, [r1, r2] - bl sub_808DACC - lsls r0, 24 - lsrs r0, 24 - adds r5, r0 - cmp r5, 0x6 - bgt _0808D7CC - movs r0, 0x1 - b _0808D7CE - .align 2, 0 -_0808D7C8: .4byte gUnknown_203B45C -_0808D7CC: - movs r0, 0 -_0808D7CE: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_808D750 - - thumb_func_start sub_808D7DC -sub_808D7DC: - lsls r0, 16 - asrs r0, 16 - ldr r3, _0808D7FC - movs r2, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - adds r2, r0, 0 - adds r2, 0x28 - ldrb r2, [r2] - strb r2, [r1] - adds r0, 0x29 - ldrb r0, [r0] - strb r0, [r1, 0x1] - bx lr - .align 2, 0 -_0808D7FC: .4byte gUnknown_203B45C - thumb_func_end sub_808D7DC - - thumb_func_start sub_808D800 -sub_808D800: - lsls r0, 16 - asrs r0, 16 - ldr r3, _0808D820 - movs r2, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - ldrb r3, [r1] - adds r2, r0, 0 - adds r2, 0x28 - strb r3, [r2] - ldrb r1, [r1, 0x1] - adds r0, 0x29 - strb r1, [r0] - bx lr - .align 2, 0 -_0808D820: .4byte gUnknown_203B45C - thumb_func_end sub_808D800 - - thumb_func_start sub_808D824 -sub_808D824: - push {r4,lr} - sub sp, 0x14 - adds r4, r0, 0 - movs r1, 0x8 - ldrsh r0, [r4, r1] - bl sub_808D994 - adds r1, r0, 0 - mov r0, sp - bl sub_80922F4 - movs r2, 0 - adds r4, 0x4C -_0808D83E: - adds r0, r4, r2 - mov r3, sp - adds r1, r3, r2 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - beq _0808D850 - movs r0, 0 - b _0808D85C -_0808D850: - cmp r0, 0 - beq _0808D85A - adds r2, 0x1 - cmp r2, 0x9 - ble _0808D83E -_0808D85A: - movs r0, 0x1 -_0808D85C: - add sp, 0x14 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_808D824 - - thumb_func_start sub_808D864 -sub_808D864: - push {r4-r7,lr} - lsls r0, 16 - asrs r0, 16 - lsls r1, 16 - asrs r1, 16 - ldr r2, _0808D8A0 - movs r3, 0x58 - muls r0, r3 - ldr r2, [r2] - adds r0, r2, r0 - adds r6, r0, 0 - adds r6, 0x4C - adds r0, r1, 0 - muls r0, r3 - adds r2, r0 - adds r5, r2, 0 - adds r5, 0x4C - movs r7, 0 -_0808D888: - ldrb r0, [r6] - bl sub_8092280 - adds r4, r0, 0 - ldrb r0, [r5] - bl sub_8092280 - cmp r4, r0 - ble _0808D8A4 - movs r0, 0x1 - b _0808D8B4 - .align 2, 0 -_0808D8A0: .4byte gUnknown_203B45C -_0808D8A4: - cmp r4, r0 - blt _0808D8B2 - adds r6, 0x1 - adds r5, 0x1 - adds r7, 0x1 - cmp r7, 0x9 - ble _0808D888 -_0808D8B2: - movs r0, 0 -_0808D8B4: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_808D864 - - thumb_func_start sub_808D8BC -sub_808D8BC: - push {lr} - lsls r1, 16 - asrs r1, 16 - ldr r2, _0808D8DC - ldr r3, [r2] - lsls r2, r1, 3 - adds r2, r1 - lsls r2, 3 - adds r2, r3 - ldr r1, [r2] - movs r2, 0x14 - bl strncpy - pop {r0} - bx r0 - .align 2, 0 -_0808D8DC: .4byte gUnknown_202F3E0 - thumb_func_end sub_808D8BC - - thumb_func_start sub_808D8E0 -sub_808D8E0: - push {r4,lr} - lsls r3, r1, 16 - asrs r3, 16 - ldr r1, _0808D900 - ldr r2, _0808D904 - ldr r4, [r2] - lsls r2, r3, 3 - adds r2, r3 - lsls r2, 3 - adds r2, r4 - ldr r2, [r2] - bl sub_800D158 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808D900: .4byte gUnknown_8107600 -_0808D904: .4byte gUnknown_202F3E0 - thumb_func_end sub_808D8E0 - - thumb_func_start sub_808D908 -sub_808D908: - push {r4,lr} - lsls r3, r1, 16 - asrs r3, 16 - ldr r1, _0808D928 - ldr r2, _0808D92C - ldr r4, [r2] - lsls r2, r3, 3 - adds r2, r3 - lsls r2, 3 - adds r2, r4 - ldr r2, [r2] - bl sub_800D158 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808D928: .4byte gUnknown_8107608 -_0808D92C: .4byte gUnknown_202F3E0 - thumb_func_end sub_808D908 - - thumb_func_start sub_808D930 -sub_808D930: - push {r4-r7,lr} - adds r7, r0, 0 - lsls r1, 16 - asrs r6, r1, 16 - adds r0, r6, 0 - bl sub_808E770 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xC9 - bne _0808D970 - ldr r5, _0808D968 - movs r0, 0xC9 - bl sub_808D994 - adds r4, r0, 0 - adds r0, r6, 0 - bl sub_808E8C8 - ldr r1, _0808D96C - adds r0, r1 - ldrb r3, [r0] - adds r0, r7, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_800D158 - b _0808D986 - .align 2, 0 -_0808D968: .4byte gUnknown_8107630 -_0808D96C: .4byte gUnknown_8107610 -_0808D970: - ldr r1, _0808D98C - ldr r0, _0808D990 - ldr r2, [r0] - lsls r0, r6, 3 - adds r0, r6 - lsls r0, 3 - adds r0, r2 - ldr r2, [r0] - adds r0, r7, 0 - bl sub_800D158 -_0808D986: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808D98C: .4byte gUnknown_8107638 -_0808D990: .4byte gUnknown_202F3E0 - thumb_func_end sub_808D930 - - thumb_func_start sub_808D994 -sub_808D994: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808D9A8 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, [r1] - bx lr - .align 2, 0 -_0808D9A8: .4byte gUnknown_202F3E0 - thumb_func_end sub_808D994 - - thumb_func_start sub_808D9AC -sub_808D9AC: - push {r4,r5,lr} - sub sp, 0x14 - adds r5, r0, 0 - adds r4, r2, 0 - adds r1, 0x4C - mov r0, sp - movs r2, 0xA - bl sub_80922B4 - cmp r4, 0 - bne _0808D9C4 - movs r4, 0x5 -_0808D9C4: - ldr r1, _0808D9D8 - adds r0, r5, 0 - adds r2, r4, 0 - mov r3, sp - bl sub_800D158 - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808D9D8: .4byte gUnknown_810763C - thumb_func_end sub_808D9AC - - thumb_func_start sub_808D9DC -sub_808D9DC: - push {r4,r5,lr} - sub sp, 0x14 - adds r5, r0, 0 - adds r4, r2, 0 - adds r1, 0x58 - mov r0, sp - movs r2, 0xA - bl sub_80922B4 - cmp r4, 0 - bne _0808D9F4 - movs r4, 0x6 -_0808D9F4: - ldr r1, _0808DA08 - adds r0, r5, 0 - adds r2, r4, 0 - mov r3, sp - bl sub_800D158 - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0808DA08: .4byte gUnknown_810763C - thumb_func_end sub_808D9DC - - thumb_func_start sub_808DA0C -sub_808DA0C: - push {r4,lr} - sub sp, 0x14 - adds r4, r0, 0 - adds r1, 0x58 - mov r0, sp - movs r2, 0xA - bl sub_80922B4 - ldr r1, _0808DA30 - adds r0, r4, 0 - mov r2, sp - bl sub_800D158 - add sp, 0x14 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808DA30: .4byte gUnknown_8107638 - thumb_func_end sub_808DA0C - - thumb_func_start sub_808DA34 -sub_808DA34: - push {lr} - adds r1, 0x4C - movs r2, 0xA - bl sub_80922B4 - pop {r0} - bx r0 - thumb_func_end sub_808DA34 - - thumb_func_start sub_808DA44 -sub_808DA44: - push {r4-r6,lr} - sub sp, 0x30 - lsls r0, 16 - asrs r4, r0, 16 - lsls r1, 24 - lsrs r2, r1, 24 - cmp r2, 0xC - bls _0808DAA0 - mov r1, sp - ldr r0, _0808DA98 - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _0808DA92 - mov r1, sp - add r3, sp, 0x48 -_0808DA76: - movs r5, 0 - ldrsh r0, [r1, r5] - cmp r0, r4 - bne _0808DA84 - ldr r0, [r1, 0x4] - cmp r0, r2 - beq _0808DA9C -_0808DA84: - adds r1, 0x8 - cmp r1, r3 - bgt _0808DA92 - movs r6, 0 - ldrsh r0, [r1, r6] - cmp r0, 0 - bne _0808DA76 -_0808DA92: - movs r0, 0 - b _0808DAA6 - .align 2, 0 -_0808DA98: .4byte gUnknown_8107654 -_0808DA9C: - movs r0, 0x1 - b _0808DAA6 -_0808DAA0: - ldr r0, _0808DAB0 - adds r0, r2, r0 - ldrb r0, [r0] -_0808DAA6: - add sp, 0x30 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0808DAB0: .4byte gUnknown_8107645 - thumb_func_end sub_808DA44 - - thumb_func_start sub_808DAB4 -sub_808DAB4: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DAC8 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, [r1, 0x4] - bx lr - .align 2, 0 -_0808DAC8: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DAB4 - - thumb_func_start sub_808DACC -sub_808DACC: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DAE0 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrb r0, [r1, 0x9] - bx lr - .align 2, 0 -_0808DAE0: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DACC - - thumb_func_start sub_808DAE4 -sub_808DAE4: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DAF8 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrb r0, [r1, 0x19] - bx lr - .align 2, 0 -_0808DAF8: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DAE4 - - thumb_func_start sub_808DAFC -sub_808DAFC: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DB10 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, [r1, 0xC] - bx lr - .align 2, 0 -_0808DB10: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DAFC - - thumb_func_start sub_808DB14 -sub_808DB14: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DB28 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrb r0, [r1, 0x15] - bx lr - .align 2, 0 -_0808DB28: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DB14 - - thumb_func_start sub_808DB2C -sub_808DB2C: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DB44 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrb r0, [r1, 0x1B] - lsls r0, 25 - lsrs r0, 24 - bx lr - .align 2, 0 -_0808DB44: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DB2C - - thumb_func_start sub_808DB48 -sub_808DB48: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DB5C - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrb r0, [r1, 0x1C] - bx lr - .align 2, 0 -_0808DB5C: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DB48 - - thumb_func_start sub_808DB60 -sub_808DB60: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DB74 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrb r0, [r1, 0x1D] - bx lr - .align 2, 0 -_0808DB74: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DB60 - - thumb_func_start sub_808DB78 -sub_808DB78: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DB8C - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrh r0, [r1, 0x2C] - bx lr - .align 2, 0 -_0808DB8C: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DB78 - - thumb_func_start sub_808DB90 -sub_808DB90: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DBA4 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrh r0, [r1, 0x2E] - bx lr - .align 2, 0 -_0808DBA4: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DB90 - - thumb_func_start sub_808DBA8 -sub_808DBA8: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DBBC - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrb r0, [r1, 0x16] - bx lr - .align 2, 0 -_0808DBBC: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DBA8 - - thumb_func_start sub_808DBC0 -sub_808DBC0: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DBD4 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrh r0, [r1, 0x1E] - bx lr - .align 2, 0 -_0808DBD4: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DBC0 - - thumb_func_start sub_808DBD8 -sub_808DBD8: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DBF0 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - adds r1, 0x33 - ldrb r0, [r1] - bx lr - .align 2, 0 -_0808DBF0: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DBD8 - - thumb_func_start sub_808DBF4 -sub_808DBF4: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DC08 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrb r0, [r1, 0x12] - bx lr - .align 2, 0 -_0808DC08: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DBF4 - - thumb_func_start sub_808DC0C -sub_808DC0C: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DC24 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r2, 0x34 - ldrsh r0, [r1, r2] - bx lr - .align 2, 0 -_0808DC24: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DC0C - - thumb_func_start sub_808DC28 -sub_808DC28: - lsls r0, 16 - asrs r0, 16 - ldr r2, _0808DC44 - ldr r3, [r2] - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - lsls r1, 1 - adds r2, 0x24 - adds r2, r1 - ldrh r0, [r2] - bx lr - .align 2, 0 -_0808DC44: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DC28 - - thumb_func_start sub_808DC48 -sub_808DC48: - lsls r0, 16 - asrs r0, 16 - ldr r2, _0808DC64 - ldr r3, [r2] - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - lsls r1, 1 - adds r2, 0x28 - adds r2, r1 - ldrh r0, [r2] - bx lr - .align 2, 0 -_0808DC64: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DC48 - - thumb_func_start sub_808DC68 -sub_808DC68: - lsls r0, 16 - asrs r0, 16 - ldr r2, _0808DC80 - ldr r3, [r2] - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - adds r2, 0x13 - adds r2, r1 - ldrb r0, [r2] - bx lr - .align 2, 0 -_0808DC80: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DC68 - - thumb_func_start sub_808DC84 -sub_808DC84: - lsls r0, 16 - asrs r0, 16 - ldr r2, _0808DC9C - ldr r3, [r2] - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - adds r2, 0x17 - adds r2, r1 - ldrb r0, [r2] - bx lr - .align 2, 0 -_0808DC9C: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DC84 - - thumb_func_start sub_808DCA0 -sub_808DCA0: - lsls r0, 16 - asrs r0, 16 - ldr r2, _0808DCBC - ldr r3, [r2] - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - lsls r1, 1 - adds r2, 0x3C - adds r2, r1 - movs r1, 0 - ldrsh r0, [r2, r1] - bx lr - .align 2, 0 -_0808DCBC: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DCA0 - - thumb_func_start sub_808DCC0 -sub_808DCC0: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DCD8 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - adds r1, 0x40 - movs r2, 0 - ldrsh r0, [r1, r2] - bx lr - .align 2, 0 -_0808DCD8: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DCC0 - - thumb_func_start sub_808DCDC -sub_808DCDC: - lsls r0, 16 - asrs r0, 16 - ldr r2, _0808DCF8 - ldr r3, [r2] - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - lsls r1, 1 - adds r2, 0x42 - adds r2, r1 - movs r1, 0 - ldrsh r0, [r2, r1] - bx lr - .align 2, 0 -_0808DCF8: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DCDC - - thumb_func_start sub_808DCFC -sub_808DCFC: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0808DD14 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r2, 0x3E - ldrsh r0, [r1, r2] - bx lr - .align 2, 0 -_0808DD14: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DCFC - - thumb_func_start sub_808DD18 -sub_808DD18: - push {r4,lr} - lsls r0, 16 - asrs r0, 16 - ldr r2, _0808DD44 - ldr r3, [r2] - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - ldr r4, [r2, 0x20] - subs r1, 0x1 - adds r0, r4, 0 - muls r0, r1 - movs r1, 0xA - bl __divsi3 - adds r4, r0 - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0808DD44: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DD18 - - thumb_func_start sub_808DD48 -sub_808DD48: - lsls r0, 16 - asrs r0, 16 - ldr r2, _0808DD64 - ldr r3, [r2] - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - ldr r3, [r2, 0x38] - ldr r2, [r2, 0x34] - str r2, [r1] - str r3, [r1, 0x4] - bx lr - .align 2, 0 -_0808DD64: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DD48 - - thumb_func_start sub_808DD68 -sub_808DD68: - push {lr} - lsls r0, 16 - asrs r2, r0, 16 - cmp r1, 0 - bne _0808DD88 - ldr r0, _0808DD84 - ldr r1, [r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - ldrb r0, [r0, 0x8] - b _0808DD8A - .align 2, 0 -_0808DD84: .4byte gUnknown_202F3E0 -_0808DD88: - movs r0, 0xA -_0808DD8A: - pop {r1} - bx r1 - thumb_func_end sub_808DD68 - - thumb_func_start sub_808DD90 -sub_808DD90: - push {lr} - sub sp, 0xC - lsls r0, 16 - asrs r2, r0, 16 - ldr r0, _0808DDBC - ldr r1, [r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - ldrh r0, [r0, 0x10] - cmp r0, 0 - beq _0808DDC8 - ldr r1, _0808DDC0 - mov r0, sp - bl sprintf - ldr r1, _0808DDC4 - mov r0, sp - bl OpenFile - b _0808DDCA - .align 2, 0 -_0808DDBC: .4byte gUnknown_202F3E0 -_0808DDC0: .4byte gUnknown_8107684 -_0808DDC4: .4byte gUnknown_8510000 -_0808DDC8: - movs r0, 0 -_0808DDCA: - add sp, 0xC - pop {r1} - bx r1 - thumb_func_end sub_808DD90 - - thumb_func_start sub_808DDD0 -sub_808DDD0: - push {lr} - sub sp, 0xC - lsls r0, 16 - asrs r2, r0, 16 - ldr r0, _0808DDFC - ldr r1, [r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - ldrh r0, [r0, 0x10] - cmp r0, 0 - beq _0808DE08 - ldr r1, _0808DE00 - mov r0, sp - bl sprintf - ldr r1, _0808DE04 - mov r0, sp - bl OpenFileAndGetFileDataPtr - b _0808DE0A - .align 2, 0 -_0808DDFC: .4byte gUnknown_202F3E0 -_0808DE00: .4byte gUnknown_8107684 -_0808DE04: .4byte gUnknown_8510000 -_0808DE08: - movs r0, 0 -_0808DE0A: - add sp, 0xC - pop {r1} - bx r1 - thumb_func_end sub_808DDD0 - - thumb_func_start sub_808DE10 -sub_808DE10: - lsls r0, 16 - asrs r0, 16 - ldr r2, _0808DE2C - ldr r3, [r2] - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - ldrh r0, [r2, 0x10] - asrs r0, r1 - movs r1, 0x1 - ands r0, r1 - bx lr - .align 2, 0 -_0808DE2C: .4byte gUnknown_202F3E0 - thumb_func_end sub_808DE10 - - thumb_func_start sub_808DE30 -sub_808DE30: - push {r4,lr} - adds r2, r1, 0 - ldr r4, _0808DE4C - movs r1, 0x58 - adds r3, r2, 0 - muls r3, r1 - ldr r1, [r4] - adds r1, r3 - bl sub_808DE50 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0808DE4C: .4byte gUnknown_203B45C - thumb_func_end sub_808DE30 - - thumb_func_start sub_808DE50 -sub_808DE50: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r5, r0, 0 - adds r6, r1, 0 - adds r4, r2, 0 - ldrh r0, [r6] - strh r0, [r5] - ldrb r0, [r6, 0x3] - strb r0, [r5, 0x3] - ldrh r0, [r6, 0x14] - strh r0, [r5, 0x8] - ldr r0, [r6, 0x20] - str r0, [r5, 0x4C] - adds r0, r5, 0 - adds r0, 0x54 - bl sub_808E6F4 - ldr r0, [r6, 0x4] - str r0, [r5, 0x4] - ldrb r0, [r6, 0x2] - strb r0, [r5, 0x2] - strh r4, [r5, 0xA] - ldrh r0, [r6, 0x8] - strh r0, [r5, 0xE] - adds r0, r6, 0 - adds r0, 0x24 - ldrb r1, [r0] - adds r0, r5, 0 - adds r0, 0x50 - strb r1, [r0] - ldrh r0, [r6, 0x16] - strh r0, [r5, 0x12] - strh r0, [r5, 0x10] - add r0, sp, 0x4 - mov r8, r0 - adds r2, r6, 0 - adds r2, 0x18 - adds r1, r5, 0 - adds r1, 0x14 - movs r3, 0x1 -_0808DEA4: - ldrb r0, [r2] - strb r0, [r1] - ldrb r0, [r2, 0x2] - strb r0, [r1, 0x2] - adds r2, 0x1 - adds r1, 0x1 - subs r3, 0x1 - cmp r3, 0 - bge _0808DEA4 - ldr r0, [r6, 0x1C] - str r0, [r5, 0x18] - adds r0, r5, 0 - adds r0, 0x1C - adds r1, r6, 0 - adds r1, 0x2C - bl sub_8093F50 - movs r3, 0 - movs r0, 0x28 - adds r0, r6 - mov r12, r0 - adds r2, r5, 0 - adds r2, 0x40 - adds r7, r5, 0 - adds r7, 0x58 - adds r4, r6, 0 - adds r4, 0x4C -_0808DEDA: - adds r0, r7, r3 - adds r1, r4, r3 - ldrb r1, [r1] - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0x9 - ble _0808DEDA - mov r0, r12 - ldrb r1, [r0] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - cmp r0, 0 - beq _0808DF00 - adds r0, r2, 0 - mov r1, r12 - bl sub_8090B64 - b _0808DF06 -_0808DF00: - strb r0, [r2, 0x2] - strb r0, [r2, 0x1] - strb r0, [r2] -_0808DF06: - mov r0, sp - movs r1, 0x64 - bl sub_80943A0 - ldr r0, [sp] - str r0, [r5, 0x44] - mov r0, r8 - movs r1, 0x64 - bl sub_80943A0 - ldr r0, [sp, 0x4] - str r0, [r5, 0x48] - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_808DE50 - - thumb_func_start sub_808DF2C -sub_808DF2C: - push {lr} - ldr r3, _0808DF40 - movs r2, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - bl sub_808DF44 - pop {r0} - bx r0 - .align 2, 0 -_0808DF40: .4byte gUnknown_203B45C - thumb_func_end sub_808DF2C - - thumb_func_start sub_808DF44 -sub_808DF44: - push {r4-r7,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldrh r0, [r4] - strh r0, [r5] - ldrb r0, [r4, 0x3] - strb r0, [r5, 0x3] - ldrh r0, [r4, 0x8] - strh r0, [r5, 0x14] - ldr r0, [r4, 0x4C] - str r0, [r5, 0x20] - ldr r0, [r4, 0x4] - str r0, [r5, 0x4] - ldrb r0, [r4, 0x2] - strb r0, [r5, 0x2] - ldrh r0, [r4, 0xE] - strh r0, [r5, 0x8] - adds r0, r4, 0 - adds r0, 0x50 - ldrb r1, [r0] - adds r0, r5, 0 - adds r0, 0x24 - strb r1, [r0] - ldrh r0, [r4, 0x12] - strh r0, [r5, 0x16] - adds r2, r4, 0 - adds r2, 0x14 - adds r1, r5, 0 - adds r1, 0x18 - movs r3, 0x1 -_0808DF80: - ldrb r0, [r2] - strb r0, [r1] - ldrb r0, [r2, 0x2] - strb r0, [r1, 0x2] - adds r2, 0x1 - adds r1, 0x1 - subs r3, 0x1 - cmp r3, 0 - bge _0808DF80 - ldr r0, [r4, 0x18] - str r0, [r5, 0x1C] - adds r0, r5, 0 - adds r0, 0x2C - adds r1, r4, 0 - adds r1, 0x1C - bl sub_8093FA8 - movs r3, 0 - adds r7, r4, 0 - adds r7, 0x40 - adds r6, r5, 0 - adds r6, 0x28 - adds r5, 0x4C - adds r2, r4, 0 - adds r2, 0x58 -_0808DFB2: - adds r0, r5, r3 - adds r1, r2, r3 - ldrb r1, [r1] - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0x9 - ble _0808DFB2 - ldrb r0, [r7] - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0808DFD4 - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_8090BB0 - b _0808DFD6 -_0808DFD4: - strb r1, [r6] -_0808DFD6: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_808DF44 - - thumb_func_start sub_808DFDC -sub_808DFDC: - push {lr} - ldr r3, _0808E000 - movs r2, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r3, r0, r2 - adds r1, 0x40 - ldrb r0, [r1] - movs r2, 0x1 - ands r2, r0 - cmp r2, 0 - beq _0808E004 - adds r0, r3, 0 - adds r0, 0x28 - bl sub_8090BB0 - b _0808E00A - .align 2, 0 -_0808E000: .4byte gUnknown_203B45C -_0808E004: - adds r0, r3, 0 - adds r0, 0x28 - strb r2, [r0] -_0808E00A: - pop {r0} - bx r0 - thumb_func_end sub_808DFDC - - thumb_func_start sub_808E010 -sub_808E010: - push {r4-r6,lr} - sub sp, 0xC - adds r6, r0, 0 - adds r5, r2, 0 - lsls r1, 16 - asrs r2, r1, 16 - ldr r1, _0808E06C - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, r2 - beq _0808E04A - strh r2, [r1] - ldr r1, _0808E070 - mov r0, sp - bl sprintf - ldr r1, _0808E074 - mov r0, sp - bl OpenFileAndGetFileDataPtr - adds r4, r0, 0 - ldr r0, _0808E078 - movs r1, 0 - adds r2, r4, 0 - bl sub_800AAA8 - adds r0, r4, 0 - bl CloseFile -_0808E04A: - subs r5, 0x1 - cmp r5, 0 - bge _0808E052 - movs r5, 0 -_0808E052: - ldr r0, _0808E078 - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 2 - adds r2, r6, 0 - adds r1, r0 - ldm r1!, {r0,r3,r4} - stm r2!, {r0,r3,r4} - add sp, 0xC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808E06C: .4byte gUnknown_20384E8 -_0808E070: .4byte gUnknown_810768C -_0808E074: .4byte gUnknown_8300500 -_0808E078: .4byte gUnknown_20384F0 - thumb_func_end sub_808E010 - - thumb_func_start sub_808E07C -sub_808E07C: - push {r4,lr} - adds r2, r0, 0 - adds r4, r1, 0 - ldrb r1, [r2] - adds r2, 0x1 - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0808E094 - ldrb r3, [r2] - adds r2, 0x1 - b _0808E098 -_0808E094: - adds r3, r1, 0 - movs r1, 0 -_0808E098: - movs r0, 0x7F - ands r3, r0 - ands r1, r0 - lsls r0, r1, 7 - orrs r0, r3 - strh r0, [r4] - adds r0, r2, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_808E07C - - thumb_func_start sub_808E0AC -sub_808E0AC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r0, 0 - mov r8, r2 - adds r5, r3, 0 - lsls r1, 16 - asrs r1, 16 - adds r2, r1, 0 - movs r7, 0 - ldr r0, _0808E0DC - cmp r1, r0 - beq _0808E0D8 - cmp r1, 0 - beq _0808E0D8 - movs r0, 0xD2 - lsls r0, 1 - cmp r1, r0 - bne _0808E0E0 -_0808E0D8: - movs r0, 0 - b _0808E170 - .align 2, 0 -_0808E0DC: .4byte 0x000001a5 -_0808E0E0: - adds r0, r2, 0 - bl sub_8092B18 - adds r1, r0, 0 - mov r4, sp - movs r0, 0x88 - lsls r0, 1 - mov r10, r0 - movs r3, 0xB1 - lsls r3, 1 - mov r9, r3 - b _0808E156 -_0808E0F8: - cmp r0, r8 - bne _0808E156 - movs r2, 0x1 - ldrh r0, [r4] - cmp r0, 0xEE - bne _0808E110 - ldr r0, _0808E180 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r5, r0 - bge _0808E110 - movs r2, 0 -_0808E110: - ldrh r0, [r4] - cmp r0, 0xEF - bne _0808E122 - ldr r0, _0808E184 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r5, r0 - bge _0808E122 - movs r2, 0 -_0808E122: - ldrh r0, [r4] - cmp r0, r10 - bne _0808E134 - ldr r0, _0808E188 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r5, r0 - bge _0808E134 - movs r2, 0 -_0808E134: - ldrh r0, [r4] - cmp r0, r9 - bne _0808E146 - ldr r0, _0808E18C - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r5, r0 - bge _0808E146 - movs r2, 0 -_0808E146: - cmp r2, 0 - beq _0808E156 - cmp r7, 0xF - bgt _0808E156 - ldrh r0, [r4] - strh r0, [r6] - adds r6, 0x2 - adds r7, 0x1 -_0808E156: - ldrb r0, [r1] - cmp r0, 0 - beq _0808E16E - adds r0, r1, 0 - mov r1, sp - bl sub_808E07C - adds r1, r0, 0 - ldrb r0, [r1] - adds r1, 0x1 - cmp r0, r8 - ble _0808E0F8 -_0808E16E: - adds r0, r7, 0 -_0808E170: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0808E180: .4byte gUnknown_810ACB8 -_0808E184: .4byte gUnknown_810ACBA -_0808E188: .4byte gUnknown_810ACBC -_0808E18C: .4byte gUnknown_810ACBE - thumb_func_end sub_808E0AC - - thumb_func_start sub_808E190 -sub_808E190: - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r1, 16 - asrs r4, r1, 16 - ldr r0, _0808E1B8 - cmp r4, r0 - beq _0808E20C - cmp r4, 0 - beq _0808E20C - movs r0, 0xD2 - lsls r0, 1 - cmp r4, r0 - beq _0808E20C - movs r0, 0xB0 - lsls r0, 1 - cmp r5, r0 - bne _0808E1C0 - b _0808E20C - .align 2, 0 -_0808E1B8: .4byte 0x000001a5 -_0808E1BC: - movs r0, 0x1 - b _0808E20E -_0808E1C0: - adds r0, r4, 0 - bl sub_8092B18 - adds r1, r0, 0 - b _0808E1DE -_0808E1CA: - adds r0, r1, 0 - mov r1, sp - bl sub_808E07C - adds r1, r0, 0 - adds r1, 0x1 - mov r0, sp - ldrh r0, [r0] - cmp r5, r0 - beq _0808E1BC -_0808E1DE: - ldrb r0, [r1] - cmp r0, 0 - bne _0808E1CA - adds r0, r4, 0 - bl sub_8092B54 - adds r1, r0, 0 - ldrb r0, [r1] - cmp r0, 0 - beq _0808E20C - mov r4, sp - adds r4, 0x2 -_0808E1F6: - adds r0, r1, 0 - adds r1, r4, 0 - bl sub_808E07C - adds r1, r0, 0 - ldrh r0, [r4] - cmp r0, r5 - beq _0808E1BC - ldrb r0, [r1] - cmp r0, 0 - bne _0808E1F6 -_0808E20C: - movs r0, 0 -_0808E20E: - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_808E190 - - thumb_func_start sub_808E218 -sub_808E218: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - mov r10, r0 - mov r8, r1 - movs r0, 0 - mov r9, r0 - movs r0, 0xCF - lsls r0, 2 - add r0, r10 - mov r1, r9 - str r1, [r0] - mov r2, r8 - movs r3, 0x8 - ldrsh r1, [r2, r3] - ldr r0, _0808E254 - cmp r1, r0 - beq _0808E24E - cmp r1, 0 - beq _0808E24E - movs r0, 0xD2 - lsls r0, 1 - cmp r1, r0 - bne _0808E258 -_0808E24E: - movs r0, 0 - b _0808E396 - .align 2, 0 -_0808E254: .4byte 0x000001a5 -_0808E258: - mov r0, r8 - mov r1, sp - bl sub_808E3B8 - str r0, [sp, 0x10] - movs r5, 0 - cmp r9, r0 - blt _0808E26A - b _0808E38A -_0808E26A: - lsls r4, r5, 2 - mov r1, sp - adds r0, r1, r4 - movs r2, 0 - ldrsh r0, [r0, r2] - bl sub_8092B18 - adds r6, r0, 0 - str r4, [sp, 0x18] - adds r5, 0x1 - str r5, [sp, 0x14] - b _0808E35E -_0808E282: - movs r0, 0xCE - lsls r0, 1 - cmp r9, r0 - bgt _0808E35E - movs r7, 0x1 - ldrh r0, [r4] - cmp r0, 0xEE - bne _0808E2A4 - ldr r0, _0808E3A8 - mov r3, r8 - movs r4, 0x14 - ldrsh r1, [r3, r4] - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r1, r0 - bge _0808E2A4 - movs r7, 0 -_0808E2A4: - mov r3, r12 - ldrh r0, [r3] - cmp r0, 0xEF - bne _0808E2BE - ldr r0, _0808E3AC - mov r4, r8 - movs r2, 0x14 - ldrsh r1, [r4, r2] - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r1, r0 - bge _0808E2BE - movs r7, 0 -_0808E2BE: - mov r4, r12 - ldrh r1, [r4] - movs r0, 0x88 - lsls r0, 1 - cmp r1, r0 - bne _0808E2DC - ldr r0, _0808E3B0 - mov r2, r8 - movs r3, 0x14 - ldrsh r1, [r2, r3] - movs r4, 0 - ldrsh r0, [r0, r4] - cmp r1, r0 - bge _0808E2DC - movs r7, 0 -_0808E2DC: - mov r0, r12 - ldrh r1, [r0] - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bne _0808E2FA - ldr r0, _0808E3B4 - mov r2, r8 - movs r3, 0x14 - ldrsh r1, [r2, r3] - movs r4, 0 - ldrsh r0, [r0, r4] - cmp r1, r0 - bge _0808E2FA - movs r7, 0 -_0808E2FA: - movs r4, 0x1 - mov r5, r12 - mov r2, r8 - adds r2, 0x2C - movs r3, 0x3 -_0808E304: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0808E318 - ldrh r0, [r2, 0x2] - ldrh r1, [r5] - cmp r0, r1 - bne _0808E318 - movs r7, 0 -_0808E318: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _0808E304 - cmp r7, 0 - beq _0808E35E - movs r2, 0 - cmp r2, r9 - bge _0808E34A - mov r3, r10 - ldrh r0, [r3] - mov r4, r12 - ldrh r4, [r4] - cmp r0, r4 - beq _0808E34A - mov r3, r12 - mov r1, r10 -_0808E33A: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, r9 - bge _0808E34A - ldrh r0, [r1] - ldrh r4, [r3] - cmp r0, r4 - bne _0808E33A -_0808E34A: - cmp r2, r9 - bne _0808E35E - mov r1, r9 - lsls r0, r1, 1 - add r0, r10 - mov r2, r12 - ldrh r1, [r2] - strh r1, [r0] - movs r3, 0x1 - add r9, r3 -_0808E35E: - ldrb r0, [r6] - cmp r0, 0 - beq _0808E380 - add r4, sp, 0xC - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_808E07C - adds r6, r0, 0 - ldrb r0, [r6] - adds r6, 0x1 - ldr r1, [sp, 0x18] - add r1, sp - ldrb r1, [r1, 0x2] - mov r12, r4 - cmp r0, r1 - ble _0808E282 -_0808E380: - ldr r5, [sp, 0x14] - ldr r4, [sp, 0x10] - cmp r5, r4 - bge _0808E38A - b _0808E26A -_0808E38A: - movs r0, 0xCF - lsls r0, 2 - add r0, r10 - mov r1, r9 - str r1, [r0] - mov r0, r9 -_0808E396: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0808E3A8: .4byte gUnknown_810ACB8 -_0808E3AC: .4byte gUnknown_810ACBA -_0808E3B0: .4byte gUnknown_810ACBC -_0808E3B4: .4byte gUnknown_810ACBE - thumb_func_end sub_808E218 - - thumb_func_start sub_808E3B8 -sub_808E3B8: - push {r4-r7,lr} - ldrh r2, [r0, 0x8] - strh r2, [r1] - ldrb r2, [r0, 0x3] - strb r2, [r1, 0x2] - movs r7, 0x1 - movs r3, 0x8 - ldrsh r2, [r0, r3] - movs r6, 0 - adds r5, r0, 0 - adds r5, 0xC - adds r4, r1, 0x4 - b _0808E3E0 -_0808E3D2: - strh r2, [r4] - ldrb r0, [r5] - strb r0, [r4, 0x2] - adds r4, 0x4 - adds r7, 0x1 - adds r5, 0x4 - adds r6, 0x1 -_0808E3E0: - cmp r6, 0x1 - bgt _0808E3F8 - ldrb r0, [r5] - cmp r0, 0 - beq _0808E3F8 - adds r0, r2, 0 - bl sub_808DC0C - lsls r0, 16 - asrs r2, r0, 16 - cmp r2, 0 - bne _0808E3D2 -_0808E3F8: - adds r0, r7, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_808E3B8 - - thumb_func_start sub_808E400 -sub_808E400: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r0, 16 - asrs r0, 16 - mov r9, r0 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x4] - movs r0, 0 - mov r10, r0 - movs r7, 0x1 - adds r6, r1, 0 -_0808E426: - lsls r0, r7, 16 - asrs r5, r0, 16 - mov r8, r5 - adds r0, r5, 0 - bl sub_808DC0C - lsls r0, 16 - asrs r0, 16 - cmp r9, r0 - bne _0808E46C - ldr r0, [sp] - cmp r0, 0 - bne _0808E456 - mov r0, r9 - bl sub_808DACC - adds r4, r0, 0 - adds r0, r5, 0 - bl sub_808DACC - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - bne _0808E46C -_0808E456: - ldr r0, [sp, 0x4] - cmp r0, 0 - bne _0808E462 - ldr r0, _0808E488 - cmp r5, r0 - beq _0808E46C -_0808E462: - mov r0, r8 - strh r0, [r6] - adds r6, 0x2 - movs r0, 0x1 - add r10, r0 -_0808E46C: - adds r7, 0x1 - ldr r0, _0808E48C - cmp r7, r0 - ble _0808E426 - mov r0, r10 - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0808E488: .4byte 0x0000013d -_0808E48C: .4byte 0x000001a7 - thumb_func_end sub_808E400 - - thumb_func_start sub_808E490 -sub_808E490: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x20 - mov r8, r0 - lsls r1, 16 - asrs r1, 16 - ldr r3, _0808E4F8 - mov r0, sp - movs r2, 0x1 - bl sub_808E0AC - adds r7, r0, 0 - cmp r7, 0 - bne _0808E4B8 - movs r7, 0x1 - mov r1, sp - movs r0, 0xCC - lsls r0, 1 - strh r0, [r1] -_0808E4B8: - movs r4, 0 - cmp r4, r7 - bge _0808E4D8 - mov r6, sp - mov r5, r8 - adds r4, r7, 0 -_0808E4C4: - ldrh r1, [r6] - adds r0, r5, 0 - bl sub_8092AD4 - adds r6, 0x2 - adds r5, 0x8 - subs r4, 0x1 - cmp r4, 0 - bne _0808E4C4 - adds r4, r7, 0 -_0808E4D8: - cmp r4, 0x3 - bgt _0808E4EC - movs r1, 0 - lsls r0, r4, 3 - add r0, r8 -_0808E4E2: - strb r1, [r0] - adds r0, 0x8 - adds r4, 0x1 - cmp r4, 0x3 - ble _0808E4E2 -_0808E4EC: - add sp, 0x20 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808E4F8: .4byte 0x000003e7 - thumb_func_end sub_808E490 - - thumb_func_start sub_808E4FC -sub_808E4FC: - push {lr} - sub sp, 0x10 - ldr r1, _0808E518 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - mov r1, sp - bl sub_8097DF0 - ldr r0, [sp] - ldr r0, [r0] - add sp, 0x10 - pop {r1} - bx r1 - .align 2, 0 -_0808E518: .4byte gUnknown_810D628 - thumb_func_end sub_808E4FC - - thumb_func_start sub_808E51C -sub_808E51C: - push {lr} - sub sp, 0x10 - ldr r1, _0808E538 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - mov r1, sp - bl sub_8097DF0 - ldr r0, [sp] - ldr r0, [r0, 0x4] - add sp, 0x10 - pop {r1} - bx r1 - .align 2, 0 -_0808E538: .4byte gUnknown_810D628 - thumb_func_end sub_808E51C - - thumb_func_start sub_808E53C -sub_808E53C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r8, r0 - str r1, [sp] - ldr r0, _0808E628 - ldr r1, _0808E62C - bl OpenFileAndGetFileDataPtr - adds r7, r0, 0 - ldr r4, [r7, 0x4] - movs r6, 0x7 - adds r4, 0x4 - mov r1, r8 - lsls r0, r1, 5 - ldr r2, _0808E630 - adds r5, r0, r2 -_0808E564: - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x20 - bl CpuCopy - adds r5, 0x20 - adds r4, 0x20 - subs r6, 0x1 - cmp r6, 0 - bne _0808E564 - adds r0, r7, 0 - bl CloseFile - movs r6, 0 - movs r0, 0x3 - mov r12, r0 - ldr r1, _0808E634 - mov r10, r1 - ldr r2, _0808E638 - mov r9, r2 - ldr r5, _0808E63C - movs r7, 0 - mov r4, r12 - ldr r0, [sp] - ands r4, r0 - lsls r4, 10 -_0808E598: - lsls r3, r6, 3 - ldr r0, _0808E640 - adds r3, r0 - ldrh r1, [r3] - ldr r0, _0808E644 - ands r0, r1 - ldr r1, _0808E648 - ands r0, r1 - mov r2, r10 - ands r0, r2 - ldr r1, _0808E64C - ands r0, r1 - ldr r1, _0808E650 - ands r0, r1 - strh r0, [r3] - ldr r1, [r5] - mov r2, r12 - ands r1, r2 - lsls r1, 14 - mov r2, r9 - ands r0, r2 - orrs r0, r1 - strh r0, [r3] - ldrh r0, [r3, 0x2] - ldr r1, _0808E654 - ands r1, r0 - strh r1, [r3, 0x2] - ldr r0, _0808E63C - adds r0, 0x4 - adds r0, r7, r0 - ldr r0, [r0] - mov r2, r12 - ands r0, r2 - lsls r0, 14 - mov r2, r9 - ands r1, r2 - orrs r1, r0 - strh r1, [r3, 0x2] - ldr r1, [r5, 0x8] - add r1, r8 - ldr r0, _0808E658 - ands r1, r0 - ldrh r2, [r3, 0x4] - movs r0, 0xFC - lsls r0, 8 - ands r0, r2 - orrs r0, r1 - mov r1, r10 - ands r0, r1 - orrs r0, r4 - ldr r1, _0808E65C - ands r0, r1 - strh r0, [r3, 0x4] - ldrh r1, [r3, 0x6] - ldr r0, _0808E660 - ands r0, r1 - ldr r1, _0808E664 - ands r0, r1 - strh r0, [r3, 0x6] - adds r5, 0xC - adds r7, 0xC - adds r6, 0x1 - cmp r6, 0x2 - ble _0808E598 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808E628: .4byte gUnknown_81076BC -_0808E62C: .4byte gUnknown_83B0000 -_0808E630: .4byte 0x06010000 -_0808E634: .4byte 0x0000f3ff -_0808E638: .4byte 0x00003fff -_0808E63C: .4byte gUnknown_8107698 -_0808E640: .4byte gUnknown_202F3E8 -_0808E644: .4byte 0x0000feff -_0808E648: .4byte 0x0000fdff -_0808E64C: .4byte 0x0000efff -_0808E650: .4byte 0x0000dfff -_0808E654: .4byte 0x0000c1ff -_0808E658: .4byte 0x000003ff -_0808E65C: .4byte 0x00000fff -_0808E660: .4byte 0x0000fffe -_0808E664: .4byte 0x0000fffd - thumb_func_end sub_808E53C - - thumb_func_start sub_808E668 -sub_808E668: - push {r4,r5,lr} - adds r4, r1, 0 - adds r5, r2, 0 - lsls r0, 16 - asrs r1, r0, 16 - ldr r2, _0808E6E0 - adds r0, r2 - lsrs r0, 16 - cmp r0, 0x1 - bls _0808E6D6 - adds r0, r1, 0 - bl sub_808DAE4 - lsls r0, 24 - lsrs r0, 24 - movs r3, 0 - ldrsh r2, [r4, r3] - movs r3, 0x10 - ldrsh r1, [r5, r3] - adds r2, r1 - movs r1, 0x2 - ldrsh r3, [r4, r1] - movs r4, 0x12 - ldrsh r1, [r5, r4] - adds r3, r1 - ldr r4, _0808E6E4 - lsls r1, r0, 2 - adds r1, r4 - ldr r1, [r1] - adds r2, r1 - subs r3, 0x4 - ldr r1, _0808E6E8 - ands r2, r1 - lsls r0, 3 - ldr r1, _0808E6EC - adds r0, r1 - ldrh r4, [r0, 0x2] - movs r1, 0xFE - lsls r1, 8 - ands r1, r4 - orrs r1, r2 - strh r1, [r0, 0x2] - ldr r1, _0808E6F0 - ands r3, r1 - lsls r3, 4 - ldrh r2, [r0, 0x6] - movs r1, 0xF - ands r1, r2 - orrs r1, r3 - strh r1, [r0, 0x6] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl AddSprite -_0808E6D6: - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0808E6E0: .4byte 0xffce0000 -_0808E6E4: .4byte gUnknown_81076C4 -_0808E6E8: .4byte 0x000001ff -_0808E6EC: .4byte gUnknown_202F3E8 -_0808E6F0: .4byte 0x00000fff - thumb_func_end sub_808E668 - - thumb_func_start sub_808E6F4 -sub_808E6F4: - push {r4,r5,lr} - adds r5, r0, 0 - movs r0, 0xA - bl RandomCapped - ldr r1, _0808E70C - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - strh r0, [r5] - movs r4, 0 - b _0808E712 - .align 2, 0 -_0808E70C: .4byte gUnknown_810AC90 -_0808E710: - adds r4, 0x1 -_0808E712: - cmp r4, 0x63 - bgt _0808E724 - movs r0, 0x12 - bl RandomCapped - strb r0, [r5, 0x2] - lsls r0, 24 - cmp r0, 0 - beq _0808E710 -_0808E724: - cmp r4, 0x64 - bne _0808E72C - movs r0, 0x2 - strb r0, [r5, 0x2] -_0808E72C: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808E6F4 - - thumb_func_start sub_808E734 -sub_808E734: - push {r4-r6,lr} - lsls r0, 16 - asrs r4, r0, 16 - movs r3, 0 - ldr r0, _0808E75C - ldr r2, [r0] - movs r6, 0x1 - movs r5, 0xCE - lsls r5, 1 -_0808E746: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0808E760 - movs r1, 0x8 - ldrsh r0, [r2, r1] - cmp r0, r4 - bne _0808E760 - movs r0, 0x1 - b _0808E76A - .align 2, 0 -_0808E75C: .4byte gUnknown_203B45C -_0808E760: - adds r2, 0x58 - adds r3, 0x1 - cmp r3, r5 - ble _0808E746 - movs r0, 0 -_0808E76A: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_808E734 - - thumb_func_start sub_808E770 -sub_808E770: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - ldr r0, _0808E788 - cmp r1, r0 - beq _0808E792 - movs r0, 0xBD - lsls r0, 1 - cmp r1, r0 - bne _0808E78C - subs r0, 0x2 - b _0808E854 - .align 2, 0 -_0808E788: .4byte 0x00000179 -_0808E78C: - ldr r0, _0808E798 - cmp r1, r0 - bne _0808E79C -_0808E792: - movs r0, 0xBC - lsls r0, 1 - b _0808E854 - .align 2, 0 -_0808E798: .4byte 0x0000017b -_0808E79C: - cmp r1, 0xCA - beq _0808E80E - cmp r1, 0xCB - beq _0808E80E - cmp r1, 0xCC - beq _0808E80E - cmp r1, 0xCD - beq _0808E80E - cmp r1, 0xCE - beq _0808E80E - cmp r1, 0xCF - beq _0808E80E - cmp r1, 0xD0 - beq _0808E80E - cmp r1, 0xD1 - beq _0808E80E - cmp r1, 0xD2 - beq _0808E80E - cmp r1, 0xD3 - beq _0808E80E - cmp r1, 0xD4 - beq _0808E80E - cmp r1, 0xD5 - beq _0808E80E - cmp r1, 0xD6 - beq _0808E80E - cmp r1, 0xD7 - beq _0808E80E - cmp r1, 0xD8 - beq _0808E80E - cmp r1, 0xD9 - beq _0808E80E - cmp r1, 0xDA - beq _0808E80E - cmp r1, 0xDB - beq _0808E80E - cmp r1, 0xDC - beq _0808E80E - cmp r1, 0xDD - beq _0808E80E - cmp r1, 0xDE - beq _0808E80E - cmp r1, 0xDF - beq _0808E80E - cmp r1, 0xE0 - beq _0808E80E - cmp r1, 0xE1 - beq _0808E80E - cmp r1, 0xE2 - beq _0808E80E - ldr r0, _0808E814 - cmp r1, r0 - beq _0808E80E - movs r0, 0xD0 - lsls r0, 1 - cmp r1, r0 - bne _0808E818 -_0808E80E: - movs r0, 0xC9 - b _0808E854 - .align 2, 0 -_0808E814: .4byte 0x0000019f -_0808E818: - ldr r0, _0808E82C - cmp r1, r0 - beq _0808E836 - movs r0, 0xD1 - lsls r0, 1 - cmp r1, r0 - bne _0808E830 - subs r0, 0x4 - b _0808E854 - .align 2, 0 -_0808E82C: .4byte 0x000001a1 -_0808E830: - ldr r0, _0808E83C - cmp r1, r0 - bne _0808E840 -_0808E836: - movs r0, 0xCF - lsls r0, 1 - b _0808E854 - .align 2, 0 -_0808E83C: .4byte 0x000001a3 -_0808E840: - ldr r0, _0808E84C - cmp r1, r0 - beq _0808E850 - adds r0, r1, 0 - b _0808E854 - .align 2, 0 -_0808E84C: .4byte 0x000001a7 -_0808E850: - movs r0, 0xCE - lsls r0, 1 -_0808E854: - pop {r1} - bx r1 - thumb_func_end sub_808E770 - - thumb_func_start sub_808E858 -sub_808E858: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - adds r2, r1, 0 - ldr r0, _0808E874 - cmp r1, r0 - beq _0808E87E - movs r0, 0xBD - lsls r0, 1 - cmp r1, r0 - bne _0808E878 - subs r0, 0x2 - b _0808E8C4 - .align 2, 0 -_0808E874: .4byte 0x00000179 -_0808E878: - ldr r0, _0808E884 - cmp r1, r0 - bne _0808E888 -_0808E87E: - movs r0, 0xBC - lsls r0, 1 - b _0808E8C4 - .align 2, 0 -_0808E884: .4byte 0x0000017b -_0808E888: - ldr r0, _0808E89C - cmp r1, r0 - beq _0808E8A6 - movs r0, 0xD1 - lsls r0, 1 - cmp r1, r0 - bne _0808E8A0 - subs r0, 0x4 - b _0808E8C4 - .align 2, 0 -_0808E89C: .4byte 0x000001a1 -_0808E8A0: - ldr r0, _0808E8AC - cmp r1, r0 - bne _0808E8B0 -_0808E8A6: - movs r0, 0xCF - lsls r0, 1 - b _0808E8C4 - .align 2, 0 -_0808E8AC: .4byte 0x000001a3 -_0808E8B0: - ldr r0, _0808E8BC - cmp r2, r0 - beq _0808E8C0 - adds r0, r2, 0 - b _0808E8C4 - .align 2, 0 -_0808E8BC: .4byte 0x000001a7 -_0808E8C0: - movs r0, 0xCE - lsls r0, 1 -_0808E8C4: - pop {r1} - bx r1 - thumb_func_end sub_808E858 - - thumb_func_start sub_808E8C8 -sub_808E8C8: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0xCA - bne _0808E8D6 - movs r0, 0x1 - b _0808E9B2 -_0808E8D6: - cmp r1, 0xCB - bne _0808E8DE - movs r0, 0x2 - b _0808E9B2 -_0808E8DE: - cmp r1, 0xCC - bne _0808E8E6 - movs r0, 0x3 - b _0808E9B2 -_0808E8E6: - cmp r1, 0xCD - bne _0808E8EE - movs r0, 0x4 - b _0808E9B2 -_0808E8EE: - cmp r1, 0xCE - bne _0808E8F6 - movs r0, 0x5 - b _0808E9B2 -_0808E8F6: - cmp r1, 0xCF - bne _0808E8FE - movs r0, 0x6 - b _0808E9B2 -_0808E8FE: - cmp r1, 0xD0 - bne _0808E906 - movs r0, 0x7 - b _0808E9B2 -_0808E906: - cmp r1, 0xD1 - bne _0808E90E - movs r0, 0x8 - b _0808E9B2 -_0808E90E: - cmp r1, 0xD2 - bne _0808E916 - movs r0, 0x9 - b _0808E9B2 -_0808E916: - cmp r1, 0xD3 - bne _0808E91E - movs r0, 0xA - b _0808E9B2 -_0808E91E: - cmp r1, 0xD4 - bne _0808E926 - movs r0, 0xB - b _0808E9B2 -_0808E926: - cmp r1, 0xD5 - bne _0808E92E - movs r0, 0xC - b _0808E9B2 -_0808E92E: - cmp r1, 0xD6 - bne _0808E936 - movs r0, 0xD - b _0808E9B2 -_0808E936: - cmp r1, 0xD7 - bne _0808E93E - movs r0, 0xE - b _0808E9B2 -_0808E93E: - cmp r1, 0xD8 - bne _0808E946 - movs r0, 0xF - b _0808E9B2 -_0808E946: - cmp r1, 0xD9 - bne _0808E94E - movs r0, 0x10 - b _0808E9B2 -_0808E94E: - cmp r1, 0xDA - bne _0808E956 - movs r0, 0x11 - b _0808E9B2 -_0808E956: - cmp r1, 0xDB - bne _0808E95E - movs r0, 0x12 - b _0808E9B2 -_0808E95E: - cmp r1, 0xDC - bne _0808E966 - movs r0, 0x13 - b _0808E9B2 -_0808E966: - cmp r1, 0xDD - bne _0808E96E - movs r0, 0x14 - b _0808E9B2 -_0808E96E: - cmp r1, 0xDE - bne _0808E976 - movs r0, 0x15 - b _0808E9B2 -_0808E976: - cmp r1, 0xDF - bne _0808E97E - movs r0, 0x16 - b _0808E9B2 -_0808E97E: - cmp r1, 0xE0 - bne _0808E986 - movs r0, 0x17 - b _0808E9B2 -_0808E986: - cmp r1, 0xE1 - bne _0808E98E - movs r0, 0x18 - b _0808E9B2 -_0808E98E: - cmp r1, 0xE2 - bne _0808E996 - movs r0, 0x19 - b _0808E9B2 -_0808E996: - ldr r0, _0808E9A0 - cmp r1, r0 - bne _0808E9A4 - movs r0, 0x1A - b _0808E9B2 - .align 2, 0 -_0808E9A0: .4byte 0x0000019f -_0808E9A4: - movs r0, 0xD0 - lsls r0, 1 - cmp r1, r0 - beq _0808E9B0 - movs r0, 0 - b _0808E9B2 -_0808E9B0: - movs r0, 0x1B -_0808E9B2: - pop {r1} - bx r1 - thumb_func_end sub_808E8C8 - - thumb_func_start sub_808E9B8 -sub_808E9B8: - ldrh r1, [r0] - ldr r0, _0808E9C0 - ands r0, r1 - bx lr - .align 2, 0 -_0808E9C0: .4byte 0x000001ff - thumb_func_end sub_808E9B8 - - thumb_func_start sub_808E9C4 -sub_808E9C4: - lsls r1, 16 - asrs r1, 16 - ldrh r3, [r0] - movs r2, 0xFE - lsls r2, 8 - ands r2, r3 - orrs r2, r1 - strh r2, [r0] - bx lr - thumb_func_end sub_808E9C4 - - thumb_func_start sub_808E9D8 -sub_808E9D8: - lsls r2, 16 - asrs r2, 16 - lsls r1, 9 - orrs r2, r1 - strh r2, [r0] - bx lr - thumb_func_end sub_808E9D8 - - thumb_func_start sub_808E9E4 -sub_808E9E4: - ldrh r0, [r0] - lsrs r0, 9 - bx lr - thumb_func_end sub_808E9E4 - - thumb_func_start sub_808E9EC -sub_808E9EC: - push {r4-r6,lr} - adds r3, r1, 0 - ldrb r2, [r0, 0x18] - str r2, [r3] - ldrb r1, [r0, 0x19] - str r1, [r3, 0x4] - ldrb r1, [r0, 0x1A] - str r1, [r3, 0x8] - ldrb r1, [r0, 0x1B] - str r1, [r3, 0xC] - movs r1, 0 - strb r1, [r3, 0x10] - strb r1, [r3, 0x11] - strb r1, [r3, 0x12] - strb r1, [r3, 0x13] - adds r1, r0, 0 - adds r1, 0x28 - ldrb r0, [r1] - cmp r0, 0 - beq _0808EA96 - adds r4, r0, 0 - adds r5, r4, 0 - cmp r4, 0x13 - bne _0808EA2A - ldr r1, _0808EA9C - ldrh r0, [r1] - strb r0, [r3, 0x10] - movs r6, 0 - ldrsh r0, [r1, r6] - adds r0, r2, r0 - str r0, [r3] -_0808EA2A: - cmp r4, 0x21 - bne _0808EA42 - ldr r1, _0808EAA0 - ldrb r0, [r1] - ldrb r2, [r3, 0x11] - adds r0, r2 - strb r0, [r3, 0x11] - movs r6, 0 - ldrsh r1, [r1, r6] - ldr r0, [r3, 0x4] - adds r0, r1 - str r0, [r3, 0x4] -_0808EA42: - cmp r4, 0x2B - bne _0808EA66 - ldr r2, _0808EAA4 - ldrb r0, [r2] - ldrb r6, [r3, 0x10] - adds r1, r0, r6 - strb r1, [r3, 0x10] - ldrb r1, [r3, 0x11] - adds r0, r1 - strb r0, [r3, 0x11] - movs r6, 0 - ldrsh r1, [r2, r6] - ldr r0, [r3] - adds r0, r1 - str r0, [r3] - ldr r0, [r3, 0x4] - adds r0, r1 - str r0, [r3, 0x4] -_0808EA66: - cmp r4, 0x1E - bne _0808EA7E - ldr r1, _0808EAA8 - ldrb r0, [r1] - ldrb r2, [r3, 0x12] - adds r0, r2 - strb r0, [r3, 0x12] - movs r6, 0 - ldrsh r1, [r1, r6] - ldr r0, [r3, 0x8] - adds r0, r1 - str r0, [r3, 0x8] -_0808EA7E: - cmp r5, 0x22 - bne _0808EA96 - ldr r1, _0808EAAC - ldrb r0, [r1] - ldrb r2, [r3, 0x13] - adds r0, r2 - strb r0, [r3, 0x13] - movs r6, 0 - ldrsh r1, [r1, r6] - ldr r0, [r3, 0xC] - adds r0, r1 - str r0, [r3, 0xC] -_0808EA96: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808EA9C: .4byte gUnknown_810AC60 -_0808EAA0: .4byte gUnknown_810AC62 -_0808EAA4: .4byte gUnknown_810AC68 -_0808EAA8: .4byte gUnknown_810AC64 -_0808EAAC: .4byte gUnknown_810AC66 - thumb_func_end sub_808E9EC - - thumb_func_start sub_808EAB0 -sub_808EAB0: - lsls r0, 24 - ldr r1, _0808EABC - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_0808EABC: .4byte gUnknown_8112234 - thumb_func_end sub_808EAB0 - - thumb_func_start sub_808EAC0 -sub_808EAC0: - push {lr} - lsls r1, 24 - ldr r2, _0808EAD8 - lsrs r1, 22 - adds r1, r2 - ldr r1, [r1] - movs r2, 0x14 - bl strncpy - pop {r0} - bx r0 - .align 2, 0 -_0808EAD8: .4byte gUnknown_8112C14 - thumb_func_end sub_808EAC0 - - thumb_func_start sub_808EADC -sub_808EADC: - lsls r0, 24 - ldr r1, _0808EAE8 - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_0808EAE8: .4byte gUnknown_811240C - thumb_func_end sub_808EADC - - thumb_func_start sub_808EAEC -sub_808EAEC: - lsls r0, 24 - ldr r1, _0808EAF8 - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_0808EAF8: .4byte gUnknown_8112CFC - thumb_func_end sub_808EAEC - - thumb_func_start sub_808EAFC -sub_808EAFC: - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0808EB08 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0808EB08: .4byte gUnknown_810A36B - thumb_func_end sub_808EAFC - - thumb_func_start sub_808EB0C -sub_808EB0C: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0 - movs r3, 0 - ldr r1, _0808EB44 -_0808EB18: - movs r6, 0 - ldrsh r0, [r1, r6] - cmp r0, r5 - bgt _0808EB26 - adds r0, r4, r2 - strb r3, [r0] - adds r2, 0x1 -_0808EB26: - adds r1, 0x2 - adds r3, 0x1 - cmp r3, 0xB - ble _0808EB18 - cmp r2, 0xB - bgt _0808EB3E - movs r1, 0xB -_0808EB34: - adds r0, r4, r2 - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0xB - ble _0808EB34 -_0808EB3E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0808EB44: .4byte gUnknown_810A378 - thumb_func_end sub_808EB0C - - thumb_func_start sub_808EB48 -sub_808EB48: - push {r4-r7,lr} - adds r4, r1, 0 - movs r6, 0x1 - movs r5, 0 - adds r2, r0, 0 - ldr r1, _0808EB64 - movs r3, 0xB -_0808EB56: - movs r7, 0 - ldrsh r0, [r1, r7] - cmp r0, r4 - bgt _0808EB68 - strb r6, [r2] - b _0808EB6A - .align 2, 0 -_0808EB64: .4byte gUnknown_810A378 -_0808EB68: - strb r5, [r2] -_0808EB6A: - adds r2, 0x1 - adds r1, 0x2 - subs r3, 0x1 - cmp r3, 0 - bge _0808EB56 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_808EB48 - - thumb_func_start sub_808EB7C -sub_808EB7C: - push {lr} - adds r2, r0, 0 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0 - bne _0808EB8C - movs r0, 0 - b _0808EB9E -_0808EB8C: - movs r3, 0 - ldr r0, _0808EBA4 - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - cmp r0, r2 - bgt _0808EB9C - movs r3, 0x1 -_0808EB9C: - adds r0, r3, 0 -_0808EB9E: - pop {r1} - bx r1 - .align 2, 0 -_0808EBA4: .4byte gUnknown_810A390 - thumb_func_end sub_808EB7C - - thumb_func_start sub_808EBA8 -sub_808EBA8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - mov r8, r1 - movs r6, 0 - movs r5, 0x1 -_0808EBB6: - lsls r0, r5, 24 - lsrs r4, r0, 24 - mov r0, r8 - adds r1, r4, 0 - bl sub_808EB7C - lsls r0, 24 - cmp r0, 0 - beq _0808EBCE - adds r0, r7, r6 - strb r4, [r0] - adds r6, 0x1 -_0808EBCE: - adds r5, 0x1 - cmp r5, 0x17 - ble _0808EBB6 - adds r1, r6, 0 - cmp r6, 0x17 - bgt _0808EBE6 - movs r2, 0 -_0808EBDC: - adds r0, r7, r1 - strb r2, [r0] - adds r1, 0x1 - cmp r1, 0x17 - ble _0808EBDC -_0808EBE6: - adds r0, r6, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_808EBA8 - - thumb_func_start sub_808EBF4 -sub_808EBF4: - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r1, 0 - movs r5, 0x1 - lsls r5, r6 - adds r1, r5, 0 - bl sub_808ECD0 - lsls r0, 24 - cmp r0, 0 - beq _0808EC22 - ldrb r0, [r4] - bics r0, r5 - strb r0, [r4] - asrs r1, r5, 8 - ldrb r0, [r4, 0x1] - bics r0, r1 - strb r0, [r4, 0x1] - asrs r1, r5, 16 - ldrb r0, [r4, 0x2] - bics r0, r1 - strb r0, [r4, 0x2] - b _0808EC2A -_0808EC22: - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_808EC30 -_0808EC2A: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_808EBF4 - - thumb_func_start sub_808EC30 -sub_808EC30: - push {r4-r7,lr} - adds r3, r0, 0 - adds r7, r1, 0 - movs r4, 0 - ldr r1, _0808EC90 - lsls r0, r7, 2 - adds r0, r1 - ldr r6, [r0] - adds r5, r1, 0 - movs r0, 0x1 - mov r12, r0 -_0808EC46: - ldr r0, [r5] - cmp r6, r0 - bne _0808EC66 - mov r1, r12 - lsls r1, r4 - ldrb r0, [r3] - bics r0, r1 - strb r0, [r3] - asrs r2, r1, 8 - ldrb r0, [r3, 0x1] - bics r0, r2 - strb r0, [r3, 0x1] - asrs r1, 16 - ldrb r0, [r3, 0x2] - bics r0, r1 - strb r0, [r3, 0x2] -_0808EC66: - adds r5, 0x4 - adds r4, 0x1 - cmp r4, 0x17 - ble _0808EC46 - movs r1, 0x1 - lsls r1, r7 - ldrb r2, [r3] - adds r0, r1, 0 - orrs r0, r2 - strb r0, [r3] - asrs r0, r1, 8 - ldrb r2, [r3, 0x1] - orrs r0, r2 - strb r0, [r3, 0x1] - asrs r1, 16 - ldrb r0, [r3, 0x2] - orrs r1, r0 - strb r1, [r3, 0x2] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808EC90: .4byte gUnknown_81076E4 - thumb_func_end sub_808EC30 - - thumb_func_start sub_808EC94 -sub_808EC94: - push {r4,r5,lr} - adds r5, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - movs r0, 0 - strb r0, [r5] - strb r0, [r5, 0x1] - strb r0, [r5, 0x2] - adds r0, r5, 0 - movs r1, 0x2 - bl sub_808EC30 - adds r0, r5, 0 - movs r1, 0x3 - bl sub_808EC30 - adds r0, r5, 0 - movs r1, 0x16 - bl sub_808EC30 - cmp r4, 0 - beq _0808ECC8 - adds r0, r5, 0 - movs r1, 0x12 - bl sub_808EC30 -_0808ECC8: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808EC94 - - thumb_func_start sub_808ECD0 -sub_808ECD0: - push {lr} - adds r2, r0, 0 - adds r3, r1, 0 - ldrb r0, [r2] - ands r0, r3 - cmp r0, 0 - bne _0808ECF6 - ldrb r0, [r2, 0x1] - lsrs r1, r3, 8 - ands r0, r1 - cmp r0, 0 - bne _0808ECF6 - ldrb r0, [r2, 0x2] - lsrs r1, r3, 16 - ands r0, r1 - cmp r0, 0 - bne _0808ECF6 - movs r0, 0 - b _0808ECF8 -_0808ECF6: - movs r0, 0x1 -_0808ECF8: - pop {r1} - bx r1 - thumb_func_end sub_808ECD0 - - thumb_func_start sub_808ECFC -sub_808ECFC: - movs r0, 0 - bx lr - thumb_func_end sub_808ECFC - - thumb_func_start sub_808ED00 -sub_808ED00: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - mov r0, sp - bl sub_808D580 - adds r6, r0, 0 - movs r4, 0 - cmp r4, r6 - bge _0808ED44 - movs r0, 0x58 - mov r8, r0 - mov r7, sp - movs r5, 0 - adds r4, r6, 0 -_0808ED20: - ldr r0, _0808ED70 - ldr r1, [r0] - adds r0, r1, r5 - ldr r2, _0808ED74 - adds r0, r2 - ldm r7!, {r2} - mov r3, r8 - muls r3, r2 - adds r2, r3, 0 - adds r1, r2 - movs r2, 0x58 - bl memcpy - adds r5, 0x58 - subs r4, 0x1 - cmp r4, 0 - bne _0808ED20 - adds r4, r6, 0 -_0808ED44: - cmp r4, 0x3 - bgt _0808ED64 - ldr r5, _0808ED70 - ldr r3, _0808ED74 - movs r2, 0 - movs r0, 0x58 - adds r1, r4, 0 - muls r1, r0 -_0808ED54: - ldr r0, [r5] - adds r0, r1 - adds r0, r3 - strh r2, [r0] - adds r1, 0x58 - adds r4, 0x1 - cmp r4, 0x3 - ble _0808ED54 -_0808ED64: - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808ED70: .4byte gUnknown_203B45C -_0808ED74: .4byte 0x00008f88 - thumb_func_end sub_808ED00 - - thumb_func_start sub_808ED78 -sub_808ED78: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - adds r3, r0, 0 - adds r2, r1, 0 - add r4, sp, 0xC - adds r0, r4, 0 - adds r1, r3, 0 - bl sub_809486C - mov r10, r4 - mov r0, sp - adds r0, 0x1E - str r0, [sp, 0x20] - add r1, sp, 0x1C - mov r8, r1 - ldr r0, _0808EDF0 - adds r2, r0, 0 - mov r1, sp - movs r5, 0x5 -_0808EDA6: - ldrh r0, [r1] - orrs r0, r2 - strh r0, [r1] - adds r1, 0x2 - subs r5, 0x1 - cmp r5, 0 - bge _0808EDA6 - movs r0, 0x1 - negs r0, r0 - ldr r1, [sp, 0x20] - strh r0, [r1] - movs r5, 0 - mov r4, sp -_0808EDC0: - ldr r2, _0808EDF4 - movs r0, 0x58 - adds r1, r5, 0 - muls r1, r0 - ldr r0, [r2] - adds r1, r0, r1 - ldrh r2, [r1] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _0808EDF8 - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - beq _0808EDE2 - strh r5, [r4] - adds r4, 0x2 -_0808EDE2: - ldrb r0, [r1, 0x2] - cmp r0, 0 - beq _0808EDFA - ldr r0, [sp, 0x20] - strh r5, [r0] - b _0808EDFA - .align 2, 0 -_0808EDF0: .4byte 0x0000ffff -_0808EDF4: .4byte gUnknown_203B45C -_0808EDF8: - strb r0, [r1, 0x3] -_0808EDFA: - mov r0, r10 - bl sub_808EFA0 - adds r5, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r5, r0 - ble _0808EDC0 - ldr r1, _0808EE34 - mov r9, r1 - mov r4, r10 - ldr r7, _0808EE38 - movs r6, 0 - movs r5, 0x3 -_0808EE16: - mov r1, r9 - ldr r0, [r1] - adds r0, r6, r0 - ldr r1, _0808EE38 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0808EE3C - movs r0, 0xFF - mov r1, r8 - strb r0, [r1] - b _0808EE40 - .align 2, 0 -_0808EE34: .4byte gUnknown_203B45C -_0808EE38: .4byte 0x00008f88 -_0808EE3C: - mov r0, r8 - strb r1, [r0] -_0808EE40: - adds r0, r4, 0 - mov r1, r8 - movs r2, 0x1 - bl sub_809488C - mov r0, r9 - ldr r1, [r0] - adds r1, r7 - adds r0, r4, 0 - bl sub_808EFA0 - adds r7, 0x58 - adds r6, 0x58 - subs r5, 0x1 - cmp r5, 0 - bge _0808EE16 - mov r4, sp - movs r5, 0x5 -_0808EE64: - mov r0, r10 - adds r1, r4, 0 - movs r2, 0x10 - bl sub_809488C - adds r4, 0x2 - subs r5, 0x1 - cmp r5, 0 - bge _0808EE64 - mov r0, r10 - ldr r1, [sp, 0x20] - movs r2, 0x10 - bl sub_809488C - mov r0, r10 - bl nullsub_102 - mov r1, r10 - ldr r0, [r1, 0x8] - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_808ED78 - - thumb_func_start sub_808EE9C -sub_808EE9C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809485C - movs r5, 0 - add r7, sp, 0x10 - movs r0, 0x12 - add r0, sp - mov r8, r0 - ldr r6, _0808EF10 - movs r4, 0 -_0808EEBE: - ldr r1, [r6] - adds r1, r4 - mov r0, sp - bl sub_808F068 - adds r4, 0x58 - adds r5, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r5, r0 - ble _0808EEBE - movs r5, 0 - adds r6, r7, 0 - ldr r7, _0808EF10 -_0808EEDA: - mov r0, sp - adds r1, r6, 0 - movs r2, 0x1 - bl sub_8094924 - movs r0, 0x58 - adds r4, r5, 0 - muls r4, r0 - ldr r1, _0808EF14 - adds r0, r4, r1 - ldr r1, [r7] - adds r1, r0 - mov r0, sp - bl sub_808F068 - ldrb r0, [r6] - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0808EF18 - ldr r0, [r7] - adds r0, r4 - ldr r2, _0808EF14 - adds r0, r2 - movs r1, 0x3 - b _0808EF20 - .align 2, 0 -_0808EF10: .4byte gUnknown_203B45C -_0808EF14: .4byte 0x00008f88 -_0808EF18: - ldr r0, [r7] - adds r0, r4 - ldr r3, _0808EF98 - adds r0, r3 -_0808EF20: - strh r1, [r0] - adds r5, 0x1 - cmp r5, 0x3 - ble _0808EEDA - mov r4, r8 - movs r6, 0xCE - lsls r6, 1 - movs r5, 0x5 -_0808EF30: - mov r0, sp - adds r1, r4, 0 - movs r2, 0x10 - bl sub_8094924 - ldrh r0, [r4] - cmp r0, r6 - bhi _0808EF56 - ldr r0, _0808EF9C - ldr r2, [r0] - movs r0, 0 - ldrsh r1, [r4, r0] - movs r0, 0x58 - muls r0, r1 - adds r2, r0 - ldrh r1, [r2] - movs r0, 0x2 - orrs r0, r1 - strh r0, [r2] -_0808EF56: - subs r5, 0x1 - cmp r5, 0 - bge _0808EF30 - mov r0, sp - mov r1, r8 - movs r2, 0x10 - bl sub_8094924 - mov r2, r8 - ldrh r1, [r2] - movs r0, 0xCE - lsls r0, 1 - cmp r1, r0 - bhi _0808EF84 - ldr r0, _0808EF9C - ldr r1, [r0] - movs r3, 0 - ldrsh r2, [r2, r3] - movs r0, 0x58 - muls r0, r2 - adds r1, r0 - movs r0, 0x1 - strb r0, [r1, 0x2] -_0808EF84: - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0808EF98: .4byte 0x00008f88 -_0808EF9C: .4byte gUnknown_203B45C - thumb_func_end sub_808EE9C - - thumb_func_start sub_808EFA0 -sub_808EFA0: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r1, r5, 0x3 - movs r2, 0x7 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x8 - adds r0, r4, 0 - movs r2, 0x9 - bl sub_809488C - adds r1, r5, 0x4 - adds r0, r4, 0 - bl sub_80902F4 - adds r1, r5, 0 - adds r1, 0xC - adds r0, r4, 0 - bl sub_808F41C - adds r1, r5, 0 - adds r1, 0x10 - adds r0, r4, 0 - bl sub_808F41C - adds r1, r5, 0 - adds r1, 0x14 - adds r0, r4, 0 - movs r2, 0xA - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x16 - adds r0, r4, 0 - movs r2, 0xA - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x18 - adds r0, r4, 0 - movs r2, 0x8 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x19 - adds r0, r4, 0 - movs r2, 0x8 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x1A - adds r0, r4, 0 - movs r2, 0x8 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x1B - adds r0, r4, 0 - movs r2, 0x8 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x1C - adds r0, r4, 0 - movs r2, 0x18 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x20 - adds r0, r4, 0 - movs r2, 0x18 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x24 - adds r0, r4, 0 - movs r2, 0x4 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x28 - adds r0, r4, 0 - bl sub_8091DE0 - adds r1, r5, 0 - adds r1, 0x2C - adds r0, r4, 0 - bl sub_8094108 - adds r1, r5, 0 - adds r1, 0x4C - adds r0, r4, 0 - movs r2, 0x50 - bl sub_809488C - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808EFA0 - - thumb_func_start sub_808F068 -sub_808F068: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x58 - bl memset - movs r6, 0 - movs r0, 0 - strh r0, [r4] - strb r6, [r4, 0x2] - adds r1, r4, 0x3 - adds r0, r5, 0 - movs r2, 0x7 - bl sub_8094924 - ldrb r0, [r4, 0x3] - cmp r0, 0 - beq _0808F098 - ldrh r0, [r4] - movs r1, 0x1 - orrs r0, r1 - strh r0, [r4] -_0808F098: - adds r1, r4, 0 - adds r1, 0x8 - adds r0, r5, 0 - movs r2, 0x9 - bl sub_8094924 - adds r1, r4, 0x4 - adds r0, r5, 0 - bl sub_8090314 - adds r1, r4, 0 - adds r1, 0xC - adds r0, r5, 0 - bl sub_808F410 - adds r1, r4, 0 - adds r1, 0x10 - adds r0, r5, 0 - bl sub_808F410 - adds r1, r4, 0 - adds r1, 0x14 - adds r0, r5, 0 - movs r2, 0xA - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x16 - adds r0, r5, 0 - movs r2, 0xA - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x18 - adds r0, r5, 0 - movs r2, 0x8 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x19 - adds r0, r5, 0 - movs r2, 0x8 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x1A - adds r0, r5, 0 - movs r2, 0x8 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x1B - adds r0, r5, 0 - movs r2, 0x8 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x1C - adds r0, r5, 0 - movs r2, 0x18 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x20 - adds r0, r5, 0 - movs r2, 0x18 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x24 - adds r0, r5, 0 - movs r2, 0x4 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x28 - adds r0, r5, 0 - bl sub_8091DC0 - adds r1, r4, 0 - adds r1, 0x2C - adds r0, r5, 0 - bl sub_8094128 - adds r1, r4, 0 - adds r1, 0x4C - adds r0, r5, 0 - movs r2, 0x50 - bl sub_8094924 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_808F068 - - thumb_func_start sub_808F154 -sub_808F154: - push {r4-r7,lr} - sub sp, 0x14 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809486C - add r2, sp, 0x10 - movs r0, 0xFF - strb r0, [r2] - mov r1, sp - adds r1, 0x11 - movs r0, 0 - strb r0, [r1] - movs r5, 0 - adds r6, r2, 0 - adds r7, r1, 0 -_0808F178: - ldr r1, _0808F2A8 - movs r0, 0x64 - muls r0, r5 - ldr r2, _0808F2AC - adds r0, r2 - ldr r1, [r1] - adds r4, r1, r0 - mov r0, sp - adds r1, r4, 0 - movs r2, 0x2 - bl sub_809488C - ldrb r0, [r4, 0x2] - adds r1, r7, 0 - cmp r0, 0 - beq _0808F19A - adds r1, r6, 0 -_0808F19A: - mov r0, sp - movs r2, 0x1 - bl sub_809488C - adds r1, r4, 0x3 - mov r0, sp - movs r2, 0x7 - bl sub_809488C - adds r1, r4, 0x4 - mov r0, sp - bl sub_80902F4 - adds r1, r4, 0 - adds r1, 0x8 - mov r0, sp - movs r2, 0xA - bl sub_809488C - adds r1, r4, 0 - adds r1, 0xA - mov r0, sp - movs r2, 0x10 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0xC - mov r0, sp - movs r2, 0x10 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0xE - mov r0, sp - movs r2, 0x9 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x10 - mov r0, sp - movs r2, 0xA - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x12 - mov r0, sp - movs r2, 0xA - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x14 - mov r0, sp - movs r2, 0x8 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x15 - mov r0, sp - movs r2, 0x8 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x16 - mov r0, sp - movs r2, 0x8 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x17 - mov r0, sp - movs r2, 0x8 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x18 - mov r0, sp - movs r2, 0x18 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x1C - mov r0, sp - bl sub_8094184 - adds r1, r4, 0 - adds r1, 0x40 - mov r0, sp - bl sub_8091E28 - adds r1, r4, 0 - adds r1, 0x44 - mov r0, sp - bl sub_809449C - adds r1, r4, 0 - adds r1, 0x48 - mov r0, sp - bl sub_809449C - adds r1, r4, 0 - adds r1, 0x4C - mov r0, sp - movs r2, 0x18 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x50 - mov r0, sp - movs r2, 0x4 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x54 - mov r0, sp - bl sub_808F448 - adds r1, r4, 0 - adds r1, 0x58 - mov r0, sp - movs r2, 0x50 - bl sub_809488C - adds r5, 0x1 - cmp r5, 0x3 - bgt _0808F296 - b _0808F178 -_0808F296: - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x14 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0808F2A8: .4byte gUnknown_203B45C -_0808F2AC: .4byte 0x00008df8 - thumb_func_end sub_808F154 - - thumb_func_start sub_808F2B0 -sub_808F2B0: - push {r4-r6,lr} - sub sp, 0x14 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809485C - movs r5, 0 - add r6, sp, 0x10 -_0808F2C4: - ldr r1, _0808F300 - movs r0, 0x64 - muls r0, r5 - ldr r2, _0808F304 - adds r0, r2 - ldr r1, [r1] - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x64 - bl memset - mov r0, sp - adds r1, r4, 0 - movs r2, 0x2 - bl sub_8094924 - mov r0, sp - adds r1, r6, 0 - movs r2, 0x1 - bl sub_8094924 - ldrb r0, [r6] - movs r2, 0x1 - adds r1, r2, 0 - ands r1, r0 - cmp r1, 0 - beq _0808F308 - strb r2, [r4, 0x2] - b _0808F30A - .align 2, 0 -_0808F300: .4byte gUnknown_203B45C -_0808F304: .4byte 0x00008df8 -_0808F308: - strb r1, [r4, 0x2] -_0808F30A: - adds r1, r4, 0x3 - mov r0, sp - movs r2, 0x7 - bl sub_8094924 - adds r1, r4, 0x4 - mov r0, sp - bl sub_8090314 - adds r1, r4, 0 - adds r1, 0x8 - mov r0, sp - movs r2, 0xA - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0xA - mov r0, sp - movs r2, 0x10 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0xC - mov r0, sp - movs r2, 0x10 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0xE - mov r0, sp - movs r2, 0x9 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x10 - mov r0, sp - movs r2, 0xA - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x12 - mov r0, sp - movs r2, 0xA - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x14 - mov r0, sp - movs r2, 0x8 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x15 - mov r0, sp - movs r2, 0x8 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x16 - mov r0, sp - movs r2, 0x8 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x17 - mov r0, sp - movs r2, 0x8 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x18 - mov r0, sp - movs r2, 0x18 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x1C - mov r0, sp - bl sub_80941FC - adds r1, r4, 0 - adds r1, 0x40 - mov r0, sp - bl sub_8091E00 - adds r1, r4, 0 - adds r1, 0x44 - mov r0, sp - bl sub_809447C - adds r1, r4, 0 - adds r1, 0x48 - mov r0, sp - bl sub_809447C - adds r1, r4, 0 - adds r1, 0x4C - mov r0, sp - movs r2, 0x18 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x50 - mov r0, sp - movs r2, 0x4 - bl sub_8094924 - adds r1, r4, 0 - adds r1, 0x54 - mov r0, sp - bl sub_808F428 - adds r1, r4, 0 - adds r1, 0x58 - mov r0, sp - movs r2, 0x50 - bl sub_8094924 - adds r5, 0x1 - cmp r5, 0x3 - bgt _0808F3FE - b _0808F2C4 -_0808F3FE: - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x14 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_808F2B0 - - thumb_func_start sub_808F410 -sub_808F410: - push {lr} - movs r2, 0x7 - bl sub_8094924 - pop {r0} - bx r0 - thumb_func_end sub_808F410 - - thumb_func_start sub_808F41C -sub_808F41C: - push {lr} - movs r2, 0x7 - bl sub_809488C - pop {r0} - bx r0 - thumb_func_end sub_808F41C - - thumb_func_start sub_808F428 -sub_808F428: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0xA - bl sub_8094924 - adds r4, 0x2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x5 - bl sub_8094924 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808F428 - - thumb_func_start sub_808F448 -sub_808F448: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0xA - bl sub_809488C - adds r4, 0x2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x5 - bl sub_809488C - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_808F448 - - thumb_func_start sub_808F468 -sub_808F468: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - mov r8, r0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x14] - movs r0, 0 - strh r0, [r4, 0x4] - movs r0, 0x1 - str r0, [sp, 0x18] - add r7, sp, 0xC -_0808F488: - ldr r1, [sp, 0x18] - lsls r0, r1, 16 - asrs r0, 16 - cmp r0, 0x41 - bne _0808F49C - movs r0, 0x41 - adds r1, r7, 0 - bl sub_808DD48 - b _0808F4A2 -_0808F49C: - adds r1, r7, 0 - bl sub_808DD48 -_0808F4A2: - ldrh r0, [r7, 0x2] - cmp r0, 0 - beq _0808F4B6 - mov r2, r8 - movs r3, 0x8 - ldrsh r1, [r2, r3] - movs r2, 0 - ldrsh r0, [r7, r2] - cmp r1, r0 - beq _0808F4C2 -_0808F4B6: - ldr r3, [sp, 0x18] - adds r3, 0x1 - str r3, [sp, 0x18] - ldr r0, _0808F4D4 - cmp r3, r0 - ble _0808F488 -_0808F4C2: - movs r0, 0xD4 - lsls r0, 1 - ldr r1, [sp, 0x18] - cmp r1, r0 - bne _0808F4D8 - movs r0, 0x4 - strh r0, [r4, 0x4] - b _0808F6EC - .align 2, 0 -_0808F4D4: .4byte 0x000001a7 -_0808F4D8: - movs r2, 0x1 - str r2, [sp, 0x18] - movs r3, 0x8 - mov r10, r3 -_0808F4E0: - movs r0, 0 - mov r9, r0 - ldr r1, [sp, 0x18] - lsls r0, r1, 16 - asrs r0, 16 - str r0, [sp, 0x1C] - adds r1, r7, 0 - bl sub_808DD48 - ldrh r0, [r7, 0x2] - cmp r0, 0 - bne _0808F4FA - b _0808F6DE -_0808F4FA: - mov r2, r8 - movs r3, 0x8 - ldrsh r1, [r2, r3] - movs r2, 0 - ldrsh r0, [r7, r2] - cmp r1, r0 - beq _0808F50A - b _0808F6DE -_0808F50A: - ldr r0, [sp, 0x1C] - bl sub_808DBA8 - lsls r0, 24 - lsrs r5, r0, 24 - mov r3, r8 - movs r1, 0x8 - ldrsh r0, [r3, r1] - bl sub_808DBA8 - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r5, 0 - mov r1, sp - movs r2, 0 - movs r3, 0 - bl sub_8092638 - mov r0, sp - ldrb r0, [r0, 0x4] - cmp r0, 0 - bne _0808F544 - ldrh r0, [r4, 0x4] - movs r1, 0x20 - orrs r0, r1 - strh r0, [r4, 0x4] - movs r2, 0x1 - mov r9, r2 - b _0808F566 -_0808F544: - mov r0, sp - movs r3, 0x2 - ldrsh r1, [r0, r3] - cmp r5, r6 - bne _0808F550 - subs r1, 0x1 -_0808F550: - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, r1 - bgt _0808F566 - ldrh r0, [r4, 0x4] - movs r1, 0x40 - orrs r0, r1 - strh r0, [r4, 0x4] - movs r3, 0x1 - mov r9, r3 -_0808F566: - ldrh r0, [r7, 0x2] - cmp r0, 0x1 - bne _0808F588 - ldrh r2, [r4, 0x4] - ands r0, r2 - cmp r0, 0 - beq _0808F576 - b _0808F6DE -_0808F576: - mov r0, r8 - ldrb r1, [r0, 0x3] - movs r3, 0x4 - ldrsh r0, [r7, r3] - cmp r1, r0 - bge _0808F5E6 - movs r0, 0x2 - orrs r0, r2 - b _0808F5C8 -_0808F588: - cmp r0, 0x2 - bne _0808F5A8 - mov r2, r8 - movs r3, 0x14 - ldrsh r1, [r2, r3] - movs r2, 0x4 - ldrsh r0, [r7, r2] - cmp r1, r0 - bge _0808F5E6 - ldrh r0, [r4, 0x4] - movs r1, 0x10 - orrs r0, r1 - strh r0, [r4, 0x4] - movs r3, 0x1 - mov r9, r3 - b _0808F5E6 -_0808F5A8: - cmp r0, 0x3 - bne _0808F5E6 - ldr r0, [sp, 0x14] - cmp r0, 0 - beq _0808F5D0 - ldrb r0, [r4] - movs r2, 0x4 - ldrsh r1, [r7, r2] - cmp r0, r1 - beq _0808F5E6 - ldrb r0, [r4, 0x1] - cmp r0, r1 - beq _0808F5E6 - ldrh r0, [r4, 0x4] - mov r3, r10 - orrs r0, r3 -_0808F5C8: - strh r0, [r4, 0x4] - movs r0, 0x1 - mov r9, r0 - b _0808F5E6 -_0808F5D0: - ldrb r0, [r7, 0x4] - bl sub_8091130 - cmp r0, 0 - bge _0808F5E6 - ldrh r0, [r4, 0x4] - mov r1, r10 - orrs r0, r1 - strh r0, [r4, 0x4] - movs r2, 0x1 - mov r9, r2 -_0808F5E6: - ldrh r0, [r7, 0x6] - cmp r0, 0x4 - bne _0808F604 - ldr r3, [sp, 0x14] - cmp r3, 0 - beq _0808F600 - ldrb r0, [r4] - cmp r0, 0x76 - beq _0808F6CA - ldrb r0, [r4, 0x1] - cmp r0, 0x76 - beq _0808F6CA - b _0808F666 -_0808F600: - movs r0, 0x76 - b _0808F672 -_0808F604: - cmp r0, 0x5 - bne _0808F614 - mov r3, r8 - ldrb r0, [r3, 0x18] - ldrb r1, [r3, 0x1A] - cmp r0, r1 - bhi _0808F6CA - b _0808F6DE -_0808F614: - cmp r0, 0x6 - bne _0808F624 - mov r2, r8 - ldrb r0, [r2, 0x18] - ldrb r3, [r2, 0x1A] - cmp r0, r3 - bcc _0808F6CA - b _0808F6DE -_0808F624: - cmp r0, 0x7 - bne _0808F634 - mov r1, r8 - ldrb r0, [r1, 0x18] - ldrb r2, [r1, 0x1A] - cmp r0, r2 - beq _0808F6CA - b _0808F6DE -_0808F634: - cmp r0, 0x8 - bne _0808F650 - ldr r3, [sp, 0x14] - cmp r3, 0 - beq _0808F64C - ldrb r0, [r4] - cmp r0, 0x30 - beq _0808F6CA - ldrb r0, [r4, 0x1] - cmp r0, 0x30 - beq _0808F6CA - b _0808F666 -_0808F64C: - movs r0, 0x30 - b _0808F672 -_0808F650: - cmp r0, 0x9 - bne _0808F684 - ldr r3, [sp, 0x14] - cmp r3, 0 - beq _0808F670 - ldrb r0, [r4] - cmp r0, 0x31 - beq _0808F6CA - ldrb r0, [r4, 0x1] - cmp r0, 0x31 - beq _0808F6CA -_0808F666: - ldrh r0, [r4, 0x4] - mov r1, r10 - orrs r0, r1 - strh r0, [r4, 0x4] - b _0808F6DE -_0808F670: - movs r0, 0x31 -_0808F672: - bl sub_8091130 - cmp r0, 0 - bge _0808F6CA - ldrh r0, [r4, 0x4] - mov r2, r10 - orrs r0, r2 - strh r0, [r4, 0x4] - b _0808F6DE -_0808F684: - cmp r0, 0xB - bne _0808F694 - ldrb r1, [r4, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808F6CA - b _0808F6DE -_0808F694: - cmp r0, 0xC - bne _0808F6A4 - ldrb r1, [r4, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0808F6CA - b _0808F6DE -_0808F6A4: - cmp r0, 0xA - bne _0808F6CA - ldr r3, [sp, 0x14] - cmp r3, 0 - beq _0808F6BC - ldrb r0, [r4] - cmp r0, 0x2F - beq _0808F6CA - ldrb r0, [r4, 0x1] - cmp r0, 0x2F - beq _0808F6CA - b _0808F6DE -_0808F6BC: - movs r0, 0x2F - bl sub_8091130 - cmp r0, 0 - bge _0808F6CA - movs r0, 0x1 - mov r9, r0 -_0808F6CA: - mov r1, r9 - cmp r1, 0 - bne _0808F6DE - ldrh r0, [r4, 0x4] - movs r1, 0x1 - orrs r0, r1 - strh r0, [r4, 0x4] - mov r2, sp - ldrh r2, [r2, 0x1C] - strh r2, [r4, 0x6] -_0808F6DE: - ldr r3, [sp, 0x18] - adds r3, 0x1 - str r3, [sp, 0x18] - ldr r0, _0808F6FC - cmp r3, r0 - bgt _0808F6EC - b _0808F4E0 -_0808F6EC: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808F6FC: .4byte 0x000001a7 - thumb_func_end sub_808F468 - - thumb_func_start sub_808F700 -sub_808F700: - push {r4,lr} - sub sp, 0x8 - mov r4, sp - mov r1, sp - movs r2, 0 - bl sub_808F468 - ldrh r1, [r4, 0x4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808F71C - movs r0, 0x1 - b _0808F72A -_0808F71C: - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _0808F728 - movs r0, 0 - b _0808F72A -_0808F728: - movs r0, 0x2 -_0808F72A: - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_808F700 - - thumb_func_start sub_808F734 -sub_808F734: - push {r4-r7,lr} - sub sp, 0x58 - adds r5, r0, 0 - lsls r4, r1, 16 - asrs r4, 16 - movs r6, 0 - mov r0, sp - adds r1, r5, 0 - movs r2, 0x58 - bl memcpy - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_808F798 - adds r7, r0, 0 - movs r0, 0x9E - lsls r0, 1 - cmp r4, r0 - bne _0808F782 - mov r0, sp - strb r6, [r0, 0x2] - add r0, sp, 0x28 - strb r6, [r0] - add r4, sp, 0x4C - ldr r5, _0808F794 - adds r0, r5, 0 - bl sub_808D994 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0xA - bl sub_8092310 - mov r0, sp - adds r1, r5, 0 - bl sub_808F798 - adds r6, r0, 0 -_0808F782: - cmp r6, 0 - beq _0808F78A - bl sub_8097848 -_0808F78A: - adds r0, r7, 0 - add sp, 0x58 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0808F794: .4byte 0x0000013d - thumb_func_end sub_808F734 - - thumb_func_start sub_808F798 -sub_808F798: - push {r4-r6,lr} - sub sp, 0xA4 - adds r4, r0, 0 - lsls r1, 16 - asrs r5, r1, 16 - mov r0, sp - adds r1, r4, 0 - movs r2, 0x58 - bl memcpy - mov r0, sp - movs r1, 0x8 - ldrsh r6, [r0, r1] - add r0, sp, 0x58 - mov r1, sp - ldrb r2, [r1, 0x3] - adds r1, r5, 0 - bl sub_808E010 - ldr r0, [sp, 0x58] - str r0, [sp, 0x1C] - movs r0, 0 - strh r0, [r4] - mov r0, sp - strh r5, [r0, 0x8] - ldrb r0, [r0, 0xC] - cmp r0, 0 - bne _0808F7DA - mov r0, sp - mov r1, sp - ldrb r1, [r1, 0x3] - strb r1, [r0, 0xC] - b _0808F7EA -_0808F7DA: - mov r0, sp - ldrb r0, [r0, 0x10] - cmp r0, 0 - bne _0808F7EA - mov r0, sp - mov r1, sp - ldrb r1, [r1, 0x3] - strb r1, [r0, 0x10] -_0808F7EA: - add r4, sp, 0x64 - adds r0, r6, 0 - bl sub_808D994 - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_80922F4 - movs r2, 0 - b _0808F800 -_0808F7FE: - adds r2, 0x1 -_0808F800: - cmp r2, 0x9 - bgt _0808F816 - adds r1, r4, r2 - add r0, sp, 0x4C - adds r0, r2 - ldrb r1, [r1] - ldrb r0, [r0] - cmp r1, r0 - bne _0808F82E - cmp r1, 0 - bne _0808F7FE -_0808F816: - movs r0, 0x1 - cmp r0, 0 - beq _0808F82E - add r4, sp, 0x4C - adds r0, r5, 0 - bl sub_808D994 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0xA - bl sub_8092310 -_0808F82E: - mov r0, sp - bl sub_808D1DC - add sp, 0xA4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_808F798 - - thumb_func_start sub_808F83C -sub_808F83C: - movs r0, 0 - strb r0, [r2] - bx lr - thumb_func_end sub_808F83C - - thumb_func_start sub_808F844 -sub_808F844: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - adds r5, r0, 0 - adds r4, r1, 0 - mov r10, r2 - str r3, [sp, 0x2C] - ldr r0, [sp, 0x50] - bl sub_80073B8 - ldr r0, _0808F880 - mov r1, r10 - adds r1, 0x2 - movs r2, 0x14 - bl strncpy - movs r0, 0x20 - mov r9, r0 - cmp r5, 0x5 - bls _0808F874 - b _0808FED6 -_0808F874: - lsls r0, r5, 2 - ldr r1, _0808F884 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0808F880: .4byte gUnknown_202DF98 -_0808F884: .4byte _0808F888 - .align 2, 0 -_0808F888: - .4byte _0808FED6 - .4byte _0808FBF4 - .4byte _0808F8A0 - .4byte _0808FB44 - .4byte _0808FCB0 - .4byte _0808FDB0 -_0808F8A0: - lsls r0, r4, 3 - adds r0, 0x10 - ldr r2, _0808F998 - movs r5, 0 - str r5, [sp] - movs r1, 0 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - ldr r4, _0808F99C - mov r1, r10 - ldr r0, [r1, 0x2C] - str r0, [r4] - ldr r0, [r1, 0x30] - str r0, [r4, 0x4] - ldr r0, _0808F9A0 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r2, 0xA - add r9, r2 - ldr r0, _0808F9A4 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r3, 0xA - add r9, r3 - mov r0, r10 - ldr r2, [r0, 0x2C] - cmp r2, 0x63 - bgt _0808F914 - movs r3, 0 - ldrsh r1, [r0, r3] - adds r2, 0x1 - add r0, sp, 0x8 - bl sub_808E010 - ldr r0, [sp, 0x8] - mov r2, r10 - ldr r1, [r2, 0x30] - subs r0, r1 - str r0, [r4] - ldr r0, _0808F9A8 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 -_0808F914: - movs r3, 0xC - add r9, r3 - mov r1, r10 - ldr r0, [r1, 0x24] - str r0, [r4] - ldr r0, [r1, 0x28] - str r0, [r4, 0x4] - ldr r0, _0808F9AC - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r2, 0xA - add r9, r2 - ldr r0, _0808F9B0 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - ldr r0, _0808F9B4 - ldr r2, [r0] - mov r0, r10 - adds r0, 0x34 - ldrb r3, [r0] - str r3, [r4] - mov r1, r10 - adds r1, 0x39 - ldrb r0, [r1] - cmp r0, 0 - beq _0808F964 - adds r0, r3, r0 - str r0, [r4] - ldr r0, _0808F9B8 - ldr r2, [r0] -_0808F964: - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - mov r1, r10 - adds r1, 0x3B - ldrb r3, [r1] - cmp r3, 0 - beq _0808F9C0 - mov r0, r10 - adds r0, 0x36 - ldrb r0, [r0] - adds r1, r3, 0 - adds r0, r1 - str r0, [r4] - ldr r0, _0808F9BC - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - b _0808F9D8 - .align 2, 0 -_0808F998: .4byte gUnknown_8107754 -_0808F99C: .4byte gUnknown_202DE30 -_0808F9A0: .4byte gUnknown_810DD80 -_0808F9A4: .4byte gUnknown_810DD9C -_0808F9A8: .4byte gUnknown_810DDB8 -_0808F9AC: .4byte gUnknown_810DDD0 -_0808F9B0: .4byte gUnknown_810DDE4 -_0808F9B4: .4byte gUnknown_810DE0C -_0808F9B8: .4byte gUnknown_810DE20 -_0808F9BC: .4byte gUnknown_810DE4C -_0808F9C0: - mov r0, r10 - adds r0, 0x36 - ldrb r0, [r0] - str r0, [r4] - ldr r0, _0808FA44 - ldr r2, [r0] - str r3, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 -_0808F9D8: - movs r3, 0xA - add r9, r3 - ldr r0, _0808FA48 - ldr r2, [r0] - movs r5, 0 - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - ldr r0, _0808FA4C - ldr r2, [r0] - ldr r4, _0808FA50 - mov r0, r10 - adds r0, 0x35 - ldrb r3, [r0] - str r3, [r4] - mov r1, r10 - adds r1, 0x3A - ldrb r0, [r1] - cmp r0, 0 - beq _0808FA0E - adds r0, r3, r0 - str r0, [r4] - ldr r0, _0808FA54 - ldr r2, [r0] -_0808FA0E: - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - mov r1, r10 - adds r1, 0x3C - ldrb r3, [r1] - cmp r3, 0 - beq _0808FA5C - mov r0, r10 - adds r0, 0x37 - ldrb r0, [r0] - adds r1, r3, 0 - adds r0, r1 - str r0, [r4] - ldr r0, _0808FA58 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - b _0808FA74 - .align 2, 0 -_0808FA44: .4byte gUnknown_810DE38 -_0808FA48: .4byte gUnknown_810DDFC -_0808FA4C: .4byte gUnknown_810DE24 -_0808FA50: .4byte gUnknown_202DE30 -_0808FA54: .4byte gUnknown_810DE28 -_0808FA58: .4byte gUnknown_810DE54 -_0808FA5C: - mov r0, r10 - adds r0, 0x37 - ldrb r0, [r0] - str r0, [r4] - ldr r0, _0808FA94 - ldr r2, [r0] - str r3, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 -_0808FA74: - movs r0, 0xA - add r9, r0 - mov r2, r10 - adds r2, 0x20 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0808FA9C - ldr r0, _0808FA98 - adds r1, r2, 0 - movs r2, 0 - bl sub_8090E14 - b _0808FAA6 - .align 2, 0 -_0808FA94: .4byte gUnknown_810DE50 -_0808FA98: .4byte gUnknown_202DE58 -_0808FA9C: - ldr r0, _0808FB24 - ldr r1, _0808FB28 - ldr r1, [r1] - bl strcpy -_0808FAA6: - ldr r0, _0808FB2C - ldr r2, [r0] - movs r4, 0 - str r4, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r1, 0xC - add r9, r1 - ldr r1, _0808FB30 - mov r2, r10 - movs r3, 0x3E - ldrsh r0, [r2, r3] - str r0, [r1] - movs r1, 0x3E - ldrsh r0, [r2, r1] - movs r1, 0xA - bl __divsi3 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _0808FADA - movs r0, 0 -_0808FADA: - cmp r0, 0x62 - ble _0808FAE0 - movs r0, 0x63 -_0808FAE0: - ldr r1, _0808FB34 - lsls r0, 2 - adds r0, r1 - ldr r5, _0808FB38 - ldr r1, [r0] - adds r0, r5, 0 - bl strcpy - ldr r0, _0808FB3C - ldr r2, [r0] - str r4, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r2, 0xA - add r9, r2 - mov r0, r10 - adds r0, 0x38 - ldrb r4, [r0] - cmp r4, 0 - beq _0808FB10 - b _0808FED6 -_0808FB10: - adds r0, 0x1C - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_808EAC0 - ldr r0, _0808FB40 - ldr r2, [r0] - str r4, [sp] - b _0808FECC - .align 2, 0 -_0808FB24: .4byte gUnknown_202DE58 -_0808FB28: .4byte gUnknown_810DE58 -_0808FB2C: .4byte gUnknown_810DE6C -_0808FB30: .4byte gUnknown_202DE30 -_0808FB34: .4byte gUnknown_8115718 -_0808FB38: .4byte gUnknown_202DF98 -_0808FB3C: .4byte gUnknown_810DE80 -_0808FB40: .4byte gUnknown_810DE98 -_0808FB44: - lsls r0, r4, 3 - adds r0, 0x10 - ldr r2, _0808FBE8 - movs r4, 0 - str r4, [sp] - movs r1, 0 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - ldr r2, _0808FBEC - str r4, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - mov r3, r10 - ldrb r0, [r3, 0x16] - bl sub_8092344 - adds r2, r0, 0 - str r4, [sp] - movs r0, 0x38 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - mov r1, r10 - ldrb r0, [r1, 0x17] - cmp r0, 0 - beq _0808FB94 - bl sub_8092344 - adds r2, r0, 0 - str r4, [sp] - movs r0, 0x60 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 -_0808FB94: - movs r2, 0xC - add r9, r2 - ldr r2, _0808FBF0 - str r4, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r3, 0xC - add r9, r3 - mov r1, r10 - ldrb r0, [r1, 0x18] - bl sub_8092390 - adds r2, r0, 0 - str r4, [sp] - movs r5, 0xB - str r5, [sp, 0x4] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8015034 - movs r2, 0x21 - add r9, r2 - mov r3, r10 - ldrb r0, [r3, 0x19] - cmp r0, 0 - bne _0808FBD2 - b _0808FED6 -_0808FBD2: - bl sub_8092390 - adds r2, r0, 0 - str r4, [sp] - str r5, [sp, 0x4] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8015034 - b _0808FED6 - .align 2, 0 -_0808FBE8: .4byte gUnknown_810775C -_0808FBEC: .4byte gUnknown_8107768 -_0808FBF0: .4byte gUnknown_8107770 -_0808FBF4: - lsls r0, r4, 3 - adds r0, 0x10 - ldr r1, _0808FC34 - ldr r2, [r1] - movs r1, 0 - str r1, [sp] - ldr r3, [sp, 0x50] - bl sub_8014FF0 - mov r0, r10 - adds r0, 0x56 - movs r1, 0 - ldrsh r0, [r0, r1] - subs r5, r0, 0x1 - movs r2, 0xC - negs r2, r2 - add r9, r2 - movs r7, 0 - ldr r6, [sp, 0x2C] - adds r6, 0xC - adds r1, r6, 0 - movs r2, 0 - ldr r0, [sp, 0x2C] - adds r0, 0x2C -_0808FC24: - str r2, [r0] - subs r0, 0x4 - cmp r0, r1 - bge _0808FC24 - movs r3, 0 - mov r8, r3 - b _0808FC88 - .align 2, 0 -_0808FC34: .4byte gUnknown_810DD58 -_0808FC38: - mov r0, r10 - adds r0, 0x58 - adds r4, r0, r5 - ldrb r0, [r4] - cmp r0, 0 - beq _0808FC78 - movs r7, 0x1 - ldr r0, _0808FCA0 - ldrb r1, [r4] - lsls r1, 2 - adds r1, r0 - ldr r0, _0808FCA4 - ldr r1, [r1] - movs r2, 0x50 - bl strncpy - ldr r2, _0808FCA8 - movs r0, 0 - str r0, [sp] - movs r0, 0xC - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - mov r0, r8 - cmp r0, 0 - ble _0808FC78 - subs r0, 0x1 - lsls r0, 2 - adds r0, r6, r0 - ldrb r1, [r4] - str r1, [r0] -_0808FC78: - movs r1, 0x1 - add r8, r1 - adds r5, 0x1 - movs r2, 0xC - add r9, r2 - mov r3, r8 - cmp r3, 0x9 - bgt _0808FC90 -_0808FC88: - cmp r5, 0 - blt _0808FC78 - cmp r5, 0xB - ble _0808FC38 -_0808FC90: - cmp r7, 0 - beq _0808FC96 - b _0808FED6 -_0808FC96: - ldr r0, _0808FCAC - ldr r2, [r0] - str r7, [sp] - b _0808FD98 - .align 2, 0 -_0808FCA0: .4byte gUnknown_810CF1C -_0808FCA4: .4byte gUnknown_202DEA8 -_0808FCA8: .4byte gUnknown_8107784 -_0808FCAC: .4byte gUnknown_810DF78 -_0808FCB0: - lsls r0, r4, 3 - adds r0, 0x10 - ldr r1, _0808FCF8 - ldr r2, [r1] - movs r1, 0 - str r1, [sp] - ldr r3, [sp, 0x50] - bl sub_8014FF0 - add r4, sp, 0x14 - mov r0, r10 - movs r2, 0x3E - ldrsh r1, [r0, r2] - adds r0, r4, 0 - bl sub_808EBA8 - mov r0, r10 - adds r0, 0x40 - movs r3, 0 - ldrsh r0, [r0, r3] - subs r7, r0, 0x1 - mov r1, r9 - subs r1, 0xC - movs r2, 0 - ldr r0, [sp, 0x2C] - adds r0, 0x8 -_0808FCE4: - strb r2, [r0] - subs r0, 0x1 - ldr r3, [sp, 0x2C] - cmp r0, r3 - bge _0808FCE4 - mov r9, r1 - movs r4, 0 - mov r8, r4 - b _0808FD84 - .align 2, 0 -_0808FCF8: .4byte gUnknown_810DD68 -_0808FCFC: - mov r5, sp - adds r5, r7 - adds r5, 0x14 - ldrb r0, [r5] - cmp r0, 0 - beq _0808FD74 - movs r4, 0x1 - bl sub_808EAB0 - adds r1, r0, 0 - ldr r6, _0808FD3C - adds r0, r6, 0 - movs r2, 0x50 - bl strncpy - mov r0, r10 - adds r0, 0x50 - adds r1, r4, 0 - ldrb r5, [r5] - lsls r1, r5 - bl sub_808ECD0 - lsls r0, 24 - cmp r0, 0 - beq _0808FD44 - adds r0, r6, 0 - subs r0, 0x50 - ldr r1, _0808FD40 - bl strcpy - b _0808FD4E - .align 2, 0 -_0808FD3C: .4byte gUnknown_202DEA8 -_0808FD40: .4byte gUnknown_8107788 -_0808FD44: - adds r0, r6, 0 - subs r0, 0x50 - ldr r1, _0808FDA4 - bl strcpy -_0808FD4E: - mov r0, r8 - cmp r0, 0 - ble _0808FD64 - subs r0, 0x1 - ldr r1, [sp, 0x2C] - adds r0, r1, r0 - mov r1, sp - adds r1, r7 - adds r1, 0x14 - ldrb r1, [r1] - strb r1, [r0] -_0808FD64: - ldr r2, _0808FDA8 - movs r0, 0 - str r0, [sp] - movs r0, 0xC - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 -_0808FD74: - movs r2, 0x1 - add r8, r2 - adds r7, 0x1 - movs r3, 0xC - add r9, r3 - mov r0, r8 - cmp r0, 0x9 - bgt _0808FD8C -_0808FD84: - cmp r7, 0 - blt _0808FD74 - cmp r7, 0x17 - ble _0808FCFC -_0808FD8C: - cmp r4, 0 - beq _0808FD92 - b _0808FED6 -_0808FD92: - ldr r0, _0808FDAC - ldr r2, [r0] - str r4, [sp] -_0808FD98: - movs r0, 0xC - movs r1, 0x20 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - b _0808FED6 - .align 2, 0 -_0808FDA4: .4byte gUnknown_810778C -_0808FDA8: .4byte gUnknown_8107790 -_0808FDAC: .4byte gUnknown_810DF84 -_0808FDB0: - lsls r0, r4, 3 - adds r0, 0x10 - ldr r2, _0808FEEC - movs r5, 0 - str r5, [sp] - movs r1, 0 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - ldr r6, _0808FEF0 - mov r2, r10 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r0, r6, 0 - bl sub_808D8BC - ldr r1, _0808FEF4 - mov r2, r10 - movs r3, 0 - ldrsh r0, [r2, r3] - str r0, [r1] - ldr r0, _0808FEF8 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r0, 0xA - add r9, r0 - mov r1, r10 - movs r2, 0 - ldrsh r0, [r1, r2] - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - bl sub_8092524 - adds r1, r0, 0 - ldr r4, _0808FEFC - adds r0, r4, 0 - movs r2, 0x50 - bl strncpy - ldr r0, _0808FF00 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r3, 0xA - add r9, r3 - ldr r0, _0808FF04 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r0, 0xD - add r9, r0 - ldr r0, _0808FF08 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r1, 0xA - add r9, r1 - mov r1, r10 - adds r1, 0x1C - adds r0, r4, 0 - bl sub_8090208 - ldr r0, _0808FF0C - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r2, 0xD - add r9, r2 - mov r3, r10 - movs r1, 0 - ldrsh r0, [r3, r1] - bl sub_808DAB4 - adds r1, r0, 0 - adds r0, r6, 0 - movs r2, 0x14 - bl strncpy - ldr r0, _0808FF10 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r2, 0xD - add r9, r2 - ldr r4, _0808FF14 - mov r3, r10 - movs r1, 0 - ldrsh r0, [r3, r1] - bl sub_808DACC - lsls r0, 24 - lsrs r0, 22 - adds r0, r4 - ldr r1, [r0] - adds r0, r6, 0 - bl strcpy - ldr r0, _0808FF18 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 - movs r2, 0xD - add r9, r2 - ldr r1, _0808FF1C - mov r0, r10 - adds r0, 0x4C - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - str r5, [sp] -_0808FECC: - movs r0, 0x4 - mov r1, r9 - ldr r3, [sp, 0x50] - bl sub_8014FF0 -_0808FED6: - ldr r0, [sp, 0x50] - bl sub_80073E0 - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0808FEEC: .4byte gUnknown_8107798 -_0808FEF0: .4byte gUnknown_202DF98 -_0808FEF4: .4byte gUnknown_202DE30 -_0808FEF8: .4byte gUnknown_810DEB4 -_0808FEFC: .4byte gUnknown_202DE58 -_0808FF00: .4byte gUnknown_810DEC8 -_0808FF04: .4byte gUnknown_810DEDC -_0808FF08: .4byte gUnknown_810DFB4 -_0808FF0C: .4byte gUnknown_810DFC8 -_0808FF10: .4byte gUnknown_810DEF4 -_0808FF14: .4byte gUnknown_810E02C -_0808FF18: .4byte gUnknown_810DF98 -_0808FF1C: .4byte gUnknown_810DFCC - thumb_func_end sub_808F844 - - thumb_func_start sub_808FF20 -sub_808FF20: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r5, r0, 0 - adds r6, r1, 0 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - adds r0, r5, 0x2 - movs r2, 0 - bl sub_808D9AC - ldrh r0, [r6, 0x8] - strh r0, [r5] - movs r1, 0x16 - ldrsh r0, [r6, r1] - str r0, [r5, 0x24] - str r0, [r5, 0x28] - ldrb r0, [r6, 0x3] - str r0, [r5, 0x2C] - ldr r0, [r6, 0x1C] - str r0, [r5, 0x30] - movs r4, 0 -_0808FF50: - adds r1, r5, 0 - adds r1, 0x34 - adds r1, r4 - adds r0, r6, 0 - adds r0, 0x18 - adds r0, r4 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r5, 0 - adds r1, 0x36 - adds r1, r4 - adds r0, r6, 0 - adds r0, 0x1A - adds r0, r4 - ldrb r0, [r0] - strb r0, [r1] - movs r7, 0x8 - ldrsh r0, [r6, r7] - adds r1, r4, 0 - bl sub_808DC68 - adds r1, r5, 0 - adds r1, 0x16 - adds r1, r4 - strb r0, [r1] - movs r1, 0x8 - ldrsh r0, [r6, r1] - adds r1, r4, 0 - bl sub_808DC84 - adds r1, r5, 0 - adds r1, 0x18 - adds r1, r4 - strb r0, [r1] - adds r4, 0x1 - cmp r4, 0x1 - ble _0808FF50 - ldrb r2, [r6, 0x2] - adds r1, r5, 0 - adds r1, 0x38 - movs r0, 0 - strb r2, [r1] - adds r2, r5, 0 - adds r2, 0x39 - strb r0, [r2] - adds r3, r5, 0 - adds r3, 0x3A - strb r0, [r3] - movs r7, 0x3B - adds r7, r5 - mov r12, r7 - strb r0, [r7] - movs r1, 0x3C - adds r1, r5 - mov r9, r1 - strb r0, [r1] - adds r0, r6, 0 - adds r0, 0x28 - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0 - beq _08090026 - cmp r1, 0x13 - bne _0808FFDA - ldr r0, _08090060 - ldrb r0, [r0] - ldrb r7, [r2] - adds r0, r7 - strb r0, [r2] -_0808FFDA: - ldrb r1, [r4] - cmp r1, 0x21 - bne _0808FFEA - ldr r0, _08090064 - ldrb r0, [r0] - ldrb r7, [r3] - adds r0, r7 - strb r0, [r3] -_0808FFEA: - cmp r1, 0x2B - bne _0808FFFE - ldr r0, _08090068 - ldrb r0, [r0] - ldrb r7, [r2] - adds r1, r0, r7 - strb r1, [r2] - ldrb r1, [r3] - adds r0, r1 - strb r0, [r3] -_0808FFFE: - ldrb r0, [r4] - cmp r0, 0x1E - bne _08090012 - ldr r0, _0809006C - ldrb r0, [r0] - mov r2, r12 - ldrb r2, [r2] - adds r0, r2 - mov r7, r12 - strb r0, [r7] -_08090012: - ldrb r0, [r4] - cmp r0, 0x22 - bne _08090026 - ldr r0, _08090070 - ldrb r0, [r0] - mov r1, r9 - ldrb r1, [r1] - adds r0, r1 - mov r2, r9 - strb r0, [r2] -_08090026: - adds r0, r6, 0 - adds r0, 0x24 - ldrb r1, [r0] - adds r0, r5, 0 - adds r0, 0x54 - strb r1, [r0] - subs r0, 0x34 - adds r1, r4, 0 - bl sub_8090B64 - ldrh r0, [r6, 0x14] - strh r0, [r5, 0x3E] - ldr r0, [r6, 0x4] - str r0, [r5, 0x1C] - ldr r0, [r6, 0xC] - str r0, [r5, 0x44] - ldr r0, [r6, 0x10] - str r0, [r5, 0x48] - ldr r0, [r6, 0x20] - str r0, [r5, 0x50] - mov r7, r8 - cmp r7, 0 - beq _08090074 - adds r0, r6, 0 - bl sub_808F700 - adds r1, r5, 0 - adds r1, 0x4C - b _0809007A - .align 2, 0 -_08090060: .4byte gUnknown_810AC60 -_08090064: .4byte gUnknown_810AC62 -_08090068: .4byte gUnknown_810AC68 -_0809006C: .4byte gUnknown_810AC64 -_08090070: .4byte gUnknown_810AC66 -_08090074: - adds r1, r5, 0 - adds r1, 0x4C - movs r0, 0x3 -_0809007A: - strb r0, [r1] - adds r1, r5, 0 - adds r1, 0x58 - movs r2, 0 - adds r0, r5, 0 - adds r0, 0x63 -_08090086: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _08090086 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_808FF20 - - thumb_func_start sub_809009C -sub_809009C: - lsls r0, 24 - ldr r1, _080900A8 - lsrs r0, 21 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_080900A8: .4byte gUnknown_8111A28 - thumb_func_end sub_809009C - - thumb_func_start sub_80900AC -sub_80900AC: - lsls r0, 24 - ldr r1, _080900BC - lsrs r0, 21 - adds r1, 0x4 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_080900BC: .4byte gUnknown_8111A28 - thumb_func_end sub_80900AC - - thumb_func_start sub_80900C0 -sub_80900C0: - lsls r0, 24 - ldr r1, _080900CC - lsrs r0, 20 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_080900CC: .4byte gUnknown_8109D30 - thumb_func_end sub_80900C0 - - thumb_func_start sub_80900D0 -sub_80900D0: - lsls r0, 24 - ldr r1, _080900E0 - lsrs r0, 20 - adds r0, r1 - movs r1, 0xC - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080900E0: .4byte gUnknown_8109D30 - thumb_func_end sub_80900D0 - - thumb_func_start sub_80900E4 -sub_80900E4: - lsls r0, 24 - ldr r1, _080900F0 - lsrs r0, 20 - adds r0, r1 - ldrb r0, [r0, 0xA] - bx lr - .align 2, 0 -_080900F0: .4byte gUnknown_8109D30 - thumb_func_end sub_80900E4 - - thumb_func_start sub_80900F4 -sub_80900F4: - lsls r0, 24 - ldr r1, _08090100 - lsrs r0, 20 - adds r0, r1 - ldrb r0, [r0, 0x9] - bx lr - .align 2, 0 -_08090100: .4byte gUnknown_8109D30 - thumb_func_end sub_80900F4 - - thumb_func_start sub_8090104 -sub_8090104: - lsls r0, 24 - ldr r1, _08090110 - lsrs r0, 20 - adds r0, r1 - ldrb r0, [r0, 0x6] - bx lr - .align 2, 0 -_08090110: .4byte gUnknown_8109D30 - thumb_func_end sub_8090104 - - thumb_func_start sub_8090114 -sub_8090114: - lsls r0, 24 - ldr r1, _08090120 - lsrs r0, 20 - adds r0, r1 - ldrb r0, [r0, 0x4] - bx lr - .align 2, 0 -_08090120: .4byte gUnknown_8109D30 - thumb_func_end sub_8090114 - - thumb_func_start sub_8090124 -sub_8090124: - lsls r0, 24 - ldr r1, _08090130 - lsrs r0, 20 - adds r0, r1 - ldrb r0, [r0, 0x7] - bx lr - .align 2, 0 -_08090130: .4byte gUnknown_8109D30 - thumb_func_end sub_8090124 - - thumb_func_start sub_8090134 -sub_8090134: - lsls r0, 24 - ldr r1, _08090144 - lsrs r0, 20 - adds r0, r1 - ldrb r0, [r0, 0x3] - lsls r0, 24 - asrs r0, 24 - bx lr - .align 2, 0 -_08090144: .4byte gUnknown_8109D30 - thumb_func_end sub_8090134 - - thumb_func_start sub_8090148 -sub_8090148: - lsls r0, 24 - ldr r1, _08090154 - lsrs r0, 20 - adds r0, r1 - ldrb r0, [r0, 0x2] - bx lr - .align 2, 0 -_08090154: .4byte gUnknown_8109D30 - thumb_func_end sub_8090148 - - thumb_func_start sub_8090158 -sub_8090158: - lsls r0, 24 - ldr r1, _08090164 - lsrs r0, 20 - adds r0, r1 - ldrb r0, [r0, 0x8] - bx lr - .align 2, 0 -_08090164: .4byte gUnknown_8109D30 - thumb_func_end sub_8090158 - - thumb_func_start sub_8090168 -sub_8090168: - lsls r0, 24 - ldr r1, _08090178 - lsrs r0, 20 - adds r0, r1 - movs r1, 0xE - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_08090178: .4byte gUnknown_8109D30 - thumb_func_end sub_8090168 - - thumb_func_start sub_809017C -sub_809017C: - push {r4-r6,lr} - sub sp, 0x4 - adds r1, r0, 0 - mov r0, sp - bl sub_80901D8 - movs r5, 0 - ldr r2, _080901AC - ldrb r0, [r2] - cmp r0, 0x3F - beq _080901C6 - mov r3, sp - ldrb r6, [r3] - movs r4, 0 - adds r1, r2, 0 -_0809019A: - ldrb r0, [r1] - cmp r6, r0 - bne _080901B0 - ldrb r0, [r3, 0x1] - ldrb r2, [r1, 0x1] - cmp r0, r2 - bne _080901B0 - movs r0, 0x1 - b _080901C8 - .align 2, 0 -_080901AC: .4byte gUnknown_8107828 -_080901B0: - adds r4, 0x4 - adds r1, 0x4 - adds r5, 0x1 - ldr r0, _080901D0 - cmp r5, r0 - bgt _080901C6 - ldr r2, _080901D4 - adds r0, r4, r2 - ldrb r0, [r0] - cmp r0, 0x3F - bne _0809019A -_080901C6: - movs r0, 0 -_080901C8: - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080901D0: .4byte 0x000003e6 -_080901D4: .4byte gUnknown_8107828 - thumb_func_end sub_809017C - - thumb_func_start sub_80901D8 -sub_80901D8: - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - ldrb r0, [r2] - subs r0, 0x4B - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x16 - bhi _080901FE - movs r0, 0x34 - strb r0, [r3] - ldrb r1, [r2] - subs r1, 0x4B - lsls r0, r1, 1 - adds r0, r1 - ldrb r2, [r2, 0x1] - adds r0, r2 - strb r0, [r3, 0x1] - b _08090202 -_080901FE: - ldr r0, [r2] - str r0, [r3] -_08090202: - pop {r0} - bx r0 - thumb_func_end sub_80901D8 - - thumb_func_start sub_8090208 -sub_8090208: - push {lr} - ldr r3, _08090220 - ldr r2, _08090224 - ldrb r1, [r1] - lsls r1, 3 - adds r1, r2 - ldr r2, [r1] - adds r1, r3, 0 - bl sub_800D158 - pop {r0} - bx r0 - .align 2, 0 -_08090220: .4byte gUnknown_8108F10 -_08090224: .4byte gUnknown_8111A28 - thumb_func_end sub_8090208 - - thumb_func_start sub_8090228 -sub_8090228: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldr r0, _08090250 - ldrb r3, [r4] - lsls r1, r3, 4 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _0809025C - ldr r1, _08090254 - ldr r2, _08090258 - lsls r0, r3, 3 - adds r0, r2 - ldr r2, [r0] - ldrb r3, [r4, 0x1] - adds r0, r5, 0 - bl sub_800D158 - b _0809026E - .align 2, 0 -_08090250: .4byte gUnknown_8109D30 -_08090254: .4byte gUnknown_8108F18 -_08090258: .4byte gUnknown_8111A28 -_0809025C: - ldr r1, _08090274 - ldr r2, _08090278 - lsls r0, r3, 3 - adds r0, r2 - ldr r2, [r0] - ldrb r3, [r4, 0x1] - adds r0, r5, 0 - bl sub_800D158 -_0809026E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08090274: .4byte gUnknown_8108F2C -_08090278: .4byte gUnknown_8111A28 - thumb_func_end sub_8090228 - - thumb_func_start sub_809027C -sub_809027C: - push {lr} - ldr r2, _08090294 - ldrb r1, [r1] - lsls r1, 3 - adds r1, r2 - ldr r1, [r1] - movs r2, 0x50 - bl strncpy - pop {r0} - bx r0 - .align 2, 0 -_08090294: .4byte gUnknown_8111A28 - thumb_func_end sub_809027C - - thumb_func_start sub_8090298 -sub_8090298: - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - subs r0, 0x4B - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x16 - bhi _080902AE - movs r0, 0x4 - b _080902C2 -_080902AE: - cmp r1, 0x3E - bhi _080902C0 - ldr r0, _080902BC - adds r0, r1, r0 - ldrb r0, [r0] - b _080902C2 - .align 2, 0 -_080902BC: .4byte gUnknown_81077A8 -_080902C0: - movs r0, 0x1 -_080902C2: - pop {r1} - bx r1 - thumb_func_end sub_8090298 - - thumb_func_start sub_80902C8 -sub_80902C8: - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - subs r0, 0x4B - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x16 - bls _080902EC - cmp r1, 0x3E - bhi _080902EC - ldr r0, _080902E8 - adds r0, r1, r0 - ldrb r0, [r0] - b _080902EE - .align 2, 0 -_080902E8: .4byte gUnknown_81077E8 -_080902EC: - movs r0, 0 -_080902EE: - pop {r1} - bx r1 - thumb_func_end sub_80902C8 - - thumb_func_start sub_80902F4 -sub_80902F4: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x7 - bl sub_809488C - adds r4, 0x1 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x7 - bl sub_809488C - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80902F4 - - thumb_func_start sub_8090314 -sub_8090314: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r0, 0 - strb r0, [r4] - strb r0, [r4, 0x1] - adds r0, r5, 0 - movs r2, 0x7 - bl sub_8094924 - adds r4, 0x1 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x7 - bl sub_8094924 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8090314 - - thumb_func_start sub_809033C -sub_809033C: - lsls r0, 24 - ldr r1, _08090348 - lsrs r0, 20 - adds r0, r1 - ldrb r0, [r0, 0x1] - bx lr - .align 2, 0 -_08090348: .4byte gUnknown_8109D30 - thumb_func_end sub_809033C - - thumb_func_start sub_809034C -sub_809034C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xF8 - adds r7, r2, 0 - ldr r2, [sp, 0x118] - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 16 - asrs r1, 16 - str r1, [sp, 0xE0] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0xE4] - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0xE8] - bl sub_8090A34 - str r0, [sp, 0xEC] - movs r5, 0 - movs r0, 0 - str r0, [sp, 0xF4] - mov r8, r0 - add r4, sp, 0xC8 - movs r0, 0xA - strb r0, [r4] - add r1, sp, 0xF4 - ldrb r1, [r1] - strb r1, [r4, 0x1] - ldr r1, _0809040C - adds r0, r7, 0 - bl strcpy - movs r2, 0 - str r2, [sp, 0xF0] - movs r3, 0 - ldr r0, _08090410 - ldr r6, [r0] - movs r4, 0x1 -_080903A2: - movs r0, 0x58 - muls r0, r3 - adds r2, r6, r0 - ldrh r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _080903D0 - lsrs r0, r1, 1 - ands r0, r4 - cmp r0, 0 - beq _080903D0 - adds r0, r2, 0 - adds r0, 0x28 - ldrb r0, [r0] - cmp r0, 0 - beq _080903CA - ldr r0, [sp, 0xF0] - adds r0, 0x1 - str r0, [sp, 0xF0] -_080903CA: - adds r5, 0x1 - cmp r5, 0x4 - beq _080903DA -_080903D0: - adds r3, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r3, r0 - ble _080903A2 -_080903DA: - ldr r0, _08090414 - mov r2, r9 - lsls r1, r2, 4 - adds r0, r1, r0 - ldrb r0, [r0, 0x5] - mov r9, r1 - ldr r1, [sp, 0xE4] - cmp r1, 0 - bne _080903F2 - cmp r0, 0x3 - ble _080903F2 - movs r0, 0x3 -_080903F2: - cmp r5, r0 - ble _0809043C - cmp r0, 0x1 - bne _0809041C - ldr r0, _08090418 - ldr r0, [r0] - mov r1, sp - add r2, sp, 0xC8 - movs r3, 0 - bl xxx_format_string - b _08090430 - .align 2, 0 -_0809040C: .4byte gUnknown_8108F40 -_08090410: .4byte gUnknown_203B45C -_08090414: .4byte gUnknown_8109D30 -_08090418: .4byte gUnknown_8115A2C -_0809041C: - ldr r1, _08090464 - subs r0, r5, r0 - str r0, [r1] - ldr r0, _08090468 - ldr r0, [r0] - mov r1, sp - add r2, sp, 0xC8 - movs r3, 0 - bl xxx_format_string -_08090430: - adds r0, r7, 0 - mov r1, sp - bl sub_8090888 - movs r2, 0x1 - mov r8, r2 -_0809043C: - ldr r0, _0809046C - mov r2, r9 - adds r1, r2, r0 - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _0809048E - ldr r1, [sp, 0xEC] - cmp r0, r1 - bge _0809048E - ldr r1, _08090464 - str r0, [r1] - ldr r2, [sp, 0xEC] - subs r0, r2, r0 - str r0, [r1, 0x4] - mov r0, r8 - cmp r0, 0 - bne _08090474 - ldr r0, _08090470 - b _08090476 - .align 2, 0 -_08090464: .4byte gUnknown_202DE30 -_08090468: .4byte gUnknown_81159DC -_0809046C: .4byte gUnknown_8109D30 -_08090470: .4byte gUnknown_8115A80 -_08090474: - ldr r0, _080904AC -_08090476: - ldr r0, [r0] - mov r1, sp - add r2, sp, 0xC8 - movs r3, 0 - bl xxx_format_string - adds r0, r7, 0 - mov r1, sp - bl sub_8090888 - movs r1, 0x1 - mov r8, r1 -_0809048E: - ldr r2, [sp, 0xE0] - cmp r2, 0 - beq _0809054E - ldr r0, _080904B0 - adds r1, r2, 0 - bl sub_808D908 - cmp r5, 0x3 - ble _080904D2 - mov r0, r8 - cmp r0, 0 - bne _080904B8 - ldr r0, _080904B4 - b _080904BA - .align 2, 0 -_080904AC: .4byte gUnknown_8115ADC -_080904B0: .4byte gUnknown_202DF98 -_080904B4: .4byte gUnknown_8115B3C -_080904B8: - ldr r0, _08090528 -_080904BA: - ldr r0, [r0] - mov r1, sp - add r2, sp, 0xC8 - movs r3, 0 - bl xxx_format_string - adds r0, r7, 0 - mov r1, sp - bl sub_8090888 - movs r1, 0x1 - mov r8, r1 -_080904D2: - ldr r0, [sp, 0xE0] - bl sub_808DACC - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - ldr r2, _0809052C - mov r10, r2 - movs r6, 0x1 -_080904E4: - movs r0, 0x58 - adds r1, r4, 0 - muls r1, r0 - mov r2, r10 - ldr r0, [r2] - adds r2, r0, r1 - ldrh r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08090510 - lsrs r0, r1, 1 - ands r0, r6 - cmp r0, 0 - beq _08090510 - movs r1, 0x8 - ldrsh r0, [r2, r1] - bl sub_808DACC - lsls r0, 24 - lsrs r0, 24 - adds r5, r0 -_08090510: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _080904E4 - cmp r5, 0x6 - ble _0809054E - mov r2, r8 - cmp r2, 0 - bne _08090534 - ldr r0, _08090530 - b _08090536 - .align 2, 0 -_08090528: .4byte gUnknown_8115BA4 -_0809052C: .4byte gUnknown_203B45C -_08090530: .4byte gUnknown_8115BF4 -_08090534: - ldr r0, _080905D0 -_08090536: - ldr r0, [r0] - mov r1, sp - add r2, sp, 0xC8 - movs r3, 0 - bl xxx_format_string - adds r0, r7, 0 - mov r1, sp - bl sub_8090888 - movs r0, 0x1 - mov r8, r0 -_0809054E: - ldr r1, [sp, 0xE4] - cmp r1, 0 - beq _08090602 - add r5, sp, 0xCC - ldr r1, _080905D4 - adds r0, r5, 0 - movs r2, 0x8 - bl memcpy - add r4, sp, 0xD4 - ldr r1, _080905D8 - adds r0, r4, 0 - movs r2, 0x4 - bl memcpy - movs r6, 0 - mov r10, r4 - ldr r0, _080905DC - add r0, r9 - ldrb r5, [r0, 0xB] - add r4, sp, 0xCC -_08090578: - adds r0, r5, 0 - asrs r0, r6 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809059E - ldrh r0, [r4] - bl sub_8090820 - lsls r0, 24 - cmp r0, 0 - bne _0809059E - mov r2, r10 - adds r0, r2, r6 - ldrb r0, [r0] - bl sub_80911A4 - cmp r0, 0 - beq _080905A6 -_0809059E: - adds r4, 0x2 - adds r6, 0x1 - cmp r6, 0x3 - ble _08090578 -_080905A6: - cmp r6, 0x3 - bgt _08090602 - add r4, sp, 0xD8 - lsls r0, r6, 1 - add r0, sp - adds r0, 0xCC - ldrh r1, [r0] - adds r0, r4, 0 - bl sub_8092A88 - ldr r0, _080905E0 - adds r1, r4, 0 - movs r2, 0 - bl sub_80928C0 - mov r0, r8 - cmp r0, 0 - bne _080905E8 - ldr r0, _080905E4 - b _080905EA - .align 2, 0 -_080905D0: .4byte gUnknown_8115C4C -_080905D4: .4byte gUnknown_8108F42 -_080905D8: .4byte gUnknown_8108F4A -_080905DC: .4byte gUnknown_8109D30 -_080905E0: .4byte gUnknown_202DE58 -_080905E4: .4byte gUnknown_8115CB8 -_080905E8: - ldr r0, _080906A0 -_080905EA: - ldr r0, [r0] - mov r1, sp - add r2, sp, 0xC8 - movs r3, 0 - bl xxx_format_string - adds r0, r7, 0 - mov r1, sp - bl sub_8090888 - movs r1, 0x1 - mov r8, r1 -_08090602: - ldr r0, _080906A4 - add r0, r9 - ldrb r1, [r0, 0xB] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080906CE - ldr r5, _080906A8 - ldr r2, [sp, 0xE0] - cmp r2, 0 - beq _0809063A - adds r0, r2, 0 - movs r1, 0 - bl sub_808DC68 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _08090638 - ldr r0, [sp, 0xE0] - movs r1, 0x1 - bl sub_808DC68 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _0809063A -_08090638: - movs r5, 0 -_0809063A: - ldr r0, _080906A8 - cmp r5, r0 - bne _080906CE - movs r5, 0 - movs r6, 0x1 -_08090644: - ldr r2, _080906AC - movs r0, 0x58 - adds r1, r5, 0 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - ldrh r1, [r4] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08090686 - lsrs r0, r1, 1 - ands r0, r6 - cmp r0, 0 - beq _08090686 - movs r1, 0x8 - ldrsh r0, [r4, r1] - movs r1, 0 - bl sub_808DC68 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _08090690 - movs r2, 0x8 - ldrsh r0, [r4, r2] - movs r1, 0x1 - bl sub_808DC68 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _08090690 -_08090686: - adds r5, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r5, r0 - ble _08090644 -_08090690: - ldr r0, _080906A8 - cmp r5, r0 - bne _080906CE - mov r0, r8 - cmp r0, 0 - bne _080906B4 - ldr r0, _080906B0 - b _080906B6 - .align 2, 0 -_080906A0: .4byte gUnknown_8115D14 -_080906A4: .4byte gUnknown_8109D30 -_080906A8: .4byte 0x0000019d -_080906AC: .4byte gUnknown_203B45C -_080906B0: .4byte gUnknown_8115D5C -_080906B4: - ldr r0, _080906D8 -_080906B6: - ldr r0, [r0] - mov r1, sp - add r2, sp, 0xC8 - movs r3, 0 - bl xxx_format_string - adds r0, r7, 0 - mov r1, sp - bl sub_8090888 - movs r1, 0x1 - mov r8, r1 -_080906CE: - mov r2, r8 - cmp r2, 0 - beq _080906DC - movs r0, 0x1 - b _0809080E - .align 2, 0 -_080906D8: .4byte gUnknown_8115D94 -_080906DC: - ldr r0, _080907EC - add r0, r9 - ldrb r0, [r0, 0xA] - cmp r0, 0 - beq _080906EC - ldr r0, [sp, 0xE8] - cmp r0, 0 - beq _0809071A -_080906EC: - ldr r1, [sp, 0xF4] - cmp r1, 0 - bne _08090708 - ldr r0, _080907F0 - ldr r1, [r0] - adds r0, r7, 0 - bl strcpy - adds r0, r7, 0 - add r1, sp, 0xC8 - bl strcat - movs r2, 0x1 - str r2, [sp, 0xF4] -_08090708: - ldr r0, _080907F4 - ldr r1, [r0] - adds r0, r7, 0 - bl strcat - adds r0, r7, 0 - add r1, sp, 0xC8 - bl strcat -_0809071A: - ldr r0, _080907EC - add r0, r9 - ldrb r0, [r0, 0x6] - cmp r0, 0 - beq _08090752 - ldr r0, [sp, 0xF4] - cmp r0, 0 - bne _08090740 - ldr r0, _080907F0 - ldr r1, [r0] - adds r0, r7, 0 - bl strcpy - adds r0, r7, 0 - add r1, sp, 0xC8 - bl strcat - movs r1, 0x1 - str r1, [sp, 0xF4] -_08090740: - ldr r0, _080907F8 - ldr r1, [r0] - adds r0, r7, 0 - bl strcat - adds r0, r7, 0 - add r1, sp, 0xC8 - bl strcat -_08090752: - ldr r0, _080907EC - add r0, r9 - ldrb r0, [r0, 0x4] - cmp r0, 0 - bne _08090792 - ldr r2, [sp, 0xEC] - ldr r0, [sp, 0xF0] - cmn r2, r0 - beq _08090792 - ldr r1, [sp, 0xF4] - cmp r1, 0 - bne _08090780 - ldr r0, _080907F0 - ldr r1, [r0] - adds r0, r7, 0 - bl strcpy - adds r0, r7, 0 - add r1, sp, 0xC8 - bl strcat - movs r2, 0x1 - str r2, [sp, 0xF4] -_08090780: - ldr r0, _080907FC - ldr r1, [r0] - adds r0, r7, 0 - bl strcat - adds r0, r7, 0 - add r1, sp, 0xC8 - bl strcat -_08090792: - ldr r0, _080907EC - add r0, r9 - ldrb r0, [r0, 0x7] - cmp r0, 0 - bne _080907DA - ldr r0, _08090800 - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - beq _080907DA - ldr r2, [sp, 0xF4] - cmp r2, 0 - bne _080907C8 - ldr r0, _080907F0 - ldr r1, [r0] - adds r0, r7, 0 - bl strcpy - adds r0, r7, 0 - add r1, sp, 0xC8 - bl strcat - movs r0, 0x1 - str r0, [sp, 0xF4] -_080907C8: - ldr r0, _08090804 - ldr r1, [r0] - adds r0, r7, 0 - bl strcat - adds r0, r7, 0 - add r1, sp, 0xC8 - bl strcat -_080907DA: - ldr r1, [sp, 0xF4] - cmp r1, 0 - bne _0809080C - ldr r1, _08090808 - adds r0, r7, 0 - bl sub_800D158 - movs r0, 0 - b _0809080E - .align 2, 0 -_080907EC: .4byte gUnknown_8109D30 -_080907F0: .4byte gUnknown_8115DD4 -_080907F4: .4byte gUnknown_8115E00 -_080907F8: .4byte gUnknown_8115E28 -_080907FC: .4byte gUnknown_8115E54 -_08090800: .4byte gUnknown_203B460 -_08090804: .4byte gUnknown_8115E80 -_08090808: .4byte gUnknown_8108F50 -_0809080C: - movs r0, 0x2 -_0809080E: - add sp, 0xF8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_809034C - - thumb_func_start sub_8090820 -sub_8090820: - push {r4-r7,lr} - lsls r0, 16 - lsrs r6, r0, 16 - movs r4, 0 - ldr r0, _08090868 - ldr r0, [r0] - mov r12, r0 - movs r7, 0x1 -_08090830: - movs r0, 0x58 - muls r0, r4 - mov r2, r12 - adds r1, r2, r0 - ldrh r2, [r1] - adds r0, r7, 0 - ands r0, r2 - cmp r0, 0 - beq _08090874 - lsrs r0, r2, 1 - ands r0, r7 - cmp r0, 0 - beq _08090874 - movs r3, 0 - movs r5, 0x1 - adds r2, r1, 0 - adds r2, 0x2C -_08090852: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0809086C - ldrh r0, [r2, 0x2] - cmp r0, r6 - bne _0809086C - movs r0, 0x1 - b _08090880 - .align 2, 0 -_08090868: .4byte gUnknown_203B45C -_0809086C: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - ble _08090852 -_08090874: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _08090830 - movs r0, 0 -_08090880: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8090820 - - thumb_func_start sub_8090888 -sub_8090888: - push {r4-r7,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r6, 0 - b _0809089C -_08090892: - ldrb r0, [r4] - cmp r0, 0xA - bne _0809089A - adds r6, 0x1 -_0809089A: - adds r4, 0x1 -_0809089C: - ldrb r0, [r4] - cmp r0, 0 - bne _08090892 - ldrb r7, [r5] - b _080908AE -_080908A6: - movs r0, 0xA - strb r0, [r4] - adds r4, 0x1 - adds r6, 0x1 -_080908AE: - adds r0, r6, 0 - movs r1, 0x3 - bl __modsi3 - cmp r0, 0 - bne _080908A6 - adds r1, r7, 0 - lsls r0, r1, 24 - cmp r0, 0 - beq _080908CE -_080908C2: - strb r1, [r4] - adds r4, 0x1 - adds r5, 0x1 - ldrb r1, [r5] - cmp r1, 0 - bne _080908C2 -_080908CE: - movs r0, 0 - strb r0, [r4] - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8090888 - - thumb_func_start sub_80908D8 -sub_80908D8: - push {lr} - adds r2, r0, 0 - ldrb r0, [r2] - cmp r0, 0x3E - bhi _08090908 - ldr r0, _08090900 - ldrb r3, [r2] - adds r0, r3, r0 - ldrb r1, [r2, 0x1] - ldrb r0, [r0] - cmp r1, r0 - bcs _08090908 - ldr r1, _08090904 - lsls r0, r3, 2 - adds r0, r1 - ldrb r1, [r2, 0x1] - ldr r0, [r0] - adds r0, r1 - ldrb r0, [r0] - b _0809090A - .align 2, 0 -_08090900: .4byte gUnknown_81077A8 -_08090904: .4byte gUnknown_8108084 -_08090908: - movs r0, 0x1 -_0809090A: - pop {r1} - bx r1 - thumb_func_end sub_80908D8 - - thumb_func_start sub_8090910 -sub_8090910: - push {r4-r7,lr} - adds r5, r0, 0 - adds r7, r1, 0 - ldr r4, _0809094C - adds r0, r4, 0 - bl RandomCapped - adds r6, r0, 0 - adds r0, r4, 0 - bl RandomCapped - adds r2, r0, 0 - ldrb r0, [r5] - cmp r0, 0x3E - bhi _08090954 - ldr r0, _08090950 - ldrb r1, [r5] - adds r1, r0 - ldrb r0, [r5, 0x1] - ldrb r1, [r1] - cmp r0, r1 - bcs _08090954 - adds r0, r7, 0 - adds r1, r6, 0 - bl sub_8091E94 - lsls r0, 24 - lsrs r0, 24 - b _08090956 - .align 2, 0 -_0809094C: .4byte 0x0000270f -_08090950: .4byte gUnknown_81077A8 -_08090954: - movs r0, 0x46 -_08090956: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8090910 - - thumb_func_start sub_809095C -sub_809095C: - push {r4,lr} - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x3E - bls _0809096A -_08090966: - movs r0, 0x1 - b _0809098C -_0809096A: - movs r2, 0 - ldr r0, _08090994 - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0x3F - beq _0809098A - adds r1, r4, 0 -_08090978: - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, r3 - beq _08090966 - adds r2, 0x1 - adds r0, r2, r4 - ldrb r0, [r0] - cmp r0, 0x3F - bne _08090978 -_0809098A: - movs r0, 0 -_0809098C: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08090994: .4byte gUnknown_810A350 - thumb_func_end sub_809095C - - thumb_func_start sub_8090998 -sub_8090998: - push {lr} - ldr r1, _080909B8 - ldr r0, _080909BC - str r0, [r1] - ldr r0, _080909C0 - ldr r1, _080909C4 - bl OpenFileAndGetFileDataPtr - ldr r1, _080909C8 - str r0, [r1] - ldr r1, _080909CC - ldr r0, [r0, 0x4] - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_080909B8: .4byte gUnknown_203B460 -_080909BC: .4byte gUnknown_20389A8 -_080909C0: .4byte gUnknown_8109764 -_080909C4: .4byte gUnknown_8300500 -_080909C8: .4byte gUnknown_20389A0 -_080909CC: .4byte gUnknown_20389A4 - thumb_func_end sub_8090998 - - thumb_func_start sub_80909D0 -sub_80909D0: - ldr r0, _080909D4 - bx lr - .align 2, 0 -_080909D4: .4byte gUnknown_20389A8 - thumb_func_end sub_80909D0 - - thumb_func_start sub_80909D8 -sub_80909D8: - push {r4,lr} - movs r4, 0 - ldr r3, _08090A30 - movs r2, 0 -_080909E0: - ldr r0, [r3] - lsls r1, r4, 2 - adds r0, r1 - strb r2, [r0] - adds r4, 0x1 - cmp r4, 0x13 - ble _080909E0 - movs r4, 0 - ldr r3, _08090A30 - movs r2, 0 -_080909F4: - ldr r0, [r3] - lsls r1, r4, 1 - adds r0, 0x50 - adds r0, r1 - strh r2, [r0] - adds r4, 0x1 - cmp r4, 0xEF - ble _080909F4 - movs r4, 0 -_08090A06: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8091840 - adds r4, 0x1 - cmp r4, 0x7 - ble _08090A06 - ldr r0, _08090A30 - ldr r2, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r2, r1 - movs r1, 0 - str r1, [r0] - movs r3, 0x99 - lsls r3, 2 - adds r0, r2, r3 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08090A30: .4byte gUnknown_203B460 - thumb_func_end sub_80909D8 - - thumb_func_start sub_8090A34 -sub_8090A34: - push {r4,r5,lr} - movs r4, 0 - ldr r0, _08090A5C - movs r5, 0x1 - ldr r2, [r0] - movs r3, 0x13 -_08090A40: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _08090A4C - adds r4, 0x1 -_08090A4C: - adds r2, 0x4 - subs r3, 0x1 - cmp r3, 0 - bge _08090A40 - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08090A5C: .4byte gUnknown_203B460 - thumb_func_end sub_8090A34 - - thumb_func_start sub_8090A60 -sub_8090A60: - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_8090BD0 - lsls r0, 24 - cmp r0, 0 - beq _08090A84 - adds r0, r4, 0 - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08090A84 - movs r0, 0 - b _08090A86 -_08090A84: - movs r0, 0x1 -_08090A86: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8090A60 - - thumb_func_start sub_8090A8C -sub_8090A8C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - cmp r5, 0 - beq _08090AF8 - movs r7, 0x1 - strb r7, [r6] - strb r5, [r6, 0x2] - adds r0, r5, 0 - bl sub_8090A60 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08090AD4 - adds r0, r5, 0 - movs r1, 0 - bl sub_8090D80 - adds r4, r0, 0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8090D80 - adds r1, r0, 0 - adds r0, r4, 0 - bl RandomRange - strb r0, [r6, 0x1] - b _08090AE8 -_08090AD4: - adds r0, r5, 0 - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bne _08090AE6 - strb r7, [r6, 0x1] - b _08090AE8 -_08090AE6: - strb r4, [r6, 0x1] -_08090AE8: - mov r0, r8 - cmp r0, 0 - beq _08090AFE - ldrb r1, [r6] - movs r0, 0x8 - orrs r0, r1 - strb r0, [r6] - b _08090AFE -_08090AF8: - strb r5, [r6] - strb r5, [r6, 0x2] - strb r5, [r6, 0x1] -_08090AFE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8090A8C - - thumb_func_start sub_8090B08 -sub_8090B08: - push {r4-r6,lr} - adds r6, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - cmp r5, 0 - beq _08090B5A - strb r5, [r6] - adds r0, r5, 0 - bl sub_8090A60 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08090B42 - adds r0, r5, 0 - movs r1, 0 - bl sub_8090D80 - adds r4, r0, 0 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8090D80 - adds r1, r0, 0 - adds r0, r4, 0 - bl RandomRange - strb r0, [r6, 0x1] - b _08090B5E -_08090B42: - adds r0, r5, 0 - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bne _08090B56 - movs r0, 0x1 - strb r0, [r6, 0x1] - b _08090B5E -_08090B56: - strb r4, [r6, 0x1] - b _08090B5E -_08090B5A: - strb r5, [r6] - strb r5, [r6, 0x1] -_08090B5E: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8090B08 - - thumb_func_start sub_8090B64 -sub_8090B64: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r1, [r5] - adds r0, r1, 0 - cmp r0, 0 - beq _08090BA4 - movs r0, 0x1 - strb r0, [r4] - strb r1, [r4, 0x2] - ldrb r0, [r4, 0x2] - bl sub_8090A60 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - bne _08090B9A - ldrb r0, [r4, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - beq _08090B9A - ldrb r0, [r4, 0x2] - cmp r0, 0x7C - bne _08090BA0 -_08090B9A: - ldrb r0, [r5, 0x1] - strb r0, [r4, 0x1] - b _08090BAA -_08090BA0: - strb r6, [r4, 0x1] - b _08090BAA -_08090BA4: - strb r0, [r4, 0x2] - strb r0, [r4, 0x1] - strb r0, [r4] -_08090BAA: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8090B64 - - thumb_func_start sub_8090BB0 -sub_8090BB0: - push {lr} - adds r3, r0, 0 - ldrb r0, [r1] - movs r2, 0x1 - ands r2, r0 - cmp r2, 0 - beq _08090BC8 - ldrb r0, [r1, 0x2] - strb r0, [r3] - ldrb r0, [r1, 0x1] - strb r0, [r3, 0x1] - b _08090BCA -_08090BC8: - strb r2, [r3] -_08090BCA: - pop {r0} - bx r0 - thumb_func_end sub_8090BB0 - - thumb_func_start sub_8090BD0 -sub_8090BD0: - lsls r0, 24 - ldr r1, _08090BE0 - ldr r1, [r1] - lsrs r0, 19 - adds r0, r1 - ldrb r0, [r0, 0xC] - bx lr - .align 2, 0 -_08090BE0: .4byte gUnknown_20389A4 - thumb_func_end sub_8090BD0 - - thumb_func_start sub_8090BE4 -sub_8090BE4: - push {r4,lr} - adds r4, r0, 0 - ldrb r0, [r4, 0x2] - cmp r0, 0x69 - bne _08090BF6 - adds r0, r4, 0 - bl sub_80915D4 - b _08090C24 -_08090BF6: - ldrb r0, [r4, 0x2] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - bne _08090C14 - ldrb r0, [r4, 0x2] - ldr r1, _08090C10 - ldr r1, [r1] - lsls r0, 5 - adds r0, r1 - ldr r0, [r0, 0x4] - b _08090C24 - .align 2, 0 -_08090C10: .4byte gUnknown_20389A4 -_08090C14: - ldrb r0, [r4, 0x2] - ldr r1, _08090C2C - ldr r1, [r1] - lsls r0, 5 - adds r0, r1 - ldrb r1, [r4, 0x1] - ldr r0, [r0, 0x4] - muls r0, r1 -_08090C24: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08090C2C: .4byte gUnknown_20389A4 - thumb_func_end sub_8090BE4 - - thumb_func_start sub_8090C30 -sub_8090C30: - push {r4,lr} - adds r4, r0, 0 - ldrb r0, [r4, 0x2] - cmp r0, 0x69 - bne _08090C42 - adds r0, r4, 0 - bl sub_80915D4 - b _08090C70 -_08090C42: - ldrb r0, [r4, 0x2] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - bne _08090C60 - ldrb r0, [r4, 0x2] - ldr r1, _08090C5C - ldr r1, [r1] - lsls r0, 5 - adds r0, r1 - ldr r0, [r0, 0x8] - b _08090C70 - .align 2, 0 -_08090C5C: .4byte gUnknown_20389A4 -_08090C60: - ldrb r0, [r4, 0x2] - ldr r1, _08090C78 - ldr r1, [r1] - lsls r0, 5 - adds r0, r1 - ldrb r1, [r4, 0x1] - ldr r0, [r0, 0x8] - muls r0, r1 -_08090C70: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08090C78: .4byte gUnknown_20389A4 - thumb_func_end sub_8090C30 - - thumb_func_start sub_8090C7C -sub_8090C7C: - push {r4,lr} - adds r4, r0, 0 - ldrb r0, [r4, 0x2] - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - bne _08090C90 - movs r0, 0 - b _08090CC0 -_08090C90: - ldrb r0, [r4, 0x2] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - bne _08090CB0 - ldrb r0, [r4, 0x2] - ldr r1, _08090CAC - ldr r1, [r1] - lsls r0, 5 - adds r0, r1 - ldr r0, [r0, 0x4] - b _08090CC0 - .align 2, 0 -_08090CAC: .4byte gUnknown_20389A4 -_08090CB0: - ldrb r0, [r4, 0x2] - ldr r1, _08090CC8 - ldr r1, [r1] - lsls r0, 5 - adds r0, r1 - ldrb r1, [r4, 0x1] - ldr r0, [r0, 0x4] - muls r0, r1 -_08090CC0: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08090CC8: .4byte gUnknown_20389A4 - thumb_func_end sub_8090C7C - - thumb_func_start sub_8090CCC -sub_8090CCC: - push {r4,lr} - adds r4, r0, 0 - ldrb r0, [r4, 0x2] - bl sub_80914E4 - lsls r0, 24 - cmp r0, 0 - bne _08090CE0 - movs r0, 0 - b _08090D10 -_08090CE0: - ldrb r0, [r4, 0x2] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - bne _08090D00 - ldrb r0, [r4, 0x2] - ldr r1, _08090CFC - ldr r1, [r1] - lsls r0, 5 - adds r0, r1 - ldr r0, [r0, 0x8] - b _08090D10 - .align 2, 0 -_08090CFC: .4byte gUnknown_20389A4 -_08090D00: - ldrb r0, [r4, 0x2] - ldr r1, _08090D18 - ldr r1, [r1] - lsls r0, 5 - adds r0, r1 - ldrb r1, [r4, 0x1] - ldr r0, [r0, 0x8] - muls r0, r1 -_08090D10: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08090D18: .4byte gUnknown_20389A4 - thumb_func_end sub_8090CCC - - thumb_func_start sub_8090D1C -sub_8090D1C: - lsls r0, 24 - ldr r1, _08090D2C - ldr r1, [r1] - lsrs r0, 19 - adds r0, r1 - ldr r0, [r0, 0x4] - bx lr - .align 2, 0 -_08090D2C: .4byte gUnknown_20389A4 - thumb_func_end sub_8090D1C - - thumb_func_start sub_8090D30 -sub_8090D30: - lsls r0, 24 - ldr r1, _08090D40 - ldr r1, [r1] - lsrs r0, 19 - adds r0, r1 - ldr r0, [r0, 0x8] - bx lr - .align 2, 0 -_08090D40: .4byte gUnknown_20389A4 - thumb_func_end sub_8090D30 - - thumb_func_start sub_8090D44 -sub_8090D44: - lsls r0, 24 - ldr r1, _08090D54 - ldr r1, [r1] - lsrs r0, 19 - adds r0, r1 - ldrb r0, [r0, 0x1A] - bx lr - .align 2, 0 -_08090D54: .4byte gUnknown_20389A4 - thumb_func_end sub_8090D44 - - thumb_func_start sub_8090D58 -sub_8090D58: - lsls r0, 24 - ldr r1, _08090D68 - ldr r1, [r1] - lsrs r0, 19 - adds r0, r1 - ldrb r0, [r0, 0x1D] - bx lr - .align 2, 0 -_08090D68: .4byte gUnknown_20389A4 - thumb_func_end sub_8090D58 - - thumb_func_start sub_8090D6C -sub_8090D6C: - lsls r0, 24 - ldr r1, _08090D7C - ldr r1, [r1] - lsrs r0, 19 - adds r0, r1 - ldrb r0, [r0, 0x1E] - bx lr - .align 2, 0 -_08090D7C: .4byte gUnknown_20389A4 - thumb_func_end sub_8090D6C - - thumb_func_start sub_8090D80 -sub_8090D80: - lsls r0, 24 - ldr r2, _08090D94 - ldr r2, [r2] - lsrs r0, 19 - adds r0, r2 - adds r0, 0x1B - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08090D94: .4byte gUnknown_20389A4 - thumb_func_end sub_8090D80 - - thumb_func_start sub_8090D98 -sub_8090D98: - lsls r0, 24 - ldr r1, _08090DA8 - ldr r1, [r1] - lsrs r0, 19 - adds r0, r1 - ldr r0, [r0, 0x10] - bx lr - .align 2, 0 -_08090DA8: .4byte gUnknown_20389A4 - thumb_func_end sub_8090D98 - - thumb_func_start sub_8090DAC -sub_8090DAC: - lsls r0, 24 - ldr r2, _08090DC0 - ldr r2, [r2] - lsrs r0, 19 - adds r0, r2 - adds r0, 0x14 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08090DC0: .4byte gUnknown_20389A4 - thumb_func_end sub_8090DAC - - thumb_func_start sub_8090DC4 -sub_8090DC4: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x54 - adds r6, r0, 0 - adds r4, r1, 0 - mov r8, r2 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08090E10 - ldr r1, [r0] - lsls r0, r4, 5 - adds r0, r1 - ldr r1, [r0] - mov r0, sp - movs r2, 0x50 - bl strncpy - add r5, sp, 0x50 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - bl sub_8090A8C - movs r0, 0x1 - strb r0, [r5, 0x1] - adds r0, r6, 0 - mov r1, sp - adds r2, r5, 0 - mov r3, r8 - bl sub_8090F58 - add sp, 0x54 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08090E10: .4byte gUnknown_20389A4 - thumb_func_end sub_8090DC4 - - thumb_func_start sub_8090E14 -sub_8090E14: - push {r4-r7,lr} - sub sp, 0x50 - adds r6, r0, 0 - adds r5, r1, 0 - adds r7, r2, 0 - movs r4, 0 - cmp r7, 0 - beq _08090E2C - ldrb r1, [r7, 0x8] - negs r0, r1 - orrs r0, r1 - lsrs r4, r0, 31 -_08090E2C: - ldrb r0, [r5, 0x2] - bl sub_8090BD0 - lsls r0, 24 - cmp r0, 0 - bne _08090E3E - cmp r4, 0 - bne _08090E50 - b _08090E70 -_08090E3E: - ldrb r0, [r5, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08090E90 - cmp r4, 0 - beq _08090E70 -_08090E50: - ldr r1, _08090E68 - ldrb r0, [r5, 0x2] - ldr r2, _08090E6C - ldr r2, [r2] - lsls r0, 5 - adds r0, r2 - ldr r2, [r0] - ldrb r3, [r5, 0x1] - mov r0, sp - bl sub_800D158 - b _08090EC4 - .align 2, 0 -_08090E68: .4byte gUnknown_8109770 -_08090E6C: .4byte gUnknown_20389A4 -_08090E70: - ldr r1, _08090E88 - ldrb r0, [r5, 0x2] - ldr r2, _08090E8C - ldr r2, [r2] - lsls r0, 5 - adds r0, r2 - ldr r2, [r0] - mov r0, sp - bl sub_800D158 - b _08090EC4 - .align 2, 0 -_08090E88: .4byte gUnknown_8109778 -_08090E8C: .4byte gUnknown_20389A4 -_08090E90: - ldrb r0, [r5, 0x2] - cmp r0, 0x69 - bne _08090EB0 - ldr r4, _08090EAC - adds r0, r5, 0 - bl sub_80915D4 - adds r2, r0, 0 - mov r0, sp - adds r1, r4, 0 - bl sub_800D158 - b _08090EC4 - .align 2, 0 -_08090EAC: .4byte gUnknown_810977C -_08090EB0: - ldrb r0, [r5, 0x2] - ldr r1, _08090F2C - ldr r1, [r1] - lsls r0, 5 - adds r0, r1 - ldr r1, [r0] - mov r0, sp - movs r2, 0x50 - bl strncpy -_08090EC4: - ldrb r1, [r5] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08090EE2 - ldr r1, _08090F30 - adds r0, r6, 0 - mov r2, sp - bl sub_800D158 - mov r0, sp - adds r1, r6, 0 - movs r2, 0x50 - bl strncpy -_08090EE2: - cmp r7, 0 - beq _08090F38 - ldrb r0, [r7, 0x4] - cmp r0, 0 - beq _08090F0A - ldrb r1, [r5] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08090F0A - ldr r1, _08090F34 - adds r0, r6, 0 - mov r2, sp - bl sub_800D158 - mov r0, sp - adds r1, r6, 0 - movs r2, 0x50 - bl strncpy -_08090F0A: - ldr r0, [r7] - cmp r0, 0x1 - beq _08090F14 - cmp r0, 0x3 - bne _08090F44 -_08090F14: - ldrb r1, [r5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08090F38 - adds r0, r6, 0 - mov r1, sp - adds r2, r5, 0 - adds r3, r7, 0 - bl sub_8090F58 - b _08090F50 - .align 2, 0 -_08090F2C: .4byte gUnknown_20389A4 -_08090F30: .4byte gUnknown_8109784 -_08090F34: .4byte gUnknown_810978C -_08090F38: - adds r0, r6, 0 - mov r1, sp - movs r2, 0x50 - bl strncpy - b _08090F50 -_08090F44: - adds r0, r6, 0 - mov r1, sp - adds r2, r5, 0 - adds r3, r7, 0 - bl sub_8090F58 -_08090F50: - add sp, 0x50 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8090E14 - - thumb_func_start sub_8090F58 -sub_8090F58: - push {r4-r6,lr} - sub sp, 0x2C - adds r5, r0, 0 - adds r6, r1, 0 - adds r0, r2, 0 - adds r4, r3, 0 - cmp r4, 0 - bne _08090F6C - adds r0, r5, 0 - b _08090F94 -_08090F6C: - ldr r1, [r4] - cmp r1, 0x1 - bcc _08090F8A - cmp r1, 0x2 - bhi _08090F7E - bl sub_8090BE4 - adds r1, r0, 0 - b _08090F8C -_08090F7E: - cmp r1, 0x4 - bhi _08090F8A - bl sub_8090C30 - adds r1, r0, 0 - b _08090F8C -_08090F8A: - movs r1, 0 -_08090F8C: - cmp r1, 0 - bne _08090F9C - adds r0, r5, 0 - adds r1, r6, 0 -_08090F94: - movs r2, 0x50 - bl strncpy - b _08090FDE -_08090F9C: - movs r2, 0x6 - ldrsh r0, [r4, r2] - cmp r0, 0 - beq _08090FC8 - adds r0, r1, 0 - add r1, sp, 0x4 - movs r2, 0x1 - bl sub_8090FEC - ldr r1, _08090FC4 - movs r0, 0x6 - ldrsh r3, [r4, r0] - add r2, sp, 0x4 - str r2, [sp] - adds r0, r5, 0 - adds r2, r6, 0 - bl sub_800D158 - b _08090FDE - .align 2, 0 -_08090FC4: .4byte gUnknown_8109794 -_08090FC8: - adds r0, r1, 0 - add r1, sp, 0x4 - movs r2, 0 - bl sub_8090FEC - ldr r1, _08090FE8 - adds r0, r5, 0 - adds r2, r6, 0 - add r3, sp, 0x4 - bl sub_800D158 -_08090FDE: - add sp, 0x2C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08090FE8: .4byte gUnknown_81097A4 - thumb_func_end sub_8090F58 - - thumb_func_start sub_8090FEC -sub_8090FEC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r5, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - mov r10, r2 - movs r0, 0 - mov r8, r0 - movs r6, 0 - movs r2, 0 - ldr r1, _08091050 - mov r9, r1 - mov r12, r9 -_0809100E: - movs r1, 0 - lsls r3, r2, 2 - ldr r7, _08091054 - adds r0, r3, r7 - ldr r0, [r0] - adds r7, r2, 0x1 - cmp r5, r0 - blt _0809102C - ldr r2, _08091054 -_08091020: - adds r0, r3, r2 - ldr r0, [r0] - subs r5, r0 - adds r1, 0x1 - cmp r5, r0 - bge _08091020 -_0809102C: - cmp r1, 0x9 - ble _08091032 - movs r1, 0x9 -_08091032: - cmp r1, 0 - beq _0809105C - movs r0, 0x1 - mov r8, r0 - lsls r1, 1 - mov r2, r12 - adds r0, r1, r2 - ldrb r0, [r0] - strb r0, [r4] - adds r4, 0x1 - ldr r0, _08091058 - adds r1, r0 - ldrb r0, [r1] - b _0809106C - .align 2, 0 -_08091050: .4byte gUnknown_81097C4 -_08091054: .4byte gUnknown_81097B0 -_08091058: .4byte gUnknown_81097C5 -_0809105C: - mov r1, r8 - cmp r1, 0 - beq _08091074 - mov r2, r12 - ldrb r0, [r2] - strb r0, [r4] - adds r4, 0x1 - ldrb r0, [r2, 0x1] -_0809106C: - strb r0, [r4] - adds r4, 0x1 - adds r6, 0x1 - b _08091080 -_08091074: - mov r0, r10 - cmp r0, 0 - beq _08091080 - movs r0, 0x60 - strb r0, [r4] - adds r4, 0x1 -_08091080: - adds r2, r7, 0 - cmp r2, 0x4 - ble _0809100E - lsls r1, r5, 1 - mov r2, r9 - adds r0, r1, r2 - ldrb r0, [r0] - strb r0, [r4] - adds r4, 0x1 - mov r0, r9 - adds r0, 0x1 - adds r1, r0 - ldrb r0, [r1] - strb r0, [r4] - adds r6, 0x1 - movs r0, 0 - strb r0, [r4, 0x1] - adds r0, r6, 0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8090FEC - - thumb_func_start sub_80910B4 -sub_80910B4: - push {r4-r7,lr} - movs r2, 0 - movs r4, 0 - ldr r7, _080910C0 - movs r3, 0 - b _080910DA - .align 2, 0 -_080910C0: .4byte gUnknown_203B460 -_080910C4: - cmp r2, r4 - ble _080910D4 - ldr r0, [r7] - lsls r1, r4, 2 - adds r1, r0, r1 - adds r0, r3 - ldr r0, [r0] - str r0, [r1] -_080910D4: - adds r3, 0x4 - adds r2, 0x1 - adds r4, 0x1 -_080910DA: - cmp r2, 0x13 - bgt _08091106 - ldr r0, [r7] - adds r0, r3, r0 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08091106 - ldr r5, _0809112C - movs r6, 0x1 -_080910F0: - adds r3, 0x4 - adds r2, 0x1 - cmp r2, 0x13 - bgt _08091106 - ldr r0, [r5] - adds r0, r3, r0 - ldrb r1, [r0] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _080910F0 -_08091106: - cmp r2, 0x14 - bne _080910C4 - cmp r4, 0x13 - bgt _08091124 - ldr r3, _0809112C - movs r2, 0 -_08091112: - lsls r1, r4, 2 - ldr r0, [r3] - adds r1, r0 - strb r2, [r1, 0x2] - strb r2, [r1, 0x1] - strb r2, [r1] - adds r4, 0x1 - cmp r4, 0x13 - ble _08091112 -_08091124: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809112C: .4byte gUnknown_203B460 - thumb_func_end sub_80910B4 - - thumb_func_start sub_8091130 -sub_8091130: - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r3, 0 - ldr r0, _08091154 - ldr r2, [r0] - movs r5, 0x1 -_0809113E: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _08091158 - ldrb r0, [r2, 0x2] - cmp r0, r4 - bne _08091158 - adds r0, r3, 0 - b _08091164 - .align 2, 0 -_08091154: .4byte gUnknown_203B460 -_08091158: - adds r2, 0x4 - adds r3, 0x1 - cmp r3, 0x13 - ble _0809113E - movs r0, 0x1 - negs r0, r0 -_08091164: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8091130 - - thumb_func_start sub_809116C -sub_809116C: - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - ldr r0, _080911A0 - ldr r2, [r0] - movs r6, 0x1 - movs r3, 0x13 -_0809117C: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0809118E - ldrb r0, [r2, 0x2] - cmp r0, r5 - bne _0809118E - adds r4, 0x1 -_0809118E: - adds r2, 0x4 - subs r3, 0x1 - cmp r3, 0 - bge _0809117C - adds r0, r4, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080911A0: .4byte gUnknown_203B460 - thumb_func_end sub_809116C - - thumb_func_start sub_80911A4 -sub_80911A4: - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r5, 0 - bl sub_809116C - adds r4, r0, 0 - movs r3, 0 - ldr r0, _080911F4 - ldr r7, [r0] - movs r6, 0x1 -_080911BA: - movs r0, 0x58 - muls r0, r3 - adds r2, r7, r0 - ldrh r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _080911E2 - lsrs r0, r1, 1 - ands r0, r6 - cmp r0, 0 - beq _080911E2 - adds r0, r2, 0 - adds r0, 0x28 - ldrb r0, [r0] - cmp r0, 0 - beq _080911E2 - cmp r0, r5 - bne _080911E2 - adds r4, 0x1 -_080911E2: - adds r3, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r3, r0 - ble _080911BA - adds r0, r4, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080911F4: .4byte gUnknown_203B45C - thumb_func_end sub_80911A4 - - thumb_func_start sub_80911F8 -sub_80911F8: - push {r4,r5,lr} - adds r2, r0, 0 - ldr r4, _08091230 - cmp r2, 0x12 - bgt _0809121C - adds r5, r4, 0 - lsls r0, r2, 2 - adds r3, r0, 0x4 -_08091208: - ldr r0, [r5] - lsls r1, r2, 2 - adds r1, r0, r1 - adds r0, r3 - ldr r0, [r0] - str r0, [r1] - adds r3, 0x4 - adds r2, 0x1 - cmp r2, 0x12 - ble _08091208 -_0809121C: - ldr r0, [r4] - adds r0, 0x4E - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x4C - strb r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08091230: .4byte gUnknown_203B460 - thumb_func_end sub_80911F8 - - thumb_func_start sub_8091234 -sub_8091234: - ldr r3, _08091248 - ldr r1, [r3] - lsls r0, 2 - adds r1, r0 - movs r2, 0 - strb r2, [r1, 0x2] - ldr r1, [r3] - adds r1, r0 - strb r2, [r1] - bx lr - .align 2, 0 -_08091248: .4byte gUnknown_203B460 - thumb_func_end sub_8091234 - - thumb_func_start sub_809124C -sub_809124C: - push {lr} - sub sp, 0x4 - adds r3, r0, 0 - adds r2, r1, 0 - lsls r3, 24 - lsrs r3, 24 - lsls r2, 24 - lsrs r2, 24 - mov r0, sp - adds r1, r3, 0 - bl sub_8090A8C - mov r0, sp - bl sub_8091290 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_809124C - - thumb_func_start sub_8091274 -sub_8091274: - push {lr} - sub sp, 0x4 - adds r1, r0, 0 - mov r0, sp - bl sub_8090B64 - mov r0, sp - bl sub_8091290 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8091274 - - thumb_func_start sub_8091290 -sub_8091290: - push {r4-r6,lr} - adds r4, r0, 0 - movs r3, 0 - ldr r5, _080912B4 - movs r6, 0x1 -_0809129A: - lsls r1, r3, 2 - ldr r0, [r5] - adds r2, r1, r0 - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - bne _080912B8 - ldr r0, [r4] - str r0, [r2] - movs r0, 0 - b _080912C0 - .align 2, 0 -_080912B4: .4byte gUnknown_203B460 -_080912B8: - adds r3, 0x1 - cmp r3, 0x13 - ble _0809129A - movs r0, 0x1 -_080912C0: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8091290 - - thumb_func_start sub_80912C8 -sub_80912C8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r5, 0 - movs r6, 0 -_080912D6: - ldr r0, _0809139C - lsls r1, r5, 2 - ldr r0, [r0] - adds r4, r0, r1 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080912FE - ldrb r0, [r4, 0x2] - cmp r0, 0x69 - bne _080912FE - adds r0, r4, 0 - bl sub_80915D4 - bl sub_80913A0 - strb r6, [r4, 0x2] - strb r6, [r4, 0x1] - strb r6, [r4] -_080912FE: - adds r5, 0x1 - cmp r5, 0x13 - ble _080912D6 - bl sub_80910B4 - movs r5, 0 -_0809130A: - movs r0, 0x1 - negs r0, r0 - mov r9, r0 - lsls r2, r5, 2 - ldr r1, _0809139C - mov r8, r1 - ldr r0, [r1] - adds r3, r2, r0 - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - mov r10, r2 - adds r7, r5, 0x1 - cmp r0, 0 - beq _08091382 - ldrb r0, [r3, 0x2] - bl sub_8090D44 - adds r6, r0, 0 - adds r4, r7, 0 - cmp r7, 0x13 - bgt _08091368 -_08091336: - lsls r5, r4, 2 - mov r1, r8 - ldr r0, [r1] - adds r2, r5, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08091362 - ldrb r0, [r2, 0x2] - bl sub_8090D44 - cmp r6, r0 - ble _08091362 - mov r9, r4 - mov r1, r8 - ldr r0, [r1] - adds r0, r5 - ldrb r0, [r0, 0x2] - bl sub_8090D44 - adds r6, r0, 0 -_08091362: - adds r4, 0x1 - cmp r4, 0x13 - ble _08091336 -_08091368: - mov r4, r9 - cmp r4, 0 - blt _08091382 - ldr r0, _0809139C - ldr r1, [r0] - mov r0, r10 - adds r2, r1, r0 - ldr r3, [r2] - lsls r0, r4, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2] - str r3, [r1] -_08091382: - adds r5, r7, 0 - cmp r5, 0x13 - ble _0809130A - bl sub_80910B4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809139C: .4byte gUnknown_203B460 - thumb_func_end sub_80912C8 - - thumb_func_start sub_80913A0 -sub_80913A0: - push {lr} - ldr r1, _080913C4 - ldr r1, [r1] - movs r3, 0x98 - lsls r3, 2 - adds r2, r1, r3 - ldr r1, [r2] - adds r1, r0 - str r1, [r2] - ldr r0, _080913C8 - cmp r1, r0 - bgt _080913BE - cmp r1, 0 - bge _080913C0 - movs r0, 0 -_080913BE: - str r0, [r2] -_080913C0: - pop {r0} - bx r0 - .align 2, 0 -_080913C4: .4byte gUnknown_203B460 -_080913C8: .4byte 0x0001869f - thumb_func_end sub_80913A0 - - thumb_func_start sub_80913CC -sub_80913CC: - lsls r0, 24 - ldr r1, _080913DC - ldr r1, [r1] - lsrs r0, 19 - adds r0, r1 - ldrh r0, [r0, 0x18] - bx lr - .align 2, 0 -_080913DC: .4byte gUnknown_20389A4 - thumb_func_end sub_80913CC - - thumb_func_start sub_80913E0 -sub_80913E0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x5C - adds r6, r0, 0 - adds r5, r1, 0 - mov r8, r2 - ldrb r0, [r6, 0x2] - bl sub_8090D98 - ldrb r1, [r6, 0x2] - add r0, sp, 0x4 - movs r2, 0 - bl sub_8090DC4 - ldrb r0, [r6, 0x2] - cmp r0, 0x7C - bne _08091414 - ldr r0, _080914D4 - ldrb r1, [r6, 0x1] - adds r1, 0x7D - lsls r1, 24 - lsrs r1, 24 - movs r2, 0 - bl sub_8090DC4 -_08091414: - adds r0, r5, 0 - bl sub_80073B8 - movs r7, 0 - str r7, [sp] - movs r0, 0x10 - movs r1, 0 - add r2, sp, 0x4 - adds r3, r5, 0 - bl sub_8014FF0 - ldrb r0, [r6, 0x2] - bl sub_8090D98 - adds r2, r0, 0 - str r7, [sp] - movs r0, 0x8 - movs r1, 0x18 - adds r3, r5, 0 - bl sub_8014FF0 - ldrb r0, [r6, 0x2] - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _080914B6 - add r4, sp, 0x54 - ldrb r0, [r6, 0x2] - bl sub_80913CC - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl sub_8092A88 - movs r0, 0x7 - str r0, [sp] - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x52 - movs r3, 0xC8 - bl sub_80078A4 - ldr r0, _080914D8 - ldr r2, [r0] - str r7, [sp] - movs r0, 0x4 - movs r1, 0x54 - adds r3, r5, 0 - bl sub_8014FF0 - adds r0, r4, 0 - bl sub_8092B00 - lsls r0, 24 - lsrs r0, 24 - bl sub_8092334 - adds r2, r0, 0 - str r7, [sp] - movs r0, 0x40 - movs r1, 0x54 - adds r3, r5, 0 - bl sub_8014FF0 - adds r0, r4, 0 - bl sub_8092BF4 - ldr r1, _080914DC - str r0, [r1] - ldr r0, _080914E0 - ldr r2, [r0] - str r7, [sp] - movs r0, 0x80 - movs r1, 0x54 - adds r3, r5, 0 - bl sub_8014FF0 -_080914B6: - adds r0, r5, 0 - bl sub_80073E0 - ldrb r0, [r6, 0x2] - bl sub_8090D98 - mov r1, r8 - bl sub_8097DF0 - add sp, 0x5C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080914D4: .4byte gUnknown_202DE58 -_080914D8: .4byte gUnknown_810CF0C -_080914DC: .4byte gUnknown_202DE30 -_080914E0: .4byte gUnknown_8115970 - thumb_func_end sub_80913E0 - - thumb_func_start sub_80914E4 -sub_80914E4: - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - cmp r0, 0 - beq _0809151A - cmp r0, 0x69 - beq _0809151A - cmp r0, 0x79 - beq _0809151A - cmp r0, 0x77 - beq _0809151A - cmp r0, 0x78 - beq _0809151A - cmp r0, 0x7A - beq _0809151A - bl sub_8090D30 - cmp r0, 0 - beq _0809151A - adds r0, r4, 0 - bl sub_8090D1C - cmp r0, 0 - beq _0809151A - movs r0, 0x1 - b _0809151C -_0809151A: - movs r0, 0 -_0809151C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80914E4 - - thumb_func_start sub_8091524 -sub_8091524: - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0 - beq _0809153C - cmp r0, 0x69 - beq _0809153C - cmp r1, 0x7C - beq _0809153C - movs r0, 0x1 - b _0809153E -_0809153C: - movs r0, 0 -_0809153E: - pop {r1} - bx r1 - thumb_func_end sub_8091524 - - thumb_func_start sub_8091544 -sub_8091544: - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0 - beq _08091568 - cmp r0, 0x69 - beq _08091568 - cmp r0, 0x79 - beq _08091568 - cmp r0, 0x77 - beq _08091568 - cmp r0, 0x78 - beq _08091568 - cmp r1, 0x7A - beq _08091568 - movs r0, 0x1 - b _0809156A -_08091568: - movs r0, 0 -_0809156A: - pop {r1} - bx r1 - thumb_func_end sub_8091544 - - thumb_func_start sub_8091570 -sub_8091570: - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _08091596 - adds r0, r4, 0 - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _08091596 - movs r0, 0 - b _08091598 -_08091596: - movs r0, 0x1 -_08091598: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8091570 - - thumb_func_start sub_80915A0 -sub_80915A0: - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0xE0 - beq _080915CC - cmp r0, 0xE1 - beq _080915CC - cmp r0, 0xE2 - beq _080915CC - cmp r0, 0xE3 - beq _080915CC - cmp r0, 0xE4 - beq _080915CC - cmp r0, 0xE5 - beq _080915CC - cmp r0, 0xE6 - beq _080915CC - cmp r1, 0xE7 - beq _080915CC - movs r0, 0 - b _080915CE -_080915CC: - movs r0, 0x1 -_080915CE: - pop {r1} - bx r1 - thumb_func_end sub_80915A0 - - thumb_func_start sub_80915D4 -sub_80915D4: - ldr r1, _080915E0 - ldrb r0, [r0, 0x1] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_080915E0: .4byte gUnknown_810A3F0 - thumb_func_end sub_80915D4 - - thumb_func_start sub_80915E4 -sub_80915E4: - ldr r1, _080915F0 - ldrb r0, [r0, 0x1] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_080915F0: .4byte gUnknown_810A3F0 - thumb_func_end sub_80915E4 - - thumb_func_start sub_80915F4 -sub_80915F4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r7, r3, 0 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - ldr r0, _080916B8 - strh r0, [r7] - movs r0, 0 - strh r0, [r7, 0x2] - adds r0, r5, 0 - bl sub_8091764 - lsls r0, 24 - cmp r0, 0 - bne _0809161E - b _08091756 -_0809161E: - movs r1, 0x8 - ldrsh r0, [r6, r1] - movs r1, 0 - bl sub_808DC68 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r2, 0x8 - ldrsh r0, [r6, r2] - movs r1, 0x1 - bl sub_808DC68 - lsls r0, 24 - lsrs r0, 24 - adds r2, r5, 0 - subs r2, 0x55 - ldr r5, _080916BC - lsls r2, 1 - lsls r1, r4, 3 - adds r1, r4 - lsls r1, 2 - adds r1, r2, r1 - adds r1, r5 - movs r4, 0 - ldrsh r3, [r1, r4] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r2, r1 - adds r2, r5 - movs r1, 0 - ldrsh r0, [r2, r1] - movs r2, 0x14 - ldrsh r1, [r6, r2] - adds r3, r0 - ldrh r4, [r6, 0x14] - adds r3, r4 - strh r3, [r6, 0x14] - movs r2, 0x14 - ldrsh r0, [r6, r2] - subs r1, r0, r1 - lsls r3, 16 - cmp r3, 0 - bgt _0809167C - movs r0, 0x1 - strh r0, [r6, 0x14] -_0809167C: - movs r4, 0x14 - ldrsh r0, [r6, r4] - ldr r2, _080916C0 - cmp r0, r2 - ble _08091688 - strh r2, [r6, 0x14] -_08091688: - movs r0, 0 - cmp r1, 0x8 - bgt _0809169C - movs r0, 0x1 - cmp r1, 0x4 - bgt _0809169C - movs r0, 0x3 - cmp r1, 0x2 - ble _0809169C - movs r0, 0x2 -_0809169C: - strh r0, [r7] - mov r1, r8 - cmp r1, 0 - bne _08091756 - cmp r0, 0 - bne _080916C4 - movs r0, 0x10 - bl RandomCapped - cmp r0, 0xA - bne _080916C4 - movs r0, 0xF - b _080916D2 - .align 2, 0 -_080916B8: .4byte 0x0000ffff -_080916BC: .4byte gUnknown_810A580 -_080916C0: .4byte 0x000003e7 -_080916C4: - movs r0, 0x4 - bl RandomCapped - ldr r1, _080916EC - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] -_080916D2: - strh r0, [r7, 0x2] - ldrh r1, [r7, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080916F6 - ldrb r0, [r6, 0x18] - cmp r0, 0xFE - bhi _080916F0 - adds r0, 0x1 - strb r0, [r6, 0x18] - b _080916F6 - .align 2, 0 -_080916EC: .4byte gUnknown_81097E0 -_080916F0: - ldr r0, _0809170C - ands r0, r1 - strh r0, [r7, 0x2] -_080916F6: - ldrh r1, [r7, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08091716 - ldrb r0, [r6, 0x19] - cmp r0, 0xFE - bhi _08091710 - adds r0, 0x1 - strb r0, [r6, 0x19] - b _08091716 - .align 2, 0 -_0809170C: .4byte 0x0000fffe -_08091710: - ldr r0, _0809172C - ands r0, r1 - strh r0, [r7, 0x2] -_08091716: - ldrh r1, [r7, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08091736 - ldrb r0, [r6, 0x1A] - cmp r0, 0xFE - bhi _08091730 - adds r0, 0x1 - strb r0, [r6, 0x1A] - b _08091736 - .align 2, 0 -_0809172C: .4byte 0x0000fffd -_08091730: - ldr r0, _0809174C - ands r0, r1 - strh r0, [r7, 0x2] -_08091736: - ldrh r1, [r7, 0x2] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08091756 - ldrb r0, [r6, 0x1B] - cmp r0, 0xFE - bhi _08091750 - adds r0, 0x1 - strb r0, [r6, 0x1B] - b _08091756 - .align 2, 0 -_0809174C: .4byte 0x0000fffb -_08091750: - ldr r0, _08091760 - ands r0, r1 - strh r0, [r7, 0x2] -_08091756: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08091760: .4byte 0x0000fff7 - thumb_func_end sub_80915F4 - - thumb_func_start sub_8091764 -sub_8091764: - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x55 - bls _08091776 - cmp r0, 0x66 - bhi _08091776 - movs r0, 0x1 - b _08091778 -_08091776: - movs r0, 0 -_08091778: - pop {r1} - bx r1 - thumb_func_end sub_8091764 - - thumb_func_start sub_809177C -sub_809177C: - push {r4,lr} - movs r4, 0 -_08091780: - lsls r1, r4, 2 - ldr r0, _080917A4 - ldr r0, [r0] - adds r2, r1, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080917A8 - ldrb r0, [r2, 0x2] - bl sub_8091764 - lsls r0, 24 - cmp r0, 0 - beq _080917A8 - movs r0, 0x1 - b _080917B0 - .align 2, 0 -_080917A4: .4byte gUnknown_203B460 -_080917A8: - adds r4, 0x1 - cmp r4, 0x13 - ble _08091780 - movs r0, 0 -_080917B0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809177C - - thumb_func_start sub_80917B8 -sub_80917B8: - push {r4,lr} - adds r4, r0, 0 - ldrb r0, [r4, 0x2] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - beq _080917E0 - ldr r2, _080917DC - ldr r1, [r2] - ldrb r0, [r4, 0x2] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r0, [r1] - ldrb r3, [r4, 0x1] - adds r0, r3 - b _080917F0 - .align 2, 0 -_080917DC: .4byte gUnknown_203B460 -_080917E0: - ldr r2, _0809180C - ldr r1, [r2] - ldrb r0, [r4, 0x2] - lsls r0, 1 - adds r1, 0x50 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 -_080917F0: - strh r0, [r1] - ldr r0, [r2] - ldrb r1, [r4, 0x2] - lsls r1, 1 - adds r0, 0x50 - adds r2, r0, r1 - ldrh r0, [r2] - ldr r1, _08091810 - cmp r0, r1 - bls _08091806 - strh r1, [r2] -_08091806: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809180C: .4byte gUnknown_203B460 -_08091810: .4byte 0x000003e7 - thumb_func_end sub_80917B8 - - thumb_func_start sub_8091814 -sub_8091814: - push {lr} - movs r3, 0 - ldr r0, _0809183C - ldr r0, [r0] - movs r2, 0x8C - lsls r2, 2 - adds r1, r0, r2 - movs r2, 0x7 -_08091824: - ldrb r0, [r1] - cmp r0, 0 - beq _0809182C - adds r3, 0x1 -_0809182C: - adds r1, 0x4 - subs r2, 0x1 - cmp r2, 0 - bge _08091824 - adds r0, r3, 0 - pop {r1} - bx r1 - .align 2, 0 -_0809183C: .4byte gUnknown_203B460 - thumb_func_end sub_8091814 - - thumb_func_start sub_8091840 -sub_8091840: - lsls r0, 24 - ldr r1, _08091858 - lsrs r0, 22 - movs r2, 0x8C - lsls r2, 2 - adds r0, r2 - ldr r1, [r1] - adds r1, r0 - movs r0, 0 - strb r0, [r1] - strb r0, [r1, 0x1] - bx lr - .align 2, 0 -_08091858: .4byte gUnknown_203B460 - thumb_func_end sub_8091840 - - thumb_func_start sub_809185C -sub_809185C: - lsls r0, 24 - ldr r1, _08091870 - lsrs r0, 22 - movs r2, 0x8C - lsls r2, 2 - adds r0, r2 - ldr r1, [r1] - adds r1, r0 - adds r0, r1, 0 - bx lr - .align 2, 0 -_08091870: .4byte gUnknown_203B460 - thumb_func_end sub_809185C - - thumb_func_start sub_8091874 -sub_8091874: - push {r4-r7,lr} - movs r2, 0 - movs r4, 0 - ldr r7, _08091884 - movs r6, 0x8C - lsls r6, 2 - movs r3, 0 - b _080918A0 - .align 2, 0 -_08091884: .4byte gUnknown_203B460 -_08091888: - cmp r2, r4 - ble _0809189A - ldr r0, [r7] - lsls r1, r4, 2 - adds r0, r6 - adds r1, r0, r1 - adds r0, r3 - ldr r0, [r0] - str r0, [r1] -_0809189A: - adds r3, 0x4 - adds r2, 0x1 - adds r4, 0x1 -_080918A0: - cmp r2, 0x7 - bgt _080918CA - ldr r0, [r7] - adds r0, r3 - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0 - bne _080918CA - ldr r5, _080918E8 - movs r1, 0x8C - lsls r1, 2 -_080918B6: - adds r3, 0x4 - adds r2, 0x1 - cmp r2, 0x7 - bgt _080918CA - ldr r0, [r5] - adds r0, r3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080918B6 -_080918CA: - cmp r2, 0x8 - bne _08091888 - cmp r4, 0x7 - bgt _080918E0 -_080918D2: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8091840 - adds r4, 0x1 - cmp r4, 0x7 - ble _080918D2 -_080918E0: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080918E8: .4byte gUnknown_203B460 - thumb_func_end sub_8091874 - - thumb_func_start sub_80918EC -sub_80918EC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r0, 0 -_080918F8: - adds r1, r0, 0x1 - mov r8, r1 - mov r6, r8 - cmp r1, 0x7 - bgt _08091964 - ldr r1, _08091978 - mov r9, r1 - lsls r7, r0, 2 - movs r0, 0x8C - lsls r0, 2 - mov r10, r0 -_0809190E: - mov r1, r9 - ldr r0, [r1] - adds r0, r7 - add r0, r10 - ldrb r0, [r0] - bl sub_8090D44 - adds r4, r0, 0 - mov r1, r9 - ldr r0, [r1] - lsls r5, r6, 2 - adds r0, r5 - add r0, r10 - ldrb r0, [r0] - bl sub_8090D44 - cmp r4, r0 - bgt _0809194C - cmp r4, r0 - bne _0809195E - mov r1, r9 - ldr r0, [r1] - adds r2, r0, r7 - ldr r1, _0809197C - adds r2, r1 - adds r0, r5 - adds r0, r1 - ldrb r1, [r2] - ldrb r0, [r0] - cmp r1, r0 - bcs _0809195E -_0809194C: - mov r1, r9 - ldr r0, [r1] - add r0, r10 - adds r2, r0, r7 - ldr r3, [r2] - adds r0, r5 - ldr r1, [r0] - str r1, [r2] - str r3, [r0] -_0809195E: - adds r6, 0x1 - cmp r6, 0x7 - ble _0809190E -_08091964: - mov r0, r8 - cmp r0, 0x6 - ble _080918F8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08091978: .4byte gUnknown_203B460 -_0809197C: .4byte 0x00000231 - thumb_func_end sub_80918EC - - thumb_func_start sub_8091980 -sub_8091980: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - mov r1, sp - ldr r0, _080919F4 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r0] - str r0, [r1] - movs r5, 0 -_0809199C: - lsls r0, r5, 24 - lsrs r0, 24 - bl sub_8091840 - adds r5, 0x1 - cmp r5, 0x7 - ble _0809199C - mov r0, r8 - lsls r7, r0, 2 - ldr r6, _080919F8 - movs r5, 0x7 -_080919B2: - adds r0, r6, 0 - bl RandomCapped - adds r4, r0, 0 - adds r0, r6, 0 - bl RandomCapped - adds r2, r0, 0 - mov r1, sp - adds r0, r1, r7 - ldr r0, [r0] - adds r1, r4, 0 - bl sub_8091E94 - lsls r0, 24 - lsrs r0, 24 - bl sub_80919FC - subs r5, 0x1 - cmp r5, 0 - bge _080919B2 - bl sub_80918EC - mov r0, r8 - bl sub_8091BB4 - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080919F4: .4byte gUnknown_81097E8 -_080919F8: .4byte 0x0000270f - thumb_func_end sub_8091980 - - thumb_func_start sub_80919FC -sub_80919FC: - push {r4,r5,lr} - sub sp, 0x4 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r0, sp - bl sub_8090B08 - movs r3, 0 - ldr r5, _08091A34 - movs r4, 0x8C - lsls r4, 2 -_08091A14: - ldr r1, [r5] - lsls r2, r3, 2 - adds r0, r1, r2 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _08091A38 - movs r3, 0x8C - lsls r3, 2 - adds r0, r1, r3 - adds r0, r2 - ldr r1, [sp] - str r1, [r0] - movs r0, 0 - b _08091A40 - .align 2, 0 -_08091A34: .4byte gUnknown_203B460 -_08091A38: - adds r3, 0x1 - cmp r3, 0x7 - ble _08091A14 - movs r0, 0x1 -_08091A40: - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80919FC - - thumb_func_start sub_8091A48 -sub_8091A48: - push {lr} - movs r3, 0 - ldr r0, _08091A70 - ldr r0, [r0] - movs r2, 0x94 - lsls r2, 2 - adds r1, r0, r2 - movs r2, 0x3 -_08091A58: - ldrb r0, [r1] - cmp r0, 0 - beq _08091A60 - adds r3, 0x1 -_08091A60: - adds r1, 0x4 - subs r2, 0x1 - cmp r2, 0 - bge _08091A58 - adds r0, r3, 0 - pop {r1} - bx r1 - .align 2, 0 -_08091A70: .4byte gUnknown_203B460 - thumb_func_end sub_8091A48 - - thumb_func_start sub_8091A74 -sub_8091A74: - lsls r0, 24 - ldr r1, _08091A8C - lsrs r0, 22 - movs r2, 0x94 - lsls r2, 2 - adds r0, r2 - ldr r1, [r1] - adds r1, r0 - movs r0, 0 - strb r0, [r1] - strb r0, [r1, 0x1] - bx lr - .align 2, 0 -_08091A8C: .4byte gUnknown_203B460 - thumb_func_end sub_8091A74 - - thumb_func_start sub_8091A90 -sub_8091A90: - lsls r0, 24 - ldr r1, _08091AA4 - lsrs r0, 22 - movs r2, 0x94 - lsls r2, 2 - adds r0, r2 - ldr r1, [r1] - adds r1, r0 - adds r0, r1, 0 - bx lr - .align 2, 0 -_08091AA4: .4byte gUnknown_203B460 - thumb_func_end sub_8091A90 - - thumb_func_start sub_8091AA8 -sub_8091AA8: - push {r4-r7,lr} - movs r2, 0 - movs r4, 0 - ldr r7, _08091AB8 - movs r6, 0x94 - lsls r6, 2 - movs r3, 0 - b _08091AD4 - .align 2, 0 -_08091AB8: .4byte gUnknown_203B460 -_08091ABC: - cmp r2, r4 - ble _08091ACE - ldr r0, [r7] - lsls r1, r4, 2 - adds r0, r6 - adds r1, r0, r1 - adds r0, r3 - ldr r0, [r0] - str r0, [r1] -_08091ACE: - adds r3, 0x4 - adds r2, 0x1 - adds r4, 0x1 -_08091AD4: - cmp r2, 0x3 - bgt _08091AFE - ldr r0, [r7] - adds r0, r3 - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0 - bne _08091AFE - ldr r5, _08091B1C - movs r1, 0x94 - lsls r1, 2 -_08091AEA: - adds r3, 0x4 - adds r2, 0x1 - cmp r2, 0x3 - bgt _08091AFE - ldr r0, [r5] - adds r0, r3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08091AEA -_08091AFE: - cmp r2, 0x4 - bne _08091ABC - cmp r4, 0x3 - bgt _08091B14 -_08091B06: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8091A74 - adds r4, 0x1 - cmp r4, 0x3 - ble _08091B06 -_08091B14: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08091B1C: .4byte gUnknown_203B460 - thumb_func_end sub_8091AA8 - - thumb_func_start sub_8091B20 -sub_8091B20: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r0, 0 -_08091B2C: - adds r1, r0, 0x1 - mov r8, r1 - mov r6, r8 - cmp r1, 0x3 - bgt _08091B98 - ldr r1, _08091BAC - mov r9, r1 - lsls r7, r0, 2 - movs r0, 0x94 - lsls r0, 2 - mov r10, r0 -_08091B42: - mov r1, r9 - ldr r0, [r1] - adds r0, r7 - add r0, r10 - ldrb r0, [r0] - bl sub_8090D44 - adds r4, r0, 0 - mov r1, r9 - ldr r0, [r1] - lsls r5, r6, 2 - adds r0, r5 - add r0, r10 - ldrb r0, [r0] - bl sub_8090D44 - cmp r4, r0 - bgt _08091B80 - cmp r4, r0 - bne _08091B92 - mov r1, r9 - ldr r0, [r1] - adds r2, r0, r7 - ldr r1, _08091BB0 - adds r2, r1 - adds r0, r5 - adds r0, r1 - ldrb r1, [r2] - ldrb r0, [r0] - cmp r1, r0 - bcs _08091B92 -_08091B80: - mov r1, r9 - ldr r0, [r1] - add r0, r10 - adds r2, r0, r7 - ldr r3, [r2] - adds r0, r5 - ldr r1, [r0] - str r1, [r2] - str r3, [r0] -_08091B92: - adds r6, 0x1 - cmp r6, 0x3 - ble _08091B42 -_08091B98: - mov r0, r8 - cmp r0, 0x2 - ble _08091B2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08091BAC: .4byte gUnknown_203B460 -_08091BB0: .4byte 0x00000251 - thumb_func_end sub_8091B20 - - thumb_func_start sub_8091BB4 -sub_8091BB4: - push {r4-r7,lr} - sub sp, 0x10 - lsls r0, 24 - lsrs r4, r0, 24 - mov r1, sp - ldr r0, _08091C14 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldr r0, [r0] - str r0, [r1] - movs r5, 0 -_08091BCA: - lsls r0, r5, 24 - lsrs r0, 24 - bl sub_8091A74 - adds r5, 0x1 - cmp r5, 0x3 - ble _08091BCA - lsls r7, r4, 2 - ldr r6, _08091C18 - movs r5, 0x3 -_08091BDE: - adds r0, r6, 0 - bl RandomCapped - adds r4, r0, 0 - adds r0, r6, 0 - bl RandomCapped - adds r2, r0, 0 - mov r1, sp - adds r0, r1, r7 - ldr r0, [r0] - adds r1, r4, 0 - bl sub_8091E94 - lsls r0, 24 - lsrs r0, 24 - bl sub_8091C1C - subs r5, 0x1 - cmp r5, 0 - bge _08091BDE - bl sub_8091B20 - add sp, 0x10 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08091C14: .4byte gUnknown_81097F8 -_08091C18: .4byte 0x0000270f - thumb_func_end sub_8091BB4 - - thumb_func_start sub_8091C1C -sub_8091C1C: - push {r4,r5,lr} - sub sp, 0x4 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r0, sp - bl sub_8090B08 - movs r3, 0 - ldr r5, _08091C54 - movs r4, 0x94 - lsls r4, 2 -_08091C34: - ldr r1, [r5] - lsls r2, r3, 2 - adds r0, r1, r2 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _08091C58 - movs r3, 0x94 - lsls r3, 2 - adds r0, r1, r3 - adds r0, r2 - ldr r1, [sp] - str r1, [r0] - movs r0, 0 - b _08091C60 - .align 2, 0 -_08091C54: .4byte gUnknown_203B460 -_08091C58: - adds r3, 0x1 - cmp r3, 0x3 - ble _08091C34 - movs r0, 0x1 -_08091C60: - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8091C1C - - thumb_func_start sub_8091C68 -sub_8091C68: - push {r4-r6,lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809486C - movs r4, 0 - ldr r5, _08091D10 -_08091C7C: - lsls r0, r4, 2 - ldr r1, [r5] - adds r1, r0 - mov r0, sp - bl sub_8091E28 - adds r4, 0x1 - cmp r4, 0x13 - ble _08091C7C - ldr r6, _08091D10 - movs r5, 0x50 - movs r4, 0xEF -_08091C94: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - movs r2, 0xA - bl sub_809488C - adds r5, 0x2 - subs r4, 0x1 - cmp r4, 0 - bge _08091C94 - ldr r6, _08091D10 - movs r5, 0x8C - lsls r5, 2 - movs r4, 0x7 -_08091CB0: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8091DE0 - adds r5, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _08091CB0 - ldr r6, _08091D10 - movs r5, 0x94 - lsls r5, 2 - movs r4, 0x3 -_08091CCA: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8091DE0 - adds r5, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _08091CCA - ldr r4, _08091D10 - ldr r1, [r4] - movs r0, 0x98 - lsls r0, 2 - adds r1, r0 - mov r0, sp - movs r2, 0x18 - bl sub_809488C - ldr r1, [r4] - movs r0, 0x99 - lsls r0, 2 - adds r1, r0 - mov r0, sp - movs r2, 0x18 - bl sub_809488C - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x10 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08091D10: .4byte gUnknown_203B460 - thumb_func_end sub_8091C68 - - thumb_func_start sub_8091D14 -sub_8091D14: - push {r4-r6,lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809485C - movs r4, 0 - ldr r5, _08091DBC -_08091D28: - lsls r0, r4, 2 - ldr r1, [r5] - adds r1, r0 - mov r0, sp - bl sub_8091E00 - adds r4, 0x1 - cmp r4, 0x13 - ble _08091D28 - ldr r6, _08091DBC - movs r5, 0x50 - movs r4, 0xEF -_08091D40: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - movs r2, 0xA - bl sub_8094924 - adds r5, 0x2 - subs r4, 0x1 - cmp r4, 0 - bge _08091D40 - ldr r6, _08091DBC - movs r5, 0x8C - lsls r5, 2 - movs r4, 0x7 -_08091D5C: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8091DC0 - adds r5, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _08091D5C - ldr r6, _08091DBC - movs r5, 0x94 - lsls r5, 2 - movs r4, 0x3 -_08091D76: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8091DC0 - adds r5, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _08091D76 - ldr r4, _08091DBC - ldr r1, [r4] - movs r0, 0x98 - lsls r0, 2 - adds r1, r0 - mov r0, sp - movs r2, 0x18 - bl sub_8094924 - ldr r1, [r4] - movs r0, 0x99 - lsls r0, 2 - adds r1, r0 - mov r0, sp - movs r2, 0x18 - bl sub_8094924 - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x10 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08091DBC: .4byte gUnknown_203B460 - thumb_func_end sub_8091D14 - - thumb_func_start sub_8091DC0 -sub_8091DC0: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x8 - bl sub_8094924 - adds r4, 0x1 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x7 - bl sub_8094924 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8091DC0 - - thumb_func_start sub_8091DE0 -sub_8091DE0: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x8 - bl sub_809488C - adds r4, 0x1 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x7 - bl sub_809488C - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8091DE0 - - thumb_func_start sub_8091E00 -sub_8091E00: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x8 - bl sub_8094924 - adds r1, r5, 0x1 - adds r0, r4, 0 - movs r2, 0x7 - bl sub_8094924 - adds r5, 0x2 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x8 - bl sub_8094924 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8091E00 - - thumb_func_start sub_8091E28 -sub_8091E28: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x8 - bl sub_809488C - adds r1, r5, 0x1 - adds r0, r4, 0 - movs r2, 0x7 - bl sub_809488C - adds r5, 0x2 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x8 - bl sub_809488C - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8091E28 - - thumb_func_start sub_8091E50 -sub_8091E50: - lsls r0, 24 - ldr r1, _08091E5C - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_08091E5C: .4byte gUnknown_810AF50 - thumb_func_end sub_8091E50 - - thumb_func_start sub_8091E60 -sub_8091E60: - push {r4,lr} - lsls r0, 24 - lsrs r3, r0, 24 - lsls r0, r1, 24 - lsrs r4, r0, 24 - cmp r3, 0x3E - bhi _08091E8C - ldr r2, _08091E88 - lsrs r0, 27 - lsls r1, r3, 5 - adds r0, r1 - adds r0, r2 - ldrb r0, [r0] - movs r1, 0x7 - ands r1, r4 - asrs r0, r1 - movs r1, 0x1 - ands r0, r1 - b _08091E8E - .align 2, 0 -_08091E88: .4byte gUnknown_8108F64 -_08091E8C: - movs r0, 0 -_08091E8E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8091E60 - - thumb_func_start sub_8091E94 -sub_8091E94: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, _08091EE4 - add sp, r4 - mov r8, r1 - mov r10, r2 - ldr r1, _08091EE8 - subs r0, 0x1 - lsls r0, 2 - adds r0, r1 - movs r3, 0 - add r1, sp, 0x18 - mov r9, r1 - ldr r2, _08091EEC - mov r12, r2 - add r6, sp, 0x1F8 - ldr r2, [r0] - adds r7, r6, 0 - movs r4, 0 -_08091EC0: - ldrh r1, [r2] - cmp r1, r12 - bls _08091EF4 - ldrh r0, [r2] - ldr r1, _08091EF0 - adds r0, r1 - cmp r0, 0 - beq _08091EFC - movs r5, 0 - adds r1, r7, r4 -_08091ED4: - strh r5, [r1] - adds r1, 0x2 - adds r4, 0x2 - adds r3, 0x1 - subs r0, 0x1 - cmp r0, 0 - bne _08091ED4 - b _08091EFC - .align 2, 0 -_08091EE4: .4byte 0xfffffc10 -_08091EE8: .4byte gUnknown_8108E58 -_08091EEC: .4byte 0x0000752f -_08091EF0: .4byte 0xffff8ad0 -_08091EF4: - adds r0, r6, r4 - strh r1, [r0] - adds r4, 0x2 - adds r3, 0x1 -_08091EFC: - adds r2, 0x2 - cmp r3, 0xFB - ble _08091EC0 - movs r3, 0xB - add r2, sp, 0x1F8 - mov r1, sp -_08091F08: - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x2 - adds r1, 0x2 - subs r3, 0x1 - cmp r3, 0 - bge _08091F08 - mov r2, r9 - add r1, sp, 0x210 - movs r3, 0xEF -_08091F1C: - ldrh r0, [r1] - strh r0, [r2] - adds r1, 0x2 - adds r2, 0x2 - subs r3, 0x1 - cmp r3, 0 - bge _08091F1C - movs r7, 0xC - movs r6, 0 - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - beq _08091F4A - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, r8 - blt _08091F4A - movs r7, 0 - b _08091F66 -_08091F46: - mov r8, r5 - b _08091F9C -_08091F4A: - adds r6, 0x1 - cmp r6, 0xB - bgt _08091F66 - lsls r0, r6, 1 - mov r2, sp - adds r1, r2, r0 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _08091F4A - cmp r0, r8 - blt _08091F4A - lsls r0, r6, 24 - lsrs r7, r0, 24 -_08091F66: - movs r0, 0x46 - mov r8, r0 - cmp r7, 0xC - beq _08091F9C - movs r6, 0 - mov r4, r9 -_08091F72: - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _08091F94 - lsls r0, r6, 24 - lsrs r5, r0, 24 - adds r0, r5, 0 - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, r7 - bne _08091F94 - movs r2, 0 - ldrsh r0, [r4, r2] - cmp r0, r10 - bge _08091F46 -_08091F94: - adds r4, 0x2 - adds r6, 0x1 - cmp r6, 0xEF - ble _08091F72 -_08091F9C: - mov r0, r8 - movs r3, 0xFC - lsls r3, 2 - add sp, r3 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8091E94 - - thumb_func_start sub_8091FB4 -sub_8091FB4: - push {r4-r6,lr} - movs r6, 0 -_08091FB8: - ldr r0, _08092038 - lsls r1, r6, 2 - ldr r0, [r0] - adds r4, r0, r1 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08091FE8 - movs r0, 0xF7 - ands r0, r1 - movs r5, 0 - strb r0, [r4] - ldrb r0, [r4, 0x2] - cmp r0, 0x69 - bne _08091FE8 - adds r0, r4, 0 - bl sub_80915D4 - bl sub_80913A0 - strb r5, [r4, 0x2] - strb r5, [r4, 0x1] - strb r5, [r4] -_08091FE8: - adds r6, 0x1 - cmp r6, 0x13 - ble _08091FB8 - bl sub_80910B4 - movs r6, 0 -_08091FF4: - movs r0, 0x58 - adds r1, r6, 0 - muls r1, r0 - ldr r0, _0809203C - ldr r0, [r0] - adds r2, r1, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08092026 - adds r4, r2, 0 - adds r4, 0x28 - ldrb r0, [r4] - cmp r0, 0 - beq _08092026 - cmp r0, 0x69 - bne _08092026 - adds r0, r4, 0 - bl sub_80915E4 - bl sub_80913A0 - movs r0, 0 - strb r0, [r4] -_08092026: - adds r6, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r6, r0 - ble _08091FF4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08092038: .4byte gUnknown_203B460 -_0809203C: .4byte gUnknown_203B45C - thumb_func_end sub_8091FB4 - - thumb_func_start sub_8092040 -sub_8092040: - push {r4,lr} - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0xEF - bls _0809204E -_0809204A: - movs r0, 0x1 - b _08092070 -_0809204E: - movs r2, 0 - ldr r0, _08092078 - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0xF0 - beq _0809206E - adds r1, r4, 0 -_0809205C: - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, r3 - beq _0809204A - adds r2, 0x1 - adds r0, r2, r4 - ldrb r0, [r0] - cmp r0, 0xF0 - bne _0809205C -_0809206E: - movs r0, 0 -_08092070: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08092078: .4byte gUnknown_810A35B - thumb_func_end sub_8092040 - - thumb_func_start sub_809207C -sub_809207C: - ldr r1, _08092084 - ldr r0, _08092088 - str r0, [r1] - bx lr - .align 2, 0 -_08092084: .4byte gUnknown_203B464 -_08092088: .4byte gUnknown_2038C10 - thumb_func_end sub_809207C - - thumb_func_start sub_809208C -sub_809208C: - ldr r0, _08092090 - bx lr - .align 2, 0 -_08092090: .4byte gUnknown_2038C10 - thumb_func_end sub_809208C - - thumb_func_start sub_8092094 -sub_8092094: - push {r4,lr} - ldr r4, _080920B0 - ldr r0, [r4] - ldr r1, _080920B4 - movs r2, 0xA - bl sub_8092310 - ldr r1, [r4] - movs r0, 0 - str r0, [r1, 0xC] - strb r0, [r1, 0x10] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080920B0: .4byte gUnknown_203B464 -_080920B4: .4byte gUnknown_810982C - thumb_func_end sub_8092094 - - thumb_func_start sub_80920B8 -sub_80920B8: - push {lr} - adds r2, r0, 0 - movs r1, 0 - ldr r0, _080920D4 - ldr r3, [r0] -_080920C2: - adds r0, r3, r1 - ldrb r0, [r0] - strb r0, [r2] - adds r2, 0x1 - adds r1, 0x1 - cmp r1, 0x9 - ble _080920C2 - pop {r0} - bx r0 - .align 2, 0 -_080920D4: .4byte gUnknown_203B464 - thumb_func_end sub_80920B8 - - thumb_func_start sub_80920D8 -sub_80920D8: - push {lr} - ldr r1, _080920E8 - ldr r1, [r1] - movs r2, 0xA - bl sub_80922B4 - pop {r0} - bx r0 - .align 2, 0 -_080920E8: .4byte gUnknown_203B464 - thumb_func_end sub_80920D8 - - thumb_func_start sub_80920EC -sub_80920EC: - push {r4,lr} - adds r3, r0, 0 - movs r2, 0 - ldr r4, _0809210C -_080920F4: - ldr r0, [r4] - adds r0, r2 - ldrb r1, [r3] - strb r1, [r0] - adds r3, 0x1 - adds r2, 0x1 - cmp r2, 0x9 - ble _080920F4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809210C: .4byte gUnknown_203B464 - thumb_func_end sub_80920EC - - thumb_func_start sub_8092110 -sub_8092110: - ldr r0, _08092118 - ldr r0, [r0] - ldr r0, [r0, 0xC] - bx lr - .align 2, 0 -_08092118: .4byte gUnknown_203B464 - thumb_func_end sub_8092110 - - thumb_func_start sub_809211C -sub_809211C: - push {lr} - bl sub_8092178 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - beq _08092144 - ldr r1, _0809213C - lsls r0, 2 - adds r0, r1 - ldr r1, _08092140 - ldr r1, [r1] - ldr r0, [r0] - ldr r1, [r1, 0xC] - subs r0, r1 - b _08092146 - .align 2, 0 -_0809213C: .4byte gUnknown_8109810 -_08092140: .4byte gUnknown_203B464 -_08092144: - movs r0, 0 -_08092146: - pop {r1} - bx r1 - thumb_func_end sub_809211C - - thumb_func_start sub_809214C -sub_809214C: - ldr r1, _08092154 - ldr r1, [r1] - str r0, [r1, 0xC] - bx lr - .align 2, 0 -_08092154: .4byte gUnknown_203B464 - thumb_func_end sub_809214C - - thumb_func_start sub_8092158 -sub_8092158: - push {lr} - ldr r1, _08092170 - ldr r2, [r1] - ldr r1, [r2, 0xC] - adds r1, r0 - str r1, [r2, 0xC] - ldr r0, _08092174 - cmp r1, r0 - ble _0809216C - str r0, [r2, 0xC] -_0809216C: - pop {r0} - bx r0 - .align 2, 0 -_08092170: .4byte gUnknown_203B464 -_08092174: .4byte 0x05f5e0ff - thumb_func_end sub_8092158 - - thumb_func_start sub_8092178 -sub_8092178: - push {lr} - movs r1, 0 - ldr r0, _08092190 - ldr r0, [r0] - ldr r3, [r0, 0xC] - ldr r2, _08092194 -_08092184: - ldr r0, [r2] - cmp r3, r0 - bge _08092198 - lsls r0, r1, 24 - lsrs r0, 24 - b _080921A2 - .align 2, 0 -_08092190: .4byte gUnknown_203B464 -_08092194: .4byte gUnknown_8109810 -_08092198: - adds r2, 0x4 - adds r1, 0x1 - cmp r1, 0x6 - ble _08092184 - movs r0, 0x6 -_080921A2: - pop {r1} - bx r1 - thumb_func_end sub_8092178 - - thumb_func_start sub_80921A8 -sub_80921A8: - lsls r0, 24 - ldr r1, _080921B4 - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_080921B4: .4byte gUnknown_810B44C - thumb_func_end sub_80921A8 - - thumb_func_start sub_80921B8 -sub_80921B8: - ldr r0, _080921C0 - ldr r0, [r0] - ldrb r0, [r0, 0x10] - bx lr - .align 2, 0 -_080921C0: .4byte gUnknown_203B464 - thumb_func_end sub_80921B8 - - thumb_func_start sub_80921C4 -sub_80921C4: - push {r4-r6,lr} - sub sp, 0x14 - adds r3, r0, 0 - adds r2, r1, 0 - add r6, sp, 0x10 - movs r0, 0xFF - strb r0, [r6] - mov r5, sp - adds r5, 0x11 - movs r0, 0 - strb r0, [r5] - mov r0, sp - adds r1, r3, 0 - bl sub_809486C - ldr r4, _08092228 - ldr r1, [r4] - mov r0, sp - movs r2, 0x58 - bl sub_809488C - ldr r1, [r4] - adds r1, 0xC - mov r0, sp - movs r2, 0x20 - bl sub_809488C - movs r0, 0 - bl sub_80023E4 - ldr r1, [r4] - strb r0, [r1, 0x10] - ldr r0, [r4] - ldrb r0, [r0, 0x10] - adds r1, r5, 0 - cmp r0, 0 - beq _08092210 - adds r1, r6, 0 -_08092210: - mov r0, sp - movs r2, 0x1 - bl sub_809488C - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x14 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08092228: .4byte gUnknown_203B464 - thumb_func_end sub_80921C4 - - thumb_func_start sub_809222C -sub_809222C: - push {r4,r5,lr} - sub sp, 0x14 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809485C - ldr r5, _0809227C - ldr r1, [r5] - mov r0, sp - movs r2, 0x58 - bl sub_8094924 - ldr r1, [r5] - adds r1, 0xC - mov r0, sp - movs r2, 0x20 - bl sub_8094924 - add r4, sp, 0x10 - mov r0, sp - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8094924 - ldr r2, [r5] - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - strb r0, [r2, 0x10] - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x14 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0809227C: .4byte gUnknown_203B464 - thumb_func_end sub_809222C - - thumb_func_start sub_8092280 -sub_8092280: - lsls r0, 24 - lsrs r0, 24 - bx lr - thumb_func_end sub_8092280 - - thumb_func_start sub_8092288 -sub_8092288: - lsls r0, 24 - lsrs r0, 24 - bx lr - thumb_func_end sub_8092288 - - thumb_func_start sub_8092290 -sub_8092290: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - b _080922A4 -_08092298: - ldrb r0, [r4] - adds r4, 0x1 - bl sub_8092288 - strb r0, [r5] - adds r5, 0x1 -_080922A4: - ldrb r0, [r4] - cmp r0, 0 - bne _08092298 - movs r0, 0 - strb r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8092290 - - thumb_func_start sub_80922B4 -sub_80922B4: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - b _080922CA -_080922BE: - ldrb r0, [r4] - adds r4, 0x1 - bl sub_8092288 - strb r0, [r6] - adds r6, 0x1 -_080922CA: - adds r0, r5, 0 - subs r5, 0x1 - cmp r0, 0 - ble _080922D8 - ldrb r0, [r4] - cmp r0, 0 - bne _080922BE -_080922D8: - movs r0, 0 - strb r0, [r6] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80922B4 - - thumb_func_start sub_80922E4 -sub_80922E4: - ldr r1, _080922F0 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_080922F0: .4byte gUnknown_810983C - thumb_func_end sub_80922E4 - - thumb_func_start sub_80922F4 -sub_80922F4: - push {lr} - adds r2, r0, 0 - b _08092300 -_080922FA: - strb r0, [r2] - adds r1, 0x1 - adds r2, 0x1 -_08092300: - ldrb r0, [r1] - cmp r0, 0 - bne _080922FA - movs r0, 0 - strb r0, [r2] - pop {r0} - bx r0 - thumb_func_end sub_80922F4 - - thumb_func_start sub_8092310 -sub_8092310: - push {r4,lr} - adds r4, r0, 0 - b _0809231C -_08092316: - strb r0, [r4] - adds r4, 0x1 - adds r1, 0x1 -_0809231C: - adds r0, r2, 0 - subs r2, 0x1 - cmp r0, 0 - ble _0809232E - ldrb r0, [r1] - adds r3, r0, 0 - cmp r3, 0 - bne _08092316 - strb r3, [r4] -_0809232E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8092310 - - thumb_func_start sub_8092334 -sub_8092334: - lsls r0, 24 - ldr r1, _08092340 - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_08092340: .4byte gUnknown_810AD4C - thumb_func_end sub_8092334 - - thumb_func_start sub_8092344 -sub_8092344: - lsls r0, 24 - ldr r1, _08092350 - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_08092350: .4byte gUnknown_810AE24 - thumb_func_end sub_8092344 - - thumb_func_start sub_8092354 -sub_8092354: - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08092360 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08092360: .4byte gUnknown_810AC7C - thumb_func_end sub_8092354 - - thumb_func_start sub_8092364 -sub_8092364: - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08092370 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08092370: .4byte gUnknown_810AC6A - thumb_func_end sub_8092364 - - thumb_func_start sub_8092374 -sub_8092374: - push {lr} - lsls r1, 24 - ldr r2, _0809238C - lsrs r1, 22 - adds r1, r2 - ldr r1, [r1] - movs r2, 0x50 - bl strncpy - pop {r0} - bx r0 - .align 2, 0 -_0809238C: .4byte gUnknown_810B4C8 - thumb_func_end sub_8092374 - - thumb_func_start sub_8092390 -sub_8092390: - lsls r0, 24 - ldr r1, _0809239C - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_0809239C: .4byte gUnknown_810B988 - thumb_func_end sub_8092390 - - thumb_func_start sub_80923A0 -sub_80923A0: - ldr r1, _080923A8 - ldr r0, _080923AC - str r0, [r1] - bx lr - .align 2, 0 -_080923A8: .4byte gUnknown_203B468 -_080923AC: .4byte gUnknown_2038C28 - thumb_func_end sub_80923A0 - - thumb_func_start sub_80923B0 -sub_80923B0: - ldr r0, _080923B4 - bx lr - .align 2, 0 -_080923B4: .4byte gUnknown_2038C28 - thumb_func_end sub_80923B0 - - thumb_func_start sub_80923B8 -sub_80923B8: - push {lr} - movs r1, 0 - ldr r3, _080923D0 - movs r2, 0 -_080923C0: - ldr r0, [r3] - adds r0, r1 - strb r2, [r0] - adds r1, 0x1 - cmp r1, 0x39 - ble _080923C0 - pop {r0} - bx r0 - .align 2, 0 -_080923D0: .4byte gUnknown_203B468 - thumb_func_end sub_80923B8 - - thumb_func_start sub_80923D4 -sub_80923D4: - push {r4,r5,lr} - adds r4, r0, 0 - movs r3, 0 - movs r1, 0 - ldr r2, _080923F0 -_080923DE: - movs r5, 0 - ldrsh r0, [r2, r5] - adds r3, r0 - cmp r3, r4 - ble _080923F4 - lsls r0, r1, 24 - lsrs r0, 24 - b _080923FE - .align 2, 0 -_080923F0: .4byte gUnknown_810AA90 -_080923F4: - adds r2, 0x8 - adds r1, 0x1 - cmp r1, 0x39 - ble _080923DE - movs r0, 0 -_080923FE: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80923D4 - - thumb_func_start sub_8092404 -sub_8092404: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r10, r1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - lsls r3, 24 - lsrs r7, r3, 24 - movs r6, 0 - movs r4, 0 - mov r5, r10 -_08092426: - movs r0, 0x58 - adds r1, r4, 0 - muls r1, r0 - ldr r0, _08092494 - ldr r0, [r0] - adds r2, r1, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08092472 - ldrb r0, [r2, 0x2] - cmp r0, 0 - beq _08092448 - mov r0, r8 - cmp r0, 0 - beq _08092472 -_08092448: - movs r1, 0 - ldrb r0, [r2, 0x4] - cmp r0, 0x41 - bne _08092452 - movs r1, 0x1 -_08092452: - cmp r1, 0 - beq _0809245A - cmp r7, 0 - beq _08092472 -_0809245A: - adds r0, r4, 0 - bl sub_80923D4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, r9 - bne _08092472 - cmp r6, 0xF - bgt _08092472 - strh r4, [r5] - adds r5, 0x2 - adds r6, 0x1 -_08092472: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _08092426 - lsls r0, r6, 1 - add r0, r10 - ldr r2, _08092498 - adds r1, r2, 0 - strh r1, [r0] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08092494: .4byte gUnknown_203B45C -_08092498: .4byte 0x0000ffff - thumb_func_end sub_8092404 - - thumb_func_start sub_809249C -sub_809249C: - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r0, _080924F8 - ldr r0, [r0] - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809251A - movs r5, 0 -_080924B4: - ldr r2, _080924FC - movs r0, 0x58 - adds r1, r5, 0 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08092502 - adds r0, r5, 0 - bl sub_80923D4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, r6 - bne _08092502 - movs r1, 0 - ldrb r0, [r4, 0x4] - cmp r0, 0x41 - bne _080924E2 - movs r1, 0x1 -_080924E2: - cmp r1, 0 - bne _080924F2 - ldrb r1, [r4, 0x2] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - cmp r0, 0 - beq _08092500 -_080924F2: - movs r7, 0 - b _08092502 - .align 2, 0 -_080924F8: .4byte gUnknown_203B468 -_080924FC: .4byte gUnknown_203B45C -_08092500: - strh r0, [r4] -_08092502: - adds r5, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r5, r0 - ble _080924B4 - cmp r7, 0 - beq _0809251A - ldr r0, _08092520 - ldr r0, [r0] - adds r0, r6 - movs r1, 0 - strb r1, [r0] -_0809251A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08092520: .4byte gUnknown_203B468 - thumb_func_end sub_809249C - - thumb_func_start sub_8092524 -sub_8092524: - lsls r0, 24 - ldr r1, _08092530 - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_08092530: .4byte gUnknown_81139D0 - thumb_func_end sub_8092524 - - thumb_func_start sub_8092534 -sub_8092534: - lsls r0, 24 - ldr r1, _08092540 - lsrs r0, 21 - adds r0, r1 - ldrb r0, [r0, 0x2] - bx lr - .align 2, 0 -_08092540: .4byte gUnknown_810AA90 - thumb_func_end sub_8092534 - - thumb_func_start sub_8092544 -sub_8092544: - lsls r0, 24 - ldr r1, _08092554 - lsrs r0, 21 - adds r1, 0x4 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_08092554: .4byte gUnknown_810AA90 - thumb_func_end sub_8092544 - - thumb_func_start sub_8092558 -sub_8092558: - push {lr} - lsls r2, r1, 24 - ldr r1, _08092570 - ldr r3, _08092574 - lsrs r2, 22 - adds r2, r3 - ldr r2, [r2] - bl sub_800D158 - pop {r0} - bx r0 - .align 2, 0 -_08092570: .4byte gUnknown_81098A4 -_08092574: .4byte gUnknown_81139D0 - thumb_func_end sub_8092558 - - thumb_func_start sub_8092578 -sub_8092578: - push {r4,r5,lr} - sub sp, 0x18 - adds r5, r0, 0 - lsls r1, 24 - lsrs r4, r1, 24 - lsls r2, 24 - cmp r2, 0 - beq _080925C0 - ldr r0, _080925B4 - lsls r1, r4, 3 - adds r0, 0x4 - adds r1, r0 - ldr r0, [r1] - add r1, sp, 0x4 - movs r2, 0x1 - bl sub_8090FEC - ldr r1, _080925B8 - ldr r2, _080925BC - lsls r0, r4, 2 - adds r0, r2 - ldr r2, [r0] - add r0, sp, 0x4 - str r0, [sp] - adds r0, r5, 0 - movs r3, 0x60 - bl sub_800D158 - b _080925CE - .align 2, 0 -_080925B4: .4byte gUnknown_810AA90 -_080925B8: .4byte gUnknown_81098AC -_080925BC: .4byte gUnknown_81139D0 -_080925C0: - ldr r0, _080925D8 - lsls r1, r4, 2 - adds r1, r0 - ldr r1, [r1] - adds r0, r5, 0 - bl strcpy -_080925CE: - add sp, 0x18 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080925D8: .4byte gUnknown_81139D0 - thumb_func_end sub_8092578 - - thumb_func_start sub_80925DC -sub_80925DC: - lsls r0, 24 - ldr r1, _080925E8 - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_080925E8: .4byte gUnknown_8113E30 - thumb_func_end sub_80925DC - - thumb_func_start sub_80925EC -sub_80925EC: - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080925FC - ldr r1, [r1] - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] - bx lr - .align 2, 0 -_080925FC: .4byte gUnknown_203B468 - thumb_func_end sub_80925EC - - thumb_func_start sub_8092600 -sub_8092600: - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08092610 - ldr r1, [r1] - adds r1, r0 - ldrb r0, [r1] - bx lr - .align 2, 0 -_08092610: .4byte gUnknown_203B468 - thumb_func_end sub_8092600 - - thumb_func_start sub_8092614 -sub_8092614: - push {lr} - movs r1, 0x1 - ldr r0, _08092628 - ldr r2, [r0] -_0809261C: - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0809262C - movs r0, 0 - b _08092634 - .align 2, 0 -_08092628: .4byte gUnknown_203B468 -_0809262C: - adds r1, 0x1 - cmp r1, 0x39 - ble _0809261C - movs r0, 0x1 -_08092634: - pop {r1} - bx r1 - thumb_func_end sub_8092614 - - thumb_func_start sub_8092638 -sub_8092638: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r1, 0 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r2, 24 - lsrs r2, 24 - mov r12, r2 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - movs r6, 0 - movs r3, 0 - ldr r2, _080926DC - cmp r3, r5 - bge _0809266E - ldr r1, _080926E0 - adds r3, r5, 0 -_0809265E: - movs r7, 0 - ldrsh r0, [r1, r7] - adds r6, r0 - adds r1, 0x8 - subs r3, 0x1 - cmp r3, 0 - bne _0809265E - adds r3, r5, 0 -_0809266E: - str r6, [r4, 0x8] - ldr r0, [r2] - adds r0, r3 - ldrb r0, [r0] - strb r0, [r4, 0x4] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _080926E8 - movs r0, 0 - strh r0, [r4, 0x2] - ldr r1, _080926E0 - lsls r0, r3, 3 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r4] - movs r3, 0 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r3, r0 - bge _080926EC - ldr r5, _080926E4 -_0809269A: - movs r0, 0x58 - adds r1, r6, 0 - muls r1, r0 - ldr r0, [r5] - adds r2, r0, r1 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080926CC - mov r7, r12 - cmp r7, 0 - beq _080926BA - ldrb r0, [r2, 0x2] - cmp r0, 0 - bne _080926CC -_080926BA: - mov r0, r8 - cmp r0, 0 - beq _080926C6 - ldrb r0, [r2, 0x4] - cmp r0, 0x41 - beq _080926CC -_080926C6: - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] -_080926CC: - adds r3, 0x1 - adds r6, 0x1 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r3, r0 - blt _0809269A - b _080926EC - .align 2, 0 -_080926DC: .4byte gUnknown_203B468 -_080926E0: .4byte gUnknown_810AA90 -_080926E4: .4byte gUnknown_203B45C -_080926E8: - strh r0, [r4, 0x2] - strh r0, [r4] -_080926EC: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8092638 - - thumb_func_start sub_80926F8 -sub_80926F8: - push {r4-r7,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r3, r0, 24 - lsls r2, 24 - lsrs r7, r2, 24 - movs r5, 0 - movs r2, 0 - ldr r0, _08092780 - mov r12, r0 - cmp r2, r3 - bge _08092724 - ldr r1, _08092784 - adds r2, r3, 0 -_08092714: - movs r6, 0 - ldrsh r0, [r1, r6] - adds r5, r0 - adds r1, 0x8 - subs r2, 0x1 - cmp r2, 0 - bne _08092714 - adds r2, r3, 0 -_08092724: - str r5, [r4, 0x8] - mov r1, r12 - ldr r0, [r1] - adds r0, r2 - ldrb r0, [r0] - strb r0, [r4, 0x4] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _0809279C - movs r0, 0 - strh r0, [r4, 0x2] - ldr r1, _08092784 - lsls r0, r2, 3 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r4] - movs r6, 0 - ldrsh r0, [r4, r6] - cmp r0, 0 - ble _080927A0 - ldr r6, _08092788 - adds r2, r0, 0 -_08092752: - movs r0, 0x58 - adds r1, r5, 0 - muls r1, r0 - ldr r0, [r6] - adds r3, r0, r1 - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08092792 - ldrb r0, [r3, 0x2] - cmp r0, 0 - bne _08092776 - cmp r7, 0 - bne _0809278C - ldrb r0, [r3, 0x4] - cmp r0, 0x41 - bne _0809278C -_08092776: - ldrh r0, [r4] - subs r0, 0x1 - strh r0, [r4] - b _08092792 - .align 2, 0 -_08092780: .4byte gUnknown_203B468 -_08092784: .4byte gUnknown_810AA90 -_08092788: .4byte gUnknown_203B45C -_0809278C: - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] -_08092792: - subs r2, 0x1 - adds r5, 0x1 - cmp r2, 0 - bne _08092752 - b _080927A0 -_0809279C: - strh r0, [r4, 0x2] - strh r0, [r4] -_080927A0: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80926F8 - - thumb_func_start sub_80927A8 -sub_80927A8: - push {r4,r5,lr} - sub sp, 0x14 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809486C - movs r4, 0 - add r5, sp, 0x10 -_080927BC: - ldr r0, _080927F0 - ldr r0, [r0] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _080927CC - movs r0, 0x1 - negs r0, r0 -_080927CC: - str r0, [sp, 0x10] - mov r0, sp - adds r1, r5, 0 - movs r2, 0x1 - bl sub_809488C - adds r4, 0x1 - cmp r4, 0x39 - ble _080927BC - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x14 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080927F0: .4byte gUnknown_203B468 - thumb_func_end sub_80927A8 - - thumb_func_start sub_80927F4 -sub_80927F4: - push {r4-r7,lr} - sub sp, 0x14 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809485C - movs r4, 0 - add r7, sp, 0x10 - movs r6, 0x1 - ldr r5, _08092828 -_0809280C: - mov r0, sp - adds r1, r7, 0 - movs r2, 0x1 - bl sub_8094924 - ldr r1, [sp, 0x10] - ands r1, r6 - cmp r1, 0 - beq _0809282C - ldr r0, [r5] - adds r0, r4 - strb r6, [r0] - b _08092832 - .align 2, 0 -_08092828: .4byte gUnknown_203B468 -_0809282C: - ldr r0, [r5] - adds r0, r4 - strb r1, [r0] -_08092832: - adds r4, 0x1 - cmp r4, 0x39 - ble _0809280C - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x14 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80927F4 - - thumb_func_start LoadWazaParameters -LoadWazaParameters: - push {lr} - ldr r0, _08092868 - ldr r1, _0809286C - bl OpenFileAndGetFileDataPtr - ldr r1, _08092870 - str r0, [r1] - ldr r1, _08092874 - ldr r2, [r0, 0x4] - ldr r0, [r2] - str r0, [r1] - ldr r1, _08092878 - ldr r0, [r2, 0x4] - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_08092868: .4byte gUnknown_81098D0 -_0809286C: .4byte gUnknown_8300500 -_08092870: .4byte gUnknown_2038C64 -_08092874: .4byte gUnknown_2038C68 -_08092878: .4byte gUnknown_2038C6C - thumb_func_end LoadWazaParameters - - thumb_func_start sub_809287C -sub_809287C: - push {lr} - adds r2, r0, 0 - ldrb r1, [r2] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _08092894 - ldrb r1, [r2, 0x1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08092898 -_08092894: - movs r0, 0x32 - b _0809289A -_08092898: - movs r0, 0x34 -_0809289A: - pop {r1} - bx r1 - thumb_func_end sub_809287C - - thumb_func_start sub_80928A0 -sub_80928A0: - push {r4,r5,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r5, r2, 0 - mov r0, sp - bl sub_8093F10 - adds r0, r4, 0 - mov r1, sp - adds r2, r5, 0 - bl sub_80928C0 - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80928A0 - - thumb_func_start sub_80928C0 -sub_80928C0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x20 - adds r7, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - adds r0, r4, 0 - bl sub_809287C - lsls r0, 24 - lsrs r6, r0, 24 - cmp r5, 0 - bne _080928DE - ldr r5, _080928F0 -_080928DE: - ldrb r1, [r4, 0x5] - cmp r1, 0 - beq _080928F8 - ldr r1, _080928F4 - ldrb r2, [r4, 0x5] - add r0, sp, 0x14 - bl sub_800D158 - b _080928FC - .align 2, 0 -_080928F0: .4byte gUnknown_81098C4 -_080928F4: .4byte gUnknown_81098DC -_080928F8: - add r0, sp, 0x14 - strb r1, [r0] -_080928FC: - ldrb r0, [r5, 0x8] - cmp r0, 0 - beq _08092904 - movs r6, 0x2 -_08092904: - ldrb r0, [r5, 0x9] - cmp r0, 0 - beq _08092918 - ldrh r0, [r4, 0x2] - bl sub_809422C - lsls r0, 24 - cmp r0, 0 - beq _08092918 - movs r6, 0x2 -_08092918: - ldr r0, [r5] - cmp r0, 0x4 - bls _08092920 - b _08092A6A -_08092920: - lsls r0, 2 - ldr r1, _0809292C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809292C: .4byte _08092930 - .align 2, 0 -_08092930: - .4byte _08092944 - .4byte _0809296C - .4byte _08092998 - .4byte _080929C4 - .4byte _08092A20 -_08092944: - ldr r1, _08092964 - ldrh r2, [r4, 0x2] - ldr r0, _08092968 - ldr r3, [r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r0, r3 - ldr r3, [r0] - add r0, sp, 0x14 - str r0, [sp] - adds r0, r7, 0 - adds r2, r6, 0 - bl sub_800D158 - b _08092A6A - .align 2, 0 -_08092964: .4byte gUnknown_81098E0 -_08092968: .4byte gUnknown_2038C68 -_0809296C: - adds r0, r4, 0 - bl sub_8092BF4 - adds r3, r0, 0 - ldr r1, _0809298C - mov r8, r1 - ldrb r1, [r4] - movs r0, 0x8 - ands r0, r1 - ldr r1, _08092990 - mov r12, r1 - cmp r0, 0 - beq _080929E2 - ldr r0, _08092994 - b _080929E0 - .align 2, 0 -_0809298C: .4byte gUnknown_81098EC -_08092990: .4byte gUnknown_810990C -_08092994: .4byte gUnknown_8109908 -_08092998: - adds r0, r4, 0 - bl sub_8092BF4 - adds r3, r0, 0 - ldr r0, _080929B8 - mov r8, r0 - ldrb r1, [r4] - movs r0, 0x8 - ands r0, r1 - ldr r1, _080929BC - mov r12, r1 - cmp r0, 0 - beq _080929E2 - ldr r0, _080929C0 - b _080929E0 - .align 2, 0 -_080929B8: .4byte gUnknown_8109910 -_080929BC: .4byte gUnknown_810990C -_080929C0: .4byte gUnknown_8109908 -_080929C4: - adds r0, r4, 0 - bl sub_8092BF4 - adds r3, r0, 0 - ldr r0, _08092A10 - mov r8, r0 - ldrb r1, [r4] - movs r0, 0x4 - ands r0, r1 - ldr r1, _08092A14 - mov r12, r1 - cmp r0, 0 - beq _080929E2 - ldr r0, _08092A18 -_080929E0: - mov r12, r0 -_080929E2: - ldrh r1, [r4, 0x2] - ldr r0, _08092A1C - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - str r0, [sp] - add r1, sp, 0x14 - str r1, [sp, 0x4] - ldr r0, [r5, 0x4] - str r0, [sp, 0x8] - ldrb r0, [r4, 0x4] - str r0, [sp, 0xC] - str r3, [sp, 0x10] - adds r0, r7, 0 - mov r1, r8 - adds r2, r6, 0 - mov r3, r12 - bl sub_800D158 - b _08092A6A - .align 2, 0 -_08092A10: .4byte gUnknown_81098EC -_08092A14: .4byte gUnknown_810990C -_08092A18: .4byte gUnknown_8109928 -_08092A1C: .4byte gUnknown_2038C68 -_08092A20: - adds r0, r4, 0 - bl sub_8092BF4 - adds r3, r0, 0 - ldr r0, _08092A78 - mov r8, r0 - ldrb r1, [r4] - movs r0, 0x4 - ands r0, r1 - ldr r1, _08092A7C - mov r12, r1 - cmp r0, 0 - beq _08092A3E - ldr r0, _08092A80 - mov r12, r0 -_08092A3E: - ldrh r1, [r4, 0x2] - ldr r0, _08092A84 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - str r0, [sp] - add r1, sp, 0x14 - str r1, [sp, 0x4] - ldr r0, [r5, 0x4] - str r0, [sp, 0x8] - ldrb r0, [r4, 0x4] - str r0, [sp, 0xC] - str r3, [sp, 0x10] - adds r0, r7, 0 - mov r1, r8 - adds r2, r6, 0 - mov r3, r12 - bl sub_800D158 -_08092A6A: - add sp, 0x20 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08092A78: .4byte gUnknown_8109910 -_08092A7C: .4byte gUnknown_810990C -_08092A80: .4byte gUnknown_8109928 -_08092A84: .4byte gUnknown_2038C68 - thumb_func_end sub_80928C0 - - thumb_func_start sub_8092A88 -sub_8092A88: - push {r4,r5,lr} - adds r4, r0, 0 - movs r2, 0 - movs r0, 0x5 - strb r0, [r4] - strb r2, [r4, 0x1] - movs r5, 0 - strh r1, [r4, 0x2] - adds r0, r4, 0 - bl sub_8092BF4 - strb r0, [r4, 0x4] - strb r5, [r4, 0x5] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8092A88 - - thumb_func_start sub_8092AA8 -sub_8092AA8: - push {r4,r5,lr} - adds r5, r0, 0 - lsls r1, 16 - lsrs r2, r1, 16 - cmp r2, 0 - bne _08092AB8 - strb r2, [r5] - b _08092ACE -_08092AB8: - movs r1, 0 - movs r0, 0x5 - strb r0, [r5] - strb r1, [r5, 0x1] - movs r4, 0 - strh r2, [r5, 0x2] - adds r0, r5, 0 - bl sub_8092BF4 - strb r0, [r5, 0x4] - strb r4, [r5, 0x5] -_08092ACE: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8092AA8 - - thumb_func_start sub_8092AD4 -sub_8092AD4: - movs r2, 0x5 - strb r2, [r0] - movs r2, 0 - strh r1, [r0, 0x2] - strb r2, [r0, 0x4] - bx lr - thumb_func_end sub_8092AD4 - - thumb_func_start sub_8092AE0 -sub_8092AE0: - ldrh r2, [r0, 0x2] - ldr r0, _08092AFC - ldr r3, [r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r0, r3 - lsls r1, 1 - adds r0, 0x8 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_08092AFC: .4byte gUnknown_2038C68 - thumb_func_end sub_8092AE0 - - thumb_func_start sub_8092B00 -sub_8092B00: - ldrh r1, [r0, 0x2] - ldr r0, _08092B14 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x6] - bx lr - .align 2, 0 -_08092B14: .4byte gUnknown_2038C68 - thumb_func_end sub_8092B00 - - thumb_func_start sub_8092B18 -sub_8092B18: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - adds r2, r1, 0 - ldr r0, _08092B40 - cmp r1, r0 - beq _08092B48 - cmp r1, 0 - beq _08092B48 - movs r0, 0xD2 - lsls r0, 1 - cmp r2, r0 - beq _08092B48 - ldr r0, _08092B44 - ldr r1, [r0] - lsls r0, r2, 3 - adds r0, r1 - ldr r0, [r0] - b _08092B4A - .align 2, 0 -_08092B40: .4byte 0x000001a5 -_08092B44: .4byte gUnknown_2038C6C -_08092B48: - ldr r0, _08092B50 -_08092B4A: - pop {r1} - bx r1 - .align 2, 0 -_08092B50: .4byte gUnknown_810992B - thumb_func_end sub_8092B18 - - thumb_func_start sub_8092B54 -sub_8092B54: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - adds r2, r1, 0 - ldr r0, _08092B7C - cmp r1, r0 - beq _08092B84 - cmp r1, 0 - beq _08092B84 - movs r0, 0xD2 - lsls r0, 1 - cmp r2, r0 - beq _08092B84 - ldr r0, _08092B80 - ldr r1, [r0] - lsls r0, r2, 3 - adds r0, r1 - ldr r0, [r0, 0x4] - b _08092B86 - .align 2, 0 -_08092B7C: .4byte 0x000001a5 -_08092B80: .4byte gUnknown_2038C6C -_08092B84: - ldr r0, _08092B8C -_08092B86: - pop {r1} - bx r1 - .align 2, 0 -_08092B8C: .4byte gUnknown_810992B - thumb_func_end sub_8092B54 - - thumb_func_start sub_8092B90 -sub_8092B90: - ldrh r1, [r0, 0x2] - ldr r0, _08092BA4 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0xD] - bx lr - .align 2, 0 -_08092BA4: .4byte gUnknown_2038C68 - thumb_func_end sub_8092B90 - - thumb_func_start sub_8092BA8 -sub_8092BA8: - ldrh r1, [r0, 0x2] - ldr r0, _08092BBC - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x11] - bx lr - .align 2, 0 -_08092BBC: .4byte gUnknown_2038C68 - thumb_func_end sub_8092BA8 - - thumb_func_start sub_8092BC0 -sub_8092BC0: - ldrh r1, [r0, 0x2] - ldr r0, _08092BD4 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x4 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_08092BD4: .4byte gUnknown_2038C68 - thumb_func_end sub_8092BC0 - - thumb_func_start sub_8092BD8 -sub_8092BD8: - ldrh r2, [r0, 0x2] - ldr r0, _08092BF0 - ldr r3, [r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r0, r3 - adds r0, 0xE - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08092BF0: .4byte gUnknown_2038C68 - thumb_func_end sub_8092BD8 - - thumb_func_start sub_8092BF4 -sub_8092BF4: - ldrh r1, [r0, 0x2] - ldr r0, _08092C08 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0xC] - bx lr - .align 2, 0 -_08092C08: .4byte gUnknown_2038C68 - thumb_func_end sub_8092BF4 - - thumb_func_start sub_8092C0C -sub_8092C0C: - ldrh r1, [r0, 0x2] - ldr r0, _08092C20 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x12] - bx lr - .align 2, 0 -_08092C20: .4byte gUnknown_2038C68 - thumb_func_end sub_8092C0C - - thumb_func_start sub_8092C24 -sub_8092C24: - ldrh r1, [r0, 0x2] - ldr r0, _08092C38 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x13] - bx lr - .align 2, 0 -_08092C38: .4byte gUnknown_2038C68 - thumb_func_end sub_8092C24 - - thumb_func_start sub_8092C3C -sub_8092C3C: - ldrh r1, [r0, 0x2] - ldr r0, _08092C50 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x17] - bx lr - .align 2, 0 -_08092C50: .4byte gUnknown_2038C68 - thumb_func_end sub_8092C3C - - thumb_func_start sub_8092C54 -sub_8092C54: - ldrh r1, [r0, 0x2] - ldr r0, _08092C68 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x18] - bx lr - .align 2, 0 -_08092C68: .4byte gUnknown_2038C68 - thumb_func_end sub_8092C54 - - thumb_func_start sub_8092C6C -sub_8092C6C: - ldrh r1, [r0, 0x2] - ldr r0, _08092C80 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x19] - bx lr - .align 2, 0 -_08092C80: .4byte gUnknown_2038C68 - thumb_func_end sub_8092C6C - - thumb_func_start sub_8092C84 -sub_8092C84: - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - lsls r1, 16 - lsrs r1, 16 - mov r0, sp - bl sub_8092A88 - adds r0, r4, 0 - mov r1, sp - movs r2, 0 - bl sub_80928C0 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8092C84 - - thumb_func_start sub_8092CA8 -sub_8092CA8: - lsls r0, 16 - lsrs r0, 16 - ldr r1, _08092CBC - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldr r0, [r1, 0x20] - bx lr - .align 2, 0 -_08092CBC: .4byte gUnknown_2038C68 - thumb_func_end sub_8092CA8 - - thumb_func_start sub_8092CC0 -sub_8092CC0: - lsls r0, 16 - lsrs r0, 16 - ldr r1, _08092CD4 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0x14] - bx lr - .align 2, 0 -_08092CD4: .4byte gUnknown_2038C68 - thumb_func_end sub_8092CC0 - - thumb_func_start sub_8092CD8 -sub_8092CD8: - lsls r0, 16 - lsrs r0, 16 - ldr r1, _08092CEC - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0x15] - bx lr - .align 2, 0 -_08092CEC: .4byte gUnknown_2038C68 - thumb_func_end sub_8092CD8 - - thumb_func_start sub_8092CF0 -sub_8092CF0: - lsls r0, 16 - lsrs r0, 16 - ldr r1, _08092D04 - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0x16] - bx lr - .align 2, 0 -_08092D04: .4byte gUnknown_2038C68 - thumb_func_end sub_8092CF0 - - thumb_func_start sub_8092D08 -sub_8092D08: - push {lr} - adds r2, r0, 0 - ldrh r1, [r2, 0x2] - cmp r1, 0xD9 - beq _08092D4C - movs r0, 0x8E - lsls r0, 1 - cmp r1, r0 - beq _08092D4C - cmp r1, 0x53 - beq _08092D4C - cmp r1, 0x22 - beq _08092D4C - cmp r1, 0x54 - beq _08092D4C - cmp r1, 0xAB - beq _08092D4C - ldr r0, _08092D48 - cmp r1, r0 - beq _08092D4C - cmp r1, 0x1B - beq _08092D4C - cmp r1, 0xF1 - beq _08092D4C - cmp r1, 0x19 - beq _08092D4C - ldrh r0, [r2, 0x2] - cmp r0, 0x1A - beq _08092D4C - movs r0, 0 - b _08092D4E - .align 2, 0 -_08092D48: .4byte 0x00000125 -_08092D4C: - movs r0, 0x1 -_08092D4E: - pop {r1} - bx r1 - thumb_func_end sub_8092D08 - - thumb_func_start sub_8092D54 -sub_8092D54: - push {r4-r6,lr} - adds r6, r0, 0 - adds r0, r1, 0 - ldr r5, _08092D78 - ldr r4, _08092D7C - bl sub_8092C6C - lsls r0, 2 - adds r0, r4 - ldr r2, [r0] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_800D158 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08092D78: .4byte gUnknown_810992C -_08092D7C: .4byte gUnknown_810CC0C - thumb_func_end sub_8092D54 - - thumb_func_start sub_8092D80 -sub_8092D80: - push {r4,r5,lr} - adds r3, r1, 0 - movs r5, 0 - lsls r1, r3, 3 - adds r1, r0 -_08092D8A: - adds r1, 0x8 - adds r3, 0x1 - cmp r3, 0x4 - beq _08092DB0 - ldrb r2, [r1] - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r2 - cmp r0, 0 - beq _08092DB0 - lsrs r0, r2, 1 - ands r0, r4 - cmp r0, 0 - bne _08092DAA - adds r0, r3, 0 - b _08092DB2 -_08092DAA: - adds r5, 0x1 - cmp r5, 0x3 - ble _08092D8A -_08092DB0: - movs r0, 0 -_08092DB2: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8092D80 - - thumb_func_start sub_8092DB8 -sub_8092DB8: - push {r4-r6,lr} - adds r4, r0, 0 - movs r5, 0 - movs r6, 0x1 -_08092DC0: - subs r1, 0x1 - cmp r1, 0 - bge _08092DF0 - movs r2, 0x3 - ldrb r1, [r4, 0x18] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08092DD6 - movs r1, 0x3 - b _08092DEC -_08092DD6: - subs r2, 0x1 - cmp r2, 0 - blt _08092E12 - lsls r0, r2, 3 - adds r0, r4 - ldrb r1, [r0] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08092DD6 - adds r1, r2, 0 -_08092DEC: - cmp r2, 0 - blt _08092E12 -_08092DF0: - lsls r0, r1, 3 - adds r0, r4 - ldrb r2, [r0] - movs r3, 0x1 - adds r0, r3, 0 - ands r0, r2 - cmp r0, 0 - beq _08092E12 - lsrs r0, r2, 1 - ands r0, r3 - cmp r0, 0 - bne _08092E0C - adds r0, r1, 0 - b _08092E14 -_08092E0C: - adds r5, 0x1 - cmp r5, 0x3 - ble _08092DC0 -_08092E12: - movs r0, 0 -_08092E14: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8092DB8 - - thumb_func_start sub_8092E1C -sub_8092E1C: - push {r4,r5,lr} - adds r3, r1, 0 - movs r5, 0 - lsls r1, r3, 3 - adds r1, r0 -_08092E26: - adds r1, 0x8 - adds r3, 0x1 - cmp r3, 0x8 - beq _08092E4C - ldrb r2, [r1] - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r2 - cmp r0, 0 - beq _08092E4C - lsrs r0, r2, 1 - ands r0, r4 - cmp r0, 0 - bne _08092E46 - adds r0, r3, 0 - b _08092E4E -_08092E46: - adds r5, 0x1 - cmp r5, 0x7 - ble _08092E26 -_08092E4C: - movs r0, 0 -_08092E4E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8092E1C - - thumb_func_start sub_8092E54 -sub_8092E54: - push {r4,r5,lr} - adds r3, r1, 0 - movs r5, 0 - lsls r1, r3, 3 - adds r1, r0 -_08092E5E: - adds r1, 0x8 - adds r3, 0x1 - cmp r3, 0x8 - beq _08092E84 - ldrb r2, [r1] - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r2 - cmp r0, 0 - beq _08092E84 - lsrs r0, r2, 1 - ands r0, r4 - cmp r0, 0 - bne _08092E7E - adds r0, r3, 0 - b _08092E86 -_08092E7E: - adds r5, 0x1 - cmp r5, 0x7 - ble _08092E5E -_08092E84: - movs r0, 0 -_08092E86: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8092E54 - - thumb_func_start sub_8092E8C -sub_8092E8C: - push {r4-r6,lr} - adds r6, r0, 0 - movs r5, 0 - lsls r0, r1, 3 - adds r3, r0, r6 -_08092E96: - subs r3, 0x8 - subs r1, 0x1 - cmp r1, 0 - bge _08092EC6 - movs r3, 0x7 - movs r4, 0x1 - adds r2, r6, 0 - adds r2, 0x38 -_08092EA6: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _08092EBC - lsrs r0, r1, 1 - ands r0, r4 - cmp r0, 0 - bne _08092EBC - adds r0, r3, 0 - b _08092EE6 -_08092EBC: - subs r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bgt _08092EA6 - b _08092EE4 -_08092EC6: - ldrb r2, [r3] - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r2 - cmp r0, 0 - beq _08092EE4 - lsrs r0, r2, 1 - ands r0, r4 - cmp r0, 0 - bne _08092EDE - adds r0, r1, 0 - b _08092EE6 -_08092EDE: - adds r5, 0x1 - cmp r5, 0x7 - ble _08092E96 -_08092EE4: - movs r0, 0 -_08092EE6: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8092E8C - - thumb_func_start sub_8092EEC -sub_8092EEC: - push {r4-r6,lr} - adds r6, r0, 0 - movs r5, 0 - lsls r0, r1, 3 - adds r3, r0, r6 -_08092EF6: - subs r3, 0x8 - subs r1, 0x1 - cmp r1, 0 - bge _08092F26 - movs r3, 0x7 - movs r4, 0x1 - adds r2, r6, 0 - adds r2, 0x38 -_08092F06: - ldrb r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _08092F1C - lsrs r0, r1, 1 - ands r0, r4 - cmp r0, 0 - bne _08092F1C - adds r0, r3, 0 - b _08092F46 -_08092F1C: - subs r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bgt _08092F06 - b _08092F44 -_08092F26: - ldrb r2, [r3] - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r2 - cmp r0, 0 - beq _08092F44 - lsrs r0, r2, 1 - ands r0, r4 - cmp r0, 0 - bne _08092F3E - adds r0, r1, 0 - b _08092F46 -_08092F3E: - adds r5, 0x1 - cmp r5, 0x7 - ble _08092EF6 -_08092F44: - movs r0, 0 -_08092F46: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8092EEC - - thumb_func_start sub_8092F4C -sub_8092F4C: - push {r4,lr} - adds r2, r0, 0 - cmp r1, 0 - ble _08092F78 - movs r4, 0x1 - lsls r0, r1, 3 - adds r3, r0, r2 -_08092F5A: - ldrb r2, [r3] - adds r0, r4, 0 - ands r0, r2 - cmp r0, 0 - beq _08092F78 - lsrs r0, r2, 1 - ands r0, r4 - cmp r0, 0 - bne _08092F70 - adds r0, r1, 0 - b _08092F7A -_08092F70: - subs r3, 0x8 - subs r1, 0x1 - cmp r1, 0 - bgt _08092F5A -_08092F78: - movs r0, 0 -_08092F7A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8092F4C - - thumb_func_start sub_8092F80 -sub_8092F80: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x80 - adds r7, r0, 0 - mov r8, r1 - lsls r0, r1, 3 - adds r0, r7, r0 - ldrb r2, [r0] - movs r1, 0x80 - orrs r1, r2 - strb r1, [r0] - adds r0, r7, 0 - mov r1, sp - bl sub_8093784 - mov r0, sp - bl sub_8093744 - adds r3, r0, 0 - cmp r3, 0x2 - bhi _08092FCC - lsls r1, r3, 5 - adds r0, r3, 0x1 - lsls r0, 5 - mov r2, sp - adds r5, r0, r2 - adds r4, r1, r2 - movs r6, 0x3 -_08092FBA: - ldr r2, [r4] - ldr r3, [r4, 0x4] - ldr r0, [r5] - ldr r1, [r5, 0x4] - stm r4!, {r0,r1} - stm r5!, {r2,r3} - subs r6, 0x1 - cmp r6, 0 - bge _08092FBA -_08092FCC: - adds r0, r7, 0 - mov r1, sp - bl sub_80937E0 - movs r3, 0 - movs r5, 0x80 - movs r4, 0x7F - adds r1, r7, 0 -_08092FDC: - ldrb r2, [r1] - adds r0, r5, 0 - ands r0, r2 - cmp r0, 0 - beq _08092FF0 - adds r0, r4, 0 - ands r0, r2 - strb r0, [r1] - mov r8, r3 - b _08092FF8 -_08092FF0: - adds r1, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - ble _08092FDC -_08092FF8: - mov r0, r8 - add sp, 0x80 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8092F80 - - thumb_func_start sub_8093008 -sub_8093008: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _0809307C - add sp, r4 - adds r7, r0, 0 - mov r8, r1 - lsls r0, r1, 3 - adds r0, r7, r0 - ldrb r2, [r0] - movs r1, 0x80 - orrs r1, r2 - strb r1, [r0] - adds r0, r7, 0 - mov r1, sp - bl sub_8093974 - mov r0, sp - bl sub_80938F4 - adds r3, r0, 0 - cmp r3, 0x6 - bhi _08093056 - lsls r1, r3, 6 - adds r0, r3, 0x1 - lsls r0, 6 - mov r2, sp - adds r5, r0, r2 - adds r4, r1, r2 - movs r6, 0x7 -_08093044: - ldr r2, [r4] - ldr r3, [r4, 0x4] - ldr r0, [r5] - ldr r1, [r5, 0x4] - stm r4!, {r0,r1} - stm r5!, {r2,r3} - subs r6, 0x1 - cmp r6, 0 - bge _08093044 -_08093056: - adds r0, r7, 0 - mov r1, sp - bl sub_8093A2C - movs r3, 0 - movs r5, 0x80 - movs r4, 0x7F - adds r1, r7, 0 -_08093066: - ldrb r2, [r1] - adds r0, r5, 0 - ands r0, r2 - cmp r0, 0 - beq _08093080 - adds r0, r4, 0 - ands r0, r2 - strb r0, [r1] - mov r8, r3 - b _08093088 - .align 2, 0 -_0809307C: .4byte 0xfffffe00 -_08093080: - adds r1, 0x8 - adds r3, 0x1 - cmp r3, 0x7 - ble _08093066 -_08093088: - mov r0, r8 - movs r3, 0x80 - lsls r3, 2 - add sp, r3 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8093008 - - thumb_func_start sub_809309C -sub_809309C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _08093110 - add sp, r4 - adds r7, r0, 0 - mov r8, r1 - lsls r0, r1, 3 - adds r0, r7, r0 - ldrb r2, [r0] - movs r1, 0x80 - orrs r1, r2 - strb r1, [r0] - adds r0, r7, 0 - mov r1, sp - bl sub_80939D0 - mov r0, sp - bl sub_8093934 - adds r3, r0, 0 - cmp r3, 0x6 - bhi _080930EA - lsls r1, r3, 6 - adds r0, r3, 0x1 - lsls r0, 6 - mov r2, sp - adds r5, r0, r2 - adds r4, r1, r2 - movs r6, 0x7 -_080930D8: - ldr r2, [r4] - ldr r3, [r4, 0x4] - ldr r0, [r5] - ldr r1, [r5, 0x4] - stm r4!, {r0,r1} - stm r5!, {r2,r3} - subs r6, 0x1 - cmp r6, 0 - bge _080930D8 -_080930EA: - adds r0, r7, 0 - mov r1, sp - bl sub_8093B40 - movs r3, 0 - movs r5, 0x80 - movs r4, 0x7F - adds r1, r7, 0 -_080930FA: - ldrb r2, [r1] - adds r0, r5, 0 - ands r0, r2 - cmp r0, 0 - beq _08093114 - adds r0, r4, 0 - ands r0, r2 - strb r0, [r1] - mov r8, r3 - b _0809311C - .align 2, 0 -_08093110: .4byte 0xfffffe00 -_08093114: - adds r1, 0x8 - adds r3, 0x1 - cmp r3, 0x7 - ble _080930FA -_0809311C: - mov r0, r8 - movs r3, 0x80 - lsls r3, 2 - add sp, r3 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_809309C - - thumb_func_start sub_8093130 -sub_8093130: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x80 - adds r7, r0, 0 - mov r8, r1 - lsls r0, r1, 3 - adds r0, r7, r0 - ldrb r2, [r0] - movs r1, 0x80 - orrs r1, r2 - strb r1, [r0] - adds r0, r7, 0 - mov r1, sp - bl sub_8093784 - mov r0, sp - bl sub_8093744 - adds r1, r0, 0 - subs r0, r1, 0x1 - cmp r0, 0x2 - bhi _0809317C - lsls r1, 5 - lsls r0, 5 - mov r2, sp - adds r5, r0, r2 - adds r4, r1, r2 - movs r6, 0x3 -_0809316A: - ldr r2, [r4] - ldr r3, [r4, 0x4] - ldr r0, [r5] - ldr r1, [r5, 0x4] - stm r4!, {r0,r1} - stm r5!, {r2,r3} - subs r6, 0x1 - cmp r6, 0 - bge _0809316A -_0809317C: - adds r0, r7, 0 - mov r1, sp - bl sub_80937E0 - movs r1, 0 - movs r5, 0x80 - movs r4, 0x7F - adds r2, r7, 0 -_0809318C: - ldrb r3, [r2] - adds r0, r5, 0 - ands r0, r3 - cmp r0, 0 - beq _080931A0 - adds r0, r4, 0 - ands r0, r3 - strb r0, [r2] - mov r8, r1 - b _080931A8 -_080931A0: - adds r2, 0x8 - adds r1, 0x1 - cmp r1, 0x3 - ble _0809318C -_080931A8: - mov r0, r8 - add sp, 0x80 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8093130 - - thumb_func_start sub_80931B8 -sub_80931B8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _0809322C - add sp, r4 - adds r7, r0, 0 - mov r8, r1 - lsls r0, r1, 3 - adds r0, r7, r0 - ldrb r2, [r0] - movs r1, 0x80 - orrs r1, r2 - strb r1, [r0] - adds r0, r7, 0 - mov r1, sp - bl sub_8093974 - mov r0, sp - bl sub_80938F4 - adds r1, r0, 0 - subs r0, r1, 0x1 - cmp r0, 0x6 - bhi _08093206 - lsls r1, 6 - lsls r0, 6 - mov r2, sp - adds r5, r0, r2 - adds r4, r1, r2 - movs r6, 0x7 -_080931F4: - ldr r2, [r4] - ldr r3, [r4, 0x4] - ldr r0, [r5] - ldr r1, [r5, 0x4] - stm r4!, {r0,r1} - stm r5!, {r2,r3} - subs r6, 0x1 - cmp r6, 0 - bge _080931F4 -_08093206: - adds r0, r7, 0 - mov r1, sp - bl sub_8093A2C - movs r1, 0 - movs r5, 0x80 - movs r4, 0x7F - adds r2, r7, 0 -_08093216: - ldrb r3, [r2] - adds r0, r5, 0 - ands r0, r3 - cmp r0, 0 - beq _08093230 - adds r0, r4, 0 - ands r0, r3 - strb r0, [r2] - mov r8, r1 - b _08093238 - .align 2, 0 -_0809322C: .4byte 0xfffffe00 -_08093230: - adds r2, 0x8 - adds r1, 0x1 - cmp r1, 0x7 - ble _08093216 -_08093238: - mov r0, r8 - movs r3, 0x80 - lsls r3, 2 - add sp, r3 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80931B8 - - thumb_func_start sub_809324C -sub_809324C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _080932C0 - add sp, r4 - adds r7, r0, 0 - mov r8, r1 - lsls r0, r1, 3 - adds r0, r7, r0 - ldrb r2, [r0] - movs r1, 0x80 - orrs r1, r2 - strb r1, [r0] - adds r0, r7, 0 - mov r1, sp - bl sub_80939D0 - mov r0, sp - bl sub_8093934 - adds r1, r0, 0 - subs r0, r1, 0x1 - cmp r0, 0x6 - bhi _0809329A - lsls r1, 6 - lsls r0, 6 - mov r2, sp - adds r5, r0, r2 - adds r4, r1, r2 - movs r6, 0x7 -_08093288: - ldr r2, [r4] - ldr r3, [r4, 0x4] - ldr r0, [r5] - ldr r1, [r5, 0x4] - stm r4!, {r0,r1} - stm r5!, {r2,r3} - subs r6, 0x1 - cmp r6, 0 - bge _08093288 -_0809329A: - adds r0, r7, 0 - mov r1, sp - bl sub_8093B40 - movs r1, 0 - movs r5, 0x80 - movs r4, 0x7F - adds r2, r7, 0 -_080932AA: - ldrb r3, [r2] - adds r0, r5, 0 - ands r0, r3 - cmp r0, 0 - beq _080932C4 - adds r0, r4, 0 - ands r0, r3 - strb r0, [r2] - mov r8, r1 - b _080932CC - .align 2, 0 -_080932C0: .4byte 0xfffffe00 -_080932C4: - adds r2, 0x8 - adds r1, 0x1 - cmp r1, 0x7 - ble _080932AA -_080932CC: - mov r0, r8 - movs r3, 0x80 - lsls r3, 2 - add sp, r3 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_809324C - - thumb_func_start sub_80932E0 -sub_80932E0: - push {lr} - lsls r0, 3 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080932F4 - movs r0, 0 - b _080932F6 -_080932F4: - movs r0, 0x1 -_080932F6: - pop {r1} - bx r1 - thumb_func_end sub_80932E0 - - thumb_func_start sub_80932FC -sub_80932FC: - push {lr} - lsls r0, 3 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _08093310 - movs r0, 0 - b _08093312 -_08093310: - movs r0, 0x1 -_08093312: - pop {r1} - bx r1 - thumb_func_end sub_80932FC - - thumb_func_start sub_8093318 -sub_8093318: - push {r4,lr} - sub sp, 0x40 - adds r4, r0, 0 - mov r0, sp - movs r2, 0x40 - bl MemoryCopy8 - adds r0, r4, 0 - mov r1, sp - bl sub_8093400 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x40 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8093318 - - thumb_func_start sub_809333C -sub_809333C: - push {r4,lr} - sub sp, 0x40 - adds r4, r0, 0 - mov r0, sp - movs r2, 0x40 - bl MemoryCopy8 - adds r0, r4, 0 - mov r1, sp - bl sub_8093468 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x40 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809333C - - thumb_func_start sub_8093360 -sub_8093360: - push {r4,lr} - sub sp, 0x40 - adds r4, r0, 0 - mov r0, sp - movs r2, 0x40 - bl MemoryCopy8 - adds r0, r4, 0 - mov r1, sp - bl sub_80933D8 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x40 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8093360 - - thumb_func_start sub_8093384 -sub_8093384: - push {lr} - lsls r0, 3 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _08093398 - movs r0, 0x1 - b _0809339A -_08093398: - movs r0, 0 -_0809339A: - pop {r1} - bx r1 - thumb_func_end sub_8093384 - - thumb_func_start sub_80933A0 -sub_80933A0: - push {r4-r6,lr} - movs r4, 0 - movs r6, 0x1 - movs r5, 0x2 - movs r3, 0x7 -_080933AA: - ldrb r2, [r1] - adds r0, r6, 0 - ands r0, r2 - cmp r0, 0 - beq _080933BE - adds r0, r5, 0 - ands r0, r2 - cmp r0, 0 - bne _080933BE - adds r4, 0x1 -_080933BE: - adds r1, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _080933AA - cmp r4, 0x1 - bgt _080933CE - movs r0, 0 - b _080933D0 -_080933CE: - movs r0, 0x1 -_080933D0: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80933A0 - - thumb_func_start sub_80933D8 -sub_80933D8: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8093400 - lsls r0, 24 - cmp r0, 0 - bne _080933F6 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8093468 - lsls r0, 24 - lsrs r0, 24 - b _080933F8 -_080933F6: - movs r0, 0x1 -_080933F8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80933D8 - - thumb_func_start sub_8093400 -sub_8093400: - push {r4-r7,lr} - adds r4, r0, 0 - adds r7, r1, 0 - lsls r0, r4, 3 - adds r0, r7, r0 - ldrh r0, [r0, 0x2] - bl sub_809422C - lsls r0, 24 - cmp r0, 0 - beq _08093428 - b _08093460 -_08093418: - adds r0, r1, 0 - orrs r0, r2 - strb r0, [r6] - adds r0, r7, 0 - bl sub_809371C - movs r0, 0x1 - b _08093462 -_08093428: - adds r5, r4, 0x1 - cmp r5, 0x7 - bgt _08093460 - lsls r0, r5, 3 - adds r4, r0, r7 - adds r6, r4, 0 -_08093434: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08093460 - ldrh r0, [r4, 0x2] - bl sub_809422C - lsls r0, 24 - cmp r0, 0 - bne _08093460 - ldrb r1, [r4] - movs r2, 0x2 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08093418 - adds r4, 0x8 - adds r6, 0x8 - adds r5, 0x1 - cmp r5, 0x7 - ble _08093434 -_08093460: - movs r0, 0 -_08093462: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8093400 - - thumb_func_start sub_8093468 -sub_8093468: - push {r4-r7,lr} - adds r6, r1, 0 - movs r5, 0 - adds r1, r0, 0x1 - movs r4, 0 - cmp r1, 0x7 - bgt _080934A0 - movs r0, 0x2 - mov r12, r0 - movs r7, 0xFD - lsls r0, r1, 3 - adds r3, r0, r6 -_08093480: - ldrb r2, [r3] - mov r0, r12 - ands r0, r2 - cmp r0, 0 - beq _080934A0 - adds r0, r7, 0 - ands r0, r2 - strb r0, [r3] - movs r5, 0x1 - adds r3, 0x8 - adds r1, 0x1 - adds r4, 0x1 - cmp r4, 0x7 - bgt _080934A0 - cmp r1, 0x7 - ble _08093480 -_080934A0: - adds r0, r6, 0 - bl sub_809371C - adds r0, r5, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8093468 - - thumb_func_start sub_80934B0 -sub_80934B0: - push {lr} - adds r2, r0, 0 - adds r0, r2, 0x1 - cmp r0, 0x7 - bgt _080934D2 - lsls r0, r2, 3 - adds r0, 0x8 - adds r0, r1, r0 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080934D2 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080934D6 -_080934D2: - movs r0, 0 - b _080934D8 -_080934D6: - movs r0, 0x1 -_080934D8: - pop {r1} - bx r1 - thumb_func_end sub_80934B0 - - thumb_func_start sub_80934DC -sub_80934DC: - push {r4-r7,lr} - adds r5, r1, 0 - lsls r0, 3 - adds r4, r5, r0 - ldrb r1, [r4] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080934F4 - movs r0, 0xF7 - ands r0, r1 - b _0809351A -_080934F4: - movs r7, 0x1 - movs r6, 0xF7 - adds r1, r5, 0 - movs r3, 0x3 -_080934FC: - ldrb r2, [r1] - adds r0, r7, 0 - ands r0, r2 - cmp r0, 0 - beq _0809350C - adds r0, r6, 0 - ands r0, r2 - strb r0, [r1] -_0809350C: - adds r1, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _080934FC - ldrb r1, [r4] - movs r0, 0x8 - orrs r0, r1 -_0809351A: - strb r0, [r4] - adds r0, r5, 0 - bl sub_809371C - movs r0, 0x1 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80934DC - - thumb_func_start sub_809352C -sub_809352C: - push {lr} - lsls r0, 3 - adds r0, r1, r0 - ldrb r3, [r0] - movs r2, 0xF7 - ands r2, r3 - strb r2, [r0] - adds r0, r1, 0 - bl sub_809371C - pop {r0} - bx r0 - thumb_func_end sub_809352C - - thumb_func_start sub_8093544 -sub_8093544: - push {lr} - lsls r0, 3 - adds r0, r1, r0 - ldrb r2, [r0] - movs r3, 0x4 - eors r2, r3 - strb r2, [r0] - adds r0, r1, 0 - bl sub_809371C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8093544 - - thumb_func_start sub_8093560 -sub_8093560: - push {r4-r7,lr} - adds r4, r0, 0 - adds r6, r1, 0 - movs r5, 0x1 - lsls r0, r4, 3 - adds r0, r6, r0 - ldrh r0, [r0, 0x2] - strh r0, [r2] - movs r1, 0 - adds r0, r2, 0x2 - movs r3, 0x2 -_08093576: - strh r1, [r0] - adds r0, 0x2 - subs r3, 0x1 - cmp r3, 0 - bge _08093576 - adds r4, 0x1 - adds r2, 0x2 - cmp r4, 0x7 - bgt _080935B0 - cmp r5, 0x3 - bgt _080935B0 - movs r7, 0x2 - lsls r0, r4, 3 - adds r3, r0, r6 -_08093592: - ldrb r1, [r3] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _080935B0 - ldrh r0, [r3, 0x2] - strh r0, [r2] - adds r2, 0x2 - adds r5, 0x1 - adds r3, 0x8 - adds r4, 0x1 - cmp r4, 0x7 - bgt _080935B0 - cmp r5, 0x3 - ble _08093592 -_080935B0: - adds r0, r5, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8093560 - - thumb_func_start sub_80935B8 -sub_80935B8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r5, r0, 0 - movs r0, 0x63 - mov r12, r0 - movs r0, 0 - mov r8, r0 - movs r6, 0 - adds r4, r1, 0 - cmp r4, 0 - blt _08093606 - lsls r0, r4, 3 - adds r2, r5, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08093606 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08093606 - movs r7, 0x1 - movs r3, 0x2 -_080935EC: - subs r2, 0x8 - subs r4, 0x1 - cmp r4, 0 - blt _08093606 - ldrb r1, [r2] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08093606 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _080935EC -_08093606: - adds r2, r4, 0x1 - mov r9, r2 - cmp r2, 0x3 - bgt _08093642 - lsls r0, r2, 3 - adds r3, r5, r0 - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08093642 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08093642 - movs r6, 0x1 - movs r7, 0x2 -_08093628: - adds r3, 0x8 - adds r2, 0x1 - cmp r2, 0x3 - bgt _08093642 - ldrb r1, [r3] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08093642 - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - bne _08093628 -_08093642: - cmp r6, 0 - bne _0809364A - movs r0, 0x63 - b _080936CC -_0809364A: - movs r6, 0 - b _08093668 -_0809364E: - ldrb r0, [r3, 0x4] - cmp r12, r0 - ble _08093656 - mov r12, r0 -_08093656: - cmp r0, 0 - bne _0809365C - movs r6, 0x1 -_0809365C: - ldrb r1, [r3, 0x1] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08093668 - movs r6, 0x1 -_08093668: - subs r2, 0x1 - cmp r2, r4 - blt _0809367C - lsls r0, r2, 3 - adds r3, r5, r0 - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0809364E -_0809367C: - cmp r6, 0 - beq _080936C6 - mov r2, r9 - cmp r2, 0x3 - bgt _080936C0 - lsls r0, r2, 3 - adds r3, r5, r0 - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080936C0 - movs r6, 0x2 - movs r4, 0xFD -_08093698: - ldrb r1, [r3] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _080936C0 - adds r0, r4, 0 - ands r0, r1 - strb r0, [r3] - movs r0, 0x1 - mov r8, r0 - adds r2, 0x1 - cmp r2, 0x3 - bgt _080936C0 - lsls r0, r2, 3 - adds r3, r5, r0 - ldrb r1, [r3] - mov r0, r8 - ands r0, r1 - cmp r0, 0 - bne _08093698 -_080936C0: - mov r0, r8 - cmp r0, 0 - bne _080936CA -_080936C6: - mov r0, r12 - b _080936CC -_080936CA: - movs r0, 0 -_080936CC: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80935B8 - - thumb_func_start sub_80936D8 -sub_80936D8: - push {r4,lr} - sub sp, 0x80 - adds r4, r0, 0 - mov r1, sp - bl sub_8093784 - adds r0, r4, 0 - mov r1, sp - bl sub_80937E0 - add sp, 0x80 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80936D8 - - thumb_func_start sub_80936F4 -sub_80936F4: - push {r4,lr} - ldr r4, _08093718 - add sp, r4 - adds r4, r0, 0 - mov r1, sp - bl sub_8093974 - adds r0, r4, 0 - mov r1, sp - bl sub_8093A2C - movs r3, 0x80 - lsls r3, 2 - add sp, r3 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08093718: .4byte 0xfffffe00 - thumb_func_end sub_80936F4 - - thumb_func_start sub_809371C -sub_809371C: - push {r4,lr} - ldr r4, _08093740 - add sp, r4 - adds r4, r0, 0 - mov r1, sp - bl sub_80939D0 - adds r0, r4, 0 - mov r1, sp - bl sub_8093B40 - movs r3, 0x80 - lsls r3, 2 - add sp, r3 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08093740: .4byte 0xfffffe00 - thumb_func_end sub_809371C - - thumb_func_start sub_8093744 -sub_8093744: - push {r4-r7,lr} - adds r7, r0, 0 - movs r4, 0 - movs r6, 0x1 - movs r5, 0x80 -_0809374E: - movs r3, 0 - lsls r0, r4, 5 - adds r2, r0, r7 -_08093754: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0809376A - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0809376A - adds r0, r4, 0 - b _0809377C -_0809376A: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - ble _08093754 - adds r4, 0x1 - cmp r4, 0x3 - ble _0809374E - movs r0, 0x1 - negs r0, r0 -_0809377C: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8093744 - - thumb_func_start sub_8093784 -sub_8093784: - push {r4-r7,lr} - adds r6, r0, 0 - movs r2, 0 - movs r4, 0 -_0809378C: - lsls r0, r2, 5 - adds r2, 0x1 - movs r3, 0x3 - adds r0, r1 - adds r0, 0x18 -_08093796: - strb r4, [r0] - subs r0, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08093796 - cmp r2, 0x3 - ble _0809378C - movs r3, 0 - movs r5, 0 - adds r4, r1, 0 - subs r4, 0x20 - movs r7, 0x2 -_080937AE: - cmp r5, 0 - beq _080937BC - ldrb r1, [r6] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - bne _080937C0 -_080937BC: - adds r4, 0x20 - movs r3, 0 -_080937C0: - lsls r2, r3, 3 - adds r2, r4 - ldm r6!, {r0,r1} - str r0, [r2] - str r1, [r2, 0x4] - ldrb r1, [r2] - movs r0, 0xFD - ands r0, r1 - strb r0, [r2] - adds r3, 0x1 - adds r5, 0x1 - cmp r5, 0x3 - ble _080937AE - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8093784 - - thumb_func_start sub_80937E0 -sub_80937E0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - str r0, [sp, 0x8] - mov r9, r1 - movs r0, 0 - mov r8, r0 - movs r6, 0 - add r1, sp, 0x4 - mov r10, r1 - mov r12, r6 - movs r3, 0x1 -_080937FE: - mov r2, sp - adds r0, r2, r6 - mov r7, r12 - strb r7, [r0] - mov r1, sp - adds r1, r6 - adds r1, 0x4 - mov r2, r12 - strb r2, [r1] - adds r7, r0, 0 - lsls r0, r6, 5 - adds r6, 0x1 - adds r5, r1, 0 - mov r1, r9 - adds r2, r0, r1 - movs r4, 0x3 -_0809381E: - ldrb r1, [r2] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _0809383E - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08093832 - strb r3, [r7] -_08093832: - ldrb r1, [r2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0809383E - strb r3, [r5] -_0809383E: - adds r2, 0x8 - subs r4, 0x1 - cmp r4, 0 - bge _0809381E - cmp r6, 0x3 - ble _080937FE - movs r6, 0 - mov r2, r8 - lsls r2, 3 - str r2, [sp, 0xC] -_08093852: - movs r4, 0 - lsls r0, r6, 5 - mov r7, r9 - adds r5, r0, r7 - ldr r0, [sp, 0xC] - ldr r1, [sp, 0x8] - adds r2, r0, r1 - mov r7, r10 - adds r7, r6 - mov r12, r7 -_08093866: - ldrb r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080938D6 - ldr r0, [r5] - ldr r1, [r5, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - cmp r4, 0 - bne _08093884 - ldrb r1, [r2] - movs r0, 0xFD - ands r0, r1 - b _0809388A -_08093884: - ldrb r0, [r2] - movs r1, 0x2 - orrs r0, r1 -_0809388A: - strb r0, [r2] - ldrb r0, [r2] - movs r3, 0xF7 - ands r3, r0 - movs r1, 0 - movs r0, 0xFB - ands r3, r0 - strb r3, [r2] - mov r7, sp - adds r0, r7, r6 - ldrb r0, [r0] - cmp r0, 0 - beq _080938B0 - cmp r4, 0 - bne _080938B0 - movs r1, 0x8 - adds r0, r3, 0 - orrs r0, r1 - strb r0, [r2] -_080938B0: - mov r1, r12 - ldrb r0, [r1] - cmp r0, 0 - beq _080938C4 - cmp r4, 0 - bne _080938C4 - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] -_080938C4: - adds r2, 0x8 - ldr r7, [sp, 0xC] - adds r7, 0x8 - str r7, [sp, 0xC] - movs r0, 0x1 - add r8, r0 - mov r1, r8 - cmp r1, 0x4 - beq _080938E4 -_080938D6: - adds r5, 0x8 - adds r4, 0x1 - cmp r4, 0x3 - ble _08093866 - adds r6, 0x1 - cmp r6, 0x3 - ble _08093852 -_080938E4: - 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_80937E0 - - thumb_func_start sub_80938F4 -sub_80938F4: - push {r4-r7,lr} - adds r7, r0, 0 - movs r4, 0 - movs r6, 0x1 - movs r5, 0x80 -_080938FE: - movs r3, 0 - lsls r0, r4, 6 - adds r2, r0, r7 -_08093904: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0809391A - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0809391A - adds r0, r4, 0 - b _0809392C -_0809391A: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x7 - ble _08093904 - adds r4, 0x1 - cmp r4, 0x7 - ble _080938FE - movs r0, 0x1 - negs r0, r0 -_0809392C: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80938F4 - - thumb_func_start sub_8093934 -sub_8093934: - push {r4-r7,lr} - adds r7, r0, 0 - movs r4, 0 - movs r6, 0x1 - movs r5, 0x80 -_0809393E: - movs r3, 0 - lsls r0, r4, 6 - adds r2, r0, r7 -_08093944: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0809395A - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0809395A - adds r0, r4, 0 - b _0809396C -_0809395A: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x7 - ble _08093944 - adds r4, 0x1 - cmp r4, 0x7 - ble _0809393E - movs r0, 0x1 - negs r0, r0 -_0809396C: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8093934 - - thumb_func_start sub_8093974 -sub_8093974: - push {r4-r7,lr} - adds r6, r0, 0 - movs r2, 0 - movs r4, 0 -_0809397C: - lsls r0, r2, 6 - adds r2, 0x1 - movs r3, 0x7 - adds r0, r1 - adds r0, 0x38 -_08093986: - strb r4, [r0] - subs r0, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08093986 - cmp r2, 0x7 - ble _0809397C - movs r3, 0 - movs r5, 0 - adds r4, r1, 0 - subs r4, 0x40 - movs r7, 0x2 -_0809399E: - cmp r5, 0 - beq _080939AC - ldrb r1, [r6] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - bne _080939B0 -_080939AC: - adds r4, 0x40 - movs r3, 0 -_080939B0: - lsls r2, r3, 3 - adds r2, r4 - ldm r6!, {r0,r1} - str r0, [r2] - str r1, [r2, 0x4] - ldrb r1, [r2] - movs r0, 0xFD - ands r0, r1 - strb r0, [r2] - adds r3, 0x1 - adds r5, 0x1 - cmp r5, 0x7 - ble _0809399E - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8093974 - - thumb_func_start sub_80939D0 -sub_80939D0: - push {r4-r7,lr} - adds r6, r0, 0 - movs r2, 0 - movs r4, 0 -_080939D8: - lsls r0, r2, 6 - adds r2, 0x1 - movs r3, 0x7 - adds r0, r1 - adds r0, 0x38 -_080939E2: - strb r4, [r0] - subs r0, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _080939E2 - cmp r2, 0x7 - ble _080939D8 - movs r3, 0 - movs r5, 0 - adds r4, r1, 0 - subs r4, 0x40 - movs r7, 0x2 -_080939FA: - cmp r5, 0 - beq _08093A08 - ldrb r1, [r6] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - bne _08093A0C -_08093A08: - adds r4, 0x40 - movs r3, 0 -_08093A0C: - lsls r2, r3, 3 - adds r2, r4 - ldm r6!, {r0,r1} - str r0, [r2] - str r1, [r2, 0x4] - ldrb r1, [r2] - movs r0, 0xFD - ands r0, r1 - strb r0, [r2] - adds r3, 0x1 - adds r5, 0x1 - cmp r5, 0x7 - ble _080939FA - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80939D0 - - thumb_func_start sub_8093A2C -sub_8093A2C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - str r0, [sp, 0x10] - mov r9, r1 - movs r0, 0 - mov r8, r0 - movs r6, 0 - add r1, sp, 0x8 - mov r10, r1 - mov r12, r6 - movs r3, 0x1 -_08093A4A: - mov r2, sp - adds r0, r2, r6 - mov r7, r12 - strb r7, [r0] - mov r1, sp - adds r1, r6 - adds r1, 0x8 - mov r2, r12 - strb r2, [r1] - adds r7, r0, 0 - lsls r0, r6, 6 - adds r6, 0x1 - adds r5, r1, 0 - mov r1, r9 - adds r2, r0, r1 - movs r4, 0x7 -_08093A6A: - ldrb r1, [r2] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08093A8A - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08093A7E - strb r3, [r7] -_08093A7E: - ldrb r1, [r2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08093A8A - strb r3, [r5] -_08093A8A: - adds r2, 0x8 - subs r4, 0x1 - cmp r4, 0 - bge _08093A6A - cmp r6, 0x7 - ble _08093A4A - movs r6, 0 - mov r2, r8 - lsls r2, 3 - str r2, [sp, 0x14] -_08093A9E: - movs r4, 0 - lsls r0, r6, 6 - mov r7, r9 - adds r5, r0, r7 - ldr r0, [sp, 0x14] - ldr r1, [sp, 0x10] - adds r2, r0, r1 - mov r7, r10 - adds r7, r6 - mov r12, r7 -_08093AB2: - ldrb r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08093B22 - ldr r0, [r5] - ldr r1, [r5, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - cmp r4, 0 - bne _08093AD0 - ldrb r1, [r2] - movs r0, 0xFD - ands r0, r1 - b _08093AD6 -_08093AD0: - ldrb r0, [r2] - movs r1, 0x2 - orrs r0, r1 -_08093AD6: - strb r0, [r2] - ldrb r0, [r2] - movs r3, 0xF7 - ands r3, r0 - movs r1, 0 - movs r0, 0xFB - ands r3, r0 - strb r3, [r2] - mov r7, sp - adds r0, r7, r6 - ldrb r0, [r0] - cmp r0, 0 - beq _08093AFC - cmp r4, 0 - bne _08093AFC - movs r1, 0x8 - adds r0, r3, 0 - orrs r0, r1 - strb r0, [r2] -_08093AFC: - mov r1, r12 - ldrb r0, [r1] - cmp r0, 0 - beq _08093B10 - cmp r4, 0 - bne _08093B10 - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] -_08093B10: - adds r2, 0x8 - ldr r7, [sp, 0x14] - adds r7, 0x8 - str r7, [sp, 0x14] - movs r0, 0x1 - add r8, r0 - mov r1, r8 - cmp r1, 0x8 - beq _08093B30 -_08093B22: - adds r5, 0x8 - adds r4, 0x1 - cmp r4, 0x7 - ble _08093AB2 - adds r6, 0x1 - cmp r6, 0x7 - ble _08093A9E -_08093B30: - 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_8093A2C - - thumb_func_start sub_8093B40 -sub_8093B40: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - str r0, [sp, 0x10] - mov r9, r1 - movs r0, 0 - mov r8, r0 - movs r6, 0 - add r1, sp, 0x8 - mov r10, r1 - mov r12, r6 - movs r3, 0x1 -_08093B5E: - mov r2, sp - adds r0, r2, r6 - mov r7, r12 - strb r7, [r0] - mov r1, sp - adds r1, r6 - adds r1, 0x8 - mov r2, r12 - strb r2, [r1] - adds r7, r0, 0 - lsls r0, r6, 6 - adds r6, 0x1 - adds r5, r1, 0 - mov r1, r9 - adds r2, r0, r1 - movs r4, 0x7 -_08093B7E: - ldrb r1, [r2] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08093B9E - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08093B92 - strb r3, [r7] -_08093B92: - ldrb r1, [r2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08093B9E - strb r3, [r5] -_08093B9E: - adds r2, 0x8 - subs r4, 0x1 - cmp r4, 0 - bge _08093B7E - cmp r6, 0x7 - ble _08093B5E - movs r6, 0 - mov r2, r8 - lsls r2, 3 - str r2, [sp, 0x14] -_08093BB2: - movs r4, 0 - lsls r0, r6, 6 - mov r7, r9 - adds r5, r0, r7 - ldr r0, [sp, 0x14] - ldr r1, [sp, 0x10] - adds r2, r0, r1 - mov r7, r10 - adds r7, r6 - mov r12, r7 -_08093BC6: - ldrb r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08093C36 - ldr r0, [r5] - ldr r1, [r5, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - cmp r4, 0 - bne _08093BE4 - ldrb r1, [r2] - movs r0, 0xFD - ands r0, r1 - b _08093BEA -_08093BE4: - ldrb r0, [r2] - movs r1, 0x2 - orrs r0, r1 -_08093BEA: - strb r0, [r2] - ldrb r0, [r2] - movs r3, 0xF7 - ands r3, r0 - movs r1, 0 - movs r0, 0xFB - ands r3, r0 - strb r3, [r2] - mov r7, sp - adds r0, r7, r6 - ldrb r0, [r0] - cmp r0, 0 - beq _08093C10 - cmp r4, 0 - bne _08093C10 - movs r1, 0x8 - adds r0, r3, 0 - orrs r0, r1 - strb r0, [r2] -_08093C10: - mov r1, r12 - ldrb r0, [r1] - cmp r0, 0 - beq _08093C24 - cmp r4, 0 - bne _08093C24 - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] -_08093C24: - adds r2, 0x8 - ldr r7, [sp, 0x14] - adds r7, 0x8 - str r7, [sp, 0x14] - movs r0, 0x1 - add r8, r0 - mov r1, r8 - cmp r1, 0x8 - beq _08093C44 -_08093C36: - adds r5, 0x8 - adds r4, 0x1 - cmp r4, 0x7 - ble _08093BC6 - adds r6, 0x1 - cmp r6, 0x7 - ble _08093BB2 -_08093C44: - 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_8093B40 - - thumb_func_start sub_8093C54 -sub_8093C54: - push {r4-r7,lr} - sub sp, 0x40 - adds r6, r0, 0 - lsls r0, r1, 3 - adds r0, r6 - movs r2, 0 - strb r2, [r0] - adds r3, r1, 0x1 - cmp r3, 0x7 - bgt _08093CA6 - lsls r0, r3, 3 - adds r4, r6, r0 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08093CA6 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08093CA6 - mov r12, r2 - movs r7, 0x1 - adds r2, r4, 0 - movs r5, 0x2 -_08093C86: - mov r0, r12 - strb r0, [r4] - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x7 - bgt _08093CA6 - adds r4, r2, 0 - ldrb r1, [r2] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08093CA6 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _08093C86 -_08093CA6: - movs r4, 0 - movs r7, 0x1 - adds r2, r6, 0 - mov r5, sp - movs r3, 0x7 -_08093CB0: - ldrb r1, [r2] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08093CC2 - ldr r0, [r2] - ldr r1, [r2, 0x4] - stm r5!, {r0,r1} - adds r4, 0x1 -_08093CC2: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08093CB0 - cmp r4, 0x7 - bgt _08093CDE - movs r1, 0 - lsls r0, r4, 3 - add r0, sp -_08093CD4: - strb r1, [r0] - adds r0, 0x8 - adds r4, 0x1 - cmp r4, 0x7 - ble _08093CD4 -_08093CDE: - mov r4, sp - adds r2, r6, 0 - movs r3, 0x7 -_08093CE4: - ldm r4!, {r0,r1} - stm r2!, {r0,r1} - subs r3, 0x1 - cmp r3, 0 - bge _08093CE4 - add sp, 0x40 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8093C54 - - thumb_func_start sub_8093CF8 -sub_8093CF8: - push {r4-r7,lr} - sub sp, 0x40 - adds r6, r0, 0 - lsls r0, r1, 3 - adds r0, r6 - movs r2, 0 - strb r2, [r0] - adds r3, r1, 0x1 - cmp r3, 0x7 - bgt _08093D4A - lsls r0, r3, 3 - adds r4, r6, r0 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08093D4A - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08093D4A - mov r12, r2 - movs r7, 0x1 - adds r2, r4, 0 - movs r5, 0x2 -_08093D2A: - mov r0, r12 - strb r0, [r4] - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x7 - bgt _08093D4A - adds r4, r2, 0 - ldrb r1, [r2] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08093D4A - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _08093D2A -_08093D4A: - movs r4, 0 - movs r7, 0x1 - adds r2, r6, 0 - mov r5, sp - movs r3, 0x7 -_08093D54: - ldrb r1, [r2] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08093D66 - ldr r0, [r2] - ldr r1, [r2, 0x4] - stm r5!, {r0,r1} - adds r4, 0x1 -_08093D66: - adds r2, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08093D54 - cmp r4, 0x7 - bgt _08093D82 - movs r1, 0 - lsls r0, r4, 3 - add r0, sp -_08093D78: - strb r1, [r0] - adds r0, 0x8 - adds r4, 0x1 - cmp r4, 0x7 - ble _08093D78 -_08093D82: - mov r4, sp - adds r2, r6, 0 - movs r3, 0x7 -_08093D88: - ldm r4!, {r0,r1} - stm r2!, {r0,r1} - subs r3, 0x1 - cmp r3, 0 - bge _08093D88 - add sp, 0x40 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8093CF8 - - thumb_func_start sub_8093D9C -sub_8093D9C: - push {r4-r6,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r5, r2, 0 - adds r6, r3, 0 - lsls r1, 16 - lsrs r1, 16 - mov r0, sp - bl sub_8092A88 - adds r0, r4, 0 - mov r1, sp - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_8093DE8 - add sp, 0x8 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8093D9C - - thumb_func_start sub_8093DC4 -sub_8093DC4: - push {r4-r6,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r5, r2, 0 - adds r6, r3, 0 - mov r0, sp - bl sub_8093F10 - adds r0, r4, 0 - mov r1, sp - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_8093DE8 - add sp, 0x8 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8093DC4 - - thumb_func_start sub_8093DE8 -sub_8093DE8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _08093E80 - add sp, r4 - adds r4, r0, 0 - adds r6, r1, 0 - adds r5, r2, 0 - mov r8, r3 - adds r0, r5, 0 - bl sub_80073B8 - ldr r0, _08093E84 - adds r1, r6, 0 - movs r2, 0 - bl sub_80928C0 - lsls r4, 3 - adds r4, 0x10 - ldr r2, _08093E88 - movs r7, 0 - str r7, [sp] - adds r0, r4, 0 - movs r1, 0 - adds r3, r5, 0 - bl sub_8014FF0 - movs r3, 0x13 - ldrh r1, [r6, 0x2] - ldr r4, _08093E8C - ldr r2, [r4] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r2, [r0, 0x1C] - ldrb r0, [r2] - cmp r0, 0x2A - bne _08093E3A - movs r3, 0x10 - adds r2, 0x1 -_08093E3A: - str r7, [sp] - movs r0, 0x4 - adds r1, r3, 0 - adds r3, r5, 0 - bl sub_8014FF0 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8093E90 - adds r0, r5, 0 - bl sub_80073E0 - ldrh r1, [r6, 0x2] - ldr r2, [r4] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, [r0, 0x1C] - add r0, sp, 0x4 - bl strcpy - add r0, sp, 0x4 - mov r1, r8 - bl sub_8097DF0 - movs r3, 0xC9 - lsls r3, 2 - add sp, r3 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08093E80: .4byte 0xfffffcdc -_08093E84: .4byte gUnknown_202DF98 -_08093E88: .4byte gUnknown_8109930 -_08093E8C: .4byte gUnknown_2038C68 - thumb_func_end sub_8093DE8 - - thumb_func_start sub_8093E90 -sub_8093E90: - push {r4-r6,lr} - sub sp, 0x4 - adds r6, r0, 0 - adds r5, r1, 0 - movs r0, 0x7 - str r0, [sp] - adds r0, r5, 0 - movs r1, 0x4 - movs r2, 0x48 - movs r3, 0xC8 - bl sub_80078A4 - ldr r0, _08093F00 - adds r1, r6, 0 - bl sub_8092D54 - ldr r0, _08093F04 - ldr r2, [r0] - movs r4, 0 - str r4, [sp] - movs r0, 0x4 - movs r1, 0x4A - adds r3, r5, 0 - bl sub_8014FF0 - ldr r0, _08093F08 - ldr r2, [r0] - str r4, [sp] - movs r0, 0x4 - movs r1, 0x56 - adds r3, r5, 0 - bl sub_8014FF0 - adds r0, r6, 0 - bl sub_8092B00 - lsls r0, 24 - lsrs r0, 24 - bl sub_8092334 - adds r2, r0, 0 - str r4, [sp] - movs r0, 0x40 - movs r1, 0x56 - adds r3, r5, 0 - bl sub_8014FF0 - adds r0, r6, 0 - bl sub_8092BC0 - ldr r1, _08093F0C - str r0, [r1] - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08093F00: .4byte gUnknown_202DF98 -_08093F04: .4byte gUnknown_810CF00 -_08093F08: .4byte gUnknown_810CF0C -_08093F0C: .4byte gUnknown_202DE30 - thumb_func_end sub_8093E90 - - thumb_func_start sub_8093F10 -sub_8093F10: - push {r4,lr} - adds r3, r0, 0 - adds r4, r1, 0 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08093F48 - movs r0, 0 - strb r1, [r3] - strb r0, [r3, 0x1] - ldrh r0, [r4, 0x2] - strh r0, [r3, 0x2] - ldrh r1, [r4, 0x2] - ldr r0, _08093F44 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0xC] - strb r0, [r3, 0x4] - ldrb r0, [r4, 0x4] - strb r0, [r3, 0x5] - b _08093F4A - .align 2, 0 -_08093F44: .4byte gUnknown_2038C68 -_08093F48: - strb r0, [r3] -_08093F4A: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8093F10 - - thumb_func_start sub_8093F50 -sub_8093F50: - push {r4-r7,lr} - adds r6, r0, 0 - movs r7, 0 - adds r3, r6, 0 - adds r4, r1, 0 - movs r5, 0x3 -_08093F5C: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08093F8C - strb r1, [r3] - strb r7, [r3, 0x1] - ldrh r0, [r4, 0x2] - strh r0, [r3, 0x2] - ldrh r1, [r4, 0x2] - ldr r0, _08093F88 - ldr r2, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0xC] - strb r0, [r3, 0x4] - ldrb r0, [r4, 0x4] - strb r0, [r3, 0x5] - b _08093F8E - .align 2, 0 -_08093F88: .4byte gUnknown_2038C68 -_08093F8C: - strb r0, [r3] -_08093F8E: - adds r3, 0x8 - adds r4, 0x8 - subs r5, 0x1 - cmp r5, 0 - bge _08093F5C - adds r1, r6, 0 - adds r1, 0x20 - movs r0, 0 - strb r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8093F50 - - thumb_func_start sub_8093FA8 -sub_8093FA8: - push {lr} - adds r2, r0, 0 - movs r3, 0x3 -_08093FAE: - ldrb r0, [r1] - strb r0, [r2] - ldrh r0, [r1, 0x2] - strh r0, [r2, 0x2] - ldrb r0, [r1, 0x5] - strb r0, [r2, 0x4] - adds r2, 0x8 - adds r1, 0x8 - subs r3, 0x1 - cmp r3, 0 - bge _08093FAE - pop {r0} - bx r0 - thumb_func_end sub_8093FA8 - - thumb_func_start sub_8093FC8 -sub_8093FC8: - push {r4-r7,lr} - adds r5, r0, 0 - adds r2, r1, 0 - movs r3, 0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08094002 - movs r7, 0xFB - movs r6, 0x1 - adds r4, r2, 0 - adds r2, r5, 0 -_08093FE2: - ldm r4!, {r0,r1} - str r0, [r2] - str r1, [r2, 0x4] - ldrb r1, [r2, 0x1] - adds r0, r7, 0 - ands r0, r1 - strb r0, [r2, 0x1] - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x3 - bgt _08094002 - ldrb r1, [r4] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - bne _08093FE2 -_08094002: - cmp r3, 0x7 - bgt _08094016 - movs r1, 0 - lsls r0, r3, 3 - adds r0, r5 -_0809400C: - strb r1, [r0] - adds r0, 0x8 - adds r3, 0x1 - cmp r3, 0x7 - ble _0809400C -_08094016: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8093FC8 - - thumb_func_start sub_809401C -sub_809401C: - push {r4-r6,lr} - adds r5, r0, 0 - adds r3, r1, 0 - movs r2, 0 - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08094046 - movs r6, 0x1 - adds r4, r5, 0 -_08094032: - ldm r3!, {r0,r1} - stm r4!, {r0,r1} - adds r2, 0x1 - cmp r2, 0x3 - bgt _08094046 - ldrb r1, [r3] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - bne _08094032 -_08094046: - cmp r2, 0x7 - bgt _0809405A - movs r1, 0 - lsls r0, r2, 3 - adds r0, r5 -_08094050: - strb r1, [r0] - adds r0, 0x8 - adds r2, 0x1 - cmp r2, 0x7 - ble _08094050 -_0809405A: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_809401C - - thumb_func_start sub_8094060 -sub_8094060: - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - movs r4, 0 - movs r5, 0 - adds r3, r6, 0 - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08094084 -_08094076: - lsls r2, r4, 3 - adds r2, r7, r2 - ldr r0, [r3] - ldr r1, [r3, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - adds r4, 0x1 -_08094084: - adds r5, 0x1 - cmp r5, 0x7 - bgt _0809409C - lsls r0, r5, 3 - adds r3, r6, r0 - ldrb r1, [r3] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08094084 - cmp r4, 0x3 - ble _08094076 -_0809409C: - cmp r4, 0x3 - bgt _080940B0 - movs r1, 0 - lsls r0, r4, 3 - adds r0, r7 -_080940A6: - strb r1, [r0] - adds r0, 0x8 - adds r4, 0x1 - cmp r4, 0x3 - ble _080940A6 -_080940B0: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8094060 - - thumb_func_start sub_80940B8 -sub_80940B8: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - bl sub_809488C - adds r1, r5, 0x2 - adds r0, r4, 0 - movs r2, 0x9 - bl sub_809488C - adds r5, 0x4 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x7 - bl sub_809488C - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80940B8 - - thumb_func_start sub_80940E0 -sub_80940E0: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - bl sub_8094924 - adds r1, r5, 0x2 - adds r0, r4, 0 - movs r2, 0x9 - bl sub_8094924 - adds r5, 0x4 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x7 - bl sub_8094924 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80940E0 - - thumb_func_start sub_8094108 -sub_8094108: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - movs r5, 0x3 -_08094110: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80940B8 - adds r4, 0x8 - subs r5, 0x1 - cmp r5, 0 - bge _08094110 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8094108 - - thumb_func_start sub_8094128 -sub_8094128: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - movs r5, 0x3 -_08094130: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80940E0 - adds r4, 0x8 - subs r5, 0x1 - cmp r5, 0 - bge _08094130 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8094128 - - thumb_func_start sub_8094148 -sub_8094148: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x4 - bl sub_809488C - adds r1, r4, 0x1 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_809488C - adds r1, r4, 0x2 - adds r0, r5, 0 - movs r2, 0x9 - bl sub_809488C - adds r1, r4, 0x4 - adds r0, r5, 0 - movs r2, 0x7 - bl sub_809488C - adds r4, 0x5 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x7 - bl sub_809488C - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8094148 - - thumb_func_start sub_8094184 -sub_8094184: - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - adds r4, r7, 0 - movs r5, 0x3 -_0809418E: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8094148 - adds r4, 0x8 - subs r5, 0x1 - cmp r5, 0 - bge _0809418E - adds r1, r7, 0 - adds r1, 0x20 - adds r0, r6, 0 - movs r2, 0x8 - bl sub_809488C - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8094184 - - thumb_func_start sub_80941B0 -sub_80941B0: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x8 - bl memset - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x4 - bl sub_8094924 - adds r1, r4, 0x1 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8094924 - adds r1, r4, 0x2 - adds r0, r5, 0 - movs r2, 0x9 - bl sub_8094924 - adds r1, r4, 0x4 - adds r0, r5, 0 - movs r2, 0x7 - bl sub_8094924 - adds r4, 0x5 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x7 - bl sub_8094924 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80941B0 - - thumb_func_start sub_80941FC -sub_80941FC: - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - adds r4, r7, 0 - movs r5, 0x3 -_08094206: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80941B0 - adds r4, 0x8 - subs r5, 0x1 - cmp r5, 0 - bge _08094206 - adds r1, r7, 0 - adds r1, 0x20 - movs r0, 0 - strb r0, [r1] - adds r0, r6, 0 - movs r2, 0x8 - bl sub_8094924 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80941FC - - thumb_func_start sub_809422C -sub_809422C: - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - adds r2, r1, 0 - cmp r1, 0x97 - beq _08094260 - cmp r1, 0x64 - beq _08094260 - cmp r1, 0x3C - beq _08094260 - cmp r1, 0x4B - beq _08094260 - movs r0, 0xAE - lsls r0, 1 - cmp r1, r0 - beq _08094260 - cmp r1, 0x99 - beq _08094260 - cmp r1, 0xCD - beq _08094260 - cmp r1, 0x9C - beq _08094260 - cmp r2, 0x8 - beq _08094260 - movs r0, 0 - b _08094262 -_08094260: - movs r0, 0x1 -_08094262: - pop {r1} - bx r1 - thumb_func_end sub_809422C - - thumb_func_start sub_8094268 -sub_8094268: - push {r4-r6,lr} - adds r5, r0, 0 - adds r3, r1, 0 - asrs r0, r3, 16 - asrs r1, r2, 16 - adds r0, r1 - lsls r0, 16 - ldr r6, _080942B0 - ands r3, r6 - orrs r3, r0 - adds r2, r3, r2 - lsls r2, 16 - lsrs r2, 16 - ldr r4, _080942B4 - ands r3, r4 - orrs r3, r2 - asrs r1, r3, 16 - ldr r0, _080942B8 - cmp r1, r0 - ble _080942A6 - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r0, 16 - ands r3, r4 - orrs r3, r0 - asrs r0, r3, 16 - ldr r1, _080942BC - adds r0, r1 - lsls r0, 16 - ands r3, r6 - orrs r3, r0 -_080942A6: - str r3, [r5] - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080942B0: .4byte 0x0000ffff -_080942B4: .4byte 0xffff0000 -_080942B8: .4byte 0x000003e7 -_080942BC: .4byte 0xfffffc18 - thumb_func_end sub_8094268 - - thumb_func_start sub_80942C0 -sub_80942C0: - push {r4,r5,lr} - adds r5, r0, 0 - adds r3, r1, 0 - asrs r0, r3, 16 - asrs r1, r2, 16 - subs r0, r1 - lsls r0, 16 - ldr r4, _08094310 - ands r3, r4 - orrs r3, r0 - subs r2, r3, r2 - lsls r2, 16 - lsrs r2, 16 - ldr r1, _08094314 - ands r3, r1 - orrs r3, r2 - cmp r3, 0 - bge _080942FC - subs r0, r3, 0x1 - lsls r0, 16 - lsrs r0, 16 - ands r3, r1 - orrs r3, r0 - asrs r0, r3, 16 - movs r2, 0xFA - lsls r2, 2 - adds r0, r2 - lsls r0, 16 - ands r3, r4 - orrs r3, r0 -_080942FC: - lsls r0, r3, 16 - cmp r0, 0 - bge _08094304 - movs r3, 0 -_08094304: - str r3, [r5] - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08094310: .4byte 0x0000ffff -_08094314: .4byte 0xffff0000 - thumb_func_end sub_80942C0 - - thumb_func_start sub_8094318 -sub_8094318: - push {r4,lr} - adds r4, r0, 0 - adds r3, r1, 0 - lsls r0, r3, 16 - asrs r1, r0, 16 - lsls r0, r2, 16 - asrs r0, 16 - cmp r1, r0 - bgt _08094336 - cmp r1, r0 - blt _0809433A - asrs r1, r3, 16 - asrs r0, r2, 16 - cmp r1, r0 - ble _0809433A -_08094336: - str r2, [r4] - b _0809433C -_0809433A: - str r3, [r4] -_0809433C: - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8094318 - - thumb_func_start sub_8094344 -sub_8094344: - push {r4,lr} - adds r4, r0, 0 - adds r3, r1, 0 - lsls r0, r3, 16 - asrs r1, r0, 16 - lsls r0, r2, 16 - asrs r0, 16 - cmp r1, r0 - bgt _08094362 - cmp r1, r0 - blt _08094366 - asrs r1, r3, 16 - asrs r0, r2, 16 - cmp r1, r0 - ble _08094366 -_08094362: - str r3, [r4] - b _08094368 -_08094366: - str r2, [r4] -_08094368: - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8094344 - - thumb_func_start sub_8094370 -sub_8094370: - push {r4,r5,lr} - adds r5, r0, 0 - lsls r1, 16 - lsls r2, 16 - ldr r4, _08094398 - lsrs r3, r1, 16 - orrs r3, r2 - asrs r2, 16 - ldr r1, _0809439C - asrs r0, r1, 16 - cmp r2, r0 - ble _0809438C - ands r3, r4 - orrs r3, r1 -_0809438C: - str r3, [r5] - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08094398: .4byte 0x0000ffff -_0809439C: .4byte 0x03e70000 - thumb_func_end sub_8094370 - - thumb_func_start sub_80943A0 -sub_80943A0: - lsls r1, 16 - lsrs r2, r1, 16 - str r2, [r0] - bx lr - thumb_func_end sub_80943A0 - - thumb_func_start sub_80943A8 -sub_80943A8: - push {r4,r5,lr} - ldr r3, [r1, 0x4] - lsrs r2, r3, 16 - ldr r1, _080943D4 - ands r5, r1 - orrs r5, r2 - ldr r4, _080943D8 - adds r2, r4, 0 - ands r2, r3 - lsls r1, r2, 5 - subs r1, r2 - lsls r1, 2 - adds r1, r2 - lsls r1, 3 - lsrs r1, 16 - lsls r1, 16 - ands r5, r4 - orrs r5, r1 - str r5, [r0] - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080943D4: .4byte 0xffff0000 -_080943D8: .4byte 0x0000ffff - thumb_func_end sub_80943A8 - - thumb_func_start sub_80943DC -sub_80943DC: - push {r4-r6,lr} - mov r6, r8 - push {r6} - mov r8, r0 - adds r4, r1, 0 - lsls r1, r4, 16 - asrs r1, 16 - lsls r0, r1, 5 - subs r0, r1 - lsls r0, 2 - adds r0, r1 - lsls r0, 3 - asrs r1, r4, 16 - adds r0, r1 - lsls r3, r2, 16 - asrs r3, 16 - lsls r1, r3, 5 - subs r1, r3 - lsls r1, 2 - adds r1, r3 - lsls r1, 3 - asrs r2, 16 - adds r1, r2 - muls r0, r1 - movs r5, 0xFA - lsls r5, 2 - adds r1, r5, 0 - bl __divsi3 - adds r6, r0, 0 - adds r1, r5, 0 - bl __divsi3 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _08094448 - ands r4, r1 - orrs r4, r0 - adds r0, r6, 0 - adds r1, r5, 0 - bl __modsi3 - lsls r0, 16 - ldr r1, _0809444C - ands r1, r4 - orrs r0, r1 - mov r1, r8 - str r0, [r1] - mov r0, r8 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08094448: .4byte 0xffff0000 -_0809444C: .4byte 0x0000ffff - thumb_func_end sub_80943DC - - thumb_func_start sub_8094450 -sub_8094450: - push {lr} - adds r1, r0, 0 - lsls r0, r1, 16 - asrs r2, r0, 16 - cmp r2, 0 - bne _0809446A - asrs r0, r1, 16 - cmp r0, 0 - bne _08094466 - movs r0, 0 - b _08094476 -_08094466: - movs r0, 0x1 - b _08094476 -_0809446A: - asrs r0, r1, 16 - cmp r0, 0 - bne _08094474 - adds r0, r2, 0 - b _08094476 -_08094474: - adds r0, r2, 0x1 -_08094476: - pop {r1} - bx r1 - thumb_func_end sub_8094450 - - thumb_func_start sub_809447C -sub_809447C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x10 - bl sub_8094924 - adds r4, 0x2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x10 - bl sub_8094924 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_809447C - - thumb_func_start sub_809449C -sub_809449C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x10 - bl sub_809488C - adds r4, 0x2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x10 - bl sub_809488C - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_809449C - - thumb_func_start sub_80944BC -sub_80944BC: - push {r4,lr} - sub sp, 0x8 - adds r4, r1, 0 - lsls r0, 16 - asrs r1, r0, 16 - ldr r0, _080944F4 - cmp r1, r0 - bgt _08094500 - lsls r1, 16 - lsrs r1, 16 - mov r0, sp - bl sub_8092AA8 - ldr r0, _080944F8 - mov r1, sp - movs r2, 0 - bl sub_80928C0 - ldr r0, _080944FC - ldr r0, [r0] - adds r2, r4, 0 - adds r2, 0xC8 - adds r1, r4, 0 - movs r3, 0 - bl xxx_format_string - b _08094516 - .align 2, 0 -_080944F4: .4byte 0x000001f3 -_080944F8: .4byte gUnknown_202DE58 -_080944FC: .4byte gUnknown_811383C -_08094500: - ldr r0, _08094520 - ldr r2, _08094524 - adds r1, r2 - lsls r1, 3 - adds r0, 0x4 - adds r1, r0 - ldr r1, [r1] - adds r0, r4, 0 - movs r2, 0xC8 - bl strncpy -_08094516: - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08094520: .4byte gUnknown_8113080 -_08094524: .4byte 0xfffffe0c - thumb_func_end sub_80944BC - - thumb_func_start sub_8094528 -sub_8094528: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - ldr r0, _08094544 - cmp r1, r0 - ble _08094550 - ldr r0, _08094548 - ldr r2, _0809454C - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldrb r0, [r1] - b _08094552 - .align 2, 0 -_08094544: .4byte 0x000001f3 -_08094548: .4byte gUnknown_8113080 -_0809454C: .4byte 0xfffffe0c -_08094550: - movs r0, 0x1 -_08094552: - pop {r1} - bx r1 - thumb_func_end sub_8094528 - - thumb_func_start sub_8094558 -sub_8094558: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xCC - adds r7, r0, 0 - adds r4, r1, 0 - adds r6, r2, 0 - bl sub_80073B8 - movs r5, 0 - str r5, [sp] - movs r0, 0x10 - movs r1, 0 - adds r2, r4, 0 - adds r3, r7, 0 - bl sub_8014FF0 - ldr r4, _080945D0 - adds r1, r6, 0 - adds r1, 0x18 - adds r0, r4, 0 - bl sub_8090208 - ldr r0, _080945D4 - ldr r2, [r0] - str r5, [sp] - movs r0, 0x4 - movs r1, 0x10 - adds r3, r7, 0 - bl sub_8014FF0 - movs r5, 0x1A - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0xA - bl sub_80922B4 - adds r4, 0x50 - adds r1, r6, 0 - adds r1, 0xA - adds r0, r4, 0 - movs r2, 0xA - bl sub_80922B4 - movs r1, 0x14 - ldrsh r0, [r6, r1] - bl sub_8094528 - lsls r0, 24 - cmp r0, 0 - beq _080945DC - ldr r0, _080945D8 - ldr r0, [r0] - add r2, sp, 0xCC - add r1, sp, 0x4 - movs r3, 0 - bl xxx_format_string - b _080945EA - .align 2, 0 -_080945D0: .4byte gUnknown_202DF98 -_080945D4: .4byte gUnknown_8113850 -_080945D8: .4byte gUnknown_8113868 -_080945DC: - ldr r0, _0809465C - ldr r0, [r0] - add r2, sp, 0xCC - add r1, sp, 0x4 - movs r3, 0 - bl xxx_format_string -_080945EA: - add r0, sp, 0x4 - bl sub_8008ED0 - movs r4, 0xB0 - subs r0, r4, r0 - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - movs r1, 0 - mov r8, r1 - str r1, [sp] - adds r1, r5, 0 - add r2, sp, 0x4 - adds r3, r7, 0 - bl sub_8014FF0 - adds r5, 0xA - movs r1, 0x14 - ldrsh r0, [r6, r1] - add r1, sp, 0x4 - bl sub_80944BC - add r0, sp, 0x4 - bl sub_8008ED0 - subs r4, r0 - lsrs r0, r4, 31 - adds r4, r0 - asrs r0, r4, 1 - mov r1, r8 - str r1, [sp] - adds r1, r5, 0 - add r2, sp, 0x4 - adds r3, r7, 0 - bl sub_8014FF0 - adds r5, 0x10 - ldr r1, _08094660 - ldr r0, [r6, 0x20] - str r0, [r1] - adds r0, r6, 0 - adds r0, 0x2A - ldrb r0, [r0] - str r0, [r1, 0x4] - cmp r0, 0x63 - ble _08094668 - ldr r0, _08094664 - ldr r2, [r0] - mov r0, r8 - str r0, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 - b _0809467A - .align 2, 0 -_0809465C: .4byte gUnknown_8113870 -_08094660: .4byte gUnknown_202DE30 -_08094664: .4byte gUnknown_81138C0 -_08094668: - ldr r0, _080946CC - ldr r2, [r0] - mov r1, r8 - str r1, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 -_0809467A: - adds r5, 0xA - ldr r4, _080946D0 - movs r1, 0x24 - ldrsh r0, [r6, r1] - str r0, [r4] - ldr r0, _080946D4 - ldr r2, [r0] - movs r0, 0 - mov r8, r0 - str r0, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 - adds r5, 0xA - adds r0, r6, 0 - adds r0, 0x26 - ldrb r2, [r0] - str r2, [r4] - adds r0, 0x2 - ldrb r0, [r0] - str r0, [r4, 0x4] - adds r0, r6, 0 - adds r0, 0x2B - ldrb r1, [r0] - cmp r1, 0 - beq _080946DC - adds r0, r1, 0 - adds r0, r2, r0 - str r0, [r4] - ldr r0, _080946D8 - ldr r2, [r0] - mov r1, r8 - str r1, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 - b _080946EC - .align 2, 0 -_080946CC: .4byte gUnknown_8113898 -_080946D0: .4byte gUnknown_202DE30 -_080946D4: .4byte gUnknown_81138D0 -_080946D8: .4byte gUnknown_8113950 -_080946DC: - ldr r0, _08094714 - ldr r2, [r0] - str r1, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 -_080946EC: - adds r0, r6, 0 - adds r0, 0x2D - ldrb r1, [r0] - cmp r1, 0 - beq _08094720 - ldr r2, _08094718 - ldr r0, [r2, 0x4] - adds r0, r1 - str r0, [r2, 0x4] - ldr r0, _0809471C - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 - b _08094730 - .align 2, 0 -_08094714: .4byte gUnknown_81138E4 -_08094718: .4byte gUnknown_202DE30 -_0809471C: .4byte gUnknown_8113974 -_08094720: - ldr r0, _08094768 - ldr r2, [r0] - str r1, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 -_08094730: - adds r5, 0xA - ldr r2, _0809476C - adds r0, r6, 0 - adds r0, 0x27 - ldrb r3, [r0] - str r3, [r2] - adds r0, 0x2 - ldrb r0, [r0] - str r0, [r2, 0x4] - adds r0, r6, 0 - adds r0, 0x2C - ldrb r1, [r0] - cmp r1, 0 - beq _08094774 - adds r0, r1, 0 - adds r0, r3, r0 - str r0, [r2] - ldr r0, _08094770 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 - b _08094784 - .align 2, 0 -_08094768: .4byte gUnknown_8113900 -_0809476C: .4byte gUnknown_202DE30 -_08094770: .4byte gUnknown_8113990 -_08094774: - ldr r0, _080947AC - ldr r2, [r0] - str r1, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 -_08094784: - adds r0, r6, 0 - adds r0, 0x2E - ldrb r1, [r0] - cmp r1, 0 - beq _080947B8 - ldr r2, _080947B0 - ldr r0, [r2, 0x4] - adds r0, r1 - str r0, [r2, 0x4] - ldr r0, _080947B4 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 - b _080947C8 - .align 2, 0 -_080947AC: .4byte gUnknown_8113918 -_080947B0: .4byte gUnknown_202DE30 -_080947B4: .4byte gUnknown_81139B4 -_080947B8: - ldr r0, _080947E4 - ldr r2, [r0] - str r1, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 -_080947C8: - adds r5, 0x10 - adds r2, r6, 0 - adds r2, 0x1C - ldrb r1, [r6, 0x1C] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080947EC - ldr r0, _080947E8 - adds r1, r2, 0 - movs r2, 0 - bl sub_8090E14 - b _080947F6 - .align 2, 0 -_080947E4: .4byte gUnknown_8113934 -_080947E8: .4byte gUnknown_202DE58 -_080947EC: - ldr r0, _0809481C - ldr r1, _08094820 - ldr r1, [r1] - bl strcpy -_080947F6: - ldr r0, _08094824 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r7, 0 - bl sub_8014FF0 - adds r0, r7, 0 - bl sub_80073E0 - add sp, 0xCC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809481C: .4byte gUnknown_202DE58 -_08094820: .4byte gUnknown_81139B8 -_08094824: .4byte gUnknown_81139CC - thumb_func_end sub_8094558 - - thumb_func_start sub_8094828 -sub_8094828: - push {lr} - lsls r0, 16 - lsrs r2, r0, 16 - lsls r1, 24 - lsrs r0, r1, 24 - cmp r0, 0 - beq _08094852 - bl sub_8090BD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x9 - bne _0809484C - ldr r0, _08094848 - b _08094856 - .align 2, 0 -_08094848: .4byte 0x00000223 -_0809484C: - movs r0, 0x89 - lsls r0, 2 - b _08094856 -_08094852: - lsls r0, r2, 16 - asrs r0, 16 -_08094856: - pop {r1} - bx r1 - thumb_func_end sub_8094828 - - thumb_func_start sub_809485C -sub_809485C: - str r1, [r0] - movs r3, 0 - str r3, [r0, 0x8] - str r3, [r0, 0xC] - adds r1, r2 - str r1, [r0, 0x4] - bx lr - thumb_func_end sub_809485C - - thumb_func_start sub_809486C -sub_809486C: - push {lr} - str r1, [r0] - movs r3, 0 - str r3, [r0, 0x8] - str r3, [r0, 0xC] - adds r3, r1, r2 - str r3, [r0, 0x4] - adds r0, r1, 0 - adds r1, r2, 0 - bl MemoryClear8 - pop {r0} - bx r0 - thumb_func_end sub_809486C - - thumb_func_start nullsub_102 -nullsub_102: - bx lr - thumb_func_end nullsub_102 - - thumb_func_start sub_809488C -sub_809488C: - push {r4-r7,lr} - adds r3, r0, 0 - adds r4, r2, 0 - movs r5, 0 - adds r6, r1, 0 - cmp r4, 0 - beq _080948DE - movs r7, 0x1 -_0809489C: - ldrb r0, [r6] - asrs r0, r5 - ands r0, r7 - cmp r0, 0 - beq _080948B4 - ldr r2, [r3] - ldr r1, [r3, 0x8] - adds r0, r7, 0 - lsls r0, r1 - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] -_080948B4: - adds r5, 0x1 - cmp r5, 0x8 - bne _080948BE - adds r6, 0x1 - movs r5, 0 -_080948BE: - ldr r0, [r3, 0x8] - adds r0, 0x1 - str r0, [r3, 0x8] - cmp r0, 0x8 - bne _080948D2 - ldr r0, [r3] - adds r0, 0x1 - str r0, [r3] - movs r0, 0 - str r0, [r3, 0x8] -_080948D2: - ldr r0, [r3, 0xC] - adds r0, 0x1 - str r0, [r3, 0xC] - subs r4, 0x1 - cmp r4, 0 - bne _0809489C -_080948DE: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_809488C - - thumb_func_start sub_80948E4 -sub_80948E4: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r2, 0 - adds r6, r1, 0 - cmp r5, 0 - beq _0809491C -_080948F0: - ldrb r1, [r6] - ldr r0, [r4, 0x8] - lsls r1, r0 - ldr r3, [r4] - ldrb r2, [r3] - adds r0, r1, 0 - orrs r0, r2 - strb r0, [r3] - ldr r2, [r4] - adds r0, r2, 0x1 - str r0, [r4] - asrs r1, 8 - ldrb r0, [r2, 0x1] - orrs r1, r0 - strb r1, [r2, 0x1] - adds r6, 0x1 - ldr r0, [r4, 0xC] - adds r0, 0x8 - str r0, [r4, 0xC] - subs r5, 0x1 - cmp r5, 0 - bne _080948F0 -_0809491C: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80948E4 - - thumb_func_start sub_8094924 -sub_8094924: - push {r4-r7,lr} - adds r3, r0, 0 - adds r5, r2, 0 - movs r6, 0 - adds r2, r1, 0 - cmp r5, 0 - beq _08094978 -_08094932: - cmp r6, 0 - bne _08094938 - strb r6, [r2] -_08094938: - ldr r7, [r3] - ldrb r0, [r7] - ldr r4, [r3, 0x8] - asrs r0, r4 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08094952 - adds r0, r1, 0 - lsls r0, r6 - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] -_08094952: - adds r6, 0x1 - cmp r6, 0x8 - bne _0809495C - adds r2, 0x1 - movs r6, 0 -_0809495C: - adds r0, r4, 0x1 - str r0, [r3, 0x8] - cmp r0, 0x8 - bne _0809496C - adds r0, r7, 0x1 - str r0, [r3] - movs r0, 0 - str r0, [r3, 0x8] -_0809496C: - ldr r0, [r3, 0xC] - adds r0, 0x1 - str r0, [r3, 0xC] - subs r5, 0x1 - cmp r5, 0 - bne _08094932 -_08094978: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8094924 - - thumb_func_start sub_8094980 -sub_8094980: - ldr r1, _08094988 - ldr r0, _0809498C - str r0, [r1] - bx lr - .align 2, 0 -_08094988: .4byte gUnknown_203B46C -_0809498C: .4byte gUnknown_2038C70 - thumb_func_end sub_8094980 - - thumb_func_start sub_8094990 -sub_8094990: - ldr r0, _08094994 - bx lr - .align 2, 0 -_08094994: .4byte gUnknown_2038C70 - thumb_func_end sub_8094990 - - thumb_func_start sub_8094998 -sub_8094998: - push {lr} - lsls r0, 24 - ldr r2, _080949D8 - ldr r1, [r2] - movs r3, 0 - strb r3, [r1, 0x8] - cmp r0, 0 - beq _080949AC - ldr r0, [r2] - strb r3, [r0, 0xB] -_080949AC: - ldr r0, [r2] - strb r3, [r0, 0x9] - ldr r0, [r2] - strb r3, [r0, 0xA] - ldr r0, [r2] - strb r3, [r0] - ldr r0, [r2] - movs r1, 0x1 - strb r1, [r0, 0x1] - ldr r0, [r2] - strb r1, [r0, 0x2] - ldr r0, [r2] - strb r1, [r0, 0x3] - ldr r0, [r2] - strb r1, [r0, 0x4] - ldr r0, [r2] - strb r3, [r0, 0xC] - bl sub_8094C14 - pop {r0} - bx r0 - .align 2, 0 -_080949D8: .4byte gUnknown_203B46C - thumb_func_end sub_8094998 - - thumb_func_start sub_80949DC -sub_80949DC: - push {lr} - adds r2, r0, 0 - ldr r0, _08094A38 - ldr r1, [r0] - ldrb r0, [r1, 0x8] - ldrb r3, [r2, 0x8] - cmp r0, r3 - bne _08094A3C - ldrb r0, [r1, 0x9] - ldrb r3, [r2, 0x9] - cmp r0, r3 - bne _08094A3C - ldrb r0, [r1, 0xA] - ldrb r3, [r2, 0xA] - cmp r0, r3 - bne _08094A3C - ldrb r0, [r1, 0xB] - ldrb r3, [r2, 0xB] - cmp r0, r3 - bne _08094A3C - ldrb r0, [r1] - ldrb r3, [r2] - cmp r0, r3 - bne _08094A3C - ldrb r0, [r1, 0x1] - ldrb r3, [r2, 0x1] - cmp r0, r3 - bne _08094A3C - ldrb r0, [r1, 0x2] - ldrb r3, [r2, 0x2] - cmp r0, r3 - bne _08094A3C - ldrb r0, [r1, 0x3] - ldrb r3, [r2, 0x3] - cmp r0, r3 - bne _08094A3C - ldrb r0, [r1, 0x4] - ldrb r3, [r2, 0x4] - cmp r0, r3 - bne _08094A3C - ldrb r0, [r1, 0xC] - ldrb r2, [r2, 0xC] - cmp r0, r2 - bne _08094A3C - movs r0, 0x1 - b _08094A3E - .align 2, 0 -_08094A38: .4byte gUnknown_203B46C -_08094A3C: - movs r0, 0 -_08094A3E: - pop {r1} - bx r1 - thumb_func_end sub_80949DC - - thumb_func_start sub_8094A44 -sub_8094A44: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - movs r1, 0xFF - mov r0, sp - strb r1, [r0] - mov r7, sp - adds r7, 0x1 - movs r0, 0 - strb r0, [r7] - ldr r5, _08094B14 - ldr r1, [r5] - adds r1, 0x8 - adds r0, r4, 0 - movs r2, 0x2 - bl sub_809488C - ldr r0, [r5] - ldrb r0, [r0, 0x9] - mov r1, sp - adds r6, r7, 0 - cmp r0, 0 - bne _08094A74 - adds r1, r6, 0 -_08094A74: - adds r0, r4, 0 - movs r2, 0x1 - bl sub_809488C - ldr r0, [r5] - ldrb r0, [r0, 0xA] - adds r1, r6, 0 - cmp r0, 0 - beq _08094A88 - mov r1, sp -_08094A88: - adds r0, r4, 0 - movs r2, 0x1 - bl sub_809488C - ldr r0, [r5] - ldrb r0, [r0, 0xB] - adds r1, r6, 0 - cmp r0, 0 - beq _08094A9C - mov r1, sp -_08094A9C: - adds r0, r4, 0 - movs r2, 0x1 - bl sub_809488C - ldr r0, [r5] - ldrb r0, [r0] - adds r1, r6, 0 - cmp r0, 0 - beq _08094AB0 - mov r1, sp -_08094AB0: - adds r0, r4, 0 - movs r2, 0x1 - bl sub_809488C - ldr r0, [r5] - ldrb r0, [r0, 0x1] - adds r1, r6, 0 - cmp r0, 0 - beq _08094AC4 - mov r1, sp -_08094AC4: - adds r0, r4, 0 - movs r2, 0x1 - bl sub_809488C - ldr r0, [r5] - ldrb r0, [r0, 0x2] - adds r1, r6, 0 - cmp r0, 0 - beq _08094AD8 - mov r1, sp -_08094AD8: - adds r0, r4, 0 - movs r2, 0x1 - bl sub_809488C - ldr r0, [r5] - ldrb r0, [r0, 0x3] - adds r1, r7, 0 - cmp r0, 0 - beq _08094AEC - mov r1, sp -_08094AEC: - adds r0, r4, 0 - movs r2, 0x1 - bl sub_809488C - ldr r1, [r5] - adds r1, 0x4 - adds r0, r4, 0 - movs r2, 0x3 - bl sub_809488C - ldr r1, [r5] - adds r1, 0xC - adds r0, r4, 0 - movs r2, 0x2 - bl sub_809488C - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08094B14: .4byte gUnknown_203B46C - thumb_func_end sub_8094A44 - - thumb_func_start sub_8094B18 -sub_8094B18: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - adds r6, r0, 0 - mov r1, sp - movs r2, 0x2 - bl sub_8094924 - ldr r5, _08094C10 - ldr r2, [r5] - mov r0, sp - ldrb r1, [r0] - movs r0, 0x3 - mov r8, r0 - ands r0, r1 - strb r0, [r2, 0x8] - adds r0, r6, 0 - mov r1, sp - movs r2, 0x1 - bl sub_8094924 - ldr r2, [r5] - mov r0, sp - ldrb r1, [r0] - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r1 - strb r0, [r2, 0x9] - adds r0, r6, 0 - mov r1, sp - movs r2, 0x1 - bl sub_8094924 - ldr r2, [r5] - mov r0, sp - ldrb r1, [r0] - adds r0, r4, 0 - ands r0, r1 - strb r0, [r2, 0xA] - adds r0, r6, 0 - mov r1, sp - movs r2, 0x1 - bl sub_8094924 - ldr r2, [r5] - mov r0, sp - ldrb r1, [r0] - adds r0, r4, 0 - ands r0, r1 - strb r0, [r2, 0xB] - adds r0, r6, 0 - mov r1, sp - movs r2, 0x1 - bl sub_8094924 - ldr r2, [r5] - mov r0, sp - ldrb r1, [r0] - adds r0, r4, 0 - ands r0, r1 - strb r0, [r2] - adds r0, r6, 0 - mov r1, sp - movs r2, 0x1 - bl sub_8094924 - ldr r2, [r5] - mov r0, sp - ldrb r1, [r0] - adds r0, r4, 0 - ands r0, r1 - strb r0, [r2, 0x1] - adds r0, r6, 0 - mov r1, sp - movs r2, 0x1 - bl sub_8094924 - ldr r2, [r5] - mov r0, sp - ldrb r1, [r0] - adds r0, r4, 0 - ands r0, r1 - strb r0, [r2, 0x2] - adds r0, r6, 0 - mov r1, sp - movs r2, 0x1 - bl sub_8094924 - ldr r1, [r5] - mov r0, sp - ldrb r0, [r0] - ands r4, r0 - strb r4, [r1, 0x3] - adds r0, r6, 0 - mov r1, sp - movs r2, 0x3 - bl sub_8094924 - ldr r2, [r5] - mov r0, sp - ldrb r1, [r0] - movs r0, 0x7 - ands r0, r1 - strb r0, [r2, 0x4] - adds r0, r6, 0 - mov r1, sp - movs r2, 0x2 - bl sub_8094924 - ldr r1, [r5] - mov r0, sp - ldrb r0, [r0] - mov r2, r8 - ands r2, r0 - strb r2, [r1, 0xC] - bl sub_8094C14 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08094C10: .4byte gUnknown_203B46C - thumb_func_end sub_8094B18 - - thumb_func_start sub_8094C14 -sub_8094C14: - push {r4,lr} - sub sp, 0x10 - mov r1, sp - ldr r0, _08094C40 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r0] - str r0, [r1] - ldr r0, _08094C44 - ldr r0, [r0] - ldrb r1, [r0, 0x8] - movs r0, 0x3 - ands r0, r1 - lsls r0, 2 - add r0, sp - ldr r0, [r0] - bl sub_80099F0 - add sp, 0x10 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08094C40: .4byte gUnknown_8109954 -_08094C44: .4byte gUnknown_203B46C - thumb_func_end sub_8094C14 - - thumb_func_start sub_8094C48 -sub_8094C48: - push {lr} - ldr r0, _08094C5C - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08094C60 - cmp r0, 0x3 - beq _08094C60 - movs r0, 0x1 - b _08094C62 - .align 2, 0 -_08094C5C: .4byte gUnknown_203B46C -_08094C60: - movs r0, 0 -_08094C62: - pop {r1} - bx r1 - thumb_func_end sub_8094C48 - - thumb_func_start sub_8094C68 -sub_8094C68: - push {lr} - ldr r0, _08094C7C - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0x2 - beq _08094C80 - cmp r0, 0x5 - beq _08094C80 - movs r0, 0x1 - b _08094C82 - .align 2, 0 -_08094C7C: .4byte gUnknown_203B46C -_08094C80: - movs r0, 0 -_08094C82: - pop {r1} - bx r1 - thumb_func_end sub_8094C68 - - thumb_func_start sub_8094C88 -sub_8094C88: - push {lr} - ldr r0, _08094C98 - ldr r1, [r0] - ldrb r0, [r1, 0x4] - cmp r0, 0x2 - bhi _08094C9C - movs r0, 0x1 - b _08094CA8 - .align 2, 0 -_08094C98: .4byte gUnknown_203B46C -_08094C9C: - subs r0, 0x3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bhi _08094CAA - movs r0, 0x4 -_08094CA8: - strb r0, [r1, 0x4] -_08094CAA: - pop {r0} - bx r0 - thumb_func_end sub_8094C88 - - thumb_func_start sub_8094CB0 -sub_8094CB0: - ldr r1, _08094CBC - strh r1, [r0] - movs r1, 0x1 - negs r1, r1 - strh r1, [r0, 0x2] - bx lr - .align 2, 0 -_08094CBC: .4byte 0x0000ffff - thumb_func_end sub_8094CB0 - - thumb_func_start sub_8094CC0 -sub_8094CC0: - ldr r1, _08094CCC - strh r1, [r0] - movs r1, 0x1 - negs r1, r1 - strh r1, [r0, 0x2] - bx lr - .align 2, 0 -_08094CCC: .4byte 0x0000ffff - thumb_func_end sub_8094CC0 - - thumb_func_start sub_8094CD0 -sub_8094CD0: - ldr r1, _08094CDC - strh r1, [r0] - movs r1, 0x1 - negs r1, r1 - strh r1, [r0, 0x2] - bx lr - .align 2, 0 -_08094CDC: .4byte 0x0000ffff - thumb_func_end sub_8094CD0 - - thumb_func_start sub_8094CE0 -sub_8094CE0: - ldr r1, _08094CEC - strh r1, [r0] - movs r1, 0x1 - negs r1, r1 - strh r1, [r0, 0x2] - bx lr - .align 2, 0 -_08094CEC: .4byte 0x0000ffff - thumb_func_end sub_8094CE0 - - thumb_func_start sub_8094CF0 -sub_8094CF0: - ldr r1, _08094CFC - strh r1, [r0] - movs r1, 0x1 - negs r1, r1 - strh r1, [r0, 0x2] - bx lr - .align 2, 0 -_08094CFC: .4byte 0x0000ffff - thumb_func_end sub_8094CF0 - - thumb_func_start sub_8094D00 -sub_8094D00: - ldr r1, _08094D0C - strh r1, [r0] - movs r1, 0x1 - negs r1, r1 - strh r1, [r0, 0x2] - bx lr - .align 2, 0 -_08094D0C: .4byte 0x0000ffff - thumb_func_end sub_8094D00 - - thumb_func_start sub_8094D10 -sub_8094D10: - movs r0, 0 - bx lr - thumb_func_end sub_8094D10 - - thumb_func_start sub_8094D14 -sub_8094D14: - movs r0, 0 - bx lr - thumb_func_end sub_8094D14 - - thumb_func_start sub_8094D18 -sub_8094D18: - movs r0, 0 - bx lr - thumb_func_end sub_8094D18 - - thumb_func_start sub_8094D1C -sub_8094D1C: - movs r0, 0 - bx lr - thumb_func_end sub_8094D1C - - thumb_func_start sub_8094D20 -sub_8094D20: - movs r0, 0 - bx lr - thumb_func_end sub_8094D20 - - thumb_func_start sub_8094D24 -sub_8094D24: - movs r0, 0 - bx lr - thumb_func_end sub_8094D24 - - thumb_func_start sub_8094D28 -sub_8094D28: - push {r4-r7,lr} - ldr r2, _08094D64 - str r0, [r2] - ldr r1, _08094D68 - movs r0, 0x1 - str r0, [r1] - ldr r7, _08094D6C - adds r5, r2, 0 - adds r4, r1, 0 - ldr r6, _08094D70 -_08094D3C: - ldr r2, [r4] - lsls r3, r2, 2 - adds r3, r5 - subs r0, r2, 0x1 - lsls r0, 2 - adds r0, r5 - ldr r0, [r0] - lsrs r1, r0, 30 - eors r0, r1 - muls r0, r6 - adds r0, r2 - str r0, [r3] - adds r2, 0x1 - str r2, [r4] - cmp r2, r7 - ble _08094D3C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08094D64: .4byte gUnknown_3001198 -_08094D68: .4byte gUnknown_203B470 -_08094D6C: .4byte 0x0000026f -_08094D70: .4byte 0x6c078965 - thumb_func_end sub_8094D28 - - thumb_func_start sub_8094D74 -sub_8094D74: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r8, r0 - adds r7, r1, 0 - ldr r0, _08094E34 - bl sub_8094D28 - movs r4, 0x1 - movs r5, 0 - adds r3, r7, 0 - movs r0, 0x9C - lsls r0, 2 - cmp r3, r0 - bge _08094D96 - adds r3, r0, 0 -_08094D96: - ldr r6, _08094E38 - cmp r3, 0 - beq _08094DE2 - mov r9, r6 - ldr r0, _08094E3C - adds r0, r6 - mov r12, r0 - adds r2, r6, 0 -_08094DA6: - ldr r1, [r2] - lsrs r0, r1, 30 - eors r1, r0 - ldr r0, _08094E40 - muls r0, r1 - ldr r1, [r2, 0x4] - eors r1, r0 - lsls r0, r5, 2 - add r0, r8 - ldr r0, [r0] - adds r1, r0 - adds r1, r5 - str r1, [r2, 0x4] - adds r2, 0x4 - adds r4, 0x1 - adds r5, 0x1 - ldr r0, _08094E44 - cmp r4, r0 - ble _08094DD6 - mov r1, r12 - ldr r0, [r1] - str r0, [r6] - mov r2, r9 - movs r4, 0x1 -_08094DD6: - cmp r5, r7 - blt _08094DDC - movs r5, 0 -_08094DDC: - subs r3, 0x1 - cmp r3, 0 - bne _08094DA6 -_08094DE2: - ldr r3, _08094E44 - ldr r5, _08094E38 - ldr r0, _08094E3C - adds r0, r5 - mov r8, r0 - lsls r0, r4, 2 - subs r0, 0x4 - adds r2, r0, r5 - ldr r1, _08094E48 - mov r12, r1 - adds r7, r3, 0 -_08094DF8: - ldr r0, [r2] - lsrs r1, r0, 30 - eors r0, r1 - mov r1, r12 - muls r1, r0 - ldr r0, [r2, 0x4] - eors r0, r1 - subs r0, r4 - str r0, [r2, 0x4] - adds r2, 0x4 - adds r4, 0x1 - cmp r4, r7 - ble _08094E1C - mov r1, r8 - ldr r0, [r1] - str r0, [r6] - adds r2, r5, 0 - movs r4, 0x1 -_08094E1C: - subs r3, 0x1 - cmp r3, 0 - bne _08094DF8 - movs r0, 0x80 - lsls r0, 24 - str r0, [r6] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08094E34: .4byte 0x012bd6aa -_08094E38: .4byte gUnknown_3001198 -_08094E3C: .4byte 0x000009bc -_08094E40: .4byte 0x0019660d -_08094E44: .4byte 0x0000026f -_08094E48: .4byte 0x5d588b65 - thumb_func_end sub_8094D74 - - thumb_func_start sub_8094E4C -sub_8094E4C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r0, _08094F54 - ldr r2, [r0] - ldr r1, _08094F58 - mov r8, r0 - cmp r2, r1 - ble _08094F1C - ldr r0, _08094F5C - cmp r2, r0 - bne _08094E6C - ldr r0, _08094F60 - bl sub_8094D28 -_08094E6C: - movs r3, 0 - ldr r0, _08094F64 - mov r9, r0 - ldr r7, _08094F68 - mov r12, r9 - adds r5, r7, 0 -_08094E78: - ldr r4, [r5] - movs r6, 0x80 - lsls r6, 24 - ands r4, r6 - ldr r0, [r5, 0x4] - ldr r1, _08094F6C - ands r0, r1 - orrs r4, r0 - ldr r1, _08094F70 - adds r0, r3, r1 - lsls r0, 2 - adds r0, r7 - lsrs r2, r4, 1 - ldr r1, [r0] - eors r1, r2 - movs r0, 0x1 - ands r4, r0 - lsls r0, r4, 2 - add r0, r12 - ldr r0, [r0] - eors r1, r0 - stm r5!, {r1} - adds r3, 0x1 - cmp r3, 0xE2 - ble _08094E78 - ldr r5, _08094F74 - cmp r3, r5 - bgt _08094EE6 - ldr r1, _08094F68 - ldr r4, _08094F64 - mov r12, r4 - lsls r0, r3, 2 - adds r2, r0, r1 - ldr r4, _08094F78 - adds r0, r4 - adds r7, r0, r1 -_08094EC0: - ldr r4, [r2] - ands r4, r6 - ldr r0, [r2, 0x4] - ldr r1, _08094F6C - ands r0, r1 - orrs r4, r0 - lsrs r0, r4, 1 - ldm r7!, {r1} - eors r1, r0 - movs r0, 0x1 - ands r4, r0 - lsls r0, r4, 2 - add r0, r12 - ldr r0, [r0] - eors r1, r0 - stm r2!, {r1} - adds r3, 0x1 - cmp r3, r5 - ble _08094EC0 -_08094EE6: - ldr r2, _08094F68 - ldr r0, _08094F7C - adds r3, r2, r0 - ldr r4, [r3] - movs r0, 0x80 - lsls r0, 24 - ands r4, r0 - ldr r0, [r2] - ldr r1, _08094F6C - ands r0, r1 - orrs r4, r0 - movs r1, 0xC6 - lsls r1, 3 - adds r2, r1 - lsrs r0, r4, 1 - ldr r1, [r2] - eors r1, r0 - movs r0, 0x1 - ands r4, r0 - lsls r0, r4, 2 - add r0, r9 - ldr r0, [r0] - eors r1, r0 - str r1, [r3] - movs r0, 0 - mov r4, r8 - str r0, [r4] -_08094F1C: - ldr r2, _08094F68 - mov r0, r8 - ldr r1, [r0] - lsls r0, r1, 2 - adds r0, r2 - ldr r4, [r0] - adds r1, 0x1 - mov r0, r8 - str r1, [r0] - lsrs r0, r4, 11 - eors r4, r0 - lsls r0, r4, 7 - ldr r1, _08094F80 - ands r0, r1 - eors r4, r0 - lsls r0, r4, 15 - ldr r1, _08094F84 - ands r0, r1 - eors r4, r0 - lsrs r0, r4, 18 - eors r4, r0 - adds r0, r4, 0 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08094F54: .4byte gUnknown_203B470 -_08094F58: .4byte 0x0000026f -_08094F5C: .4byte 0x00000271 -_08094F60: .4byte 0x00001571 -_08094F64: .4byte gUnknown_203B474 -_08094F68: .4byte gUnknown_3001198 -_08094F6C: .4byte 0x7fffffff -_08094F70: .4byte 0x0000018d -_08094F74: .4byte 0x0000026e -_08094F78: .4byte 0xfffffc74 -_08094F7C: .4byte 0x000009bc -_08094F80: .4byte 0x9d2c5680 -_08094F84: .4byte 0xefc60000 - thumb_func_end sub_8094E4C - - thumb_func_start sub_8094F88 -sub_8094F88: - push {lr} - ldr r1, _08094F98 - ldr r0, _08094F9C - str r0, [r1] - bl sub_8094FA8 - pop {r0} - bx r0 - .align 2, 0 -_08094F98: .4byte gUnknown_203B47C -_08094F9C: .4byte gUnknown_2038C80 - thumb_func_end sub_8094F88 - - thumb_func_start sub_8094FA0 -sub_8094FA0: - ldr r0, _08094FA4 - bx lr - .align 2, 0 -_08094FA4: .4byte gUnknown_2038C80 - thumb_func_end sub_8094FA0 - - thumb_func_start sub_8094FA8 -sub_8094FA8: - movs r1, 0 - strb r1, [r0, 0x4] - strb r1, [r0, 0x3] - strb r1, [r0, 0x2] - strh r1, [r0] - bx lr - thumb_func_end sub_8094FA8 - - thumb_func_start sub_8094FB4 -sub_8094FB4: - push {lr} - adds r2, r0, 0 - ldrb r0, [r2, 0x4] - adds r0, 0x1 - movs r1, 0 - strb r0, [r2, 0x4] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3B - bls _0809500A - strb r1, [r2, 0x4] - ldrb r0, [r2, 0x3] - adds r0, 0x1 - strb r0, [r2, 0x3] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3B - bls _0809500A - strb r1, [r2, 0x3] - ldrb r0, [r2, 0x2] - adds r0, 0x1 - strb r0, [r2, 0x2] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3B - bls _0809500A - strb r1, [r2, 0x2] - ldrh r3, [r2] - movs r0, 0 - ldrsh r1, [r2, r0] - ldr r0, _08094FFC - cmp r1, r0 - bgt _08095000 - adds r0, r3, 0x1 - b _08095008 - .align 2, 0 -_08094FFC: .4byte 0x0000270e -_08095000: - movs r0, 0x3B - strb r0, [r2, 0x3] - strb r0, [r2, 0x2] - ldr r0, _08095010 -_08095008: - strh r0, [r2] -_0809500A: - pop {r0} - bx r0 - .align 2, 0 -_08095010: .4byte 0x0000270f - thumb_func_end sub_8094FB4 - - thumb_func_start sub_8095014 -sub_8095014: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r1, 0 - ldrsh r0, [r4, r1] - ldr r1, _08095030 - cmp r0, r1 - bgt _08095034 - str r0, [r5] - ldrb r0, [r4, 0x2] - str r0, [r2] - ldrb r0, [r4, 0x3] - b _0809503A - .align 2, 0 -_08095030: .4byte 0x0000270f -_08095034: - str r1, [r5] - movs r0, 0x3B - str r0, [r2] -_0809503A: - str r0, [r3] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8095014 - - thumb_func_start sub_8095044 -sub_8095044: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _0809507C - ldr r1, [r4] - adds r1, 0x4 - movs r2, 0x6 - bl sub_809488C - ldr r1, [r4] - adds r1, 0x3 - adds r0, r5, 0 - movs r2, 0x6 - bl sub_809488C - ldr r1, [r4] - adds r1, 0x2 - adds r0, r5, 0 - movs r2, 0x6 - bl sub_809488C - ldr r1, [r4] - adds r0, r5, 0 - movs r2, 0xE - bl sub_809488C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809507C: .4byte gUnknown_203B47C - thumb_func_end sub_8095044 - - thumb_func_start sub_8095080 -sub_8095080: - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _080950B8 - ldr r1, [r4] - adds r1, 0x4 - movs r2, 0x6 - bl sub_8094924 - ldr r1, [r4] - adds r1, 0x3 - adds r0, r5, 0 - movs r2, 0x6 - bl sub_8094924 - ldr r1, [r4] - adds r1, 0x2 - adds r0, r5, 0 - movs r2, 0x6 - bl sub_8094924 - ldr r1, [r4] - adds r0, r5, 0 - movs r2, 0xE - bl sub_8094924 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080950B8: .4byte gUnknown_203B47C - thumb_func_end sub_8095080 - - thumb_func_start sub_80950BC -sub_80950BC: - ldr r1, _080950D8 - ldr r0, _080950DC - str r0, [r1] - ldr r1, _080950E0 - ldr r0, _080950E4 - str r0, [r1] - ldr r1, _080950E8 - ldr r0, _080950EC - str r0, [r1] - ldr r1, _080950F0 - ldr r0, _080950F4 - str r0, [r1] - bx lr - .align 2, 0 -_080950D8: .4byte gUnknown_203B480 -_080950DC: .4byte gUnknown_2038C88 -_080950E0: .4byte gUnknown_203B484 -_080950E4: .4byte gUnknown_2039288 -_080950E8: .4byte gUnknown_203B488 -_080950EC: .4byte gUnknown_20392E8 -_080950F0: .4byte gUnknown_203B48C -_080950F4: .4byte gUnknown_20393C0 - thumb_func_end sub_80950BC - - thumb_func_start sub_80950F8 -sub_80950F8: - ldr r0, _080950FC - bx lr - .align 2, 0 -_080950FC: .4byte gUnknown_2038C88 - thumb_func_end sub_80950F8 - - thumb_func_start sub_8095100 -sub_8095100: - ldr r0, _08095104 - bx lr - .align 2, 0 -_08095104: .4byte gUnknown_2039288 - thumb_func_end sub_8095100 - - thumb_func_start sub_8095108 -sub_8095108: - ldr r0, _0809510C - bx lr - .align 2, 0 -_0809510C: .4byte gUnknown_20392E8 - thumb_func_end sub_8095108 - - thumb_func_start sub_8095110 -sub_8095110: - ldr r0, _08095114 - bx lr - .align 2, 0 -_08095114: .4byte gUnknown_20393C0 - thumb_func_end sub_8095110 - - thumb_func_start sub_8095118 -sub_8095118: - push {r4,lr} - ldr r4, _0809517C - ldr r0, [r4] - movs r2, 0xC0 - lsls r2, 3 - movs r1, 0 - bl MemoryFill8 - ldr r0, _08095180 - ldr r0, [r0] - movs r1, 0 - movs r2, 0x5C - bl MemoryFill8 - movs r2, 0 - movs r1, 0 - movs r3, 0x1F -_0809513A: - ldr r0, [r4] - adds r0, r1 - strb r2, [r0] - ldr r0, [r4] - adds r0, r1 - adds r0, 0x22 - strb r2, [r0] - ldr r0, [r4] - adds r0, r1 - adds r0, 0x2D - strb r2, [r0] - adds r1, 0x30 - subs r3, 0x1 - cmp r3, 0 - bge _0809513A - ldr r2, _08095184 - ldr r1, [r2] - movs r0, 0 - str r0, [r1] - movs r3, 0 - movs r4, 0x1 - negs r4, r4 -_08095166: - ldr r0, [r2] - lsls r1, r3, 2 - adds r0, 0x4 - adds r0, r1 - str r4, [r0] - adds r3, 0x1 - cmp r3, 0x1F - ble _08095166 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809517C: .4byte gUnknown_203B480 -_08095180: .4byte gUnknown_203B484 -_08095184: .4byte gUnknown_203B48C - thumb_func_end sub_8095118 - - thumb_func_start nullsub_206 -nullsub_206: - bx lr - thumb_func_end nullsub_206 - - thumb_func_start nullsub_207 -nullsub_207: - bx lr - thumb_func_end nullsub_207 - - thumb_func_start sub_8095190 -sub_8095190: - push {lr} - movs r2, 0x2 - ldr r0, _080951A8 - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0x60 -_0809519C: - ldrb r0, [r1] - cmp r0, 0 - bne _080951AC - adds r0, r2, 0 - b _080951B8 - .align 2, 0 -_080951A8: .4byte gUnknown_203B480 -_080951AC: - adds r1, 0x30 - adds r2, 0x1 - cmp r2, 0x1F - ble _0809519C - movs r0, 0x1 - negs r0, r0 -_080951B8: - pop {r1} - bx r1 - thumb_func_end sub_8095190 - - thumb_func_start sub_80951BC -sub_80951BC: - push {r4,lr} - adds r4, r0, 0 - bl sub_8095190 - adds r2, r0, 0 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _080951F4 - ldr r0, _080951F0 - ldr r1, [r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 4 - adds r1, r0 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - movs r0, 0x1 - b _080951F6 - .align 2, 0 -_080951F0: .4byte gUnknown_203B480 -_080951F4: - movs r0, 0 -_080951F6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80951BC - - thumb_func_start sub_80951FC -sub_80951FC: - push {r4,r5,lr} - ldr r1, _08095224 - ldr r1, [r1] - adds r1, 0x30 - ldrb r2, [r1] - negs r3, r2 - orrs r3, r2 - lsrs r3, 31 - ldm r0!, {r2,r4,r5} - stm r1!, {r2,r4,r5} - ldm r0!, {r2,r4,r5} - stm r1!, {r2,r4,r5} - ldm r0!, {r2,r4,r5} - stm r1!, {r2,r4,r5} - ldm r0!, {r2,r4,r5} - stm r1!, {r2,r4,r5} - adds r0, r3, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08095224: .4byte gUnknown_203B480 - thumb_func_end sub_80951FC - - thumb_func_start sub_8095228 -sub_8095228: - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0809523C - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r0, r1 - bx lr - .align 2, 0 -_0809523C: .4byte gUnknown_203B480 - thumb_func_end sub_8095228 - - thumb_func_start sub_8095240 -sub_8095240: - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r5, _08095270 - lsls r4, r0, 1 - adds r4, r0 - lsls r4, 4 - ldr r0, [r5] - adds r0, r4 - movs r1, 0 - movs r2, 0x30 - bl MemoryFill8 - ldr r0, [r5] - adds r0, r4 - movs r1, 0 - strb r1, [r0] - ldr r0, [r5] - adds r0, r4 - adds r0, 0x22 - strb r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08095270: .4byte gUnknown_203B480 - thumb_func_end sub_8095240 - - thumb_func_start sub_8095274 -sub_8095274: - push {lr} - ldr r1, _08095294 - ldr r3, [r1] - adds r2, r3, 0 - ldm r2!, {r1} - lsls r1, 2 - adds r2, r1 - str r0, [r2] - ldr r0, [r3] - movs r1, 0 - cmp r0, 0x1E - bgt _0809528E - adds r1, r0, 0x1 -_0809528E: - str r1, [r3] - pop {r0} - bx r0 - .align 2, 0 -_08095294: .4byte gUnknown_203B48C - thumb_func_end sub_8095274 - - thumb_func_start sub_8095298 -sub_8095298: - push {lr} - adds r3, r0, 0 - movs r2, 0 - ldr r0, _080952B0 - ldr r0, [r0] - adds r1, r0, 0x4 -_080952A4: - ldr r0, [r1] - cmp r0, r3 - bne _080952B4 - movs r0, 0x1 - b _080952BE - .align 2, 0 -_080952B0: .4byte gUnknown_203B48C -_080952B4: - adds r1, 0x4 - adds r2, 0x1 - cmp r2, 0x1F - ble _080952A4 - movs r0, 0 -_080952BE: - pop {r1} - bx r1 - thumb_func_end sub_8095298 - - thumb_func_start sub_80952C4 -sub_80952C4: - push {r4,lr} - ldr r2, _080952EC - ldr r1, [r2] - movs r0, 0 - str r0, [r1] - movs r3, 0 - adds r4, r2, 0 - movs r2, 0x1 - negs r2, r2 -_080952D6: - ldr r0, [r4] - lsls r1, r3, 2 - adds r0, 0x4 - adds r0, r1 - str r2, [r0] - adds r3, 0x1 - cmp r3, 0x1F - ble _080952D6 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080952EC: .4byte gUnknown_203B48C - thumb_func_end sub_80952C4 - - thumb_func_start sub_80952F0 -sub_80952F0: - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r1, r0, 24 - movs r3, 0 - ldr r0, _08095310 - ldr r2, [r0] -_080952FE: - ldrb r0, [r2] - cmp r0, r1 - bne _08095314 - ldr r0, [r2, 0x10] - cmp r0, r4 - bne _08095314 - movs r0, 0x1 - b _0809531E - .align 2, 0 -_08095310: .4byte gUnknown_203B480 -_08095314: - adds r2, 0x30 - adds r3, 0x1 - cmp r3, 0x1F - ble _080952FE - movs r0, 0 -_0809531E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80952F0 - - thumb_func_start sub_8095324 -sub_8095324: - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r3, 0 - ldr r0, _0809534C - ldr r1, [r0] - movs r2, 0x1F -_08095332: - ldrb r0, [r1] - cmp r0, r4 - bne _0809533A - adds r3, 0x1 -_0809533A: - adds r1, 0x30 - subs r2, 0x1 - cmp r2, 0 - bge _08095332 - adds r0, r3, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0809534C: .4byte gUnknown_203B480 - thumb_func_end sub_8095324 - - thumb_func_start sub_8095350 -sub_8095350: - push {lr} - movs r3, 0 - ldr r0, _08095370 - ldr r1, [r0] - movs r2, 0x1F -_0809535A: - ldrb r0, [r1] - cmp r0, 0 - beq _08095362 - adds r3, 0x1 -_08095362: - adds r1, 0x30 - subs r2, 0x1 - cmp r2, 0 - bge _0809535A - adds r0, r3, 0 - pop {r1} - bx r1 - .align 2, 0 -_08095370: .4byte gUnknown_203B480 - thumb_func_end sub_8095350 - - thumb_func_start sub_8095374 -sub_8095374: - push {lr} - movs r3, 0x1 - negs r3, r3 - movs r2, 0 - ldr r0, _08095398 - ldr r1, [r0] -_08095380: - ldrb r0, [r1] - cmp r0, 0x1 - bne _08095388 - adds r3, r2, 0 -_08095388: - adds r1, 0x30 - adds r2, 0x1 - cmp r2, 0x1F - ble _08095380 - adds r0, r3, 0 - pop {r1} - bx r1 - .align 2, 0 -_08095398: .4byte gUnknown_203B480 - thumb_func_end sub_8095374 - - thumb_func_start sub_809539C -sub_809539C: - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r1, r0, 24 - movs r3, 0 - ldr r0, _080953BC - ldr r2, [r0] -_080953AA: - ldrb r0, [r2] - cmp r0, r1 - bne _080953C0 - ldr r0, [r2, 0x10] - cmp r0, r4 - bne _080953C0 - adds r0, r3, 0 - b _080953CC - .align 2, 0 -_080953BC: .4byte gUnknown_203B480 -_080953C0: - adds r2, 0x30 - adds r3, 0x1 - cmp r3, 0x1F - ble _080953AA - movs r0, 0x1 - negs r0, r0 -_080953CC: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809539C - - thumb_func_start sub_80953D4 -sub_80953D4: - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - movs r2, 0 - ldr r0, _080953EC - ldr r1, [r0] -_080953E0: - ldrb r0, [r1] - cmp r0, r3 - bne _080953F0 - adds r0, r2, 0 - b _080953FC - .align 2, 0 -_080953EC: .4byte gUnknown_203B480 -_080953F0: - adds r1, 0x30 - adds r2, 0x1 - cmp r2, 0x1F - ble _080953E0 - movs r0, 0x1 - negs r0, r0 -_080953FC: - pop {r1} - bx r1 - thumb_func_end sub_80953D4 - - thumb_func_start sub_8095400 -sub_8095400: - push {lr} - adds r3, r0, 0 - movs r2, 0 - ldr r0, _08095418 - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0x10 -_0809540E: - ldr r0, [r1] - cmp r0, r3 - bne _0809541C - adds r0, r2, 0 - b _08095428 - .align 2, 0 -_08095418: .4byte gUnknown_203B480 -_0809541C: - adds r1, 0x30 - adds r2, 0x1 - cmp r2, 0x1F - ble _0809540E - movs r0, 0x1 - negs r0, r0 -_08095428: - pop {r1} - bx r1 - thumb_func_end sub_8095400 - - thumb_func_start sub_809542C -sub_809542C: - push {r4,lr} - sub sp, 0x14 - ldr r4, _08095490 - ldr r2, [r4] - movs r1, 0x1 - strb r1, [r2] - ldr r2, [r4] - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [r2, 0x4] - str r1, [r2, 0x8] - bl Random - bl sub_8094D28 - bl sub_8094E4C - ldr r1, [r4] - str r0, [r1, 0x10] - bl sub_808D33C - ldr r1, [r4] - ldrh r0, [r0, 0x8] - strh r0, [r1, 0xC] - bl sub_808D33C - adds r1, r0, 0 - mov r0, sp - bl sub_808DA34 - ldr r0, [r4] - adds r0, 0x14 - mov r1, sp - bl sub_80922F4 - bl sub_8011C34 - ldr r1, [r4] - str r0, [r1, 0x24] - ldrb r0, [r1, 0x4] - bl sub_8090134 - ldr r1, [r4] - adds r1, 0x2C - strb r0, [r1] - add sp, 0x14 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08095490: .4byte gUnknown_203B480 - thumb_func_end sub_809542C - - thumb_func_start sub_8095494 -sub_8095494: - lsls r1, 24 - lsrs r1, 24 - ldr r2, _080954B0 - ldr r3, [r2] - lsls r2, r1, 1 - adds r2, r1 - lsls r2, 4 - adds r3, r2 - ldr r1, [r3, 0x4] - ldr r2, [r3, 0x8] - str r1, [r0] - str r2, [r0, 0x4] - bx lr - .align 2, 0 -_080954B0: .4byte gUnknown_203B480 - thumb_func_end sub_8095494 - - thumb_func_start sub_80954B4 -sub_80954B4: - push {lr} - movs r0, 0x3 - bl sub_8095324 - cmp r0, 0 - bne _080954C4 - movs r0, 0 - b _080954C6 -_080954C4: - movs r0, 0x1 -_080954C6: - pop {r1} - bx r1 - thumb_func_end sub_80954B4 - - thumb_func_start sub_80954CC -sub_80954CC: - push {r4-r6,lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809485C - ldr r6, _08095618 - movs r5, 0 - movs r4, 0x1F -_080954E2: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8095774 - adds r5, 0x30 - subs r4, 0x1 - cmp r4, 0 - bge _080954E2 - ldr r4, _0809561C - ldr r1, [r4] - mov r0, sp - movs r2, 0x20 - bl sub_8094924 - ldr r5, [r4] - adds r4, r5, 0x4 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x58 - bl memset - mov r0, sp - adds r1, r4, 0 - movs r2, 0x2 - bl sub_8094924 - adds r1, r5, 0x6 - mov r0, sp - movs r2, 0x1 - bl sub_8094924 - adds r1, r5, 0x7 - mov r0, sp - movs r2, 0x7 - bl sub_8094924 - adds r4, 0x4 - mov r0, sp - adds r1, r4, 0 - bl sub_8090314 - adds r1, r5, 0 - adds r1, 0xC - mov r0, sp - movs r2, 0x9 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x10 - mov r0, sp - bl sub_808F410 - adds r1, r5, 0 - adds r1, 0x14 - mov r0, sp - bl sub_808F410 - adds r1, r5, 0 - adds r1, 0x18 - mov r0, sp - movs r2, 0xA - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x1A - mov r0, sp - movs r2, 0xA - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x1C - mov r0, sp - movs r2, 0x8 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x1D - mov r0, sp - movs r2, 0x8 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x1E - mov r0, sp - movs r2, 0x8 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x1F - mov r0, sp - movs r2, 0x8 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x20 - mov r0, sp - movs r2, 0x18 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x24 - mov r0, sp - movs r2, 0x18 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x28 - mov r0, sp - movs r2, 0x4 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x2C - mov r0, sp - bl sub_8091DC0 - adds r1, r5, 0 - adds r1, 0x30 - mov r0, sp - bl sub_8094128 - adds r1, r5, 0 - adds r1, 0x50 - mov r0, sp - movs r2, 0x50 - bl sub_8094924 - ldr r4, _08095620 - ldr r1, [r4] - mov r0, sp - movs r2, 0x20 - bl sub_8094924 - adds r6, r4, 0 - movs r5, 0x4 - movs r4, 0x1F -_080955F4: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - movs r2, 0x20 - bl sub_8094924 - adds r5, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _080955F4 - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x10 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08095618: .4byte gUnknown_203B480 -_0809561C: .4byte gUnknown_203B484 -_08095620: .4byte gUnknown_203B48C - thumb_func_end sub_80954CC - - thumb_func_start sub_8095624 -sub_8095624: - push {r4-r6,lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809486C - ldr r6, _08095768 - movs r5, 0 - movs r4, 0x1F -_0809563A: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8095824 - adds r5, 0x30 - subs r4, 0x1 - cmp r4, 0 - bge _0809563A - ldr r4, _0809576C - ldr r1, [r4] - mov r0, sp - movs r2, 0x20 - bl sub_809488C - ldr r5, [r4] - adds r4, r5, 0x4 - mov r0, sp - adds r1, r4, 0 - movs r2, 0x2 - bl sub_809488C - adds r1, r5, 0x6 - mov r0, sp - movs r2, 0x1 - bl sub_809488C - adds r1, r5, 0x7 - mov r0, sp - movs r2, 0x7 - bl sub_809488C - adds r4, 0x4 - mov r0, sp - adds r1, r4, 0 - bl sub_80902F4 - adds r1, r5, 0 - adds r1, 0xC - mov r0, sp - movs r2, 0x9 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x10 - mov r0, sp - bl sub_808F41C - adds r1, r5, 0 - adds r1, 0x14 - mov r0, sp - bl sub_808F41C - adds r1, r5, 0 - adds r1, 0x18 - mov r0, sp - movs r2, 0xA - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x1A - mov r0, sp - movs r2, 0xA - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x1C - mov r0, sp - movs r2, 0x8 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x1D - mov r0, sp - movs r2, 0x8 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x1E - mov r0, sp - movs r2, 0x8 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x1F - mov r0, sp - movs r2, 0x8 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x20 - mov r0, sp - movs r2, 0x18 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x24 - mov r0, sp - movs r2, 0x18 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x28 - mov r0, sp - movs r2, 0x4 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x2C - mov r0, sp - bl sub_8091DE0 - adds r1, r5, 0 - adds r1, 0x30 - mov r0, sp - bl sub_8094108 - adds r1, r5, 0 - adds r1, 0x50 - mov r0, sp - movs r2, 0x50 - bl sub_809488C - ldr r4, _08095770 - ldr r1, [r4] - mov r0, sp - movs r2, 0x20 - bl sub_809488C - adds r6, r4, 0 - movs r5, 0x4 - movs r4, 0x1F -_08095742: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - movs r2, 0x20 - bl sub_809488C - adds r5, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _08095742 - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x10 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08095768: .4byte gUnknown_203B480 -_0809576C: .4byte gUnknown_203B484 -_08095770: .4byte gUnknown_203B48C - thumb_func_end sub_8095624 - - thumb_func_start sub_8095774 -sub_8095774: - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - bl sub_8094924 - adds r1, r5, 0x4 - adds r0, r4, 0 - bl sub_8090314 - adds r1, r5, 0 - adds r1, 0x8 - adds r0, r4, 0 - movs r2, 0x18 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0xC - adds r0, r4, 0 - movs r2, 0x9 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x10 - adds r0, r4, 0 - movs r2, 0x20 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x14 - adds r0, r4, 0 - movs r2, 0x50 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x20 - adds r0, r4, 0 - movs r2, 0x8 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x21 - adds r0, r4, 0 - movs r2, 0x8 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x22 - adds r0, r4, 0 - movs r2, 0x8 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x24 - adds r0, r4, 0 - movs r2, 0x20 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x28 - adds r0, r4, 0 - movs r2, 0x20 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x2C - adds r0, r4, 0 - movs r2, 0x8 - bl sub_8094924 - adds r0, r4, 0 - mov r1, sp - movs r2, 0x1 - bl sub_8094924 - mov r0, sp - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - adds r1, r5, 0 - adds r1, 0x2D - strb r0, [r1] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8095774 - - thumb_func_start sub_8095824 -sub_8095824: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r4, r1, 0 - movs r1, 0xFF - mov r0, sp - strb r1, [r0] - mov r6, sp - adds r6, 0x1 - movs r0, 0 - strb r0, [r6] - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x4 - bl sub_809488C - adds r1, r4, 0x4 - adds r0, r5, 0 - bl sub_80902F4 - adds r1, r4, 0 - adds r1, 0x8 - adds r0, r5, 0 - movs r2, 0x18 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0xC - adds r0, r5, 0 - movs r2, 0x9 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x10 - adds r0, r5, 0 - movs r2, 0x20 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x14 - adds r0, r5, 0 - movs r2, 0x50 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x20 - adds r0, r5, 0 - movs r2, 0x8 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x21 - adds r0, r5, 0 - movs r2, 0x8 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x22 - adds r0, r5, 0 - movs r2, 0x8 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x24 - adds r0, r5, 0 - movs r2, 0x20 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x28 - adds r0, r5, 0 - movs r2, 0x20 - bl sub_809488C - adds r1, r4, 0 - adds r1, 0x2C - adds r0, r5, 0 - movs r2, 0x8 - bl sub_809488C - adds r0, r4, 0 - adds r0, 0x2D - ldrb r0, [r0] - mov r1, sp - cmp r0, 0 - bne _080958D2 - adds r1, r6, 0 -_080958D2: - adds r0, r5, 0 - movs r2, 0x1 - bl sub_809488C - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8095824 - - thumb_func_start sub_80958E4 -sub_80958E4: - str r1, [r0] - bx lr - thumb_func_end sub_80958E4 - - thumb_func_start sub_80958E8 -sub_80958E8: - ldr r1, _080958F0 - ldr r0, _080958F4 - str r0, [r1] - bx lr - .align 2, 0 -_080958F0: .4byte gUnknown_203B490 -_080958F4: .4byte gUnknown_2039448 - thumb_func_end sub_80958E8 - - thumb_func_start sub_80958F8 -sub_80958F8: - ldr r0, _080958FC - bx lr - .align 2, 0 -_080958FC: .4byte gUnknown_2039448 - thumb_func_end sub_80958F8 - - thumb_func_start sub_8095900 -sub_8095900: - push {r4-r7,lr} - movs r4, 0 -_08095904: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096040 - adds r4, 0x1 - cmp r4, 0x3 - ble _08095904 - movs r4, 0 -_08095914: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_80965B8 - adds r4, 0x1 - cmp r4, 0x7 - ble _08095914 - movs r4, 0 -_08095924: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096C3C - adds r4, 0x1 - cmp r4, 0x7 - ble _08095924 - movs r4, 0 - ldr r3, _080959B8 - movs r2, 0xBC - lsls r2, 2 - movs r1, 0 -_0809593C: - ldr r0, [r3] - adds r0, r2 - adds r0, r4 - strb r1, [r0] - adds r4, 0x1 - cmp r4, 0x37 - ble _0809593C - ldr r4, _080959B8 - ldr r0, [r4] - movs r1, 0xCA - lsls r1, 2 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - movs r7, 0xC8 - lsls r7, 1 - adds r0, r7 - movs r1, 0x28 - bl MemoryClear8 - ldr r0, [r4] - movs r1, 0xDC - lsls r1, 1 - adds r0, r1 - movs r1, 0x78 - bl MemoryClear8 - adds r3, r4, 0 - movs r5, 0 - movs r2, 0 - movs r6, 0x8C - lsls r6, 2 - movs r4, 0xF -_08095980: - ldr r0, [r3] - adds r0, r2 - adds r0, r6 - movs r1, 0x63 - strb r1, [r0] - ldr r0, [r3] - adds r0, r2 - ldr r7, _080959BC - adds r0, r7 - movs r1, 0x1 - strb r1, [r0] - ldr r1, [r3] - adds r7, 0x3 - adds r0, r1, r7 - adds r0, r2 - str r5, [r0] - adds r7, 0x4 - adds r0, r1, r7 - adds r0, r2 - str r5, [r0] - adds r2, 0xC - subs r4, 0x1 - cmp r4, 0 - bge _08095980 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080959B8: .4byte gUnknown_203B490 -_080959BC: .4byte 0x00000231 - thumb_func_end sub_8095900 - - thumb_func_start sub_80959C0 -sub_80959C0: - push {lr} - adds r1, r0, 0 - ldrb r0, [r1] - cmp r0, 0x5 - bne _080959D6 - adds r0, r1, 0 - bl sub_80959DC - lsls r0, 24 - lsrs r0, 24 - b _080959D8 -_080959D6: - movs r0, 0 -_080959D8: - pop {r1} - bx r1 - thumb_func_end sub_80959C0 - - thumb_func_start sub_80959DC -sub_80959DC: - push {r4-r6,lr} - adds r5, r0, 0 - ldrb r0, [r5, 0x1] - cmp r0, 0x4 - bls _080959E8 - b _08095B16 -_080959E8: - cmp r0, 0x4 - bne _080959F8 - ldrb r0, [r5, 0x4] - bl sub_8090114 - cmp r0, 0 - bne _080959F8 - b _08095B16 -_080959F8: - ldrb r0, [r5, 0x2] - cmp r0, 0x9 - bls _08095A00 - b _08095B16 -_08095A00: - ldrb r0, [r5, 0x4] - bl sub_809095C - lsls r0, 24 - cmp r0, 0 - beq _08095A0E - b _08095B16 -_08095A0E: - ldrb r4, [r5, 0x5] - ldrb r0, [r5, 0x4] - bl sub_8090298 - cmp r4, r0 - bge _08095B16 - adds r4, r5, 0x4 - adds r0, r4, 0 - bl sub_809017C - lsls r0, 24 - adds r6, r4, 0 - cmp r0, 0 - bne _08095B16 - movs r1, 0xC - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _08095B16 - ldr r4, _08095B1C - cmp r0, r4 - bgt _08095B16 - movs r2, 0xC - ldrsh r0, [r5, r2] - bl sub_808E770 - movs r2, 0xC - ldrsh r1, [r5, r2] - lsls r0, 16 - asrs r0, 16 - cmp r1, r0 - bne _08095B16 - movs r1, 0xC - ldrsh r0, [r5, r1] - bl sub_803C0DC - lsls r0, 24 - cmp r0, 0 - beq _08095B16 - movs r2, 0xE - ldrsh r0, [r5, r2] - cmp r0, r4 - bgt _08095B16 - movs r1, 0xE - ldrsh r0, [r5, r1] - bl sub_808E770 - movs r2, 0xE - ldrsh r1, [r5, r2] - lsls r0, 16 - asrs r0, 16 - cmp r1, r0 - bne _08095B16 - movs r1, 0xE - ldrsh r0, [r5, r1] - bl sub_803C0DC - lsls r0, 24 - cmp r0, 0 - beq _08095B16 - ldrb r0, [r5, 0x1] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _08095A9C - movs r2, 0xE - ldrsh r1, [r5, r2] - movs r2, 0xC - ldrsh r0, [r5, r2] - cmp r1, r0 - bne _08095B16 -_08095A9C: - ldrb r0, [r5, 0x10] - bl sub_8092040 - lsls r0, 24 - cmp r0, 0 - bne _08095B16 - ldrb r0, [r5, 0x10] - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - bne _08095B16 - ldrb r0, [r5, 0x10] - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - beq _08095B16 - ldrb r0, [r5, 0x1] - cmp r0, 0x3 - bne _08095AD4 - ldrb r0, [r5, 0x4] - ldrb r1, [r5, 0x10] - bl sub_8091E60 - lsls r0, 24 - cmp r0, 0 - beq _08095B16 -_08095AD4: - ldrb r0, [r5, 0x11] - cmp r0, 0x4 - beq _08095B16 - cmp r0, 0xA - beq _08095B16 - cmp r0, 0xA - bhi _08095B16 - ldrb r0, [r5, 0x12] - bl sub_8092040 - lsls r0, 24 - cmp r0, 0 - bne _08095B16 - ldrb r0, [r5, 0x13] - cmp r0, 0x39 - bhi _08095B16 - ldrb r0, [r5, 0x11] - cmp r0, 0x9 - bne _08095B20 - ldrb r0, [r5, 0x13] - bl sub_8092534 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08095B16 - ldrb r1, [r5, 0x1] - adds r0, r6, 0 - bl sub_803C1D0 - lsls r0, 24 - cmp r0, 0 - bne _08095B20 -_08095B16: - movs r0, 0 - b _08095B22 - .align 2, 0 -_08095B1C: .4byte 0x000001a7 -_08095B20: - movs r0, 0x1 -_08095B22: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80959DC - - thumb_func_start sub_8095B28 -sub_8095B28: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r4, _08095B44 - add sp, r4 - adds r4, r0, 0 - bl sub_8095CE0 - lsls r0, 24 - cmp r0, 0 - bne _08095B48 - movs r0, 0 - b _08095CCC - .align 2, 0 -_08095B44: .4byte 0xfffffcb0 -_08095B48: - movs r0, 0x5 - strb r0, [r4] - movs r0, 0x8 - bl RandomCapped - ldr r1, _08095BC8 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r4, 0x1] - cmp r0, 0x2 - bne _08095B6C - bl sub_8092178 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08095B6C - strb r0, [r4, 0x1] -_08095B6C: - movs r0, 0 - strb r0, [r4, 0x2] - bl Random - ldr r1, _08095BCC - ands r1, r0 - str r1, [r4, 0x8] - movs r7, 0 - movs r5, 0x1 - adds r0, r4, 0x4 - mov r8, r0 - movs r1, 0x12 - adds r1, r4 - mov r9, r1 - mov r6, sp -_08095B8A: - lsls r0, r5, 16 - asrs r0, 16 - bl sub_803C110 - lsls r0, 24 - cmp r0, 0 - beq _08095B9E - strh r5, [r6] - adds r6, 0x2 - adds r7, 0x1 -_08095B9E: - adds r5, 0x1 - ldr r0, _08095BD0 - cmp r5, r0 - ble _08095B8A - cmp r7, 0 - beq _08095BD4 - adds r0, r7, 0 - bl RandomCapped - lsls r0, 1 - add r0, sp - ldrh r0, [r0] - strh r0, [r4, 0xC] - adds r0, r7, 0 - bl RandomCapped - lsls r0, 1 - add r0, sp - ldrh r0, [r0] - b _08095BDC - .align 2, 0 -_08095BC8: .4byte gUnknown_8109984 -_08095BCC: .4byte 0x00ffffff -_08095BD0: .4byte 0x000001a7 -_08095BD4: - movs r0, 0x10 - strh r0, [r4, 0xC] - movs r0, 0x91 - lsls r0, 1 -_08095BDC: - strh r0, [r4, 0xE] - ldrb r0, [r4, 0x1] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _08095BEE - ldrh r0, [r4, 0xC] - strh r0, [r4, 0xE] -_08095BEE: - ldrb r0, [r4, 0x4] - bl sub_8095F28 - strb r0, [r4, 0x10] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08095C10 - strb r0, [r4, 0x1] - ldrh r0, [r4, 0xC] - strh r0, [r4, 0xE] - adds r2, r4, 0 - adds r2, 0x10 - mov r0, r8 - movs r1, 0 - bl sub_803C37C -_08095C10: - ldrb r0, [r4, 0x4] - bl sub_8090114 - adds r1, r0, 0 - cmp r1, 0 - bne _08095C28 - ldrb r0, [r4, 0x1] - cmp r0, 0x4 - bne _08095C28 - strb r1, [r4, 0x1] - ldrh r0, [r4, 0xC] - strh r0, [r4, 0xE] -_08095C28: - ldrb r1, [r4, 0x1] - mov r0, r8 - mov r2, r9 - bl sub_803C37C - ldrb r0, [r4, 0x10] - ldrb r1, [r4, 0x12] - cmp r0, r1 - beq _08095C28 - movs r0, 0 - strb r0, [r4, 0x13] - ldrb r0, [r4, 0x1] - cmp r0, 0x2 - beq _08095C90 - cmp r0, 0x2 - bgt _08095C4E - cmp r0, 0x1 - beq _08095C6C - b _08095CCA -_08095C4E: - cmp r0, 0x4 - bgt _08095CCA - bl Random - adds r1, r0, 0 - movs r0, 0xE0 - lsls r0, 3 - ands r1, r0 - movs r0, 0xC0 - lsls r0, 2 - cmp r1, r0 - beq _08095CC4 - cmp r1, r0 - bgt _08095CB4 - b _08095CAA -_08095C6C: - bl Random - adds r1, r0, 0 - movs r0, 0x70 - ands r1, r0 - cmp r1, 0x10 - beq _08095C80 - cmp r1, 0x30 - beq _08095C88 - b _08095CCA -_08095C80: - adds r0, r4, 0 - bl sub_803C3E0 - b _08095CCA -_08095C88: - adds r0, r4, 0 - bl sub_803C45C - b _08095CCA -_08095C90: - bl Random - movs r1, 0xC0 - lsls r1, 6 - ands r1, r0 - movs r0, 0x80 - lsls r0, 5 - cmp r1, r0 - bne _08095CCA - adds r0, r4, 0 - bl sub_803C4F0 - b _08095CCA -_08095CAA: - movs r0, 0x80 - lsls r0, 1 - cmp r1, r0 - beq _08095CBC - b _08095CCA -_08095CB4: - movs r0, 0xC0 - lsls r0, 3 - cmp r1, r0 - bne _08095CCA -_08095CBC: - adds r0, r4, 0 - bl sub_803C580 - b _08095CCA -_08095CC4: - adds r0, r4, 0 - bl sub_803C610 -_08095CCA: - movs r0, 0x1 -_08095CCC: - movs r3, 0xD4 - lsls r3, 2 - add sp, r3 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8095B28 - - thumb_func_start sub_8095CE0 -sub_8095CE0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x60 - str r0, [sp, 0x44] - mov r0, sp - bl sub_80A29B0 - str r0, [sp, 0x4C] - cmp r0, 0 - bne _08095D0C - mov r0, sp - add r1, sp, 0x4C - ldrb r1, [r1] - strb r1, [r0] - mov r1, sp - movs r0, 0x1 - strb r0, [r1, 0x1] - movs r2, 0x2 - str r2, [sp, 0x4C] -_08095D0C: - ldr r0, [sp, 0x4C] - bl RandomCapped - mov r9, r0 - str r0, [sp, 0x48] - mov r1, sp - adds r1, 0x40 - str r1, [sp, 0x5C] -_08095D1C: - mov r0, sp - add r0, r9 - ldrb r7, [r0] - adds r0, r7, 0 - bl sub_8090298 - str r0, [sp, 0x58] - lsrs r0, 31 - ldr r2, [sp, 0x58] - adds r0, r2, r0 - asrs r0, 1 - str r0, [sp, 0x54] - adds r1, r2, 0 - bl RandomRange - adds r4, r0, 0 - str r4, [sp, 0x50] -_08095D3E: - movs r0, 0x1 - mov r8, r0 - ldr r1, _08095DF4 - ldr r0, [sp, 0x40] - ands r0, r1 - orrs r0, r7 - lsls r2, r4, 24 - lsrs r2, 16 - ldr r1, _08095DF8 - ands r0, r1 - orrs r0, r2 - str r0, [sp, 0x40] - ldr r0, [sp, 0x5C] - bl sub_809017C - lsls r0, 24 - cmp r0, 0 - beq _08095D66 - movs r1, 0 - mov r8, r1 -_08095D66: - ldr r2, _08095DFC - mov r10, r2 - movs r6, 0 - movs r5, 0x3 -_08095D6E: - mov r1, r10 - ldr r0, [r1] - adds r0, r6 - adds r1, r7, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8095E38 - lsls r0, 24 - cmp r0, 0 - beq _08095D88 - movs r2, 0 - mov r8, r2 -_08095D88: - adds r6, 0x14 - subs r5, 0x1 - cmp r5, 0 - bge _08095D6E - ldr r0, _08095DFC - mov r10, r0 - movs r6, 0x50 - movs r5, 0x7 -_08095D98: - mov r1, r10 - ldr r0, [r1] - adds r0, r6 - adds r1, r7, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8095E38 - lsls r0, 24 - cmp r0, 0 - beq _08095DB2 - movs r2, 0 - mov r8, r2 -_08095DB2: - adds r6, 0x14 - subs r5, 0x1 - cmp r5, 0 - bge _08095D98 - ldr r0, _08095DFC - mov r10, r0 - movs r6, 0xF0 - movs r5, 0x7 -_08095DC2: - mov r1, r10 - ldr r0, [r1] - adds r0, r6 - adds r1, r7, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_8095E38 - lsls r0, 24 - cmp r0, 0 - beq _08095DDC - movs r2, 0 - mov r8, r2 -_08095DDC: - adds r6, 0x14 - subs r5, 0x1 - cmp r5, 0 - bge _08095DC2 - mov r0, r8 - cmp r0, 0 - beq _08095E00 - ldr r1, [sp, 0x44] - strb r7, [r1, 0x4] - strb r4, [r1, 0x5] - movs r0, 0x1 - b _08095E28 - .align 2, 0 -_08095DF4: .4byte 0xffffff00 -_08095DF8: .4byte 0xffff00ff -_08095DFC: .4byte gUnknown_203B490 -_08095E00: - adds r4, 0x1 - ldr r2, [sp, 0x58] - cmp r4, r2 - blt _08095E0A - ldr r4, [sp, 0x54] -_08095E0A: - ldr r0, [sp, 0x50] - cmp r4, r0 - bne _08095D3E - movs r1, 0x1 - add r9, r1 - ldr r2, [sp, 0x4C] - cmp r9, r2 - bne _08095E1E - movs r0, 0 - mov r9, r0 -_08095E1E: - ldr r1, [sp, 0x48] - cmp r9, r1 - beq _08095E26 - b _08095D1C -_08095E26: - movs r0, 0 -_08095E28: - add sp, 0x60 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8095CE0 - - thumb_func_start sub_8095E38 -sub_8095E38: - push {r4,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r3, 24 - lsrs r3, 24 - ldrb r0, [r4] - cmp r0, 0 - beq _08095E6E - ldrb r0, [r4, 0x1] - cmp r0, 0x2 - bne _08095E5E - cmp r3, 0x1 - bne _08095E5E - ldrb r0, [r4, 0x4] - cmp r0, r1 - bne _08095E6E - movs r0, 0x1 - b _08095E70 -_08095E5E: - ldrb r0, [r4, 0x4] - cmp r0, r1 - bne _08095E6E - ldrb r0, [r4, 0x5] - cmp r0, r2 - bne _08095E6E - movs r0, 0x1 - b _08095E70 -_08095E6E: - movs r0, 0 -_08095E70: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8095E38 - - thumb_func_start sub_8095E78 -sub_8095E78: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x3C - movs r6, 0 - movs r5, 0x1 -_08095E84: - ldr r0, _08095F04 - ldr r0, [r0] - adds r0, r5 - ldrb r0, [r0] - adds r1, r5, 0x1 - mov r8, r1 - cmp r0, 0 - bne _08095EF6 - lsls r0, r5, 24 - lsrs r0, 24 - bl sub_8092534 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08095EF6 - movs r4, 0 - ldr r0, _08095F08 - ldr r1, [r0] - movs r3, 0x3 -_08095EAC: - ldrb r0, [r1] - cmp r0, 0 - beq _08095EBA - ldrb r0, [r1, 0x11] - cmp r0, 0x9 - bne _08095EBA - movs r4, 0x1 -_08095EBA: - adds r1, 0x14 - subs r3, 0x1 - cmp r3, 0 - bge _08095EAC - ldr r0, _08095F08 - ldr r0, [r0] - adds r2, r0, 0 - adds r2, 0xF0 - adds r1, r0, 0 - movs r3, 0x7 -_08095ECE: - ldrb r0, [r2] - cmp r0, 0 - beq _08095EE0 - ldr r7, _08095F0C - adds r0, r1, r7 - ldrb r0, [r0] - cmp r0, 0x9 - bne _08095EE0 - movs r4, 0x1 -_08095EE0: - adds r2, 0x14 - adds r1, 0x14 - subs r3, 0x1 - cmp r3, 0 - bge _08095ECE - cmp r4, 0 - bne _08095EF6 - mov r1, sp - adds r0, r1, r6 - strb r5, [r0] - adds r6, 0x1 -_08095EF6: - mov r5, r8 - cmp r5, 0x39 - ble _08095E84 - cmp r6, 0 - bne _08095F10 - movs r0, 0 - b _08095F1A - .align 2, 0 -_08095F04: .4byte gUnknown_203B468 -_08095F08: .4byte gUnknown_203B490 -_08095F0C: .4byte 0x00000101 -_08095F10: - adds r0, r6, 0 - bl RandomCapped - add r0, sp - ldrb r0, [r0] -_08095F1A: - add sp, 0x3C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8095E78 - - thumb_func_start sub_8095F28 -sub_8095F28: - push {r4-r7,lr} - sub sp, 0xF0 - lsls r0, 24 - lsrs r7, r0, 24 - movs r6, 0 - movs r5, 0x1 -_08095F34: - lsls r4, r5, 24 - cmp r7, 0x63 - beq _08095F48 - lsrs r1, r4, 24 - adds r0, r7, 0 - bl sub_8091E60 - lsls r0, 24 - cmp r0, 0 - beq _08095F6A -_08095F48: - lsrs r4, 24 - adds r0, r4, 0 - bl sub_8090A60 - lsls r0, 24 - cmp r0, 0 - bne _08095F6A - adds r0, r4, 0 - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - beq _08095F6A - mov r1, sp - adds r0, r1, r6 - strb r5, [r0] - adds r6, 0x1 -_08095F6A: - adds r5, 0x1 - cmp r5, 0xEF - ble _08095F34 - cmp r6, 0 - beq _08095F80 - adds r0, r6, 0 - bl RandomCapped - add r0, sp - ldrb r0, [r0] - b _08095F82 -_08095F80: - movs r0, 0 -_08095F82: - add sp, 0xF0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8095F28 - - thumb_func_start sub_8095F8C -sub_8095F8C: - push {r4,r5,lr} - movs r5, 0 - movs r4, 0 -_08095F92: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096000 - lsls r0, 24 - cmp r0, 0 - bne _08095FA2 - adds r5, 0x1 -_08095FA2: - adds r4, 0x1 - cmp r4, 0x3 - ble _08095F92 - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8095F8C - - thumb_func_start sub_8095FB0 -sub_8095FB0: - push {r4,r5,lr} - adds r4, r0, 0 - movs r3, 0 - ldr r5, _08095FD4 - movs r2, 0 -_08095FBA: - ldr r0, [r5] - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - bne _08095FD8 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r3} - stm r1!, {r2,r3} - movs r0, 0 - b _08095FE2 - .align 2, 0 -_08095FD4: .4byte gUnknown_203B490 -_08095FD8: - adds r2, 0x14 - adds r3, 0x1 - cmp r3, 0x3 - ble _08095FBA - movs r0, 0x1 -_08095FE2: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8095FB0 - - thumb_func_start sub_8095FE8 -sub_8095FE8: - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08095FFC - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r0, r1 - bx lr - .align 2, 0 -_08095FFC: .4byte gUnknown_203B490 - thumb_func_end sub_8095FE8 - - thumb_func_start sub_8096000 -sub_8096000: - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0809601C - ldr r2, [r1] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r2, r1 - ldrb r0, [r2] - cmp r0, 0 - beq _08096020 - movs r0, 0 - b _08096022 - .align 2, 0 -_0809601C: .4byte gUnknown_203B490 -_08096020: - movs r0, 0x1 -_08096022: - pop {r1} - bx r1 - thumb_func_end sub_8096000 - - thumb_func_start sub_8096028 -sub_8096028: - push {r4,lr} - movs r4, 0 -_0809602C: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096040 - adds r4, 0x1 - cmp r4, 0x3 - ble _0809602C - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8096028 - - thumb_func_start sub_8096040 -sub_8096040: - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r3, _08096074 - ldr r1, [r3] - lsls r2, r0, 2 - adds r2, r0 - lsls r2, 2 - adds r1, r2 - movs r4, 0 - strb r4, [r1] - ldr r0, [r3] - adds r0, r2 - movs r1, 0x63 - strb r1, [r0, 0x4] - ldr r0, [r3] - adds r0, r2 - strb r4, [r0, 0x5] - ldr r0, [r3] - adds r0, r2 - movs r1, 0x5 - strb r1, [r0, 0x11] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08096074: .4byte gUnknown_203B490 - thumb_func_end sub_8096040 - - thumb_func_start sub_8096078 -sub_8096078: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r2, 0 - movs r3, 0 - ldr r0, _08096090 - mov r12, r0 - mov r8, r3 - movs r4, 0 - mov r9, r4 - b _080960B6 - .align 2, 0 -_08096090: .4byte gUnknown_203B490 -_08096094: - cmp r2, r3 - ble _080960AA - mov r1, r12 - ldr r0, [r1] - mov r5, r8 - adds r1, r0, r5 - adds r0, r4 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r6,r7} - stm r1!, {r6,r7} -_080960AA: - adds r4, 0x14 - movs r0, 0x14 - add r9, r0 - adds r2, 0x1 - add r8, r0 - adds r3, 0x1 -_080960B6: - cmp r2, 0x3 - bgt _080960E2 - mov r1, r12 - ldr r0, [r1] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _080960E2 - ldr r6, _08096110 - mov r1, r9 -_080960CA: - adds r1, 0x14 - adds r4, 0x14 - movs r5, 0x14 - add r9, r5 - adds r2, 0x1 - cmp r2, 0x3 - bgt _080960E2 - ldr r0, [r6] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080960CA -_080960E2: - cmp r2, 0x4 - bne _08096094 - cmp r3, 0x3 - bgt _08096102 - ldr r4, _08096110 - movs r2, 0 - lsls r0, r3, 2 - adds r0, r3 - lsls r1, r0, 2 -_080960F4: - ldr r0, [r4] - adds r0, r1 - strb r2, [r0] - adds r1, 0x14 - adds r3, 0x1 - cmp r3, 0x3 - ble _080960F4 -_08096102: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08096110: .4byte gUnknown_203B490 - thumb_func_end sub_8096078 - - thumb_func_start sub_8096114 -sub_8096114: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - movs r1, 0 -_08096122: - adds r0, r1, 0x1 - mov r10, r0 - mov r8, r10 - cmp r0, 0x3 - bgt _08096198 - ldr r2, _080961B0 - mov r9, r2 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - mov r12, r0 - mov r3, r10 - lsls r0, r3, 2 - add r0, r10 - lsls r4, r0, 2 -_08096140: - mov r5, r9 - ldr r1, [r5] - adds r3, r1, r4 - ldrb r0, [r3] - cmp r0, 0 - beq _0809618C - mov r6, r12 - adds r2, r1, r6 - ldrb r1, [r2, 0x4] - ldrb r0, [r3, 0x4] - cmp r1, r0 - bhi _08096164 - cmp r1, r0 - bne _0809618C - ldrb r0, [r2, 0x5] - ldrb r7, [r3, 0x5] - cmp r0, r7 - bls _0809618C -_08096164: - mov r1, sp - adds r0, r2, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5,r6} - stm r1!, {r5,r6} - adds r1, r2, 0 - adds r0, r3, 0 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r5,r6} - stm r1!, {r5,r6} - mov r7, r9 - ldr r1, [r7] - adds r1, r4 - mov r0, sp - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r6,r7} - stm r1!, {r6,r7} -_0809618C: - adds r4, 0x14 - movs r0, 0x1 - add r8, r0 - mov r1, r8 - cmp r1, 0x3 - ble _08096140 -_08096198: - mov r1, r10 - cmp r1, 0x2 - ble _08096122 - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080961B0: .4byte gUnknown_203B490 - thumb_func_end sub_8096114 - - thumb_func_start sub_80961B4 -sub_80961B4: - push {lr} - bl sub_8096E2C - lsls r0, 24 - cmp r0, 0 - beq _080961CE - ldr r0, _080961D4 - ldr r0, [r0] - movs r1, 0xCA - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] -_080961CE: - pop {r0} - bx r0 - .align 2, 0 -_080961D4: .4byte gUnknown_203B490 - thumb_func_end sub_80961B4 - - thumb_func_start sub_80961D8 -sub_80961D8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r7, 0 - bl sub_8095F8C - adds r6, r0, 0 - movs r1, 0x4 - bl RandomRange - mov r8, r0 - cmp r6, 0x3 - bgt _08096202 - ldr r4, _08096208 - ldr r0, [r4] - movs r2, 0xCA - lsls r2, 2 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - bne _0809620C -_08096202: - movs r0, 0 - b _080963A8 - .align 2, 0 -_08096208: .4byte gUnknown_203B490 -_0809620C: - strb r7, [r1] - movs r5, 0x38 - movs r0, 0xA - movs r1, 0x31 - movs r2, 0x1 - bl sub_8001D08 - lsls r0, 24 - cmp r0, 0 - beq _0809623A - ldr r0, [r4] - ldr r1, _08096328 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0809623A - movs r0, 0x35 - bl sub_8096E80 - lsls r0, 24 - cmp r0, 0 - bne _0809623A - movs r5, 0x35 -_0809623A: - movs r0, 0xF - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _0809629C - ldr r0, _0809632C - ldr r0, [r0] - movs r2, 0xC9 - lsls r2, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08096264 - movs r0, 0x34 - bl sub_8096E80 - lsls r0, 24 - cmp r0, 0 - bne _08096264 - movs r5, 0x34 -_08096264: - ldr r0, _0809632C - ldr r0, [r0] - ldr r1, _08096330 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08096280 - movs r0, 0x33 - bl sub_8096E80 - lsls r0, 24 - cmp r0, 0 - bne _08096280 - movs r5, 0x33 -_08096280: - ldr r0, _0809632C - ldr r0, [r0] - ldr r2, _08096334 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0809629C - movs r0, 0x32 - bl sub_8096E80 - lsls r0, 24 - cmp r0, 0 - bne _0809629C - movs r5, 0x32 -_0809629C: - bl sub_8092178 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bne _080962C4 - ldr r0, _0809632C - ldr r0, [r0] - ldr r1, _08096338 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080962C4 - movs r0, 0x36 - bl sub_8096E80 - lsls r0, 24 - cmp r0, 0 - bne _080962C4 - movs r5, 0x36 -_080962C4: - movs r0, 0x6 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080962EC - ldr r0, _0809632C - ldr r0, [r0] - ldr r2, _0809633C - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080962EC - movs r0, 0x37 - bl sub_8096E80 - lsls r0, 24 - cmp r0, 0 - bne _080962EC - movs r5, 0x37 -_080962EC: - cmp r5, 0x38 - bne _08096310 - cmp r6, r8 - bgt _08096392 - bl sub_8096E2C - lsls r0, 24 - lsrs r5, r0, 24 - movs r0, 0xE - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _0809630C - cmp r5, 0x2 - bhi _0809638E -_0809630C: - cmp r5, 0x31 - bhi _0809638E -_08096310: - lsls r0, r6, 24 - lsrs r0, 24 - bl sub_8095FE8 - adds r4, r0, 0 - movs r0, 0x1 - strb r0, [r4] - movs r0, 0x62 - strb r0, [r4, 0x4] - strb r5, [r4, 0x5] - b _0809638A - .align 2, 0 -_08096328: .4byte 0x00000325 -_0809632C: .4byte gUnknown_203B490 -_08096330: .4byte 0x00000323 -_08096334: .4byte 0x00000322 -_08096338: .4byte 0x00000326 -_0809633C: .4byte 0x00000327 -_08096340: - lsls r0, r6, 24 - lsrs r0, 24 - bl sub_8095FE8 - adds r4, r0, 0 - bl sub_8095B28 - lsls r0, 24 - cmp r0, 0 - beq _08096392 - bl sub_8095E78 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r4, 0x4 - ldrb r1, [r4, 0x1] - bl sub_803C1D0 - lsls r0, 24 - cmp r0, 0 - bne _0809636C - movs r5, 0 -_0809636C: - movs r0, 0x5 - movs r1, 0xA - bl RandomRange - strb r0, [r4, 0x11] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x9 - bne _0809638A - cmp r5, 0 - bne _08096388 - movs r0, 0x5 - strb r0, [r4, 0x11] - b _0809638A -_08096388: - strb r5, [r4, 0x13] -_0809638A: - movs r7, 0x1 - adds r6, 0x1 -_0809638E: - cmp r6, r8 - ble _08096340 -_08096392: - bl sub_80963B4 - lsls r0, 24 - cmp r0, 0 - beq _0809639E - movs r7, 0x1 -_0809639E: - bl sub_8096078 - bl sub_8096114 - adds r0, r7, 0 -_080963A8: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80961D8 - - thumb_func_start sub_80963B4 -sub_80963B4: - push {r4-r6,lr} - movs r6, 0 - bl sub_8096E2C - lsls r0, 24 - lsrs r5, r0, 24 - bl sub_8095F8C - adds r4, r0, 0 - cmp r4, 0x3 - ble _080963CE - movs r0, 0 - b _080963F4 -_080963CE: - movs r0, 0xE - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080963F2 - cmp r5, 0x31 - bhi _080963F2 - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8095FE8 - movs r1, 0x1 - strb r1, [r0] - movs r1, 0x62 - strb r1, [r0, 0x4] - strb r5, [r0, 0x5] - movs r6, 0x1 -_080963F2: - adds r0, r6, 0 -_080963F4: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80963B4 - - thumb_func_start sub_80963FC -sub_80963FC: - push {r4-r6,lr} - movs r6, 0 -_08096400: - lsls r0, r6, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_8095FE8 - adds r5, r0, 0 - ldrb r0, [r5] - cmp r0, 0x1 - beq _08096418 - adds r0, r4, 0 - bl sub_8096040 -_08096418: - adds r6, 0x1 - cmp r6, 0x3 - ble _08096400 - bl sub_8096078 - bl sub_8095F8C - lsls r0, 24 - lsrs r0, 24 - bl sub_8095FE8 - adds r5, r0, 0 - movs r0, 0 - movs r4, 0x5 - strb r4, [r5] - strb r0, [r5, 0x1] - strb r0, [r5, 0x2] - movs r0, 0x2 - strb r0, [r5, 0x4] - movs r0, 0x3 - strb r0, [r5, 0x5] - bl Random - ldr r1, _08096484 - ands r1, r0 - str r1, [r5, 0x8] - movs r0, 0x10 - strh r0, [r5, 0xC] - strh r0, [r5, 0xE] - ldrb r0, [r5, 0x4] - bl sub_8095F28 - strb r0, [r5, 0x10] - strb r4, [r5, 0x11] -_0809645C: - ldrb r1, [r5, 0x1] - adds r0, r5, 0x4 - adds r2, r5, 0 - adds r2, 0x12 - bl sub_803C37C - ldrb r0, [r5, 0x10] - ldrb r1, [r5, 0x12] - cmp r0, r1 - beq _0809645C - movs r0, 0 - strb r0, [r5, 0x13] - bl sub_8096078 - bl sub_8096114 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08096484: .4byte 0x00ffffff - thumb_func_end sub_80963FC - - thumb_func_start sub_8096488 -sub_8096488: - push {r4,lr} - movs r4, 0 -_0809648C: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096040 - adds r4, 0x1 - cmp r4, 0x3 - ble _0809648C - movs r0, 0 - bl sub_8095FE8 - movs r2, 0 - movs r1, 0x1 - strb r1, [r0] - movs r1, 0x62 - strb r1, [r0, 0x4] - strb r2, [r0, 0x5] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8096488 - - thumb_func_start sub_80964B4 -sub_80964B4: - push {lr} - ldr r0, _080964D4 - ldr r0, [r0] - ldr r1, _080964D8 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080964DC - movs r0, 0x35 - bl sub_8096E80 - lsls r0, 24 - cmp r0, 0 - bne _080964DC - movs r0, 0 - b _080964DE - .align 2, 0 -_080964D4: .4byte gUnknown_203B490 -_080964D8: .4byte 0x00000325 -_080964DC: - movs r0, 0x1 -_080964DE: - pop {r1} - bx r1 - thumb_func_end sub_80964B4 - - thumb_func_start sub_80964E4 -sub_80964E4: - push {lr} - ldr r0, _08096504 - ldr r0, [r0] - ldr r1, _08096508 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0809650C - movs r0, 0x36 - bl sub_8096E80 - lsls r0, 24 - cmp r0, 0 - bne _0809650C - movs r0, 0 - b _0809650E - .align 2, 0 -_08096504: .4byte gUnknown_203B490 -_08096508: .4byte 0x00000326 -_0809650C: - movs r0, 0x1 -_0809650E: - pop {r1} - bx r1 - thumb_func_end sub_80964E4 - - thumb_func_start sub_8096514 -sub_8096514: - push {r4,r5,lr} - movs r5, 0 - movs r4, 0 -_0809651A: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_809658C - lsls r0, 24 - cmp r0, 0 - bne _0809652A - adds r5, 0x1 -_0809652A: - adds r4, 0x1 - cmp r4, 0x7 - ble _0809651A - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8096514 - - thumb_func_start sub_8096538 -sub_8096538: - push {r4,r5,lr} - adds r4, r0, 0 - movs r3, 0 - ldr r5, _08096560 - movs r2, 0 -_08096542: - ldr r0, [r5] - adds r0, r2 - adds r1, r0, 0 - adds r1, 0x50 - ldrb r0, [r1] - cmp r0, 0 - bne _08096564 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r3} - stm r1!, {r2,r3} - movs r0, 0 - b _0809656E - .align 2, 0 -_08096560: .4byte gUnknown_203B490 -_08096564: - adds r2, 0x14 - adds r3, 0x1 - cmp r3, 0x7 - ble _08096542 - movs r0, 0x1 -_0809656E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8096538 - - thumb_func_start sub_8096574 -sub_8096574: - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08096588 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, 0x50 - ldr r0, [r2] - adds r0, r1 - bx lr - .align 2, 0 -_08096588: .4byte gUnknown_203B490 - thumb_func_end sub_8096574 - - thumb_func_start sub_809658C -sub_809658C: - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080965AC - ldr r2, [r1] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r2, r1 - adds r2, 0x50 - ldrb r0, [r2] - cmp r0, 0 - beq _080965B0 - movs r0, 0 - b _080965B2 - .align 2, 0 -_080965AC: .4byte gUnknown_203B490 -_080965B0: - movs r0, 0x1 -_080965B2: - pop {r1} - bx r1 - thumb_func_end sub_809658C - - thumb_func_start sub_80965B8 -sub_80965B8: - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r4, _080965F0 - ldr r1, [r4] - lsls r2, r0, 2 - adds r2, r0 - lsls r2, 2 - adds r1, r2 - adds r1, 0x50 - movs r3, 0 - strb r3, [r1] - ldr r0, [r4] - adds r0, r2 - adds r0, 0x54 - movs r1, 0x63 - strb r1, [r0] - ldr r0, [r4] - adds r0, r2 - adds r0, 0x55 - strb r3, [r0] - ldr r0, [r4] - adds r0, r2 - adds r0, 0x61 - strb r3, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080965F0: .4byte gUnknown_203B490 - thumb_func_end sub_80965B8 - - thumb_func_start sub_80965F4 -sub_80965F4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r2, 0 - movs r3, 0 - ldr r0, _0809660C - mov r12, r0 - mov r8, r3 - movs r4, 0 - mov r9, r4 - b _08096636 - .align 2, 0 -_0809660C: .4byte gUnknown_203B490 -_08096610: - cmp r2, r3 - ble _0809662A - mov r1, r12 - ldr r0, [r1] - mov r5, r8 - adds r1, r0, r5 - adds r0, r4 - adds r1, 0x50 - adds r0, 0x50 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r6,r7} - stm r1!, {r6,r7} -_0809662A: - adds r4, 0x14 - movs r0, 0x14 - add r9, r0 - adds r2, 0x1 - add r8, r0 - adds r3, 0x1 -_08096636: - cmp r2, 0x7 - bgt _08096666 - mov r1, r12 - ldr r0, [r1] - adds r0, r4 - adds r0, 0x50 - ldrb r0, [r0] - cmp r0, 0 - bne _08096666 - ldr r6, _08096694 - mov r1, r9 -_0809664C: - adds r1, 0x14 - adds r4, 0x14 - movs r5, 0x14 - add r9, r5 - adds r2, 0x1 - cmp r2, 0x7 - bgt _08096666 - ldr r0, [r6] - adds r0, r1 - adds r0, 0x50 - ldrb r0, [r0] - cmp r0, 0 - beq _0809664C -_08096666: - cmp r2, 0x8 - bne _08096610 - cmp r3, 0x7 - bgt _08096688 - ldr r4, _08096694 - movs r2, 0 - lsls r0, r3, 2 - adds r0, r3 - lsls r1, r0, 2 -_08096678: - ldr r0, [r4] - adds r0, r1 - adds r0, 0x50 - strb r2, [r0] - adds r1, 0x14 - adds r3, 0x1 - cmp r3, 0x7 - ble _08096678 -_08096688: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08096694: .4byte gUnknown_203B490 - thumb_func_end sub_80965F4 - - thumb_func_start sub_8096698 -sub_8096698: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - movs r1, 0 -_080966A6: - adds r6, r1, 0x1 - mov r10, r6 - cmp r6, 0x7 - bgt _08096730 - ldr r0, _08096748 - mov r8, r0 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - mov r9, r0 - lsls r0, r6, 2 - adds r0, r6 - lsls r4, r0, 2 -_080966C0: - mov r2, r8 - ldr r1, [r2] - adds r3, r1, r4 - adds r5, r3, 0 - adds r5, 0x50 - ldrb r0, [r5] - cmp r0, 0 - beq _08096724 - add r1, r9 - mov r12, r1 - mov r0, r12 - adds r0, 0x54 - adds r1, r3, 0 - adds r1, 0x54 - ldrb r2, [r0] - ldrb r0, [r1] - cmp r2, r0 - bhi _080966F6 - cmp r2, r0 - bne _08096724 - mov r0, r12 - adds r0, 0x55 - adds r1, 0x1 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bls _08096724 -_080966F6: - mov r1, sp - mov r0, r12 - adds r0, 0x50 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r3,r7} - stm r1!, {r3,r7} - mov r1, r12 - adds r1, 0x50 - adds r0, r5, 0 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r7} - stm r1!, {r2,r7} - mov r3, r8 - ldr r1, [r3] - adds r1, r4 - adds r1, 0x50 - mov r0, sp - ldm r0!, {r2,r5,r7} - stm r1!, {r2,r5,r7} - ldm r0!, {r3,r5} - stm r1!, {r3,r5} -_08096724: - adds r4, 0x14 - movs r7, 0x1 - add r10, r7 - mov r0, r10 - cmp r0, 0x7 - ble _080966C0 -_08096730: - adds r1, r6, 0 - cmp r1, 0x6 - ble _080966A6 - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08096748: .4byte gUnknown_203B490 - thumb_func_end sub_8096698 - - thumb_func_start sub_809674C -sub_809674C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r0, 0x4 - movs r1, 0x8 - bl RandomRange - mov r8, r0 - ldr r3, _08096864 - movs r2, 0 - movs r1, 0 - movs r7, 0x7 -_08096764: - ldr r0, [r3] - adds r0, r1 - adds r0, 0x50 - strb r2, [r0] - adds r1, 0x14 - subs r7, 0x1 - cmp r7, 0 - bge _08096764 - movs r7, 0 - movs r0, 0xE - bl sub_8097318 - lsls r0, 24 - cmp r0, 0 - beq _080967C0 - movs r0, 0 - bl sub_8096574 - adds r5, r0, 0 - movs r4, 0x2 - strb r4, [r5] - movs r0, 0x6 - strb r0, [r5, 0x1] - movs r0, 0x1 - strb r0, [r5, 0x2] - movs r0, 0x2A - strb r0, [r5, 0x4] - movs r0, 0xA - strb r0, [r5, 0x5] - bl Random - ldr r1, _08096868 - ands r1, r0 - str r1, [r5, 0x8] - movs r1, 0 - movs r0, 0xC2 - lsls r0, 1 - strh r0, [r5, 0xC] - movs r0, 0x38 - strh r0, [r5, 0xE] - strb r1, [r5, 0x10] - strb r4, [r5, 0x11] - movs r0, 0x3A - strb r0, [r5, 0x12] - strb r1, [r5, 0x13] - movs r7, 0x1 -_080967C0: - movs r0, 0xF - bl sub_8097318 - lsls r0, 24 - cmp r0, 0 - beq _0809680A - lsls r0, r7, 24 - lsrs r0, 24 - bl sub_8096574 - adds r5, r0, 0 - movs r0, 0x3 - strb r0, [r5] - movs r0, 0x6 - strb r0, [r5, 0x1] - movs r4, 0x2 - strb r4, [r5, 0x2] - movs r0, 0x35 - strb r0, [r5, 0x4] - movs r0, 0xF - strb r0, [r5, 0x5] - bl Random - ldr r1, _08096868 - ands r1, r0 - str r1, [r5, 0x8] - movs r1, 0 - movs r0, 0x82 - lsls r0, 1 - strh r0, [r5, 0xC] - strh r0, [r5, 0xE] - strb r1, [r5, 0x10] - strb r4, [r5, 0x11] - movs r0, 0x3A - strb r0, [r5, 0x12] - strb r1, [r5, 0x13] - adds r7, 0x1 -_0809680A: - movs r0, 0x1C - bl sub_8097318 - lsls r0, 24 - cmp r0, 0 - beq _08096854 - lsls r0, r7, 24 - lsrs r0, 24 - bl sub_8096574 - adds r5, r0, 0 - movs r0, 0x4 - strb r0, [r5] - movs r0, 0x6 - strb r0, [r5, 0x1] - movs r0, 0x3 - strb r0, [r5, 0x2] - movs r0, 0x1A - strb r0, [r5, 0x4] - movs r0, 0x14 - strb r0, [r5, 0x5] - bl Random - ldr r1, _08096868 - ands r1, r0 - str r1, [r5, 0x8] - movs r1, 0 - ldr r0, _0809686C - strh r0, [r5, 0xC] - strh r0, [r5, 0xE] - strb r1, [r5, 0x10] - movs r0, 0x2 - strb r0, [r5, 0x11] - movs r0, 0x3A - strb r0, [r5, 0x12] - strb r1, [r5, 0x13] - adds r7, 0x1 -_08096854: - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 2 - adds r5, r0, 0 - adds r5, 0x50 - adds r4, r0, 0 - b _08096886 - .align 2, 0 -_08096864: .4byte gUnknown_203B490 -_08096868: .4byte 0x00ffffff -_0809686C: .4byte 0x0000014d -_08096870: - movs r0, 0 - movs r1, 0x4 - bl RandomRange - ldr r1, [r6] - adds r1, r4 - adds r1, 0x61 - strb r0, [r1] - adds r5, 0x14 - adds r4, 0x14 - adds r7, 0x1 -_08096886: - cmp r7, r8 - bgt _0809689A - ldr r6, _080968AC - ldr r0, [r6] - adds r0, r5 - bl sub_8095B28 - lsls r0, 24 - cmp r0, 0 - bne _08096870 -_0809689A: - bl sub_80965F4 - bl sub_8096698 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080968AC: .4byte gUnknown_203B490 - thumb_func_end sub_809674C - - thumb_func_start sub_80968B0 -sub_80968B0: - push {r4,r5,lr} - adds r3, r0, 0 - movs r4, 0 - ldr r0, _08096928 - ldr r0, [r0] - adds r2, r0, 0 - adds r2, 0xF0 -_080968BE: - ldrb r0, [r2] - cmp r0, 0 - beq _0809692C - ldrb r0, [r3, 0x1] - ldrb r1, [r2, 0x1] - cmp r0, r1 - bne _0809692C - ldrb r0, [r3, 0x2] - ldrb r5, [r2, 0x2] - cmp r0, r5 - bne _0809692C - ldrb r0, [r3, 0x4] - ldrb r1, [r2, 0x4] - cmp r0, r1 - bne _0809692C - ldrb r0, [r3, 0x5] - ldrb r5, [r2, 0x5] - cmp r0, r5 - bne _0809692C - ldr r1, [r3, 0x8] - ldr r0, [r2, 0x8] - cmp r1, r0 - bne _0809692C - movs r0, 0xC - ldrsh r1, [r3, r0] - movs r5, 0xC - ldrsh r0, [r2, r5] - cmp r1, r0 - bne _0809692C - movs r0, 0xE - ldrsh r1, [r3, r0] - movs r5, 0xE - ldrsh r0, [r2, r5] - cmp r1, r0 - bne _0809692C - ldrb r0, [r3, 0x10] - ldrb r1, [r2, 0x10] - cmp r0, r1 - bne _0809692C - ldrb r0, [r3, 0x11] - ldrb r5, [r2, 0x11] - cmp r0, r5 - bne _0809692C - ldrb r0, [r3, 0x12] - ldrb r1, [r2, 0x12] - cmp r0, r1 - bne _0809692C - ldrb r0, [r3, 0x13] - ldrb r5, [r2, 0x13] - cmp r0, r5 - bne _0809692C - movs r0, 0x1 - b _08096936 - .align 2, 0 -_08096928: .4byte gUnknown_203B490 -_0809692C: - adds r2, 0x14 - adds r4, 0x1 - cmp r4, 0x7 - ble _080968BE - movs r0, 0 -_08096936: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80968B0 - - thumb_func_start sub_809693C -sub_809693C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r4, r0, 0 - ldrb r0, [r4, 0x4] - mov r9, r0 - ldrb r0, [r4, 0x5] - mov r8, r0 - movs r7, 0 - adds r0, r4, 0 - bl sub_80959C0 - lsls r0, 24 - cmp r0, 0 - bne _08096962 - b _0809699A -_0809695E: - movs r0, 0x1 - b _0809699C -_08096962: - ldrb r0, [r4, 0x1] - cmp r0, 0x2 - bne _0809696A - movs r7, 0x1 -_0809696A: - movs r6, 0 - movs r5, 0xF0 - movs r4, 0 -_08096970: - ldr r0, _080969A8 - ldr r1, [r0] - adds r0, r1, r4 - adds r0, 0xF0 - ldrb r0, [r0] - cmp r0, 0x6 - bne _08096990 - adds r0, r1, r5 - mov r1, r9 - mov r2, r8 - adds r3, r7, 0 - bl sub_8095E38 - lsls r0, 24 - cmp r0, 0 - bne _0809695E -_08096990: - adds r5, 0x14 - adds r4, 0x14 - adds r6, 0x1 - cmp r6, 0x7 - ble _08096970 -_0809699A: - movs r0, 0 -_0809699C: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080969A8: .4byte gUnknown_203B490 - thumb_func_end sub_809693C - - thumb_func_start sub_80969AC -sub_80969AC: - push {r4,r5,lr} - movs r5, 0 - movs r4, 0 -_080969B2: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096ACC - lsls r0, 24 - cmp r0, 0 - bne _080969C2 - adds r5, 0x1 -_080969C2: - adds r4, 0x1 - cmp r4, 0x7 - ble _080969B2 - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80969AC - - thumb_func_start sub_80969D0 -sub_80969D0: - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - movs r4, 0 -_080969DA: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096AB4 - adds r1, r0, 0 - ldrb r0, [r1, 0x4] - cmp r0, r6 - bne _080969FA - ldrb r0, [r1] - cmp r0, 0x6 - beq _080969F8 - cmp r0, 0x8 - beq _080969F8 - cmp r0, 0x9 - bne _080969FA -_080969F8: - adds r5, 0x1 -_080969FA: - adds r4, 0x1 - cmp r4, 0x7 - ble _080969DA - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80969D0 - - thumb_func_start sub_8096A08 -sub_8096A08: - push {r4-r6,lr} - sub sp, 0xC - adds r6, r1, 0 - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 -_08096A14: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096AB4 - adds r2, r0, 0 - ldrb r0, [r2, 0x4] - cmp r0, r5 - bne _08096A68 - ldrb r0, [r2] - cmp r0, 0x6 - bne _08096A68 - ldrb r0, [r2, 0x1] - cmp r0, 0x2 - bne _08096A68 - ldr r1, _08096A60 - ldr r0, [sp, 0x8] - ands r0, r1 - movs r1, 0x4A - orrs r0, r1 - ldr r1, _08096A64 - ands r0, r1 - movs r1, 0x80 - lsls r1, 1 - orrs r0, r1 - str r0, [sp, 0x8] - movs r0, 0xC - ldrsh r1, [r2, r0] - add r0, sp, 0x8 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - adds r0, r6, 0 - movs r2, 0 - movs r3, 0 - bl sub_808CFD0 - movs r0, 0x1 - b _08096A70 - .align 2, 0 -_08096A60: .4byte 0xffffff00 -_08096A64: .4byte 0xffff00ff -_08096A68: - adds r4, 0x1 - cmp r4, 0x7 - ble _08096A14 - movs r0, 0 -_08096A70: - add sp, 0xC - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8096A08 - - thumb_func_start sub_8096A78 -sub_8096A78: - push {r4,r5,lr} - adds r4, r0, 0 - movs r3, 0 - ldr r5, _08096AA0 - movs r2, 0 -_08096A82: - ldr r0, [r5] - adds r0, r2 - adds r1, r0, 0 - adds r1, 0xF0 - ldrb r0, [r1] - cmp r0, 0 - bne _08096AA4 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r3} - stm r1!, {r2,r3} - movs r0, 0 - b _08096AAE - .align 2, 0 -_08096AA0: .4byte gUnknown_203B490 -_08096AA4: - adds r2, 0x14 - adds r3, 0x1 - cmp r3, 0x7 - ble _08096A82 - movs r0, 0x1 -_08096AAE: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8096A78 - - thumb_func_start sub_8096AB4 -sub_8096AB4: - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08096AC8 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, 0xF0 - ldr r0, [r2] - adds r0, r1 - bx lr - .align 2, 0 -_08096AC8: .4byte gUnknown_203B490 - thumb_func_end sub_8096AB4 - - thumb_func_start sub_8096ACC -sub_8096ACC: - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08096AEC - ldr r2, [r1] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r2, r1 - adds r2, 0xF0 - ldrb r0, [r2] - cmp r0, 0 - beq _08096AF0 - movs r0, 0 - b _08096AF2 - .align 2, 0 -_08096AEC: .4byte gUnknown_203B490 -_08096AF0: - movs r0, 0x1 -_08096AF2: - pop {r1} - bx r1 - thumb_func_end sub_8096ACC - - thumb_func_start sub_8096AF8 -sub_8096AF8: - push {r4-r6,lr} - adds r5, r0, 0 - adds r0, r1, 0 - adds r4, r2, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r4, 24 - lsrs r4, 24 - bl sub_8096AB4 - adds r3, r0, 0 - movs r1, 0 - strb r1, [r5] - ldrh r0, [r3, 0xC] - strh r0, [r5, 0x2] - strh r1, [r5, 0x4] - ldrb r0, [r3, 0x4] - cmp r0, r4 - bne _08096B92 - ldrb r0, [r3, 0x1] - cmp r0, 0x4 - bhi _08096B92 - lsls r0, 2 - ldr r1, _08096B30 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08096B30: .4byte _08096B34 - .align 2, 0 -_08096B34: - .4byte _08096B78 - .4byte _08096B84 - .4byte _08096B84 - .4byte _08096B48 - .4byte _08096B78 -_08096B48: - ldrb r0, [r3] - cmp r0, 0x6 - bne _08096B92 - ldr r0, _08096B74 - movs r6, 0x1 - ldr r2, [r0] - movs r4, 0x13 -_08096B56: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08096B6A - ldrb r0, [r2, 0x2] - ldrb r1, [r3, 0x10] - cmp r0, r1 - bne _08096B6A - strb r6, [r5] -_08096B6A: - adds r2, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _08096B56 - b _08096B92 - .align 2, 0 -_08096B74: .4byte gUnknown_203B460 -_08096B78: - ldrb r0, [r3] - cmp r0, 0x9 - bne _08096B92 - movs r0, 0x1 - strb r0, [r5] - b _08096B92 -_08096B84: - ldrb r0, [r3] - cmp r0, 0x9 - bne _08096B92 - movs r0, 0x1 - strb r0, [r5] - ldrh r0, [r3, 0xE] - strh r0, [r5, 0x4] -_08096B92: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8096AF8 - - thumb_func_start sub_8096B98 -sub_8096B98: - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 -_08096BA0: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096AB4 - adds r1, r0, 0 - ldrb r0, [r1] - cmp r0, 0x6 - bne _08096BC2 - ldrb r0, [r1, 0x1] - cmp r0, 0x2 - bne _08096BC2 - ldrb r0, [r1, 0x4] - cmp r0, r5 - bne _08096BC2 - movs r2, 0xE - ldrsh r0, [r1, r2] - b _08096BCA -_08096BC2: - adds r4, 0x1 - cmp r4, 0x7 - ble _08096BA0 - movs r0, 0 -_08096BCA: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8096B98 - - thumb_func_start sub_8096BD0 -sub_8096BD0: - push {r4,r5,lr} - ldr r0, _08096C04 - ldr r0, [r0] - adds r5, r0, 0 - adds r5, 0xF0 - movs r4, 0 -_08096BDC: - ldrb r0, [r5] - cmp r0, 0x9 - bgt _08096BEE - cmp r0, 0x7 - blt _08096BEE - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8096C3C -_08096BEE: - adds r5, 0x14 - adds r4, 0x1 - cmp r4, 0x7 - ble _08096BDC - bl sub_8096C80 - bl sub_8096D24 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08096C04: .4byte gUnknown_203B490 - thumb_func_end sub_8096BD0 - - thumb_func_start sub_8096C08 -sub_8096C08: - push {lr} - adds r3, r0, 0 - ldr r0, _08096C28 - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0xF0 - movs r2, 0 -_08096C16: - ldrb r0, [r1] - cmp r0, 0x4 - bls _08096C2C - ldrb r0, [r1, 0x2] - cmp r0, 0x4 - bne _08096C2C - strb r2, [r3] - movs r0, 0x1 - b _08096C36 - .align 2, 0 -_08096C28: .4byte gUnknown_203B490 -_08096C2C: - adds r1, 0x14 - adds r2, 0x1 - cmp r2, 0x7 - ble _08096C16 - movs r0, 0 -_08096C36: - pop {r1} - bx r1 - thumb_func_end sub_8096C08 - - thumb_func_start sub_8096C3C -sub_8096C3C: - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r3, _08096C78 - ldr r1, [r3] - lsls r2, r0, 2 - adds r2, r0 - lsls r2, 2 - adds r1, r2 - adds r1, 0xF0 - movs r4, 0 - strb r4, [r1] - ldr r0, [r3] - adds r0, r2 - adds r0, 0xF4 - movs r1, 0x63 - strb r1, [r0] - ldr r0, [r3] - adds r0, r2 - adds r0, 0xF5 - strb r4, [r0] - ldr r0, [r3] - adds r0, r2 - ldr r2, _08096C7C - adds r1, r0, r2 - movs r0, 0x5 - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08096C78: .4byte gUnknown_203B490 -_08096C7C: .4byte 0x00000101 - thumb_func_end sub_8096C3C - - thumb_func_start sub_8096C80 -sub_8096C80: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r2, 0 - movs r3, 0 - ldr r0, _08096C98 - mov r12, r0 - mov r8, r3 - movs r4, 0 - mov r9, r4 - b _08096CC2 - .align 2, 0 -_08096C98: .4byte gUnknown_203B490 -_08096C9C: - cmp r2, r3 - ble _08096CB6 - mov r1, r12 - ldr r0, [r1] - mov r5, r8 - adds r1, r0, r5 - adds r0, r4 - adds r1, 0xF0 - adds r0, 0xF0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r6,r7} - stm r1!, {r6,r7} -_08096CB6: - adds r4, 0x14 - movs r0, 0x14 - add r9, r0 - adds r2, 0x1 - add r8, r0 - adds r3, 0x1 -_08096CC2: - cmp r2, 0x7 - bgt _08096CF2 - mov r1, r12 - ldr r0, [r1] - adds r0, r4 - adds r0, 0xF0 - ldrb r0, [r0] - cmp r0, 0 - bne _08096CF2 - ldr r6, _08096D20 - mov r1, r9 -_08096CD8: - adds r1, 0x14 - adds r4, 0x14 - movs r5, 0x14 - add r9, r5 - adds r2, 0x1 - cmp r2, 0x7 - bgt _08096CF2 - ldr r0, [r6] - adds r0, r1 - adds r0, 0xF0 - ldrb r0, [r0] - cmp r0, 0 - beq _08096CD8 -_08096CF2: - cmp r2, 0x8 - bne _08096C9C - cmp r3, 0x7 - bgt _08096D14 - ldr r4, _08096D20 - movs r2, 0 - lsls r0, r3, 2 - adds r0, r3 - lsls r1, r0, 2 -_08096D04: - ldr r0, [r4] - adds r0, r1 - adds r0, 0xF0 - strb r2, [r0] - adds r1, 0x14 - adds r3, 0x1 - cmp r3, 0x7 - ble _08096D04 -_08096D14: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08096D20: .4byte gUnknown_203B490 - thumb_func_end sub_8096C80 - - thumb_func_start sub_8096D24 -sub_8096D24: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - movs r1, 0 -_08096D32: - adds r6, r1, 0x1 - mov r10, r6 - cmp r6, 0x7 - bgt _08096DBC - ldr r0, _08096DD4 - mov r8, r0 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - mov r9, r0 - lsls r0, r6, 2 - adds r0, r6 - lsls r4, r0, 2 -_08096D4C: - mov r1, r8 - ldr r2, [r1] - adds r3, r2, r4 - adds r5, r3, 0 - adds r5, 0xF0 - str r5, [sp, 0x14] - ldrb r0, [r5] - cmp r0, 0 - beq _08096DB0 - add r2, r9 - mov r12, r2 - mov r0, r12 - adds r0, 0xF4 - adds r1, r3, 0 - adds r1, 0xF4 - ldrb r2, [r0] - ldrb r0, [r1] - cmp r2, r0 - bhi _08096D84 - cmp r2, r0 - bne _08096DB0 - mov r0, r12 - adds r0, 0xF5 - adds r1, 0x1 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bls _08096DB0 -_08096D84: - mov r2, r12 - adds r2, 0xF0 - mov r1, sp - adds r0, r2, 0 - ldm r0!, {r3,r5,r7} - stm r1!, {r3,r5,r7} - ldm r0!, {r3,r7} - stm r1!, {r3,r7} - ldr r0, [sp, 0x14] - ldm r0!, {r1,r5,r7} - stm r2!, {r1,r5,r7} - ldm r0!, {r3,r5} - stm r2!, {r3,r5} - mov r7, r8 - ldr r1, [r7] - adds r1, r4 - adds r1, 0xF0 - mov r0, sp - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r7} - stm r1!, {r2,r7} -_08096DB0: - adds r4, 0x14 - movs r3, 0x1 - add r10, r3 - mov r5, r10 - cmp r5, 0x7 - ble _08096D4C -_08096DBC: - adds r1, r6, 0 - cmp r1, 0x6 - ble _08096D32 - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08096DD4: .4byte gUnknown_203B490 - thumb_func_end sub_8096D24 - - thumb_func_start sub_8096DD8 -sub_8096DD8: - ldr r0, _08096DE4 - ldr r0, [r0] - movs r1, 0xC8 - lsls r1, 1 - adds r0, r1 - bx lr - .align 2, 0 -_08096DE4: .4byte gUnknown_203B490 - thumb_func_end sub_8096DD8 - - thumb_func_start sub_8096DE8 -sub_8096DE8: - ldr r0, _08096DF4 - ldr r0, [r0] - movs r1, 0xDC - lsls r1, 1 - adds r0, r1 - bx lr - .align 2, 0 -_08096DF4: .4byte gUnknown_203B490 - thumb_func_end sub_8096DE8 - - thumb_func_start sub_8096DF8 -sub_8096DF8: - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08096E10 - ldr r1, [r1] - movs r2, 0xBC - lsls r2, 2 - adds r1, r2 - adds r1, r0 - movs r0, 0x1 - strb r0, [r1] - bx lr - .align 2, 0 -_08096E10: .4byte gUnknown_203B490 - thumb_func_end sub_8096DF8 - - thumb_func_start sub_8096E14 -sub_8096E14: - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08096E28 - ldr r1, [r1] - movs r2, 0xBC - lsls r2, 2 - adds r1, r2 - adds r1, r0 - ldrb r0, [r1] - bx lr - .align 2, 0 -_08096E28: .4byte gUnknown_203B490 - thumb_func_end sub_8096E14 - - thumb_func_start sub_8096E2C -sub_8096E2C: - push {lr} - movs r3, 0 - ldr r0, _08096E70 - ldr r1, [r0] - movs r2, 0x3 -_08096E36: - ldrb r0, [r1] - cmp r0, 0x1 - bne _08096E48 - ldrb r0, [r1, 0x5] - cmp r3, r0 - bgt _08096E48 - cmp r0, 0x31 - bhi _08096E48 - adds r3, r0, 0x1 -_08096E48: - adds r1, 0x14 - subs r2, 0x1 - cmp r2, 0 - bge _08096E36 - adds r2, r3, 0 - cmp r2, 0x31 - bgt _08096E7A - ldr r0, _08096E70 - ldr r0, [r0] - movs r3, 0xBC - lsls r3, 2 - adds r1, r0, r3 -_08096E60: - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _08096E74 - lsls r0, r2, 24 - lsrs r0, 24 - b _08096E7C - .align 2, 0 -_08096E70: .4byte gUnknown_203B490 -_08096E74: - adds r2, 0x1 - cmp r2, 0x31 - ble _08096E60 -_08096E7A: - movs r0, 0x38 -_08096E7C: - pop {r1} - bx r1 - thumb_func_end sub_8096E2C - - thumb_func_start sub_8096E80 -sub_8096E80: - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - movs r2, 0 - ldr r0, _08096E9C - ldr r1, [r0] -_08096E8C: - ldrb r0, [r1] - cmp r0, 0x1 - bne _08096EA0 - ldrb r0, [r1, 0x5] - cmp r3, r0 - bne _08096EA0 - movs r0, 0x1 - b _08096EAA - .align 2, 0 -_08096E9C: .4byte gUnknown_203B490 -_08096EA0: - adds r1, 0x14 - adds r2, 0x1 - cmp r2, 0x3 - ble _08096E8C - movs r0, 0 -_08096EAA: - pop {r1} - bx r1 - thumb_func_end sub_8096E80 - - thumb_func_start sub_8096EB0 -sub_8096EB0: - ldrb r1, [r0, 0x2] - ldrb r2, [r0, 0x1] - adds r1, r2 - ldrb r3, [r0, 0x4] - adds r2, r1, r3 - ldrb r1, [r0, 0x5] - adds r2, r1 - ldr r1, [r0, 0x8] - lsls r1, 8 - adds r2, r1 - movs r3, 0xC - ldrsh r1, [r0, r3] - lsls r1, 12 - adds r2, r1 - movs r3, 0xE - ldrsh r1, [r0, r3] - lsls r1, 16 - adds r2, r1 - ldrb r1, [r0, 0x10] - lsls r1, 24 - adds r1, r2, r1 - ldrb r3, [r0, 0x11] - adds r2, r1, r3 - ldrb r1, [r0, 0x12] - adds r1, r2, r1 - ldrb r0, [r0, 0x13] - adds r2, r1, r0 - adds r0, r2, 0 - bx lr - thumb_func_end sub_8096EB0 - - thumb_func_start sub_8096EEC -sub_8096EEC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r12, r0 - movs r3, 0xF - ldr r5, _08096F4C - mov r8, r5 - movs r4, 0x8C - lsls r4, 2 -_08096EFE: - mov r0, r8 - ldr r2, [r0] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 2 - adds r1, r2, r1 - subs r3, 0x1 - lsls r0, r3, 1 - adds r0, r3 - lsls r0, 2 - adds r2, r0 - adds r1, r4 - adds r2, r4 - ldm r2!, {r0,r6,r7} - stm r1!, {r0,r6,r7} - cmp r3, 0 - bgt _08096EFE - ldr r2, [r5] - movs r3, 0x8C - lsls r3, 2 - adds r2, r3 - mov r6, r12 - ldr r0, [r6, 0x4] - ldr r1, [r6, 0x8] - str r0, [r2] - str r1, [r2, 0x4] - mov r0, r12 - bl sub_8096EB0 - ldr r1, [r5] - movs r7, 0x8E - lsls r7, 2 - adds r1, r7 - str r0, [r1] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08096F4C: .4byte gUnknown_203B490 - thumb_func_end sub_8096EEC - - thumb_func_start sub_8096F50 -sub_8096F50: - push {r4-r7,lr} - adds r4, r0, 0 - bl sub_8096EB0 - mov r12, r0 - movs r5, 0 - ldr r0, _08096F8C - ldr r7, [r0] - ldrb r6, [r4, 0x4] - movs r3, 0 -_08096F64: - movs r1, 0x8C - lsls r1, 2 - adds r0, r3, r1 - adds r2, r7, r0 - ldrb r0, [r2] - cmp r0, r6 - bne _08096F90 - ldrb r0, [r2, 0x1] - ldrb r1, [r4, 0x5] - cmp r0, r1 - bne _08096F90 - ldr r1, [r2, 0x4] - ldr r0, [r4, 0x8] - cmp r1, r0 - bne _08096F90 - ldr r0, [r2, 0x8] - cmp r0, r12 - bne _08096F90 - movs r0, 0x1 - b _08096F9A - .align 2, 0 -_08096F8C: .4byte gUnknown_203B490 -_08096F90: - adds r3, 0xC - adds r5, 0x1 - cmp r5, 0xF - ble _08096F64 - movs r0, 0 -_08096F9A: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8096F50 - - thumb_func_start sub_8096FA0 -sub_8096FA0: - push {r4-r7,lr} - sub sp, 0x14 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809485C - add r7, sp, 0x10 - ldr r6, _08097020 - movs r5, 0 - movs r4, 0x3 -_08096FB8: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_80971EC - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _08096FB8 - ldr r6, _08097020 - movs r5, 0x50 - movs r4, 0x7 -_08096FD0: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_80971EC - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _08096FD0 - ldr r6, _08097020 - movs r5, 0xF0 - movs r4, 0x7 -_08096FE8: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_80971EC - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _08096FE8 - movs r4, 0 - movs r6, 0x1 - ldr r5, _08097020 -_08097000: - mov r0, sp - adds r1, r7, 0 - movs r2, 0x1 - bl sub_8094924 - ldr r1, [sp, 0x10] - ands r1, r6 - cmp r1, 0 - beq _08097024 - ldr r0, [r5] - movs r1, 0xBC - lsls r1, 2 - adds r0, r1 - adds r0, r4 - strb r6, [r0] - b _08097030 - .align 2, 0 -_08097020: .4byte gUnknown_203B490 -_08097024: - ldr r0, [r5] - movs r2, 0xBC - lsls r2, 2 - adds r0, r2 - adds r0, r4 - strb r1, [r0] -_08097030: - adds r4, 0x1 - cmp r4, 0x37 - ble _08097000 - mov r0, sp - adds r1, r7, 0 - movs r2, 0x1 - bl sub_8094924 - ldr r1, [sp, 0x10] - movs r2, 0x1 - ands r1, r2 - cmp r1, 0 - beq _0809705C - ldr r0, _08097058 - ldr r0, [r0] - movs r1, 0xCA - lsls r1, 2 - adds r0, r1 - strb r2, [r0] - b _08097068 - .align 2, 0 -_08097058: .4byte gUnknown_203B490 -_0809705C: - ldr r0, _080970D4 - ldr r0, [r0] - movs r2, 0xCA - lsls r2, 2 - adds r0, r2 - strb r1, [r0] -_08097068: - ldr r4, _080970D4 - ldr r1, [r4] - movs r0, 0xC8 - lsls r0, 1 - adds r1, r0 - movs r2, 0xA0 - lsls r2, 1 - mov r0, sp - bl sub_8094924 - ldr r1, [r4] - movs r2, 0xDC - lsls r2, 1 - adds r1, r2 - movs r2, 0xF0 - lsls r2, 2 - mov r0, sp - bl sub_8094924 - adds r6, r4, 0 - movs r5, 0x8C - lsls r5, 2 - movs r4, 0xF -_08097096: - ldr r1, [r6] - adds r1, r5 - adds r1, 0x8 - mov r0, sp - movs r2, 0x20 - bl sub_8094924 - ldr r1, [r6] - adds r1, r5 - adds r1, 0x4 - mov r0, sp - movs r2, 0x18 - bl sub_8094924 - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8090314 - adds r5, 0xC - subs r4, 0x1 - cmp r4, 0 - bge _08097096 - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x14 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080970D4: .4byte gUnknown_203B490 - thumb_func_end sub_8096FA0 - - thumb_func_start sub_80970D8 -sub_80970D8: - push {r4-r7,lr} - sub sp, 0x14 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809486C - add r7, sp, 0x10 - ldr r6, _080971E8 - movs r5, 0 - movs r4, 0x3 -_080970F0: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8097270 - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _080970F0 - ldr r6, _080971E8 - movs r5, 0x50 - movs r4, 0x7 -_08097108: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8097270 - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _08097108 - ldr r6, _080971E8 - movs r5, 0xF0 - movs r4, 0x7 -_08097120: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8097270 - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _08097120 - movs r4, 0 -_08097134: - ldr r0, _080971E8 - ldr r0, [r0] - movs r1, 0xBC - lsls r1, 2 - adds r0, r1 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _0809714A - movs r0, 0x1 - negs r0, r0 -_0809714A: - str r0, [sp, 0x10] - mov r0, sp - adds r1, r7, 0 - movs r2, 0x1 - bl sub_809488C - adds r4, 0x1 - cmp r4, 0x37 - ble _08097134 - ldr r0, _080971E8 - ldr r0, [r0] - movs r1, 0xCA - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08097170 - movs r0, 0x1 - negs r0, r0 -_08097170: - str r0, [sp, 0x10] - mov r0, sp - adds r1, r7, 0 - movs r2, 0x1 - bl sub_809488C - ldr r4, _080971E8 - ldr r1, [r4] - movs r0, 0xC8 - lsls r0, 1 - adds r1, r0 - movs r2, 0xA0 - lsls r2, 1 - mov r0, sp - bl sub_809488C - ldr r1, [r4] - movs r0, 0xDC - lsls r0, 1 - adds r1, r0 - movs r2, 0xF0 - lsls r2, 2 - mov r0, sp - bl sub_809488C - adds r6, r4, 0 - movs r5, 0x8C - lsls r5, 2 - movs r4, 0xF -_080971AA: - ldr r1, [r6] - adds r1, r5 - adds r1, 0x8 - mov r0, sp - movs r2, 0x20 - bl sub_809488C - ldr r1, [r6] - adds r1, r5 - adds r1, 0x4 - mov r0, sp - movs r2, 0x18 - bl sub_809488C - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_80902F4 - adds r5, 0xC - subs r4, 0x1 - cmp r4, 0 - bge _080971AA - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x14 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080971E8: .4byte gUnknown_203B490 - thumb_func_end sub_80970D8 - - thumb_func_start sub_80971EC -sub_80971EC: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - bl sub_8094924 - adds r1, r5, 0x1 - adds r0, r4, 0 - movs r2, 0x3 - bl sub_8094924 - adds r1, r5, 0x2 - adds r0, r4, 0 - movs r2, 0x4 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0xC - adds r0, r4, 0 - movs r2, 0x9 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0xE - adds r0, r4, 0 - movs r2, 0x9 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x10 - adds r0, r4, 0 - movs r2, 0x8 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x11 - adds r0, r4, 0 - movs r2, 0x4 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x12 - adds r0, r4, 0 - movs r2, 0x8 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x13 - adds r0, r4, 0 - movs r2, 0x6 - bl sub_8094924 - adds r1, r5, 0 - adds r1, 0x8 - adds r0, r4, 0 - movs r2, 0x18 - bl sub_8094924 - adds r1, r5, 0x4 - adds r0, r4, 0 - bl sub_8090314 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80971EC - - thumb_func_start sub_8097270 -sub_8097270: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - bl sub_809488C - adds r1, r5, 0x1 - adds r0, r4, 0 - movs r2, 0x3 - bl sub_809488C - adds r1, r5, 0x2 - adds r0, r4, 0 - movs r2, 0x4 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0xC - adds r0, r4, 0 - movs r2, 0x9 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0xE - adds r0, r4, 0 - movs r2, 0x9 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x10 - adds r0, r4, 0 - movs r2, 0x8 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x11 - adds r0, r4, 0 - movs r2, 0x4 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x12 - adds r0, r4, 0 - movs r2, 0x8 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x13 - adds r0, r4, 0 - movs r2, 0x6 - bl sub_809488C - adds r1, r5, 0 - adds r1, 0x8 - adds r0, r4, 0 - movs r2, 0x18 - bl sub_809488C - adds r1, r5, 0x4 - adds r0, r4, 0 - bl sub_80902F4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8097270 - - thumb_func_start sub_80972F4 -sub_80972F4: - push {lr} - movs r0, 0 - movs r1, 0x2B - bl sub_80015C0 - movs r0, 0 - movs r1, 0x2C - bl sub_80015C0 - movs r0, 0 - movs r1, 0x2D - bl sub_80015C0 - pop {r0} - bx r0 - thumb_func_end sub_80972F4 - - thumb_func_start nullsub_128 -nullsub_128: - bx lr - thumb_func_end nullsub_128 - - thumb_func_start sub_8097318 -sub_8097318: - push {lr} - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xD - bne _08097326 - movs r0, 0 - b _08097338 -_08097326: - lsls r2, r0, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x2B - bl sub_8001784 - cmp r0, 0 - beq _08097338 - movs r0, 0x1 -_08097338: - pop {r1} - bx r1 - thumb_func_end sub_8097318 - - thumb_func_start sub_809733C -sub_809733C: - push {r4-r6,lr} - lsls r0, 16 - asrs r4, r0, 16 - lsls r1, 24 - lsrs r6, r1, 24 - cmp r4, 0xD - beq _0809737C - lsls r0, r4, 16 - lsrs r5, r0, 16 - movs r0, 0 - movs r1, 0x2C - adds r2, r5, 0 - bl sub_8001784 - cmp r0, 0 - bne _0809737C - movs r0, 0 - movs r1, 0x2B - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_800199C - cmp r6, 0 - beq _0809737C - cmp r4, 0xE - blt _0809737C - cmp r4, 0xF - ble _08097378 - cmp r4, 0x1C - bne _0809737C -_08097378: - bl sub_809674C -_0809737C: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_809733C - - thumb_func_start sub_8097384 -sub_8097384: - push {lr} - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xD - bne _08097392 - movs r0, 0 - b _080973A4 -_08097392: - lsls r2, r0, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x2C - bl sub_8001784 - cmp r0, 0 - beq _080973A4 - movs r0, 0x1 -_080973A4: - pop {r1} - bx r1 - thumb_func_end sub_8097384 - - thumb_func_start sub_80973A8 -sub_80973A8: - push {r4-r6,lr} - lsls r0, 16 - asrs r0, 16 - lsls r1, 24 - lsrs r6, r1, 24 - cmp r0, 0xD - beq _080973EE - lsls r5, r0, 16 - cmp r6, 0 - beq _080973E2 - bl sub_80A26B8 - lsls r0, 16 - asrs r4, r0, 16 - lsrs r2, r5, 16 - movs r0, 0 - movs r1, 0x2B - movs r3, 0 - bl sub_800199C - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - beq _080973E2 - movs r0, 0 - movs r1, 0x12 - adds r2, r4, 0 - bl sub_80018D8 -_080973E2: - lsrs r2, r5, 16 - movs r0, 0 - movs r1, 0x2C - adds r3, r6, 0 - bl sub_800199C -_080973EE: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80973A8 - - thumb_func_start sub_80973F4 -sub_80973F4: - push {lr} - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xD - bne _08097402 - movs r0, 0 - b _08097414 -_08097402: - lsls r2, r0, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x2D - bl sub_8001784 - cmp r0, 0 - beq _08097414 - movs r0, 0x1 -_08097414: - pop {r1} - bx r1 - thumb_func_end sub_80973F4 - - thumb_func_start sub_8097418 -sub_8097418: - push {r4-r7,lr} - lsls r0, 16 - asrs r5, r0, 16 - lsls r1, 24 - lsrs r7, r1, 24 - cmp r5, 0xD - beq _08097470 - lsls r6, r5, 16 - cmp r7, 0 - beq _08097464 - lsrs r2, r6, 16 - movs r0, 0 - movs r1, 0x2C - movs r3, 0 - bl sub_800199C - cmp r5, 0x1E - bgt _08097464 - lsls r0, r5, 3 - ldr r1, _08097478 - adds r4, r0, r1 - ldrb r0, [r4, 0x4] - cmp r0, 0xFF - beq _0809744C - bl sub_8097FA8 -_0809744C: - ldrb r0, [r4, 0x5] - cmp r0, 0xFF - beq _08097456 - bl sub_8097FA8 -_08097456: - cmp r5, 0x9 - bne _08097460 - movs r0, 0x1F - bl sub_8097FA8 -_08097460: - bl sub_8097FF8 -_08097464: - lsrs r2, r6, 16 - movs r0, 0 - movs r1, 0x2D - adds r3, r7, 0 - bl sub_800199C -_08097470: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08097478: .4byte gUnknown_8109994 - thumb_func_end sub_8097418 - - thumb_func_start sub_809747C -sub_809747C: - push {lr} - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xD - beq _08097494 - bl sub_80A270C - lsls r0, 24 - lsrs r0, 24 - bl sub_809009C - b _08097496 -_08097494: - ldr r0, _0809749C -_08097496: - pop {r1} - bx r1 - .align 2, 0 -_0809749C: .4byte gUnknown_8109CA8 - thumb_func_end sub_809747C - - thumb_func_start sub_80974A0 -sub_80974A0: - push {lr} - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xD - beq _080974B8 - bl sub_80A270C - lsls r0, 24 - lsrs r0, 24 - bl sub_809009C - b _080974BA -_080974B8: - ldr r0, _080974C0 -_080974BA: - pop {r1} - bx r1 - .align 2, 0 -_080974C0: .4byte gUnknown_8109CA8 - thumb_func_end sub_80974A0 - - thumb_func_start sub_80974C4 -sub_80974C4: - push {lr} - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1E - ble _080974D8 - ldr r0, _080974D4 - b _080974E0 - .align 2, 0 -_080974D4: .4byte gUnknown_8109CC0 -_080974D8: - lsls r0, 3 - ldr r1, _080974E4 - adds r0, r1 - ldr r0, [r0] -_080974E0: - pop {r1} - bx r1 - .align 2, 0 -_080974E4: .4byte gUnknown_8109994 - thumb_func_end sub_80974C4 - - thumb_func_start sub_80974E8 -sub_80974E8: - push {lr} - movs r0, 0 - movs r1, 0x2E - bl sub_80015C0 - movs r0, 0 - movs r1, 0x2F - bl sub_80015C0 - pop {r0} - bx r0 - thumb_func_end sub_80974E8 - - thumb_func_start nullsub_208 -nullsub_208: - bx lr - thumb_func_end nullsub_208 - - thumb_func_start sub_8097504 -sub_8097504: - push {lr} - lsls r0, 16 - asrs r0, 16 - adds r1, r0, 0 - cmp r0, 0x10 - bgt _08097568 - cmp r0, 0xE - bhi _08097580 - lsls r0, 2 - ldr r1, _08097520 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08097520: .4byte _08097524 - .align 2, 0 -_08097524: - .4byte _08097564 - .4byte _08097564 - .4byte _08097560 - .4byte _08097580 - .4byte _08097580 - .4byte _08097564 - .4byte _08097580 - .4byte _08097564 - .4byte _08097580 - .4byte _08097564 - .4byte _08097560 - .4byte _08097560 - .4byte _08097560 - .4byte _08097574 - .4byte _08097564 -_08097560: - movs r0, 0xE - b _08097576 -_08097564: - movs r0, 0xF - b _08097576 -_08097568: - cmp r1, 0x16 - bgt _08097584 - cmp r1, 0x16 - beq _08097584 - cmp r1, 0x15 - beq _08097584 -_08097574: - movs r0, 0x6 -_08097576: - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _08097584 -_08097580: - movs r0, 0x1 - b _08097586 -_08097584: - movs r0, 0 -_08097586: - pop {r1} - bx r1 - thumb_func_end sub_8097504 - - thumb_func_start sub_809758C -sub_809758C: - push {lr} - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x2E - bl sub_8001784 - cmp r0, 0 - beq _080975A2 - movs r0, 0x1 -_080975A2: - pop {r1} - bx r1 - thumb_func_end sub_809758C - - thumb_func_start sub_80975A8 -sub_80975A8: - push {lr} - adds r2, r0, 0 - adds r3, r1, 0 - lsls r3, 24 - lsrs r3, 24 - lsls r2, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x2E - bl sub_800199C - pop {r0} - bx r0 - thumb_func_end sub_80975A8 - - thumb_func_start sub_80975C4 -sub_80975C4: - push {lr} - lsls r0, 16 - asrs r0, 16 - bl sub_80A2728 - lsls r0, 24 - lsrs r0, 24 - bl sub_809009C - pop {r1} - bx r1 - thumb_func_end sub_80975C4 - - thumb_func_start sub_80975DC -sub_80975DC: - push {lr} - lsls r0, 16 - ldr r1, _08097600 - adds r0, r1 - lsrs r0, 16 - cmp r0, 0x1 - bhi _08097610 - movs r2, 0x1 - negs r2, r2 - movs r0, 0x3 - movs r1, 0xE - bl sub_8001D08 - lsls r0, 24 - cmp r0, 0 - beq _08097608 - ldr r0, _08097604 - b _08097612 - .align 2, 0 -_08097600: .4byte 0xffe90000 -_08097604: .4byte gUnknown_8109CD4 -_08097608: - ldr r0, _0809760C - b _08097612 - .align 2, 0 -_0809760C: .4byte gUnknown_8109CE4 -_08097610: - ldr r0, _08097618 -_08097612: - pop {r1} - bx r1 - .align 2, 0 -_08097618: .4byte gUnknown_8109CF4 - thumb_func_end sub_80975DC - - thumb_func_start sub_809761C -sub_809761C: - push {r4,lr} - movs r4, 0 -_08097620: - lsls r0, r4, 16 - asrs r0, 16 - bl sub_809758C - lsls r0, 24 - cmp r0, 0 - bne _08097632 - movs r0, 0 - b _0809763A -_08097632: - adds r4, 0x1 - cmp r4, 0x10 - ble _08097620 - movs r0, 0x1 -_0809763A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809761C - - thumb_func_start sub_8097640 -sub_8097640: - push {lr} - movs r0, 0 - movs r1, 0x2E - movs r2, 0x1F - bl sub_8001784 - cmp r0, 0 - bne _0809766A - bl sub_809761C - lsls r0, 24 - cmp r0, 0 - beq _0809766A - movs r0, 0 - movs r1, 0x2E - movs r2, 0x1F - movs r3, 0x1 - bl sub_800199C - movs r0, 0x1 - b _0809766C -_0809766A: - movs r0, 0 -_0809766C: - pop {r1} - bx r1 - thumb_func_end sub_8097640 - - thumb_func_start sub_8097670 -sub_8097670: - ldr r1, _08097678 - ldr r0, _0809767C - str r0, [r1] - bx lr - .align 2, 0 -_08097678: .4byte gUnknown_203B494 -_0809767C: .4byte gUnknown_2039778 - thumb_func_end sub_8097670 - - thumb_func_start sub_8097680 -sub_8097680: - ldr r0, _08097684 - bx lr - .align 2, 0 -_08097684: .4byte gUnknown_2039778 - thumb_func_end sub_8097680 - - thumb_func_start sub_8097688 -sub_8097688: - ldr r3, _08097698 - ldr r2, [r3] - ldrb r1, [r0] - strb r1, [r2, 0x10] - ldr r1, [r3] - ldrb r0, [r0, 0x1] - strb r0, [r1, 0x11] - bx lr - .align 2, 0 -_08097698: .4byte gUnknown_203B494 - thumb_func_end sub_8097688 - - thumb_func_start sub_809769C -sub_809769C: - ldr r0, _080976A4 - ldr r0, [r0] - adds r0, 0x10 - bx lr - .align 2, 0 -_080976A4: .4byte gUnknown_203B494 - thumb_func_end sub_809769C - - thumb_func_start sub_80976A8 -sub_80976A8: - push {r4,lr} - ldr r3, _080976F4 - ldr r1, [r3] - movs r0, 0 - str r0, [r1] - strh r0, [r1, 0x14] - strh r0, [r1, 0x16] - strh r0, [r1, 0x18] - adds r2, r1, 0 - adds r2, 0xC0 - str r0, [r2] - str r0, [r1, 0x8] - str r0, [r1, 0xC] - movs r2, 0 - adds r4, r3, 0 - movs r3, 0 -_080976C8: - ldr r0, [r4] - lsls r1, r2, 2 - adds r0, 0x1C - adds r0, r1 - str r3, [r0] - adds r2, 0x1 - cmp r2, 0xD - ble _080976C8 - movs r2, 0 - ldr r4, _080976F4 - movs r3, 0 -_080976DE: - ldr r0, [r4] - lsls r1, r2, 2 - adds r0, 0x8C - adds r0, r1 - str r3, [r0] - adds r2, 0x1 - cmp r2, 0xC - ble _080976DE - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080976F4: .4byte gUnknown_203B494 - thumb_func_end sub_80976A8 - - thumb_func_start sub_80976F8 -sub_80976F8: - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0809770C - ldr r2, [r1] - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - bx lr - .align 2, 0 -_0809770C: .4byte gUnknown_203B494 - thumb_func_end sub_80976F8 - - thumb_func_start sub_8097710 -sub_8097710: - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0809772C - ldr r2, [r1] - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - ands r0, r1 - cmp r0, 0 - bne _08097730 - movs r0, 0 - b _08097732 - .align 2, 0 -_0809772C: .4byte gUnknown_203B494 -_08097730: - movs r0, 0x1 -_08097732: - pop {r1} - bx r1 - thumb_func_end sub_8097710 - - thumb_func_start sub_8097738 -sub_8097738: - lsls r0, 24 - ldr r1, _08097744 - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_08097744: .4byte gUnknown_810B04C - thumb_func_end sub_8097738 - - thumb_func_start sub_8097748 -sub_8097748: - ldr r0, _08097754 - ldr r1, [r0] - movs r0, 0 - str r0, [r1, 0x4] - bx lr - .align 2, 0 -_08097754: .4byte gUnknown_203B494 - thumb_func_end sub_8097748 - - thumb_func_start sub_8097758 -sub_8097758: - push {lr} - ldr r0, _08097770 - ldr r1, [r0] - ldr r0, [r1, 0x4] - adds r0, 0x1 - str r0, [r1, 0x4] - ldr r2, _08097774 - cmp r0, r2 - ble _0809776C - str r2, [r1, 0x4] -_0809776C: - pop {r0} - bx r0 - .align 2, 0 -_08097770: .4byte gUnknown_203B494 -_08097774: .4byte 0x0001869f - thumb_func_end sub_8097758 - - thumb_func_start sub_8097778 -sub_8097778: - ldr r0, _08097780 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bx lr - .align 2, 0 -_08097780: .4byte gUnknown_203B494 - thumb_func_end sub_8097778 - - thumb_func_start sub_8097784 -sub_8097784: - ldr r1, _0809778C - ldr r1, [r1] - str r0, [r1, 0x4] - bx lr - .align 2, 0 -_0809778C: .4byte gUnknown_203B494 - thumb_func_end sub_8097784 - - thumb_func_start sub_8097790 -sub_8097790: - push {lr} - ldr r0, _080977B0 - ldr r1, [r0] - ldr r0, [r1, 0x8] - adds r0, 0x1 - str r0, [r1, 0x8] - ldr r2, _080977B4 - cmp r0, r2 - ble _080977A4 - str r2, [r1, 0x8] -_080977A4: - movs r0, 0x8 - bl sub_80976F8 - pop {r0} - bx r0 - .align 2, 0 -_080977B0: .4byte gUnknown_203B494 -_080977B4: .4byte 0x0001869f - thumb_func_end sub_8097790 - - thumb_func_start sub_80977B8 -sub_80977B8: - ldr r0, _080977C0 - ldr r0, [r0] - ldr r0, [r0, 0x8] - bx lr - .align 2, 0 -_080977C0: .4byte gUnknown_203B494 - thumb_func_end sub_80977B8 - - thumb_func_start sub_80977C4 -sub_80977C4: - ldr r1, _080977CC - ldr r1, [r1] - str r0, [r1, 0x8] - bx lr - .align 2, 0 -_080977CC: .4byte gUnknown_203B494 - thumb_func_end sub_80977C4 - - thumb_func_start sub_80977D0 -sub_80977D0: - push {lr} - ldr r0, _080977F0 - ldr r1, [r0] - ldr r0, [r1, 0xC] - adds r0, 0x1 - str r0, [r1, 0xC] - ldr r2, _080977F4 - cmp r0, r2 - ble _080977E4 - str r2, [r1, 0xC] -_080977E4: - movs r0, 0x9 - bl sub_80976F8 - pop {r0} - bx r0 - .align 2, 0 -_080977F0: .4byte gUnknown_203B494 -_080977F4: .4byte 0x0001869f - thumb_func_end sub_80977D0 - - thumb_func_start sub_80977F8 -sub_80977F8: - ldr r0, _08097800 - ldr r0, [r0] - ldr r0, [r0, 0xC] - bx lr - .align 2, 0 -_08097800: .4byte gUnknown_203B494 - thumb_func_end sub_80977F8 - - thumb_func_start sub_8097804 -sub_8097804: - ldr r1, _0809780C - ldr r1, [r1] - str r0, [r1, 0xC] - bx lr - .align 2, 0 -_0809780C: .4byte gUnknown_203B494 - thumb_func_end sub_8097804 - - thumb_func_start sub_8097810 -sub_8097810: - push {lr} - ldr r0, _08097830 - ldr r2, [r0] - ldrh r3, [r2, 0x14] - movs r0, 0x14 - ldrsh r1, [r2, r0] - ldr r0, _08097834 - cmp r1, r0 - bgt _08097826 - adds r0, r3, 0x1 - strh r0, [r2, 0x14] -_08097826: - movs r0, 0xB - bl sub_80976F8 - pop {r0} - bx r0 - .align 2, 0 -_08097830: .4byte gUnknown_203B494 -_08097834: .4byte 0x0000270e - thumb_func_end sub_8097810 - - thumb_func_start sub_8097838 -sub_8097838: - ldr r0, _08097844 - ldr r0, [r0] - movs r1, 0x14 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_08097844: .4byte gUnknown_203B494 - thumb_func_end sub_8097838 - - thumb_func_start sub_8097848 -sub_8097848: - push {lr} - ldr r0, _08097868 - ldr r2, [r0] - ldrh r3, [r2, 0x16] - movs r0, 0x16 - ldrsh r1, [r2, r0] - ldr r0, _0809786C - cmp r1, r0 - bgt _0809785E - adds r0, r3, 0x1 - strh r0, [r2, 0x16] -_0809785E: - movs r0, 0xA - bl sub_80976F8 - pop {r0} - bx r0 - .align 2, 0 -_08097868: .4byte gUnknown_203B494 -_0809786C: .4byte 0x0000270e - thumb_func_end sub_8097848 - - thumb_func_start sub_8097870 -sub_8097870: - ldr r0, _0809787C - ldr r0, [r0] - movs r1, 0x16 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_0809787C: .4byte gUnknown_203B494 - thumb_func_end sub_8097870 - - thumb_func_start sub_8097880 -sub_8097880: - ldr r0, _0809788C - ldr r0, [r0] - movs r1, 0x18 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_0809788C: .4byte gUnknown_203B494 - thumb_func_end sub_8097880 - - thumb_func_start sub_8097890 -sub_8097890: - push {lr} - ldr r0, _080978B0 - ldr r0, [r0] - adds r2, r0, 0 - adds r2, 0xC0 - ldr r1, [r2] - ldr r0, _080978B4 - cmp r1, r0 - bgt _080978A6 - adds r0, r1, 0x1 - str r0, [r2] -_080978A6: - movs r0, 0xC - bl sub_80976F8 - pop {r0} - bx r0 - .align 2, 0 -_080978B0: .4byte gUnknown_203B494 -_080978B4: .4byte 0x0001869e - thumb_func_end sub_8097890 - - thumb_func_start sub_80978B8 -sub_80978B8: - ldr r0, _080978C4 - ldr r0, [r0] - adds r0, 0xC0 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080978C4: .4byte gUnknown_203B494 - thumb_func_end sub_80978B8 - - thumb_func_start sub_80978C8 -sub_80978C8: - push {lr} - lsls r0, 16 - asrs r0, 16 - bl sub_808E858 - lsls r0, 16 - asrs r3, r0, 16 - ldr r0, _080978FC - ldr r2, [r0] - adds r0, r3, 0 - cmp r3, 0 - bge _080978E2 - adds r0, 0x1F -_080978E2: - asrs r0, 5 - lsls r1, r0, 2 - adds r2, 0x54 - adds r2, r1 - lsls r0, 5 - subs r0, r3, r0 - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - pop {r0} - bx r0 - .align 2, 0 -_080978FC: .4byte gUnknown_203B494 - thumb_func_end sub_80978C8 - - thumb_func_start sub_8097900 -sub_8097900: - push {lr} - lsls r0, 16 - asrs r0, 16 - bl sub_808E858 - lsls r0, 16 - asrs r3, r0, 16 - ldr r0, _08097938 - ldr r2, [r0] - adds r0, r3, 0 - cmp r3, 0 - bge _0809791A - adds r0, 0x1F -_0809791A: - asrs r0, 5 - lsls r1, r0, 2 - adds r2, 0x1C - adds r2, r1 - lsls r0, 5 - subs r0, r3, r0 - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - ands r0, r1 - cmp r0, 0 - bne _0809793C - movs r0, 0 - b _0809793E - .align 2, 0 -_08097938: .4byte gUnknown_203B494 -_0809793C: - movs r0, 0x1 -_0809793E: - pop {r1} - bx r1 - thumb_func_end sub_8097900 - - thumb_func_start sub_8097944 -sub_8097944: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - movs r0, 0x1 - str r0, [sp] - movs r1, 0x1 - str r1, [sp, 0x4] - movs r0, 0xD - bl sub_8097710 - lsls r0, 24 - cmp r0, 0 - bne _08097974 - bl sub_8092614 - lsls r0, 24 - cmp r0, 0 - beq _08097974 - movs r0, 0xD - bl sub_80976F8 -_08097974: - movs r4, 0 - ldr r0, _08097B5C - mov r10, r0 - mov r8, r4 -_0809797C: - ldr r1, _08097B60 - ldr r0, [r1] - mov r1, r8 - adds r2, r1, r0 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080979F6 - movs r0, 0x8 - ldrsh r3, [r2, r0] - mov r1, r10 - ldr r2, [r1] - adds r0, r3, 0 - cmp r3, 0 - bge _0809799E - adds r0, 0x1F -_0809799E: - asrs r0, 5 - lsls r1, r0, 2 - adds r2, 0x1C - adds r2, r1 - lsls r0, 5 - subs r0, r3, r0 - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - ldr r0, _08097B60 - mov r9, r0 - mov r12, r8 - movs r7, 0x1 - movs r6, 0x2C - movs r5, 0x3 -_080979C0: - mov r1, r9 - ldr r0, [r1] - add r0, r12 - adds r3, r0, r6 - ldrb r1, [r3] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _080979EE - mov r0, r10 - ldr r2, [r0] - ldrh r3, [r3, 0x2] - lsrs r0, r3, 5 - lsls r0, 2 - adds r2, 0x8C - adds r2, r0 - movs r0, 0x1F - ands r3, r0 - adds r1, r7, 0 - lsls r1, r3 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] -_080979EE: - adds r6, 0x8 - subs r5, 0x1 - cmp r5, 0 - bge _080979C0 -_080979F6: - movs r1, 0x58 - add r8, r1 - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _0809797C - movs r4, 0 - ldr r1, _08097B64 -_08097A08: - cmp r4, 0 - bne _08097A0E - b _08097B80 -_08097A0E: - ldr r0, _08097B68 - cmp r4, r0 - bne _08097A16 - b _08097B80 -_08097A16: - adds r0, 0x1 - cmp r4, r0 - bne _08097A1E - b _08097B80 -_08097A1E: - adds r0, 0x1 - cmp r4, r0 - bne _08097A26 - b _08097B80 -_08097A26: - adds r0, 0x26 - cmp r4, r0 - bne _08097A2E - b _08097B80 -_08097A2E: - adds r0, 0x1 - cmp r4, r0 - bne _08097A36 - b _08097B80 -_08097A36: - adds r0, 0x1 - cmp r4, r0 - bne _08097A3E - b _08097B80 -_08097A3E: - adds r0, 0x1 - cmp r4, r0 - bne _08097A46 - b _08097B80 -_08097A46: - adds r0, 0x1 - cmp r4, r0 - bne _08097A4E - b _08097B80 -_08097A4E: - adds r0, 0x1 - cmp r4, r0 - bne _08097A56 - b _08097B80 -_08097A56: - cmp r4, r1 - bne _08097A5C - b _08097B80 -_08097A5C: - ldr r0, _08097B5C - ldr r5, [r0] - adds r0, r4, 0 - cmp r4, 0 - bge _08097A68 - adds r0, 0x1F -_08097A68: - asrs r0, 5 - lsls r3, r0, 2 - adds r1, r5, 0 - adds r1, 0x54 - adds r1, r3 - lsls r0, 5 - subs r0, r4, r0 - movs r2, 0x1 - lsls r2, r0 - ldr r0, [r1] - ands r0, r2 - cmp r0, 0 - bne _08097A86 - movs r0, 0 - str r0, [sp, 0x4] -_08097A86: - adds r0, r5, 0 - adds r0, 0x1C - adds r0, r3 - ldr r0, [r0] - ands r0, r2 - cmp r0, 0 - beq _08097B7C - cmp r4, 0x92 - bne _08097A9E - movs r0, 0x10 - bl sub_80976F8 -_08097A9E: - cmp r4, 0x91 - bne _08097AA8 - movs r0, 0x11 - bl sub_80976F8 -_08097AA8: - cmp r4, 0x90 - bne _08097AB2 - movs r0, 0x12 - bl sub_80976F8 -_08097AB2: - movs r0, 0xCF - lsls r0, 1 - cmp r4, r0 - bne _08097AC0 - movs r0, 0x13 - bl sub_80976F8 -_08097AC0: - ldr r0, _08097B6C - cmp r4, r0 - bne _08097ACC - movs r0, 0x14 - bl sub_80976F8 -_08097ACC: - movs r0, 0x86 - lsls r0, 1 - cmp r4, r0 - bne _08097ADA - movs r0, 0x15 - bl sub_80976F8 -_08097ADA: - movs r0, 0x87 - lsls r0, 1 - cmp r4, r0 - bne _08097AE8 - movs r0, 0x16 - bl sub_80976F8 -_08097AE8: - ldr r0, _08097B70 - cmp r4, r0 - bne _08097AF4 - movs r0, 0x17 - bl sub_80976F8 -_08097AF4: - movs r0, 0xCD - lsls r0, 1 - cmp r4, r0 - bne _08097B02 - movs r0, 0x18 - bl sub_80976F8 -_08097B02: - ldr r0, _08097B74 - cmp r4, r0 - bne _08097B0E - movs r0, 0x19 - bl sub_80976F8 -_08097B0E: - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - bne _08097B1C - movs r0, 0x1A - bl sub_80976F8 -_08097B1C: - movs r0, 0x89 - lsls r0, 1 - cmp r4, r0 - bne _08097B2A - movs r0, 0x1B - bl sub_80976F8 -_08097B2A: - movs r0, 0x8A - lsls r0, 1 - cmp r4, r0 - bne _08097B38 - movs r0, 0x1C - bl sub_80976F8 -_08097B38: - cmp r4, 0x97 - bne _08097B42 - movs r0, 0x1D - bl sub_80976F8 -_08097B42: - cmp r4, 0x96 - bne _08097B4C - movs r0, 0x1E - bl sub_80976F8 -_08097B4C: - ldr r0, _08097B78 - cmp r4, r0 - bne _08097B80 - movs r0, 0x1F - bl sub_80976F8 - b _08097B80 - .align 2, 0 -_08097B5C: .4byte gUnknown_203B494 -_08097B60: .4byte gUnknown_203B45C -_08097B64: .4byte 0x000001a7 -_08097B68: .4byte 0x00000179 -_08097B6C: .4byte 0x0000010d -_08097B70: .4byte 0x00000113 -_08097B74: .4byte 0x0000019b -_08097B78: .4byte 0x0000019d -_08097B7C: - movs r1, 0 - str r1, [sp] -_08097B80: - adds r4, 0x1 - ldr r1, _08097C0C - cmp r4, r1 - bgt _08097B8A - b _08097A08 -_08097B8A: - ldr r0, [sp] - cmp r0, 0 - beq _08097B96 - movs r0, 0xF - bl sub_80976F8 -_08097B96: - ldr r1, [sp, 0x4] - cmp r1, 0 - beq _08097BA2 - movs r0, 0xE - bl sub_80976F8 -_08097BA2: - movs r3, 0 - movs r4, 0 -_08097BA6: - cmp r4, 0 - beq _08097BE2 - ldr r0, _08097C10 - cmp r4, r0 - beq _08097BE2 - adds r0, 0x1 - cmp r4, r0 - beq _08097BE2 - adds r0, 0x1 - cmp r4, r0 - beq _08097BE2 - ldr r0, _08097C14 - ldr r2, [r0] - adds r0, r4, 0 - cmp r4, 0 - bge _08097BC8 - adds r0, 0x1F -_08097BC8: - asrs r0, 5 - lsls r1, r0, 2 - adds r2, 0x8C - adds r2, r1 - lsls r0, 5 - subs r0, r4, r0 - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - ands r0, r1 - cmp r0, 0 - beq _08097BE2 - adds r3, 0x1 -_08097BE2: - adds r4, 0x1 - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - ble _08097BA6 - cmp r3, 0 - beq _08097BFC - ldr r0, _08097C14 - ldr r0, [r0] - strh r3, [r0, 0x18] - movs r0, 0x7 - bl sub_80976F8 -_08097BFC: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08097C0C: .4byte 0x000001a7 -_08097C10: .4byte 0x00000163 -_08097C14: .4byte gUnknown_203B494 - thumb_func_end sub_8097944 - - thumb_func_start sub_8097C18 -sub_8097C18: - push {r4-r6,lr} - adds r5, r0, 0 - bl sub_8097944 - ldr r4, _08097CBC - ldr r1, [r4] - adds r1, 0x4 - adds r0, r5, 0 - movs r2, 0x11 - bl sub_809488C - ldr r1, [r4] - adds r1, 0x8 - adds r0, r5, 0 - movs r2, 0x11 - bl sub_809488C - ldr r1, [r4] - adds r1, 0xC - adds r0, r5, 0 - movs r2, 0x11 - bl sub_809488C - ldr r1, [r4] - adds r0, r5, 0 - movs r2, 0x20 - bl sub_809488C - ldr r1, [r4] - adds r1, 0x14 - adds r0, r5, 0 - movs r2, 0xE - bl sub_809488C - ldr r1, [r4] - adds r1, 0x16 - adds r0, r5, 0 - movs r2, 0xE - bl sub_809488C - ldr r1, [r4] - adds r1, 0x18 - adds r0, r5, 0 - movs r2, 0x9 - bl sub_809488C - ldr r1, [r4] - adds r1, 0xC0 - adds r0, r5, 0 - movs r2, 0x11 - bl sub_809488C - ldr r1, [r4] - adds r1, 0x1C - movs r6, 0xE0 - lsls r6, 1 - adds r0, r5, 0 - adds r2, r6, 0 - bl sub_809488C - ldr r1, [r4] - adds r1, 0x54 - adds r0, r5, 0 - adds r2, r6, 0 - bl sub_809488C - ldr r1, [r4] - adds r1, 0x8C - movs r2, 0xD0 - lsls r2, 1 - adds r0, r5, 0 - bl sub_809488C - ldr r1, [r4] - adds r1, 0x10 - adds r0, r5, 0 - bl sub_80902F4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08097CBC: .4byte gUnknown_203B494 - thumb_func_end sub_8097C18 - - thumb_func_start sub_8097CC0 -sub_8097CC0: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r4, _08097D5C - ldr r1, [r4] - adds r1, 0x4 - movs r2, 0x11 - bl sub_8094924 - ldr r1, [r4] - adds r1, 0x8 - adds r0, r5, 0 - movs r2, 0x11 - bl sub_8094924 - ldr r1, [r4] - adds r1, 0xC - adds r0, r5, 0 - movs r2, 0x11 - bl sub_8094924 - ldr r1, [r4] - adds r0, r5, 0 - movs r2, 0x20 - bl sub_8094924 - ldr r1, [r4] - adds r1, 0x14 - adds r0, r5, 0 - movs r2, 0xE - bl sub_8094924 - ldr r1, [r4] - adds r1, 0x16 - adds r0, r5, 0 - movs r2, 0xE - bl sub_8094924 - ldr r1, [r4] - adds r1, 0x18 - adds r0, r5, 0 - movs r2, 0x9 - bl sub_8094924 - ldr r1, [r4] - adds r1, 0xC0 - adds r0, r5, 0 - movs r2, 0x11 - bl sub_8094924 - ldr r1, [r4] - adds r1, 0x1C - movs r6, 0xE0 - lsls r6, 1 - adds r0, r5, 0 - adds r2, r6, 0 - bl sub_8094924 - ldr r1, [r4] - adds r1, 0x54 - adds r0, r5, 0 - adds r2, r6, 0 - bl sub_8094924 - ldr r1, [r4] - adds r1, 0x8C - movs r2, 0xD0 - lsls r2, 1 - adds r0, r5, 0 - bl sub_8094924 - ldr r1, [r4] - adds r1, 0x10 - adds r0, r5, 0 - bl sub_8090314 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08097D5C: .4byte gUnknown_203B494 - thumb_func_end sub_8097CC0 - - thumb_func_start sub_8097D60 -sub_8097D60: - push {lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809486C - mov r0, sp - bl sub_8094A44 - mov r0, sp - bl sub_8095044 - mov r0, sp - bl sub_8097C18 - mov r0, sp - bl sub_8098248 - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x10 - pop {r1} - bx r1 - thumb_func_end sub_8097D60 - - thumb_func_start sub_8097D98 -sub_8097D98: - push {lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl sub_809485C - mov r0, sp - bl sub_8094B18 - mov r0, sp - bl sub_8095080 - mov r0, sp - bl sub_8097CC0 - mov r0, sp - bl sub_8098308 - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x10 - pop {r1} - bx r1 - thumb_func_end sub_8097D98 - - thumb_func_start sub_8097DD0 -sub_8097DD0: - push {lr} - adds r2, r0, 0 - adds r3, r1, 0 - ldr r1, [r2] - ldr r0, [r3] - cmp r1, r0 - bne _08097DEA - ldr r1, [r2, 0x4] - ldr r0, [r3, 0x4] - cmp r1, r0 - bne _08097DEA - movs r0, 0x1 - b _08097DEC -_08097DEA: - movs r0, 0 -_08097DEC: - pop {r1} - bx r1 - thumb_func_end sub_8097DD0 - - thumb_func_start sub_8097DF0 -sub_8097DF0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1F8 - mov r8, r0 - str r1, [sp, 0x1F0] - movs r0, 0 - mov r9, r0 - movs r7, 0 - ldr r1, _08097E3C - ldr r0, [r1] - cmp r0, 0 - beq _08097E6E -_08097E0E: - movs r4, 0 - lsls r5, r7, 3 - lsls r1, r7, 2 - mov r10, r1 - adds r6, r7, 0x1 - ldr r2, _08097E3C - adds r3, r5, r2 - add r1, sp, 0x18C -_08097E1E: - ldr r0, [r3] - adds r0, r4 - ldrb r2, [r0] - cmp r2, 0x23 - bne _08097E40 - ldrb r0, [r0, 0x1] - cmp r0, 0x72 - bne _08097E40 - strb r2, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x1 - movs r0, 0 - strb r0, [r1] - b _08097E50 - .align 2, 0 -_08097E3C: .4byte gUnknown_810E074 -_08097E40: - ldr r0, [r3] - adds r0, r4 - ldrb r0, [r0] - strb r0, [r1] - adds r1, 0x1 - adds r4, 0x1 - cmp r4, 0x63 - ble _08097E1E -_08097E50: - add r0, sp, 0x18C - bl strlen - mov r1, sp - add r1, r10 - str r0, [r1] - adds r7, r6, 0 - cmp r6, 0x62 - bgt _08097E6E - lsls r0, r6, 3 - ldr r1, _08097EB4 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - bne _08097E0E -_08097E6E: - mov r2, r8 - ldrb r0, [r2] - cmp r0, 0 - beq _08097F2C - ldr r3, _08097EB4 -_08097E78: - cmp r0, 0x23 - bne _08097F08 - movs r7, 0 - adds r1, r3, 0 - ldr r0, [r1] - cmp r0, 0 - beq _08097F20 - mov r2, r9 - lsls r0, r2, 2 - ldr r2, [sp, 0x1F0] - adds r0, r2 - mov r10, r0 -_08097E90: - lsls r4, r7, 3 - adds r0, r4, r1 - ldr r0, [r0] - lsls r1, r7, 2 - add r1, sp - ldr r2, [r1] - mov r1, r8 - str r3, [sp, 0x1F4] - bl sub_800B2D4 - lsls r0, 24 - adds r5, r4, 0 - adds r6, r7, 0x1 - ldr r3, [sp, 0x1F4] - cmp r0, 0 - bne _08097EF0 - movs r4, 0 - b _08097EBA - .align 2, 0 -_08097EB4: .4byte gUnknown_810E074 -_08097EB8: - adds r4, 0x1 -_08097EBA: - cmp r4, r9 - bge _08097ED6 - adds r0, r5, r3 - lsls r1, r4, 2 - ldr r2, [sp, 0x1F0] - adds r1, r2 - ldr r1, [r1] - str r3, [sp, 0x1F4] - bl sub_8097DD0 - lsls r0, 24 - ldr r3, [sp, 0x1F4] - cmp r0, 0 - beq _08097EB8 -_08097ED6: - cmp r4, r9 - bne _08097EF0 - mov r0, r9 - cmp r0, 0x3 - bgt _08097EF0 - adds r0, r5, r3 - mov r1, r10 - adds r1, 0x4 - mov r10, r1 - subs r1, 0x4 - stm r1!, {r0} - movs r2, 0x1 - add r9, r2 -_08097EF0: - adds r7, r6, 0 - cmp r6, 0x62 - bgt _08097F20 - ldr r1, _08097F04 - lsls r0, r6, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - bne _08097E90 - b _08097F20 - .align 2, 0 -_08097F04: .4byte gUnknown_810E074 -_08097F08: - mov r0, r8 - ldrb r1, [r0] - adds r0, r1, 0 - adds r0, 0x7F - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bls _08097F1C - cmp r1, 0x87 - bne _08097F20 -_08097F1C: - movs r1, 0x1 - add r8, r1 -_08097F20: - movs r2, 0x1 - add r8, r2 - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0 - bne _08097E78 -_08097F2C: - mov r0, r9 - add sp, 0x1F8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8097DF0 - - thumb_func_start sub_8097F40 -sub_8097F40: - push {lr} - movs r2, 0 - ldr r1, _08097F58 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x2 - bne _08097F50 - movs r2, 0x1 -_08097F50: - adds r0, r2, 0 - pop {r1} - bx r1 - .align 2, 0 -_08097F58: .4byte gUnknown_810ACC0 - thumb_func_end sub_8097F40 - - thumb_func_start sub_8097F5C -sub_8097F5C: - ldr r1, _08097F64 - ldr r0, _08097F68 - str r0, [r1] - bx lr - .align 2, 0 -_08097F64: .4byte gUnknown_203B498 -_08097F68: .4byte gUnknown_2039840 - thumb_func_end sub_8097F5C - - thumb_func_start sub_8097F6C -sub_8097F6C: - ldr r0, _08097F70 - bx lr - .align 2, 0 -_08097F70: .4byte gUnknown_2039840 - thumb_func_end sub_8097F6C - - thumb_func_start sub_8097F74 -sub_8097F74: - push {r4,lr} - ldr r4, _08097FA0 - ldr r0, [r4] - movs r1, 0 - movs r2, 0x64 - bl memset - movs r2, 0 - ldr r3, _08097FA4 -_08097F86: - ldr r0, [r4] - adds r0, 0x58 - adds r0, r2 - ldrb r1, [r3, 0x2] - strb r1, [r0] - adds r3, 0x4 - adds r2, 0x1 - cmp r2, 0xB - ble _08097F86 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08097FA0: .4byte gUnknown_203B498 -_08097FA4: .4byte gUnknown_810AD0C - thumb_func_end sub_8097F74 - - thumb_func_start sub_8097FA8 -sub_8097FA8: - lsls r0, 24 - ldr r1, _08097FCC - ldr r3, [r1] - lsrs r1, r0, 29 - lsls r1, 2 - adds r3, 0x48 - adds r3, r1 - movs r1, 0xF8 - lsls r1, 21 - ands r1, r0 - lsrs r1, 24 - movs r2, 0x1 - lsls r2, r1 - ldr r0, [r3] - orrs r0, r2 - str r0, [r3] - bx lr - .align 2, 0 -_08097FCC: .4byte gUnknown_203B498 - thumb_func_end sub_8097FA8 - - thumb_func_start sub_8097FD0 -sub_8097FD0: - lsls r0, 24 - ldr r1, _08097FF4 - ldr r3, [r1] - lsrs r1, r0, 29 - lsls r1, 2 - adds r3, 0x3C - adds r3, r1 - movs r1, 0xF8 - lsls r1, 21 - ands r1, r0 - lsrs r1, 24 - movs r2, 0x1 - lsls r2, r1 - ldr r0, [r3] - orrs r0, r2 - str r0, [r3] - bx lr - .align 2, 0 -_08097FF4: .4byte gUnknown_203B498 - thumb_func_end sub_8097FD0 - - thumb_func_start sub_8097FF8 -sub_8097FF8: - push {r4-r7,lr} - movs r4, 0 - ldr r6, _08098040 - movs r7, 0x1 -_08098000: - ldr r5, [r6] - adds r0, r4, 0 - cmp r4, 0 - bge _0809800A - adds r0, 0x1F -_0809800A: - asrs r0, 5 - lsls r3, r0, 2 - adds r1, r5, 0 - adds r1, 0x48 - adds r1, r3 - lsls r0, 5 - subs r0, r4, r0 - adds r2, r7, 0 - lsls r2, r0 - ldr r0, [r1] - ands r0, r2 - cmp r0, 0 - beq _08098030 - adds r1, r5, 0 - adds r1, 0x3C - adds r1, r3 - ldr r0, [r1] - orrs r0, r2 - str r0, [r1] -_08098030: - adds r4, 0x1 - cmp r4, 0x3F - ble _08098000 - bl sub_8098080 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08098040: .4byte gUnknown_203B498 - thumb_func_end sub_8097FF8 - - thumb_func_start sub_8098044 -sub_8098044: - push {r4,r5,lr} - lsls r0, 24 - ldr r1, _0809807C - ldr r3, [r1] - lsrs r5, r0, 29 - lsls r5, 2 - adds r4, r3, 0 - adds r4, 0x3C - adds r4, r5 - movs r1, 0xF8 - lsls r1, 21 - ands r1, r0 - lsrs r1, 24 - movs r2, 0x1 - lsls r2, r1 - mvns r2, r2 - ldr r0, [r4] - ands r0, r2 - str r0, [r4] - adds r3, 0x48 - adds r3, r5 - ldr r0, [r3] - ands r0, r2 - str r0, [r3] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809807C: .4byte gUnknown_203B498 - thumb_func_end sub_8098044 - - thumb_func_start sub_8098080 -sub_8098080: - push {r4,lr} - movs r2, 0 - ldr r4, _080980A0 - movs r3, 0 -_08098088: - ldr r0, [r4] - lsls r1, r2, 2 - adds r0, 0x48 - adds r0, r1 - str r3, [r0] - adds r2, 0x1 - cmp r2, 0x2 - ble _08098088 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080980A0: .4byte gUnknown_203B498 - thumb_func_end sub_8098080 - - thumb_func_start sub_80980A4 -sub_80980A4: - ldr r0, _080980B0 - ldr r2, [r0] - ldrb r0, [r2] - movs r1, 0x1 - strb r1, [r2] - bx lr - .align 2, 0 -_080980B0: .4byte gUnknown_203B498 - thumb_func_end sub_80980A4 - - thumb_func_start sub_80980B4 -sub_80980B4: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - adds r3, r1, 0 - ldr r0, _080980F8 - cmp r1, r0 - beq _080980F4 - adds r0, 0x1 - cmp r1, r0 - beq _080980F4 - adds r0, 0x1 - cmp r1, r0 - beq _080980F4 - ldr r0, _080980FC - ldr r2, [r0] - adds r0, r1, 0 - cmp r1, 0 - bge _080980DA - adds r0, 0x1F -_080980DA: - asrs r0, 5 - lsls r1, r0, 2 - adds r2, 0x4 - adds r2, r1 - lsls r0, 5 - subs r0, r3, r0 - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] -_080980F4: - pop {r0} - bx r0 - .align 2, 0 -_080980F8: .4byte 0x000001a5 -_080980FC: .4byte gUnknown_203B498 - thumb_func_end sub_80980B4 - - thumb_func_start sub_8098100 -sub_8098100: - push {lr} - lsls r1, r0, 24 - lsrs r3, r1, 24 - cmp r3, 0x3F - bls _0809810E - movs r0, 0 - b _0809812C -_0809810E: - ldr r0, _08098130 - ldr r2, [r0] - lsrs r0, r1, 29 - lsls r0, 2 - adds r2, 0x3C - adds r2, r0 - movs r0, 0x1F - ands r0, r3 - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - ands r0, r1 - cmp r0, 0 - beq _0809812C - movs r0, 0x1 -_0809812C: - pop {r1} - bx r1 - .align 2, 0 -_08098130: .4byte gUnknown_203B498 - thumb_func_end sub_8098100 - - thumb_func_start sub_8098134 -sub_8098134: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - adds r3, r1, 0 - ldr r0, _0809816C - ldr r2, [r0] - adds r0, r1, 0 - cmp r1, 0 - bge _08098148 - adds r0, 0x1F -_08098148: - asrs r0, 5 - lsls r1, r0, 2 - adds r2, 0x4 - adds r2, r1 - lsls r0, 5 - subs r0, r3, r0 - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - ands r0, r1 - cmp r0, 0 - beq _08098166 - movs r0, 0x1 -_08098166: - pop {r1} - bx r1 - .align 2, 0 -_0809816C: .4byte gUnknown_203B498 - thumb_func_end sub_8098134 - - thumb_func_start sub_8098170 -sub_8098170: - push {lr} - adds r3, r0, 0 - ldr r0, _0809819C - ldr r2, [r0] - adds r0, r3, 0 - cmp r3, 0 - bge _08098180 - adds r0, 0x1F -_08098180: - asrs r0, 5 - lsls r1, r0, 2 - adds r2, 0x54 - adds r2, r1 - lsls r0, 5 - subs r0, r3, r0 - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - pop {r0} - bx r0 - .align 2, 0 -_0809819C: .4byte gUnknown_203B498 - thumb_func_end sub_8098170 - - thumb_func_start sub_80981A0 -sub_80981A0: - push {lr} - adds r3, r0, 0 - cmp r3, 0x1E - ble _080981AC - movs r0, 0 - b _080981D4 -_080981AC: - ldr r0, _080981D8 - ldr r2, [r0] - adds r1, r3, 0 - cmp r3, 0 - bge _080981B8 - adds r1, 0x1F -_080981B8: - asrs r1, 5 - lsls r0, r1, 2 - adds r2, 0x54 - adds r2, r0 - lsls r1, 5 - subs r1, r3, r1 - movs r0, 0x1 - lsls r0, r1 - ldr r2, [r2] - ands r2, r0 - cmp r2, 0 - beq _080981D2 - movs r2, 0x1 -_080981D2: - adds r0, r2, 0 -_080981D4: - pop {r1} - bx r1 - .align 2, 0 -_080981D8: .4byte gUnknown_203B498 - thumb_func_end sub_80981A0 - - thumb_func_start sub_80981DC -sub_80981DC: - push {r4,r5,lr} - lsls r0, 16 - asrs r3, r0, 16 - movs r1, 0 - ldr r4, _080981FC - ldr r2, _08098200 -_080981E8: - movs r5, 0 - ldrsh r0, [r2, r5] - cmp r0, r3 - bne _08098204 - ldr r0, [r4] - adds r0, 0x58 - adds r0, r1 - ldrb r0, [r0] - b _0809820E - .align 2, 0 -_080981FC: .4byte gUnknown_203B498 -_08098200: .4byte gUnknown_810AD0C -_08098204: - adds r2, 0x4 - adds r1, 0x1 - cmp r1, 0xB - ble _080981E8 - movs r0, 0x1 -_0809820E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80981DC - - thumb_func_start sub_8098214 -sub_8098214: - push {r4-r6,lr} - lsls r0, 16 - asrs r3, r0, 16 - movs r1, 0 - ldr r5, _08098240 - movs r4, 0x1 - ldr r2, _08098244 -_08098222: - movs r6, 0 - ldrsh r0, [r2, r6] - cmp r0, r3 - bne _08098232 - ldr r0, [r5] - adds r0, 0x58 - adds r0, r1 - strb r4, [r0] -_08098232: - adds r2, 0x4 - adds r1, 0x1 - cmp r1, 0xB - ble _08098222 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08098240: .4byte gUnknown_203B498 -_08098244: .4byte gUnknown_810AD0C - thumb_func_end sub_8098214 - - thumb_func_start sub_8098248 -sub_8098248: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - adds r7, r0, 0 - mov r5, sp - adds r5, 0x3 - movs r0, 0xFF - strb r0, [r5] - add r4, sp, 0x4 - movs r0, 0 - strb r0, [r4] - ldr r0, _08098300 - ldr r1, [r0] - adds r0, r7, 0 - movs r2, 0x1 - bl sub_809488C - movs r6, 0 - mov r9, r5 - mov r8, r4 - mov r4, sp - adds r4, 0x1 - mov r5, sp - adds r5, 0x2 -_0809827C: - lsls r0, r6, 16 - asrs r0, 16 - bl sub_8098134 - mov r1, sp - strb r0, [r1] - adds r0, r7, 0 - movs r2, 0x1 - bl sub_809488C - adds r6, 0x1 - ldr r0, _08098304 - cmp r6, r0 - ble _0809827C - movs r6, 0 -_0809829A: - lsls r0, r6, 24 - lsrs r0, 24 - bl sub_8098100 - strb r0, [r4] - adds r0, r7, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_809488C - adds r6, 0x1 - cmp r6, 0x3F - ble _0809829A - movs r6, 0 - adds r4, r5, 0 -_080982B8: - adds r0, r6, 0 - bl sub_80981A0 - strb r0, [r4] - adds r0, r7, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_809488C - adds r6, 0x1 - cmp r6, 0x1E - ble _080982B8 - movs r6, 0 -_080982D2: - ldr r0, _08098300 - ldr r0, [r0] - adds r0, 0x58 - adds r0, r6 - ldrb r0, [r0] - mov r1, r8 - cmp r0, 0 - beq _080982E4 - mov r1, r9 -_080982E4: - adds r0, r7, 0 - movs r2, 0x1 - bl sub_809488C - adds r6, 0x1 - cmp r6, 0xB - ble _080982D2 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08098300: .4byte gUnknown_203B498 -_08098304: .4byte 0x000001a7 - thumb_func_end sub_8098248 - - thumb_func_start sub_8098308 -sub_8098308: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r6, r0, 0 - ldr r4, _080983D0 - ldr r0, [r4] - movs r1, 0 - movs r2, 0x64 - bl memset - ldr r1, [r4] - adds r0, r6, 0 - movs r2, 0x1 - bl sub_8094924 - movs r4, 0 - mov r5, sp - adds r5, 0x1 - mov r7, sp - adds r7, 0x2 - movs r0, 0x3 - add r0, sp - mov r8, r0 -_08098338: - adds r0, r6, 0 - mov r1, sp - movs r2, 0x1 - bl sub_8094924 - mov r0, sp - ldrb r0, [r0] - cmp r0, 0 - beq _08098352 - lsls r0, r4, 16 - asrs r0, 16 - bl sub_80980B4 -_08098352: - adds r4, 0x1 - ldr r0, _080983D4 - cmp r4, r0 - ble _08098338 - movs r4, 0 -_0809835C: - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_8094924 - ldrb r0, [r5] - cmp r0, 0 - beq _08098374 - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8097FA8 -_08098374: - adds r4, 0x1 - cmp r4, 0x3F - ble _0809835C - movs r4, 0 - adds r5, r7, 0 -_0809837E: - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_8094924 - ldrb r0, [r5] - cmp r0, 0 - beq _08098394 - adds r0, r4, 0 - bl sub_8098170 -_08098394: - adds r4, 0x1 - cmp r4, 0x1E - ble _0809837E - movs r4, 0 -_0809839C: - adds r0, r6, 0 - mov r1, r8 - movs r2, 0x1 - bl sub_8094924 - ldr r0, _080983D0 - ldr r1, [r0] - adds r1, 0x58 - adds r1, r4 - mov r0, sp - adds r0, 0x3 - ldrb r2, [r0] - movs r0, 0x1 - ands r0, r2 - strb r0, [r1] - adds r4, 0x1 - cmp r4, 0xB - ble _0809839C - bl sub_8097FF8 - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080983D0: .4byte gUnknown_203B498 -_080983D4: .4byte 0x000001a7 - thumb_func_end sub_8098308 - - thumb_func_start sub_80983D8 -sub_80983D8: - push {r4,lr} - movs r2, 0 - ldrsh r3, [r1, r2] - movs r4, 0 - ldrsh r2, [r0, r4] - subs r2, r3, r2 - movs r3, 0x2 - ldrsh r1, [r1, r3] - movs r4, 0x2 - ldrsh r0, [r0, r4] - subs r1, r0 - cmp r2, 0 - bne _080983FA - cmp r1, 0 - bne _080983FA - movs r0, 0 - b _08098428 -_080983FA: - cmp r2, 0 - ble _08098400 - movs r2, 0x1 -_08098400: - cmp r1, 0 - ble _08098406 - movs r1, 0x1 -_08098406: - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - bgt _08098410 - adds r2, r0, 0 -_08098410: - cmp r1, r0 - bgt _08098416 - adds r1, r0, 0 -_08098416: - ldr r3, _08098430 - adds r2, 0x1 - adds r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - adds r0, r2 - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] -_08098428: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08098430: .4byte gUnknown_8115E94 - thumb_func_end sub_80983D8 - - thumb_func_start sub_8098434 -sub_8098434: - push {r4,lr} - adds r3, r0, 0 - adds r4, r1, 0 - movs r0, 0 - ldrsh r1, [r3, r0] - movs r2, 0 - ldrsh r0, [r4, r2] - subs r2, r1, r0 - cmp r2, 0 - bge _0809844A - negs r2, r2 -_0809844A: - movs r0, 0x2 - ldrsh r1, [r3, r0] - movs r3, 0x2 - ldrsh r0, [r4, r3] - subs r0, r1, r0 - cmp r0, 0 - bge _0809845A - negs r0, r0 -_0809845A: - cmp r0, r2 - bge _08098460 - adds r0, r2, 0 -_08098460: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8098434 - - thumb_func_start xxx_script_related_8098468 -xxx_script_related_8098468: - push {r4-r7,lr} - sub sp, 0x8 - ldr r1, _08098494 - str r0, [r1] - ldr r4, _08098498 - movs r2, 0 - strb r2, [r4] - ldr r3, _0809849C - movs r1, 0x1 - strb r1, [r3] - ldr r1, _080984A0 - strb r2, [r1] - subs r0, 0xD - adds r2, r1, 0 - cmp r0, 0x4 - bhi _08098504 - lsls r0, 2 - ldr r1, _080984A4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08098494: .4byte gUnknown_20398B4 -_08098498: .4byte gUnknown_20398B9 -_0809849C: .4byte gUnknown_20398B8 -_080984A0: .4byte gUnknown_20398BA -_080984A4: .4byte _080984A8 - .align 2, 0 -_080984A8: - .4byte _080984BC - .4byte _080984C8 - .4byte _080984CE - .4byte _080984D4 - .4byte _080984FC -_080984BC: - movs r1, 0x1 - strb r1, [r2] - movs r0, 0 - strb r0, [r3] - strb r1, [r4] - b _08098504 -_080984C8: - movs r0, 0x1 - strb r0, [r3] - b _08098502 -_080984CE: - movs r0, 0x1 - strb r0, [r3] - b _08098502 -_080984D4: - add r2, sp, 0x4 - movs r0, 0x3 - mov r1, sp - bl sub_8001B88 - ldr r2, _080984F4 - movs r1, 0 - ldr r0, [sp] - cmp r0, 0 - bne _080984EA - movs r1, 0x1 -_080984EA: - strb r1, [r2] - ldr r1, _080984F8 - movs r0, 0x1 - strb r0, [r1] - b _08098504 - .align 2, 0 -_080984F4: .4byte gUnknown_20398B8 -_080984F8: .4byte gUnknown_20398B9 -_080984FC: - movs r0, 0 - strb r0, [r3] - movs r0, 0x1 -_08098502: - strb r0, [r4] -_08098504: - bl sub_801180C - ldr r0, _080985B0 - ldrb r0, [r0] - cmp r0, 0 - bne _08098522 - movs r0, 0xD - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _08098522 - movs r0, 0x10 - bl sub_80118C4 -_08098522: - ldr r1, _080985B4 - ldr r2, _080985B8 - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0 - bl xxx_update_some_bg_tiles - bl sub_8099648 - bl sub_809975C - bl sub_809D0AC - bl sub_80A7744 - bl sub_809D490 - bl sub_80A62F0 - bl sub_809C5C4 - bl sub_809A560 - bl sub_809CB50 - bl sub_80A4A7C - bl nullsub_117 - bl sub_80AD990 - bl sub_80A77F8 - bl sub_80ABB54 - bl sub_80ACB90 - bl sub_809A62C - ldr r0, _080985BC - movs r1, 0 - strb r1, [r0] - ldr r0, _080985C0 - strb r1, [r0] - ldr r6, _080985C4 - movs r0, 0x1 - str r0, [r6] - ldr r1, _080985C8 - movs r0, 0 - str r0, [r1] - ldr r0, _080985CC - movs r4, 0x1 - negs r4, r4 - str r4, [r0] - ldr r5, _080985D0 - movs r0, 0 - movs r1, 0xD - bl sub_8001658 - strh r0, [r5] - movs r0, 0 - movs r1, 0xE - bl sub_8001658 - ldr r1, _080985D4 - str r0, [r1] - ldr r0, _080985D8 - strh r4, [r0] - adds r7, r4, 0 - ldr r0, [r6] - b _08098988 - .align 2, 0 -_080985B0: .4byte gUnknown_20398B9 -_080985B4: .4byte gUnknown_2026E4E -_080985B8: .4byte 0x00000808 -_080985BC: .4byte gUnknown_203B49C -_080985C0: .4byte gUnknown_203B49D -_080985C4: .4byte gUnknown_20398A8 -_080985C8: .4byte gUnknown_20398AC -_080985CC: .4byte gUnknown_20398B0 -_080985D0: .4byte gUnknown_20398BE -_080985D4: .4byte gUnknown_20398C0 -_080985D8: .4byte gUnknown_20398C4 -_080985DC: - movs r0, 0x1 - negs r0, r0 - bl sub_809A71C - bl sub_809A76C - bl sub_809977C - ldr r0, _08098600 - ldr r0, [r0] - cmp r0, 0x11 - bls _080985F6 - b _08098756 -_080985F6: - lsls r0, 2 - ldr r1, _08098604 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08098600: .4byte gUnknown_20398B4 -_08098604: .4byte _08098608 - .align 2, 0 -_08098608: - .4byte _08098650 - .4byte _08098756 - .4byte _08098660 - .4byte _08098660 - .4byte _08098756 - .4byte _08098666 - .4byte _08098756 - .4byte _08098756 - .4byte _08098756 - .4byte _0809866A - .4byte _0809866A - .4byte _0809866A - .4byte _0809866A - .4byte _0809870C - .4byte _08098748 - .4byte _0809874C - .4byte _08098750 - .4byte _08098754 -_08098650: - bl sub_8098C58 - ldr r1, _0809865C - movs r0, 0x1 - str r0, [r1] - b _08098756 - .align 2, 0 -_0809865C: .4byte gUnknown_20398B4 -_08098660: - bl sub_8001D88 - b _08098756 -_08098666: - movs r7, 0x70 - b _08098756 -_0809866A: - ldr r0, _080986BC - ldr r2, [r0] - movs r0, 0 - movs r1, 0x16 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x25 - movs r2, 0 - bl sub_80018D8 - bl sub_8098C58 - movs r0, 0 - movs r1, 0x15 - movs r2, 0x1 - movs r3, 0x2 - bl sub_800226C - movs r0, 0 - movs r1, 0x13 - bl sub_8001658 - lsls r0, 16 - asrs r4, r0, 16 - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - beq _08098756 - cmp r4, 0x51 - bne _080986C0 - movs r0, 0 - movs r1, 0x14 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - bl sub_80A2608 - b _080986C6 - .align 2, 0 -_080986BC: .4byte gUnknown_20398B4 -_080986C0: - adds r0, r4, 0 - bl sub_80A2608 -_080986C6: - movs r1, 0xA - ldrsh r7, [r0, r1] - ldr r5, _08098700 - ldr r0, [r5] - cmp r0, 0x9 - bne _080986E0 - lsls r2, r4, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x31 - movs r3, 0x1 - bl sub_800199C -_080986E0: - ldr r0, [r5] - bl sub_8098FCC - lsls r0, 16 - asrs r1, r0, 16 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08098756 - ldr r0, _08098704 - strh r1, [r0] - ldr r1, _08098708 - movs r0, 0 - str r0, [r1] - b _08098756 - .align 2, 0 -_08098700: .4byte gUnknown_20398B4 -_08098704: .4byte gUnknown_20398BE -_08098708: .4byte gUnknown_20398C0 -_0809870C: - bl sub_8098C58 - ldr r1, _08098744 - movs r0, 0x1 - str r0, [r1] - movs r0, 0 - movs r1, 0x18 - movs r2, 0x1 - bl sub_80018D8 - movs r0, 0 - movs r1, 0xF - movs r2, 0 - bl sub_80018D8 - movs r0, 0 - movs r1, 0xD - movs r2, 0 - bl sub_80018D8 - movs r0, 0 - movs r1, 0xE - movs r2, 0 - bl sub_80018D8 - movs r7, 0x71 - b _08098756 - .align 2, 0 -_08098744: .4byte gUnknown_20398B4 -_08098748: - movs r7, 0x73 - b _08098756 -_0809874C: - movs r7, 0x74 - b _08098756 -_08098750: - movs r7, 0x75 - b _08098756 -_08098754: - movs r7, 0x76 -_08098756: - ldr r0, _08098790 - ldrb r0, [r0] - cmp r0, 0 - bne _080987C0 - movs r0, 0 - movs r1, 0xD - bl sub_8001658 - adds r5, r0, 0 - ldr r4, _08098794 - ldr r2, [r4] - movs r0, 0 - movs r1, 0x18 - bl sub_80018D8 - ldr r4, [r4] - cmp r4, 0x1 - beq _080987A6 - cmp r4, 0x3 - bne _0809879C - ldr r0, _08098798 - movs r1, 0 - ldrsh r2, [r0, r1] - movs r0, 0 - movs r1, 0xF - bl sub_80018D8 - b _080987A6 - .align 2, 0 -_08098790: .4byte gUnknown_20398B9 -_08098794: .4byte gUnknown_20398B4 -_08098798: .4byte gUnknown_20398BE -_0809879C: - movs r0, 0 - movs r1, 0xF - adds r2, r5, 0 - bl sub_80018D8 -_080987A6: - ldr r0, _0809882C - movs r1, 0 - ldrsh r2, [r0, r1] - movs r0, 0 - movs r1, 0xD - bl sub_80018D8 - ldr r0, _08098830 - ldr r2, [r0] - movs r0, 0 - movs r1, 0xE - bl sub_80018D8 -_080987C0: - ldr r1, _08098834 - movs r0, 0x2 - str r0, [r1] - ldr r0, _08098838 - movs r1, 0 - str r1, [r0] - ldr r0, _0809883C - str r1, [r0] - ldr r0, _08098840 - movs r4, 0x1 - negs r4, r4 - str r4, [r0] - ldr r2, _08098844 - ldr r1, _0809882C - ldrh r0, [r1] - strh r0, [r2] - strh r4, [r1] - bl sub_809977C - bl sub_809D4B0 - adds r0, r4, 0 - bl GroundSprite_Reset - bl sub_809C63C - bl sub_809A62C - bl sub_80A4AEC - bl sub_809D0BC - bl sub_80AD9D0 - bl sub_80A786C - bl sub_80ABB98 - bl sub_80ACBD4 - bl sub_809C658 - bl nullsub_16 - bl sub_8097944 - cmp r7, r4 - beq _08098848 - adds r0, r7, 0 - movs r1, 0 - bl GroundMap_ExecuteEvent - b _08098850 - .align 2, 0 -_0809882C: .4byte gUnknown_20398BE -_08098830: .4byte gUnknown_20398C0 -_08098834: .4byte gUnknown_20398B4 -_08098838: .4byte gUnknown_20398A8 -_0809883C: .4byte gUnknown_20398AC -_08098840: .4byte gUnknown_20398B0 -_08098844: .4byte gUnknown_20398BC -_08098848: - movs r0, 0x66 - movs r1, 0 - bl GroundMap_ExecuteEvent -_08098850: - bl GroundMap_Action - movs r0, 0 - movs r1, 0 - bl sub_8005838 - bl sub_80060EC - bl xxx_call_update_bg_sound_input -_08098864: - bl xxx_call_update_bg_sound_input - bl sub_80A6E68 - ldr r0, _08098890 - ldr r0, [r0] - cmp r0, 0 - beq _080988B2 - ldr r1, _08098894 - ldr r0, [r1] - cmp r0, 0 - ble _0809889C - subs r0, 0x1 - str r0, [r1] - cmp r0, 0 - bgt _080988F8 - ldr r0, _08098898 - ldr r0, [r0] - bl sub_80999D4 - b _080988F8 - .align 2, 0 -_08098890: .4byte gUnknown_20398A8 -_08098894: .4byte gUnknown_20398AC -_08098898: .4byte gUnknown_20398B0 -_0809889C: - bl sub_8099B94 - lsls r0, 24 - cmp r0, 0 - bne _080988F8 - bl sub_809C740 - lsls r0, 24 - cmp r0, 0 - bne _0809897C - b _080988F8 -_080988B2: - ldr r0, _08098968 - ldrb r0, [r0] - cmp r0, 0 - beq _080988F8 - ldr r0, _0809896C - ldrb r0, [r0] - cmp r0, 0 - bne _080988F8 - bl sub_809AFAC - lsls r0, 24 - cmp r0, 0 - bne _080988F8 - ldr r0, _08098970 - ldrh r0, [r0, 0x2] - ldr r2, _08098974 - adds r1, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _080988E4 - bl sub_80048BC - lsls r0, 24 - cmp r0, 0 - beq _080988F8 -_080988E4: - movs r0, 0x72 - movs r1, 0 - bl GroundMap_ExecuteEvent - movs r0, 0x1E - bl sub_8098F44 - movs r0, 0x1E - bl sub_80118C4 -_080988F8: - bl GroundMap_Action - bl nullsub_124 - bl GroundLives_Action - bl GroundObject_Action - bl GroundEffect_Action - bl nullsub_105 - bl sub_809B474 - bl sub_80A2380 - bl sub_809D25C - bl sub_80A59DC - bl sub_809B614 - bl sub_809CA20 - bl sub_80A6E80 - bl sub_8099BE4 - bl sub_8099744 - bl sub_8011860 - ldr r0, _08098978 - ldr r0, [r0] - bl sub_8094FB4 - bl sub_800CB20 - bl sub_800485C - bl nullsub_120 - bl sub_80A5E70 - bl sub_809B638 - bl nullsub_106 - bl sub_80A73EC - bl sub_8099750 - bl sub_8009908 - b _08098864 - .align 2, 0 -_08098968: .4byte gUnknown_20398B9 -_0809896C: .4byte gUnknown_20398B8 -_08098970: .4byte gUnknown_20255F0 -_08098974: .4byte 0x0000030f -_08098978: .4byte gUnknown_203B47C -_0809897C: - bl sub_80A4AEC - movs r7, 0x1 - negs r7, r7 - ldr r0, _080989E8 - ldr r0, [r0] -_08098988: - subs r0, 0x1 - cmp r0, 0x1 - bhi _08098990 - b _080985DC -_08098990: - bl sub_80A4AC4 - bl nullsub_118 - bl sub_80A78F0 - bl sub_80ABBD4 - bl sub_80ACC10 - bl sub_80ADA08 - bl sub_809CB74 - bl sub_809A610 - bl sub_809C618 - bl sub_80A658C - bl sub_809D508 - bl sub_80A7754 - bl nullsub_119 - bl sub_8099768 - bl nullsub_103 - bl nullsub_16 - ldr r0, _080989EC - ldrb r0, [r0] - cmp r0, 0 - beq _080989FA - ldr r0, _080989E8 - ldr r0, [r0] - cmp r0, 0x9 - beq _080989F0 - cmp r0, 0xA - bne _080989F0 - movs r0, 0x10 - b _08098BD2 - .align 2, 0 -_080989E8: .4byte gUnknown_20398A8 -_080989EC: .4byte gUnknown_20398B9 -_080989F0: - movs r0, 0x1E - bl sub_80118C4 - movs r0, 0xF - b _08098BD2 -_080989FA: - ldr r0, _08098A10 - ldr r0, [r0] - subs r0, 0x3 - cmp r0, 0x5 - bls _08098A06 - b _08098BC0 -_08098A06: - lsls r0, 2 - ldr r1, _08098A14 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08098A10: .4byte gUnknown_20398A8 -_08098A14: .4byte _08098A18 - .align 2, 0 -_08098A18: - .4byte _08098A30 - .4byte _08098A72 - .4byte _08098AA0 - .4byte _08098B08 - .4byte _08098B58 - .4byte _08098B8C -_08098A30: - movs r4, 0x1 - negs r4, r4 - movs r0, 0 - movs r1, 0x13 - adds r2, r4, 0 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x14 - adds r2, r4, 0 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x18 - movs r2, 0x4 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x16 - movs r2, 0x4 - bl sub_80018D8 - movs r0, 0 - movs r1, 0xD - bl sub_8001658 - adds r2, r0, 0 - movs r0, 0 - movs r1, 0xF - bl sub_80018D8 - movs r0, 0x5 - b _08098BD2 -_08098A72: - movs r0, 0 - movs r1, 0x13 - movs r2, 0 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x18 - movs r2, 0x5 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x16 - movs r2, 0x5 - bl sub_80018D8 - movs r2, 0x1 - negs r2, r2 - movs r0, 0 - movs r1, 0x13 - bl sub_80018D8 - movs r0, 0x6 - b _08098BD2 -_08098AA0: - ldr r5, _08098B04 - movs r1, 0 - ldrsh r0, [r5, r1] - bl sub_80A2654 - adds r4, r0, 0 - lsls r4, 16 - asrs r4, 16 - movs r0, 0 - ldrsh r2, [r5, r0] - movs r0, 0 - movs r1, 0x13 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x14 - adds r2, r4, 0 - bl sub_80018D8 - ldrh r2, [r5] - movs r0, 0 - movs r1, 0x30 - movs r3, 0x1 - bl sub_800199C - movs r0, 0 - movs r1, 0x18 - movs r2, 0x7 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x16 - movs r2, 0x7 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x11 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA - bne _08098B00 - movs r0, 0 - movs r1, 0x11 - movs r2, 0 - bl sub_80018D8 -_08098B00: - movs r0, 0x7 - b _08098BD2 - .align 2, 0 -_08098B04: .4byte gUnknown_20398C4 -_08098B08: - movs r0, 0 - movs r1, 0x13 - movs r2, 0x51 - bl sub_80018D8 - ldr r0, _08098B54 - movs r1, 0 - ldrsh r2, [r0, r1] - movs r0, 0 - movs r1, 0x14 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x18 - movs r2, 0x7 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x16 - movs r2, 0x7 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x11 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA - bne _08098B4E - movs r0, 0 - movs r1, 0x11 - movs r2, 0 - bl sub_80018D8 -_08098B4E: - movs r0, 0x8 - b _08098BD2 - .align 2, 0 -_08098B54: .4byte gUnknown_20398C4 -_08098B58: - movs r0, 0 - movs r1, 0x13 - movs r2, 0x50 - bl sub_80018D8 - ldr r0, _08098B88 - ldrb r2, [r0] - movs r0, 0 - movs r1, 0x14 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x18 - movs r2, 0x7 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x16 - movs r2, 0x7 - bl sub_80018D8 - movs r0, 0x9 - b _08098BD2 - .align 2, 0 -_08098B88: .4byte gUnknown_2039950 -_08098B8C: - movs r0, 0 - movs r1, 0x13 - movs r2, 0x52 - bl sub_80018D8 - ldr r0, _08098BBC - movs r1, 0 - ldrsh r2, [r0, r1] - movs r0, 0 - movs r1, 0x14 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x18 - movs r2, 0x7 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x16 - movs r2, 0x7 - bl sub_80018D8 - movs r0, 0xA - b _08098BD2 - .align 2, 0 -_08098BBC: .4byte gUnknown_20398C4 -_08098BC0: - movs r0, 0 - movs r1, 0x18 - movs r2, 0x1 - bl sub_80018D8 - movs r0, 0x10 - bl sub_80118C4 - movs r0, 0xE -_08098BD2: - add sp, 0x8 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end xxx_script_related_8098468 - - thumb_func_start sub_8098BDC -sub_8098BDC: - push {lr} - bl sub_809B57C - bl sub_80A2380 - bl sub_809D25C - bl sub_80A59DC - bl sub_809B614 - bl sub_809CA20 - bl sub_80A6E80 - bl sub_8099BE4 - bl sub_8099744 - bl sub_8011860 - ldr r0, _08098C54 - ldr r0, [r0] - bl sub_8094FB4 - bl sub_800CB20 - bl sub_800485C - bl nullsub_120 - bl sub_80A5E70 - bl sub_809B638 - bl nullsub_106 - bl sub_80A73EC - bl sub_8099750 - bl sub_8009908 - bl xxx_call_update_bg_sound_input - bl sub_80A6E68 - bl GroundMap_Action - bl nullsub_124 - bl GroundLives_Action - bl GroundObject_Action - bl GroundEffect_Action - pop {r0} - bx r0 - .align 2, 0 -_08098C54: .4byte gUnknown_203B47C - thumb_func_end sub_8098BDC - - thumb_func_start sub_8098C58 -sub_8098C58: - push {lr} - movs r0, 0 - movs r1, 0x36 - bl sub_80015C0 - movs r0, 0 - movs r1, 0x39 - bl sub_80015C0 - bl sub_809CB8C - bl sub_8001D88 - movs r0, 0 - movs r1, 0x2A - bl sub_8001658 - cmp r0, 0 - beq _08098CA2 - movs r0, 0 - movs r1, 0x29 - bl sub_8001658 - adds r2, r0, 0 - adds r2, 0x1 - cmp r2, 0xF - ble _08098C90 - movs r2, 0 -_08098C90: - movs r0, 0 - movs r1, 0x29 - bl sub_80018D8 - movs r0, 0 - movs r1, 0x2A - movs r2, 0 - bl sub_80018D8 -_08098CA2: - movs r0, 0 - movs r1, 0x42 - movs r2, 0 - bl sub_8001784 - adds r3, r0, 0 - cmp r3, 0 - bgt _08098CB4 - movs r3, 0x1 -_08098CB4: - subs r3, 0x1 - movs r0, 0 - movs r1, 0x42 - movs r2, 0 - bl sub_800199C - bl sub_8098CC8 - pop {r0} - bx r0 - thumb_func_end sub_8098C58 - - thumb_func_start sub_8098CC8 -sub_8098CC8: - push {lr} - movs r0, 0x3 - movs r1, 0xB - movs r2, 0 - bl sub_8001CC4 - lsls r0, 24 - cmp r0, 0 - beq _08098CDE - movs r1, 0 - b _08098D06 -_08098CDE: - movs r0, 0x3 - movs r1, 0xF - movs r2, 0 - bl sub_8001CC4 - lsls r0, 24 - cmp r0, 0 - beq _08098CF2 - movs r1, 0x1 - b _08098D06 -_08098CF2: - movs r0, 0x3 - movs r1, 0x12 - movs r2, 0 - bl sub_8001CC4 - lsls r0, 24 - movs r1, 0x3 - cmp r0, 0 - beq _08098D06 - movs r1, 0x2 -_08098D06: - adds r0, r1, 0 - bl sub_8091980 - bl sub_809674C - bl sub_80961B4 - bl sub_8091FB4 - pop {r0} - bx r0 - thumb_func_end sub_8098CC8 - - thumb_func_start sub_8098D1C -sub_8098D1C: - push {r4-r7,lr} - adds r7, r1, 0 - adds r4, r2, 0 - lsls r0, 16 - asrs r5, r0, 16 - ldr r6, _08098D34 - ldr r0, [r6] - cmp r0, 0 - beq _08098D38 - movs r0, 0 - b _08098D60 - .align 2, 0 -_08098D34: .4byte gUnknown_20398A8 -_08098D38: - ldr r1, _08098D68 - movs r0, 0 - adds r2, r5, 0 - adds r3, r4, 0 - bl Log - movs r1, 0x1 - str r1, [r6] - ldr r0, _08098D6C - str r1, [r0] - ldr r0, _08098D70 - str r4, [r0] - ldr r1, _08098D74 - movs r0, 0x2 - str r0, [r1] - ldr r0, _08098D78 - strh r5, [r0] - ldr r0, _08098D7C - str r7, [r0] - movs r0, 0x1 -_08098D60: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08098D68: .4byte gUnknown_8115F5C -_08098D6C: .4byte gUnknown_20398AC -_08098D70: .4byte gUnknown_20398B0 -_08098D74: .4byte gUnknown_20398B4 -_08098D78: .4byte gUnknown_20398BE -_08098D7C: .4byte gUnknown_20398C0 - thumb_func_end sub_8098D1C - - thumb_func_start sub_8098D80 -sub_8098D80: - push {r4,lr} - adds r4, r0, 0 - ldr r1, _08098DB8 - ldr r0, [r1] - cmp r0, 0 - bne _08098DC4 - movs r0, 0x3 - str r0, [r1] - ldr r1, _08098DBC - movs r0, 0x1 - str r0, [r1] - ldr r0, _08098DC0 - str r4, [r0] - bl sub_809C730 - movs r0, 0xD - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _08098DB2 - lsls r0, r4, 16 - lsrs r0, 16 - bl sub_80118C4 -_08098DB2: - movs r0, 0x1 - b _08098DC6 - .align 2, 0 -_08098DB8: .4byte gUnknown_20398A8 -_08098DBC: .4byte gUnknown_20398AC -_08098DC0: .4byte gUnknown_20398B0 -_08098DC4: - movs r0, 0 -_08098DC6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8098D80 - - thumb_func_start sub_8098DCC -sub_8098DCC: - push {r4,lr} - adds r4, r0, 0 - ldr r1, _08098E04 - ldr r0, [r1] - cmp r0, 0 - bne _08098E10 - movs r0, 0x4 - str r0, [r1] - ldr r1, _08098E08 - movs r0, 0x1 - str r0, [r1] - ldr r0, _08098E0C - str r4, [r0] - bl sub_809C730 - movs r0, 0xD - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _08098DFE - lsls r0, r4, 16 - lsrs r0, 16 - bl sub_80118C4 -_08098DFE: - movs r0, 0x1 - b _08098E12 - .align 2, 0 -_08098E04: .4byte gUnknown_20398A8 -_08098E08: .4byte gUnknown_20398AC -_08098E0C: .4byte gUnknown_20398B0 -_08098E10: - movs r0, 0 -_08098E12: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8098DCC - - thumb_func_start sub_8098E18 -sub_8098E18: - push {r4-r6,lr} - adds r6, r1, 0 - lsls r0, 16 - asrs r2, r0, 16 - adds r5, r2, 0 - ldr r4, _08098E40 - ldr r0, [r4] - cmp r0, 0 - bne _08098EA8 - ldr r1, _08098E44 - movs r0, 0 - adds r3, r6, 0 - bl Log - ldr r0, _08098E48 - ldrb r0, [r0] - cmp r0, 0 - beq _08098E4C - movs r0, 0x7 - b _08098E8A - .align 2, 0 -_08098E40: .4byte gUnknown_20398A8 -_08098E44: .4byte gUnknown_8115F80 -_08098E48: .4byte gUnknown_203B49D -_08098E4C: - ldr r0, _08098E74 - ldrb r0, [r0] - ldr r1, _08098E78 - cmp r0, 0 - bne _08098E58 - strh r5, [r1] -_08098E58: - movs r2, 0 - ldrsh r0, [r1, r2] - bl sub_80A2750 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - beq _08098E88 - cmp r0, 0x2 - bgt _08098E7C - cmp r0, 0x1 - beq _08098E84 - b _08098E8C - .align 2, 0 -_08098E74: .4byte gUnknown_203B49C -_08098E78: .4byte gUnknown_20398C4 -_08098E7C: - cmp r0, 0x4 - bne _08098E8C - movs r0, 0x8 - b _08098E8A -_08098E84: - movs r0, 0x5 - b _08098E8A -_08098E88: - movs r0, 0x6 -_08098E8A: - str r0, [r4] -_08098E8C: - ldr r0, _08098EA0 - movs r1, 0x1 - str r1, [r0] - ldr r0, _08098EA4 - str r6, [r0] - bl sub_809C730 - movs r0, 0x1 - b _08098EAA - .align 2, 0 -_08098EA0: .4byte gUnknown_20398AC -_08098EA4: .4byte gUnknown_20398B0 -_08098EA8: - movs r0, 0 -_08098EAA: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8098E18 - - thumb_func_start sub_8098EB0 -sub_8098EB0: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _08098EE4 - ldr r0, [r5] - cmp r0, 0 - bne _08098EF8 - ldr r0, _08098EE8 - ldrb r0, [r0] - cmp r0, 0 - beq _08098EF8 - ldr r1, _08098EEC - movs r0, 0 - adds r2, r4, 0 - bl Log - movs r0, 0x7 - str r0, [r5] - ldr r1, _08098EF0 - movs r0, 0x1 - str r0, [r1] - ldr r0, _08098EF4 - str r4, [r0] - bl sub_809C730 - movs r0, 0x1 - b _08098EFA - .align 2, 0 -_08098EE4: .4byte gUnknown_20398A8 -_08098EE8: .4byte gUnknown_203B49D -_08098EEC: .4byte gUnknown_8115FA4 -_08098EF0: .4byte gUnknown_20398AC -_08098EF4: .4byte gUnknown_20398B0 -_08098EF8: - movs r0, 0 -_08098EFA: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8098EB0 - - thumb_func_start sub_8098F00 -sub_8098F00: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _08098F10 - ldr r0, [r5] - cmp r0, 0 - beq _08098F14 - movs r0, 0 - b _08098F32 - .align 2, 0 -_08098F10: .4byte gUnknown_20398A8 -_08098F14: - ldr r1, _08098F38 - movs r0, 0 - adds r2, r4, 0 - bl Log - movs r0, 0x9 - str r0, [r5] - ldr r1, _08098F3C - movs r0, 0x1 - str r0, [r1] - ldr r0, _08098F40 - str r4, [r0] - bl sub_809C730 - movs r0, 0x1 -_08098F32: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08098F38: .4byte gUnknown_8115FC8 -_08098F3C: .4byte gUnknown_20398AC -_08098F40: .4byte gUnknown_20398B0 - thumb_func_end sub_8098F00 - - thumb_func_start sub_8098F44 -sub_8098F44: - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _08098F54 - ldr r0, [r5] - cmp r0, 0 - beq _08098F58 - movs r0, 0 - b _08098F76 - .align 2, 0 -_08098F54: .4byte gUnknown_20398A8 -_08098F58: - ldr r1, _08098F7C - movs r0, 0 - adds r2, r4, 0 - bl Log - movs r0, 0xA - str r0, [r5] - ldr r1, _08098F80 - movs r0, 0x1 - str r0, [r1] - ldr r0, _08098F84 - str r4, [r0] - bl sub_809C730 - movs r0, 0x1 -_08098F76: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08098F7C: .4byte gUnknown_8115FE8 -_08098F80: .4byte gUnknown_20398AC -_08098F84: .4byte gUnknown_20398B0 - thumb_func_end sub_8098F44 - - thumb_func_start sub_8098F88 -sub_8098F88: - ldr r0, _08098F90 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08098F90: .4byte gUnknown_20398B9 - thumb_func_end sub_8098F88 - - thumb_func_start sub_8098F94 -sub_8098F94: - ldr r0, _08098F9C - ldrb r0, [r0] - bx lr - .align 2, 0 -_08098F9C: .4byte gUnknown_20398BA - thumb_func_end sub_8098F94 - - thumb_func_start sub_8098FA0 -sub_8098FA0: - push {lr} - movs r0, 0 - movs r1, 0x11 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - pop {r1} - bx r1 - thumb_func_end sub_8098FA0 - - thumb_func_start sub_8098FB4 -sub_8098FB4: - push {lr} - movs r0, 0 - movs r1, 0x11 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - bl sub_80A2B18 - pop {r1} - bx r1 - thumb_func_end sub_8098FB4 - - thumb_func_start sub_8098FCC -sub_8098FCC: - push {r4,lr} - movs r0, 0 - movs r1, 0x13 - bl sub_8001658 - lsls r0, 16 - asrs r1, r0, 16 - adds r2, r1, 0 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809909E - cmp r1, 0x51 - bne _08098FF6 - movs r0, 0 - movs r1, 0x14 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - b _08098FF8 -_08098FF6: - adds r0, r2, 0 -_08098FF8: - bl sub_80A2608 - adds r4, r0, 0 - ldr r0, _0809900C - ldr r0, [r0] - cmp r0, 0x9 - bne _08099010 - movs r1, 0x2 - ldrsh r0, [r4, r1] - b _080990B2 - .align 2, 0 -_0809900C: .4byte gUnknown_20398B4 -_08099010: - ldrh r0, [r4, 0x4] - subs r0, 0xB2 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x17 - bhi _080990AE - lsls r0, 2 - ldr r1, _08099028 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08099028: .4byte _0809902C - .align 2, 0 -_0809902C: - .4byte _0809908C - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990AE - .4byte _080990A2 - .4byte _080990AE - .4byte _080990A2 - .4byte _080990AE - .4byte _080990AE - .4byte _080990A2 - .4byte _080990AE - .4byte _080990AE - .4byte _080990A2 -_0809908C: - movs r2, 0x1 - negs r2, r2 - movs r0, 0x3 - movs r1, 0x2 - bl sub_8001D44 - lsls r0, 24 - cmp r0, 0 - beq _080990AE -_0809909E: - movs r0, 0xC - b _080990B2 -_080990A2: - movs r0, 0x5 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _0809909E -_080990AE: - movs r1, 0x4 - ldrsh r0, [r4, r1] -_080990B2: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8098FCC - - thumb_func_start sub_80990B8 -sub_80990B8: - push {lr} - movs r0, 0xB - bl sub_8098FCC - lsls r0, 16 - asrs r2, r0, 16 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - bne _080990D2 - bl sub_8098FB4 - b _080990E4 -_080990D2: - ldr r1, _080990E8 - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_80A2B18 -_080990E4: - pop {r1} - bx r1 - .align 2, 0 -_080990E8: .4byte gUnknown_811BAF4 - thumb_func_end sub_80990B8 - - thumb_func_start sub_80990EC -sub_80990EC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x80 - adds r7, r0, 0 - lsls r1, 16 - asrs r4, r1, 16 - adds r0, r4, 0 - bl sub_80A2608 - mov r8, r0 - ldrb r0, [r0, 0xC] - movs r5, 0 - strb r0, [r7] - movs r0, 0x1 - strb r0, [r7, 0x1] - strb r5, [r7, 0xC] - adds r0, r4, 0 - bl sub_80A2750 - lsls r0, 16 - asrs r6, r0, 16 - cmp r6, 0x2 - beq _080991C8 - cmp r6, 0x2 - bgt _08099126 - cmp r6, 0x1 - beq _0809912C - b _080991CA -_08099126: - cmp r6, 0x4 - beq _080991C4 - b _080991CA -_0809912C: - movs r1, 0 - strb r5, [r7, 0xB] - adds r0, r4, 0 - subs r0, 0x25 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bhi _0809913E - movs r1, 0x1 -_0809913E: - cmp r1, 0 - beq _080991CA - strb r6, [r7, 0xC] - mov r0, sp - movs r1, 0x5B - bl sub_80A8EC0 - add r4, sp, 0x18 - adds r0, r4, 0 - mov r1, sp - movs r2, 0xA - bl sub_8092310 - add r5, sp, 0x30 - str r4, [sp, 0x58] - add r1, sp, 0x5C - movs r2, 0 - movs r0, 0x5E - strh r0, [r1] - mov r0, sp - adds r0, 0x5E - strb r2, [r0] - add r0, sp, 0x60 - movs r1, 0x47 - strb r1, [r0] - strb r2, [r0, 0x1] - add r1, sp, 0x64 - movs r0, 0x82 - lsls r0, 1 - strh r0, [r1] - movs r0, 0xE0 - strh r0, [r1, 0x2] - movs r0, 0xAC - strh r0, [r1, 0x4] - movs r0, 0xBE - strh r0, [r1, 0x6] - add r1, sp, 0x6C - movs r0, 0x50 - strh r0, [r1] - mov r0, sp - adds r0, 0x6E - movs r2, 0xF - strh r2, [r0] - add r0, sp, 0x70 - strh r6, [r0] - adds r0, 0x2 - movs r1, 0x19 - strh r1, [r0] - strh r1, [r0, 0x2] - adds r0, 0x4 - strh r2, [r0] - strh r2, [r0, 0x2] - ldr r0, _080991C0 - str r0, [sp, 0x7C] - add r1, sp, 0x58 - adds r0, r5, 0 - movs r2, 0x28 - bl memcpy - adds r0, r7, 0 - adds r0, 0x18 - adds r1, r5, 0 - bl sub_808D144 - b _080991CA - .align 2, 0 -_080991C0: .4byte 0x000061a8 -_080991C4: - strb r5, [r7, 0xB] - b _080991CA -_080991C8: - strb r6, [r7, 0xB] -_080991CA: - movs r0, 0 - strb r0, [r7, 0x4] - strb r0, [r7, 0xD] - mov r1, r8 - ldrb r0, [r1, 0x11] - add sp, 0x80 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80990EC - - thumb_func_start sub_80991E0 -sub_80991E0: - push {lr} - adds r2, r0, 0 - ldr r3, _08099204 - ldrh r0, [r3] - strh r0, [r1] - ldr r0, _08099208 - ldrb r0, [r0] - cmp r0, 0 - bne _0809920C - movs r0, 0 - ldrsh r1, [r3, r0] - adds r0, r2, 0 - bl sub_80990EC - lsls r0, 24 - lsrs r0, 24 - b _08099218 - .align 2, 0 -_08099204: .4byte gUnknown_20398C4 -_08099208: .4byte gUnknown_203B49C -_0809920C: - ldr r1, _0809921C - adds r0, r2, 0 - movs r2, 0x88 - bl memcpy - movs r0, 0x1 -_08099218: - pop {r1} - bx r1 - .align 2, 0 -_0809921C: .4byte gUnknown_20398C8 - thumb_func_end sub_80991E0 - - thumb_func_start sub_8099220 -sub_8099220: - push {lr} - adds r2, r0, 0 - lsls r1, 16 - asrs r3, r1, 16 - cmp r2, 0 - beq _08099258 - ldr r1, _08099248 - movs r0, 0x1 - strb r0, [r1] - ldr r1, _0809924C - movs r0, 0 - strb r0, [r1] - ldr r0, _08099250 - strh r3, [r0] - ldr r0, _08099254 - adds r1, r2, 0 - movs r2, 0x88 - bl memcpy - b _0809926A - .align 2, 0 -_08099248: .4byte gUnknown_203B49C -_0809924C: .4byte gUnknown_203B49D -_08099250: .4byte gUnknown_20398C4 -_08099254: .4byte gUnknown_20398C8 -_08099258: - ldr r0, _08099270 - strb r2, [r0] - ldr r0, _08099274 - strb r2, [r0] - ldr r1, _08099278 - movs r2, 0x1 - negs r2, r2 - adds r0, r2, 0 - strh r0, [r1] -_0809926A: - pop {r0} - bx r0 - .align 2, 0 -_08099270: .4byte gUnknown_203B49C -_08099274: .4byte gUnknown_203B49D -_08099278: .4byte gUnknown_20398C4 - thumb_func_end sub_8099220 - - thumb_func_start sub_809927C -sub_809927C: - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _080992CC - movs r1, 0x1 - strb r1, [r0] - ldr r0, _080992D0 - strb r1, [r0] - ldr r1, _080992D4 - movs r0, 0x50 - strh r0, [r1] - ldr r4, _080992D8 - strb r5, [r4] - movs r0, 0 - movs r1, 0x13 - movs r2, 0x50 - bl sub_80018D8 - ldrb r2, [r4] - movs r0, 0 - movs r1, 0x14 - bl sub_80018D8 - ldr r4, _080992DC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8095494 - subs r4, 0x10 - movs r1, 0 - movs r0, 0x1 - strb r0, [r4, 0xB] - strb r1, [r4, 0xC] - strb r1, [r4, 0x4] - strb r1, [r4, 0xD] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080992CC: .4byte gUnknown_203B49C -_080992D0: .4byte gUnknown_203B49D -_080992D4: .4byte gUnknown_20398C4 -_080992D8: .4byte gUnknown_2039950 -_080992DC: .4byte gUnknown_20398D8 - thumb_func_end sub_809927C - - thumb_func_start sub_80992E0 -sub_80992E0: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - movs r1, 0x13 - bl sub_8001658 - lsls r0, 16 - asrs r1, r0, 16 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08099316 - cmp r1, 0x50 - beq _08099316 - cmp r1, 0x51 - beq _08099316 - cmp r1, 0x52 - beq _08099316 - strh r1, [r4] - movs r0, 0 - movs r1, 0x14 - bl sub_8001658 - strh r0, [r5] - movs r0, 0x1 - b _08099322 -_08099316: - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 - strh r0, [r4] - strh r0, [r5] - movs r0, 0 -_08099322: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80992E0 - - thumb_func_start sub_8099328 -sub_8099328: - push {r4,lr} - adds r4, r0, 0 - movs r0, 0 - movs r1, 0x13 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x51 - bne _08099358 - movs r0, 0 - movs r1, 0x14 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - bl sub_80A2608 - ldrb r0, [r0, 0xC] - cmp r0, 0x3E - bhi _08099358 - strb r0, [r4] - movs r0, 0x1 - b _0809935A -_08099358: - movs r0, 0 -_0809935A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8099328 - - thumb_func_start sub_8099360 -sub_8099360: - push {r4,lr} - adds r4, r0, 0 - movs r0, 0 - movs r1, 0x13 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x52 - beq _08099378 - movs r0, 0 - b _0809938E -_08099378: - movs r0, 0 - movs r1, 0x14 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - bl sub_80A2608 - ldrb r0, [r0, 0xC] - strb r0, [r4] - movs r0, 0x1 -_0809938E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8099360 - - thumb_func_start sub_8099394 -sub_8099394: - push {r4,lr} - adds r4, r0, 0 - movs r0, 0 - movs r1, 0x13 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x50 - beq _080993AC - movs r0, 0 - b _080993B8 -_080993AC: - movs r0, 0 - movs r1, 0x14 - bl sub_8001658 - strb r0, [r4] - movs r0, 0x1 -_080993B8: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8099394 - - thumb_func_start sub_80993C0 -sub_80993C0: - push {lr} - lsls r0, 24 - ldr r2, _080993D4 - movs r1, 0 - cmp r0, 0 - bne _080993CE - movs r1, 0x1 -_080993CE: - strb r1, [r2] - pop {r0} - bx r0 - .align 2, 0 -_080993D4: .4byte gUnknown_20398B8 - thumb_func_end sub_80993C0 - - thumb_func_start sub_80993D8 -sub_80993D8: - push {lr} - bl sub_80A4B38 - pop {r0} - bx r0 - thumb_func_end sub_80993D8 - - thumb_func_start sub_80993E4 -sub_80993E4: - push {lr} - bl sub_80A4B54 - pop {r0} - bx r0 - thumb_func_end sub_80993E4 - - thumb_func_start sub_80993F0 -sub_80993F0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - movs r0, 0 - mov r10, r0 - bl sub_801180C - movs r0, 0x10 - bl sub_80118C4 - ldr r1, _0809948C - ldr r2, _08099490 - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0 - bl xxx_update_some_bg_tiles - movs r0, 0 - movs r1, 0x14 - bl sub_80095CC - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0 - movs r1, 0x14 - bl sub_8009408 - bl sub_8099648 - bl sub_809975C - bl sub_809D0AC - bl sub_8014144 - movs r0, 0 - movs r1, 0 - bl sub_8005838 - bl sub_80A4A7C - mov r7, sp - add r0, sp, 0x8 - mov r8, r0 -_08099454: - bl sub_801D9E4 - lsls r0, 24 - cmp r0, 0 - beq _0809949C - mov r0, r10 - bl sub_801DA58 -_08099464: - movs r0, 0 - movs r1, 0 - bl sub_8005838 - movs r0, 0 - bl sub_8012A18 - bl sub_801DA78 - cmp r0, 0x2 - beq _08099494 - cmp r0, 0x3 - bne _08099464 - bl sub_801DAC0 - lsls r0, 16 - asrs r0, 16 - mov r10, r0 - b _080994A2 - .align 2, 0 -_0809948C: .4byte gUnknown_2026E4E -_08099490: .4byte 0x00000808 -_08099494: - movs r1, 0x1 - negs r1, r1 - mov r10, r1 - b _080994A2 -_0809949C: - movs r2, 0x1 - negs r2, r2 - mov r10, r2 -_080994A2: - bl sub_801DB0C - movs r0, 0x1 - negs r0, r0 - cmp r10, r0 - bne _080994B0 - b _08099624 -_080994B0: - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - bl sub_80A4AEC - bl sub_809D0BC - mov r0, r10 - bl GroundMap_Select - mov r0, sp - mov r1, r8 - bl sub_80A579C - ldr r0, [r7, 0x4] - movs r1, 0xC0 - lsls r1, 4 - adds r0, r1 - str r0, [r7, 0x4] - mov r2, r8 - ldr r0, [r2, 0x4] - adds r0, r1 - str r0, [r2, 0x4] - ldr r0, [sp] - ldr r1, _08099520 - adds r0, r1 - str r0, [sp] - ldr r0, [r7, 0x4] - adds r0, r1 - str r0, [r7, 0x4] - ldr r0, [sp, 0x8] - movs r2, 0x80 - lsls r2, 3 - adds r0, r2 - str r0, [sp, 0x8] - mov r0, r8 - ldr r1, [r0, 0x4] - adds r1, r2 - str r1, [r0, 0x4] - ldr r2, [sp, 0x8] - ldr r0, [sp] - subs r0, r2, r0 - str r0, [sp, 0x20] - ldr r0, [r7, 0x4] - subs r0, r1, r0 - str r0, [sp, 0x24] - movs r4, 0 - movs r5, 0 - movs r0, 0x4 - bl sub_80999E8 - mov r9, r5 - b _08099604 - .align 2, 0 -_08099520: .4byte 0xfffffc00 -_08099524: - ldr r0, _0809953C - ldrh r1, [r0, 0x2] - ldrh r6, [r0] - movs r0, 0x4 - ands r1, r0 - cmp r1, 0 - beq _08099540 - bl sub_80999FC - movs r1, 0x1 - mov r9, r1 - b _080995AE - .align 2, 0 -_0809953C: .4byte gUnknown_20255F0 -_08099540: - adds r0, r6, 0 - bl sub_809CFE8 - lsls r0, 24 - asrs r1, r0, 24 - movs r2, 0x1 - negs r2, r2 - cmp r1, r2 - beq _0809959A - add r0, sp, 0x10 - movs r2, 0x80 - lsls r2, 1 - bl sub_8002BB8 - ldr r2, [sp, 0x10] - ldr r3, [sp, 0x14] - movs r0, 0x2 - ands r6, r0 - cmp r6, 0 - beq _0809956A - movs r0, 0x4 -_0809956A: - adds r1, r0, 0 - muls r1, r2 - adds r1, r4 - adds r4, r1, 0 - muls r0, r3 - adds r5, r0 - cmp r1, 0 - bge _0809957E - movs r4, 0 - b _08099588 -_0809957E: - ldr r0, [sp, 0x20] - cmp r4, r0 - blt _08099588 - adds r4, r0, 0 - subs r4, 0x1 -_08099588: - cmp r5, 0 - bge _08099590 - movs r5, 0 - b _0809959A -_08099590: - ldr r1, [sp, 0x24] - cmp r5, r1 - blt _0809959A - adds r5, r1, 0 - subs r5, 0x1 -_0809959A: - ldr r0, [sp] - adds r0, r4 - str r0, [sp, 0x18] - ldr r0, [r7, 0x4] - adds r0, r5 - add r1, sp, 0x18 - str r0, [r1, 0x4] - movs r0, 0 - bl sub_809D158 -_080995AE: - bl sub_809D25C - bl sub_80A59DC - bl xxx_draw_string_80144C4 - movs r0, 0 - movs r1, 0 - bl sub_8005838 - bl sub_80060EC - ldr r0, _08099620 - ldr r0, [r0] - ldrb r0, [r0, 0xA] - bl nullsub_8 - bl sub_8005180 - bl sub_8099BE4 - bl sub_8099744 - bl sub_8011860 - bl sub_800CB20 - bl sub_800485C - bl nullsub_120 - bl sub_80A5E70 - bl xxx_call_update_bg_vram - bl CopySpritesToOam - bl sub_8005304 - bl sub_8099750 - bl sub_8009908 -_08099604: - bl xxx_call_update_bg_sound_input - movs r0, 0 - bl sub_8004D8C - mov r2, r9 - cmp r2, 0 - beq _08099524 - bl sub_8099B94 - lsls r0, 24 - cmp r0, 0 - bne _080995AE - b _08099454 - .align 2, 0 -_08099620: .4byte gUnknown_203B46C -_08099624: - movs r0, 0x10 - bl sub_80118C4 - bl sub_80A4AC4 - bl sub_8099768 - bl nullsub_103 - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80993F0 - - thumb_func_start sub_8099648 -sub_8099648: - push {lr} - bl sub_8003600 - bl sub_809965C - pop {r0} - bx r0 - thumb_func_end sub_8099648 - - thumb_func_start nullsub_103 -nullsub_103: - bx lr - thumb_func_end nullsub_103 - - thumb_func_start sub_809965C -sub_809965C: - push {r4,lr} - movs r0, 0 - bl sub_8099690 - ldr r0, _08099688 - ldr r1, _0809968C - bl OpenFileAndGetFileDataPtr - adds r4, r0, 0 - movs r0, 0xF8 - lsls r0, 1 - ldr r1, [r4, 0x4] - movs r2, 0x10 - bl sub_800388C - adds r0, r4, 0 - bl CloseFile - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08099688: .4byte gUnknown_811601C -_0809968C: .4byte gUnknown_8300500 - thumb_func_end sub_809965C - - thumb_func_start sub_8099690 -sub_8099690: - push {r4-r6,lr} - adds r4, r0, 0 - ldr r0, _080996BC - ldr r1, _080996C0 - bl OpenFileAndGetFileDataPtr - adds r6, r0, 0 - cmp r4, 0x1 - beq _080996CC - cmp r4, 0x2 - beq _080996D4 - ldr r0, _080996C4 - ldr r0, [r0] - ldrb r0, [r0, 0xB] - ldr r4, _080996C8 - cmp r0, 0 - beq _080996D6 - movs r0, 0x80 - lsls r0, 1 - adds r4, r0 - b _080996D6 - .align 2, 0 -_080996BC: .4byte gUnknown_8116028 -_080996C0: .4byte gUnknown_8300500 -_080996C4: .4byte gUnknown_203B46C -_080996C8: .4byte gUnknown_202D078 -_080996CC: - ldr r4, _080996D0 - b _080996D6 - .align 2, 0 -_080996D0: .4byte gUnknown_202D1B8 -_080996D4: - ldr r4, _08099704 -_080996D6: - movs r0, 0xF0 - adds r1, r4, 0 - movs r2, 0x10 - bl sub_800388C - adds r5, r4, 0 - movs r4, 0 -_080996E4: - adds r0, r4, 0 - adds r0, 0xF0 - adds r1, r5, 0 - adds r5, 0x4 - bl nullsub_5 - adds r4, 0x1 - cmp r4, 0xF - ble _080996E4 - adds r0, r6, 0 - bl CloseFile - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08099704: .4byte gUnknown_202D1F8 - thumb_func_end sub_8099690 - - thumb_func_start sub_8099708 -sub_8099708: - push {lr} - sub sp, 0x4 - str r1, [sp] - lsls r0, 16 - lsrs r0, 16 - bl sub_8003810 - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8099708 - - thumb_func_start sub_809971C -sub_809971C: - push {r4-r6,lr} - adds r6, r1, 0 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r2, 0 - ble _0809973E - adds r4, r2, 0 -_0809972A: - adds r0, r5, 0 - adds r1, r0, 0x1 - lsls r1, 16 - lsrs r5, r1, 16 - ldm r6!, {r1} - bl sub_8003810 - subs r4, 0x1 - cmp r4, 0 - bne _0809972A -_0809973E: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_809971C - - thumb_func_start sub_8099744 -sub_8099744: - push {lr} - bl sub_80039B8 - pop {r0} - bx r0 - thumb_func_end sub_8099744 - - thumb_func_start sub_8099750 -sub_8099750: - push {lr} - bl TransferBGPaletteBuffer - pop {r0} - bx r0 - thumb_func_end sub_8099750 - - thumb_func_start sub_809975C -sub_809975C: - push {lr} - bl sub_809977C - pop {r0} - bx r0 - thumb_func_end sub_809975C - - thumb_func_start sub_8099768 -sub_8099768: - push {lr} - bl sub_809977C - bl sub_8099744 - bl sub_8099750 - pop {r0} - bx r0 - thumb_func_end sub_8099768 - - thumb_func_start sub_809977C -sub_809977C: - push {r4-r6,lr} - mov r6, r8 - push {r6} - ldr r1, _080997DC - movs r0, 0 - strb r0, [r1] - ldr r1, _080997E0 - movs r0, 0 - strh r0, [r1] - ldr r6, _080997E4 - adds r0, r6, 0 - bl sub_8099838 - ldr r0, _080997E8 - mov r8, r0 - bl sub_8099838 - ldr r4, _080997EC - adds r0, r4, 0 - bl sub_8099838 - subs r4, 0x8 - movs r0, 0 - str r0, [r4] - movs r5, 0x80 - lsls r5, 1 - strh r5, [r4, 0x14] - strh r0, [r6, 0xC] - bl sub_8099DD0 - mov r0, r8 - strh r5, [r0, 0xC] - adds r0, r5, 0 - bl sub_8099E58 - ldr r1, _080997F0 - movs r2, 0 - adds r0, r1, 0 - adds r0, 0x40 -_080997CA: - strh r2, [r0] - subs r0, 0x2 - cmp r0, r1 - bge _080997CA - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080997DC: .4byte gUnknown_2039990 -_080997E0: .4byte gUnknown_2039992 -_080997E4: .4byte gUnknown_2039958 -_080997E8: .4byte gUnknown_2039968 -_080997EC: .4byte gUnknown_2039980 -_080997F0: .4byte gUnknown_2039998 - thumb_func_end sub_809977C - - thumb_func_start sub_80997F4 -sub_80997F4: - push {lr} - lsls r0, 16 - ldr r2, _08099818 - lsrs r0, 15 - adds r0, r2 - strh r1, [r0] - ldr r0, _0809981C - bl sub_8099848 - ldr r0, _08099820 - bl sub_8099848 - ldr r0, _08099824 - bl sub_8099848 - pop {r0} - bx r0 - .align 2, 0 -_08099818: .4byte gUnknown_2039998 -_0809981C: .4byte gUnknown_2039958 -_08099820: .4byte gUnknown_2039968 -_08099824: .4byte gUnknown_2039980 - thumb_func_end sub_80997F4 - - thumb_func_start sub_8099828 -sub_8099828: - lsls r0, 16 - ldr r1, _08099834 - lsrs r0, 15 - adds r0, r1 - ldrh r0, [r0] - bx lr - .align 2, 0 -_08099834: .4byte gUnknown_2039998 - thumb_func_end sub_8099828 - - thumb_func_start sub_8099838 -sub_8099838: - movs r1, 0x1 - str r1, [r0] - movs r1, 0 - strh r1, [r0, 0xC] - strh r1, [r0, 0x4] - strh r1, [r0, 0x6] - bx lr - thumb_func_end sub_8099838 - - thumb_func_start sub_8099848 -sub_8099848: - push {lr} - adds r1, r0, 0 - ldr r0, [r1] - cmp r0, 0 - bne _08099856 - movs r0, 0x1 - str r0, [r1] -_08099856: - pop {r0} - bx r0 - thumb_func_end sub_8099848 - - thumb_func_start sub_809985C -sub_809985C: - push {lr} - adds r2, r0, 0 - cmp r1, 0 - blt _08099872 - cmp r1, 0 - bne _08099874 - movs r0, 0x80 - lsls r0, 1 - strh r0, [r2, 0xC] - movs r0, 0x1 - b _08099876 -_08099872: - movs r1, 0x1E -_08099874: - movs r0, 0x2 -_08099876: - str r0, [r2] - strh r1, [r2, 0x4] - strh r1, [r2, 0x6] - pop {r0} - bx r0 - thumb_func_end sub_809985C - - thumb_func_start sub_8099880 -sub_8099880: - push {lr} - adds r2, r0, 0 - cmp r1, 0 - blt _08099892 - cmp r1, 0 - bne _08099894 - strh r1, [r2, 0xC] - movs r0, 0x1 - b _08099896 -_08099892: - movs r1, 0x1E -_08099894: - movs r0, 0x3 -_08099896: - str r0, [r2] - strh r1, [r2, 0x4] - strh r1, [r2, 0x6] - pop {r0} - bx r0 - thumb_func_end sub_8099880 - - thumb_func_start sub_80998A0 -sub_80998A0: - push {r4,lr} - adds r4, r0, 0 - lsls r2, 16 - lsrs r2, 16 - lsls r3, 16 - lsrs r3, 16 - cmp r1, 0 - bge _080998B2 - movs r1, 0x1E -_080998B2: - cmp r2, r3 - bls _080998BE - movs r0, 0x5 - str r0, [r4] - subs r0, r2, r3 - b _080998D0 -_080998BE: - cmp r2, r3 - bcs _080998CA - movs r0, 0x4 - str r0, [r4] - subs r0, r3, r2 - b _080998D0 -_080998CA: - movs r0, 0x1 - str r0, [r4] - movs r0, 0 -_080998D0: - strh r0, [r4, 0xA] - strh r1, [r4, 0x4] - strh r1, [r4, 0x6] - strh r2, [r4, 0xC] - strh r3, [r4, 0x8] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80998A0 - - thumb_func_start sub_80998E0 -sub_80998E0: - push {r4,lr} - adds r4, r0, 0 - ldr r0, [r4] - cmp r0, 0x5 - bhi _080999CA - lsls r0, 2 - ldr r1, _080998F4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080998F4: .4byte _080998F8 - .align 2, 0 -_080998F8: - .4byte _080999CA - .4byte _080999C2 - .4byte _08099910 - .4byte _08099946 - .4byte _08099976 - .4byte _0809999A -_08099910: - ldrh r0, [r4, 0x4] - subs r0, 0x1 - strh r0, [r4, 0x4] - lsls r0, 16 - cmp r0, 0 - ble _08099940 - movs r1, 0x4 - ldrsh r0, [r4, r1] - lsls r0, 8 - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl __divsi3 - movs r2, 0x80 - lsls r2, 1 - adds r1, r2, 0 - subs r1, r0 - lsls r1, 16 - lsrs r1, 16 - ldrh r0, [r4, 0xC] - cmp r0, r1 - bcs _080999C6 - strh r1, [r4, 0xC] - b _080999C6 -_08099940: - movs r0, 0x80 - lsls r0, 1 - b _080999C0 -_08099946: - ldrh r0, [r4, 0x4] - subs r0, 0x1 - movs r1, 0 - strh r0, [r4, 0x4] - lsls r0, 16 - cmp r0, 0 - ble _08099970 - movs r1, 0x4 - ldrsh r0, [r4, r1] - lsls r0, 8 - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl __divsi3 - lsls r0, 16 - lsrs r1, r0, 16 - ldrh r0, [r4, 0xC] - cmp r0, r1 - bls _080999C6 - strh r1, [r4, 0xC] - b _080999C6 -_08099970: - strh r1, [r4, 0xC] - str r1, [r4] - b _080999C6 -_08099976: - ldrh r0, [r4, 0x4] - subs r0, 0x1 - strh r0, [r4, 0x4] - lsls r0, 16 - cmp r0, 0 - ble _080999BE - movs r0, 0x4 - ldrsh r1, [r4, r0] - ldrh r0, [r4, 0xA] - muls r0, r1 - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl __divsi3 - ldrh r1, [r4, 0x8] - subs r1, r0 - strh r1, [r4, 0xC] - b _080999C6 -_0809999A: - ldrh r0, [r4, 0x4] - subs r0, 0x1 - strh r0, [r4, 0x4] - lsls r0, 16 - cmp r0, 0 - ble _080999BE - movs r0, 0x4 - ldrsh r1, [r4, r0] - ldrh r0, [r4, 0xA] - muls r0, r1 - movs r2, 0x6 - ldrsh r1, [r4, r2] - bl __divsi3 - ldrh r1, [r4, 0x8] - adds r1, r0 - strh r1, [r4, 0xC] - b _080999C6 -_080999BE: - ldrh r0, [r4, 0x8] -_080999C0: - strh r0, [r4, 0xC] -_080999C2: - movs r0, 0 - str r0, [r4] -_080999C6: - movs r0, 0x1 - b _080999CC -_080999CA: - movs r0, 0 -_080999CC: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80998E0 - - thumb_func_start sub_80999D4 -sub_80999D4: - ldr r2, _080999E0 - movs r1, 0x1 - strb r1, [r2] - ldr r1, _080999E4 - strh r0, [r1] - bx lr - .align 2, 0 -_080999E0: .4byte gUnknown_2039990 -_080999E4: .4byte gUnknown_2039992 - thumb_func_end sub_80999D4 - - thumb_func_start sub_80999E8 -sub_80999E8: - push {lr} - adds r1, r0, 0 - ldr r0, _080999F8 - bl sub_809985C - pop {r0} - bx r0 - .align 2, 0 -_080999F8: .4byte gUnknown_2039958 - thumb_func_end sub_80999E8 - - thumb_func_start sub_80999FC -sub_80999FC: - push {lr} - adds r1, r0, 0 - ldr r0, _08099A0C - bl sub_8099880 - pop {r0} - bx r0 - .align 2, 0 -_08099A0C: .4byte gUnknown_2039958 - thumb_func_end sub_80999FC - - thumb_func_start sub_8099A10 -sub_8099A10: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r3, r2, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r3, 16 - lsrs r3, 16 - ldr r0, _08099A30 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_80998A0 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08099A30: .4byte gUnknown_2039958 - thumb_func_end sub_8099A10 - - thumb_func_start sub_8099A34 -sub_8099A34: - push {lr} - adds r1, r0, 0 - ldr r0, _08099A44 - bl sub_809985C - pop {r0} - bx r0 - .align 2, 0 -_08099A44: .4byte gUnknown_2039968 - thumb_func_end sub_8099A34 - - thumb_func_start sub_8099A48 -sub_8099A48: - push {lr} - adds r1, r0, 0 - ldr r0, _08099A58 - bl sub_8099880 - pop {r0} - bx r0 - .align 2, 0 -_08099A58: .4byte gUnknown_2039968 - thumb_func_end sub_8099A48 - - thumb_func_start sub_8099A5C -sub_8099A5C: - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - str r2, [sp] - ldr r0, _08099A88 - str r4, [r0] - ldr r2, [sp] - str r2, [r0, 0x4] - movs r2, 0 - strh r2, [r0, 0x14] - adds r0, 0x8 - bl sub_809985C - subs r0, r4, 0x1 - cmp r0, 0xD - bhi _08099AF0 - lsls r0, 2 - ldr r1, _08099A8C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08099A88: .4byte gUnknown_2039978 -_08099A8C: .4byte _08099A90 - .align 2, 0 -_08099A90: - .4byte _08099AC8 - .4byte _08099AF0 - .4byte _08099AC8 - .4byte _08099AF0 - .4byte _08099AE8 - .4byte _08099AF0 - .4byte _08099AE8 - .4byte _08099AF0 - .4byte _08099AE0 - .4byte _08099AF0 - .4byte _08099AE0 - .4byte _08099AF0 - .4byte _08099AE8 - .4byte _08099AE8 -_08099AC8: - ldr r0, _08099AD8 - movs r1, 0x80 - lsls r1, 1 - strh r1, [r0, 0xC] - ldr r0, _08099ADC - strh r1, [r0, 0xC] - b _08099AF0 - .align 2, 0 -_08099AD8: .4byte gUnknown_2039968 -_08099ADC: .4byte gUnknown_2039958 -_08099AE0: - ldr r1, _08099AE4 - b _08099AEA - .align 2, 0 -_08099AE4: .4byte gUnknown_2039968 -_08099AE8: - ldr r1, _08099AF8 -_08099AEA: - movs r0, 0x80 - lsls r0, 1 - strh r0, [r1, 0xC] -_08099AF0: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08099AF8: .4byte gUnknown_2039958 - thumb_func_end sub_8099A5C - - thumb_func_start sub_8099AFC -sub_8099AFC: - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - str r2, [sp] - ldr r0, _08099B28 - str r4, [r0] - ldr r2, [sp] - str r2, [r0, 0x4] - movs r2, 0x80 - lsls r2, 1 - strh r2, [r0, 0x14] - adds r0, 0x8 - bl sub_8099880 - subs r0, r4, 0x2 - cmp r0, 0xC - bhi _08099B86 - lsls r0, 2 - ldr r1, _08099B2C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08099B28: .4byte gUnknown_2039978 -_08099B2C: .4byte _08099B30 - .align 2, 0 -_08099B30: - .4byte _08099B64 - .4byte _08099B86 - .4byte _08099B64 - .4byte _08099B86 - .4byte _08099B80 - .4byte _08099B86 - .4byte _08099B80 - .4byte _08099B86 - .4byte _08099B78 - .4byte _08099B86 - .4byte _08099B78 - .4byte _08099B80 - .4byte _08099B80 -_08099B64: - ldr r0, _08099B70 - movs r1, 0 - strh r1, [r0, 0xC] - ldr r0, _08099B74 - strh r1, [r0, 0xC] - b _08099B86 - .align 2, 0 -_08099B70: .4byte gUnknown_2039968 -_08099B74: .4byte gUnknown_2039958 -_08099B78: - ldr r1, _08099B7C - b _08099B82 - .align 2, 0 -_08099B7C: .4byte gUnknown_2039968 -_08099B80: - ldr r1, _08099B90 -_08099B82: - movs r0, 0 - strh r0, [r1, 0xC] -_08099B86: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08099B90: .4byte gUnknown_2039958 - thumb_func_end sub_8099AFC - - thumb_func_start sub_8099B94 -sub_8099B94: - push {lr} - ldr r0, _08099BA4 - ldrb r0, [r0] - cmp r0, 0 - beq _08099BA8 - movs r0, 0x1 - b _08099BD6 - .align 2, 0 -_08099BA4: .4byte gUnknown_2039990 -_08099BA8: - ldr r1, _08099BBC - ldr r0, [r1] - cmp r0, 0 - beq _08099BC0 - ldr r0, [r1, 0x8] - cmp r0, 0 - beq _08099BD6 - movs r0, 0x1 - b _08099BD6 - .align 2, 0 -_08099BBC: .4byte gUnknown_2039978 -_08099BC0: - movs r1, 0 - ldr r0, _08099BDC - ldr r0, [r0] - cmp r0, 0 - bne _08099BD2 - ldr r0, _08099BE0 - ldr r0, [r0] - cmp r0, 0 - beq _08099BD4 -_08099BD2: - movs r1, 0x1 -_08099BD4: - adds r0, r1, 0 -_08099BD6: - pop {r1} - bx r1 - .align 2, 0 -_08099BDC: .4byte gUnknown_2039958 -_08099BE0: .4byte gUnknown_2039968 - thumb_func_end sub_8099B94 - - thumb_func_start sub_8099BE4 -sub_8099BE4: - push {r4,r5,lr} - ldr r4, _08099C10 - ldr r0, [r4] - cmp r0, 0 - bne _08099BF6 - ldr r0, [r4, 0x8] - cmp r0, 0 - bne _08099BF6 - b _08099D08 -_08099BF6: - adds r0, r4, 0 - adds r0, 0x8 - bl sub_80998E0 - lsls r0, 24 - cmp r0, 0 - beq _08099C14 - ldrh r0, [r4, 0x14] - ldr r1, [r4, 0x4] - bl sub_8099E80 - b _08099DC0 - .align 2, 0 -_08099C10: .4byte gUnknown_2039978 -_08099C14: - ldr r0, [r4, 0x8] - cmp r0, 0 - beq _08099C1C - b _08099DC0 -_08099C1C: - ldr r0, [r4] - cmp r0, 0xE - bls _08099C24 - b _08099DC0 -_08099C24: - lsls r0, 2 - ldr r1, _08099C30 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08099C30: .4byte _08099C34 - .align 2, 0 -_08099C34: - .4byte _08099DC0 - .4byte _08099C70 - .4byte _08099CD8 - .4byte _08099C70 - .4byte _08099CD8 - .4byte _08099C70 - .4byte _08099CD8 - .4byte _08099C70 - .4byte _08099CD8 - .4byte _08099C70 - .4byte _08099CD8 - .4byte _08099C70 - .4byte _08099CD8 - .4byte _08099CD8 - .4byte _08099CD8 -_08099C70: - ldr r0, _08099C80 - ldrh r1, [r0, 0x14] - adds r3, r0, 0 - cmp r1, 0xFF - bls _08099C84 - movs r0, 0 - str r0, [r3] - b _08099DC0 - .align 2, 0 -_08099C80: .4byte gUnknown_2039978 -_08099C84: - ldr r0, _08099CA0 - ldrb r0, [r0] - cmp r0, 0 - bne _08099C8E - b _08099DC0 -_08099C8E: - movs r2, 0 - ldr r0, [r3] - cmp r0, 0x3 - beq _08099CB2 - cmp r0, 0x3 - bhi _08099CA4 - cmp r0, 0x1 - beq _08099CAE - b _08099CBC - .align 2, 0 -_08099CA0: .4byte gUnknown_2039990 -_08099CA4: - cmp r0, 0x5 - beq _08099CB6 - cmp r0, 0x7 - beq _08099CBA - b _08099CBC -_08099CAE: - movs r2, 0x2 - b _08099CC0 -_08099CB2: - movs r2, 0x4 - b _08099CC0 -_08099CB6: - movs r2, 0x6 - b _08099CC0 -_08099CBA: - movs r2, 0x8 -_08099CBC: - cmp r2, 0 - beq _08099CD4 -_08099CC0: - ldr r0, _08099CD0 - movs r4, 0 - ldrsh r1, [r0, r4] - adds r0, r2, 0 - ldr r2, [r3, 0x4] - bl sub_8099AFC - b _08099DC0 - .align 2, 0 -_08099CD0: .4byte gUnknown_2039992 -_08099CD4: - str r2, [r3] - b _08099DC0 -_08099CD8: - ldr r2, _08099CE4 - ldrh r0, [r2, 0x14] - cmp r0, 0 - bne _08099CE8 - str r0, [r2] - b _08099DC0 - .align 2, 0 -_08099CE4: .4byte gUnknown_2039978 -_08099CE8: - ldr r0, _08099D00 - ldrb r0, [r0] - cmp r0, 0 - beq _08099DC0 - ldr r0, [r2] - ldr r1, _08099D04 - movs r3, 0 - ldrsh r1, [r1, r3] - ldr r2, [r2, 0x4] - bl sub_8099AFC - b _08099DC0 - .align 2, 0 -_08099D00: .4byte gUnknown_2039990 -_08099D04: .4byte gUnknown_2039992 -_08099D08: - ldr r0, _08099D88 - ldrb r0, [r0] - cmp r0, 0 - beq _08099D98 - movs r5, 0x1 - ldr r4, _08099D8C - ldrh r0, [r4, 0xC] - cmp r0, 0 - bne _08099D20 - ldr r0, [r4] - cmp r0, 0 - beq _08099D46 -_08099D20: - movs r5, 0 - ldr r0, [r4] - cmp r0, 0x3 - beq _08099D34 - ldr r0, _08099D90 - movs r2, 0 - ldrsh r1, [r0, r2] - adds r0, r4, 0 - bl sub_8099880 -_08099D34: - adds r0, r4, 0 - bl sub_80998E0 - lsls r0, 24 - cmp r0, 0 - beq _08099D46 - ldrh r0, [r4, 0xC] - bl sub_8099DD0 -_08099D46: - ldr r4, _08099D94 - ldrh r0, [r4, 0xC] - cmp r0, 0 - bne _08099D54 - ldr r0, [r4] - cmp r0, 0 - beq _08099D7A -_08099D54: - movs r5, 0 - ldr r0, [r4] - cmp r0, 0x3 - beq _08099D68 - ldr r0, _08099D90 - movs r3, 0 - ldrsh r1, [r0, r3] - adds r0, r4, 0 - bl sub_8099880 -_08099D68: - adds r0, r4, 0 - bl sub_80998E0 - lsls r0, 24 - cmp r0, 0 - beq _08099D7A - ldrh r0, [r4, 0xC] - bl sub_8099E58 -_08099D7A: - cmp r5, 0 - beq _08099DC0 - ldr r1, _08099D88 - movs r0, 0 - strb r0, [r1] - b _08099DC0 - .align 2, 0 -_08099D88: .4byte gUnknown_2039990 -_08099D8C: .4byte gUnknown_2039958 -_08099D90: .4byte gUnknown_2039992 -_08099D94: .4byte gUnknown_2039968 -_08099D98: - ldr r4, _08099DC8 - adds r0, r4, 0 - bl sub_80998E0 - lsls r0, 24 - cmp r0, 0 - beq _08099DAC - ldrh r0, [r4, 0xC] - bl sub_8099DD0 -_08099DAC: - ldr r4, _08099DCC - adds r0, r4, 0 - bl sub_80998E0 - lsls r0, 24 - cmp r0, 0 - beq _08099DC0 - ldrh r0, [r4, 0xC] - bl sub_8099E58 -_08099DC0: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08099DC8: .4byte gUnknown_2039958 -_08099DCC: .4byte gUnknown_2039968 - thumb_func_end sub_8099BE4 - - thumb_func_start sub_8099DD0 -sub_8099DD0: - push {r4-r7,lr} - lsls r0, 16 - lsrs r7, r0, 16 - movs r4, 0 - ldr r6, _08099DF4 - movs r5, 0xD -_08099DDC: - ldrh r1, [r6] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08099DF8 - lsrs r0, r4, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _08099E00 - .align 2, 0 -_08099DF4: .4byte gUnknown_2039998 -_08099DF8: - lsrs r0, r4, 16 - adds r1, r7, 0 - bl sub_8003664 -_08099E00: - movs r0, 0x80 - lsls r0, 9 - adds r4, r0 - adds r6, 0x2 - subs r5, 0x1 - cmp r5, 0 - bge _08099DDC - ldr r0, _08099E30 - movs r4, 0x80 - lsls r4, 13 - adds r6, r0, 0 - adds r6, 0x20 - movs r5, 0xE -_08099E1A: - ldrh r1, [r6] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08099E34 - lsrs r0, r4, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _08099E3C - .align 2, 0 -_08099E30: .4byte gUnknown_2039998 -_08099E34: - lsrs r0, r4, 16 - adds r1, r7, 0 - bl sub_8003664 -_08099E3C: - movs r0, 0x80 - lsls r0, 9 - adds r4, r0 - adds r6, 0x2 - subs r5, 0x1 - cmp r5, 0 - bge _08099E1A - movs r0, 0x20 - adds r1, r7, 0 - bl sub_8003664 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8099DD0 - - thumb_func_start sub_8099E58 -sub_8099E58: - push {r4,lr} - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - movs r0, 0xF - adds r1, r4, 0 - bl sub_8003664 - movs r0, 0xE - adds r1, r4, 0 - bl sub_8003664 - movs r0, 0x1F - adds r1, r4, 0 - bl sub_8003664 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8099E58 - - thumb_func_start sub_8099E80 -sub_8099E80: - push {r4-r7,lr} - sub sp, 0x4 - str r1, [sp] - lsls r0, 16 - lsrs r6, r0, 16 - ldr r0, _08099EA0 - ldr r1, [r0] - adds r2, r0, 0 - cmp r1, 0xE - bls _08099E96 - b _0809A558 -_08099E96: - lsls r0, r1, 2 - ldr r1, _08099EA4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08099EA0: .4byte gUnknown_2039978 -_08099EA4: .4byte _08099EA8 - .align 2, 0 -_08099EA8: - .4byte _0809A558 - .4byte _08099EE4 - .4byte _0809A05A - .4byte _0809A1D2 - .4byte _0809A34A - .4byte _08099FDE - .4byte _0809A156 - .4byte _0809A2CE - .4byte _0809A4BC - .4byte _08099F5E - .4byte _0809A0D6 - .4byte _0809A24E - .4byte _0809A3EA - .4byte _0809A48A - .4byte _0809A48A -_08099EE4: - movs r4, 0 - movs r5, 0 - ldr r7, _08099F00 -_08099EEA: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08099F04 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _08099F0E - .align 2, 0 -_08099F00: .4byte gUnknown_2039998 -_08099F04: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036AC -_08099F0E: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0xF - ble _08099EEA - movs r4, 0x10 - movs r5, 0x80 - lsls r5, 13 - ldr r0, _08099F40 - adds r7, r0, 0 - adds r7, 0x20 -_08099F28: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08099F44 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _08099F4E - .align 2, 0 -_08099F40: .4byte gUnknown_2039998 -_08099F44: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036AC -_08099F4E: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0x1F - ble _08099F28 - b _0809A558 -_08099F5E: - movs r4, 0xE - movs r5, 0xE0 - lsls r5, 12 - ldr r0, _08099F80 - adds r7, r0, 0 - adds r7, 0x1C -_08099F6A: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08099F84 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _08099F8E - .align 2, 0 -_08099F80: .4byte gUnknown_2039998 -_08099F84: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036AC -_08099F8E: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0xF - ble _08099F6A - movs r4, 0x1F - movs r5, 0xF8 - lsls r5, 13 - ldr r0, _08099FC0 - adds r7, r0, 0 - adds r7, 0x3E -_08099FA8: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08099FC4 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _08099FCE - .align 2, 0 -_08099FC0: .4byte gUnknown_2039998 -_08099FC4: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036AC -_08099FCE: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0x1F - ble _08099FA8 - b _0809A558 -_08099FDE: - movs r4, 0 - movs r5, 0 - ldr r7, _08099FFC -_08099FE4: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A000 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A00A - .align 2, 0 -_08099FFC: .4byte gUnknown_2039998 -_0809A000: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036AC -_0809A00A: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0xD - ble _08099FE4 - movs r4, 0x10 - movs r5, 0x80 - lsls r5, 13 - ldr r0, _0809A03C - adds r7, r0, 0 - adds r7, 0x20 -_0809A024: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A040 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A04A - .align 2, 0 -_0809A03C: .4byte gUnknown_2039998 -_0809A040: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036AC -_0809A04A: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0x1E - ble _0809A024 - b _0809A558 -_0809A05A: - movs r4, 0 - movs r5, 0 - ldr r7, _0809A078 -_0809A060: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A07C - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A086 - .align 2, 0 -_0809A078: .4byte gUnknown_2039998 -_0809A07C: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036F4 -_0809A086: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0xF - ble _0809A060 - movs r4, 0x10 - movs r5, 0x80 - lsls r5, 13 - ldr r0, _0809A0B8 - adds r7, r0, 0 - adds r7, 0x20 -_0809A0A0: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A0BC - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A0C6 - .align 2, 0 -_0809A0B8: .4byte gUnknown_2039998 -_0809A0BC: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036F4 -_0809A0C6: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0x1F - ble _0809A0A0 - b _0809A558 -_0809A0D6: - movs r4, 0xE - movs r5, 0xE0 - lsls r5, 12 - ldr r0, _0809A0F8 - adds r7, r0, 0 - adds r7, 0x1C -_0809A0E2: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A0FC - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A106 - .align 2, 0 -_0809A0F8: .4byte gUnknown_2039998 -_0809A0FC: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036F4 -_0809A106: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0xF - ble _0809A0E2 - movs r4, 0x1F - movs r5, 0xF8 - lsls r5, 13 - ldr r0, _0809A138 - adds r7, r0, 0 - adds r7, 0x3E -_0809A120: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A13C - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A146 - .align 2, 0 -_0809A138: .4byte gUnknown_2039998 -_0809A13C: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036F4 -_0809A146: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0x1F - ble _0809A120 - b _0809A558 -_0809A156: - movs r4, 0 - movs r5, 0 - ldr r7, _0809A174 -_0809A15C: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A178 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A182 - .align 2, 0 -_0809A174: .4byte gUnknown_2039998 -_0809A178: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036F4 -_0809A182: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0xD - ble _0809A15C - movs r4, 0x10 - movs r5, 0x80 - lsls r5, 13 - ldr r0, _0809A1B4 - adds r7, r0, 0 - adds r7, 0x20 -_0809A19C: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A1B8 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A1C2 - .align 2, 0 -_0809A1B4: .4byte gUnknown_2039998 -_0809A1B8: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80036F4 -_0809A1C2: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0x1E - ble _0809A19C - b _0809A558 -_0809A1D2: - movs r4, 0 - movs r5, 0 - ldr r7, _0809A1F0 -_0809A1D8: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A1F4 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A1FE - .align 2, 0 -_0809A1F0: .4byte gUnknown_2039998 -_0809A1F4: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_8003780 -_0809A1FE: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0xF - ble _0809A1D8 - movs r4, 0x10 - movs r5, 0x80 - lsls r5, 13 - ldr r0, _0809A230 - adds r7, r0, 0 - adds r7, 0x20 -_0809A218: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A234 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A23E - .align 2, 0 -_0809A230: .4byte gUnknown_2039998 -_0809A234: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_8003780 -_0809A23E: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0x1F - ble _0809A218 - b _0809A558 -_0809A24E: - movs r4, 0xE - movs r5, 0xE0 - lsls r5, 12 - ldr r0, _0809A270 - adds r7, r0, 0 - adds r7, 0x1C -_0809A25A: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A274 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A27E - .align 2, 0 -_0809A270: .4byte gUnknown_2039998 -_0809A274: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_8003780 -_0809A27E: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0xF - ble _0809A25A - movs r4, 0x1F - movs r5, 0xF8 - lsls r5, 13 - ldr r0, _0809A2B0 - adds r7, r0, 0 - adds r7, 0x3E -_0809A298: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A2B4 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A2BE - .align 2, 0 -_0809A2B0: .4byte gUnknown_2039998 -_0809A2B4: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_8003780 -_0809A2BE: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0x1F - ble _0809A298 - b _0809A558 -_0809A2CE: - movs r4, 0 - movs r5, 0 - ldr r7, _0809A2EC -_0809A2D4: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A2F0 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A2FA - .align 2, 0 -_0809A2EC: .4byte gUnknown_2039998 -_0809A2F0: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_8003780 -_0809A2FA: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0xD - ble _0809A2D4 - movs r4, 0x10 - movs r5, 0x80 - lsls r5, 13 - ldr r0, _0809A32C - adds r7, r0, 0 - adds r7, 0x20 -_0809A314: - ldrh r1, [r7] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A330 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A33A - .align 2, 0 -_0809A32C: .4byte gUnknown_2039998 -_0809A330: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_8003780 -_0809A33A: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r7, 0x2 - adds r4, 0x1 - cmp r4, 0x1E - ble _0809A314 - b _0809A558 -_0809A34A: - movs r4, 0 - movs r5, 0 -_0809A34E: - ldr r0, _0809A36C - lsls r1, r4, 1 - adds r1, r0 - ldrh r1, [r1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809A370 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A38C - .align 2, 0 -_0809A36C: .4byte gUnknown_2039998 -_0809A370: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A382 - lsrs r0, r5, 16 - adds r1, r6, 0 - bl sub_8003664 - b _0809A38C -_0809A382: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80037C8 -_0809A38C: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r4, 0x1 - cmp r4, 0xF - ble _0809A34E - movs r4, 0x10 - movs r5, 0x80 - lsls r5, 13 -_0809A39E: - ldr r0, _0809A3BC - lsls r1, r4, 1 - adds r1, r0 - ldrh r1, [r1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809A3C0 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A3DC - .align 2, 0 -_0809A3BC: .4byte gUnknown_2039998 -_0809A3C0: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A3D2 - lsrs r0, r5, 16 - adds r1, r6, 0 - bl sub_8003664 - b _0809A3DC -_0809A3D2: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80037C8 -_0809A3DC: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r4, 0x1 - cmp r4, 0x1F - ble _0809A39E - b _0809A558 -_0809A3EA: - movs r4, 0xE - movs r5, 0xE0 - lsls r5, 12 -_0809A3F0: - ldr r0, _0809A40C - lsls r1, r4, 1 - adds r1, r0 - ldrh r1, [r1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809A410 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A42C - .align 2, 0 -_0809A40C: .4byte gUnknown_2039998 -_0809A410: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A422 - lsrs r0, r5, 16 - adds r1, r6, 0 - bl sub_8003664 - b _0809A42C -_0809A422: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80037C8 -_0809A42C: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r4, 0x1 - cmp r4, 0xF - ble _0809A3F0 - movs r4, 0x1F - movs r5, 0xF8 - lsls r5, 13 -_0809A43E: - ldr r0, _0809A45C - lsls r1, r4, 1 - adds r1, r0 - ldrh r1, [r1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809A460 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A47C - .align 2, 0 -_0809A45C: .4byte gUnknown_2039998 -_0809A460: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A472 - lsrs r0, r5, 16 - adds r1, r6, 0 - bl sub_8003664 - b _0809A47C -_0809A472: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80037C8 -_0809A47C: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r4, 0x1 - cmp r4, 0x1F - ble _0809A43E - b _0809A558 -_0809A48A: - ldr r0, [r2] - cmp r0, 0xD - beq _0809A496 - cmp r0, 0xE - beq _0809A4AA - b _0809A4BC -_0809A496: - mov r0, sp - movs r1, 0x90 - strb r1, [r0] - strb r1, [r0, 0x1] - mov r1, sp - movs r0, 0xFF - strb r0, [r1, 0x2] - movs r0, 0x1 - negs r0, r0 - b _0809A4BA -_0809A4AA: - mov r1, sp - movs r0, 0xFF - strb r0, [r1] - movs r0, 0xC0 - strb r0, [r1, 0x1] - movs r0, 0x80 - strb r0, [r1, 0x2] - subs r0, 0x81 -_0809A4BA: - strb r0, [r1, 0x3] -_0809A4BC: - movs r4, 0 - movs r5, 0 -_0809A4C0: - ldr r0, _0809A4DC - lsls r1, r4, 1 - adds r1, r0 - ldrh r1, [r1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809A4E0 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A4FC - .align 2, 0 -_0809A4DC: .4byte gUnknown_2039998 -_0809A4E0: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A4F2 - lsrs r0, r5, 16 - adds r1, r6, 0 - bl sub_8003664 - b _0809A4FC -_0809A4F2: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80037C8 -_0809A4FC: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r4, 0x1 - cmp r4, 0xD - ble _0809A4C0 - movs r4, 0x10 - movs r5, 0x80 - lsls r5, 13 -_0809A50E: - ldr r0, _0809A52C - lsls r1, r4, 1 - adds r1, r0 - ldrh r1, [r1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809A530 - lsrs r0, r5, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8003664 - b _0809A54C - .align 2, 0 -_0809A52C: .4byte gUnknown_2039998 -_0809A530: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809A542 - lsrs r0, r5, 16 - adds r1, r6, 0 - bl sub_8003664 - b _0809A54C -_0809A542: - lsrs r0, r5, 16 - adds r1, r6, 0 - ldr r2, [sp] - bl sub_80037C8 -_0809A54C: - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r4, 0x1 - cmp r4, 0x1E - ble _0809A50E -_0809A558: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8099E80 - - thumb_func_start sub_809A560 -sub_809A560: - push {r4-r6,lr} - bl sub_8014144 - ldr r6, _0809A5F4 - movs r0, 0xB5 - lsls r0, 3 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r6] - movs r4, 0 - str r4, [r0] - movs r5, 0x1 - negs r5, r5 - str r5, [r0, 0x4] - str r5, [r0, 0x8] - ldr r0, _0809A5F8 - strh r4, [r0] - ldr r0, _0809A5FC - strh r4, [r0] - movs r0, 0 - movs r1, 0x14 - bl sub_80095CC - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0 - movs r1, 0x14 - bl sub_8009408 - bl sub_809B294 - ldr r0, [r6] - ldr r2, _0809A600 - adds r1, r0, r2 - str r4, [r1] - adds r2, 0x4 - adds r1, r0, r2 - str r4, [r1] - adds r2, 0x4 - adds r1, r0, r2 - str r4, [r1] - adds r2, 0x4 - adds r1, r0, r2 - str r4, [r1] - adds r2, 0x4 - adds r1, r0, r2 - str r4, [r1] - adds r2, 0x4 - adds r1, r0, r2 - str r4, [r1] - adds r2, 0x4 - adds r1, r0, r2 - str r4, [r1] - adds r2, 0x4 - adds r1, r0, r2 - str r5, [r1] - ldr r1, _0809A604 - adds r0, r1 - str r5, [r0] - bl sub_809A7EC - ldr r0, [r6] - ldr r2, _0809A608 - adds r0, r2 - ldr r1, _0809A60C - strh r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809A5F4: .4byte gUnknown_3001B64 -_0809A5F8: .4byte gUnknown_20399DC -_0809A5FC: .4byte gUnknown_20399DE -_0809A600: .4byte 0x00000414 -_0809A604: .4byte 0x00000434 -_0809A608: .4byte 0x000005a4 -_0809A60C: .4byte 0x0000ffff - thumb_func_end sub_809A560 - - thumb_func_start sub_809A610 -sub_809A610: - push {r4,lr} - bl sub_809A62C - ldr r4, _0809A628 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809A628: .4byte gUnknown_3001B64 - thumb_func_end sub_809A610 - - thumb_func_start sub_809A62C -sub_809A62C: - push {r4,lr} - ldr r0, _0809A670 - ldr r0, [r0] - movs r2, 0 - str r2, [r0] - movs r1, 0x1 - negs r1, r1 - str r1, [r0, 0x4] - str r1, [r0, 0x8] - ldr r0, _0809A674 - strh r2, [r0] - ldr r0, _0809A678 - strh r2, [r0] - movs r4, 0 -_0809A648: - lsls r0, r4, 16 - asrs r0, 16 - bl sub_809A83C - adds r4, 0x1 - cmp r4, 0x9 - ble _0809A648 - ldr r0, _0809A670 - ldr r0, [r0] - ldr r1, _0809A67C - adds r0, r1 - movs r1, 0 - str r1, [r0] - movs r0, 0 - movs r1, 0x1 - bl sub_809A680 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809A670: .4byte gUnknown_3001B64 -_0809A674: .4byte gUnknown_20399DC -_0809A678: .4byte gUnknown_20399DE -_0809A67C: .4byte 0x00000414 - thumb_func_end sub_809A62C - - thumb_func_start sub_809A680 -sub_809A680: - push {r4,lr} - adds r4, r0, 0 - cmp r4, 0x4 - bhi _0809A6C2 - lsls r0, r4, 2 - ldr r1, _0809A694 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809A694: .4byte _0809A698 - .align 2, 0 -_0809A698: - .4byte _0809A6AC - .4byte _0809A6BC - .4byte _0809A6BC - .4byte _0809A6BC - .4byte _0809A6BC -_0809A6AC: - bl sub_809B294 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - b _0809A6D0 -_0809A6BC: - bl sub_809B294 - b _0809A6D0 -_0809A6C2: - bl sub_809B294 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C -_0809A6D0: - ldr r0, _0809A6E0 - ldr r0, [r0] - str r4, [r0] - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0809A6E0: .4byte gUnknown_3001B64 - thumb_func_end sub_809A680 - - thumb_func_start sub_809A6E4 -sub_809A6E4: - lsls r0, 16 - lsrs r0, 16 - ldr r2, _0809A6F4 - ldrh r1, [r2] - orrs r0, r1 - strh r0, [r2] - bx lr - .align 2, 0 -_0809A6F4: .4byte gUnknown_20399DC - thumb_func_end sub_809A6E4 - - thumb_func_start sub_809A6F8 -sub_809A6F8: - lsls r0, 16 - lsrs r0, 16 - ldr r2, _0809A708 - ldrh r1, [r2] - bics r1, r0 - strh r1, [r2] - bx lr - .align 2, 0 -_0809A708: .4byte gUnknown_20399DC - thumb_func_end sub_809A6F8 - - thumb_func_start sub_809A70C -sub_809A70C: - ldr r0, _0809A714 - ldrh r0, [r0] - bx lr - .align 2, 0 -_0809A714: .4byte gUnknown_20399DC - thumb_func_end sub_809A70C - - thumb_func_start nullsub_209 -nullsub_209: - bx lr - thumb_func_end nullsub_209 - - thumb_func_start sub_809A71C -sub_809A71C: - push {lr} - adds r1, r0, 0 - ldr r0, _0809A734 - ldr r0, [r0] - str r1, [r0, 0x4] - str r1, [r0, 0x8] - adds r0, r1, 0 - bl sub_801416C - pop {r0} - bx r0 - .align 2, 0 -_0809A734: .4byte gUnknown_3001B64 - thumb_func_end sub_809A71C - - thumb_func_start sub_809A738 -sub_809A738: - push {lr} - ldr r2, _0809A74C - ldr r2, [r2] - str r0, [r2, 0x4] - str r1, [r2, 0x8] - bl sub_801416C - pop {r0} - bx r0 - .align 2, 0 -_0809A74C: .4byte gUnknown_3001B64 - thumb_func_end sub_809A738 - - thumb_func_start sub_809A750 -sub_809A750: - push {lr} - ldr r0, _0809A764 - ldr r0, [r0] - adds r0, 0xC - bl sub_809B40C - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_0809A764: .4byte gUnknown_3001B64 - thumb_func_end sub_809A750 - - thumb_func_start sub_809A768 -sub_809A768: - movs r0, 0 - bx lr - thumb_func_end sub_809A768 - - thumb_func_start sub_809A76C -sub_809A76C: - push {lr} - ldr r0, _0809A78C - ldr r0, [r0] - ldr r1, [r0] - cmp r1, 0x1 - bcc _0809A7A4 - cmp r1, 0x2 - bls _0809A790 - cmp r1, 0x3 - bne _0809A7A4 - adds r0, 0xC - movs r2, 0x1 - negs r2, r2 - movs r1, 0x4 - b _0809A798 - .align 2, 0 -_0809A78C: .4byte gUnknown_3001B64 -_0809A790: - adds r0, 0xC - movs r2, 0x1 - negs r2, r2 - movs r1, 0x84 -_0809A798: - movs r3, 0 - bl sub_809B2B8 - lsls r0, 24 - lsrs r0, 24 - b _0809A7AE -_0809A7A4: - movs r0, 0 - movs r1, 0x1 - bl sub_809A680 - movs r0, 0 -_0809A7AE: - pop {r1} - bx r1 - thumb_func_end sub_809A76C - - thumb_func_start sub_809A7B4 -sub_809A7B4: - push {lr} - ldr r0, _0809A7D8 - ldr r0, [r0] - ldr r1, [r0] - cmp r1, 0x3 - bhi _0809A7DC - cmp r1, 0x1 - bcc _0809A7DC - adds r0, 0xC - movs r2, 0x1 - negs r2, r2 - movs r1, 0x4 - movs r3, 0 - bl sub_809B2B8 - lsls r0, 24 - lsrs r0, 24 - b _0809A7E6 - .align 2, 0 -_0809A7D8: .4byte gUnknown_3001B64 -_0809A7DC: - movs r0, 0 - movs r1, 0x1 - bl sub_809A680 - movs r0, 0 -_0809A7E6: - pop {r1} - bx r1 - thumb_func_end sub_809A7B4 - - thumb_func_start sub_809A7EC -sub_809A7EC: - push {r4-r6,lr} - ldr r0, _0809A830 - ldr r0, [r0] - ldr r2, _0809A834 - adds r1, r0, r2 - ldr r0, _0809A838 - adds r6, r0, 0 - movs r3, 0 - movs r2, 0 - movs r4, 0x9 - movs r5, 0xFF -_0809A802: - ldrh r0, [r1] - orrs r0, r6 - strh r0, [r1] - strh r2, [r1, 0x2] - strb r3, [r1, 0x4] - strb r3, [r1, 0x5] - ldrb r0, [r1, 0x6] - orrs r0, r5 - strb r0, [r1, 0x6] - strb r3, [r1, 0x7] - str r2, [r1, 0x8] - str r2, [r1, 0xC] - str r2, [r1, 0x10] - str r2, [r1, 0x14] - strb r3, [r1, 0x1C] - str r2, [r1, 0x20] - subs r4, 0x1 - adds r1, 0x24 - cmp r4, 0 - bge _0809A802 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809A830: .4byte gUnknown_3001B64 -_0809A834: .4byte 0x0000043c -_0809A838: .4byte 0x0000ffff - thumb_func_end sub_809A7EC - - thumb_func_start sub_809A83C -sub_809A83C: - push {r4-r7,lr} - lsls r0, 16 - asrs r0, 16 - ldr r2, _0809A8A0 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r3, _0809A8A4 - adds r1, r3 - ldr r2, [r2] - adds r6, r2, r1 - ldr r1, _0809A8A8 - strh r1, [r6] - movs r2, 0 - movs r7, 0 - strh r7, [r6, 0x2] - strb r2, [r6, 0x4] - strb r2, [r6, 0x5] - movs r1, 0xFF - strb r1, [r6, 0x6] - strb r2, [r6, 0x7] - str r7, [r6, 0x8] - str r7, [r6, 0xC] - str r7, [r6, 0x10] - str r7, [r6, 0x14] - strb r2, [r6, 0x1C] - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 4 - ldr r0, _0809A8AC - adds r0, r4, r0 - ldr r5, _0809A8B0 - adds r1, r5, 0 - bl strcpy - ldr r0, _0809A8B4 - adds r4, r0 - adds r0, r4, 0 - adds r1, r5, 0 - bl strcpy - ldr r0, [r6, 0x20] - cmp r0, 0 - beq _0809A89A - bl CloseFile - str r7, [r6, 0x20] -_0809A89A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809A8A0: .4byte gUnknown_3001B64 -_0809A8A4: .4byte 0x0000043c -_0809A8A8: .4byte 0x0000ffff -_0809A8AC: .4byte gUnknown_202DF98 -_0809A8B0: .4byte gUnknown_811615C -_0809A8B4: .4byte gUnknown_202E2B8 - thumb_func_end sub_809A83C - - thumb_func_start sub_809A8B8 -sub_809A8B8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r0, 16 - asrs r0, 16 - mov r9, r0 - mov r0, sp - strh r1, [r0] - ldr r1, _0809A928 - mov r2, r9 - lsls r0, r2, 3 - add r0, r9 - lsls r0, 2 - ldr r2, _0809A92C - adds r0, r2 - ldr r1, [r1] - adds r7, r1, r0 - movs r0, 0x1 - mov r10, r0 - movs r1, 0 - str r1, [sp, 0x4] - ldr r0, [r7, 0x20] - cmp r0, 0 - beq _0809A8F6 - bl CloseFile - ldr r2, [sp, 0x4] - str r2, [r7, 0x20] -_0809A8F6: - mov r4, sp - adds r4, 0x2 - mov r0, sp - adds r1, r4, 0 - bl sub_80A7DDC - mov r0, sp - ldrh r0, [r0] - subs r0, 0xA - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x13 - bhi _0809A9D6 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_80A8D54 - adds r5, r0, 0 - cmp r5, 0 - bne _0809A930 - movs r2, 0 - mov r10, r2 - b _0809A9D6 - .align 2, 0 -_0809A928: .4byte gUnknown_3001B64 -_0809A92C: .4byte 0x0000043c -_0809A930: - bl sub_808D3BC - cmp r5, r0 - bne _0809A940 - mov r1, sp - movs r0, 0x21 - strh r0, [r1] - b _0809A9D6 -_0809A940: - bl sub_808D3F8 - cmp r5, r0 - bne _0809A950 - mov r1, sp - movs r0, 0x22 - strh r0, [r1] - b _0809A9D6 -_0809A950: - ldrb r0, [r5, 0x4] - subs r0, 0x43 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bhi _0809A990 - movs r0, 0 - ldrsh r1, [r4, r0] - ldr r0, _0809A978 - cmp r1, r0 - beq _0809A9D6 - cmp r1, r0 - ble _0809A97C - adds r0, 0x16 - cmp r1, r0 - bgt _0809A98A - subs r0, 0x1 - cmp r1, r0 - blt _0809A98A - b _0809A9D6 - .align 2, 0 -_0809A978: .4byte 0x00000183 -_0809A97C: - movs r0, 0x82 - lsls r0, 1 - cmp r1, r0 - beq _0809A9D6 - adds r0, 0x2F - cmp r1, r0 - beq _0809A9D6 -_0809A98A: - movs r1, 0 - mov r10, r1 - b _0809A9D6 -_0809A990: - movs r2, 0 - ldrsh r1, [r4, r2] - movs r0, 0x87 - lsls r0, 1 - cmp r1, r0 - bgt _0809A9B0 - subs r0, 0x2 - cmp r1, r0 - bge _0809A9D6 - cmp r1, 0x90 - blt _0809A9D2 - cmp r1, 0x92 - ble _0809A9D6 - cmp r1, 0x96 - beq _0809A9D6 - b _0809A9D2 -_0809A9B0: - movs r0, 0xCF - lsls r0, 1 - cmp r1, r0 - bgt _0809A9CC - subs r0, 0x4 - cmp r1, r0 - bge _0809A9D6 - subs r0, 0x87 - cmp r1, r0 - bgt _0809A9D2 - subs r0, 0x1 - cmp r1, r0 - blt _0809A9D2 - b _0809A9D6 -_0809A9CC: - ldr r0, _0809A9F0 - cmp r1, r0 - beq _0809A9D6 -_0809A9D2: - movs r0, 0 - mov r10, r0 -_0809A9D6: - mov r0, sp - ldrh r0, [r0] - subs r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x21 - bhi _0809AA98 - lsls r0, 2 - ldr r1, _0809A9F4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809A9F0: .4byte 0x000001a7 -_0809A9F4: .4byte _0809A9F8 - .align 2, 0 -_0809A9F8: - .4byte _0809AA80 - .4byte _0809AA80 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA80 - .4byte _0809AA80 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA98 - .4byte _0809AA80 - .4byte _0809AA80 -_0809AA80: - movs r1, 0 - ldrsh r0, [r4, r1] - bl sub_80A8CF0 - lsls r0, 24 - cmp r0, 0 - beq _0809AA94 - movs r2, 0x1 - str r2, [sp, 0x4] - b _0809AA98 -_0809AA94: - movs r0, 0 - mov r10, r0 -_0809AA98: - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809AB34 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_80A7AE8 - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - blt _0809AACE - mov r0, sp - ldrh r0, [r0] - movs r2, 0 - mov r8, r2 - movs r6, 0 - strh r0, [r7] - adds r0, r1, 0 - bl sub_80A8BFC - strh r0, [r7, 0x2] - b _0809AAE6 -_0809AACE: - ldrh r1, [r4] - movs r2, 0 - ldrsh r0, [r4, r2] - cmp r0, 0 - beq _0809AB34 - mov r0, sp - ldrh r0, [r0] - movs r2, 0 - mov r8, r2 - movs r6, 0 - strh r0, [r7] - strh r1, [r7, 0x2] -_0809AAE6: - mov r0, r9 - lsls r4, r0, 2 - add r4, r9 - lsls r4, 4 - ldr r0, _0809AB28 - adds r0, r4, r0 - ldr r5, _0809AB2C - adds r1, r5, 0 - bl strcpy - ldr r0, _0809AB30 - adds r4, r0 - adds r0, r4, 0 - adds r1, r5, 0 - bl strcpy - mov r1, r10 - strb r1, [r7, 0x4] - mov r2, sp - ldrb r2, [r2, 0x4] - strb r2, [r7, 0x5] - movs r0, 0xFF - strb r0, [r7, 0x6] - mov r0, r8 - strb r0, [r7, 0x7] - str r6, [r7, 0x8] - str r6, [r7, 0xC] - str r6, [r7, 0x10] - str r6, [r7, 0x14] - strb r0, [r7, 0x1C] - movs r0, 0x1 - b _0809AB3C - .align 2, 0 -_0809AB28: .4byte gUnknown_202DF98 -_0809AB2C: .4byte gUnknown_811616C -_0809AB30: .4byte gUnknown_202E2B8 -_0809AB34: - mov r0, r9 - bl sub_809A83C - movs r0, 0 -_0809AB3C: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_809A8B8 - - thumb_func_start sub_809AB4C -sub_809AB4C: - push {r4-r6,lr} - lsls r0, 16 - asrs r5, r0, 16 - lsls r1, 16 - asrs r1, 16 - ldr r2, _0809AB78 - lsls r0, r5, 3 - adds r0, r5 - lsls r0, 2 - ldr r3, _0809AB7C - adds r0, r3 - ldr r2, [r2] - adds r6, r2, r0 - adds r0, r5, 0 - bl sub_809A8B8 - lsls r0, 24 - cmp r0, 0 - bne _0809AB80 - movs r0, 0 - b _0809ABA0 - .align 2, 0 -_0809AB78: .4byte gUnknown_3001B64 -_0809AB7C: .4byte 0x0000043c -_0809AB80: - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 4 - ldr r0, _0809ABA8 - adds r0, r4, r0 - movs r2, 0x2 - ldrsh r1, [r6, r2] - bl sub_808D908 - ldr r0, _0809ABAC - adds r4, r0 - ldr r1, _0809ABB0 - adds r0, r4, 0 - bl strcpy - movs r0, 0x1 -_0809ABA0: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0809ABA8: .4byte gUnknown_202DF98 -_0809ABAC: .4byte gUnknown_202E2B8 -_0809ABB0: .4byte gUnknown_811617C - thumb_func_end sub_809AB4C - - thumb_func_start sub_809ABB4 -sub_809ABB4: - push {r4-r6,lr} - lsls r0, 16 - asrs r5, r0, 16 - lsls r1, 16 - asrs r1, 16 - ldr r2, _0809ABE0 - lsls r0, r5, 3 - adds r0, r5 - lsls r0, 2 - ldr r3, _0809ABE4 - adds r0, r3 - ldr r2, [r2] - adds r6, r2, r0 - adds r0, r5, 0 - bl sub_809A8B8 - lsls r0, 24 - cmp r0, 0 - bne _0809ABE8 - movs r0, 0 - b _0809AC0A - .align 2, 0 -_0809ABE0: .4byte gUnknown_3001B64 -_0809ABE4: .4byte 0x0000043c -_0809ABE8: - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 4 - ldr r5, _0809AC10 - adds r5, r4, r5 - movs r0, 0x2 - ldrsh r1, [r6, r0] - adds r0, r5, 0 - bl sub_808D908 - ldr r0, _0809AC14 - adds r4, r0 - adds r0, r4, 0 - adds r1, r5, 0 - bl strcpy - movs r0, 0x1 -_0809AC0A: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0809AC10: .4byte gUnknown_202DF98 -_0809AC14: .4byte gUnknown_202E2B8 - thumb_func_end sub_809ABB4 - - thumb_func_start sub_809AC18 -sub_809AC18: - push {r4-r6,lr} - lsls r0, 16 - asrs r5, r0, 16 - lsls r1, 16 - asrs r1, 16 - ldr r2, _0809AC44 - lsls r0, r5, 3 - adds r0, r5 - lsls r0, 2 - ldr r3, _0809AC48 - adds r0, r3 - ldr r2, [r2] - adds r6, r2, r0 - adds r0, r5, 0 - bl sub_809A8B8 - lsls r0, 24 - cmp r0, 0 - bne _0809AC4C - movs r0, 0 - b _0809AC6E - .align 2, 0 -_0809AC44: .4byte gUnknown_3001B64 -_0809AC48: .4byte 0x0000043c -_0809AC4C: - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 4 - ldr r0, _0809AC74 - adds r0, r4, r0 - movs r2, 0x2 - ldrsh r1, [r6, r2] - bl sub_808D908 - ldr r0, _0809AC78 - adds r4, r0 - movs r3, 0 - ldrsh r1, [r6, r3] - adds r0, r4, 0 - bl sub_80A8EC0 - movs r0, 0x1 -_0809AC6E: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0809AC74: .4byte gUnknown_202DF98 -_0809AC78: .4byte gUnknown_202E2B8 - thumb_func_end sub_809AC18 - - thumb_func_start sub_809AC7C -sub_809AC7C: - push {r4-r6,lr} - lsls r0, 16 - asrs r0, 16 - lsls r1, 24 - asrs r5, r1, 24 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r2, _0809AD10 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _0809AD14 - adds r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - ldr r0, [r4, 0x20] - cmp r0, 0 - beq _0809ACA8 - bl CloseFile - movs r0, 0 - str r0, [r4, 0x20] -_0809ACA8: - movs r0, 0x2 - ldrsh r1, [r4, r0] - cmp r1, 0 - bge _0809ACB2 - b _0809ADC0 -_0809ACB2: - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - bne _0809ACBC - b _0809ADC0 -_0809ACBC: - cmp r1, 0 - bne _0809ACC2 - b _0809ADC0 -_0809ACC2: - cmp r6, 0x15 - beq _0809ACCE - movs r0, 0 - strb r6, [r4, 0x7] - str r0, [r4, 0x8] - str r0, [r4, 0xC] -_0809ACCE: - ldr r2, _0809AD18 - ldrb r0, [r4, 0x7] - lsls r0, 3 - adds r0, r2 - ldr r1, [r4, 0x8] - ldrh r0, [r0] - adds r0, r1 - movs r6, 0 - movs r3, 0 - strh r0, [r4, 0x18] - ldrb r0, [r4, 0x7] - lsls r0, 3 - adds r0, r2 - ldr r1, [r4, 0xC] - ldrh r0, [r0, 0x2] - adds r0, r1 - strh r0, [r4, 0x1A] - ldrb r0, [r4, 0x7] - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x4] - strb r0, [r4, 0x1D] - strb r6, [r4, 0x1E] - movs r0, 0x2 - negs r0, r0 - cmp r5, r0 - bne _0809AD1C - strb r5, [r4, 0x6] - str r3, [r4, 0x10] - str r3, [r4, 0x14] - strb r6, [r4, 0x1C] - movs r0, 0 - b _0809ADD2 - .align 2, 0 -_0809AD10: .4byte gUnknown_3001B64 -_0809AD14: .4byte 0x0000043c -_0809AD18: .4byte gUnknown_8116040 -_0809AD1C: - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _0809ADC0 - movs r1, 0x2 - ldrsh r0, [r4, r1] - bl sub_808DD90 - str r0, [r4, 0x20] - cmp r0, 0 - beq _0809ADB6 - strb r5, [r4, 0x6] - str r0, [r4, 0x10] - movs r1, 0 - bl GetFileDataPtr - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0x4D - beq _0809AD62 - cmp r0, 0x4D - bgt _0809AD4C - cmp r0, 0x47 - beq _0809AD56 - b _0809ADA8 -_0809AD4C: - cmp r0, 0x53 - beq _0809AD76 - cmp r0, 0x73 - beq _0809AD8A - b _0809ADA8 -_0809AD56: - movs r0, 0xF - ands r0, r5 - cmp r0, 0x5 - bgt _0809ADA8 - adds r0, r5, 0x6 - b _0809AD9C -_0809AD62: - ldrb r0, [r4, 0x1D] - cmp r0, 0 - beq _0809ADA8 - movs r0, 0xF - ands r0, r5 - cmp r0, 0x3 - bgt _0809ADA8 - strb r6, [r4, 0x1D] - adds r0, r5, 0x4 - b _0809AD9C -_0809AD76: - ldrb r0, [r4, 0x1D] - cmp r0, 0 - beq _0809ADA8 - movs r0, 0xF - ands r0, r5 - cmp r0, 0 - bgt _0809ADA8 - strb r6, [r4, 0x1D] - adds r0, r5, 0x1 - b _0809AD9C -_0809AD8A: - ldrb r0, [r4, 0x1D] - cmp r0, 0 - beq _0809ADA8 - movs r0, 0xF - ands r0, r5 - cmp r0, 0x1 - bgt _0809ADA8 - strb r6, [r4, 0x1D] - adds r0, r5, 0x2 -_0809AD9C: - lsls r0, 24 - asrs r5, r0, 24 - movs r0, 0x40 - orrs r5, r0 - lsls r0, r5, 24 - asrs r5, r0, 24 -_0809ADA8: - ldr r0, [r4, 0x20] - ldr r0, [r0, 0x4] - str r0, [r4, 0x14] - movs r0, 0xF - ands r5, r0 - strb r5, [r4, 0x1C] - b _0809ADBC -_0809ADB6: - str r0, [r4, 0x10] - str r0, [r4, 0x14] - strb r6, [r4, 0x1C] -_0809ADBC: - movs r0, 0x1 - b _0809ADD2 -_0809ADC0: - movs r0, 0xFF - strb r0, [r4, 0x6] - movs r0, 0 - strb r0, [r4, 0x7] - str r0, [r4, 0x8] - str r0, [r4, 0xC] - str r0, [r4, 0x10] - str r0, [r4, 0x14] - strb r0, [r4, 0x1C] -_0809ADD2: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809AC7C - - thumb_func_start sub_809ADD8 -sub_809ADD8: - push {r4,lr} - adds r4, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _0809AE28 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _0809AE2C - adds r1, r0 - ldr r0, [r2] - adds r3, r0, r1 - movs r1, 0x2 - ldrsh r0, [r3, r1] - cmp r0, 0 - blt _0809AE34 - cmp r0, 0 - beq _0809AE34 - ldr r0, [r4] - ldr r1, [r4, 0x4] - str r0, [r3, 0x8] - str r1, [r3, 0xC] - ldr r2, _0809AE30 - ldrb r0, [r3, 0x7] - lsls r0, 3 - adds r0, r2 - ldr r1, [r3, 0x8] - ldrh r0, [r0] - adds r0, r1 - strh r0, [r3, 0x18] - ldrb r0, [r3, 0x7] - lsls r0, 3 - adds r0, r2 - ldr r1, [r3, 0xC] - ldrh r0, [r0, 0x2] - adds r0, r1 - strh r0, [r3, 0x1A] - movs r0, 0x1 - b _0809AE36 - .align 2, 0 -_0809AE28: .4byte gUnknown_3001B64 -_0809AE2C: .4byte 0x0000043c -_0809AE30: .4byte gUnknown_8116040 -_0809AE34: - movs r0, 0 -_0809AE36: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809ADD8 - - thumb_func_start sub_809AE3C -sub_809AE3C: - push {r4,lr} - lsls r0, 16 - asrs r2, r0, 16 - cmp r2, 0 - blt _0809AE88 - ldr r1, _0809AE80 - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r3, _0809AE84 - adds r0, r3 - ldr r1, [r1] - adds r4, r1, r0 - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _0809AE74 - movs r1, 0x6 - ldrsb r1, [r4, r1] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0809AE74 - adds r0, r2, 0 - movs r1, 0 - movs r2, 0 - bl sub_809AC7C -_0809AE74: - ldr r0, [r4, 0x10] - cmp r0, 0 - beq _0809AE88 - adds r0, r4, 0 - adds r0, 0x10 - b _0809AE8A - .align 2, 0 -_0809AE80: .4byte gUnknown_3001B64 -_0809AE84: .4byte 0x0000043c -_0809AE88: - movs r0, 0 -_0809AE8A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809AE3C - - thumb_func_start sub_809AE90 -sub_809AE90: - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r2, 0 - lsls r1, 16 - asrs r6, r1, 16 - cmp r4, 0 - bne _0809AEA4 - bl sub_809A76C - b _0809AEE0 -_0809AEA4: - ldrb r0, [r4] - cmp r0, 0 - beq _0809AEDC - ldr r1, _0809AED0 - lsls r0, r5, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0 - bl sub_809A680 - ldr r0, _0809AED4 - ldr r0, [r0] - adds r0, 0xC - ldr r2, _0809AED8 - lsls r1, r5, 1 - adds r1, r2 - ldrh r1, [r1] - adds r2, r6, 0 - adds r3, r4, 0 - bl sub_809B2B8 - b _0809AEE0 - .align 2, 0 -_0809AED0: .4byte gUnknown_8116134 -_0809AED4: .4byte gUnknown_3001B64 -_0809AED8: .4byte gUnknown_8116148 -_0809AEDC: - bl sub_809A7B4 -_0809AEE0: - lsls r0, 24 - lsrs r0, 24 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809AE90 - - thumb_func_start sub_809AEEC -sub_809AEEC: - push {r4,lr} - adds r4, r0, 0 - cmp r4, 0 - beq _0809AF1C - ldrb r0, [r4] - cmp r0, 0 - beq _0809AF1C - movs r0, 0x2 - movs r1, 0x1 - bl sub_809A680 - ldr r0, _0809AF18 - ldr r0, [r0] - adds r0, 0xC - movs r2, 0x1 - negs r2, r2 - movs r1, 0xC2 - adds r3, r4, 0 - bl sub_809B2B8 - b _0809AF20 - .align 2, 0 -_0809AF18: .4byte gUnknown_3001B64 -_0809AF1C: - bl sub_809A76C -_0809AF20: - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809AEEC - - thumb_func_start sub_809AF2C -sub_809AF2C: - push {r4,lr} - adds r4, r0, 0 - cmp r4, 0 - beq _0809AF5C - ldrb r0, [r4] - cmp r0, 0 - beq _0809AF5C - movs r0, 0x2 - movs r1, 0x1 - bl sub_809A680 - ldr r0, _0809AF58 - ldr r0, [r0] - adds r0, 0xC - movs r2, 0x1 - negs r2, r2 - movs r1, 0xC2 - adds r3, r4, 0 - bl sub_809B2B8 - b _0809AF60 - .align 2, 0 -_0809AF58: .4byte gUnknown_3001B64 -_0809AF5C: - bl sub_809A76C -_0809AF60: - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809AF2C - - thumb_func_start sub_809AF6C -sub_809AF6C: - push {r4,lr} - adds r4, r1, 0 - cmp r4, 0 - beq _0809AF9C - ldrb r0, [r4] - cmp r0, 0 - beq _0809AF9C - movs r0, 0x3 - movs r1, 0x1 - bl sub_809A680 - ldr r0, _0809AF98 - ldr r0, [r0] - adds r0, 0xC - movs r2, 0x1 - negs r2, r2 - movs r1, 0x65 - adds r3, r4, 0 - bl sub_809B2B8 - b _0809AFA0 - .align 2, 0 -_0809AF98: .4byte gUnknown_3001B64 -_0809AF9C: - bl sub_809A76C -_0809AFA0: - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809AF6C - - thumb_func_start sub_809AFAC -sub_809AFAC: - push {lr} - movs r1, 0 - ldr r0, _0809AFC4 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x4 - bne _0809AFBC - movs r1, 0x1 -_0809AFBC: - adds r0, r1, 0 - pop {r1} - bx r1 - .align 2, 0 -_0809AFC4: .4byte gUnknown_3001B64 - thumb_func_end sub_809AFAC - - thumb_func_start sub_809AFC8 -sub_809AFC8: - push {r4,r5,lr} - sub sp, 0x8 - adds r5, r1, 0 - adds r1, r2, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - asrs r1, 16 - ldr r4, _0809AFF8 - negs r2, r0 - orrs r2, r0 - lsrs r2, 31 - str r1, [sp] - str r3, [sp, 0x4] - adds r0, r4, 0 - movs r1, 0 - adds r3, r5, 0 - bl sub_809B028 - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809AFF8: .4byte gUnknown_81160E8 - thumb_func_end sub_809AFC8 - - thumb_func_start sub_809AFFC -sub_809AFFC: - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - mov r0, sp - bl sub_809B18C - lsls r0, 24 - lsrs r2, r0, 24 - cmp r4, 0 - beq _0809B01C - movs r1, 0 - ldr r0, [sp] - cmp r0, 0x1 - bne _0809B01A - movs r1, 0x1 -_0809B01A: - strb r1, [r4] -_0809B01C: - adds r0, r2, 0 - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809AFFC - - thumb_func_start sub_809B028 -sub_809B028: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - mov r8, r0 - adds r7, r2, 0 - adds r6, r3, 0 - ldr r0, [sp, 0x2C] - lsls r1, 24 - lsrs r5, r1, 24 - lsls r0, 16 - asrs r4, r0, 16 - ldr r1, _0809B084 - lsls r0, r6, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0 - bl sub_809A680 - ldr r0, _0809B088 - ldr r1, [r0] - ldr r0, _0809B08C - adds r2, r1, r0 - movs r0, 0x1 - str r0, [r2] - movs r0, 0x83 - lsls r0, 3 - adds r2, r1, r0 - movs r0, 0 - str r0, [r2] - ldr r2, _0809B090 - adds r0, r1, r2 - mov r2, r8 - str r2, [r0] - movs r2, 0x84 - lsls r2, 3 - adds r0, r1, r2 - movs r2, 0x2 - str r2, [r0] - ldr r0, _0809B094 - adds r1, r0 - cmp r5, 0 - beq _0809B098 - str r2, [r1] - b _0809B09A - .align 2, 0 -_0809B084: .4byte gUnknown_8116134 -_0809B088: .4byte gUnknown_3001B64 -_0809B08C: .4byte 0x00000414 -_0809B090: .4byte 0x0000041c -_0809B094: .4byte 0x00000424 -_0809B098: - str r5, [r1] -_0809B09A: - ldr r0, _0809B0D4 - ldr r0, [r0] - movs r1, 0x85 - lsls r1, 3 - adds r2, r0, r1 - movs r1, 0 - str r1, [r2] - movs r2, 0x86 - lsls r2, 3 - adds r0, r2 - str r7, [r0] - ldr r0, _0809B0D8 - lsls r2, r6, 1 - adds r0, r2, r0 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 1 - ands r0, r1 - adds r5, r2, 0 - cmp r0, 0 - beq _0809B0F6 - cmp r4, 0 - bge _0809B0E4 - ldr r0, _0809B0DC - ldr r1, _0809B0E0 - bl strcpy - b _0809B0F6 - .align 2, 0 -_0809B0D4: .4byte gUnknown_3001B64 -_0809B0D8: .4byte gUnknown_8116148 -_0809B0DC: .4byte gUnknown_202E5D8 -_0809B0E0: .4byte gUnknown_8116180 -_0809B0E4: - ldr r0, _0809B134 - ldr r1, _0809B138 - lsls r2, r4, 2 - adds r2, r4 - lsls r2, 4 - ldr r3, _0809B13C - adds r2, r3 - bl sub_800D158 -_0809B0F6: - adds r0, r4, 0 - bl sub_809AE3C - ldr r4, _0809B140 - movs r1, 0 - str r1, [sp] - movs r3, 0x4 - str r3, [sp, 0x4] - str r1, [sp, 0x8] - str r0, [sp, 0xC] - ldr r0, _0809B144 - adds r0, r5, r0 - ldrh r2, [r0] - movs r0, 0x80 - lsls r0, 1 - ands r0, r2 - cmp r0, 0 - beq _0809B11C - movs r1, 0xC -_0809B11C: - movs r0, 0x80 - lsls r0, 2 - ands r0, r2 - cmp r0, 0 - beq _0809B128 - orrs r1, r3 -_0809B128: - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - beq _0809B148 - movs r0, 0x21 - b _0809B14A - .align 2, 0 -_0809B134: .4byte gUnknown_202E5D8 -_0809B138: .4byte gUnknown_8116188 -_0809B13C: .4byte gUnknown_202E2B8 -_0809B140: .4byte sub_809B428 -_0809B144: .4byte gUnknown_8116148 -_0809B148: - movs r0, 0x1 -_0809B14A: - orrs r0, r1 - lsls r0, 16 - lsrs r0, 16 - str r0, [sp, 0x10] - ldr r0, [sp, 0x30] - adds r1, r4, 0 - adds r2, r7, 0 - mov r3, r8 - bl sub_8014248 - ldr r0, _0809B184 - ldr r0, [r0] - ldr r1, _0809B188 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809B176 - movs r0, 0x1 - bl sub_809A6E4 -_0809B176: - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809B184: .4byte gUnknown_3001B64 -_0809B188: .4byte 0x00000424 - thumb_func_end sub_809B028 - - thumb_func_start sub_809B18C -sub_809B18C: - push {lr} - adds r1, r0, 0 - ldr r2, _0809B1BC - cmp r1, 0 - beq _0809B1A2 - ldr r0, [r2] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - ldr r0, [r0] - str r0, [r1] -_0809B1A2: - movs r1, 0 - ldr r0, [r2] - movs r2, 0x84 - lsls r2, 3 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0x3 - bne _0809B1B4 - movs r1, 0x1 -_0809B1B4: - adds r0, r1, 0 - pop {r1} - bx r1 - .align 2, 0 -_0809B1BC: .4byte gUnknown_3001B64 - thumb_func_end sub_809B18C - - thumb_func_start sub_809B1C0 -sub_809B1C0: - push {lr} - adds r3, r2, 0 - movs r2, 0 - bl sub_809B1D4 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_809B1C0 - - thumb_func_start sub_809B1D4 -sub_809B1D4: - push {r4-r7,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - adds r7, r3, 0 - cmp r4, 0xB - beq _0809B1E8 - cmp r4, 0xC - beq _0809B1F0 - b _0809B202 -_0809B1E8: - adds r0, r5, 0 - bl sub_8021700 - b _0809B1F8 -_0809B1F0: - bl sub_8001D88 - bl sub_802FCF0 -_0809B1F8: - lsls r0, 24 - cmp r0, 0 - beq _0809B202 - movs r0, 0 - b _0809B24C -_0809B202: - movs r0, 0x4 - movs r1, 0 - bl sub_809A680 - ldr r0, _0809B254 - ldr r1, [r0] - ldr r2, _0809B258 - adds r0, r1, r2 - str r4, [r0] - movs r3, 0x83 - lsls r3, 3 - adds r0, r1, r3 - movs r2, 0 - str r2, [r0] - adds r3, 0x4 - adds r0, r1, r3 - str r2, [r0] - movs r0, 0x84 - lsls r0, 3 - adds r2, r1, r0 - movs r0, 0x1 - str r0, [r2] - ldr r2, _0809B25C - adds r0, r1, r2 - str r5, [r0] - adds r3, 0xC - adds r0, r1, r3 - str r6, [r0] - adds r2, 0x8 - adds r0, r1, r2 - str r7, [r0] - adds r3, 0x8 - adds r1, r3 - movs r0, 0x1 - negs r0, r0 - str r0, [r1] - movs r0, 0x1 -_0809B24C: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0809B254: .4byte gUnknown_3001B64 -_0809B258: .4byte 0x00000414 -_0809B25C: .4byte 0x00000424 - thumb_func_end sub_809B1D4 - - thumb_func_start sub_809B260 -sub_809B260: - push {lr} - adds r1, r0, 0 - ldr r2, _0809B290 - cmp r1, 0 - beq _0809B276 - ldr r0, [r2] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - ldr r0, [r0] - str r0, [r1] -_0809B276: - movs r1, 0 - ldr r0, [r2] - movs r2, 0x84 - lsls r2, 3 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0x3 - bne _0809B288 - movs r1, 0x1 -_0809B288: - adds r0, r1, 0 - pop {r1} - bx r1 - .align 2, 0 -_0809B290: .4byte gUnknown_3001B64 - thumb_func_end sub_809B260 - - thumb_func_start sub_809B294 -sub_809B294: - push {lr} - movs r0, 0x3 - bl sub_80063D8 - ldr r0, _0809B2B4 - ldr r0, [r0] - adds r0, 0xC - movs r2, 0x1 - negs r2, r2 - movs r1, 0 - movs r3, 0 - bl sub_809B2B8 - pop {r0} - bx r0 - .align 2, 0 -_0809B2B4: .4byte gUnknown_3001B64 - thumb_func_end sub_809B294 - - thumb_func_start sub_809B2B8 -sub_809B2B8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x14 - adds r4, r0, 0 - adds r7, r3, 0 - lsls r1, 16 - lsrs r5, r1, 16 - lsls r2, 16 - asrs r6, r2, 16 - strh r5, [r4] - cmp r7, 0 - bne _0809B2F6 - cmp r5, 0 - bne _0809B2DE - str r7, [r4, 0x4] - movs r0, 0 - b _0809B3FC -_0809B2DE: - movs r0, 0x4 - ands r0, r5 - cmp r0, 0 - bne _0809B2E8 - b _0809B3FA -_0809B2E8: - bl sub_8014490 - movs r0, 0 - movs r1, 0x1 - bl sub_809A680 - b _0809B3FA -_0809B2F6: - movs r0, 0x1 - str r0, [r4, 0x4] - adds r0, 0xFF - ands r0, r5 - cmp r0, 0 - beq _0809B32A - cmp r6, 0 - bge _0809B318 - ldr r0, _0809B310 - ldr r1, _0809B314 - bl strcpy - b _0809B32A - .align 2, 0 -_0809B310: .4byte gUnknown_202E5D8 -_0809B314: .4byte gUnknown_8116180 -_0809B318: - ldr r0, _0809B3D0 - ldr r1, _0809B3D4 - lsls r2, r6, 2 - adds r2, r6 - lsls r2, 4 - ldr r3, _0809B3D8 - adds r2, r3 - bl sub_800D158 -_0809B32A: - ldr r0, _0809B3DC - mov r8, r0 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x3 - bne _0809B344 - adds r4, 0x8 - ldr r1, _0809B3E0 - adds r0, r4, 0 - adds r2, r7, 0 - bl sub_800D158 - adds r7, r4, 0 -_0809B344: - adds r0, r6, 0 - bl sub_809AE3C - ldr r1, _0809B3E4 - mov r9, r1 - movs r1, 0x1 - negs r1, r1 - mov r12, r1 - movs r2, 0 - str r2, [sp] - movs r1, 0x3 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r0, [sp, 0xC] - movs r6, 0x80 - lsls r6, 1 - adds r0, r5, 0 - ands r0, r6 - movs r1, 0 - cmp r0, 0 - beq _0809B370 - movs r1, 0xC -_0809B370: - movs r4, 0x80 - lsls r4, 2 - adds r0, r5, 0 - ands r0, r4 - cmp r0, 0 - beq _0809B380 - movs r0, 0x4 - orrs r1, r0 -_0809B380: - mov r0, r8 - ldr r3, [r0] - ldr r2, [r3] - cmp r2, 0x3 - bne _0809B38E - movs r0, 0x10 - orrs r1, r0 -_0809B38E: - cmp r2, 0x2 - bne _0809B396 - movs r0, 0x10 - orrs r1, r0 -_0809B396: - adds r2, r1, 0 - movs r1, 0x20 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0809B3A4 - orrs r2, r1 -_0809B3A4: - lsrs r1, r5, 6 - movs r0, 0x1 - ands r1, r0 - orrs r1, r2 - movs r0, 0x80 - ands r0, r5 - cmp r0, 0 - beq _0809B3B6 - orrs r1, r6 -_0809B3B6: - movs r0, 0x4 - ands r0, r5 - cmp r0, 0 - beq _0809B3C0 - orrs r1, r4 -_0809B3C0: - ldr r0, [r3, 0x4] - cmp r0, r12 - beq _0809B3E8 - movs r0, 0x2 - orrs r0, r1 - lsls r0, 16 - b _0809B3EA - .align 2, 0 -_0809B3D0: .4byte gUnknown_202E5D8 -_0809B3D4: .4byte gUnknown_8116188 -_0809B3D8: .4byte gUnknown_202E2B8 -_0809B3DC: .4byte gUnknown_3001B64 -_0809B3E0: .4byte gUnknown_8116190 -_0809B3E4: .4byte sub_809B428 -_0809B3E8: - lsls r0, r1, 16 -_0809B3EA: - lsrs r0, 16 - str r0, [sp, 0x10] - adds r0, r7, 0 - mov r1, r9 - mov r2, r12 - movs r3, 0 - bl sub_8014248 -_0809B3FA: - movs r0, 0x1 -_0809B3FC: - add sp, 0x14 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_809B2B8 - - thumb_func_start sub_809B40C -sub_809B40C: - push {lr} - ldr r0, [r0, 0x4] - cmp r0, 0 - beq _0809B41C - cmp r0, 0x3 - bhi _0809B420 - cmp r0, 0x2 - bcc _0809B420 -_0809B41C: - movs r0, 0 - b _0809B422 -_0809B420: - movs r0, 0x1 -_0809B422: - pop {r1} - bx r1 - thumb_func_end sub_809B40C - - thumb_func_start sub_809B428 -sub_809B428: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r2, 0 - ldrb r0, [r5, 0x2] - cmp r0, 0x4F - beq _0809B44C - cmp r0, 0x4F - bgt _0809B43E - cmp r0, 0x49 - beq _0809B444 - b _0809B46A -_0809B43E: - cmp r0, 0x57 - beq _0809B454 - b _0809B46A -_0809B444: - movs r0, 0x1E - bl sub_8099A34 - b _0809B462 -_0809B44C: - movs r0, 0x1E - bl sub_8099A48 - b _0809B462 -_0809B454: - bl sub_8099B94 - lsls r0, 24 - cmp r0, 0 - beq _0809B462 - adds r0, r5, 0 - b _0809B46C -_0809B462: - adds r1, r4, 0 - adds r1, 0x21 - movs r0, 0x1 - strb r0, [r1] -_0809B46A: - movs r0, 0 -_0809B46C: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809B428 - - thumb_func_start sub_809B474 -sub_809B474: - push {r4-r6,lr} - ldr r0, _0809B498 - ldr r1, [r0] - ldr r2, [r1] - adds r6, r0, 0 - cmp r2, 0x3 - bls _0809B56E - cmp r2, 0x4 - bne _0809B56E - movs r5, 0x84 - lsls r5, 3 - adds r0, r1, r5 - ldr r0, [r0] - cmp r0, 0x1 - beq _0809B49C - cmp r0, 0x2 - beq _0809B508 - b _0809B56E - .align 2, 0 -_0809B498: .4byte gUnknown_3001B64 -_0809B49C: - bl sub_809B648 - lsls r0, 24 - cmp r0, 0 - bne _0809B4B0 - ldr r0, [r6] - adds r0, r5 - movs r1, 0x3 - str r1, [r0] - b _0809B4E8 -_0809B4B0: - ldr r0, [r6] - movs r1, 0x83 - lsls r1, 3 - adds r0, r1 - ldr r4, [r0] - cmp r4, 0 - beq _0809B4F8 - ldr r0, [r4, 0x4] - cmp r0, 0 - beq _0809B4F2 - bl sub_809B294 - ldr r0, [r4, 0x4] - bl _call_via_r0 - lsls r0, 24 - cmp r0, 0 - bne _0809B4F2 - ldr r1, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r2, r1, r3 - movs r0, 0x1 - negs r0, r0 - str r0, [r2] - adds r1, r5 - movs r0, 0x3 - str r0, [r1] -_0809B4E8: - movs r0, 0 - movs r1, 0x1 - bl sub_809A680 - b _0809B56E -_0809B4F2: - ldrh r0, [r4] - bl sub_809A6E4 -_0809B4F8: - ldr r0, _0809B534 - ldr r1, [r0] - movs r2, 0x84 - lsls r2, 3 - adds r1, r2 - movs r2, 0x2 - str r2, [r1] - adds r6, r0, 0 -_0809B508: - ldr r0, [r6] - movs r3, 0x83 - lsls r3, 3 - adds r0, r3 - ldr r4, [r0] - cmp r4, 0 - beq _0809B54E - ldr r0, [r4, 0xC] - bl _call_via_r0 - adds r2, r0, 0 - cmp r2, 0x1 - bls _0809B56E - ldr r0, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r1, r0, r3 - cmp r2, 0x2 - bne _0809B538 - movs r0, 0x1 - negs r0, r0 - b _0809B53A - .align 2, 0 -_0809B534: .4byte gUnknown_3001B64 -_0809B538: - movs r0, 0 -_0809B53A: - str r0, [r1] - ldr r0, [r4, 0x8] - cmp r0, 0 - beq _0809B546 - bl _call_via_r0 -_0809B546: - ldrh r0, [r4] - bl sub_809A6F8 - b _0809B558 -_0809B54E: - bl sub_809B648 - lsls r0, 24 - cmp r0, 0 - bne _0809B56E -_0809B558: - ldr r0, _0809B578 - ldr r0, [r0] - movs r1, 0x84 - lsls r1, 3 - adds r0, r1 - movs r1, 0x3 - str r1, [r0] - movs r0, 0 - movs r1, 0x1 - bl sub_809A680 -_0809B56E: - bl sub_809B57C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809B578: .4byte gUnknown_3001B64 - thumb_func_end sub_809B474 - - thumb_func_start sub_809B57C -sub_809B57C: - push {r4,r5,lr} - sub sp, 0x8 - bl xxx_draw_string_80144C4 - ldr r5, _0809B5C8 - ldr r0, [r5] - ldr r1, [r0] - cmp r1, 0x3 - bhi _0809B5E4 - cmp r1, 0x1 - bcc _0809B5E4 - movs r4, 0x84 - lsls r4, 3 - adds r0, r4 - ldr r0, [r0] - cmp r0, 0 - beq _0809B5CC - cmp r0, 0x3 - beq _0809B5CC - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0809B5E4 - ldr r1, [sp] - movs r0, 0x1 - bl sub_809D9E0 - ldr r1, [r5] - adds r2, r1, r4 - movs r0, 0x3 - str r0, [r2] - movs r0, 0x86 - lsls r0, 3 - adds r1, r0 - ldr r0, [sp] - str r0, [r1] - b _0809B5E4 - .align 2, 0 -_0809B5C8: .4byte gUnknown_3001B64 -_0809B5CC: - add r0, sp, 0x4 - bl sub_80144A4 - adds r4, r0, 0 - cmp r4, 0 - bne _0809B5E4 - movs r0, 0 - bl sub_809D9B8 - ldr r0, _0809B5FC - ldr r0, [r0] - str r4, [r0] -_0809B5E4: - ldr r0, _0809B5FC - ldr r0, [r0] - ldr r1, _0809B600 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - bge _0809B604 - movs r0, 0 - movs r1, 0 - bl sub_8005838 - b _0809B60C - .align 2, 0 -_0809B5FC: .4byte gUnknown_3001B64 -_0809B600: .4byte 0x00000434 -_0809B604: - movs r0, 0 - movs r1, 0x5 - bl sub_8005838 -_0809B60C: - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_809B57C - - thumb_func_start sub_809B614 -sub_809B614: - push {lr} - bl sub_80060EC - ldr r0, _0809B62C - ldr r2, _0809B630 - ldrh r1, [r2] - strh r1, [r0] - ldr r0, _0809B634 - ands r0, r1 - strh r0, [r2] - pop {r0} - bx r0 - .align 2, 0 -_0809B62C: .4byte gUnknown_20399DE -_0809B630: .4byte gUnknown_20399DC -_0809B634: .4byte 0x0000fffd - thumb_func_end sub_809B614 - - thumb_func_start sub_809B638 -sub_809B638: - push {lr} - bl xxx_call_update_bg_vram - pop {r0} - bx r0 - thumb_func_end sub_809B638 - - thumb_func_start nullsub_210 -nullsub_210: - bx lr - thumb_func_end nullsub_210 - - thumb_func_start sub_809B648 -sub_809B648: - push {r4-r6,lr} - sub sp, 0x24 - ldr r0, _0809B66C - ldr r1, [r0] - ldr r2, _0809B670 - adds r1, r2 - ldr r1, [r1] - subs r1, 0x2 - adds r6, r0, 0 - cmp r1, 0x2C - bls _0809B662 - bl _0809C392 -_0809B662: - lsls r0, r1, 2 - ldr r1, _0809B674 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809B66C: .4byte gUnknown_3001B64 -_0809B670: .4byte 0x00000414 -_0809B674: .4byte _0809B678 - .align 2, 0 -_0809B678: - .4byte _0809B72C - .4byte _0809B772 - .4byte _0809B7AC - .4byte _0809B834 - .4byte _0809B89C - .4byte _0809B8FC - .4byte _0809B91C - .4byte _0809B944 - .4byte _0809B9D2 - .4byte _0809BA2A - .4byte _0809BAA8 - .4byte _0809BB66 - .4byte _0809BBDA - .4byte _0809BBDA - .4byte _0809BC26 - .4byte _0809BC68 - .4byte _0809C1B4 - .4byte _0809BC78 - .4byte _0809C1C2 - .4byte _0809C1C2 - .4byte _0809C1C8 - .4byte _0809BCBC - .4byte _0809BCBC - .4byte _0809BD1C - .4byte _0809BD64 - .4byte _0809BDE8 - .4byte _0809BE30 - .4byte _0809BE40 - .4byte _0809BE50 - .4byte _0809BE60 - .4byte _0809BE9C - .4byte _0809BEB8 - .4byte _0809BED4 - .4byte _0809BF70 - .4byte _0809BFFC - .4byte _0809C072 - .4byte _0809C0B8 - .4byte _0809C0FC - .4byte _0809C148 - .4byte _0809C158 - .4byte _0809C168 - .4byte _0809C204 - .4byte _0809C238 - .4byte _0809C280 - .4byte _0809C32A -_0809B72C: - ldr r2, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r0, r2, r3 - ldr r0, [r0] - cmp r0, 0x1 - beq _0809B780 - ldr r0, _0809B754 - ldrh r0, [r0, 0x2] - movs r1, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0809B758 - movs r0, 0x86 - lsls r0, 3 - adds r1, r2, r0 - movs r0, 0x1 - str r0, [r1] - bl _0809C392 - .align 2, 0 -_0809B754: .4byte gUnknown_20255F0 -_0809B758: - bl sub_8094D14 - lsls r0, 24 - cmp r0, 0 - beq _0809B784 - ldr r0, [r6] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - movs r1, 0x2 - str r1, [r0] - bl _0809C392 -_0809B772: - ldr r0, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809B78A -_0809B780: - bl sub_809B294 -_0809B784: - movs r0, 0x1 - bl _0809C394 -_0809B78A: - ldr r0, _0809B7A8 - ldrh r1, [r0] - ldrh r0, [r0, 0x2] - movs r2, 0x2 - ands r0, r2 - cmp r0, 0 - beq _0809B79C - bl _0809C392 -_0809B79C: - ands r1, r2 - cmp r1, 0 - bne _0809B784 - bl _0809C392 - .align 2, 0 -_0809B7A8: .4byte gUnknown_20255F0 -_0809B7AC: - ldr r0, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r0, r3 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809B7F4 - bl sub_809B294 - ldr r1, [r6] - ldr r2, _0809B7D8 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, 0 - bne _0809B7E0 - ldr r3, _0809B7DC - adds r0, r1, r3 - ldr r1, [r0] - movs r0, 0 - bl sub_801602C - b _0809B784 - .align 2, 0 -_0809B7D8: .4byte 0x00000424 -_0809B7DC: .4byte 0x0000042c -_0809B7E0: - ldr r2, _0809B7F0 - adds r0, r1, r2 - ldr r1, [r0] - movs r0, 0x2 - bl sub_801602C - b _0809B784 - .align 2, 0 -_0809B7F0: .4byte 0x0000042c -_0809B7F4: - bl sub_8016080 - cmp r0, 0x3 - bne _0809B80C - bl sub_80160D8 - ldr r0, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - bl _0809C1BC -_0809B80C: - cmp r0, 0x2 - bne _0809B784 - ldr r0, [r6] - ldr r1, _0809B830 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - beq _0809B784 - bl sub_80160D8 - ldr r0, [r6] - movs r2, 0x86 - lsls r2, 3 - adds r0, r2 -_0809B828: - movs r1, 0 - str r1, [r0] - bl _0809C392 - .align 2, 0 -_0809B830: .4byte 0x00000424 -_0809B834: - ldr r0, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r0, r3 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809B85C - bl sub_809B294 - ldr r0, [r6] - ldr r1, _0809B858 - adds r0, r1 - ldr r1, [r0] - movs r0, 0x1 - bl sub_801602C - b _0809B784 - .align 2, 0 -_0809B858: .4byte 0x0000042c -_0809B85C: - bl sub_8016080 - cmp r0, 0x3 - bne _0809B874 - bl sub_80160D8 - ldr r0, [r6] - movs r2, 0x86 - lsls r2, 3 - adds r0, r2 - bl _0809C1BC -_0809B874: - cmp r0, 0x2 - beq _0809B87A - b _0809B784 -_0809B87A: - ldr r0, [r6] - ldr r3, _0809B898 - adds r0, r3 - ldr r0, [r0] - cmp r0, 0 - bne _0809B888 - b _0809B784 -_0809B888: - bl sub_80160D8 - ldr r0, [r6] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - b _0809B828 - .align 2, 0 -_0809B898: .4byte 0x00000424 -_0809B89C: - ldr r0, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809B8C4 - bl sub_809B294 - ldr r0, [r6] - ldr r3, _0809B8C0 - adds r0, r3 - ldr r1, [r0] - movs r0, 0x4 - bl sub_80151C0 - b _0809B784 - .align 2, 0 -_0809B8C0: .4byte 0x0000042c -_0809B8C4: - bl sub_80154F0 - cmp r0, 0x3 - bne _0809B8D4 - bl sub_80155F0 - bl _0809C1B4 -_0809B8D4: - cmp r0, 0x2 - beq _0809B8DA - b _0809B784 -_0809B8DA: - ldr r0, [r6] - ldr r2, _0809B8F8 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0 - bne _0809B8E8 - b _0809B784 -_0809B8E8: - bl sub_80155F0 - ldr r0, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - b _0809B828 - .align 2, 0 -_0809B8F8: .4byte 0x00000424 -_0809B8FC: - ldr r0, [r6] - ldr r1, _0809B914 - adds r0, r1 - ldr r0, [r0] - bl sub_801D014 - ldr r0, [r6] - movs r2, 0x83 - lsls r2, 3 - adds r0, r2 - ldr r1, _0809B918 - b _0809B932 - .align 2, 0 -_0809B914: .4byte 0x0000042c -_0809B918: .4byte gUnknown_81161A8 -_0809B91C: - ldr r0, [r6] - ldr r3, _0809B93C - adds r0, r3 - ldr r0, [r0] - bl sub_801D014 - ldr r0, [r6] - movs r1, 0x83 - lsls r1, 3 - adds r0, r1 - ldr r1, _0809B940 -_0809B932: - str r1, [r0] - movs r0, 0x4 - bl sub_80119D4 - b _0809B784 - .align 2, 0 -_0809B93C: .4byte 0x0000042c -_0809B940: .4byte gUnknown_81161B8 -_0809B944: - bl sub_809B294 - ldr r4, _0809B984 - ldr r0, [r4] - movs r2, 0x84 - lsls r2, 3 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809B998 - bl sub_809B294 - ldr r0, [r4] - ldr r3, _0809B988 - adds r0, r3 - ldr r0, [r0] - ldr r1, _0809B98C - bl sub_8015080 - lsls r0, 24 - cmp r0, 0 - bne _0809B990 - ldr r0, [r4] -_0809B972: - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 -_0809B978: - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - bl _0809C392 - .align 2, 0 -_0809B984: .4byte gUnknown_3001B64 -_0809B988: .4byte 0x0000042c -_0809B98C: .4byte gUnknown_811610C -_0809B990: - movs r0, 0x4 - bl sub_80119D4 - b _0809B784 -_0809B998: - bl sub_801516C - cmp r0, 0x2 - beq _0809B9BC - cmp r0, 0x3 - beq _0809B9A6 - b _0809B784 -_0809B9A6: - bl sub_8015198 - ldr r1, [r4] - movs r2, 0x86 - lsls r2, 3 - adds r1, r2 - str r0, [r1] - bl sub_80151A4 - bl _0809C392 -_0809B9BC: - ldr r0, [r4] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - bl sub_80151A4 - bl _0809C392 -_0809B9D2: - bl sub_809B294 - ldr r4, _0809BA08 - ldr r0, [r4] - movs r1, 0x84 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809BA1C - bl sub_809B294 - ldr r0, [r4] - ldr r2, _0809BA0C - adds r0, r2 - ldr r0, [r0] - ldr r1, _0809BA10 - bl sub_8015080 - lsls r0, 24 - cmp r0, 0 - bne _0809BA14 - ldr r0, [r4] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - b _0809B978 - .align 2, 0 -_0809BA08: .4byte gUnknown_3001B64 -_0809BA0C: .4byte 0x0000042c -_0809BA10: .4byte gUnknown_811612C -_0809BA14: - movs r0, 0x4 - bl sub_80119D4 - b _0809B784 -_0809BA1C: - bl sub_801516C - cmp r0, 0x2 - beq _0809B9BC - cmp r0, 0x3 - beq _0809B9A6 - b _0809B784 -_0809BA2A: - ldr r0, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809BA68 - bl sub_809B294 - ldr r0, [r6] - ldr r2, _0809BA5C - adds r0, r2 - ldr r0, [r0] - movs r1, 0x3 - bl sub_80211AC - lsls r0, 24 - cmp r0, 0 - bne _0809BA60 - ldr r0, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - b _0809B978 - .align 2, 0 -_0809BA5C: .4byte 0x00000424 -_0809BA60: - movs r0, 0x4 - bl sub_80119D4 - b _0809B784 -_0809BA68: - movs r0, 0x1 - bl sub_8021274 - cmp r0, 0x2 - beq _0809BA92 - cmp r0, 0x3 - beq _0809BA78 - b _0809B784 -_0809BA78: - bl sub_802132C - ldr r1, [r6] - movs r2, 0x86 - lsls r2, 3 - adds r1, r2 - lsls r0, 24 - lsrs r0, 24 - str r0, [r1] - bl sub_80213A0 - bl _0809C392 -_0809BA92: - ldr r0, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - bl sub_80213A0 - bl _0809C392 -_0809BAA8: - ldr r0, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809BB10 - movs r0, 0 - movs r1, 0x12 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - bl sub_80A2654 - lsls r0, 16 - asrs r4, r0, 16 - bl sub_809B294 - movs r0, 0x3 - movs r1, 0 - movs r2, 0xA - movs r3, 0x1 - bl sub_802F73C - lsls r0, 24 - cmp r0, 0 - bne _0809BAEA - ldr r0, [r6] - movs r2, 0x86 - lsls r2, 3 - adds r0, r2 - b _0809B978 -_0809BAEA: - movs r5, 0x1 - negs r5, r5 - cmp r4, r5 - beq _0809BB08 - adds r0, r4, 0 - bl sub_802F848 - lsls r0, 24 - cmp r0, 0 - bne _0809BB08 - movs r0, 0 - movs r1, 0x12 - adds r2, r5, 0 - bl sub_80018D8 -_0809BB08: - movs r0, 0x4 - bl sub_80119D4 - b _0809B784 -_0809BB10: - movs r0, 0x1 - bl sub_802F8A0 - cmp r0, 0x2 - beq _0809BB50 - cmp r0, 0x3 - beq _0809BB20 - b _0809B784 -_0809BB20: - bl sub_802F90C - adds r4, r0, 0 - lsls r4, 16 - asrs r4, 16 - adds r0, r4, 0 - bl sub_80A26B8 - adds r2, r0, 0 - lsls r2, 16 - asrs r2, 16 - movs r0, 0 - movs r1, 0x12 - bl sub_80018D8 - ldr r0, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - str r4, [r0] - bl sub_802F974 - bl _0809C392 -_0809BB50: - ldr r0, [r6] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - bl sub_802F974 - bl _0809C392 -_0809BB66: - ldr r0, [r6] - movs r2, 0x84 - lsls r2, 3 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809BB9A - bl sub_809B294 - movs r0, 0x3 - movs r1, 0 - movs r2, 0xA - bl sub_80302E8 - lsls r0, 24 - cmp r0, 0 - bne _0809BB92 - ldr r0, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - b _0809B978 -_0809BB92: - movs r0, 0x4 - bl sub_80119D4 - b _0809B784 -_0809BB9A: - movs r0, 0x1 - bl sub_80303AC - cmp r0, 0x2 - beq _0809BBC4 - cmp r0, 0x3 - beq _0809BBAA - b _0809B784 -_0809BBAA: - bl sub_8030418 - ldr r1, [r6] - movs r2, 0x86 - lsls r2, 3 - adds r1, r2 - lsls r0, 16 - asrs r0, 16 - str r0, [r1] - bl sub_8030480 - bl _0809C392 -_0809BBC4: - ldr r0, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - bl sub_8030480 - bl _0809C392 -_0809BBDA: - ldr r0, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809BC14 - bl sub_809B294 - ldr r0, [r6] - ldr r2, _0809BC10 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0xE - bne _0809BC02 - movs r0, 0 - movs r1, 0x18 - movs r2, 0x1 - bl sub_80018D8 -_0809BC02: - movs r0, 0x1 - bl sub_8011C28 - movs r0, 0 - bl sub_8012574 - b _0809B784 - .align 2, 0 -_0809BC10: .4byte 0x00000414 -_0809BC14: - bl sub_8012600 - lsls r0, 24 - cmp r0, 0 - beq _0809BC20 - b _0809B784 -_0809BC20: - bl sub_8012750 - b _0809C392 -_0809BC26: - movs r0, 0x4 - bl sub_80023E4 - lsls r0, 24 - lsrs r0, 24 - negs r4, r0 - orrs r4, r0 - lsrs r4, 31 - bl sub_809B294 - adds r0, r4, 0 - bl sub_8016C94 - lsls r0, 24 - cmp r0, 0 - beq _0809BC5C - ldr r0, _0809BC54 - ldr r0, [r0] - movs r3, 0x83 - lsls r3, 3 - adds r0, r3 - ldr r1, _0809BC58 - b _0809C266 - .align 2, 0 -_0809BC54: .4byte gUnknown_3001B64 -_0809BC58: .4byte gUnknown_81161C8 -_0809BC5C: - ldr r0, _0809BC64 - ldr r0, [r0] - b _0809B972 - .align 2, 0 -_0809BC64: .4byte gUnknown_3001B64 -_0809BC68: - ldr r0, [r6] - movs r2, 0x83 - lsls r2, 3 - adds r0, r2 - ldr r1, _0809BC74 - b _0809C266 - .align 2, 0 -_0809BC74: .4byte gUnknown_81161D8 -_0809BC78: - movs r0, 0x4 - bl sub_80023E4 - lsls r0, 24 - lsrs r0, 24 - negs r4, r0 - orrs r4, r0 - lsrs r4, 31 - bl sub_809B294 - adds r0, r4, 0 - bl sub_80162E4 - lsls r0, 24 - cmp r0, 0 - beq _0809BCB0 - ldr r0, _0809BCA8 - ldr r0, [r0] - movs r3, 0x83 - lsls r3, 3 - adds r0, r3 - ldr r1, _0809BCAC - b _0809C266 - .align 2, 0 -_0809BCA8: .4byte gUnknown_3001B64 -_0809BCAC: .4byte gUnknown_81161E8 -_0809BCB0: - ldr r0, _0809BCB8 - ldr r0, [r0] - b _0809B972 - .align 2, 0 -_0809BCB8: .4byte gUnknown_3001B64 -_0809BCBC: - movs r0, 0x4 - bl sub_80023E4 - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_809B294 - ldr r0, _0809BCE0 - ldr r0, [r0] - ldr r2, _0809BCE4 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0x17 - bne _0809BCE8 - negs r0, r4 - orrs r0, r4 - lsrs r0, 31 - b _0809BCF0 - .align 2, 0 -_0809BCE0: .4byte gUnknown_3001B64 -_0809BCE4: .4byte 0x00000414 -_0809BCE8: - movs r0, 0x2 - cmp r4, 0 - beq _0809BCF0 - movs r0, 0x3 -_0809BCF0: - bl sub_8018B00 - lsls r0, 24 - cmp r0, 0 - beq _0809BD10 - ldr r0, _0809BD08 - ldr r0, [r0] - movs r3, 0x83 - lsls r3, 3 - adds r0, r3 - ldr r1, _0809BD0C - b _0809C266 - .align 2, 0 -_0809BD08: .4byte gUnknown_3001B64 -_0809BD0C: .4byte gUnknown_81161F8 -_0809BD10: - ldr r0, _0809BD18 - ldr r0, [r0] - b _0809B972 - .align 2, 0 -_0809BD18: .4byte gUnknown_3001B64 -_0809BD1C: - movs r0, 0x4 - bl sub_80023E4 - lsls r0, 24 - lsrs r0, 24 - negs r4, r0 - orrs r4, r0 - lsrs r4, 31 - bl sub_809B294 - adds r0, r4, 0 - bl sub_801FB50 - lsls r0, 24 - cmp r0, 0 - beq _0809BD54 - ldr r0, _0809BD4C - ldr r0, [r0] - movs r2, 0x83 - lsls r2, 3 - adds r0, r2 - ldr r1, _0809BD50 - b _0809C266 - .align 2, 0 -_0809BD4C: .4byte gUnknown_3001B64 -_0809BD50: .4byte gUnknown_8116208 -_0809BD54: - ldr r0, _0809BD60 - ldr r0, [r0] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - b _0809B978 - .align 2, 0 -_0809BD60: .4byte gUnknown_3001B64 -_0809BD64: - ldr r0, [r6] - movs r1, 0x84 - lsls r1, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809BD84 - bl sub_809B294 - movs r0, 0 - movs r1, 0x39 - bl sub_80015C0 - bl sub_802465C - b _0809B784 -_0809BD84: - bl sub_80246F0 - adds r4, r0, 0 - movs r0, 0 - movs r1, 0x39 - bl sub_8001658 - cmp r0, 0 - bne _0809BDB2 - bl sub_80247B4 - lsls r0, 24 - cmp r0, 0 - beq _0809BDB2 - movs r0, 0 - movs r1, 0x39 - movs r2, 0x1 - bl sub_80018D8 - movs r0, 0x46 - movs r1, 0 - bl GroundMap_ExecuteEvent -_0809BDB2: - cmp r4, 0x3 - bne _0809BDCC - bl sub_80247C0 - ldr r0, _0809BDC8 - ldr r0, [r0] - movs r2, 0x86 - lsls r2, 3 - adds r0, r2 - b _0809C1BC - .align 2, 0 -_0809BDC8: .4byte gUnknown_3001B64 -_0809BDCC: - cmp r4, 0x2 - beq _0809BDD2 - b _0809B784 -_0809BDD2: - bl sub_80247C0 - ldr r0, _0809BDE4 - ldr r0, [r0] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - b _0809B828 - .align 2, 0 -_0809BDE4: .4byte gUnknown_3001B64 -_0809BDE8: - movs r0, 0x4 - bl sub_80023E4 - lsls r0, 24 - lsrs r0, 24 - negs r4, r0 - orrs r4, r0 - lsrs r4, 31 - bl sub_809B294 - adds r0, r4, 0 - bl sub_8021B9C - lsls r0, 24 - cmp r0, 0 - beq _0809BE20 - ldr r0, _0809BE18 - ldr r0, [r0] - movs r1, 0x83 - lsls r1, 3 - adds r0, r1 - ldr r1, _0809BE1C - b _0809C266 - .align 2, 0 -_0809BE18: .4byte gUnknown_3001B64 -_0809BE1C: .4byte gUnknown_8116218 -_0809BE20: - ldr r0, _0809BE2C - ldr r0, [r0] - movs r2, 0x86 - lsls r2, 3 - adds r0, r2 - b _0809B978 - .align 2, 0 -_0809BE2C: .4byte gUnknown_3001B64 -_0809BE30: - ldr r0, [r6] - movs r3, 0x83 - lsls r3, 3 - adds r0, r3 - ldr r1, _0809BE3C - b _0809C266 - .align 2, 0 -_0809BE3C: .4byte gUnknown_8116228 -_0809BE40: - ldr r0, [r6] - movs r1, 0x83 - lsls r1, 3 - adds r0, r1 - ldr r1, _0809BE4C - b _0809C266 - .align 2, 0 -_0809BE4C: .4byte gUnknown_8116238 -_0809BE50: - ldr r0, [r6] - movs r2, 0x83 - lsls r2, 3 - adds r0, r2 - ldr r1, _0809BE5C - b _0809C266 - .align 2, 0 -_0809BE5C: .4byte gUnknown_8116248 -_0809BE60: - bl sub_809B294 - movs r0, 0x98 - lsls r0, 1 - bl sub_80314B4 - lsls r0, 24 - cmp r0, 0 - bne _0809BE84 - ldr r0, _0809BE80 - ldr r0, [r0] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - b _0809B978 - .align 2, 0 -_0809BE80: .4byte gUnknown_3001B64 -_0809BE84: - ldr r0, _0809BE94 - ldr r0, [r0] - movs r1, 0x83 - lsls r1, 3 - adds r0, r1 - ldr r1, _0809BE98 - b _0809C266 - .align 2, 0 -_0809BE94: .4byte gUnknown_3001B64 -_0809BE98: .4byte gUnknown_8116258 -_0809BE9C: - movs r0, 0x4 - bl sub_80119D4 - ldr r0, _0809BEB0 - ldr r0, [r0] - movs r2, 0x83 - lsls r2, 3 - adds r0, r2 - ldr r1, _0809BEB4 - b _0809C266 - .align 2, 0 -_0809BEB0: .4byte gUnknown_3001B64 -_0809BEB4: .4byte gUnknown_8116268 -_0809BEB8: - movs r0, 0x4 - bl sub_80119D4 - ldr r0, _0809BECC - ldr r0, [r0] - movs r3, 0x83 - lsls r3, 3 - adds r0, r3 - ldr r1, _0809BED0 - b _0809C266 - .align 2, 0 -_0809BECC: .4byte gUnknown_3001B64 -_0809BED0: .4byte gUnknown_8116278 -_0809BED4: - mov r0, sp - bl sub_8099328 - lsls r0, 24 - cmp r0, 0 - beq _0809BF4E - add r1, sp, 0x4 - add r2, sp, 0x8 - movs r0, 0x2 - bl sub_8001B88 - ldr r0, [sp, 0x8] - cmp r0, 0x7 - bgt _0809BF4E - add r4, sp, 0xC -_0809BEF2: - lsls r1, r0, 24 - lsrs r1, 24 - mov r0, sp - ldrb r2, [r0] - adds r0, r4, 0 - bl sub_8096AF8 - ldrb r0, [r4] - cmp r0, 0 - beq _0809BF44 - ldr r1, [sp, 0x4] - ldr r2, [sp, 0x8] - movs r0, 0x2 - bl sub_8001BB4 - ldr r0, _0809BF40 - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 3 - adds r2, r0, r1 - ldrh r1, [r4, 0x2] - lsls r1, 16 - asrs r1, 16 - negs r0, r1 - orrs r0, r1 - lsrs r1, r0, 31 - movs r3, 0x4 - ldrsh r0, [r4, r3] - cmp r0, 0 - beq _0809BF30 - adds r1, 0x2 -_0809BF30: - str r1, [r2] - cmp r1, 0 - beq _0809BF38 - b _0809C392 -_0809BF38: - movs r0, 0x3 - str r0, [r2] - b _0809C392 - .align 2, 0 -_0809BF40: .4byte gUnknown_3001B64 -_0809BF44: - ldr r0, [sp, 0x8] - adds r0, 0x1 - str r0, [sp, 0x8] - cmp r0, 0x7 - ble _0809BEF2 -_0809BF4E: - ldr r0, _0809BF6C - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - movs r1, 0 - str r1, [r0] - bl sub_8096BD0 - movs r0, 0x2 - movs r1, 0 - movs r2, 0 - bl sub_8001BB4 - b _0809C392 - .align 2, 0 -_0809BF6C: .4byte gUnknown_3001B64 -_0809BF70: - mov r5, sp - adds r5, 0x1 - adds r0, r5, 0 - bl sub_8099328 - lsls r0, 24 - cmp r0, 0 - bne _0809BF82 - b _0809C392 -_0809BF82: - add r1, sp, 0x14 - add r2, sp, 0x18 - movs r0, 0x2 - bl sub_8001B88 - add r4, sp, 0x1C - ldr r1, [sp, 0x18] - lsls r1, 24 - lsrs r1, 24 - ldrb r2, [r5] - adds r0, r4, 0 - bl sub_8096AF8 - ldrb r0, [r4] - cmp r0, 0 - bne _0809BFA4 - b _0809C392 -_0809BFA4: - ldr r0, [sp, 0x18] - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r5] - bl sub_802DB28 - lsls r0, 24 - cmp r0, 0 - bne _0809BFB8 - b _0809C392 -_0809BFB8: - movs r0, 0 - movs r1, 0x19 - bl sub_8001658 - cmp r0, 0x63 - bgt _0809BFCE - adds r2, r0, 0x1 - movs r0, 0 - movs r1, 0x19 - bl sub_80018D8 -_0809BFCE: - movs r0, 0 - movs r1, 0x39 - movs r2, 0x1 - bl sub_80018D8 - ldr r1, [sp, 0x14] - ldr r2, [sp, 0x18] - adds r2, 0x1 - movs r0, 0x2 - bl sub_8001BB4 - ldr r0, _0809BFF4 - ldr r0, [r0] - movs r2, 0x83 - lsls r2, 3 - adds r0, r2 - ldr r1, _0809BFF8 - b _0809C266 - .align 2, 0 -_0809BFF4: .4byte gUnknown_3001B64 -_0809BFF8: .4byte gUnknown_8116288 -_0809BFFC: - ldr r0, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r0, r3 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809C036 - movs r0, 0x4 - bl sub_80023E4 - lsls r0, 24 - lsrs r0, 24 - negs r4, r0 - orrs r4, r0 - asrs r4, 31 - movs r0, 0x4 - ands r4, r0 - bl sub_809B294 - adds r0, r4, 0 - bl sub_802FD14 - lsls r0, 24 - cmp r0, 0 - beq _0809C032 - bl _0809B784 -_0809C032: - ldr r0, [r6] - b _0809B972 -_0809C036: - bl sub_802FE58 - cmp r0, 0x2 - beq _0809C05E - cmp r0, 0x3 - beq _0809C046 - bl _0809B784 -_0809C046: - bl sub_802FED0 - ldr r1, [r6] - movs r2, 0x86 - lsls r2, 3 - adds r1, r2 - lsls r0, 16 - asrs r0, 16 - str r0, [r1] - bl sub_802FEE0 - b _0809C392 -_0809C05E: - ldr r0, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - bl sub_802FEE0 - b _0809C392 -_0809C072: - movs r4, 0x1 - movs r0, 0x4 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _0809C082 - movs r4, 0x5 -_0809C082: - bl sub_809B294 - adds r0, r4, 0 - bl sub_802FD14 - lsls r0, 24 - cmp r0, 0 - beq _0809C0A8 - ldr r0, _0809C0A0 - ldr r0, [r0] - movs r1, 0x83 - lsls r1, 3 - adds r0, r1 - ldr r1, _0809C0A4 - b _0809C266 - .align 2, 0 -_0809C0A0: .4byte gUnknown_3001B64 -_0809C0A4: .4byte gUnknown_8116298 -_0809C0A8: - ldr r0, _0809C0B4 - ldr r0, [r0] - movs r2, 0x86 - lsls r2, 3 - adds r0, r2 - b _0809B978 - .align 2, 0 -_0809C0B4: .4byte gUnknown_3001B64 -_0809C0B8: - movs r4, 0x2 - movs r0, 0x4 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _0809C0C8 - movs r4, 0x6 -_0809C0C8: - bl sub_809B294 - adds r0, r4, 0 - bl sub_802FD14 - lsls r0, 24 - cmp r0, 0 - beq _0809C0F0 - ldr r0, _0809C0E8 - ldr r0, [r0] - movs r3, 0x83 - lsls r3, 3 - adds r0, r3 - ldr r1, _0809C0EC - b _0809C266 - .align 2, 0 -_0809C0E8: .4byte gUnknown_3001B64 -_0809C0EC: .4byte gUnknown_81162A8 -_0809C0F0: - ldr r0, _0809C0F8 - ldr r0, [r0] - b _0809B972 - .align 2, 0 -_0809C0F8: .4byte gUnknown_3001B64 -_0809C0FC: - movs r4, 0x3 - movs r0, 0x4 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _0809C10C - movs r4, 0x7 -_0809C10C: - bl sub_809B294 - adds r0, r4, 0 - bl sub_802FD14 - lsls r0, 24 - cmp r0, 0 - beq _0809C134 - ldr r0, _0809C12C - ldr r0, [r0] - movs r2, 0x83 - lsls r2, 3 - adds r0, r2 - ldr r1, _0809C130 - b _0809C266 - .align 2, 0 -_0809C12C: .4byte gUnknown_3001B64 -_0809C130: .4byte gUnknown_81162B8 -_0809C134: - ldr r0, _0809C144 - ldr r0, [r0] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - bl _0809B978 - .align 2, 0 -_0809C144: .4byte gUnknown_3001B64 -_0809C148: - ldr r0, [r6] - movs r1, 0x83 - lsls r1, 3 - adds r0, r1 - ldr r1, _0809C154 - b _0809C266 - .align 2, 0 -_0809C154: .4byte gUnknown_81162C8 -_0809C158: - ldr r0, [r6] - movs r2, 0x83 - lsls r2, 3 - adds r0, r2 - ldr r1, _0809C164 - b _0809C266 - .align 2, 0 -_0809C164: .4byte gUnknown_81162D8 -_0809C168: - bl sub_809B294 - bl sub_803B050 - lsls r0, 24 - cmp r0, 0 - beq _0809C1A0 - ldr r4, _0809C194 - ldr r0, [r4] - ldr r3, _0809C198 - adds r0, r3 - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_803B100 - ldr r0, [r4] - movs r2, 0x83 - lsls r2, 3 - adds r0, r2 - ldr r1, _0809C19C - b _0809C266 - .align 2, 0 -_0809C194: .4byte gUnknown_3001B64 -_0809C198: .4byte 0x000005a4 -_0809C19C: .4byte gUnknown_81162E8 -_0809C1A0: - ldr r0, _0809C1B0 - ldr r0, [r0] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - bl _0809B978 - .align 2, 0 -_0809C1B0: .4byte gUnknown_3001B64 -_0809C1B4: - ldr r0, [r6] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 -_0809C1BC: - movs r1, 0x1 - str r1, [r0] - b _0809C392 -_0809C1C2: - bl sub_809B294 - b _0809C392 -_0809C1C8: - movs r0, 0x2 - bl sub_80252F0 - lsls r0, 24 - cmp r0, 0 - beq _0809C1EC - ldr r0, _0809C1E4 - ldr r0, [r0] - movs r2, 0x83 - lsls r2, 3 - adds r0, r2 - ldr r1, _0809C1E8 - b _0809C266 - .align 2, 0 -_0809C1E4: .4byte gUnknown_3001B64 -_0809C1E8: .4byte gUnknown_81162F8 -_0809C1EC: - ldr r0, _0809C200 - ldr r0, [r0] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - movs r1, 0x2 - negs r1, r1 - str r1, [r0] - b _0809C392 - .align 2, 0 -_0809C200: .4byte gUnknown_3001B64 -_0809C204: - ldr r1, [r6] - ldr r2, _0809C230 - adds r0, r1, r2 - ldr r0, [r0] - movs r3, 0x85 - lsls r3, 3 - adds r1, r3 - ldr r1, [r1] - bl sub_809CCDC - ldr r1, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r2, r1, r3 - str r0, [r2] - movs r0, 0x83 - lsls r0, 3 - adds r1, r0 - ldr r0, _0809C234 - str r0, [r1] - bl _0809B784 - .align 2, 0 -_0809C230: .4byte 0x00000424 -_0809C234: .4byte gUnknown_8116308 -_0809C238: - ldr r0, [r6] - movs r2, 0x85 - lsls r2, 3 - adds r1, r0, r2 - ldr r5, [r1] - ldr r3, _0809C26C - adds r0, r3 - ldrb r4, [r0] - bl sub_809B294 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_801B60C - lsls r0, 24 - cmp r0, 0 - beq _0809C274 - ldr r0, [r6] - movs r1, 0x83 - lsls r1, 3 - adds r0, r1 - ldr r1, _0809C270 -_0809C266: - str r1, [r0] - bl _0809B784 - .align 2, 0 -_0809C26C: .4byte 0x00000424 -_0809C270: .4byte gUnknown_8116318 -_0809C274: - ldr r0, [r6] - movs r2, 0x86 - lsls r2, 3 - adds r0, r2 - bl _0809B978 -_0809C280: - ldr r0, [r6] - movs r3, 0x84 - lsls r3, 3 - adds r0, r3 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809C2B8 - bl sub_809B294 - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - lsls r0, 24 - cmp r0, 0 - beq _0809C2B2 - bl _0809B784 -_0809C2B2: - ldr r0, [r6] - bl _0809B972 -_0809C2B8: - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x2 - beq _0809C320 - cmp r0, 0x3 - beq _0809C2CA - bl _0809B784 -_0809C2CA: - bl sub_801A8AC - adds r5, r0, 0 - ldr r0, _0809C304 - ldr r0, [r0] - lsls r1, r5, 2 - adds r0, r1 - ldrb r4, [r0, 0x2] - adds r0, r4, 0 - bl sub_8091570 - lsls r0, 24 - cmp r0, 0 - beq _0809C30C - ldr r0, _0809C308 - adds r1, r4, 0 - movs r2, 0 - bl sub_8090DC4 - adds r0, r5, 0 - bl sub_80911F8 - ldr r0, [r6] - movs r2, 0x86 - lsls r2, 3 - adds r0, r2 - movs r1, 0x1 - b _0809C318 - .align 2, 0 -_0809C304: .4byte gUnknown_203B460 -_0809C308: .4byte gUnknown_202DE58 -_0809C30C: - ldr r0, [r6] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 -_0809C314: - movs r1, 0x1 - negs r1, r1 -_0809C318: - str r1, [r0] - bl sub_801A928 - b _0809C392 -_0809C320: - ldr r0, [r6] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - b _0809C314 -_0809C32A: - adds r4, r6, 0 - ldr r0, [r4] - movs r2, 0x84 - lsls r2, 3 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809C36C - bl sub_809B294 - ldr r1, [r4] - ldr r3, _0809C368 - adds r0, r1, r3 - ldr r0, [r0] - movs r2, 0x85 - lsls r2, 3 - adds r1, r2 - ldr r1, [r1] - bl sub_8035444 - lsls r0, 24 - cmp r0, 0 - beq _0809C35C - bl _0809B784 -_0809C35C: - ldr r0, [r4] - movs r3, 0x86 - lsls r3, 3 - adds r0, r3 - bl _0809B978 - .align 2, 0 -_0809C368: .4byte 0x00000424 -_0809C36C: - bl sub_8035574 - cmp r0, 0x3 - bls _0809C378 - bl _0809B784 -_0809C378: - cmp r0, 0x2 - bcs _0809C380 - bl _0809B784 -_0809C380: - ldr r0, [r6] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] - bl sub_803565C -_0809C392: - movs r0, 0 -_0809C394: - add sp, 0x24 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809B648 - - thumb_func_start sub_809C39C -sub_809C39C: - push {lr} - bl sub_801D178 - ldr r1, _0809C3D4 - ldr r1, [r1] - movs r2, 0x86 - lsls r2, 3 - adds r1, r2 - str r0, [r1] - cmp r0, 0x3 - bne _0809C3CC - bl sub_801D1D4 - lsls r0, 24 - lsrs r0, 24 - bl sub_8002694 - lsls r0, 16 - asrs r0, 16 - movs r2, 0x1 - negs r2, r2 - movs r1, 0 - bl sub_8098D1C -_0809C3CC: - bl sub_801D1E0 - pop {r0} - bx r0 - .align 2, 0 -_0809C3D4: .4byte gUnknown_3001B64 - thumb_func_end sub_809C39C - - thumb_func_start sub_809C3D8 -sub_809C3D8: - push {lr} - bl sub_801D178 - ldr r1, _0809C410 - ldr r1, [r1] - movs r2, 0x86 - lsls r2, 3 - adds r1, r2 - str r0, [r1] - cmp r0, 0x3 - bne _0809C408 - bl sub_801D1D4 - lsls r0, 24 - lsrs r0, 24 - bl sub_8002694 - lsls r0, 16 - asrs r0, 16 - movs r2, 0x1 - negs r2, r2 - movs r1, 0 - bl sub_8098D1C -_0809C408: - bl sub_801D1E0 - pop {r0} - bx r0 - .align 2, 0 -_0809C410: .4byte gUnknown_3001B64 - thumb_func_end sub_809C3D8 - - thumb_func_start sub_809C414 -sub_809C414: - push {lr} - bl sub_802540C - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _0809C448 - ldr r0, _0809C444 - ldr r0, [r0] - movs r2, 0x86 - lsls r2, 3 - adds r0, r2 - str r1, [r0] - adds r0, r1, 0 - bl sub_8002694 - lsls r0, 16 - asrs r0, 16 - movs r2, 0x1 - negs r2, r2 - movs r1, 0 - bl sub_8098D1C - b _0809C458 - .align 2, 0 -_0809C444: .4byte gUnknown_3001B64 -_0809C448: - ldr r0, _0809C460 - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] -_0809C458: - bl sub_8025418 - pop {r0} - bx r0 - .align 2, 0 -_0809C460: .4byte gUnknown_3001B64 - thumb_func_end sub_809C414 - - thumb_func_start sub_809C464 -sub_809C464: - push {lr} - bl sub_803C850 - bl sub_8001064 - bl sub_809965C - pop {r0} - bx r0 - thumb_func_end sub_809C464 - - thumb_func_start sub_809C478 -sub_809C478: - push {lr} - sub sp, 0x8 - bl sub_80356A0 - cmp r0, 0x3 - bne _0809C492 - ldr r0, _0809C4AC - bl sub_8011988 - bl sub_800CF0C - bl sub_800CF3C -_0809C492: - bl sub_8035758 - add r2, sp, 0x4 - movs r0, 0x3 - mov r1, sp - bl sub_8001B88 - movs r0, 0 - bl sub_80993C0 - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_0809C4AC: .4byte 0x00000313 - thumb_func_end sub_809C478 - - thumb_func_start sub_809C4B0 -sub_809C4B0: - push {r4,r5,lr} - movs r4, 0x1 - negs r4, r4 - ldr r5, _0809C4FC - ldr r0, [r5] - movs r2, 0x86 - lsls r2, 3 - adds r1, r0, r2 - ldr r0, [r1] - cmp r0, 0 - bne _0809C4DE - bl sub_803B168 - lsls r0, 16 - ldr r1, [r5] - ldr r3, _0809C500 - adds r2, r1, r3 - asrs r4, r0, 16 - lsrs r0, 16 - strh r0, [r2] - movs r0, 0x86 - lsls r0, 3 - adds r1, r0 -_0809C4DE: - str r4, [r1] - bl sub_803B1BC - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - beq _0809C4F4 - adds r0, r4, 0 - movs r1, 0 - bl GroundMap_ExecuteEvent -_0809C4F4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809C4FC: .4byte gUnknown_3001B64 -_0809C500: .4byte 0x000005a4 - thumb_func_end sub_809C4B0 - - thumb_func_start sub_809C504 -sub_809C504: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80282DC - adds r4, r0, 0 - cmp r4, 0x1 - bne _0809C530 - mov r0, sp - ldrb r0, [r0] - bl sub_809927C - ldr r0, _0809C52C - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - str r4, [r0] - b _0809C540 - .align 2, 0 -_0809C52C: .4byte gUnknown_3001B64 -_0809C530: - ldr r0, _0809C54C - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - movs r1, 0x1 - negs r1, r1 - str r1, [r0] -_0809C540: - bl sub_80282FC - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809C54C: .4byte gUnknown_3001B64 - thumb_func_end sub_809C504 - - thumb_func_start sub_809C550 -sub_809C550: - push {r4,r5,lr} - bl sub_802E90C - adds r4, r0, 0 - movs r5, 0 - bl sub_802E918 - cmp r4, 0x2 - beq _0809C586 - cmp r4, 0x2 - bhi _0809C56C - cmp r4, 0x1 - beq _0809C572 - b _0809C5AC -_0809C56C: - cmp r4, 0x3 - beq _0809C59A - b _0809C5AC -_0809C572: - movs r0, 0x4 - movs r1, 0x1D - movs r2, 0x3 - bl sub_8001CC4 - lsls r0, 24 - cmp r0, 0 - beq _0809C5AC - movs r5, 0x1 - b _0809C5AC -_0809C586: - movs r0, 0x4 - movs r1, 0x1F - movs r2, 0x2 - bl sub_8001CC4 - lsls r0, 24 - cmp r0, 0 - beq _0809C5AC - movs r5, 0x2 - b _0809C5AC -_0809C59A: - movs r0, 0xB - movs r1, 0x33 - movs r2, 0x8 - bl sub_8001CC4 - lsls r0, 24 - cmp r0, 0 - beq _0809C5AC - movs r5, 0x3 -_0809C5AC: - ldr r0, _0809C5C0 - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 3 - adds r0, r1 - str r5, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809C5C0: .4byte gUnknown_3001B64 - thumb_func_end sub_809C550 - - thumb_func_start sub_809C5C4 -sub_809C5C4: - push {r4,lr} - ldr r4, _0809C610 - movs r0, 0x24 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r4] - movs r2, 0 - str r2, [r0] - str r2, [r0, 0x4] - movs r3, 0 - strh r2, [r0, 0x8] - strh r2, [r0, 0xA] - strb r3, [r0, 0xD] - ldr r0, [r4] - strb r3, [r0, 0xE] - ldr r1, [r4] - str r2, [r1, 0x10] - ldr r0, _0809C614 - strh r0, [r1, 0x14] - movs r0, 0x23 - strh r0, [r1, 0x16] - strb r3, [r1, 0x18] - ldr r1, [r4] - movs r0, 0x3F - strb r0, [r1, 0x19] - ldr r0, [r4] - str r2, [r0, 0x1C] - adds r0, 0x20 - strb r3, [r0] - bl nullsub_107 - bl sub_809C63C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809C610: .4byte gUnknown_3001B68 -_0809C614: .4byte 0x0000ffff - thumb_func_end sub_809C5C4 - - thumb_func_start sub_809C618 -sub_809C618: - push {r4,lr} - bl sub_809C63C - bl nullsub_107 - bl nullsub_108 - ldr r4, _0809C638 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809C638: .4byte gUnknown_3001B68 - thumb_func_end sub_809C618 - - thumb_func_start sub_809C63C -sub_809C63C: - push {lr} - bl nullsub_108 - ldr r0, _0809C654 - ldr r0, [r0] - movs r1, 0 - str r1, [r0, 0x1C] - adds r0, 0x20 - strb r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_0809C654: .4byte gUnknown_3001B68 - thumb_func_end sub_809C63C - - thumb_func_start sub_809C658 -sub_809C658: - push {lr} - ldr r0, _0809C670 - ldr r0, [r0] - ldrh r0, [r0, 0xA] - cmp r0, 0x5 - bhi _0809C6C8 - lsls r0, 2 - ldr r1, _0809C674 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809C670: .4byte gUnknown_3001B68 -_0809C674: .4byte _0809C678 - .align 2, 0 -_0809C678: - .4byte _0809C6C0 - .4byte _0809C6C0 - .4byte _0809C6AC - .4byte _0809C690 - .4byte _0809C69E - .4byte _0809C6B6 -_0809C690: - bl nullsub_111 - bl nullsub_112 - bl nullsub_113 - b _0809C6C8 -_0809C69E: - bl nullsub_114 - bl nullsub_115 - bl nullsub_116 - b _0809C6C8 -_0809C6AC: - bl nullsub_109 - bl nullsub_110 - b _0809C6C8 -_0809C6B6: - bl nullsub_107 - bl nullsub_108 - b _0809C6C8 -_0809C6C0: - bl nullsub_107 - bl nullsub_108 -_0809C6C8: - pop {r0} - bx r0 - thumb_func_end sub_809C658 - - thumb_func_start sub_809C6CC -sub_809C6CC: - push {lr} - lsls r0, 16 - lsrs r2, r0, 16 - ldr r0, _0809C6E8 - ldr r1, [r0] - ldrh r0, [r1, 0x8] - cmp r0, r2 - beq _0809C6E2 - movs r0, 0 - strh r2, [r1, 0x8] - strb r0, [r1, 0xE] -_0809C6E2: - pop {r0} - bx r0 - .align 2, 0 -_0809C6E8: .4byte gUnknown_3001B68 - thumb_func_end sub_809C6CC - - thumb_func_start sub_809C6EC -sub_809C6EC: - push {lr} - bl sub_8098F88 - lsls r0, 24 - cmp r0, 0 - bne _0809C718 - ldr r0, _0809C70C - ldr r0, [r0] - ldrb r0, [r0, 0xC] - cmp r0, 0 - bne _0809C710 - movs r0, 0x4 - bl sub_809C6CC - b _0809C71E - .align 2, 0 -_0809C70C: .4byte gUnknown_203B46C -_0809C710: - movs r0, 0x3 - bl sub_809C6CC - b _0809C71E -_0809C718: - movs r0, 0x5 - bl sub_809C6CC -_0809C71E: - pop {r0} - bx r0 - thumb_func_end sub_809C6EC - - thumb_func_start sub_809C724 -sub_809C724: - ldr r0, _0809C72C - ldr r0, [r0] - ldrh r0, [r0, 0x8] - bx lr - .align 2, 0 -_0809C72C: .4byte gUnknown_3001B68 - thumb_func_end sub_809C724 - - thumb_func_start sub_809C730 -sub_809C730: - push {lr} - bl sub_809C740 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_809C730 - - thumb_func_start sub_809C740 -sub_809C740: - push {lr} - ldr r0, _0809C750 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0 - beq _0809C754 - movs r0, 0 - b _0809C756 - .align 2, 0 -_0809C750: .4byte gUnknown_3001B68 -_0809C754: - movs r0, 0x1 -_0809C756: - pop {r1} - bx r1 - thumb_func_end sub_809C740 - - thumb_func_start nullsub_104 -nullsub_104: - bx lr - thumb_func_end nullsub_104 - - thumb_func_start sub_809C760 -sub_809C760: - ldr r0, _0809C76C - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0xE] - bx lr - .align 2, 0 -_0809C76C: .4byte gUnknown_3001B68 - thumb_func_end sub_809C760 - - thumb_func_start sub_809C770 -sub_809C770: - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - lsls r1, 16 - asrs r6, r1, 16 - ldr r4, _0809C790 - ldr r1, [r4] - ldrb r0, [r1, 0xE] - cmp r0, 0 - beq _0809C794 - movs r0, 0 - strb r0, [r1, 0xE] - b _0809CA10 - .align 2, 0 -_0809C790: .4byte gUnknown_3001B68 -_0809C794: - ldrh r0, [r1, 0x8] - cmp r0, 0 - bne _0809C79E - bl sub_809C6EC -_0809C79E: - ldr r0, [r4] - ldrb r5, [r0, 0x18] - ldrb r7, [r0, 0x19] - cmp r6, 0x26 - bls _0809C7AA - b _0809C8C8 -_0809C7AA: - lsls r0, r6, 2 - ldr r1, _0809C7B4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809C7B4: .4byte _0809C7B8 - .align 2, 0 -_0809C7B8: - .4byte _0809C868 - .4byte _0809C868 - .4byte _0809C868 - .4byte _0809C868 - .4byte _0809C868 - .4byte _0809C868 - .4byte _0809C868 - .4byte _0809C868 - .4byte _0809C868 - .4byte _0809C854 - .4byte _0809C868 - .4byte _0809C868 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C8C8 - .4byte _0809C86E - .4byte _0809C8C4 - .4byte _0809C8C4 - .4byte _0809C8C4 -_0809C854: - mov r0, r8 - bl sub_8002658 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _0809C864 - b _0809CA10 -_0809C864: - movs r4, 0x1 - b _0809C988 -_0809C868: - movs r4, 0x1 - movs r5, 0 - b _0809C988 -_0809C86E: - mov r0, r8 - subs r0, 0xA4 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xD - bls _0809C87C - b _0809CA10 -_0809C87C: - lsls r0, 2 - ldr r1, _0809C888 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809C888: .4byte _0809C88C - .align 2, 0 -_0809C88C: - .4byte _0809C8C4 - .4byte _0809C8C4 - .4byte _0809CA10 - .4byte _0809CA10 - .4byte _0809C8C4 - .4byte _0809C8C4 - .4byte _0809C8C4 - .4byte _0809CA10 - .4byte _0809CA10 - .4byte _0809CA10 - .4byte _0809C8C4 - .4byte _0809C8C4 - .4byte _0809C8C4 - .4byte _0809C8C4 -_0809C8C4: - movs r4, 0 - b _0809C988 -_0809C8C8: - adds r0, r6, 0 - subs r0, 0xC - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x16 - bhi _0809C968 - lsls r0, 2 - ldr r1, _0809C8E0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809C8E0: .4byte _0809C8E4 - .align 2, 0 -_0809C8E4: - .4byte _0809C968 - .4byte _0809C940 - .4byte _0809C968 - .4byte _0809C968 - .4byte _0809C968 - .4byte _0809C968 - .4byte _0809C944 - .4byte _0809C944 - .4byte _0809C948 - .4byte _0809C948 - .4byte _0809C94C - .4byte _0809C968 - .4byte _0809C950 - .4byte _0809C950 - .4byte _0809C954 - .4byte _0809C954 - .4byte _0809C958 - .4byte _0809C958 - .4byte _0809C95C - .4byte _0809C95C - .4byte _0809C960 - .4byte _0809C960 - .4byte _0809C964 -_0809C940: - movs r1, 0 - b _0809C974 -_0809C944: - movs r1, 0x7 - b _0809C974 -_0809C948: - movs r1, 0x9 - b _0809C974 -_0809C94C: - movs r1, 0xA - b _0809C974 -_0809C950: - movs r1, 0xB - b _0809C974 -_0809C954: - movs r1, 0xD - b _0809C974 -_0809C958: - movs r1, 0xF - b _0809C974 -_0809C95C: - movs r1, 0x11 - b _0809C974 -_0809C960: - movs r1, 0x13 - b _0809C974 -_0809C964: - movs r1, 0x20 - b _0809C974 -_0809C968: - movs r0, 0 - movs r1, 0x13 - bl sub_8001658 - lsls r0, 16 - asrs r1, r0, 16 -_0809C974: - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809CA10 - adds r0, r1, 0 - bl sub_80A2740 - lsls r0, 24 - lsrs r7, r0, 24 - movs r4, 0x2 -_0809C988: - ldr r0, _0809C99C - ldr r2, [r0] - ldr r1, [r2, 0x10] - adds r3, r0, 0 - cmp r1, r4 - beq _0809C9A0 - movs r0, 0x2 - str r0, [r2] - b _0809C9DE - .align 2, 0 -_0809C99C: .4byte gUnknown_3001B68 -_0809C9A0: - cmp r4, 0x1 - bne _0809C9CC - ldrb r0, [r2, 0x18] - cmp r5, r0 - bne _0809C9B2 - movs r1, 0x14 - ldrsh r0, [r2, r1] - cmp r0, r8 - beq _0809C9BC -_0809C9B2: - strb r4, [r2, 0xC] - ldr r0, [r3] - adds r0, 0x20 - strb r4, [r0] - b _0809C9E8 -_0809C9BC: - cmp r5, 0 - bne _0809C9E8 - movs r1, 0x16 - ldrsh r0, [r2, r1] - cmp r0, r6 - beq _0809C9E8 - strb r4, [r2, 0xC] - b _0809C9E8 -_0809C9CC: - cmp r4, 0x2 - bne _0809C9E8 - ldrb r0, [r2, 0x19] - cmp r7, r0 - bne _0809C9DE - movs r1, 0x16 - ldrsh r0, [r2, r1] - cmp r0, r6 - beq _0809C9E8 -_0809C9DE: - movs r1, 0x1 - strb r1, [r2, 0xC] - ldr r0, [r3] - adds r0, 0x20 - strb r1, [r0] -_0809C9E8: - ldr r1, [r3] - ldrb r0, [r1, 0xC] - cmp r0, 0 - beq _0809CA10 - str r4, [r1, 0x10] - movs r2, 0 - mov r0, r8 - strh r0, [r1, 0x14] - strh r6, [r1, 0x16] - strb r5, [r1, 0x18] - ldr r0, [r3] - strb r7, [r0, 0x19] - ldr r1, [r3] - ldrh r0, [r1, 0x8] - cmp r0, 0x4 - beq _0809CA10 - strb r2, [r1, 0xC] - ldr r0, [r3] - adds r0, 0x20 - strb r2, [r0] -_0809CA10: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_809C770 - - thumb_func_start nullsub_105 -nullsub_105: - bx lr - thumb_func_end nullsub_105 - - thumb_func_start sub_809CA20 -sub_809CA20: - push {lr} - ldr r1, _0809CA74 - ldr r2, [r1] - ldr r0, [r2] - cmp r0, 0 - beq _0809CA38 - movs r0, 0 - str r0, [r2] - movs r0, 0x1F - str r0, [r2, 0x4] - movs r0, 0x1 - strb r0, [r2, 0xC] -_0809CA38: - ldr r1, [r1] - ldrb r0, [r1, 0xC] - cmp r0, 0 - beq _0809CAE8 - ldrh r0, [r1, 0x8] - strh r0, [r1, 0xA] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x4 - bne _0809CA5E - ldr r2, [r1, 0x10] - cmp r2, 0 - bne _0809CA5E - movs r0, 0x2 - strh r0, [r1, 0xA] - str r2, [r1, 0x1C] - adds r1, 0x20 - movs r0, 0 - strb r0, [r1] -_0809CA5E: - ldr r0, _0809CA74 - ldr r0, [r0] - ldrh r0, [r0, 0xA] - cmp r0, 0x5 - bhi _0809CADA - lsls r0, 2 - ldr r1, _0809CA78 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809CA74: .4byte gUnknown_3001B68 -_0809CA78: .4byte _0809CA7C - .align 2, 0 -_0809CA7C: - .4byte _0809CAD2 - .4byte _0809CAD2 - .4byte _0809CABE - .4byte _0809CA94 - .4byte _0809CAB0 - .4byte _0809CAC8 -_0809CA94: - bl nullsub_111 - bl nullsub_113 - bl nullsub_112 - ldr r0, _0809CAAC - ldr r1, [r0] - movs r0, 0x1 - strb r0, [r1, 0xD] - b _0809CADA - .align 2, 0 -_0809CAAC: .4byte gUnknown_3001B68 -_0809CAB0: - bl nullsub_114 - bl nullsub_115 - bl nullsub_116 - b _0809CADA -_0809CABE: - bl nullsub_109 - bl nullsub_110 - b _0809CADA -_0809CAC8: - bl nullsub_107 - bl nullsub_108 - b _0809CADA -_0809CAD2: - bl nullsub_107 - bl nullsub_108 -_0809CADA: - ldr r0, _0809CAE4 - ldr r1, [r0] - movs r0, 0 - strb r0, [r1, 0xC] - b _0809CB1E - .align 2, 0 -_0809CAE4: .4byte gUnknown_3001B68 -_0809CAE8: - ldrh r0, [r1, 0xA] - cmp r0, 0x5 - bhi _0809CB1E - lsls r0, 2 - ldr r1, _0809CAF8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809CAF8: .4byte _0809CAFC - .align 2, 0 -_0809CAFC: - .4byte _0809CB1E - .4byte _0809CB1E - .4byte _0809CB1E - .4byte _0809CB14 - .4byte _0809CB1A - .4byte _0809CB1E -_0809CB14: - bl nullsub_113 - b _0809CB1E -_0809CB1A: - bl nullsub_116 -_0809CB1E: - pop {r0} - bx r0 - thumb_func_end sub_809CA20 - - thumb_func_start nullsub_106 -nullsub_106: - bx lr - thumb_func_end nullsub_106 - - thumb_func_start nullsub_107 -nullsub_107: - bx lr - thumb_func_end nullsub_107 - - thumb_func_start nullsub_108 -nullsub_108: - bx lr - thumb_func_end nullsub_108 - - thumb_func_start nullsub_109 -nullsub_109: - bx lr - thumb_func_end nullsub_109 - - thumb_func_start nullsub_110 -nullsub_110: - bx lr - thumb_func_end nullsub_110 - - thumb_func_start nullsub_111 -nullsub_111: - bx lr - thumb_func_end nullsub_111 - - thumb_func_start nullsub_112 -nullsub_112: - bx lr - thumb_func_end nullsub_112 - - thumb_func_start nullsub_113 -nullsub_113: - bx lr - thumb_func_end nullsub_113 - - thumb_func_start nullsub_114 -nullsub_114: - bx lr - thumb_func_end nullsub_114 - - thumb_func_start nullsub_115 -nullsub_115: - bx lr - thumb_func_end nullsub_115 - - thumb_func_start nullsub_116 -nullsub_116: - bx lr - thumb_func_end nullsub_116 - - thumb_func_start sub_809CB50 -sub_809CB50: - push {r4,lr} - ldr r4, _0809CB70 - movs r0, 0xC - movs r1, 0x6 - bl MemoryAlloc - str r0, [r4] - movs r1, 0x1 - negs r1, r1 - str r1, [r0, 0x4] - movs r1, 0 - str r1, [r0, 0x8] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809CB70: .4byte gUnknown_20399E0 - thumb_func_end sub_809CB50 - - thumb_func_start sub_809CB74 -sub_809CB74: - push {r4,lr} - ldr r4, _0809CB88 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809CB88: .4byte gUnknown_20399E0 - thumb_func_end sub_809CB74 - - thumb_func_start sub_809CB8C -sub_809CB8C: - push {lr} - movs r0, 0 - movs r1, 0x3B - bl sub_80015C0 - movs r0, 0 - movs r1, 0x3D - bl sub_80015C0 - pop {r0} - bx r0 - thumb_func_end sub_809CB8C - - thumb_func_start sub_809CBA4 -sub_809CBA4: - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_8091130 - cmp r0, 0 - bge _0809CBB6 - movs r0, 0 - b _0809CBB8 -_0809CBB6: - movs r0, 0x1 -_0809CBB8: - pop {r1} - bx r1 - thumb_func_end sub_809CBA4 - - thumb_func_start sub_809CBBC -sub_809CBBC: - push {r4-r7,lr} - sub sp, 0x54 - adds r4, r0, 0 - adds r6, r1, 0 - adds r5, r2, 0 - adds r7, r3, 0 - ldrb r1, [r4] - cmp r1, 0x69 - bne _0809CC20 - ldr r1, _0809CC0C - movs r0, 0x2 - ldrsh r2, [r4, r0] - ldr r0, _0809CC10 - ldr r0, [r0] - movs r3, 0xD2 - lsls r3, 4 - adds r0, r3 - ldr r3, [r0] - mov r0, sp - bl sub_800D158 - ldr r0, _0809CC14 - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r2, r0, r1 - movs r3, 0x2 - ldrsh r1, [r4, r3] - ldr r0, [r2] - adds r1, r0, r1 - ldr r0, _0809CC18 - cmp r1, r0 - ble _0809CC1C - cmp r6, 0 - beq _0809CC4E - movs r1, 0x1 - negs r1, r1 - movs r0, 0 - adds r2, r6, 0 - b _0809CC4A - .align 2, 0 -_0809CC0C: .4byte gUnknown_81163E4 -_0809CC10: .4byte gUnknown_20389A4 -_0809CC14: .4byte gUnknown_203B460 -_0809CC18: .4byte 0x0001869f -_0809CC1C: - str r1, [r2] - b _0809CC5E -_0809CC20: - ldrb r0, [r4, 0x2] - lsls r1, 16 - lsls r0, 8 - orrs r0, r1 - str r0, [sp, 0x50] - add r4, sp, 0x50 - mov r0, sp - adds r1, r4, 0 - movs r2, 0 - bl sub_8090E14 - bl sub_8090A34 - cmp r0, 0x13 - ble _0809CC52 - cmp r5, 0 - beq _0809CC4E - movs r1, 0x1 - negs r1, r1 - movs r0, 0 - adds r2, r5, 0 -_0809CC4A: - bl sub_809AE90 -_0809CC4E: - movs r0, 0 - b _0809CC82 -_0809CC52: - ldrb r0, [r4, 0x2] - movs r1, 0 - bl sub_809124C - bl sub_80910B4 -_0809CC5E: - cmp r7, 0 - beq _0809CC80 - ldr r0, _0809CC8C - mov r1, sp - bl strcpy - movs r1, 0x1 - negs r1, r1 - movs r0, 0 - adds r2, r7, 0 - bl sub_809AE90 - movs r1, 0x80 - lsls r1, 1 - movs r0, 0xCB - bl sub_8011974 -_0809CC80: - movs r0, 0x1 -_0809CC82: - add sp, 0x54 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0809CC8C: .4byte gUnknown_202DE58 - thumb_func_end sub_809CBBC - - thumb_func_start sub_809CC90 -sub_809CC90: - push {lr} - lsls r0, 2 - ldr r1, _0809CCBC - adds r1, r0, r1 - ldrb r0, [r1] - cmp r0, 0x69 - bne _0809CCC8 - ldr r0, _0809CCC0 - ldr r0, [r0] - movs r2, 0x98 - lsls r2, 2 - adds r0, r2 - movs r2, 0x2 - ldrsh r1, [r1, r2] - ldr r0, [r0] - adds r0, r1 - ldr r1, _0809CCC4 - cmp r0, r1 - ble _0809CCD4 - movs r0, 0x2 - b _0809CCD6 - .align 2, 0 -_0809CCBC: .4byte gUnknown_81163BC -_0809CCC0: .4byte gUnknown_203B460 -_0809CCC4: .4byte 0x0001869f -_0809CCC8: - bl sub_8090A34 - cmp r0, 0x13 - ble _0809CCD4 - movs r0, 0x2 - b _0809CCD6 -_0809CCD4: - movs r0, 0x1 -_0809CCD6: - pop {r1} - bx r1 - thumb_func_end sub_809CC90 - - thumb_func_start sub_809CCDC -sub_809CCDC: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r1, r6, 2 - ldr r0, _0809CD20 - adds r5, r1, r0 - ldr r0, _0809CD24 - ldr r1, [r0] - movs r0, 0x1 - negs r0, r0 - str r0, [r1, 0x4] - movs r0, 0 - str r0, [r1, 0x8] - movs r0, 0x2 - cmp r4, 0x63 - bgt _0809CD04 - movs r0, 0 - cmp r4, 0x1 - ble _0809CD04 - movs r0, 0x1 -_0809CD04: - ldr r1, _0809CD28 - ldr r2, _0809CD2C - ldr r3, _0809CD30 - lsls r0, 2 - adds r0, r3 - ldr r3, [r0] - adds r0, r5, 0 - bl sub_809CBBC - lsls r0, 24 - cmp r0, 0 - bne _0809CD34 - movs r0, 0x2 - b _0809CD3E - .align 2, 0 -_0809CD20: .4byte gUnknown_81163BC -_0809CD24: .4byte gUnknown_20399E0 -_0809CD28: .4byte gUnknown_81163F0 -_0809CD2C: .4byte gUnknown_811642C -_0809CD30: .4byte gUnknown_203B4A0 -_0809CD34: - ldr r0, _0809CD44 - ldr r0, [r0] - str r6, [r0, 0x4] - str r4, [r0, 0x8] - movs r0, 0x1 -_0809CD3E: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0809CD44: .4byte gUnknown_20399E0 - thumb_func_end sub_809CCDC - - thumb_func_start sub_809CD48 -sub_809CD48: - push {lr} - bl sub_809A750 - lsls r0, 24 - cmp r0, 0 - bne _0809CD58 - movs r0, 0x3 - b _0809CD5A -_0809CD58: - movs r0, 0 -_0809CD5A: - pop {r1} - bx r1 - thumb_func_end sub_809CD48 - - thumb_func_start nullsub_117 -nullsub_117: - bx lr - thumb_func_end nullsub_117 - - thumb_func_start nullsub_118 -nullsub_118: - bx lr - thumb_func_end nullsub_118 - - thumb_func_start sub_809CD68 -sub_809CD68: - movs r2, 0 - str r2, [r0] - str r2, [r0, 0x4] - movs r1, 0x1 - negs r1, r1 - str r1, [r0, 0x10] - str r2, [r0, 0x14] - str r2, [r0, 0x8] - strb r2, [r0, 0x18] - bx lr - thumb_func_end sub_809CD68 - - thumb_func_start sub_809CD7C -sub_809CD7C: - movs r2, 0 - str r2, [r0] - movs r1, 0x1 - negs r1, r1 - str r1, [r0, 0x10] - str r2, [r0, 0x14] - str r2, [r0, 0x8] - bx lr - thumb_func_end sub_809CD7C - - thumb_func_start sub_809CD8C -sub_809CD8C: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - cmp r4, 0x5 - bne _0809CD9E - bl sub_809CD68 - str r4, [r5] - b _0809CDB0 -_0809CD9E: - ldr r0, [r5, 0x4] - cmp r0, r4 - beq _0809CDB0 - str r4, [r5, 0x4] - movs r0, 0x1 - negs r0, r0 - str r0, [r5, 0x10] - movs r0, 0 - str r0, [r5, 0x14] -_0809CDB0: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_809CD8C - - thumb_func_start sub_809CDB8 -sub_809CDB8: - push {lr} - adds r1, r0, 0 - ldr r0, [r1, 0x4] - cmp r0, 0 - bne _0809CDC4 - ldr r0, [r1] -_0809CDC4: - pop {r1} - bx r1 - thumb_func_end sub_809CDB8 - - thumb_func_start sub_809CDC8 -sub_809CDC8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r4, r0, 0 - adds r6, r1, 0 - adds r7, r2, 0 - ldr r1, [sp, 0x24] - movs r0, 0x1 - negs r0, r0 - str r0, [r3] - ldr r0, [r4] - cmp r0, 0x1 - beq _0809CDEA - cmp r0, 0x2 - beq _0809CDFE - b _0809CE12 -_0809CDEA: - movs r0, 0x80 - lsls r0, 6 - ands r1, r0 - cmp r1, 0 - beq _0809CE12 - adds r0, r4, 0 - bl sub_809CD68 - movs r0, 0x2 - b _0809CE10 -_0809CDFE: - movs r0, 0x80 - lsls r0, 6 - ands r1, r0 - cmp r1, 0 - bne _0809CE12 - adds r0, r4, 0 - bl sub_809CD68 - movs r0, 0x1 -_0809CE10: - str r0, [r4] -_0809CE12: - ldr r0, [r4, 0x4] - mov r8, r0 - cmp r0, 0 - bne _0809CE1E - ldr r1, [r4] - mov r8, r1 -_0809CE1E: - mov r0, r8 - subs r0, 0x1 - cmp r0, 0x6 - bls _0809CE28 - b _0809CFCC -_0809CE28: - lsls r0, 2 - ldr r1, _0809CE34 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809CE34: .4byte _0809CE38 - .align 2, 0 -_0809CE38: - .4byte _0809CE54 - .4byte _0809CF74 - .4byte _0809CFCC - .4byte _0809CFCC - .4byte _0809CECC - .4byte _0809CF5C - .4byte _0809CF5C -_0809CE54: - ldr r0, _0809CE70 - ldrh r2, [r0] - ldrh r1, [r0, 0x2] - movs r0, 0xF0 - ands r0, r2 - cmp r0, 0 - beq _0809CE74 - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - beq _0809CEA4 - movs r0, 0 - b _0809CEA8 - .align 2, 0 -_0809CE70: .4byte gUnknown_20255F0 -_0809CE74: - movs r3, 0x2 - adds r0, r1, 0 - ands r0, r3 - cmp r0, 0 - beq _0809CE82 - movs r0, 0x14 - b _0809CEA8 -_0809CE82: - ldr r0, [r4, 0x10] - cmp r0, 0x1 - ble _0809CEA4 - subs r0, 0x1 - str r0, [r4, 0x10] - adds r0, r2, 0 - ands r0, r3 - cmp r0, 0 - bne _0809CEAA - movs r0, 0x13 - str r0, [r6] - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 - strb r0, [r7] - movs r0, 0x5 - b _0809CFDA -_0809CEA4: - movs r0, 0x1 - negs r0, r0 -_0809CEA8: - str r0, [r4, 0x10] -_0809CEAA: - movs r0, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0809CEB6 - movs r0, 0xA - b _0809CEC2 -_0809CEB6: - ldr r0, [r4, 0x10] - cmp r0, 0 - bne _0809CEC0 - movs r0, 0x8 - b _0809CEC2 -_0809CEC0: - movs r0, 0x7 -_0809CEC2: - str r0, [r6] - adds r0, r2, 0 - bl sub_809CFE8 - b _0809CF4E -_0809CECC: - mov r0, sp - bl sub_809B260 - lsls r0, 24 - cmp r0, 0 - beq _0809CFCC - ldr r0, _0809CEEC - ldr r0, [r0] - ldrb r0, [r0, 0xC] - cmp r0, 0 - bne _0809CEF0 - movs r0, 0x4 - bl sub_809C6CC - b _0809CEF6 - .align 2, 0 -_0809CEEC: .4byte gUnknown_203B46C -_0809CEF0: - movs r0, 0x3 - bl sub_809C6CC -_0809CEF6: - bl nullsub_104 - adds r0, r4, 0 - bl sub_809CD7C - movs r5, 0x1 - str r5, [r4] - ldr r0, [sp] - cmp r0, 0x2 - beq _0809CF1E - cmp r0, 0x2 - bgt _0809CF14 - cmp r0, 0x1 - beq _0809CF2A - b _0809CF54 -_0809CF14: - cmp r0, 0x3 - beq _0809CF2A - cmp r0, 0x4 - beq _0809CF3C - b _0809CF54 -_0809CF1E: - movs r0, 0x4 - str r0, [r4] - movs r0, 0x1E - bl sub_8098D80 - b _0809CF46 -_0809CF2A: - movs r0, 0x4 - str r0, [r4] - str r5, [r6] - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 - strb r0, [r7] - movs r0, 0x4 - b _0809CFDA -_0809CF3C: - str r0, [r4] - movs r0, 0x45 - movs r1, 0 - bl GroundMap_ExecuteEvent -_0809CF46: - str r5, [r6] - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 -_0809CF4E: - strb r0, [r7] - ldr r0, [r4] - b _0809CFDA -_0809CF54: - movs r0, 0x2 - bl sub_809D9B8 - b _0809CFCC -_0809CF5C: - add r0, sp, 0x4 - bl sub_809B260 - lsls r0, 24 - cmp r0, 0 - beq _0809CFCC - adds r0, r4, 0 - bl sub_809CD7C - movs r0, 0x1 - str r0, [r4] - b _0809CFDA -_0809CF74: - ldr r0, [r4, 0x8] - cmp r0, 0 - ble _0809CF86 - subs r0, 0x1 - str r0, [r4, 0x8] - movs r0, 0x9 - str r0, [r6] - ldrb r0, [r4, 0xC] - b _0809CFD6 -_0809CF86: - ldr r0, _0809CFA0 - ldrh r1, [r0] - movs r0, 0x9 - str r0, [r6] - movs r0, 0x40 - ands r0, r1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0 - beq _0809CFA4 - movs r0, 0x4 - b _0809CFB6 - .align 2, 0 -_0809CFA0: .4byte gUnknown_20255F0 -_0809CFA4: - movs r0, 0x80 - ands r1, r0 - cmp r1, 0 - beq _0809CFB0 - strb r2, [r7] - b _0809CFB8 -_0809CFB0: - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 -_0809CFB6: - strb r0, [r7] -_0809CFB8: - ldrb r0, [r7] - strb r0, [r4, 0xC] - lsls r0, 24 - movs r1, 0xFF - lsls r1, 24 - cmp r0, r1 - beq _0809CFD8 - movs r0, 0x20 - str r0, [r4, 0x8] - b _0809CFD8 -_0809CFCC: - movs r0, 0 - str r0, [r6] - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 -_0809CFD6: - strb r0, [r7] -_0809CFD8: - mov r0, r8 -_0809CFDA: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_809CDC8 - - thumb_func_start sub_809CFE8 -sub_809CFE8: - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - adds r2, r1, 0 - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0809D014 - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0809D004 - movs r0, 0x3 - b _0809D052 -_0809D004: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0809D010 - movs r0, 0x5 - b _0809D052 -_0809D010: - movs r0, 0x4 - b _0809D052 -_0809D014: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0809D038 - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0809D028 - movs r0, 0x1 - b _0809D052 -_0809D028: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0809D034 - movs r0, 0x7 - b _0809D052 -_0809D034: - movs r0, 0 - b _0809D052 -_0809D038: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0809D044 - movs r0, 0x2 - b _0809D052 -_0809D044: - movs r0, 0x20 - ands r2, r0 - cmp r2, 0 - bne _0809D050 - subs r0, 0x21 - b _0809D052 -_0809D050: - movs r0, 0x6 -_0809D052: - pop {r1} - bx r1 - thumb_func_end sub_809CFE8 - - thumb_func_start sub_809D058 -sub_809D058: - push {lr} - ldr r1, [r0, 0x4] - cmp r1, 0x3F - bgt _0809D076 - ldr r0, [r0] - cmp r0, 0x67 - bgt _0809D06A - movs r0, 0x5 - b _0809D0A6 -_0809D06A: - cmp r0, 0x88 - ble _0809D072 - movs r0, 0x3 - b _0809D0A6 -_0809D072: - movs r0, 0x4 - b _0809D0A6 -_0809D076: - cmp r1, 0x60 - ble _0809D090 - ldr r0, [r0] - cmp r0, 0x67 - bgt _0809D084 - movs r0, 0x7 - b _0809D0A6 -_0809D084: - cmp r0, 0x88 - ble _0809D08C - movs r0, 0x1 - b _0809D0A6 -_0809D08C: - movs r0, 0 - b _0809D0A6 -_0809D090: - ldr r0, [r0] - cmp r0, 0x67 - bgt _0809D09A - movs r0, 0x6 - b _0809D0A6 -_0809D09A: - cmp r0, 0x88 - bgt _0809D0A4 - movs r0, 0x1 - negs r0, r0 - b _0809D0A6 -_0809D0A4: - movs r0, 0x2 -_0809D0A6: - pop {r1} - bx r1 - thumb_func_end sub_809D058 - - thumb_func_start sub_809D0AC -sub_809D0AC: - push {lr} - bl sub_809D0BC - pop {r0} - bx r0 - thumb_func_end sub_809D0AC - - thumb_func_start nullsub_119 -nullsub_119: - bx lr - thumb_func_end nullsub_119 - - thumb_func_start sub_809D0BC -sub_809D0BC: - push {r4,r5,lr} - ldr r5, _0809D0F8 - ldr r1, _0809D0FC - ldr r2, [r1] - ldr r3, [r1, 0x4] - str r2, [r5, 0x3C] - str r3, [r5, 0x40] - adds r0, r5, 0 - adds r0, 0x44 - movs r4, 0 - strb r4, [r0] - movs r0, 0 - bl sub_809D158 - str r4, [r5, 0x8] - str r4, [r5, 0xC] - str r4, [r5, 0x10] - movs r0, 0x1 - negs r0, r0 - str r0, [r5, 0x4] - str r4, [r5, 0x24] - str r4, [r5, 0x28] - str r4, [r5, 0x2C] - str r4, [r5, 0x30] - str r4, [r5, 0x34] - str r4, [r5, 0x38] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809D0F8: .4byte gUnknown_20399E8 -_0809D0FC: .4byte gUnknown_8116478 - thumb_func_end sub_809D0BC - - thumb_func_start sub_809D100 -sub_809D100: - push {lr} - adds r2, r0, 0 - ldr r1, _0809D120 - ldr r0, [r1, 0x24] - cmp r0, r2 - beq _0809D11A - str r2, [r1, 0x24] - movs r0, 0 - str r0, [r1, 0x28] - str r0, [r1, 0x2C] - str r0, [r1, 0x30] - str r0, [r1, 0x34] - str r0, [r1, 0x38] -_0809D11A: - pop {r0} - bx r0 - .align 2, 0 -_0809D120: .4byte gUnknown_20399E8 - thumb_func_end sub_809D100 - - thumb_func_start sub_809D124 -sub_809D124: - push {r4,lr} - adds r4, r0, 0 - ldr r3, _0809D144 - ldr r0, [r3, 0x24] - cmp r0, r4 - beq _0809D13A - str r4, [r3, 0x24] - movs r0, 0 - str r0, [r3, 0x30] - str r0, [r3, 0x34] - str r0, [r3, 0x38] -_0809D13A: - str r1, [r3, 0x28] - str r2, [r3, 0x2C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809D144: .4byte gUnknown_20399E8 - thumb_func_end sub_809D124 - - thumb_func_start sub_809D148 -sub_809D148: - ldr r1, _0809D154 - str r0, [r1] - movs r0, 0 - str r0, [r1, 0x8] - bx lr - .align 2, 0 -_0809D154: .4byte gUnknown_20399E8 - thumb_func_end sub_809D148 - - thumb_func_start sub_809D158 -sub_809D158: - ldr r2, _0809D16C - str r0, [r2] - movs r0, 0 - str r0, [r2, 0x8] - ldr r0, [r1] - ldr r1, [r1, 0x4] - str r0, [r2, 0x1C] - str r1, [r2, 0x20] - bx lr - .align 2, 0 -_0809D16C: .4byte gUnknown_20399E8 - thumb_func_end sub_809D158 - - thumb_func_start sub_809D170 -sub_809D170: - ldr r2, _0809D17C - str r0, [r2] - movs r0, 0 - str r0, [r2, 0x8] - str r1, [r2, 0x4] - bx lr - .align 2, 0 -_0809D17C: .4byte gUnknown_20399E8 - thumb_func_end sub_809D170 - - thumb_func_start sub_809D180 -sub_809D180: - ldr r2, _0809D18C - str r0, [r2] - movs r0, 0x1 - str r0, [r2, 0x8] - str r1, [r2, 0xC] - bx lr - .align 2, 0 -_0809D18C: .4byte gUnknown_20399E8 - thumb_func_end sub_809D180 - - thumb_func_start sub_809D190 -sub_809D190: - ldr r3, _0809D1A4 - str r0, [r3] - movs r0, 0x1 - str r0, [r3, 0x8] - str r2, [r3, 0xC] - ldr r0, [r1] - ldr r1, [r1, 0x4] - str r0, [r3, 0x14] - str r1, [r3, 0x18] - bx lr - .align 2, 0 -_0809D1A4: .4byte gUnknown_20399E8 - thumb_func_end sub_809D190 - - thumb_func_start sub_809D1A8 -sub_809D1A8: - ldr r3, _0809D1B8 - str r0, [r3] - movs r0, 0x1 - str r0, [r3, 0x8] - str r2, [r3, 0xC] - str r1, [r3, 0x4] - bx lr - .align 2, 0 -_0809D1B8: .4byte gUnknown_20399E8 - thumb_func_end sub_809D1A8 - - thumb_func_start sub_809D1BC -sub_809D1BC: - ldr r2, _0809D1C8 - str r0, [r2] - movs r0, 0x2 - str r0, [r2, 0x8] - str r1, [r2, 0x10] - bx lr - .align 2, 0 -_0809D1C8: .4byte gUnknown_20399E8 - thumb_func_end sub_809D1BC - - thumb_func_start sub_809D1CC -sub_809D1CC: - ldr r3, _0809D1E0 - str r0, [r3] - movs r0, 0x2 - str r0, [r3, 0x8] - str r2, [r3, 0x10] - ldr r0, [r1] - ldr r1, [r1, 0x4] - str r0, [r3, 0x14] - str r1, [r3, 0x18] - bx lr - .align 2, 0 -_0809D1E0: .4byte gUnknown_20399E8 - thumb_func_end sub_809D1CC - - thumb_func_start sub_809D1E4 -sub_809D1E4: - ldr r3, _0809D1F4 - str r0, [r3] - movs r0, 0x2 - str r0, [r3, 0x8] - str r2, [r3, 0x10] - str r1, [r3, 0x4] - bx lr - .align 2, 0 -_0809D1F4: .4byte gUnknown_20399E8 - thumb_func_end sub_809D1E4 - - thumb_func_start sub_809D1F8 -sub_809D1F8: - ldr r2, _0809D204 - str r0, [r2] - movs r0, 0x3 - str r0, [r2, 0x8] - str r1, [r2, 0xC] - bx lr - .align 2, 0 -_0809D204: .4byte gUnknown_20399E8 - thumb_func_end sub_809D1F8 - - thumb_func_start sub_809D208 -sub_809D208: - ldr r3, _0809D21C - str r0, [r3] - movs r0, 0x3 - str r0, [r3, 0x8] - str r2, [r3, 0xC] - ldr r0, [r1] - ldr r1, [r1, 0x4] - str r0, [r3, 0x14] - str r1, [r3, 0x18] - bx lr - .align 2, 0 -_0809D21C: .4byte gUnknown_20399E8 - thumb_func_end sub_809D208 - - thumb_func_start sub_809D220 -sub_809D220: - ldr r3, _0809D230 - str r0, [r3] - movs r0, 0x3 - str r0, [r3, 0x8] - str r2, [r3, 0xC] - str r1, [r3, 0x4] - bx lr - .align 2, 0 -_0809D230: .4byte gUnknown_20399E8 - thumb_func_end sub_809D220 - - thumb_func_start sub_809D234 -sub_809D234: - push {lr} - ldr r0, _0809D244 - ldr r0, [r0, 0x8] - cmp r0, 0 - beq _0809D240 - movs r0, 0x1 -_0809D240: - pop {r1} - bx r1 - .align 2, 0 -_0809D244: .4byte gUnknown_20399E8 - thumb_func_end sub_809D234 - - thumb_func_start sub_809D248 -sub_809D248: - ldr r3, _0809D258 - ldr r1, [r3, 0x3C] - ldr r2, [r3, 0x40] - str r1, [r0] - str r2, [r0, 0x4] - adds r3, 0x44 - ldrb r0, [r3] - bx lr - .align 2, 0 -_0809D258: .4byte gUnknown_20399E8 - thumb_func_end sub_809D248 - - thumb_func_start sub_809D25C -sub_809D25C: - push {r4-r6,lr} - sub sp, 0x24 - ldr r4, _0809D274 - ldr r0, [r4] - cmp r0, 0x2 - beq _0809D28C - cmp r0, 0x2 - bhi _0809D278 - cmp r0, 0x1 - beq _0809D27E - b _0809D2B2 - .align 2, 0 -_0809D274: .4byte gUnknown_20399E8 -_0809D278: - cmp r0, 0x3 - beq _0809D29A - b _0809D2B2 -_0809D27E: - movs r1, 0x4 - ldrsh r0, [r4, r1] - adds r1, r4, 0 - adds r1, 0x1C - bl sub_80A8FD8 - b _0809D2A6 -_0809D28C: - movs r1, 0x4 - ldrsh r0, [r4, r1] - adds r1, r4, 0 - adds r1, 0x1C - bl sub_80AC448 - b _0809D2A6 -_0809D29A: - movs r1, 0x4 - ldrsh r0, [r4, r1] - adds r1, r4, 0 - adds r1, 0x1C - bl sub_80AD360 -_0809D2A6: - lsls r0, 16 - ldr r1, _0809D2C4 - cmp r0, r1 - bne _0809D2B2 - movs r0, 0 - str r0, [r4] -_0809D2B2: - ldr r4, _0809D2C8 - ldr r0, [r4, 0x8] - cmp r0, 0x2 - beq _0809D356 - cmp r0, 0x2 - bhi _0809D2CC - cmp r0, 0x1 - beq _0809D2D2 - b _0809D388 - .align 2, 0 -_0809D2C4: .4byte 0xffff0000 -_0809D2C8: .4byte gUnknown_20399E8 -_0809D2CC: - cmp r0, 0x3 - beq _0809D314 - b _0809D388 -_0809D2D2: - ldr r0, [r4, 0x1C] - ldr r1, [r4, 0x14] - subs r0, r1 - str r0, [sp, 0x4] - ldr r0, [r4, 0x20] - ldr r1, [r4, 0x18] - subs r0, r1 - str r0, [sp, 0x8] - ldr r1, [r4, 0xC] - add r0, sp, 0x4 - bl sub_800290C - ldr r0, [sp, 0x4] - cmp r0, 0 - bne _0809D2FA - ldr r0, [sp, 0x8] - cmp r0, 0 - bne _0809D2FA - str r0, [r4, 0x8] - b _0809D392 -_0809D2FA: - ldr r2, _0809D310 - ldr r0, [r2, 0x14] - ldr r1, [sp, 0x4] - adds r0, r1 - str r0, [r2, 0x14] - ldr r0, [r2, 0x18] - ldr r1, [sp, 0x8] - adds r0, r1 - str r0, [r2, 0x18] - b _0809D392 - .align 2, 0 -_0809D310: .4byte gUnknown_20399E8 -_0809D314: - ldr r1, [r4, 0x1C] - ldr r0, [r4, 0x14] - subs r0, r1, r0 - cmp r0, 0 - bge _0809D320 - adds r0, 0xFF -_0809D320: - asrs r2, r0, 8 - ldr r1, [r4, 0x20] - ldr r0, [r4, 0x18] - subs r1, r0 - cmp r1, 0 - bge _0809D32E - adds r1, 0xFF -_0809D32E: - asrs r1, 8 - lsls r0, r2, 8 - lsls r1, 8 - bl sub_8009FB8 - cmp r0, 0 - bge _0809D33E - adds r0, 0xFF -_0809D33E: - asrs r0, 8 - lsls r0, 8 - ldr r1, [r4, 0xC] - bl __divsi3 - str r0, [r4, 0x10] - cmp r0, 0 - bgt _0809D352 - movs r0, 0x1 - str r0, [r4, 0x10] -_0809D352: - movs r0, 0x2 - str r0, [r4, 0x8] -_0809D356: - add r0, sp, 0xC - ldr r1, _0809D384 - adds r2, r1, 0 - adds r2, 0x8 - adds r5, r1, 0 - subs r5, 0x14 - ldr r3, [r5, 0x10] - movs r4, 0x1 - str r4, [sp] - bl sub_8002934 - ldr r0, [sp, 0xC] - ldr r1, [sp, 0x10] - str r0, [r5, 0x14] - str r1, [r5, 0x18] - ldr r0, [r5, 0x10] - subs r0, 0x1 - str r0, [r5, 0x10] - cmp r0, 0 - bgt _0809D392 - movs r0, 0 - str r0, [r5, 0x8] - b _0809D392 - .align 2, 0 -_0809D384: .4byte gUnknown_20399FC -_0809D388: - ldr r2, _0809D3A4 - ldr r0, [r2, 0x1C] - ldr r1, [r2, 0x20] - str r0, [r2, 0x14] - str r1, [r2, 0x18] -_0809D392: - ldr r5, _0809D3A4 - ldr r0, [r5, 0x24] - cmp r0, 0x1 - beq _0809D3A8 - cmp r0, 0x2 - beq _0809D3D2 - movs r0, 0 - str r0, [r5, 0x34] - b _0809D402 - .align 2, 0 -_0809D3A4: .4byte gUnknown_20399E8 -_0809D3A8: - ldr r0, [r5, 0x30] - subs r0, 0x1 - str r0, [r5, 0x30] - cmp r0, 0 - bgt _0809D404 - movs r0, 0x4 - str r0, [r5, 0x30] - movs r4, 0x2 - negs r4, r4 - adds r0, r4, 0 - movs r1, 0x2 - bl OtherRandomRange - lsls r0, 10 - str r0, [r5, 0x34] - adds r0, r4, 0 - movs r1, 0x2 - bl OtherRandomRange - lsls r0, 10 - b _0809D402 -_0809D3D2: - ldr r0, [r5, 0x30] - subs r0, 0x1 - str r0, [r5, 0x30] - cmp r0, 0 - bgt _0809D404 - ldr r0, [r5, 0x2C] - str r0, [r5, 0x30] - movs r4, 0x2 - negs r4, r4 - adds r0, r4, 0 - movs r1, 0x2 - bl OtherRandomRange - ldr r1, [r5, 0x28] - muls r0, r1 - lsls r0, 8 - str r0, [r5, 0x34] - adds r0, r4, 0 - movs r1, 0x2 - bl OtherRandomRange - ldr r1, [r5, 0x28] - muls r0, r1 - lsls r0, 8 -_0809D402: - str r0, [r5, 0x38] -_0809D404: - add r5, sp, 0x14 - add r6, sp, 0x1C - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80A579C - lsls r0, 24 - cmp r0, 0 - beq _0809D474 - ldr r4, _0809D47C - ldr r0, [r4, 0x14] - ldr r1, [r4, 0x34] - adds r0, r1 - adds r2, r0, 0 - subs r2, 0x80 - ldr r0, [r4, 0x18] - ldr r1, [r4, 0x38] - adds r0, r1 - ldr r1, _0809D480 - adds r3, r0, r1 - ldr r0, [sp, 0x14] - cmp r2, r0 - bge _0809D434 - adds r2, r0, 0 -_0809D434: - ldr r0, [sp, 0x1C] - cmp r2, r0 - blt _0809D43C - subs r2, r0, 0x1 -_0809D43C: - ldr r0, [r5, 0x4] - cmp r3, r0 - bge _0809D444 - adds r3, r0, 0 -_0809D444: - ldr r1, [r6, 0x4] - cmp r3, r1 - blt _0809D44C - subs r3, r1, 0x1 -_0809D44C: - ldr r1, _0809D484 - adds r0, r2, r1 - cmp r0, 0 - bge _0809D458 - adds r1, 0xFF - adds r0, r2, r1 -_0809D458: - asrs r0, 8 - str r0, [r4, 0x3C] - ldr r1, _0809D488 - adds r0, r3, r1 - cmp r0, 0 - bge _0809D468 - adds r1, 0xFF - adds r0, r3, r1 -_0809D468: - asrs r0, 8 - str r0, [r4, 0x40] - adds r1, r4, 0 - adds r1, 0x44 - movs r0, 0x1 - strb r0, [r1] -_0809D474: - add sp, 0x24 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809D47C: .4byte gUnknown_20399E8 -_0809D480: .4byte 0xfffff480 -_0809D484: .4byte 0xffff8700 -_0809D488: .4byte 0xffffb000 - thumb_func_end sub_809D25C - - thumb_func_start nullsub_120 -nullsub_120: - bx lr - thumb_func_end nullsub_120 - - thumb_func_start sub_809D490 -sub_809D490: - push {r4,lr} - ldr r4, _0809D4AC - movs r0, 0x80 - lsls r0, 3 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r4] - bl sub_809D4B0 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809D4AC: .4byte gUnknown_203B4B0 - thumb_func_end sub_809D490 - - thumb_func_start sub_809D4B0 -sub_809D4B0: - push {r4,r5,lr} - ldr r0, _0809D4EC - movs r2, 0x1 - negs r2, r2 - adds r1, r2, 0 - strh r1, [r0] - ldr r0, _0809D4F0 - strh r1, [r0] - ldr r0, _0809D4F4 - strh r1, [r0] - ldr r1, _0809D4F8 - movs r0, 0 - strb r0, [r1] - movs r1, 0 - ldr r5, _0809D4FC - movs r2, 0 - ldr r3, _0809D500 - ldr r4, _0809D504 -_0809D4D4: - adds r0, r1, r5 - strb r2, [r0] - adds r0, r1, r3 - strb r2, [r0] - stm r4!, {r2} - adds r1, 0x1 - cmp r1, 0x80 - ble _0809D4D4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809D4EC: .4byte gUnknown_2039A30 -_0809D4F0: .4byte gUnknown_2039A32 -_0809D4F4: .4byte gUnknown_2039A34 -_0809D4F8: .4byte gUnknown_2039A36 -_0809D4FC: .4byte gUnknown_2039A38 -_0809D500: .4byte gUnknown_2039AC0 -_0809D504: .4byte gUnknown_2039B48 - thumb_func_end sub_809D4B0 - - thumb_func_start sub_809D508 -sub_809D508: - push {r4,lr} - ldr r4, _0809D51C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809D51C: .4byte gUnknown_203B4B0 - thumb_func_end sub_809D508 - - thumb_func_start sub_809D520 -sub_809D520: - ldr r1, _0809D528 - strh r1, [r0] - bx lr - .align 2, 0 -_0809D528: .4byte 0x0000ffff - thumb_func_end sub_809D520 - - thumb_func_start sub_809D52C -sub_809D52C: - push {lr} - movs r2, 0 - ldrsh r1, [r0, r2] - cmp r1, 0x1 - beq _0809D544 - cmp r1, 0x1 - ble _0809D562 - cmp r1, 0x2 - beq _0809D54E - cmp r1, 0x3 - beq _0809D558 - b _0809D562 -_0809D544: - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_80A882C - b _0809D564 -_0809D54E: - movs r2, 0x2 - ldrsh r0, [r0, r2] - bl sub_80AC240 - b _0809D564 -_0809D558: - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_80AD158 - b _0809D564 -_0809D562: - movs r0, 0 -_0809D564: - pop {r1} - bx r1 - thumb_func_end sub_809D52C - - thumb_func_start sub_809D568 -sub_809D568: - push {lr} - adds r3, r0, 0 - ldr r0, _0809D5B4 - strh r0, [r3] - movs r2, 0 - movs r0, 0 - strh r0, [r3, 0x2] - str r0, [r3, 0x8] - str r0, [r3, 0x4] - str r0, [r3, 0x14] - str r0, [r3, 0x10] - adds r1, r3, 0 - adds r1, 0x20 - strb r2, [r1] - str r0, [r3, 0x1C] - movs r1, 0x1 - negs r1, r1 - strh r1, [r3, 0x22] - strh r0, [r3, 0x24] - adds r2, r3, 0 - adds r2, 0x26 - movs r1, 0xFF - strb r1, [r2] - strh r0, [r3, 0x28] - strh r0, [r3, 0x2A] - strh r0, [r3, 0x2C] - str r0, [r3, 0x30] - movs r2, 0 - movs r1, 0x3 - adds r0, r3, 0 - adds r0, 0x5C -_0809D5A6: - str r2, [r0] - subs r0, 0x4 - subs r1, 0x1 - cmp r1, 0 - bge _0809D5A6 - pop {r0} - bx r0 - .align 2, 0 -_0809D5B4: .4byte 0x0000ffff - thumb_func_end sub_809D568 - - thumb_func_start sub_809D5B8 -sub_809D5B8: - push {r4,lr} - adds r4, r0, 0 - movs r0, 0 - str r0, [r4] - str r0, [r4, 0x4] - ldr r0, _0809D5FC - strh r0, [r4, 0x10] - movs r0, 0xFF - strb r0, [r4, 0x12] - adds r0, r4, 0 - adds r0, 0xC - bl sub_809D520 - movs r2, 0 - movs r1, 0x3 - adds r0, r4, 0 - adds r0, 0x20 -_0809D5DA: - str r2, [r0] - subs r0, 0x4 - subs r1, 0x1 - cmp r1, 0 - bge _0809D5DA - adds r0, r4, 0 - adds r0, 0x24 - bl sub_809D568 - adds r0, r4, 0 - adds r0, 0x84 - bl sub_809D568 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809D5FC: .4byte 0x0000ffff - thumb_func_end sub_809D5B8 - - thumb_func_start sub_809D600 -sub_809D600: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - adds r6, r1, 0 - mov r8, r2 - adds r4, r3, 0 - ldr r5, [sp, 0x18] - lsls r4, 16 - asrs r4, 16 - lsls r5, 24 - asrs r5, 24 - bl sub_809D5B8 - str r6, [r7] - mov r0, r8 - str r0, [r7, 0x4] - strh r4, [r7, 0x10] - strb r5, [r7, 0x12] - ldrh r0, [r6] - strh r0, [r7, 0x8] - ldr r1, [r6, 0x4] - cmp r1, 0 - beq _0809D63A - mov r0, r8 - bl _call_via_r1 - strh r0, [r7, 0xA] - b _0809D63C -_0809D63A: - strh r1, [r7, 0xA] -_0809D63C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_809D600 - - thumb_func_start sub_809D648 -sub_809D648: - push {lr} - bl sub_809D5B8 - pop {r0} - bx r0 - thumb_func_end sub_809D648 - - thumb_func_start sub_809D654 -sub_809D654: - movs r1, 0x26 - ldrsh r0, [r0, r1] - bx lr - thumb_func_end sub_809D654 - - thumb_func_start sub_809D65C -sub_809D65C: - push {lr} - adds r1, r0, 0 - movs r2, 0x26 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _0809D66E - movs r0, 0x1 - negs r0, r0 - b _0809D672 -_0809D66E: - movs r2, 0x24 - ldrsh r0, [r1, r2] -_0809D672: - pop {r1} - bx r1 - thumb_func_end sub_809D65C - - thumb_func_start sub_809D678 -sub_809D678: - movs r2, 0x26 - ldrsh r1, [r0, r2] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - bx lr - thumb_func_end sub_809D678 - - thumb_func_start sub_809D684 -sub_809D684: - push {lr} - adds r2, r0, 0 - adds r3, r1, 0 - movs r1, 0x26 - ldrsh r0, [r2, r1] - cmp r0, 0 - beq _0809D6A4 - ldr r0, [r2, 0x34] - cmp r0, 0 - beq _0809D69C - ldr r1, [r2, 0x38] - b _0809D69E -_0809D69C: - ldr r1, [r2, 0x2C] -_0809D69E: - ldr r0, [r3] - cmp r1, r0 - beq _0809D6CC -_0809D6A4: - adds r0, r2, 0 - adds r0, 0x86 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _0809D6D0 - adds r0, r2, 0 - adds r0, 0x94 - ldr r0, [r0] - cmp r0, 0 - beq _0809D6C0 - adds r0, r2, 0 - adds r0, 0x98 - b _0809D6C4 -_0809D6C0: - adds r0, r2, 0 - adds r0, 0x8C -_0809D6C4: - ldr r1, [r0] - ldr r0, [r3] - cmp r1, r0 - bne _0809D6D0 -_0809D6CC: - movs r0, 0x1 - b _0809D6D2 -_0809D6D0: - movs r0, 0 -_0809D6D2: - pop {r1} - bx r1 - thumb_func_end sub_809D684 - - thumb_func_start sub_809D6D8 -sub_809D6D8: - lsls r1, 16 - asrs r1, 14 - adds r0, 0x14 - adds r0, r1 - str r2, [r0] - bx lr - thumb_func_end sub_809D6D8 - - thumb_func_start sub_809D6E4 -sub_809D6E4: - push {r4,lr} - lsls r2, 16 - asrs r2, 16 - lsls r4, r2, 2 - adds r3, r0, 0 - adds r3, 0x14 - adds r3, r4 - ldr r3, [r3] - str r3, [r1] - strh r2, [r1, 0x4] - ldrh r2, [r0, 0x10] - strh r2, [r1, 0x6] - ldrb r0, [r0, 0x12] - strb r0, [r1, 0x8] - adds r0, r3, 0 - cmp r0, 0 - beq _0809D708 - movs r0, 0x1 -_0809D708: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809D6E4 - - thumb_func_start sub_809D710 -sub_809D710: - push {r4,lr} - adds r4, r0, 0 - adds r3, r1, 0 - lsls r2, 16 - asrs r2, 16 - ldr r1, _0809D73C - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r1, 0x8 - adds r0, r1 - ldr r0, [r0] - str r0, [r3] - movs r0, 0x2 - strh r0, [r3, 0x4] - cmp r4, 0 - beq _0809D740 - ldrh r0, [r4, 0x10] - strh r0, [r3, 0x6] - ldrb r0, [r4, 0x12] - b _0809D746 - .align 2, 0 -_0809D73C: .4byte gUnknown_812F1F8 -_0809D740: - ldr r0, _0809D750 - strh r0, [r3, 0x6] - movs r0, 0xFF -_0809D746: - strb r0, [r3, 0x8] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809D750: .4byte 0x0000ffff - thumb_func_end sub_809D710 - - thumb_func_start sub_809D754 -sub_809D754: - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x24 - bl sub_809D568 - adds r4, 0x84 - adds r0, r4, 0 - bl sub_809D568 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809D754 - - thumb_func_start sub_809D770 -sub_809D770: - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x24 - bl sub_809D568 - adds r0, r4, 0 - adds r0, 0x84 - bl sub_809D568 - movs r0, 0x4 - strh r0, [r4, 0x26] - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809D770 - - thumb_func_start GroundScript_ExecutePP -GroundScript_ExecutePP: - push {r4-r7,lr} - adds r5, r0, 0 - adds r7, r1, 0 - adds r6, r2, 0 - cmp r6, 0 - beq _0809D7A2 - ldr r0, [r6] - cmp r0, 0 - bne _0809D7A6 -_0809D7A2: - movs r0, 0 - b _0809D8B8 -_0809D7A6: - movs r1, 0x4 - ldrsh r0, [r6, r1] - cmp r0, 0x5 - bhi _0809D858 - lsls r0, 2 - ldr r1, _0809D7B8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809D7B8: .4byte _0809D7BC - .align 2, 0 -_0809D7BC: - .4byte _0809D830 - .4byte _0809D84A - .4byte _0809D7D4 - .4byte _0809D7D4 - .4byte _0809D858 - .4byte _0809D7EE -_0809D7D4: - movs r3, 0x24 - ldrsh r0, [r5, r3] - cmp r0, 0x1 - beq _0809D838 - adds r4, r5, 0 - adds r4, 0x24 - cmp r0, 0x5 - bne _0809D86C - adds r0, r5, 0 - adds r0, 0x84 - bl sub_809D568 - b _0809D86C -_0809D7EE: - movs r1, 0x24 - ldrsh r0, [r5, r1] - cmp r0, 0x2 - beq _0809D808 - ldr r0, _0809D800 - ldr r1, _0809D804 - bl FatalError - .align 2, 0 -_0809D800: .4byte gUnknown_8116538 -_0809D804: .4byte gUnknown_8116544 -_0809D808: - adds r2, r5, 0 - adds r2, 0x84 - movs r3, 0 - ldrsh r1, [r2, r3] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809D828 - ldr r0, _0809D820 - ldr r1, _0809D824 - bl FatalError - .align 2, 0 -_0809D820: .4byte gUnknown_8116560 -_0809D824: .4byte gUnknown_811656C -_0809D828: - adds r4, r5, 0 - adds r4, 0x24 - adds r0, r2, 0 - b _0809D840 -_0809D830: - movs r1, 0x24 - ldrsh r0, [r5, r1] - cmp r0, 0x1 - bne _0809D84A -_0809D838: - adds r0, r5, 0 - adds r0, 0x84 - adds r4, r5, 0 - adds r4, 0x24 -_0809D840: - adds r1, r4, 0 - movs r2, 0x60 - bl memcpy - b _0809D86C -_0809D84A: - adds r0, r5, 0 - adds r0, 0x84 - bl sub_809D568 - adds r4, r5, 0 - adds r4, 0x24 - b _0809D86C -_0809D858: - ldr r0, _0809D864 - ldr r1, _0809D868 - movs r3, 0x4 - ldrsh r2, [r6, r3] - bl FatalError - .align 2, 0 -_0809D864: .4byte gUnknown_8116588 -_0809D868: .4byte gUnknown_8116594 -_0809D86C: - adds r0, r4, 0 - bl sub_809D568 - cmp r7, 0 - beq _0809D87C - ldr r0, [r7] - str r0, [r5, 0xC] - b _0809D884 -_0809D87C: - adds r0, r5, 0 - adds r0, 0xC - bl sub_809D520 -_0809D884: - ldrh r0, [r6, 0x4] - movs r1, 0 - strh r0, [r5, 0x24] - movs r0, 0x3 - strh r0, [r5, 0x26] - ldrh r0, [r6, 0x6] - strh r0, [r5, 0x30] - ldrb r0, [r6, 0x8] - adds r2, r5, 0 - adds r2, 0x32 - strb r0, [r2] - ldr r0, [r6] - str r0, [r5, 0x28] - str r0, [r5, 0x2C] - str r1, [r5, 0x34] - str r1, [r5, 0x38] - ldr r0, [r5] - ldr r2, [r0, 0x14] - cmp r2, 0 - beq _0809D8B6 - ldr r0, [r5, 0x4] - adds r1, r5, 0 - adds r1, 0x4A - bl _call_via_r2 -_0809D8B6: - movs r0, 0x1 -_0809D8B8: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end GroundScript_ExecutePP - - thumb_func_start sub_809D8C0 -sub_809D8C0: - push {r4-r6,lr} - sub sp, 0xC - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r3, 0 - lsls r2, 16 - asrs r2, 16 - mov r1, sp - bl sub_809D6E4 - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - adds r3, r6, 0 - bl GroundScript_ExecutePP - lsls r0, 24 - lsrs r0, 24 - add sp, 0xC - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809D8C0 - - thumb_func_start sub_809D8EC -sub_809D8EC: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r1, 16 - asrs r5, r1, 16 - cmp r5, 0 - bne _0809D910 - bl sub_809A750 - lsls r0, 24 - cmp r0, 0 - bne _0809D910 - adds r0, r4, 0 - movs r1, 0 - bl sub_80A2460 - str r0, [r4, 0x28] - movs r0, 0 - b _0809D922 -_0809D910: - adds r0, r4, 0 - adds r0, 0x46 - strh r5, [r0] - movs r0, 0x2 - strh r0, [r4, 0x26] - ldr r1, _0809D928 - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x1 -_0809D922: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0809D928: .4byte gUnknown_2039A36 - thumb_func_end sub_809D8EC - - thumb_func_start sub_809D92C -sub_809D92C: - push {lr} - ldr r1, _0809D93C - bl sub_809D770 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_0809D93C: .4byte gUnknown_81165C8 - thumb_func_end sub_809D92C - - thumb_func_start sub_809D940 -sub_809D940: - push {r4,lr} - bl sub_80A8B74 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_80AC378 - orrs r4, r0 - lsls r4, 24 - lsrs r4, 24 - bl sub_80AD290 - orrs r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809D940 - - thumb_func_start sub_809D968 -sub_809D968: - push {r4-r6,lr} - adds r5, r0, 0 - lsls r1, 16 - asrs r6, r1, 16 - movs r4, 0 - adds r2, r5, 0 - adds r2, 0x46 - ldrh r1, [r2] - movs r0, 0 - ldrsh r3, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r3, r0 - beq _0809D98E - cmp r3, r6 - bne _0809D98E - ldr r0, _0809D9B4 - strh r0, [r2] - movs r4, 0x1 -_0809D98E: - adds r2, r5, 0 - adds r2, 0xA6 - ldrh r1, [r2] - movs r0, 0 - ldrsh r3, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r3, r0 - beq _0809D9AA - cmp r3, r6 - bne _0809D9AA - ldr r0, _0809D9B4 - strh r0, [r2] - movs r4, 0x1 -_0809D9AA: - adds r0, r4, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0809D9B4: .4byte 0x0000ffff - thumb_func_end sub_809D968 - - thumb_func_start sub_809D9B8 -sub_809D9B8: - lsls r0, 16 - asrs r0, 16 - ldr r1, _0809D9D4 - adds r1, r0, r1 - movs r3, 0 - movs r2, 0x1 - strb r2, [r1] - ldr r1, _0809D9D8 - lsls r0, 2 - adds r0, r1 - str r3, [r0] - ldr r0, _0809D9DC - strb r2, [r0] - bx lr - .align 2, 0 -_0809D9D4: .4byte gUnknown_2039A38 -_0809D9D8: .4byte gUnknown_2039B48 -_0809D9DC: .4byte gUnknown_2039A36 - thumb_func_end sub_809D9B8 - - thumb_func_start sub_809D9E0 -sub_809D9E0: - lsls r0, 16 - asrs r0, 16 - ldr r2, _0809D9FC - adds r2, r0, r2 - movs r3, 0x1 - strb r3, [r2] - ldr r2, _0809DA00 - lsls r0, 2 - adds r0, r2 - str r1, [r0] - ldr r0, _0809DA04 - strb r3, [r0] - bx lr - .align 2, 0 -_0809D9FC: .4byte gUnknown_2039A38 -_0809DA00: .4byte gUnknown_2039B48 -_0809DA04: .4byte gUnknown_2039A36 - thumb_func_end sub_809D9E0 - - thumb_func_start sub_809DA08 -sub_809DA08: - push {r4,r5,lr} - adds r5, r0, 0 - lsls r1, 16 - asrs r4, r1, 16 - ldr r1, _0809DA2C - lsls r0, r4, 2 - adds r0, r1 - str r2, [r0] - cmp r4, 0 - bne _0809DA38 - bl sub_809A750 - lsls r0, 24 - cmp r0, 0 - bne _0809DA30 - movs r0, 0 - b _0809DA5E - .align 2, 0 -_0809DA2C: .4byte gUnknown_2039B48 -_0809DA30: - adds r0, r5, 0 - adds r0, 0x46 - strh r4, [r0] - b _0809DA52 -_0809DA38: - movs r1, 0x80 - adds r2, r5, 0 - adds r2, 0x46 - adds r0, r4, 0 - orrs r0, r1 - strh r0, [r2] - ldr r0, _0809DA64 - adds r0, r4, r0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, _0809DA68 - adds r0, r4, r0 - strb r1, [r0] -_0809DA52: - movs r0, 0x2 - strh r0, [r5, 0x26] - ldr r1, _0809DA6C - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x1 -_0809DA5E: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0809DA64: .4byte gUnknown_2039A38 -_0809DA68: .4byte gUnknown_2039AC0 -_0809DA6C: .4byte gUnknown_2039A36 - thumb_func_end sub_809DA08 - - thumb_func_start HandleAction -HandleAction: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x148 - adds r7, r0, 0 - movs r1, 0x26 - ldrsh r0, [r7, r1] - cmp r0, 0 - bne _0809DA8A - bl _0809EAB8 -_0809DA8A: - movs r2, 0x26 - ldrsh r0, [r7, r2] - cmp r0, 0x4 - bls _0809DA96 - bl _0809E9CC -_0809DA96: - lsls r0, 2 - ldr r1, _0809DAA0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809DAA0: .4byte _0809DAA4 - .align 2, 0 -_0809DAA4: - .4byte _0809E9C6 - .4byte _0809E9C6 - .4byte _0809DAB8 - .4byte _0809E900 - .4byte _0809E9C6 -_0809DAB8: - adds r1, r7, 0 - adds r1, 0x44 - ldrb r0, [r1] - subs r0, 0x3 - adds r6, r1, 0 - cmp r0, 0xED - bls _0809DACA - bl _0809E9D6 -_0809DACA: - lsls r0, 2 - ldr r1, _0809DAD4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809DAD4: .4byte _0809DAD8 - .align 2, 0 -_0809DAD8: - .4byte _0809E382 - .4byte _0809E3C4 - .4byte _0809E524 - .4byte _0809E464 - .4byte _0809E4B4 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809DED6 - .4byte _0809DED6 - .4byte _0809DED6 - .4byte _0809DED6 - .4byte _0809DED6 - .4byte _0809DED6 - .4byte _0809DED6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E308 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E308 - .4byte _0809E308 - .4byte _0809E308 - .4byte _0809E308 - .4byte _0809E308 - .4byte _0809E308 - .4byte _0809E308 - .4byte _0809E308 - .4byte _0809E308 - .4byte _0809E31C - .4byte _0809E75C - .4byte _0809E33C - .4byte _0809E368 - .4byte _0809E658 - .4byte _0809E6B4 - .4byte _0809E6E8 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809DE90 - .4byte _0809DE90 - .4byte _0809DE90 - .4byte _0809DE90 - .4byte _0809E9D6 - .4byte _0809DE90 - .4byte _0809DE90 - .4byte _0809E9D6 - .4byte _0809DE90 - .4byte _0809DF60 - .4byte _0809DF60 - .4byte _0809DF60 - .4byte _0809DF60 - .4byte _0809DF60 - .4byte _0809DF60 - .4byte _0809DF60 - .4byte _0809E0A2 - .4byte _0809DFDC - .4byte _0809DFDC - .4byte _0809DFDC - .4byte _0809DFDC - .4byte _0809DFDC - .4byte _0809DFDC - .4byte _0809DFDC - .4byte _0809E0A2 - .4byte _0809E078 - .4byte _0809E078 - .4byte _0809E078 - .4byte _0809E078 - .4byte _0809E078 - .4byte _0809E078 - .4byte _0809E08C - .4byte _0809E08C - .4byte _0809E08C - .4byte _0809E08C - .4byte _0809E08C - .4byte _0809E08C - .4byte _0809E078 - .4byte _0809E078 - .4byte _0809E078 - .4byte _0809E078 - .4byte _0809E078 - .4byte _0809E078 - .4byte _0809E08C - .4byte _0809E08C - .4byte _0809E08C - .4byte _0809E08C - .4byte _0809E08C - .4byte _0809E08C - .4byte _0809E0E8 - .4byte _0809E0E8 - .4byte _0809DE90 - .4byte _0809DE90 - .4byte _0809DE90 - .4byte _0809DE90 - .4byte _0809DE90 - .4byte _0809DE90 - .4byte _0809E146 - .4byte _0809E146 - .4byte _0809E146 - .4byte _0809E146 - .4byte _0809E146 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809DE90 - .4byte _0809DE90 - .4byte _0809E9D6 - .4byte _0809E2D0 - .4byte _0809E2D0 - .4byte _0809E2D0 - .4byte _0809E2D0 - .4byte _0809E2D0 - .4byte _0809E2D0 - .4byte _0809E2D0 - .4byte _0809E2D0 - .4byte _0809E2D0 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E798 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E864 - .4byte _0809E864 - .4byte _0809E864 - .4byte _0809E864 - .4byte _0809E864 - .4byte _0809E864 - .4byte _0809E864 - .4byte _0809E9D6 - .4byte _0809E8D8 - .4byte _0809DE90 - .4byte _0809DE90 - .4byte _0809DEA6 - .4byte _0809DEBE - .4byte _0809DED6 - .4byte _0809DEE8 - .4byte _0809DF24 - .4byte _0809DF24 - .4byte _0809E2DE - .4byte _0809E9D6 - .4byte _0809E2DE - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 - .4byte _0809E9D6 -_0809DE90: - adds r1, r7, 0 - adds r1, 0x4E - ldrh r2, [r1] - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0 - ble _0809DEA2 - bl _0809EAB2 -_0809DEA2: - bl _0809E8F4 -_0809DEA6: - ldr r1, [r7] - ldr r0, [r7, 0x4] - ldr r1, [r1, 0x4C] - bl _call_via_r1 - lsls r0, 24 - cmp r0, 0 - beq _0809DEBA - bl _0809E9D6 -_0809DEBA: - bl _0809E8F4 -_0809DEBE: - ldr r1, [r7] - ldr r0, [r7, 0x4] - ldr r1, [r1, 0x50] - bl _call_via_r1 - lsls r0, 24 - cmp r0, 0 - beq _0809DED2 - bl _0809E9D6 -_0809DED2: - bl _0809E8F4 -_0809DED6: - bl sub_8099B94 - lsls r0, 24 - cmp r0, 0 - beq _0809DEE4 - bl _0809E9D6 -_0809DEE4: - bl _0809E8F4 -_0809DEE8: - add r1, sp, 0x4 - ldr r0, [r7, 0x40] - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldr r0, [r0] - str r0, [r1] - add r0, sp, 0x4 - ldrh r0, [r0, 0x2] - bl sub_8011940 - lsls r0, 24 - cmp r0, 0 - bne _0809DF06 - bl _0809E8F4 -_0809DF06: - adds r2, r7, 0 - adds r2, 0x50 - ldrh r1, [r2] - adds r0, r1, 0x1 - strh r0, [r2] - lsls r1, 16 - ldr r0, _0809DF20 - cmp r1, r0 - bgt _0809DF1C - bl _0809E9D6 -_0809DF1C: - bl _0809E8F4 - .align 2, 0 -_0809DF20: .4byte 0x2a2f0000 -_0809DF24: - add r1, sp, 0x4 - ldr r0, [r7, 0x40] - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r0] - str r0, [r1] - add r0, sp, 0x4 - ldrh r0, [r0, 0x2] - bl sub_80119C0 - lsls r0, 24 - cmp r0, 0 - bne _0809DF42 - bl _0809E8F4 -_0809DF42: - adds r2, r7, 0 - adds r2, 0x50 - ldrh r1, [r2] - adds r0, r1, 0x1 - strh r0, [r2] - lsls r1, 16 - ldr r0, _0809DF5C - cmp r1, r0 - bgt _0809DF58 - bl _0809E9D6 -_0809DF58: - bl _0809E8F4 - .align 2, 0 -_0809DF5C: .4byte 0x0e0f0000 -_0809DF60: - ldr r1, [r7] - ldr r0, [r7, 0x4] - add r5, sp, 0xA4 - ldr r2, [r1, 0xC] - adds r1, r5, 0 - bl _call_via_r2 - ldr r1, [r7, 0x60] - ldr r0, [r5] - subs r1, r0 - add r4, sp, 0xAC - str r1, [r4] - ldr r0, [r7, 0x64] - ldr r1, [r5, 0x4] - subs r0, r1 - str r0, [r4, 0x4] - ldr r1, [r7, 0x54] - adds r0, r4, 0 - bl sub_800290C - ldr r0, [r4] - cmp r0, 0 - bne _0809DF98 - ldr r0, [r4, 0x4] - cmp r0, 0 - bne _0809DF98 - bl _0809E8F4 -_0809DF98: - ldr r1, [r7] - ldr r0, [r7, 0x4] - ldr r2, [r1, 0x48] - adds r1, r4, 0 - bl _call_via_r2 - movs r1, 0x9 - ands r1, r0 - cmp r1, 0 - beq _0809DFB0 - bl _0809E8F4 -_0809DFB0: - ldr r2, [r7] - ldr r0, [r7, 0x4] - movs r1, 0x80 - lsls r1, 5 - ldr r2, [r2, 0x30] - bl _call_via_r2 - adds r2, r7, 0 - adds r2, 0x4E - ldrh r0, [r2] - movs r5, 0 - ldrsh r1, [r2, r5] - cmp r1, 0 - bge _0809DFD0 - bl _0809E9D6 -_0809DFD0: - cmp r1, 0 - ble _0809DFD8 - bl _0809EAAC -_0809DFD8: - bl _0809E8F4 -_0809DFDC: - ldr r1, [r7] - ldr r0, [r7, 0x4] - add r5, sp, 0xB4 - ldr r2, [r1, 0xC] - adds r1, r5, 0 - bl _call_via_r2 - ldr r1, [r7, 0x60] - ldr r0, [r5] - subs r1, r0 - add r4, sp, 0xBC - str r1, [r4] - ldr r0, [r7, 0x64] - ldr r1, [r5, 0x4] - subs r0, r1 - str r0, [r4, 0x4] - ldr r1, [r7, 0x54] - adds r0, r4, 0 - bl sub_800290C - ldr r0, [r4] - adds r5, r4, 0 - cmp r0, 0 - bne _0809E016 - ldr r0, [r5, 0x4] - cmp r0, 0 - bne _0809E016 - bl _0809E8F4 -_0809E016: - ldr r1, [r7] - ldr r0, [r7, 0x4] - ldr r2, [r1, 0x48] - adds r1, r5, 0 - bl _call_via_r2 - adds r4, r0, 0 - adds r0, r5, 0 - bl sub_8002C60 - lsls r0, 24 - adds r2, r7, 0 - adds r2, 0x4A - asrs r1, r0, 24 - lsrs r0, 24 - strb r0, [r2] - ldr r2, [r7] - ldr r0, [r7, 0x4] - ldr r2, [r2, 0x2C] - bl _call_via_r2 - movs r0, 0x9 - ands r0, r4 - cmp r0, 0 - beq _0809E04C - bl _0809E8F4 -_0809E04C: - ldr r2, [r7] - ldr r0, [r7, 0x4] - movs r1, 0x80 - lsls r1, 5 - ldr r2, [r2, 0x30] - bl _call_via_r2 - adds r2, r7, 0 - adds r2, 0x4E - ldrh r0, [r2] - movs r6, 0 - ldrsh r1, [r2, r6] - cmp r1, 0 - bge _0809E06C - bl _0809E9D6 -_0809E06C: - cmp r1, 0 - ble _0809E074 - bl _0809EAAC -_0809E074: - bl _0809E8F4 -_0809E078: - adds r6, r7, 0 - adds r6, 0x4E - movs r1, 0 - ldrsh r0, [r6, r1] - cmp r0, 0 - ble _0809E088 - bl _0809EA62 -_0809E088: - bl _0809E8F4 -_0809E08C: - movs r2, 0x4E - adds r2, r7 - mov r8, r2 - movs r3, 0 - ldrsh r0, [r2, r3] - cmp r0, 0 - ble _0809E09E - bl _0809E9DA -_0809E09E: - bl _0809E8F4 -_0809E0A2: - ldr r1, [r7] - ldr r0, [r7, 0x4] - add r4, sp, 0xE4 - add r2, sp, 0xE8 - ldr r3, [r1, 0x10] - adds r1, r4, 0 - bl _call_via_r3 - ldr r0, [r7, 0x6C] - ldr r1, [r4] - subs r0, r1 - adds r2, r4, 0 - cmp r0, 0 - bne _0809E0C2 - bl _0809E8F4 -_0809E0C2: - ldr r4, [r7, 0x54] - cmn r0, r4 - bge _0809E0CC - subs r0, r1, r4 - b _0809E0D4 -_0809E0CC: - cmp r0, r4 - ble _0809E0D2 - adds r0, r4, 0 -_0809E0D2: - adds r0, r1, r0 -_0809E0D4: - str r0, [r2] - ldr r2, [r7] - ldr r0, [r7, 0x4] - add r1, sp, 0xE4 - ldr r1, [r1] - ldr r2, [r2, 0x28] - bl _call_via_r2 - bl _0809E9D6 -_0809E0E8: - ldr r1, [r7] - ldr r0, [r7, 0x4] - add r4, sp, 0x14 - ldr r2, [r1, 0x14] - adds r1, r4, 0 - bl _call_via_r2 - movs r1, 0 - ldrsb r1, [r4, r1] - ldr r2, [r7, 0x54] - add r4, sp, 0xEC - adds r0, r4, 0 - bl sub_8002BB8 - ldr r2, [r4] - ldr r3, [r4, 0x4] - add r1, sp, 0xF4 - str r2, [r1] - str r3, [r1, 0x4] - ldr r2, [r7] - ldr r0, [r7, 0x4] - ldr r2, [r2, 0x48] - bl _call_via_r2 - movs r1, 0x9 - ands r1, r0 - cmp r1, 0 - beq _0809E124 - bl _0809E8F4 -_0809E124: - ldr r2, [r7] - ldr r0, [r7, 0x4] - movs r1, 0x80 - lsls r1, 5 - ldr r2, [r2, 0x30] - bl _call_via_r2 - adds r1, r7, 0 - adds r1, 0x4E - ldrh r2, [r1] - movs r4, 0 - ldrsh r0, [r1, r4] - cmp r0, 0 - ble _0809E144 - bl _0809EAB2 -_0809E144: - b _0809E8F4 -_0809E146: - adds r1, r7, 0 - adds r1, 0x4E - ldrh r2, [r1] - movs r5, 0 - ldrsh r0, [r1, r5] - mov r10, r1 - cmp r0, 0 - ble _0809E15A - bl _0809EAB2 -_0809E15A: - add r1, sp, 0x4 - ldr r0, [r7, 0x40] - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldr r0, [r0] - str r0, [r1] - movs r4, 0x1 - negs r4, r4 - mov r8, r4 - movs r5, 0 - ldr r1, [r7] - ldr r0, [r7, 0x4] - mov r4, sp - adds r4, 0x15 - ldr r2, [r1, 0x14] - adds r1, r4, 0 - bl _call_via_r2 - add r0, sp, 0x4 - ldrb r0, [r0] - subs r0, 0x91 - mov r9, r4 - cmp r0, 0x4 - bhi _0809E234 - lsls r0, 2 - ldr r1, _0809E194 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809E194: .4byte _0809E198 - .align 2, 0 -_0809E198: - .4byte _0809E1AC - .4byte _0809E1AC - .4byte _0809E1BA - .4byte _0809E1E0 - .4byte _0809E20C -_0809E1AC: - adds r0, r7, 0 - adds r0, 0x71 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - mov r8, r0 - b _0809E234 -_0809E1BA: - ldr r0, [sp, 0x8] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r4, r0, 16 - cmp r4, 0 - blt _0809E234 - movs r5, 0x1 - add r1, sp, 0xFC - adds r0, r4, 0 - bl sub_80A8FD8 - add r1, sp, 0x104 - adds r0, r4, 0 - bl sub_80A8F9C - b _0809E234 -_0809E1E0: - ldr r0, [sp, 0x8] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - blt _0809E234 - movs r5, 0x1 - add r1, sp, 0xFC - bl sub_80A8FD8 - ldr r0, _0809E208 - ldr r1, [r0, 0x4] - ldr r0, [r0] - add r2, sp, 0x104 - str r0, [r2] - str r1, [r2, 0x4] - b _0809E234 - .align 2, 0 -_0809E208: .4byte gUnknown_81164DC -_0809E20C: - movs r5, 0x1 - ldr r1, [r7] - ldr r0, [r7, 0x4] - add r4, sp, 0xFC - ldr r2, [r1, 0xC] - adds r1, r4, 0 - bl _call_via_r2 - ldr r2, [r7] - ldr r0, [r7, 0x4] - add r1, sp, 0x104 - ldr r2, [r2, 0x8] - bl _call_via_r2 - ldr r0, [sp, 0x8] - lsls r0, 16 - asrs r0, 16 - adds r1, r4, 0 - bl sub_80AD8B4 -_0809E234: - cmp r5, 0 - beq _0809E282 - ldr r1, [r7] - ldr r0, [r7, 0x4] - add r5, sp, 0x10C - ldr r2, [r1, 0xC] - adds r1, r5, 0 - bl _call_via_r2 - ldr r1, [r7] - ldr r0, [r7, 0x4] - add r4, sp, 0x114 - ldr r2, [r1, 0x8] - adds r1, r4, 0 - bl _call_via_r2 - add r6, sp, 0xFC - add r3, sp, 0x104 - adds r0, r5, 0 - adds r1, r4, 0 - adds r2, r6, 0 - bl sub_8002DF0 - lsls r0, 24 - asrs r0, 24 - mov r8, r0 - movs r0, 0x1 - negs r0, r0 - cmp r8, r0 - bne _0809E28C - ldr r3, _0809E2CC - adds r0, r5, 0 - adds r1, r3, 0 - adds r2, r6, 0 - bl sub_8002D54 - lsls r0, 24 - asrs r0, 24 - mov r8, r0 -_0809E282: - movs r0, 0x1 - negs r0, r0 - cmp r8, r0 - bne _0809E28C - b _0809E8F4 -_0809E28C: - mov r5, r9 - movs r0, 0 - ldrsb r0, [r5, r0] - cmp r8, r0 - bne _0809E298 - b _0809E8F4 -_0809E298: - mov r6, r9 - movs r0, 0 - ldrsb r0, [r6, r0] - add r1, sp, 0x4 - ldrh r2, [r1, 0x2] - lsls r2, 24 - lsrs r2, 24 - mov r1, r8 - bl sub_8002A70 - adds r1, r7, 0 - adds r1, 0x4A - strb r0, [r1] - ldr r2, [r7] - ldr r0, [r7, 0x4] - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - ldr r2, [r2, 0x2C] - bl _call_via_r2 - add r0, sp, 0x4 - ldrb r0, [r0, 0x1] - mov r1, r10 - strh r0, [r1] - b _0809E9CC - .align 2, 0 -_0809E2CC: .4byte gUnknown_81164DC -_0809E2D0: - bl sub_809D234 - lsls r0, 24 - cmp r0, 0 - beq _0809E2DC - b _0809E9D6 -_0809E2DC: - b _0809E8F4 -_0809E2DE: - adds r0, r7, 0 - adds r0, 0x46 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809E2F0 - b _0809E9D6 -_0809E2F0: - ldr r1, _0809E304 - adds r0, r7, 0 - adds r0, 0x4C - movs r3, 0 - ldrsh r0, [r0, r3] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - b _0809E8EC - .align 2, 0 -_0809E304: .4byte gUnknown_2039B48 -_0809E308: - adds r0, r7, 0 - adds r0, 0x46 - movs r4, 0 - ldrsh r1, [r0, r4] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809E31A - b _0809E9D6 -_0809E31A: - b _0809E8CA -_0809E31C: - adds r0, r7, 0 - adds r0, 0x46 - movs r5, 0 - ldrsh r1, [r0, r5] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809E32E - b _0809E9D6 -_0809E32E: - bl sub_8099B94 - lsls r0, 24 - cmp r0, 0 - beq _0809E33A - b _0809E9D6 -_0809E33A: - b _0809E8CA -_0809E33C: - add r1, sp, 0x4 - ldr r0, [r7, 0x40] - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldr r0, [r0] - str r0, [r1] - add r0, sp, 0x4 - ldrb r1, [r0, 0x1] - movs r4, 0x2 - ldrsh r2, [r0, r4] - ldr r3, [sp, 0x8] - adds r0, r7, 0 - bl sub_80A14E8 - adds r1, r0, 0 - cmp r1, 0 - bge _0809E360 - b _0809E9D6 -_0809E360: - movs r0, 0x3 - strh r0, [r7, 0x26] - adds r0, r7, 0 - b _0809E60C -_0809E368: - add r0, sp, 0x11C - bl sub_809B260 - lsls r0, 24 - cmp r0, 0 - bne _0809E376 - b _0809E9D6 -_0809E376: - add r0, sp, 0x11C - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80A2460 - b _0809E8C8 -_0809E382: - add r0, sp, 0x120 - bl sub_809B260 - lsls r0, 24 - cmp r0, 0 - bne _0809E390 - b _0809E9D6 -_0809E390: - add r4, sp, 0x120 - ldr r0, [r4] - cmp r0, 0 - blt _0809E3BA - add r1, sp, 0x4 - ldr r0, [r7, 0x40] - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} - ldr r0, [r0] - str r0, [r1] - ldrb r0, [r4] - bl sub_8002694 - lsls r0, 16 - asrs r0, 16 - add r1, sp, 0x4 - movs r3, 0x2 - ldrsh r2, [r1, r3] - movs r1, 0 - bl sub_8098D1C -_0809E3BA: - ldr r1, [r4] - adds r0, r7, 0 - bl sub_80A2460 - b _0809E8C8 -_0809E3C4: - adds r4, r7, 0 - adds r4, 0x4C - movs r5, 0 - ldrsh r0, [r4, r5] - cmp r0, 0 - bne _0809E40C - add r0, sp, 0x124 - bl sub_809B260 - lsls r0, 24 - cmp r0, 0 - bne _0809E3DE - b _0809E9D6 -_0809E3DE: - add r0, sp, 0x124 - ldr r0, [r0] - cmp r0, 0 - blt _0809E400 - lsls r0, 16 - asrs r0, 16 - bl sub_80A26B8 - adds r2, r0, 0 - lsls r2, 16 - asrs r2, 16 - movs r0, 0 - movs r1, 0x12 - bl sub_80018D8 - movs r0, 0x1 - b _0809E402 -_0809E400: - ldr r0, _0809E408 -_0809E402: - strh r0, [r4] - b _0809E8CE - .align 2, 0 -_0809E408: .4byte 0x0000ffff -_0809E40C: - cmp r0, 0x1 - bne _0809E464 - add r1, sp, 0x4 - ldr r0, [r7, 0x40] - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r0] - str r0, [r1] - movs r0, 0 - movs r1, 0x12 - bl sub_8001658 - adds r2, r0, 0 - lsls r2, 16 - asrs r4, r2, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x30 - bl sub_8001784 - cmp r4, 0x13 - bne _0809E43C - cmp r0, 0 - beq _0809E45A -_0809E43C: - add r0, sp, 0x4 - movs r5, 0x2 - ldrsh r0, [r0, r5] - bl sub_8098DCC - adds r0, r7, 0 - movs r1, 0 - bl sub_80A2460 - str r0, [r7, 0x28] - movs r0, 0 - movs r1, 0 - bl sub_80A87AC - b _0809E8F4 -_0809E45A: - movs r0, 0 - movs r1, 0x13 - movs r2, 0x13 - bl sub_80018D8 -_0809E464: - adds r0, r7, 0 - adds r0, 0x4C - movs r2, 0 - ldrsh r1, [r0, r2] - adds r5, r0, 0 - cmp r1, 0 - bne _0809E4B4 - add r0, sp, 0x128 - bl sub_809B260 - lsls r0, 24 - cmp r0, 0 - bne _0809E480 - b _0809E9D6 -_0809E480: - add r0, sp, 0x128 - ldr r1, [r0] - cmp r1, 0 - blt _0809E4AA - ldrb r0, [r6] - cmp r0, 0x4 - bne _0809E49A - lsls r0, r1, 16 - asrs r0, 16 - bl sub_80A26B8 - lsls r0, 16 - b _0809E49C -_0809E49A: - lsls r0, r1, 16 -_0809E49C: - asrs r2, r0, 16 - movs r0, 0 - movs r1, 0x13 - bl sub_80018D8 - movs r0, 0x1 - b _0809E4AC -_0809E4AA: - ldr r0, _0809E4B0 -_0809E4AC: - strh r0, [r5] - b _0809E8CE - .align 2, 0 -_0809E4B0: .4byte 0x0000ffff -_0809E4B4: - adds r0, r7, 0 - adds r0, 0x4C - movs r3, 0 - ldrsh r1, [r0, r3] - adds r5, r0, 0 - cmp r1, 0x1 - beq _0809E4C4 - b _0809E5B8 -_0809E4C4: - movs r0, 0 - movs r1, 0x13 - bl sub_8001658 - lsls r0, 16 - asrs r6, r0, 16 - add r4, sp, 0x18 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_80990EC - lsls r0, 24 - cmp r0, 0 - beq _0809E580 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_8099220 - movs r0, 0x6 - bl sub_80023E4 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - ldrb r0, [r4] - ldr r4, _0809E51C - ldr r2, [r4] - movs r1, 0 - str r1, [sp] - bl sub_809034C - adds r1, r0, 0 - ldr r0, _0809E520 - str r1, [r0] - cmp r1, 0x1 - beq _0809E586 - cmp r1, 0x1 - bcc _0809E580 - cmp r1, 0x2 - bne _0809E5AE - strh r1, [r5] - ldr r2, [r4] - movs r0, 0x9 - b _0809E58E - .align 2, 0 -_0809E51C: .4byte gUnknown_203B4B0 -_0809E520: .4byte gUnknown_2039DA4 -_0809E524: - adds r0, r7, 0 - adds r0, 0x4C - movs r4, 0 - ldrsh r6, [r0, r4] - adds r5, r0, 0 - cmp r6, 0x1 - bne _0809E5B8 - movs r0, 0 - movs r1, 0x14 - bl sub_8001658 - lsls r0, 24 - lsrs r0, 24 - bl sub_8095228 - adds r4, r0, 0 - movs r0, 0x6 - bl sub_80023E4 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - ldrb r0, [r4, 0x4] - ldr r4, _0809E578 - ldr r2, [r4] - str r6, [sp] - movs r1, 0 - bl sub_809034C - adds r1, r0, 0 - ldr r0, _0809E57C - str r1, [r0] - cmp r1, 0x1 - beq _0809E586 - cmp r1, 0x1 - bcc _0809E580 - cmp r1, 0x2 - bne _0809E5AE - strh r1, [r5] - ldr r2, [r4] - movs r0, 0x9 - b _0809E58E - .align 2, 0 -_0809E578: .4byte gUnknown_203B4B0 -_0809E57C: .4byte gUnknown_2039DA4 -_0809E580: - movs r0, 0x3 - strh r0, [r5] - b _0809E9CC -_0809E586: - movs r0, 0x4 - strh r0, [r5] - ldr r2, [r4] - movs r0, 0xA -_0809E58E: - movs r1, 0x1 - bl sub_809B1C0 - adds r0, r7, 0 - movs r1, 0x1 - bl sub_809D8EC - lsls r0, 24 - cmp r0, 0 - bne _0809E5A4 - b _0809E9CC -_0809E5A4: - movs r0, 0 - movs r1, 0xB - bl sub_80A87AC - b _0809E9CC -_0809E5AE: - ldr r0, _0809E5B4 - strh r0, [r5] - b _0809E9CC - .align 2, 0 -_0809E5B4: .4byte 0x0000ffff -_0809E5B8: - movs r6, 0 - ldrsh r2, [r5, r6] - cmp r2, 0x2 - bne _0809E5DA - add r0, sp, 0x12C - bl sub_809B260 - lsls r0, 24 - cmp r0, 0 - bne _0809E5CE - b _0809E9D6 -_0809E5CE: - add r0, sp, 0x12C - ldr r0, [r0] - cmp r0, 0 - beq _0809E626 - movs r0, 0x3 - b _0809E628 -_0809E5DA: - cmp r2, 0x3 - bne _0809E614 - add r1, sp, 0x4 - ldr r0, [r7, 0x40] - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - ldr r0, [r0] - str r0, [r1] - strh r2, [r7, 0x26] - add r0, sp, 0x4 - movs r6, 0x2 - ldrsh r0, [r0, r6] - bl sub_80999FC - movs r0, 0x70 - movs r1, 0 - bl GroundMap_ExecuteEvent - movs r1, 0x8 - ldrsh r0, [r7, r1] - cmp r0, 0 - bne _0809E608 - b _0809E9CC -_0809E608: - adds r0, r7, 0 - movs r1, 0x1 -_0809E60C: - bl sub_80A2460 - str r0, [r7, 0x28] - b _0809E9CC -_0809E614: - cmp r2, 0x4 - bne _0809E63C - add r0, sp, 0x130 - bl sub_809B260 - lsls r0, 24 - cmp r0, 0 - bne _0809E626 - b _0809E9D6 -_0809E626: - ldr r0, _0809E638 -_0809E628: - strh r0, [r5] - movs r0, 0 - movs r1, 0 - bl sub_80A87AC - bl sub_809A76C - b _0809E9CC - .align 2, 0 -_0809E638: .4byte 0x0000ffff -_0809E63C: - movs r0, 0 - movs r1, 0 - bl sub_8099220 - movs r4, 0x1 - negs r4, r4 - movs r0, 0 - movs r1, 0x13 - adds r2, r4, 0 - bl sub_80018D8 - adds r0, r7, 0 - adds r1, r4, 0 - b _0809E8EE -_0809E658: - add r1, sp, 0x4 - ldr r0, [r7, 0x40] - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r0] - str r0, [r1] - add r0, sp, 0x134 - bl sub_809B260 - lsls r0, 24 - cmp r0, 0 - bne _0809E672 - b _0809E9D6 -_0809E672: - add r0, sp, 0x134 - ldr r0, [r0] - cmp r0, 0x1 - bne _0809E6A4 - ldr r0, [sp, 0x8] - lsls r0, 16 - asrs r1, r0, 16 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809E6A4 - adds r0, r1, 0 - bl sub_80A8D54 - movs r2, 0 - adds r3, r0, 0 - adds r3, 0x4C - ldr r4, _0809E6B0 -_0809E696: - adds r0, r3, r2 - adds r1, r2, r4 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x9 - ble _0809E696 -_0809E6A4: - add r0, sp, 0x134 - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80A2460 - b _0809E8C8 - .align 2, 0 -_0809E6B0: .4byte gUnknown_2039D98 -_0809E6B4: - add r0, sp, 0x138 - bl sub_809B260 - lsls r0, 24 - cmp r0, 0 - bne _0809E6C2 - b _0809E9D6 -_0809E6C2: - add r4, sp, 0x138 - ldr r0, [r4] - cmp r0, 0x1 - bne _0809E6D0 - ldr r0, _0809E6DC - bl sub_80920EC -_0809E6D0: - ldr r1, [r4] - adds r0, r7, 0 - bl sub_80A2460 - b _0809E8C8 - .align 2, 0 -_0809E6DC: .4byte gUnknown_2039D98 -_0809E6E0: - movs r1, 0x2 - add r0, sp, 0x13C - str r1, [r0] - b _0809E74A -_0809E6E8: - add r1, sp, 0x4 - ldr r0, [r7, 0x40] - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} - ldr r0, [r0] - str r0, [r1] - ldr r5, [sp, 0x10] - add r0, sp, 0x13C - bl sub_809B260 - lsls r0, 24 - cmp r0, 0 - bne _0809E704 - b _0809E9D6 -_0809E704: - add r0, sp, 0x13C - ldr r0, [r0] - cmp r0, 0x1 - bne _0809E74A - add r4, sp, 0x18 - ldr r0, _0809E758 - adds r3, r4, 0 - movs r2, 0 - mov r1, sp - adds r1, 0x27 -_0809E718: - strb r2, [r1] - subs r1, 0x1 - cmp r1, r3 - bge _0809E718 - adds r1, r4, 0 - bl sub_80922F4 - movs r2, 0 - ldrb r0, [r4] - ldrb r3, [r5] - cmp r0, r3 - bne _0809E6E0 - cmp r0, 0 - beq _0809E74A -_0809E734: - adds r2, 0x1 - cmp r2, 0xF - bgt _0809E74A - adds r0, r4, r2 - adds r1, r5, r2 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bne _0809E6E0 - cmp r0, 0 - bne _0809E734 -_0809E74A: - add r0, sp, 0x13C - ldr r1, [r0] - adds r0, r7, 0 - bl sub_80A2460 - b _0809E8C8 - .align 2, 0 -_0809E758: .4byte gUnknown_2039D98 -_0809E75C: - adds r2, r7, 0 - adds r2, 0x50 - ldrh r3, [r2] - movs r4, 0 - ldrsh r0, [r2, r4] - cmp r0, 0 - bne _0809E76C - b _0809E872 -_0809E76C: - add r4, sp, 0xA0 - adds r0, r4, 0 - bl sub_809AFFC - lsls r0, 24 - cmp r0, 0 - bne _0809E77C - b _0809E9D6 -_0809E77C: - ldrb r0, [r4] - cmp r0, 0 - bne _0809E784 - b _0809E8CA -_0809E784: - add r1, sp, 0x4 - ldr r0, [r7, 0x40] - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldr r0, [r0] - str r0, [r1] - add r0, sp, 0x4 - movs r4, 0x2 - ldrsh r1, [r0, r4] - b _0809E8C2 -_0809E798: - add r1, sp, 0x4 - ldr r0, [r7, 0x40] - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} - ldr r0, [r0] - str r0, [r1] - adds r2, r7, 0 - adds r2, 0x50 - movs r3, 0 - ldrsh r0, [r2, r3] - adds r4, r2, 0 - cmp r0, 0 - bne _0809E84C - movs r3, 0 - adds r0, r7, 0 - adds r0, 0x4C - movs r5, 0 - ldrsh r2, [r0, r5] - adds r5, r0, 0 - cmp r2, 0 - bge _0809E7CC - ldr r0, [r7, 0x28] - ldrb r0, [r0] - cmp r0, 0xD1 - beq _0809E812 - b _0809E8F4 -_0809E7CC: - ldr r1, [r7, 0x28] - ldrb r0, [r1] - cmp r0, 0xD0 - bne _0809E7F8 - movs r6, 0x2 - ldrsh r0, [r1, r6] - cmp r0, r2 - beq _0809E812 -_0809E7DC: - ldr r0, [r7, 0x28] - adds r1, r0, 0 - adds r1, 0x10 - str r1, [r7, 0x28] - ldrb r0, [r0, 0x10] - cmp r0, 0xD0 - bne _0809E7F8 - movs r0, 0x2 - ldrsh r1, [r1, r0] - movs r2, 0 - ldrsh r0, [r5, r2] - cmp r1, r0 - bne _0809E7DC - movs r3, 0x1 -_0809E7F8: - cmp r3, 0 - bne _0809E812 - ldr r1, [r7, 0x28] - ldrb r0, [r1] - cmp r0, 0xD1 - bne _0809E8F4 -_0809E804: - adds r0, r1, 0 - adds r1, 0x10 - str r1, [r7, 0x28] - ldrb r0, [r0, 0x10] - cmp r0, 0xD1 - beq _0809E804 - b _0809E8F4 -_0809E812: - add r0, sp, 0x4 - ldrb r0, [r0, 0x1] - ldr r1, [sp, 0x8] - lsls r1, 16 - asrs r1, 16 - ldr r2, [r7, 0x28] - ldr r2, [r2, 0xC] - bl sub_809AE90 - lsls r0, 24 - cmp r0, 0 - beq _0809E844 - movs r0, 0 - movs r1, 0xA - bl sub_80A87AC - adds r0, r7, 0 - movs r1, 0 - bl sub_809D8EC - lsls r0, 24 - cmp r0, 0 - beq _0809E844 - movs r0, 0x1 - strh r0, [r4] -_0809E844: - ldr r0, [r7, 0x28] - adds r0, 0x10 - str r0, [r7, 0x28] - b _0809E9CC -_0809E84C: - adds r0, r7, 0 - adds r0, 0x46 - movs r3, 0 - ldrsh r1, [r0, r3] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809E85E - b _0809E9D6 -_0809E85E: - movs r0, 0 - strh r0, [r2] - b _0809E8D0 -_0809E864: - adds r2, r7, 0 - adds r2, 0x50 - ldrh r3, [r2] - movs r4, 0 - ldrsh r0, [r2, r4] - cmp r0, 0 - bne _0809E88A -_0809E872: - adds r0, r7, 0 - adds r0, 0x46 - movs r5, 0 - ldrsh r1, [r0, r5] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809E884 - b _0809E9D6 -_0809E884: - adds r0, r3, 0x1 - strh r0, [r2] - b _0809E9CC -_0809E88A: - add r0, sp, 0x140 - bl sub_809B18C - lsls r0, 24 - cmp r0, 0 - bne _0809E898 - b _0809E9D6 -_0809E898: - add r0, sp, 0x140 - ldr r3, [r0] - cmp r3, 0 - ble _0809E8CA - adds r0, r7, 0 - adds r0, 0x4C - movs r6, 0 - ldrsh r2, [r0, r6] - ldr r1, [r7, 0x40] - lsls r0, r3, 4 - lsls r2, 4 - adds r2, r1 - add r1, sp, 0x4 - adds r0, r2 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, [r0] - str r0, [r1] - add r0, sp, 0x4 - movs r5, 0x2 - ldrsh r1, [r0, r5] -_0809E8C2: - adds r0, r7, 0 - bl sub_80A242C -_0809E8C8: - str r0, [r7, 0x28] -_0809E8CA: - movs r0, 0x3 - strh r0, [r7, 0x26] -_0809E8CE: - movs r0, 0 -_0809E8D0: - movs r1, 0 - bl sub_80A87AC - b _0809E9CC -_0809E8D8: - adds r0, r7, 0 - adds r0, 0x46 - movs r6, 0 - ldrsh r1, [r0, r6] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0809E9D6 - ldr r0, _0809E8FC - ldr r1, [r0, 0x4] -_0809E8EC: - adds r0, r7, 0 -_0809E8EE: - bl sub_80A2460 - str r0, [r7, 0x28] -_0809E8F4: - movs r0, 0x3 - strh r0, [r7, 0x26] - b _0809E9CC - .align 2, 0 -_0809E8FC: .4byte gUnknown_2039B48 -_0809E900: - adds r0, r7, 0 - bl ExecuteScriptCommand - strh r0, [r7, 0x26] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x4 - bhi _0809E9BC - lsls r0, 2 - ldr r1, _0809E91C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809E91C: .4byte _0809E920 - .align 2, 0 -_0809E920: - .4byte _0809E934 - .4byte _0809E9B8 - .4byte _0809E9BC - .4byte _0809E9D6 - .4byte _0809E9B4 -_0809E934: - adds r0, r7, 0 - adds r0, 0x86 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _0809E9AA - adds r4, r7, 0 - adds r4, 0x84 - adds r0, r7, 0 - adds r0, 0x24 - adds r1, r4, 0 - movs r2, 0x60 - bl memcpy - ldr r2, [r7] - ldr r0, [r2, 0x2C] - cmp r0, 0 - beq _0809E98E - adds r5, r7, 0 - adds r5, 0x4A - movs r1, 0 - ldrsb r1, [r5, r1] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809E98E - ldr r0, [r7, 0x4] - add r1, sp, 0x144 - ldr r2, [r2, 0x18] - bl _call_via_r2 - add r0, sp, 0x144 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 3 - ands r0, r1 - cmp r0, 0 - beq _0809E98E - ldr r2, [r7] - ldr r0, [r7, 0x4] - movs r1, 0 - ldrsb r1, [r5, r1] - ldr r2, [r2, 0x2C] - bl _call_via_r2 -_0809E98E: - ldr r0, [r7] - ldr r2, [r0, 0x30] - cmp r2, 0 - beq _0809E9A2 - ldr r0, [r7, 0x4] - adds r1, r7, 0 - adds r1, 0x48 - ldrh r1, [r1] - bl _call_via_r2 -_0809E9A2: - adds r0, r4, 0 - bl sub_809D568 - b _0809E9D6 -_0809E9AA: - adds r0, r7, 0 - adds r0, 0x24 - bl sub_809D568 - b _0809E9D6 -_0809E9B4: - movs r0, 0x4 - b _0809EABA -_0809E9B8: - movs r0, 0x1 - b _0809EABA -_0809E9BC: - adds r1, r7, 0 - adds r1, 0x50 - movs r0, 0 - strh r0, [r1] - b _0809E9CC -_0809E9C6: - movs r2, 0x26 - ldrsh r0, [r7, r2] - b _0809EABA -_0809E9CC: - movs r3, 0x1 - cmp r3, 0 - beq _0809E9D6 - bl _0809DA8A -_0809E9D6: - movs r0, 0x3 - b _0809EABA -_0809E9DA: - ldr r1, [r7] - ldr r0, [r7, 0x4] - add r4, sp, 0xCC - ldr r2, [r1, 0xC] - adds r1, r4, 0 - bl _call_via_r2 - add r5, sp, 0xD4 - adds r1, r7, 0 - adds r1, 0x58 - adds r2, r7, 0 - adds r2, 0x60 - mov r6, r8 - movs r0, 0 - ldrsh r6, [r6, r0] - mov r9, r6 - adds r6, r7, 0 - adds r6, 0x50 - movs r3, 0 - ldrsh r0, [r6, r3] - str r0, [sp] - adds r0, r5, 0 - mov r3, r9 - bl sub_8002934 - ldr r1, [r5] - ldr r0, [r4] - subs r1, r0 - add r0, sp, 0xDC - str r1, [r0] - ldr r1, [r5, 0x4] - ldr r2, [r4, 0x4] - subs r1, r2 - str r1, [r0, 0x4] - bl sub_8002C60 - lsls r0, 24 - adds r2, r7, 0 - adds r2, 0x4A - asrs r1, r0, 24 - lsrs r0, 24 - strb r0, [r2] - ldr r2, [r7] - ldr r0, [r7, 0x4] - ldr r2, [r2, 0x2C] - bl _call_via_r2 - ldr r1, [r7] - ldr r0, [r7, 0x4] - ldr r2, [r1, 0x24] - adds r1, r5, 0 - bl _call_via_r2 - ldr r2, [r7] - ldr r0, [r7, 0x4] - movs r1, 0x80 - lsls r1, 5 - ldr r2, [r2, 0x30] - bl _call_via_r2 - mov r4, r8 - ldrh r0, [r4] - subs r0, 0x1 - strh r0, [r4] - ldrh r0, [r6] - adds r0, 0x1 - strh r0, [r6] - b _0809E9D6 -_0809EA62: - add r5, sp, 0xC4 - adds r1, r7, 0 - adds r1, 0x58 - adds r2, r7, 0 - adds r2, 0x60 - movs r3, 0 - ldrsh r0, [r6, r3] - mov r8, r0 - adds r4, r7, 0 - adds r4, 0x50 - movs r3, 0 - ldrsh r0, [r4, r3] - str r0, [sp] - adds r0, r5, 0 - mov r3, r8 - bl sub_8002934 - ldr r1, [r7] - ldr r0, [r7, 0x4] - ldr r2, [r1, 0x24] - adds r1, r5, 0 - bl _call_via_r2 - ldr r2, [r7] - ldr r0, [r7, 0x4] - movs r1, 0x80 - lsls r1, 5 - ldr r2, [r2, 0x30] - bl _call_via_r2 - ldrh r0, [r6] - subs r0, 0x1 - strh r0, [r6] - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _0809E9D6 -_0809EAAC: - subs r0, 0x1 - strh r0, [r2] - b _0809E9D6 -_0809EAB2: - subs r0, r2, 0x1 - strh r0, [r1] - b _0809E9D6 -_0809EAB8: - movs r0, 0 -_0809EABA: - add sp, 0x148 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end HandleAction - - thumb_func_start ExecuteScriptCommand -ExecuteScriptCommand: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1BC - mov r9, r0 - movs r0, 0x24 - add r0, r9 - mov r10, r0 -_0809EAE0: - mov r1, r10 - ldr r2, [r1, 0x4] - str r2, [r1, 0x1C] - add r1, sp, 0x8 - adds r0, r2, 0 - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - ldr r0, [r0] - str r0, [r1] - adds r2, 0x10 - mov r0, r10 - str r2, [r0, 0x4] - add r0, sp, 0x8 - ldrb r0, [r0] - mov r1, r10 - adds r1, 0x20 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x1 - adds r2, r1, 0 - cmp r0, 0xF5 - bhi _0809EAE0 - lsls r0, 2 - ldr r1, _0809EB18 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809EB18: .4byte _0809EB1C - .align 2, 0 -_0809EB1C: - .4byte _0809EEF4 - .4byte _0809EF40 - .4byte _0809EFA2 - .4byte _0809EFD6 - .4byte _0809F064 - .4byte _0809F02A - .4byte _0809F06C - .4byte _0809F0D0 - .4byte _0809F0D0 - .4byte _0809F1FC - .4byte _0809F2C8 - .4byte _0809F2D6 - .4byte _0809F2D6 - .4byte _0809F2D6 - .4byte _0809F2D6 - .4byte _0809F2D6 - .4byte _0809F2D6 - .4byte _0809F2D6 - .4byte _0809F2D6 - .4byte _0809F2D6 - .4byte _0809F2D6 - .4byte _0809F42A - .4byte _0809F432 - .4byte _0809F43A - .4byte _0809F442 - .4byte _0809F4FE - .4byte _0809F5BE - .4byte _0809F5AE - .4byte _0809F5C6 - .4byte _0809F5C6 - .4byte _0809F660 - .4byte _0809F6EA - .4byte _0809F786 - .4byte _0809F830 - .4byte _0809F842 - .4byte _0809F854 - .4byte _0809F872 - .4byte _0809F884 - .4byte _0809F896 - .4byte _0809F896 - .4byte _0809F8E8 - .4byte _0809F8F4 - .4byte _0809F900 - .4byte _0809F90C - .4byte _0809F93E - .4byte _0809FAF8 - .4byte _0809FB10 - .4byte _0809F92E - .4byte _0809F936 - .4byte _0809FB28 - .4byte _0809FB28 - .4byte _0809FB28 - .4byte _0809FB28 - .4byte _0809FB28 - .4byte _0809FB28 - .4byte _0809FB28 - .4byte _0809FBDA - .4byte _0809FC12 - .4byte _0809FC40 - .4byte _0809FC2E - .4byte _0809FC46 - .4byte _0809FCA4 - .4byte _0809FCC4 - .4byte _0809EAE0 - .4byte _080A0E3A - .4byte _0809FCE8 - .4byte _0809FCF0 - .4byte _0809FD0A - .4byte _0809FD38 - .4byte _0809FD6C - .4byte _0809FDA0 - .4byte _0809FDA8 - .4byte _0809FDC2 - .4byte _0809FDD4 - .4byte _0809FDE2 - .4byte _0809FDC2 - .4byte _0809FDD4 - .4byte _0809FDE2 - .4byte _0809FE04 - .4byte _0809FE28 - .4byte _0809FE86 - .4byte _0809FEBE - .4byte _0809FED0 - .4byte _0809FF00 - .4byte _0809FF32 - .4byte _0809FF46 - .4byte _0809FF62 - .4byte _0809FF78 - .4byte _0809FF9A - .4byte _0809FFBA - .4byte _0809FFE4 - .4byte _080A0010 - .4byte _080A0064 - .4byte _080A0096 - .4byte _080A010E - .4byte _080A0186 - .4byte _080A0198 - .4byte _080A01B8 - .4byte _080A01F0 - .4byte _080A0220 - .4byte _080A0250 - .4byte _080A0282 - .4byte _080A0282 - .4byte _080A0560 - .4byte _080A0198 - .4byte _080A01B8 - .4byte _080A01F0 - .4byte _080A0220 - .4byte _080A0250 - .4byte _080A0282 - .4byte _080A0282 - .4byte _080A0560 - .4byte _080A02B2 - .4byte _080A0310 - .4byte _080A0370 - .4byte _080A03F8 - .4byte _080A0462 - .4byte _080A04F2 - .4byte _080A02B2 - .4byte _080A0310 - .4byte _080A0370 - .4byte _080A03F8 - .4byte _080A0462 - .4byte _080A04F2 - .4byte _080A02B2 - .4byte _080A0310 - .4byte _080A0370 - .4byte _080A03F8 - .4byte _080A0462 - .4byte _080A04F2 - .4byte _080A02B2 - .4byte _080A0310 - .4byte _080A0370 - .4byte _080A03F8 - .4byte _080A0462 - .4byte _080A04F2 - .4byte _080A057C - .4byte _080A05A4 - .4byte _080A05F0 - .4byte _080A060E - .4byte _080A065C - .4byte _080A068A - .4byte _080A068A - .4byte _080A068A - .4byte _080A07CA - .4byte _080A07DC - .4byte _080A07C4 - .4byte _080A07C4 - .4byte _080A07C4 - .4byte _0809EAE0 - .4byte _080A080C - .4byte _080A081E - .4byte _080A086A - .4byte _080A08BE - .4byte _080A08CA - .4byte _080A091E - .4byte _080A0986 - .4byte _080A0998 - .4byte _080A09EA - .4byte _080A0A52 - .4byte _080A0A64 - .4byte _080A0AB6 - .4byte _080A0B1E - .4byte _080A0B30 - .4byte _080A0B42 - .4byte _080A0B54 - .4byte _080A0B6C - .4byte _080A0B88 - .4byte _080A0BA2 - .4byte _080A0BB4 - .4byte _080A0BDA - .4byte _080A0BF6 - .4byte _080A0C08 - .4byte _080A0C20 - .4byte _080A0C38 - .4byte _080A0C50 - .4byte _080A0C68 - .4byte _080A0C80 - .4byte _080A0C90 - .4byte _080A0CA2 - .4byte _080A0CC8 - .4byte _080A0CF2 - .4byte _080A0D16 - .4byte _080A0D40 - .4byte _080A0D6A - .4byte _080A0D7A - .4byte _080A0D94 - .4byte _080A0DAE - .4byte _080A0DD6 - .4byte _080A0E08 - .4byte _080A0DE2 - .4byte _080A0E56 - .4byte _080A0E56 - .4byte _080A0E56 - .4byte _080A0E56 - .4byte _080A0E56 - .4byte _080A0E56 - .4byte _080A0E56 - .4byte _080A0E56 - .4byte _080A0E56 - .4byte _080A0E56 - .4byte _080A0E56 - .4byte _080A0E56 - .4byte _0809EAE0 - .4byte _0809EAE0 - .4byte _0809EAE0 - .4byte _080A10A0 - .4byte _0809EAE0 - .4byte _0809EAE0 - .4byte _080A10F8 - .4byte _080A10F8 - .4byte _080A10F8 - .4byte _080A10F8 - .4byte _080A10F8 - .4byte _080A10F8 - .4byte _080A10F8 - .4byte _0809EAE0 - .4byte _080A129E - .4byte _080A12A8 - .4byte _080A12B4 - .4byte _0809F0C4 - .4byte _0809F0C4 - .4byte _0809F0C4 - .4byte _0809F0C4 - .4byte _0809F0C4 - .4byte _0809F0C4 - .4byte _080A12D0 - .4byte _080A12E6 - .4byte _080A12F4 - .4byte _080A1318 - .4byte _080A1324 - .4byte _080A1338 - .4byte _080A1344 - .4byte _080A1368 - .4byte _080A1374 - .4byte _080A13CA - .4byte _080A13F8 - .4byte _080A1404 - .4byte _080A140C - .4byte _080A1428 - .4byte _080A142C - .4byte _0809EAE0 - .4byte _0809EAE0 - .4byte _0809EAE0 - .4byte _0809EAE0 - .4byte _0809EAE0 -_0809EEF4: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r4, r0, 16 - adds r6, r4, 0 - add r0, sp, 0x8 - ldrb r5, [r0, 0x1] - movs r0, 0x1 - bl sub_8011BA4 - lsls r0, 24 - cmp r0, 0 - beq _0809EF26 - ldr r1, _0809EF38 - ldr r2, _0809EF3C - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 2 - adds r2, 0x8 - adds r0, r2 - ldr r3, [r0] - str r5, [sp] - movs r0, 0x1 - adds r2, r4, 0 - bl Log -_0809EF26: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r2, [r0, r1] - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_8098D1C - b _0809EAE0 - .align 2, 0 -_0809EF38: .4byte gUnknown_81165D4 -_0809EF3C: .4byte gUnknown_811BAF4 -_0809EF40: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r4, r0, 16 - movs r5, 0x1 - negs r5, r5 - cmp r4, r5 - bne _0809EF5A - movs r0, 0 - movs r1, 0x13 - bl sub_8001658 - lsls r0, 16 - asrs r4, r0, 16 -_0809EF5A: - movs r0, 0x1 - bl sub_8011BA4 - lsls r0, 24 - cmp r0, 0 - beq _0809EF70 - ldr r1, _0809EF90 - movs r0, 0x1 - adds r2, r4, 0 - bl Log -_0809EF70: - cmp r4, r5 - beq _0809EF94 - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r0, r2] - adds r0, r4, 0 - bl sub_8098E18 - mov r0, r9 - movs r1, 0x1 - bl sub_80A2460 - mov r3, r9 - str r0, [r3, 0x28] - b _0809EAE0 - .align 2, 0 -_0809EF90: .4byte gUnknown_81165F4 -_0809EF94: - mov r0, r9 - movs r1, 0 - bl sub_80A2460 - mov r4, r9 - str r0, [r4, 0x28] - b _0809EAE0 -_0809EFA2: - ldr r0, [sp, 0xC] - bl sub_8021700 - lsls r0, 24 - cmp r0, 0 - beq _0809EFBE - movs r1, 0x1 - negs r1, r1 - mov r0, r9 - bl sub_80A2460 - mov r5, r9 - str r0, [r5, 0x28] - b _0809EAE0 -_0809EFBE: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_8098D80 - mov r0, r9 - movs r1, 0 - bl sub_80A2460 - mov r2, r9 - str r0, [r2, 0x28] - b _0809EAE0 -_0809EFD6: - ldr r1, [sp, 0xC] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0809F00C - bl sub_802FCF0 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0809F0BC - movs r0, 0xC - movs r1, 0 - movs r2, 0 - bl sub_809B1C0 - lsls r0, 24 - cmp r0, 0 - beq _0809F0BC - movs r0, 0 - movs r1, 0xB - bl sub_80A87AC - mov r0, r9 - adds r0, 0x4C - strh r4, [r0] - b _0809F0C4 -_0809F00C: - lsls r0, r1, 16 - asrs r0, 16 - bl sub_80A26B8 - adds r2, r0, 0 - lsls r2, 16 - asrs r2, 16 - movs r0, 0 - movs r1, 0x12 - bl sub_80018D8 - mov r1, r9 - adds r1, 0x4C - movs r0, 0x1 - b _0809F0C2 -_0809F02A: - ldr r2, [sp, 0xC] - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - bne _0809F054 - movs r0, 0x24 - movs r1, 0 - movs r2, 0 - bl sub_809B1C0 - lsls r0, 24 - cmp r0, 0 - beq _0809F0BC - movs r0, 0 - movs r1, 0xB - bl sub_80A87AC - mov r1, r9 - adds r1, 0x4C - movs r0, 0 - b _0809F0C2 -_0809F054: - movs r0, 0 - movs r1, 0x13 - bl sub_80018D8 - mov r1, r9 - adds r1, 0x4C - movs r0, 0x1 - b _0809F0C2 -_0809F064: - mov r1, r9 - adds r1, 0x4C - movs r0, 0x1 - b _0809F0C2 -_0809F06C: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r4, r0, 16 - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - bne _0809F088 - movs r0, 0 - movs r1, 0x13 - bl sub_8001658 - lsls r0, 16 - asrs r4, r0, 16 - b _0809F092 -_0809F088: - movs r0, 0 - movs r1, 0x13 - adds r2, r4, 0 - bl sub_80018D8 -_0809F092: - movs r0, 0x1 - bl sub_8011BA4 - lsls r0, 24 - cmp r0, 0 - beq _0809F0A8 - ldr r1, _0809F0B8 - movs r0, 0x1 - adds r2, r4, 0 - bl Log -_0809F0A8: - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - beq _0809F0BC - mov r1, r9 - adds r1, 0x4C - movs r0, 0x1 - b _0809F0C2 - .align 2, 0 -_0809F0B8: .4byte gUnknown_811660C -_0809F0BC: - mov r1, r9 - adds r1, 0x4C - ldr r0, _0809F0CC -_0809F0C2: - strh r0, [r1] -_0809F0C4: - movs r0, 0x2 - bl _080A142E - .align 2, 0 -_0809F0CC: .4byte 0x0000ffff -_0809F0D0: - add r0, sp, 0x8 - ldrb r0, [r0] - cmp r0, 0x8 - bne _0809F130 - ldr r5, _0809F11C - ldr r0, [sp, 0xC] - strh r0, [r5] - lsls r0, 16 - asrs r0, 16 - bl sub_80A4D7C - ldr r4, _0809F120 - strh r0, [r4] - ldr r1, _0809F124 - strh r0, [r1] - movs r0, 0x1 - bl sub_8011BA4 - lsls r0, 24 - cmp r0, 0 - beq _0809F16A - ldr r1, _0809F128 - movs r3, 0 - ldrsh r2, [r5, r3] - movs r5, 0 - ldrsh r3, [r4, r5] - ldr r4, _0809F12C - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r4, 0x8 - adds r0, r4 - ldr r0, [r0] - str r0, [sp] - movs r0, 0x1 - bl Log - b _0809F16A - .align 2, 0 -_0809F11C: .4byte gUnknown_2039A30 -_0809F120: .4byte gUnknown_2039A32 -_0809F124: .4byte gUnknown_2039A34 -_0809F128: .4byte gUnknown_8116628 -_0809F12C: .4byte gUnknown_811BAF4 -_0809F130: - ldr r5, _0809F1E8 - ldr r4, _0809F1EC - ldr r1, [sp, 0xC] - strh r1, [r4] - strh r1, [r5] - ldr r0, _0809F1F0 - strh r1, [r0] - movs r0, 0x1 - bl sub_8011BA4 - lsls r0, 24 - cmp r0, 0 - beq _0809F16A - ldr r1, _0809F1F4 - movs r0, 0 - ldrsh r2, [r4, r0] - movs r4, 0 - ldrsh r3, [r5, r4] - ldr r4, _0809F1F8 - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r4, 0x8 - adds r0, r4 - ldr r0, [r0] - str r0, [sp] - movs r0, 0x1 - bl Log -_0809F16A: - ldr r5, _0809F1EC - movs r0, 0 - ldrsh r2, [r5, r0] - movs r0, 0 - movs r1, 0x10 - bl sub_80018D8 - ldr r6, _0809F1F8 - movs r2, 0 - ldrsh r1, [r5, r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r3, 0x2 - ldrsh r2, [r0, r3] - movs r0, 0 - movs r1, 0x11 - bl sub_80018D8 - ldr r4, _0809F1E8 - movs r1, 0 - ldrsh r0, [r4, r1] - bl GroundSprite_Reset - bl sub_809D0BC - bl sub_80AD9D0 - bl sub_80A786C - bl sub_80ABB98 - bl sub_80ACBD4 - movs r2, 0 - ldrsh r0, [r5, r2] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - movs r3, 0x2 - ldrsh r1, [r1, r3] - bl sub_809C770 - movs r5, 0 - ldrsh r0, [r4, r5] - bl GroundMap_Select - movs r1, 0 - ldrsh r0, [r4, r1] - bl GroundLink_Select - movs r2, 0 - ldrsh r0, [r4, r2] - movs r1, 0 - movs r2, 0 - bl GroundLives_Select - movs r3, 0 - ldrsh r0, [r4, r3] - b _0809F2A0 - .align 2, 0 -_0809F1E8: .4byte gUnknown_2039A32 -_0809F1EC: .4byte gUnknown_2039A30 -_0809F1F0: .4byte gUnknown_2039A34 -_0809F1F4: .4byte gUnknown_8116644 -_0809F1F8: .4byte gUnknown_811BAF4 -_0809F1FC: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A2608 - adds r6, r0, 0 - ldr r1, _0809F2AC - ldr r5, _0809F2B0 - ldr r4, _0809F2B4 - ldr r0, [sp, 0x10] - strh r0, [r4] - strh r0, [r5] - strh r0, [r1] - movs r0, 0x1 - bl sub_8011BA4 - lsls r0, 24 - cmp r0, 0 - beq _0809F242 - ldr r1, _0809F2B8 - movs r0, 0 - ldrsh r2, [r4, r0] - movs r4, 0 - ldrsh r3, [r5, r4] - ldr r4, _0809F2BC - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r4, 0x8 - adds r0, r4 - ldr r0, [r0] - str r0, [sp] - movs r0, 0x1 - bl Log -_0809F242: - movs r1, 0 - ldrsh r0, [r5, r1] - bl GroundSprite_Reset - bl sub_809D0BC - bl sub_80AD9D0 - bl sub_80A786C - bl sub_80ABB98 - bl sub_80ACBD4 - ldrb r2, [r6, 0xC] - ldr r1, _0809F2C0 - ldr r0, [sp, 0x58] - ands r0, r1 - orrs r0, r2 - str r0, [sp, 0x58] - add r1, sp, 0x8 - ldrh r2, [r1, 0x2] - lsls r2, 24 - lsrs r2, 16 - ldr r1, _0809F2C4 - ands r0, r1 - orrs r0, r2 - str r0, [sp, 0x58] - movs r2, 0 - ldrsh r0, [r5, r2] - add r1, sp, 0x58 - add r2, sp, 0x8 - ldrb r2, [r2, 0x1] - bl GroundMap_SelectDungeon - movs r3, 0 - ldrsh r0, [r5, r3] - bl GroundLink_Select - movs r4, 0 - ldrsh r0, [r5, r4] - movs r1, 0 - movs r2, 0 - bl GroundLives_Select - movs r1, 0 - ldrsh r0, [r5, r1] -_0809F2A0: - movs r1, 0 - movs r2, 0 - bl GroundObject_Select - b _0809EAE0 - .align 2, 0 -_0809F2AC: .4byte gUnknown_2039A34 -_0809F2B0: .4byte gUnknown_2039A32 -_0809F2B4: .4byte gUnknown_2039A30 -_0809F2B8: .4byte gUnknown_8116664 -_0809F2BC: .4byte gUnknown_811BAF4 -_0809F2C0: .4byte 0xffffff00 -_0809F2C4: .4byte 0xffff00ff -_0809F2C8: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl GroundWeather_Select - bl _0809EAE0 -_0809F2D6: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 16 - cmp r0, 0 - blt _0809F2E8 - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r0, [r0, r2] - b _0809F2EE -_0809F2E8: - mov r3, r10 - movs r4, 0xC - ldrsh r0, [r3, r4] -_0809F2EE: - adds r6, r0, 0 - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - lsls r0, 24 - cmp r0, 0 - blt _0809F302 - add r0, sp, 0x8 - movs r1, 0x1 - ldrsb r1, [r0, r1] - b _0809F308 -_0809F302: - mov r5, r10 - movs r1, 0xE - ldrsb r1, [r5, r1] -_0809F308: - adds r5, r1, 0 - add r0, sp, 0x8 - ldrb r0, [r0] - subs r0, 0xC - cmp r0, 0x9 - bls _0809F318 - bl _0809EAE0 -_0809F318: - lsls r0, 2 - ldr r1, _0809F324 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809F324: .4byte _0809F328 - .align 2, 0 -_0809F328: - .4byte _0809F350 - .4byte _0809F380 - .4byte _0809F398 - .4byte _0809F3B0 - .4byte _0809F3C8 - .4byte _0809F3E0 - .4byte _0809F3FA - .4byte _0809F406 - .4byte _0809F412 - .4byte _0809F41E -_0809F350: - ldr r4, _0809F37C - movs r1, 0 - ldrsh r0, [r4, r1] - adds r1, r6, 0 - adds r2, r5, 0 - bl GroundLives_Select - movs r2, 0 - ldrsh r0, [r4, r2] - adds r1, r6, 0 - adds r2, r5, 0 - bl GroundObject_Select - movs r3, 0 - ldrsh r0, [r4, r3] - adds r1, r6, 0 - adds r2, r5, 0 - bl GroundEffect_Select - movs r1, 0 - ldrsh r0, [r4, r1] - b _0809F3CE - .align 2, 0 -_0809F37C: .4byte gUnknown_2039A32 -_0809F380: - ldr r0, _0809F394 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r1, r6, 0 - adds r2, r5, 0 - bl GroundLives_Select - bl _0809EAE0 - .align 2, 0 -_0809F394: .4byte gUnknown_2039A32 -_0809F398: - ldr r0, _0809F3AC - movs r3, 0 - ldrsh r0, [r0, r3] - adds r1, r6, 0 - adds r2, r5, 0 - bl GroundObject_Select - bl _0809EAE0 - .align 2, 0 -_0809F3AC: .4byte gUnknown_2039A32 -_0809F3B0: - ldr r0, _0809F3C4 - movs r4, 0 - ldrsh r0, [r0, r4] - adds r1, r6, 0 - adds r2, r5, 0 - bl GroundEffect_Select - bl _0809EAE0 - .align 2, 0 -_0809F3C4: .4byte gUnknown_2039A32 -_0809F3C8: - ldr r0, _0809F3DC - movs r1, 0 - ldrsh r0, [r0, r1] -_0809F3CE: - adds r1, r6, 0 - adds r2, r5, 0 - bl GroundEvent_Select - bl _0809EAE0 - .align 2, 0 -_0809F3DC: .4byte gUnknown_2039A32 -_0809F3E0: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80A7988 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80ABC5C - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80ACC98 - b _0809F41E -_0809F3FA: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80A7988 - bl _0809EAE0 -_0809F406: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80ABC5C - bl _0809EAE0 -_0809F412: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80ACC98 - bl _0809EAE0 -_0809F41E: - adds r0, r6, 0 - adds r1, r5, 0 - bl GroundEvent_Cancel - bl _0809EAE0 -_0809F42A: - bl sub_80A79FC - bl _0809EAE0 -_0809F432: - bl sub_80ABCCC - bl _0809EAE0 -_0809F43A: - bl sub_80ACD08 - bl _0809EAE0 -_0809F442: - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - add r4, sp, 0x18 - ldr r2, [r1, 0x14] - adds r1, r4, 0 - bl _call_via_r2 - add r6, sp, 0x1C - ldr r0, [sp, 0x10] - add r5, sp, 0x34 - movs r2, 0 - strb r0, [r5] - ldrb r1, [r4] - mov r0, sp - adds r0, 0x35 - strb r1, [r0] - adds r0, 0x1 - movs r1, 0x1 - strb r1, [r0] - adds r0, 0x1 - strb r1, [r0] - str r2, [sp, 0x38] - add r4, sp, 0x3C - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x10 - bl memset - ldr r2, _0809F4AC - ldr r1, [sp, 0xC] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r2, 0x8 - adds r0, r2 - ldr r0, [r0] - str r0, [r4, 0xC] - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x18 - bl memcpy - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 16 - adds r1, r6, 0 - cmp r0, 0 - blt _0809F4B0 - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r2, [r0, r3] - b _0809F4B6 - .align 2, 0 -_0809F4AC: .4byte gUnknown_812F1F8 -_0809F4B0: - mov r4, r10 - movs r5, 0xC - ldrsh r2, [r4, r5] -_0809F4B6: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - lsls r0, 24 - cmp r0, 0 - blt _0809F4C8 - add r0, sp, 0x8 - movs r3, 0x1 - ldrsb r3, [r0, r3] - b _0809F4CE -_0809F4C8: - mov r0, r10 - movs r3, 0xE - ldrsb r3, [r0, r3] -_0809F4CE: - movs r0, 0x1 - negs r0, r0 - bl GroundObject_Add - lsls r0, 16 - asrs r5, r0, 16 - cmp r5, 0 - bge _0809F4E2 - bl _0809EAE0 -_0809F4E2: - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - add r4, sp, 0x5C - ldr r2, [r1, 0xC] - adds r1, r4, 0 - bl _call_via_r2 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80AC49C - bl _0809EAE0 -_0809F4FE: - mov r3, r9 - ldr r1, [r3] - ldr r0, [r3, 0x4] - add r4, sp, 0x4C - ldr r2, [r1, 0x14] - adds r1, r4, 0 - bl _call_via_r2 - add r5, sp, 0x1C - ldr r0, [sp, 0x10] - add r1, sp, 0x28 - movs r3, 0 - strb r0, [r1] - ldrb r2, [r4] - mov r0, sp - adds r0, 0x29 - strb r2, [r0] - adds r0, 0x1 - movs r2, 0x1 - strb r2, [r0] - adds r0, 0x1 - strb r2, [r0] - str r3, [sp, 0x2C] - ldr r3, _0809F55C - ldr r2, [sp, 0xC] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r3, 0x8 - adds r0, r3 - ldr r0, [r0] - str r0, [sp, 0x30] - adds r0, r5, 0 - movs r2, 0xC - bl memcpy - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 16 - adds r1, r5, 0 - cmp r0, 0 - blt _0809F560 - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r2, [r0, r4] - b _0809F566 - .align 2, 0 -_0809F55C: .4byte gUnknown_812F1F8 -_0809F560: - mov r5, r10 - movs r0, 0xC - ldrsh r2, [r5, r0] -_0809F566: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - lsls r0, 24 - cmp r0, 0 - blt _0809F578 - add r0, sp, 0x8 - movs r3, 0x1 - ldrsb r3, [r0, r3] - b _0809F57E -_0809F578: - mov r4, r10 - movs r3, 0xE - ldrsb r3, [r4, r3] -_0809F57E: - movs r0, 0x1 - negs r0, r0 - bl GroundEffect_Add - lsls r0, 16 - asrs r5, r0, 16 - cmp r5, 0 - bge _0809F592 - bl _0809EAE0 -_0809F592: - mov r0, r9 - ldr r1, [r0] - ldr r0, [r0, 0x4] - add r4, sp, 0x64 - ldr r2, [r1, 0xC] - adds r1, r4, 0 - bl _call_via_r2 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80AD3B4 - bl _0809EAE0 -_0809F5AE: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - movs r1, 0x1 - bl GroundMap_ExecuteEvent - bl _0809EAE0 -_0809F5BE: - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r0, [r0, r2] - b _0809F712 -_0809F5C6: - ldr r1, [sp, 0xC] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809F5D6 - lsls r0, r1, 16 - asrs r0, 16 - b _0809F5DC -_0809F5D6: - ldr r0, _0809F5F0 - movs r3, 0 - ldrsh r0, [r0, r3] -_0809F5DC: - adds r4, r0, 0 - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 16 - cmp r0, 0 - blt _0809F5F4 - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r1, [r0, r5] - b _0809F5FA - .align 2, 0 -_0809F5F0: .4byte gUnknown_2039A30 -_0809F5F4: - mov r0, r10 - movs r2, 0xC - ldrsh r1, [r0, r2] -_0809F5FA: - adds r6, r1, 0 - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - lsls r0, 24 - cmp r0, 0 - blt _0809F60E - add r0, sp, 0x8 - movs r5, 0x1 - ldrsb r5, [r0, r5] - b _0809F614 -_0809F60E: - mov r3, r10 - movs r5, 0xE - ldrsb r5, [r3, r5] -_0809F614: - adds r0, r4, 0 - bl sub_80A4D7C - lsls r0, 16 - asrs r4, r0, 16 - movs r3, 0 - add r0, sp, 0x8 - ldrb r0, [r0] - cmp r0, 0x1E - bne _0809F62A - movs r3, 0x1 -_0809F62A: - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl GroundMap_ExecuteStation - ldr r1, _0809F65C - movs r5, 0 - ldrsh r0, [r1, r5] - cmp r0, r4 - bne _0809F642 - bl _0809EAE0 -_0809F642: - strh r4, [r1] - bl sub_809D940 - mov r1, r9 - movs r2, 0x8 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _0809F656 - bl _0809EAE0 -_0809F656: - bl _080A142C - .align 2, 0 -_0809F65C: .4byte gUnknown_2039A34 -_0809F660: - movs r0, 0 - movs r1, 0x13 - bl sub_8001658 - lsls r0, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_80A2608 - adds r5, r0, 0 - lsls r2, r4, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x30 - bl sub_8001784 - cmp r0, 0 - bne _0809F68A - movs r3, 0x6 - ldrsh r5, [r5, r3] - b _0809F68E -_0809F68A: - movs r0, 0x8 - ldrsh r5, [r5, r0] -_0809F68E: - adds r0, r4, 0 - subs r0, 0x37 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x10 - bls _0809F6DC - adds r0, r4, 0 - bl sub_80A2750 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - bne _0809F6DC - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - bne _0809F6D8 - movs r0, 0x1 - bl sub_8011BA4 - lsls r0, 24 - cmp r0, 0 - beq _0809F6C6 - ldr r1, _0809F6D4 - movs r0, 0x1 - adds r2, r4, 0 - bl Log -_0809F6C6: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8098E18 - bl _0809EAE0 - .align 2, 0 -_0809F6D4: .4byte gUnknown_8116684 -_0809F6D8: - adds r0, r5, 0 - b _0809F712 -_0809F6DC: - movs r1, 0x1 - negs r1, r1 - adds r0, r4, 0 - bl sub_8098E18 - bl _0809EAE0 -_0809F6EA: - mov r1, r9 - movs r2, 0xC - ldrsh r0, [r1, r2] - cmp r0, 0x1 - beq _0809F71C - cmp r0, 0x1 - bgt _0809F700 - cmp r0, 0 - beq _0809F70C - bl _0809EAE0 -_0809F700: - cmp r0, 0x2 - beq _0809F73E - cmp r0, 0x3 - beq _0809F762 - bl _0809EAE0 -_0809F70C: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] -_0809F712: - movs r1, 0 - bl GroundMap_ExecuteEvent - bl _0809EAE0 -_0809F71C: - add r4, sp, 0x1C - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r2, [r0, r5] - mov r0, r9 - adds r1, r4, 0 - bl sub_809D710 - mov r1, r9 - movs r2, 0xE - ldrsh r0, [r1, r2] - adds r1, 0x8 - adds r2, r4, 0 - bl GroundLives_ExecuteScript - bl _0809EAE0 -_0809F73E: - add r4, sp, 0x28 - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r2, [r0, r3] - mov r0, r9 - adds r1, r4, 0 - bl sub_809D710 - mov r5, r9 - movs r1, 0xE - ldrsh r0, [r5, r1] - mov r1, r9 - adds r1, 0x8 - adds r2, r4, 0 - bl GroundObject_ExecuteScript - bl _0809EAE0 -_0809F762: - add r4, sp, 0x34 - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r2, [r0, r3] - mov r0, r9 - adds r1, r4, 0 - bl sub_809D710 - mov r5, r9 - movs r1, 0xE - ldrsh r0, [r5, r1] - mov r1, r9 - adds r1, 0x8 - adds r2, r4, 0 - bl GroundEffect_ExecuteScript - bl _0809EAE0 -_0809F786: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - cmp r0, 0 - bge _0809F79E - bl _0809EAE0 -_0809F79E: - add r1, sp, 0x6C - bl sub_80A8BD8 - ldr r0, [sp, 0x6C] - movs r1, 0x80 - lsls r1, 2 - ands r0, r1 - cmp r0, 0 - beq _0809F818 - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - add r7, sp, 0x70 - ldr r2, [r1, 0xC] - adds r1, r7, 0 - bl _call_via_r2 - mov r3, r9 - ldr r1, [r3] - ldr r0, [r3, 0x4] - add r5, sp, 0x78 - ldr r2, [r1, 0x8] - adds r1, r5, 0 - bl _call_via_r2 - add r6, sp, 0x80 - mov r0, r8 - adds r1, r6, 0 - bl sub_80A8FD8 - add r4, sp, 0x88 - mov r0, r8 - adds r1, r4, 0 - bl sub_80A8F9C - adds r0, r6, 0 - adds r1, r4, 0 - adds r2, r7, 0 - adds r3, r5, 0 - bl sub_8002DF0 - lsls r0, 24 - asrs r1, r0, 24 - adds r4, r1, 0 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0809F812 - ldr r3, _0809F82C - adds r0, r7, 0 - adds r1, r3, 0 - adds r2, r6, 0 - bl sub_8002D54 - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, r4 - beq _0809F818 -_0809F812: - mov r0, r8 - bl sub_80A9090 -_0809F818: - mov r4, r9 - movs r5, 0xA - ldrsh r0, [r4, r5] - mov r1, r8 - bl GroundLives_ExecutePlayerScriptActionLives - movs r0, 0x3 - bl _080A142E - .align 2, 0 -_0809F82C: .4byte gUnknown_81164DC -_0809F830: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_80999E8 - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - bl _080A130C -_0809F842: - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r0, [r0, r2] - bl sub_80999FC - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - bl _080A130C -_0809F854: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - ldr r1, [sp, 0xC] - lsls r1, 16 - lsrs r1, 16 - ldr r2, [sp, 0x10] - lsls r2, 16 - lsrs r2, 16 - bl sub_8099A10 - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - bl _080A130C -_0809F872: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r0, [r0, r4] - bl sub_8099A34 - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - bl _080A130C -_0809F884: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r0, [r0, r5] - bl sub_8099A48 - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - bl _080A130C -_0809F896: - ldr r0, [sp, 0x10] - asrs r0, 16 - add r1, sp, 0x20 - movs r2, 0 - strb r0, [r1] - ldr r0, [sp, 0x10] - asrs r0, 8 - adds r1, 0x1 - strb r0, [r1] - ldr r1, [sp, 0x10] - mov r0, sp - adds r0, 0x22 - strb r1, [r0] - adds r0, 0x1 - strb r2, [r0] - ldr r2, [sp, 0x20] - str r2, [sp, 0x1C] - add r0, sp, 0x8 - ldrb r0, [r0] - cmp r0, 0x27 - beq _0809F8C6 - cmp r0, 0x28 - beq _0809F8D4 - b _0809F8E0 -_0809F8C6: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - ldr r1, [sp, 0xC] - bl sub_8099A5C - b _0809F8E0 -_0809F8D4: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - ldr r1, [sp, 0xC] - bl sub_8099AFC -_0809F8E0: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - bl _080A130C -_0809F8E8: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - bl sub_809A6E4 - bl _0809EAE0 -_0809F8F4: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - bl sub_809A6F8 - bl _0809EAE0 -_0809F900: - ldr r0, [sp, 0xC] - ldr r1, [sp, 0x10] - bl sub_809A738 - bl _0809EAE0 -_0809F90C: - bl sub_809A768 - lsls r0, 24 - cmp r0, 0 - bne _0809F91A - bl _0809EAE0 -_0809F91A: - movs r0, 0 - movs r1, 0xA - bl sub_80A87AC - mov r0, r9 - movs r1, 0 - bl sub_809D8EC - bl _080A130A -_0809F92E: - bl sub_809A76C - bl _0809EAE0 -_0809F936: - bl sub_809A7B4 - bl _0809EAE0 -_0809F93E: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - cmp r0, 0xA - bls _0809F94A - bl _0809EAE0 -_0809F94A: - lsls r0, 2 - ldr r1, _0809F954 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809F954: .4byte _0809F958 - .align 2, 0 -_0809F958: - .4byte _0809F984 - .4byte _0809F992 - .4byte _0809F9A4 - .4byte _0809F9B6 - .4byte _0809F9D8 - .4byte _0809F9EA - .4byte _0809F9FC - .4byte _0809FA44 - .4byte _0809FA56 - .4byte _0809FA68 - .4byte _0809FAB0 -_0809F984: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r0, [r0, r4] - bl sub_809A83C - bl _0809EAE0 -_0809F992: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r0, [r0, r5] - mov r1, r9 - adds r1, 0x8 - bl sub_80A2500 - bl _0809EAE0 -_0809F9A4: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - mov r1, r9 - adds r1, 0xC - bl sub_80A2500 - bl _0809EAE0 -_0809F9B6: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - add r1, sp, 0x90 - lsls r0, 16 - movs r2, 0x1 - orrs r0, r2 - str r0, [r1] - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r0, [r0, r2] - bl sub_80A2500 - bl _0809EAE0 -_0809F9D8: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - mov r1, r9 - adds r1, 0x8 - bl sub_80A252C - bl _0809EAE0 -_0809F9EA: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r0, [r0, r4] - mov r1, r9 - adds r1, 0xC - bl sub_80A252C - bl _0809EAE0 -_0809F9FC: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - add r1, sp, 0x94 - ldrh r2, [r1] - orrs r2, r0 - str r2, [r1] - cmp r2, 0 - blt _0809FA30 - ldr r0, _0809FA2C - ands r2, r0 - movs r0, 0x1 - orrs r2, r0 - str r2, [r1] - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r0, [r0, r5] - bl sub_80A252C - bl _0809EAE0 - .align 2, 0 -_0809FA2C: .4byte 0xffff0000 -_0809FA30: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - ldr r1, [sp, 0xC] - lsls r1, 16 - asrs r1, 16 - bl sub_80A2584 - bl _0809EAE0 -_0809FA44: - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r0, [r0, r2] - mov r1, r9 - adds r1, 0x8 - bl sub_80A2558 - bl _0809EAE0 -_0809FA56: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - mov r1, r9 - adds r1, 0xC - bl sub_80A2558 - bl _0809EAE0 -_0809FA68: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - add r1, sp, 0x98 - ldrh r2, [r1] - orrs r2, r0 - str r2, [r1] - cmp r2, 0 - blt _0809FA9C - ldr r0, _0809FA98 - ands r2, r0 - movs r0, 0x1 - orrs r2, r0 - str r2, [r1] - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r0, [r0, r4] - bl sub_80A2558 - bl _0809EAE0 - .align 2, 0 -_0809FA98: .4byte 0xffff0000 -_0809FA9C: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r0, [r0, r5] - ldr r1, [sp, 0xC] - lsls r1, 16 - asrs r1, 16 - bl sub_80A2598 - bl _0809EAE0 -_0809FAB0: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A2740 - lsls r0, 24 - lsrs r1, r0, 24 - movs r4, 0 - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - beq _0809FAD0 - cmp r0, 0x2 - beq _0809FAD4 - b _0809FAD8 -_0809FAD0: - movs r4, 0x1 - b _0809FAD8 -_0809FAD4: - movs r4, 0x1 - negs r4, r4 -_0809FAD8: - adds r0, r1, 0 - bl sub_8090298 - ldr r2, _0809FAF4 - add r1, sp, 0x8 - movs r3, 0x2 - ldrsh r1, [r1, r3] - lsls r1, 2 - adds r1, r2 - adds r0, r4 - str r0, [r1] - bl _0809EAE0 - .align 2, 0 -_0809FAF4: .4byte gUnknown_202DE30 -_0809FAF8: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r0, [r0, r4] - ldr r1, [sp, 0xC] - lsls r1, 24 - asrs r1, 24 - add r2, sp, 0x8 - ldrb r2, [r2, 0x1] - bl sub_809AC7C - bl _0809EAE0 -_0809FB10: - ldr r0, [sp, 0xC] - add r1, sp, 0x9C - str r0, [r1] - ldr r0, [sp, 0x10] - str r0, [r1, 0x4] - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r0, [r0, r5] - bl sub_809ADD8 - bl _0809EAE0 -_0809FB28: - movs r1, 0 - ldrb r0, [r2] - subs r0, 0x32 - cmp r0, 0x6 - bhi _0809FBBE - lsls r0, 2 - ldr r1, _0809FB3C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809FB3C: .4byte _0809FB40 - .align 2, 0 -_0809FB40: - .4byte _0809FB5C - .4byte _0809FB6C - .4byte _0809FB7C - .4byte _0809FB8C - .4byte _0809FB9C - .4byte _0809FBAC - .4byte _0809FBB4 -_0809FB5C: - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r0, r2] - ldr r2, [sp, 0x14] - movs r0, 0 - bl sub_809AE90 - b _0809FBBA -_0809FB6C: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r1, [r0, r3] - ldr r2, [sp, 0x14] - movs r0, 0x1 - bl sub_809AE90 - b _0809FBBA -_0809FB7C: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r1, [r0, r4] - ldr r2, [sp, 0x14] - movs r0, 0x2 - bl sub_809AE90 - b _0809FBBA -_0809FB8C: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r1, [r0, r5] - ldr r2, [sp, 0x14] - movs r0, 0x3 - bl sub_809AE90 - b _0809FBBA -_0809FB9C: - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r0, r2] - ldr r2, [sp, 0x14] - movs r0, 0x4 - bl sub_809AE90 - b _0809FBBA -_0809FBAC: - ldr r0, [sp, 0x14] - bl sub_809AEEC - b _0809FBBA -_0809FBB4: - ldr r0, [sp, 0x14] - bl sub_809AF2C -_0809FBBA: - lsls r0, 24 - lsrs r1, r0, 24 -_0809FBBE: - cmp r1, 0 - bne _0809FBC6 - bl _0809EAE0 -_0809FBC6: - movs r0, 0 - movs r1, 0xA - bl sub_80A87AC - mov r0, r9 - movs r1, 0 - bl sub_809D8EC - bl _080A130A -_0809FBDA: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - ldr r1, [sp, 0x14] - bl sub_809AF6C - lsls r0, 24 - cmp r0, 0 - bne _0809FBF0 - bl _0809EAE0 -_0809FBF0: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 16 - cmp r0, 0 - bge _0809FBFE - bl _0809EAE0 -_0809FBFE: - movs r0, 0 - movs r1, 0xA - bl sub_80A87AC - mov r0, r9 - movs r1, 0 - bl sub_809D8EC - bl _080A130A -_0809FC12: - add r0, sp, 0x8 - ldrb r1, [r0, 0x1] - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - ldr r1, [sp, 0xC] - ldr r2, [sp, 0x10] - lsls r2, 16 - asrs r2, 16 - ldr r3, [sp, 0x14] - bl sub_809AFC8 - bl _080A1280 -_0809FC2E: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - ldr r1, [sp, 0xC] - ldr r2, [sp, 0x10] - ldr r3, [sp, 0x14] - bl sub_809B1D4 - bl _080A1292 -_0809FC40: - movs r0, 0 - bl _080A0654 -_0809FC46: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r1, r0, 16 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809FC90 - adds r0, r1, 0 - bl sub_80A8D54 - cmp r0, 0 - bne _0809FC62 - bl _0809EAE0 -_0809FC62: - movs r3, 0 - ldr r2, _0809FC8C - adds r5, r2, 0 - adds r4, r0, 0 - adds r4, 0x4C -_0809FC6C: - adds r0, r3, r5 - adds r1, r4, r3 - ldrb r1, [r1] - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0x9 - ble _0809FC6C - movs r0, 0 - strb r0, [r2, 0xA] - movs r0, 0x4 - movs r1, 0 - bl sub_809B1C0 - bl _080A1292 - .align 2, 0 -_0809FC8C: .4byte gUnknown_2039D98 -_0809FC90: - ldr r2, _0809FCA0 - movs r0, 0x4 - movs r1, 0x1 - bl sub_809B1C0 - bl _080A1292 - .align 2, 0 -_0809FCA0: .4byte gUnknown_2039D98 -_0809FCA4: - ldr r4, _0809FCC0 - adds r0, r4, 0 - bl sub_80920B8 - movs r0, 0 - strb r0, [r4, 0xA] - movs r0, 0x5 - movs r1, 0 - adds r2, r4, 0 - bl sub_809B1C0 - bl _080A1292 - .align 2, 0 -_0809FCC0: .4byte gUnknown_2039D98 -_0809FCC4: - ldr r2, _0809FCE4 - adds r3, r2, 0 - movs r1, 0 - adds r0, r2, 0 - adds r0, 0xB -_0809FCCE: - strb r1, [r0] - subs r0, 0x1 - cmp r0, r3 - bge _0809FCCE - add r0, sp, 0x8 - ldrb r1, [r0, 0x1] - movs r0, 0x6 - bl sub_809B1C0 - bl _080A1292 - .align 2, 0 -_0809FCE4: .4byte gUnknown_2039D98 -_0809FCE8: - bl sub_80118A4 - bl _0809EAE0 -_0809FCF0: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 16 - cmp r0, 0 - blt _0809FD00 - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - b _0809FD02 -_0809FD00: - movs r0, 0x1E -_0809FD02: - bl sub_80118C4 - bl _0809EAE0 -_0809FD0A: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _0809FD1E - ldr r0, [sp, 0xC] - lsls r0, 16 - lsrs r0, 16 - bl sub_80A25AC - b _0809FD20 -_0809FD1E: - ldr r0, [sp, 0xC] -_0809FD20: - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _0809FD34 - cmp r1, r0 - beq _0809FDA0 - adds r0, r1, 0 - bl sub_80118F0 - bl _0809EAE0 - .align 2, 0 -_0809FD34: .4byte 0x000003e7 -_0809FD38: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _0809FD4C - ldr r0, [sp, 0xC] - lsls r0, 16 - lsrs r0, 16 - bl sub_80A25AC - b _0809FD4E -_0809FD4C: - ldr r0, [sp, 0xC] -_0809FD4E: - lsls r0, 16 - lsrs r2, r0, 16 - ldr r0, _0809FD68 - cmp r2, r0 - beq _0809FDA0 - add r0, sp, 0x8 - ldrh r1, [r0, 0x2] - adds r0, r2, 0 - bl sub_8011900 - bl _0809EAE0 - .align 2, 0 -_0809FD68: .4byte 0x000003e7 -_0809FD6C: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _0809FD80 - ldr r0, [sp, 0xC] - lsls r0, 16 - lsrs r0, 16 - bl sub_80A25AC - b _0809FD82 -_0809FD80: - ldr r0, [sp, 0xC] -_0809FD82: - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _0809FD9C - cmp r1, r0 - bne _0809FD90 - bl _0809EAE0 -_0809FD90: - adds r0, r1, 0 - bl sub_8011914 - bl _0809EAE0 - .align 2, 0 -_0809FD9C: .4byte 0x000003e7 -_0809FDA0: - bl sub_8011924 - bl _0809EAE0 -_0809FDA8: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 16 - cmp r0, 0 - blt _0809FDB8 - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - b _0809FDBA -_0809FDB8: - movs r0, 0x1E -_0809FDBA: - bl sub_8011930 - bl _0809EAE0 -_0809FDC2: - ldr r0, [sp, 0xC] - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x80 - lsls r1, 1 - bl sub_8011974 - bl _0809EAE0 -_0809FDD4: - ldr r0, [sp, 0xC] - lsls r0, 16 - lsrs r0, 16 - bl sub_801199C - bl _0809EAE0 -_0809FDE2: - ldr r0, [sp, 0xC] - lsls r0, 16 - lsrs r2, r0, 16 - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 16 - cmp r0, 0 - blt _0809FDF8 - add r0, sp, 0x8 - ldrh r1, [r0, 0x2] - b _0809FDFA -_0809FDF8: - movs r1, 0x1E -_0809FDFA: - adds r0, r2, 0 - bl sub_80119AC - bl _0809EAE0 -_0809FE04: - mov r1, r9 - adds r1, 0x84 - movs r5, 0 - ldrsh r0, [r1, r5] - cmp r0, 0x1 - bne _0809FE16 - adds r0, r1, 0 - bl sub_809D568 -_0809FE16: - mov r0, r9 - ldr r1, [r0] - ldr r0, [r0, 0x4] - ldr r2, [r1, 0x1C] - movs r1, 0 - bl _call_via_r2 - bl _0809EAE0 -_0809FE28: - mov r0, r9 - adds r0, 0xC - bl sub_809D52C - adds r4, r0, 0 - cmp r4, 0 - bne _0809FE3A - bl _0809EAE0 -_0809FE3A: - ldr r1, [r4] - mov r2, r9 - ldr r0, [r2, 0x4] - add r5, sp, 0xA4 - ldr r2, [r1, 0xC] - adds r1, r5, 0 - bl _call_via_r2 - ldr r1, [r4] - mov r3, r9 - ldr r0, [r3, 0x4] - mov r4, sp - adds r4, 0x4D - ldr r2, [r1, 0x14] - adds r1, r4, 0 - bl _call_via_r2 - mov r0, r9 - ldr r1, [r0] - ldr r0, [r0, 0x4] - ldr r2, [r1, 0x24] - adds r1, r5, 0 - bl _call_via_r2 - ldrb r0, [r4] - mov r1, r9 - adds r1, 0x4A - strb r0, [r1] - mov r1, r9 - ldr r2, [r1] - ldr r0, [r1, 0x4] - movs r1, 0 - ldrsb r1, [r4, r1] - ldr r2, [r2, 0x2C] - bl _call_via_r2 - bl _0809EAE0 -_0809FE86: - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - add r6, sp, 0xAC - ldr r2, [r1, 0xC] - adds r1, r6, 0 - bl _call_via_r2 - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - add r4, sp, 0xB4 - add r5, sp, 0xBC - adds r1, r4, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_80AD914 - mov r0, r9 - ldr r1, [r0] - ldr r0, [r0, 0x4] - ldr r3, [r1, 0x20] - adds r1, r4, 0 - adds r2, r5, 0 - bl _call_via_r3 - bl _0809EAE0 -_0809FEBE: - mov r1, r9 - ldr r2, [r1] - ldr r0, [r1, 0x4] - ldr r1, [sp, 0xC] - ldr r2, [r2, 0x3C] - bl _call_via_r2 - bl _0809EAE0 -_0809FED0: - ldr r0, [sp, 0xC] - movs r1, 0x80 - lsls r1, 3 - ands r0, r1 - cmp r0, 0 - beq _0809FEEE - mov r1, r9 - adds r1, 0x84 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0x1 - bne _0809FEEE - adds r0, r1, 0 - bl sub_809D568 -_0809FEEE: - mov r3, r9 - ldr r2, [r3] - ldr r0, [r3, 0x4] - ldr r1, [sp, 0xC] - ldr r2, [r2, 0x40] - bl _call_via_r2 - bl _0809EAE0 -_0809FF00: - mov r4, r9 - ldr r2, [r4] - ldr r0, [r4, 0x4] - mov r1, r9 - adds r1, 0x4A - ldr r2, [r2, 0x14] - bl _call_via_r2 - add r0, sp, 0x8 - ldrh r1, [r0, 0x2] - cmp r1, 0 - beq _0809FF1E - mov r0, r9 - adds r0, 0x48 - strh r1, [r0] -_0809FF1E: - mov r5, r9 - ldr r2, [r5] - ldr r0, [r5, 0x4] - add r1, sp, 0x8 - ldrh r1, [r1, 0x2] - ldr r2, [r2, 0x30] - bl _call_via_r2 - bl _0809EAE0 -_0809FF32: - mov r0, r9 - ldr r2, [r0] - ldr r0, [r0, 0x4] - add r1, sp, 0x8 - ldrh r1, [r1, 0x2] - ldr r2, [r2, 0x34] - bl _call_via_r2 - bl _0809EAE0 -_0809FF46: - mov r1, r9 - ldr r3, [r1] - ldr r0, [r1, 0x4] - ldr r1, [sp, 0xC] - lsls r1, 16 - asrs r1, 16 - add r2, sp, 0x8 - movs r4, 0x2 - ldrsh r2, [r2, r4] - ldr r3, [r3, 0x38] - bl _call_via_r3 - bl _0809EAE0 -_0809FF62: - mov r5, r9 - ldr r2, [r5] - ldr r0, [r5, 0x4] - add r1, sp, 0x8 - movs r3, 0x2 - ldrsh r1, [r1, r3] - ldr r2, [r2, 0x44] - bl _call_via_r2 - bl _0809EAE0 -_0809FF78: - ldr r0, [sp, 0xC] - lsls r0, 8 - add r1, sp, 0xC4 - str r0, [r1] - ldr r0, [sp, 0x10] - lsls r0, 8 - str r0, [r1, 0x4] - mov r4, r9 - ldr r2, [r4] - ldr r0, [r4, 0x4] - ldr r2, [r2, 0x24] - bl _call_via_r2 - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - mov r5, r10 - b _080A05EA -_0809FF9A: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - lsls r0, 8 - add r1, sp, 0xCC - str r0, [r1] - ldr r0, [sp, 0xC] - lsls r0, 8 - str r0, [r1, 0x4] - mov r3, r9 - ldr r2, [r3] - ldr r0, [r3, 0x4] - ldr r2, [r2, 0x48] - bl _call_via_r2 - b _080A0650 -_0809FFBA: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r0, [r0, r5] - bl OtherRandomCapped - lsls r0, 8 - add r4, sp, 0xD4 - str r0, [r4] - ldr r0, [sp, 0xC] - bl OtherRandomCapped - lsls r0, 8 - str r0, [r4, 0x4] - mov r0, r9 - ldr r1, [r0] - ldr r0, [r0, 0x4] - ldr r2, [r1, 0x48] - adds r1, r4, 0 - bl _call_via_r2 - b _080A07B4 -_0809FFE4: - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - add r4, sp, 0xDC - ldr r2, [r1, 0xC] - adds r1, r4, 0 - bl _call_via_r2 - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - adds r1, r4, 0 - bl sub_80AD8B4 - mov r3, r9 - ldr r1, [r3] - ldr r0, [r3, 0x4] - ldr r2, [r1, 0x24] - adds r1, r4, 0 - bl _call_via_r2 - b _080A0650 -_080A0010: - mov r5, r9 - ldr r1, [r5] - ldr r0, [r5, 0x4] - add r6, sp, 0xE4 - ldr r2, [r1, 0xC] - adds r1, r6, 0 - bl _call_via_r2 - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - add r4, sp, 0xEC - add r5, sp, 0xF4 - adds r1, r4, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_80AD914 - ldr r0, [r5] - ldr r1, [r4] - subs r0, r1 - bl OtherRandomCapped - ldr r1, [r4] - adds r1, r0 - str r1, [r6] - ldr r0, [r5, 0x4] - ldr r1, [r4, 0x4] - subs r0, r1 - bl OtherRandomCapped - ldr r1, [r4, 0x4] - adds r1, r0 - str r1, [r6, 0x4] - mov r0, r9 - ldr r1, [r0] - ldr r0, [r0, 0x4] - ldr r2, [r1, 0x24] - adds r1, r6, 0 - bl _call_via_r2 - b _080A07B4 -_080A0064: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _080A007A - bl _0809EAE0 -_080A007A: - add r4, sp, 0xFC - adds r1, r4, 0 - bl sub_80A8FD8 - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - ldr r2, [r1, 0x24] - adds r1, r4, 0 - bl _call_via_r2 - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - b _080A03F0 -_080A0096: - ldr r2, [sp, 0xC] - lsls r2, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x32 - bl sub_8001784 - add r5, sp, 0x104 - str r0, [r5] - ldr r2, [sp, 0xC] - lsls r2, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x33 - bl sub_8001784 - str r0, [r5, 0x4] - ldr r2, [sp, 0xC] - lsls r2, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x34 - bl sub_8001784 - adds r6, r0, 0 - ldr r2, [sp, 0xC] - lsls r2, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x35 - bl sub_8001784 - adds r4, r0, 0 - lsls r4, 24 - asrs r4, 24 - mov r0, r9 - ldr r1, [r0] - ldr r0, [r0, 0x4] - ldr r2, [r1, 0x24] - adds r1, r5, 0 - bl _call_via_r2 - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - ldr r2, [r1, 0x28] - adds r1, r6, 0 - bl _call_via_r2 - mov r0, r9 - adds r0, 0x4A - strb r4, [r0] - mov r3, r9 - ldr r1, [r3] - ldr r0, [r3, 0x4] - ldr r2, [r1, 0x2C] - adds r1, r4, 0 - bl _call_via_r2 - b _080A0650 -_080A010E: - mov r5, r9 - ldr r1, [r5] - ldr r0, [r5, 0x4] - add r4, sp, 0x10C - ldr r2, [r1, 0xC] - adds r1, r4, 0 - bl _call_via_r2 - ldr r3, [r5] - ldr r0, [r5, 0x4] - add r1, sp, 0x114 - add r2, sp, 0x118 - ldr r3, [r3, 0x10] - bl _call_via_r3 - ldr r1, [r5] - ldr r0, [r5, 0x4] - mov r5, sp - adds r5, 0x4E - ldr r2, [r1, 0x14] - adds r1, r5, 0 - bl _call_via_r2 - ldr r2, [sp, 0xC] - lsls r2, 16 - lsrs r2, 16 - add r0, sp, 0x10C - ldr r3, [r0] - movs r0, 0 - movs r1, 0x32 - bl sub_800199C - ldr r2, [sp, 0xC] - lsls r2, 16 - lsrs r2, 16 - ldr r3, [r4, 0x4] - movs r0, 0 - movs r1, 0x33 - bl sub_800199C - ldr r2, [sp, 0xC] - lsls r2, 16 - lsrs r2, 16 - add r0, sp, 0x114 - ldr r3, [r0] - movs r0, 0 - movs r1, 0x34 - bl sub_800199C - ldr r2, [sp, 0xC] - lsls r2, 16 - lsrs r2, 16 - movs r3, 0 - ldrsb r3, [r5, r3] - movs r0, 0 - movs r1, 0x35 - bl sub_800199C - bl _0809EAE0 -_080A0186: - mov r0, r9 - ldr r2, [r0] - ldr r0, [r0, 0x4] - ldr r1, [sp, 0xC] - lsls r1, 8 - ldr r2, [r2, 0x28] - bl _call_via_r2 - b _080A07B4 -_080A0198: - ldr r0, [sp, 0xC] - lsls r0, 8 - mov r2, r10 - str r0, [r2, 0x3C] - ldr r0, [sp, 0x10] - lsls r0, 8 - str r0, [r2, 0x40] - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - str r0, [r2, 0x30] - ldr r0, _080A01B4 - bl _080A12AE - .align 2, 0 -_080A01B4: .4byte 0x0000ffff -_080A01B8: - mov r4, r9 - ldr r1, [r4] - ldr r0, [r4, 0x4] - add r4, sp, 0x11C - ldr r2, [r1, 0xC] - adds r1, r4, 0 - bl _call_via_r2 - ldr r1, [sp, 0xC] - lsls r1, 8 - add r0, sp, 0x11C - ldr r0, [r0] - adds r0, r1 - mov r5, r10 - str r0, [r5, 0x3C] - ldr r1, [sp, 0x10] - lsls r1, 8 - ldr r0, [r4, 0x4] - adds r0, r1 - str r0, [r5, 0x40] - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - str r0, [r5, 0x30] - ldr r0, _080A01EC - b _080A05EA - .align 2, 0 -_080A01EC: .4byte 0x0000ffff -_080A01F0: - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - mov r4, r10 - adds r4, 0x3C - ldr r2, [r1, 0xC] - adds r1, r4, 0 - bl _call_via_r2 - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - adds r1, r4, 0 - bl sub_80AD8B4 - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - mov r4, r10 - str r0, [r4, 0x30] - ldr r0, _080A021C - b _080A0656 - .align 2, 0 -_080A021C: .4byte 0x0000ffff -_080A0220: - mov r5, r9 - ldr r1, [r5] - ldr r0, [r5, 0x4] - mov r4, r10 - adds r4, 0x3C - ldr r2, [r1, 0xC] - adds r1, r4, 0 - bl _call_via_r2 - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - adds r1, r4, 0 - bl sub_80AD8B4 - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - mov r2, r10 - str r0, [r2, 0x30] - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - bl _080A12AE -_080A0250: - mov r3, r9 - ldr r1, [r3] - ldr r0, [r3, 0x4] - mov r4, r10 - adds r4, 0x3C - ldr r2, [r1, 0xC] - adds r1, r4, 0 - bl _call_via_r2 - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - adds r1, r4, 0 - bl sub_80AD8B4 - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r0, [r0, r4] - mov r5, r10 - str r0, [r5, 0x30] - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - bl OtherRandomCapped - b _080A05EA -_080A0282: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _080A0298 - bl _0809EAE0 -_080A0298: - mov r1, r10 - adds r1, 0x3C - bl sub_80A8FD8 - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - mov r2, r10 - str r0, [r2, 0x30] - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - bl _080A12AE -_080A02B2: - mov r3, r9 - ldr r2, [r3] - ldr r0, [r3, 0x4] - mov r1, r10 - adds r1, 0x34 - ldr r2, [r2, 0xC] - bl _call_via_r2 - ldr r0, [sp, 0xC] - lsls r1, r0, 8 - mov r4, r10 - str r1, [r4, 0x3C] - ldr r0, [sp, 0x10] - lsls r2, r0, 8 - str r2, [r4, 0x40] - add r0, sp, 0x8 - ldrb r0, [r0] - cmp r0, 0x7D - beq _080A02DC - cmp r0, 0x83 - bne _080A0304 -_080A02DC: - mov r5, r10 - ldr r0, [r5, 0x34] - subs r0, r1, r0 - ldr r1, [r5, 0x38] - subs r1, r2, r1 - bl sub_8009FB8 - add r1, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r1, r2] - bl __divsi3 - strh r0, [r5, 0x2A] - lsls r0, 16 - cmp r0, 0 - ble _080A0300 - bl _0809F0C4 -_080A0300: - movs r0, 0x1 - b _080A05EA -_080A0304: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - mov r3, r10 - strh r0, [r3, 0x2A] - bl _0809F0C4 -_080A0310: - mov r4, r9 - ldr r2, [r4] - ldr r0, [r4, 0x4] - mov r1, r10 - adds r1, 0x34 - ldr r2, [r2, 0xC] - bl _call_via_r2 - ldr r0, [sp, 0xC] - lsls r0, 8 - mov r5, r10 - ldr r4, [r5, 0x34] - adds r3, r4, r0 - str r3, [r5, 0x3C] - ldr r0, [sp, 0x10] - lsls r0, 8 - ldr r2, [r5, 0x38] - adds r1, r2, r0 - str r1, [r5, 0x40] - add r0, sp, 0x8 - ldrb r0, [r0] - cmp r0, 0x7E - beq _080A0342 - cmp r0, 0x84 - bne _080A036A -_080A0342: - subs r0, r3, r4 - subs r1, r2 - bl sub_8009FB8 - add r1, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r1, r2] - bl __divsi3 - mov r3, r10 - strh r0, [r3, 0x2A] - lsls r0, 16 - cmp r0, 0 - ble _080A0362 - bl _0809F0C4 -_080A0362: - movs r0, 0x1 - strh r0, [r3, 0x2A] - bl _0809F0C4 -_080A036A: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - b _080A0654 -_080A0370: - ldr r4, [sp, 0xC] - lsls r4, 1 - subs r4, 0x1 - ldr r5, [sp, 0x10] - lsls r5, 1 - subs r5, 0x1 - mov r0, r9 - ldr r2, [r0] - ldr r0, [r0, 0x4] - mov r1, r10 - adds r1, 0x34 - ldr r2, [r2, 0xC] - bl _call_via_r2 - adds r0, r4, 0 - bl OtherRandomCapped - add r1, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r1, r2] - subs r0, r1 - lsls r0, 8 - mov r3, r10 - ldr r1, [r3, 0x34] - adds r1, r0 - str r1, [r3, 0x3C] - adds r0, r5, 0 - bl OtherRandomCapped - ldr r1, [sp, 0xC] - subs r0, r1 - lsls r0, 8 - mov r4, r10 - ldr r3, [r4, 0x38] - adds r2, r3, r0 - str r2, [r4, 0x40] - add r0, sp, 0x8 - ldrb r0, [r0] - cmp r0, 0x7F - beq _080A03C4 - cmp r0, 0x85 - bne _080A03EC -_080A03C4: - mov r5, r10 - ldr r0, [r5, 0x3C] - ldr r1, [r5, 0x34] - subs r0, r1 - subs r1, r2, r3 - bl sub_8009FB8 - add r1, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r1, r2] - bl __divsi3 - strh r0, [r5, 0x2A] - lsls r0, 16 - cmp r0, 0 - ble _080A03E8 - bl _0809F0C4 -_080A03E8: - movs r0, 0x1 - b _080A05EA -_080A03EC: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] -_080A03F0: - mov r3, r10 - strh r0, [r3, 0x2A] - bl _0809F0C4 -_080A03F8: - mov r4, r9 - ldr r2, [r4] - ldr r0, [r4, 0x4] - mov r1, r10 - adds r1, 0x34 - ldr r2, [r2, 0xC] - bl _call_via_r2 - mov r5, r10 - ldr r0, [r5, 0x34] - ldr r1, [r5, 0x38] - mov r2, r10 - str r0, [r2, 0x3C] - str r1, [r2, 0x40] - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - mov r1, r10 - adds r1, 0x3C - bl sub_80AD8B4 - add r0, sp, 0x8 - ldrb r0, [r0] - cmp r0, 0x80 - beq _080A042E - cmp r0, 0x86 - bne _080A045C -_080A042E: - mov r3, r10 - ldr r0, [r3, 0x3C] - ldr r1, [r3, 0x34] - subs r0, r1 - ldr r1, [r3, 0x40] - ldr r2, [r3, 0x38] - subs r1, r2 - bl sub_8009FB8 - add r1, sp, 0x8 - movs r4, 0x2 - ldrsh r1, [r1, r4] - bl __divsi3 - mov r5, r10 - strh r0, [r5, 0x2A] - lsls r0, 16 - cmp r0, 0 - ble _080A0458 - bl _0809F0C4 -_080A0458: - movs r0, 0x1 - b _080A05EA -_080A045C: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - b _080A07B8 -_080A0462: - ldr r4, [sp, 0xC] - lsls r4, 1 - subs r4, 0x1 - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - mov r5, r10 - adds r5, 0x3C - ldr r2, [r1, 0xC] - adds r1, r5, 0 - bl _call_via_r2 - ldr r0, [sp, 0x10] - lsls r0, 16 - asrs r0, 16 - adds r1, r5, 0 - bl sub_80AD8B4 - adds r0, r4, 0 - bl OtherRandomCapped - add r1, sp, 0x8 - movs r3, 0x2 - ldrsh r1, [r1, r3] - subs r0, r1 - lsls r0, 8 - mov r5, r10 - ldr r1, [r5, 0x3C] - adds r1, r0 - str r1, [r5, 0x3C] - adds r0, r4, 0 - bl OtherRandomCapped - add r1, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r1, r2] - subs r0, r1 - lsls r0, 8 - ldr r1, [r5, 0x40] - adds r2, r1, r0 - str r2, [r5, 0x40] - add r0, sp, 0x8 - ldrb r0, [r0] - cmp r0, 0x81 - beq _080A04C0 - cmp r0, 0x87 - bne _080A04EC -_080A04C0: - mov r3, r10 - ldr r0, [r3, 0x3C] - ldr r1, [r3, 0x34] - subs r0, r1 - ldr r1, [r3, 0x38] - subs r1, r2, r1 - bl sub_8009FB8 - add r1, sp, 0x8 - movs r4, 0x2 - ldrsh r1, [r1, r4] - bl __divsi3 - mov r5, r10 - strh r0, [r5, 0x2A] - lsls r0, 16 - cmp r0, 0 - ble _080A04E8 - bl _0809F0C4 -_080A04E8: - movs r0, 0x1 - b _080A05EA -_080A04EC: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - b _080A07B8 -_080A04F2: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r4, r0, 16 - cmp r4, 0 - bge _080A0508 - bl _0809EAE0 -_080A0508: - mov r3, r9 - ldr r2, [r3] - ldr r0, [r3, 0x4] - mov r1, r10 - adds r1, 0x34 - ldr r2, [r2, 0xC] - bl _call_via_r2 - mov r1, r10 - adds r1, 0x3C - adds r0, r4, 0 - bl sub_80A8FD8 - add r0, sp, 0x8 - ldrb r0, [r0] - cmp r0, 0x82 - beq _080A052E - cmp r0, 0x88 - bne _080A055A -_080A052E: - mov r4, r10 - ldr r0, [r4, 0x3C] - ldr r1, [r4, 0x34] - subs r0, r1 - ldr r1, [r4, 0x40] - ldr r2, [r4, 0x38] - subs r1, r2 - bl sub_8009FB8 - add r1, sp, 0x8 - movs r5, 0x2 - ldrsh r1, [r1, r5] - bl __divsi3 - strh r0, [r4, 0x2A] - lsls r0, 16 - cmp r0, 0 - ble _080A0556 - bl _0809F0C4 -_080A0556: - movs r0, 0x1 - b _080A0656 -_080A055A: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - b _080A07B8 -_080A0560: - ldr r0, [sp, 0xC] - lsls r0, 8 - mov r2, r10 - str r0, [r2, 0x48] - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - str r0, [r2, 0x30] - ldr r0, _080A0578 - bl _080A12AE - .align 2, 0 -_080A0578: .4byte 0x0000ffff -_080A057C: - ldr r1, [sp, 0xC] - mov r0, r9 - adds r0, 0x4A - strb r1, [r0] - mov r4, r9 - ldr r2, [r4] - ldr r0, [r4, 0x4] - lsls r1, 24 - asrs r1, 24 - ldr r2, [r2, 0x2C] - bl _call_via_r2 - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r0, [r0, r5] - mov r1, r10 - str r0, [r1, 0x30] - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - b _080A07BA -_080A05A4: - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - mov r4, sp - adds r4, 0x4F - ldr r2, [r1, 0x14] - adds r1, r4, 0 - bl _call_via_r2 - movs r0, 0 - ldrsb r0, [r4, r0] - ldr r1, [sp, 0xC] - lsls r1, 24 - lsrs r1, 24 - bl sub_8002984 - mov r1, r9 - adds r1, 0x4A - strb r0, [r1] - mov r3, r9 - ldr r2, [r3] - ldr r0, [r3, 0x4] - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - ldr r2, [r2, 0x2C] - bl _call_via_r2 - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r0, [r0, r4] - mov r5, r10 - str r0, [r5, 0x30] - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] -_080A05EA: - strh r0, [r5, 0x2A] - bl _0809F0C4 -_080A05F0: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - mov r1, r9 - adds r1, 0x4A - strb r0, [r1] - mov r0, r9 - ldr r2, [r0] - ldr r0, [r0, 0x4] -_080A0600: - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - ldr r2, [r2, 0x2C] - bl _call_via_r2 - b _080A07B4 -_080A060E: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - blt _080A0650 - add r4, sp, 0x50 - adds r1, r4, 0 - bl sub_80A9050 - movs r0, 0 - ldrsb r0, [r4, r0] - add r1, sp, 0x8 - ldrh r1, [r1, 0x2] - lsls r1, 24 - lsrs r1, 24 - bl sub_8002984 - mov r1, r9 - adds r1, 0x4A - strb r0, [r1] - mov r3, r9 - ldr r2, [r3] - ldr r0, [r3, 0x4] - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - ldr r2, [r2, 0x2C] - bl _call_via_r2 -_080A0650: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] -_080A0654: - mov r4, r10 -_080A0656: - strh r0, [r4, 0x2A] - bl _0809F0C4 -_080A065C: - mov r5, r9 - ldr r1, [r5] - ldr r0, [r5, 0x4] - mov r4, sp - adds r4, 0x51 - ldr r2, [r1, 0x14] - adds r1, r4, 0 - bl _call_via_r2 - movs r0, 0 - ldrsb r0, [r4, r0] - add r1, sp, 0x8 - ldrh r1, [r1, 0x2] - lsls r1, 24 - lsrs r1, 24 - bl sub_8002984 - mov r1, r9 - adds r1, 0x4A - strb r0, [r1] - ldr r2, [r5] - ldr r0, [r5, 0x4] - b _080A0600 -_080A068A: - movs r5, 0 - add r0, sp, 0x8 - ldrb r0, [r0] - cmp r0, 0x8F - beq _080A06CA - cmp r0, 0x8F - bgt _080A069E - cmp r0, 0x8E - beq _080A06A4 - b _080A0724 -_080A069E: - cmp r0, 0x90 - beq _080A06F8 - b _080A0724 -_080A06A4: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r4, r0, 16 - cmp r4, 0 - blt _080A0724 - movs r5, 0x1 - add r1, sp, 0x124 - adds r0, r4, 0 - bl sub_80A8FD8 - add r1, sp, 0x12C - adds r0, r4, 0 - bl sub_80A8F9C - b _080A0724 -_080A06CA: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - blt _080A0724 - movs r5, 0x1 - add r1, sp, 0x124 - bl sub_80A8FD8 - ldr r0, _080A06F4 - ldr r1, [r0, 0x4] - ldr r0, [r0] - add r2, sp, 0x12C - str r0, [r2] - str r1, [r2, 0x4] - b _080A0724 - .align 2, 0 -_080A06F4: .4byte gUnknown_81164DC -_080A06F8: - movs r5, 0x1 - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - add r4, sp, 0x124 - ldr r2, [r1, 0xC] - adds r1, r4, 0 - bl _call_via_r2 - mov r3, r9 - ldr r2, [r3] - ldr r0, [r3, 0x4] - add r1, sp, 0x12C - ldr r2, [r2, 0x8] - bl _call_via_r2 - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - adds r1, r4, 0 - bl sub_80AD8B4 -_080A0724: - cmp r5, 0 - beq _080A07B4 - mov r4, r9 - ldr r1, [r4] - ldr r0, [r4, 0x4] - add r5, sp, 0x134 - ldr r2, [r1, 0xC] - adds r1, r5, 0 - bl _call_via_r2 - ldr r1, [r4] - ldr r0, [r4, 0x4] - add r4, sp, 0x13C - ldr r2, [r1, 0x8] - adds r1, r4, 0 - bl _call_via_r2 - add r7, sp, 0x124 - add r3, sp, 0x12C - adds r0, r5, 0 - adds r1, r4, 0 - adds r2, r7, 0 - bl sub_8002DF0 - mov r1, sp - adds r1, 0x52 - strb r0, [r1] - movs r0, 0x1 - negs r0, r0 - movs r4, 0 - ldrsb r4, [r1, r4] - adds r6, r1, 0 - cmp r4, r0 - bne _080A078C - ldr r3, _080A07C0 - adds r0, r5, 0 - adds r1, r3, 0 - adds r2, r7, 0 - bl sub_8002D54 - strb r0, [r6] - movs r0, 0 - ldrsb r0, [r6, r0] - cmp r0, r4 - bne _080A078C - mov r5, r9 - ldr r1, [r5] - ldr r0, [r5, 0x4] - ldr r2, [r1, 0x14] - adds r1, r6, 0 - bl _call_via_r2 -_080A078C: - movs r0, 0 - ldrsb r0, [r6, r0] - add r1, sp, 0x8 - ldrh r1, [r1, 0x2] - lsls r1, 24 - lsrs r1, 24 - bl sub_8002984 - mov r1, r9 - adds r1, 0x4A - strb r0, [r1] - mov r0, r9 - ldr r2, [r0] - ldr r0, [r0, 0x4] - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - ldr r2, [r2, 0x2C] - bl _call_via_r2 -_080A07B4: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] -_080A07B8: - mov r1, r10 -_080A07BA: - strh r0, [r1, 0x2A] - bl _0809F0C4 - .align 2, 0 -_080A07C0: .4byte gUnknown_81164DC -_080A07C4: - movs r0, 0 - bl _080A12AC -_080A07CA: - ldr r0, [sp, 0xC] - mov r1, r9 - adds r1, 0x71 - movs r2, 0 - strb r0, [r1] - mov r3, r10 - strh r2, [r3, 0x2A] - bl _0809F0C4 -_080A07DC: - mov r4, r9 - ldr r1, [r4] - ldr r0, [r4, 0x4] - mov r4, sp - adds r4, 0x53 - ldr r2, [r1, 0x14] - adds r1, r4, 0 - bl _call_via_r2 - movs r0, 0 - ldrsb r0, [r4, r0] - ldr r1, [sp, 0xC] - lsls r1, 24 - lsrs r1, 24 - bl sub_8002984 - mov r1, r9 - adds r1, 0x71 - movs r2, 0 - strb r0, [r1] - mov r5, r10 - strh r2, [r5, 0x2A] - bl _0809F0C4 -_080A080C: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - ldr r1, [sp, 0xC] - ldr r2, [sp, 0x10] - bl sub_809D124 - bl _0809EAE0 -_080A081E: - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - ldr r1, [r1, 0x4] - bl _call_via_r1 - lsls r0, 16 - asrs r1, r0, 16 - mov r3, r9 - movs r4, 0x8 - ldrsh r0, [r3, r4] - cmp r0, 0x2 - beq _080A0856 - cmp r0, 0x2 - bgt _080A0844 - cmp r0, 0x1 - beq _080A084C - bl _0809EAE0 -_080A0844: - cmp r0, 0x3 - beq _080A0860 - bl _0809EAE0 -_080A084C: - movs r0, 0x1 - bl sub_809D170 - bl _0809EAE0 -_080A0856: - movs r0, 0x2 - bl sub_809D170 - bl _0809EAE0 -_080A0860: - movs r0, 0x3 - bl sub_809D170 - bl _0809EAE0 -_080A086A: - mov r5, r9 - ldr r1, [r5] - ldr r0, [r5, 0x4] - ldr r1, [r1, 0x4] - bl _call_via_r1 - lsls r0, 16 - asrs r0, 16 - movs r2, 0x8 - ldrsh r1, [r5, r2] - cmp r1, 0x2 - beq _080A08A0 - cmp r1, 0x2 - bgt _080A088E - cmp r1, 0x1 - beq _080A0896 - bl _0809EAE0 -_080A088E: - cmp r1, 0x3 - beq _080A08AA - bl _0809EAE0 -_080A0896: - add r4, sp, 0x144 - adds r1, r4, 0 - bl sub_80A8FD8 - b _080A08B2 -_080A08A0: - add r4, sp, 0x144 - adds r1, r4, 0 - bl sub_80AC448 - b _080A08B2 -_080A08AA: - add r4, sp, 0x144 - adds r1, r4, 0 - bl sub_80AD360 -_080A08B2: - movs r0, 0 - adds r1, r4, 0 - bl sub_809D158 - bl _0809EAE0 -_080A08BE: - movs r0, 0x1 - movs r1, 0 - bl sub_809D170 - bl _0809EAE0 -_080A08CA: - mov r3, r9 - ldr r1, [r3] - ldr r0, [r3, 0x4] - ldr r1, [r1, 0x4] - bl _call_via_r1 - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - bge _080A08E2 - bl _0809EAE0 -_080A08E2: - mov r4, r9 - movs r5, 0x8 - ldrsh r0, [r4, r5] - cmp r0, 0x2 - beq _080A090A - cmp r0, 0x2 - bgt _080A08F8 - cmp r0, 0x1 - beq _080A0900 - bl _0809EAE0 -_080A08F8: - cmp r0, 0x3 - beq _080A0914 - bl _0809EAE0 -_080A0900: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r2, [r0, r3] - movs r0, 0x1 - b _080A0990 -_080A090A: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r2, [r0, r4] - movs r0, 0x2 - b _080A0990 -_080A0914: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r2, [r0, r5] - movs r0, 0x3 - b _080A0990 -_080A091E: - mov r0, r9 - ldr r1, [r0] - ldr r0, [r0, 0x4] - ldr r1, [r1, 0x4] - bl _call_via_r1 - lsls r0, 16 - asrs r0, 16 - mov r2, r9 - movs r3, 0x8 - ldrsh r1, [r2, r3] - cmp r1, 0x2 - beq _080A095C - cmp r1, 0x2 - bgt _080A0944 - cmp r1, 0x1 - beq _080A094C - bl _0809EAE0 -_080A0944: - cmp r1, 0x3 - beq _080A096C - bl _0809EAE0 -_080A094C: - add r4, sp, 0x14C - adds r1, r4, 0 - bl sub_80A8FD8 - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r2, [r0, r5] - b _080A097A -_080A095C: - add r4, sp, 0x14C - adds r1, r4, 0 - bl sub_80AC448 - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r2, [r0, r1] - b _080A097A -_080A096C: - add r4, sp, 0x14C - adds r1, r4, 0 - bl sub_80AD360 - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r2, [r0, r3] -_080A097A: - movs r0, 0 - adds r1, r4, 0 - bl sub_809D190 - bl _0809F0C4 -_080A0986: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r2, [r0, r4] - movs r0, 0x1 - movs r1, 0 -_080A0990: - bl sub_809D1A8 - bl _0809F0C4 -_080A0998: - mov r5, r9 - ldr r1, [r5] - ldr r0, [r5, 0x4] - ldr r1, [r1, 0x4] - bl _call_via_r1 - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - bge _080A09B0 - bl _0809EAE0 -_080A09B0: - movs r2, 0x8 - ldrsh r0, [r5, r2] - cmp r0, 0x2 - beq _080A09D6 - cmp r0, 0x2 - bgt _080A09C4 - cmp r0, 0x1 - beq _080A09CC - bl _0809EAE0 -_080A09C4: - cmp r0, 0x3 - beq _080A09E0 - bl _0809EAE0 -_080A09CC: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r2, [r0, r3] - movs r0, 0x1 - b _080A0A5C -_080A09D6: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r2, [r0, r4] - movs r0, 0x2 - b _080A0A5C -_080A09E0: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r2, [r0, r5] - movs r0, 0x3 - b _080A0A5C -_080A09EA: - mov r0, r9 - ldr r1, [r0] - ldr r0, [r0, 0x4] - ldr r1, [r1, 0x4] - bl _call_via_r1 - lsls r0, 16 - asrs r0, 16 - mov r2, r9 - movs r3, 0x8 - ldrsh r1, [r2, r3] - cmp r1, 0x2 - beq _080A0A28 - cmp r1, 0x2 - bgt _080A0A10 - cmp r1, 0x1 - beq _080A0A18 - bl _0809EAE0 -_080A0A10: - cmp r1, 0x3 - beq _080A0A38 - bl _0809EAE0 -_080A0A18: - add r4, sp, 0x154 - adds r1, r4, 0 - bl sub_80A8FD8 - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r2, [r0, r5] - b _080A0A46 -_080A0A28: - add r4, sp, 0x154 - adds r1, r4, 0 - bl sub_80AC448 - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r2, [r0, r1] - b _080A0A46 -_080A0A38: - add r4, sp, 0x154 - adds r1, r4, 0 - bl sub_80AD360 - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r2, [r0, r3] -_080A0A46: - movs r0, 0 - adds r1, r4, 0 - bl sub_809D1CC - bl _0809F0C4 -_080A0A52: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r2, [r0, r4] - movs r0, 0x1 - movs r1, 0 -_080A0A5C: - bl sub_809D1E4 - bl _0809F0C4 -_080A0A64: - mov r5, r9 - ldr r1, [r5] - ldr r0, [r5, 0x4] - ldr r1, [r1, 0x4] - bl _call_via_r1 - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - bge _080A0A7C - bl _0809EAE0 -_080A0A7C: - movs r2, 0x8 - ldrsh r0, [r5, r2] - cmp r0, 0x2 - beq _080A0AA2 - cmp r0, 0x2 - bgt _080A0A90 - cmp r0, 0x1 - beq _080A0A98 - bl _0809EAE0 -_080A0A90: - cmp r0, 0x3 - beq _080A0AAC - bl _0809EAE0 -_080A0A98: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r2, [r0, r3] - movs r0, 0x1 - b _080A0B28 -_080A0AA2: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r2, [r0, r4] - movs r0, 0x2 - b _080A0B28 -_080A0AAC: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r2, [r0, r5] - movs r0, 0x3 - b _080A0B28 -_080A0AB6: - mov r0, r9 - ldr r1, [r0] - ldr r0, [r0, 0x4] - ldr r1, [r1, 0x4] - bl _call_via_r1 - lsls r0, 16 - asrs r0, 16 - mov r2, r9 - movs r3, 0x8 - ldrsh r1, [r2, r3] - cmp r1, 0x2 - beq _080A0AF4 - cmp r1, 0x2 - bgt _080A0ADC - cmp r1, 0x1 - beq _080A0AE4 - bl _0809EAE0 -_080A0ADC: - cmp r1, 0x3 - beq _080A0B04 - bl _0809EAE0 -_080A0AE4: - add r4, sp, 0x15C - adds r1, r4, 0 - bl sub_80A8FD8 - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r2, [r0, r5] - b _080A0B12 -_080A0AF4: - add r4, sp, 0x15C - adds r1, r4, 0 - bl sub_80AC448 - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r2, [r0, r1] - b _080A0B12 -_080A0B04: - add r4, sp, 0x15C - adds r1, r4, 0 - bl sub_80AD360 - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r2, [r0, r3] -_080A0B12: - movs r0, 0 - adds r1, r4, 0 - bl sub_809D208 - bl _0809F0C4 -_080A0B1E: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r2, [r0, r4] - movs r0, 0x1 - movs r1, 0 -_080A0B28: - bl sub_809D220 - bl _0809F0C4 -_080A0B30: - mov r0, r10 - adds r0, 0x50 - add r1, sp, 0x8 - movs r5, 0x2 - ldrsh r1, [r1, r5] - bl sub_8001570 - bl _0809EAE0 -_080A0B42: - mov r0, r10 - adds r0, 0x50 - add r1, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r1, r2] - bl sub_80015C0 - bl _0809EAE0 -_080A0B54: - mov r0, r10 - adds r0, 0x50 - add r1, sp, 0x8 - movs r3, 0x2 - ldrsh r1, [r1, r3] - ldr r2, [sp, 0xC] - add r3, sp, 0x8 - ldrb r3, [r3, 0x1] - bl sub_800226C - bl _0809EAE0 -_080A0B6C: - mov r0, r10 - adds r0, 0x50 - add r1, sp, 0x8 - movs r4, 0x2 - ldrsh r1, [r1, r4] - ldr r2, [sp, 0xC] - lsls r2, 16 - asrs r2, 16 - add r3, sp, 0x8 - ldrb r3, [r3, 0x1] - bl sub_80022A0 - bl _0809EAE0 -_080A0B88: - mov r0, r10 - adds r0, 0x50 - add r1, sp, 0x8 - movs r5, 0x2 - ldrsh r1, [r1, r5] - ldr r2, [sp, 0xC] - lsls r2, 16 - lsrs r2, 16 - ldr r3, [sp, 0x10] - bl sub_800199C - bl _0809EAE0 -_080A0BA2: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - ldr r1, [sp, 0xC] - ldr r2, [sp, 0x10] - bl sub_8001BB4 - bl _0809EAE0 -_080A0BB4: - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r0, [r0, r2] - add r1, sp, 0x164 - add r2, sp, 0x168 - bl sub_8001B88 - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - add r1, sp, 0x164 - ldr r1, [r1] - add r2, sp, 0x168 - ldr r2, [r2] - adds r2, 0x1 - bl sub_8001BB4 - bl _0809EAE0 -_080A0BDA: - ldr r2, [sp, 0xC] - movs r0, 0 - movs r1, 0x13 - bl sub_80018D8 - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r2, [r0, r4] - movs r0, 0 - movs r1, 0x16 - bl sub_80018D8 - bl _0809EAE0 -_080A0BF6: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r2, [r0, r5] - movs r0, 0 - movs r1, 0x1C - bl sub_80018D8 - bl _0809EAE0 -_080A0C08: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - add r1, sp, 0x8 - ldrb r2, [r1, 0x1] - negs r1, r2 - orrs r1, r2 - lsrs r1, 31 - bl sub_80026E8 - bl _0809EAE0 -_080A0C20: - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r0, [r0, r2] - add r1, sp, 0x8 - ldrb r2, [r1, 0x1] - negs r1, r2 - orrs r1, r2 - lsrs r1, 31 - bl sub_809733C - bl _0809EAE0 -_080A0C38: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - add r1, sp, 0x8 - ldrb r2, [r1, 0x1] - negs r1, r2 - orrs r1, r2 - lsrs r1, 31 - bl sub_80973A8 - bl _0809EAE0 -_080A0C50: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r0, [r0, r4] - add r1, sp, 0x8 - ldrb r2, [r1, 0x1] - negs r1, r2 - orrs r1, r2 - lsrs r1, 31 - bl sub_8097418 - bl _0809EAE0 -_080A0C68: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r0, [r0, r5] - add r1, sp, 0x8 - ldrb r2, [r1, 0x1] - negs r1, r2 - orrs r1, r2 - lsrs r1, 31 - bl sub_80975A8 - bl _0809EAE0 -_080A0C80: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 24 - lsrs r0, 24 - bl sub_80976F8 - bl _0809EAE0 -_080A0C90: - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r0, r2] - ldr r2, [sp, 0xC] - movs r0, 0 - movs r3, 0x2 - bl sub_80022F8 - b _080A0E1E -_080A0CA2: - mov r0, r10 - adds r0, 0x50 - ldr r1, [sp, 0xC] - lsls r1, 16 - asrs r1, 16 - ldr r2, [sp, 0x10] - add r3, sp, 0x8 - ldrb r3, [r3, 0x1] - bl sub_80022F8 - lsls r0, 24 - cmp r0, 0 - bne _080A0CC0 - bl _0809EAE0 -_080A0CC0: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r1, [r0, r4] - b _080A0D5C -_080A0CC8: - mov r0, r10 - adds r0, 0x50 - ldr r1, [sp, 0xC] - lsls r1, 16 - asrs r1, 16 - ldr r2, [sp, 0x10] - lsls r2, 16 - asrs r2, 16 - add r3, sp, 0x8 - ldrb r3, [r3, 0x1] - bl sub_8002318 - lsls r0, 24 - cmp r0, 0 - bne _080A0CEA - bl _0809EAE0 -_080A0CEA: - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r0, r2] - b _080A0E2C -_080A0CF2: - mov r0, r10 - adds r0, 0x50 - ldr r1, [sp, 0xC] - lsls r1, 16 - asrs r1, 16 - ldr r2, [sp, 0x10] - lsls r2, 16 - lsrs r2, 16 - bl sub_8001784 - cmp r0, 0 - bne _080A0D0E - bl _0809EAE0 -_080A0D0E: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r1, [r0, r4] - b _080A0D5C -_080A0D16: - mov r0, r10 - adds r0, 0x50 - ldr r1, [sp, 0xC] - lsls r1, 16 - asrs r1, 16 - bl sub_8001AB0 - ldr r1, [sp, 0x10] - add r2, sp, 0x8 - ldrb r2, [r2, 0x1] - bl FlagJudge - lsls r0, 24 - cmp r0, 0 - bne _080A0D38 - bl _0809EAE0 -_080A0D38: - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r0, r2] - b _080A0E2C -_080A0D40: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r0, [r0, r4] - ldr r1, [sp, 0xC] - ldr r2, [sp, 0x10] - bl sub_8001CC4 - lsls r0, 24 - cmp r0, 0 - bne _080A0D58 - bl _0809EAE0 -_080A0D58: - add r0, sp, 0x8 - ldrb r1, [r0, 0x1] -_080A0D5C: - mov r0, r9 - bl sub_80A242C - mov r5, r10 - str r0, [r5, 0x4] - bl _0809EAE0 -_080A0D6A: - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - ldr r1, [sp, 0xC] - ldr r2, [sp, 0x10] - bl sub_8001D08 - b _080A0DBA -_080A0D7A: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - ldr r1, [sp, 0xC] - ldr r2, [sp, 0x10] - bl sub_8001D44 - lsls r0, 24 - cmp r0, 0 - bne _080A0D92 - bl _0809EAE0 -_080A0D92: - b _080A0DF6 -_080A0D94: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r0, [r0, r5] - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _080A0DA8 - bl _0809EAE0 -_080A0DA8: - add r0, sp, 0x8 - ldrb r1, [r0, 0x1] - b _080A132A -_080A0DAE: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 24 - lsrs r0, 24 - bl sub_8098100 -_080A0DBA: - lsls r0, 24 - cmp r0, 0 - bne _080A0DC4 - bl _0809EAE0 -_080A0DC4: - add r0, sp, 0x8 - ldrb r1, [r0, 0x1] - mov r0, r9 - bl sub_80A242C - mov r2, r10 - str r0, [r2, 0x4] - bl _0809EAE0 -_080A0DD6: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80026CC - b _080A0E1E -_080A0DE2: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 24 - lsrs r0, 24 - bl sub_809CBA4 - cmp r0, 0 - bgt _080A0DF6 - bl _0809EAE0 -_080A0DF6: - add r0, sp, 0x8 - ldrb r1, [r0, 0x1] - mov r0, r9 - bl sub_80A242C - mov r4, r10 - str r0, [r4, 0x4] - bl _0809EAE0 -_080A0E08: - mov r5, r9 - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0x1 - beq _080A0E16 - bl _0809EAE0 -_080A0E16: - movs r2, 0xA - ldrsh r0, [r5, r2] - bl sub_80A8C98 -_080A0E1E: - lsls r0, 24 - cmp r0, 0 - bne _080A0E28 - bl _0809EAE0 -_080A0E28: - add r0, sp, 0x8 - ldrb r1, [r0, 0x1] -_080A0E2C: - mov r0, r9 - bl sub_80A242C - mov r3, r10 - str r0, [r3, 0x4] - bl _0809EAE0 -_080A0E3A: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 24 - lsrs r0, 24 - bl sub_8091130 - cmp r0, 0 - bge _080A0E4E - bl _0809EAE0 -_080A0E4E: - bl sub_80911F8 - bl _0809EAE0 -_080A0E56: - add r0, sp, 0x8 - ldrb r2, [r0] - adds r0, r2, 0 - subs r0, 0xC0 - cmp r0, 0xB - bls _080A0E64 - b _080A1088 -_080A0E64: - lsls r0, 2 - ldr r1, _080A0E70 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080A0E70: .4byte _080A0E74 - .align 2, 0 -_080A0E74: - .4byte _080A0EA4 - .4byte _080A0EB6 - .4byte _080A0ECC - .4byte _080A0EFA - .4byte _080A0F08 - .4byte _080A0F14 - .4byte _080A0F26 - .4byte _080A0F36 - .4byte _080A0F98 - .4byte _080A1008 - .4byte _080A0F4C - .4byte _080A107A -_080A0EA4: - mov r0, r10 - adds r0, 0x50 - add r1, sp, 0x8 - movs r4, 0x2 - ldrsh r1, [r1, r4] - bl sub_8001658 - adds r1, r0, 0 - b _080A1098 -_080A0EB6: - mov r0, r10 - adds r0, 0x50 - add r1, sp, 0x8 - movs r5, 0x2 - ldrsh r1, [r1, r5] - bl sub_8001658 - ldr r1, [sp, 0xC] - add r2, sp, 0x8 - ldrb r2, [r2, 0x1] - b _080A0EF2 -_080A0ECC: - mov r4, r10 - adds r4, 0x50 - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r0, r2] - adds r0, r4, 0 - bl sub_8001658 - adds r5, r0, 0 - ldr r1, [sp, 0xC] - lsls r1, 16 - asrs r1, 16 - adds r0, r4, 0 - bl sub_8001658 - adds r1, r0, 0 - add r0, sp, 0x8 - ldrb r2, [r0, 0x1] - adds r0, r5, 0 -_080A0EF2: - bl FlagCalc - adds r1, r0, 0 - b _080A1098 -_080A0EFA: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - bl OtherRandomCapped - adds r1, r0, 0 - b _080A1098 -_080A0F08: - add r0, sp, 0x8 - movs r4, 0x2 - ldrsh r1, [r0, r4] - movs r0, 0 - movs r2, 0 - b _080A0F1E -_080A0F14: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r1, [r0, r5] - movs r0, 0 - movs r2, 0x1 -_080A0F1E: - bl sub_8001784 - adds r1, r0, 0 - b _080A1098 -_080A0F26: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A8C2C - lsls r0, 16 - asrs r1, r0, 16 - b _080A1098 -_080A0F36: - mov r0, r9 - ldr r1, [r0] - ldr r0, [r0, 0x4] - add r4, sp, 0x54 - ldr r2, [r1, 0x14] - adds r1, r4, 0 - bl _call_via_r2 - movs r1, 0 - ldrsb r1, [r4, r1] - b _080A1098 -_080A0F4C: - mov r2, r9 - ldr r1, [r2] - ldr r0, [r2, 0x4] - movs r3, 0xB6 - lsls r3, 1 - add r3, sp - mov r8, r3 - ldr r2, [r1, 0xC] - mov r1, r8 - bl _call_via_r2 - add r6, sp, 0x16C - ldr r0, [r6] - ldr r1, [r6, 0x4] - add r4, sp, 0x174 - str r0, [r4] - str r1, [r4, 0x4] - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - adds r5, r4, 0 - adds r1, r5, 0 - bl sub_80AD8B4 - ldr r1, [r4] - ldr r0, [r6] - subs r1, r0 - add r0, sp, 0x17C - str r1, [r0] - ldr r1, [r5, 0x4] - mov r4, r8 - ldr r0, [r4, 0x4] - subs r1, r0 - add r0, sp, 0x17C - str r1, [r0, 0x4] - bl sub_8002C60 - b _080A106A -_080A0F98: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r6, r0, 16 - cmp r6, 0 - blt _080A1074 - mov r5, r9 - ldr r1, [r5] - ldr r0, [r5, 0x4] - movs r2, 0xC2 - lsls r2, 1 - add r2, sp - mov r8, r2 - ldr r2, [r1, 0xC] - mov r1, r8 - bl _call_via_r2 - ldr r1, [r5] - ldr r0, [r5, 0x4] - add r5, sp, 0x18C - ldr r2, [r1, 0x8] - adds r1, r5, 0 - bl _call_via_r2 - add r7, sp, 0x194 - adds r0, r6, 0 - adds r1, r7, 0 - bl sub_80A8FD8 - add r4, sp, 0x19C - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80A8F9C - mov r0, r8 - adds r1, r5, 0 - adds r2, r7, 0 - adds r3, r4, 0 - bl sub_8002DF0 - lsls r0, 24 - asrs r1, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A1098 - ldr r3, _080A1004 - mov r0, r8 - adds r1, r3, 0 - adds r2, r7, 0 - b _080A1066 - .align 2, 0 -_080A1004: .4byte gUnknown_81164DC -_080A1008: - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r7, r0, 16 - cmp r7, 0 - blt _080A1074 - mov r3, r9 - ldr r1, [r3] - ldr r0, [r3, 0x4] - add r6, sp, 0x1A4 - ldr r2, [r1, 0xC] - adds r1, r6, 0 - bl _call_via_r2 - mov r4, r9 - ldr r1, [r4] - ldr r0, [r4, 0x4] - add r4, sp, 0x1AC - ldr r2, [r1, 0x8] - adds r1, r4, 0 - bl _call_via_r2 - add r5, sp, 0x1B4 - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80A8FD8 - ldr r7, _080A1070 - adds r0, r6, 0 - adds r1, r4, 0 - adds r2, r5, 0 - adds r3, r7, 0 - bl sub_8002DF0 - lsls r0, 24 - asrs r1, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A1098 - adds r0, r6, 0 - adds r1, r7, 0 - adds r2, r5, 0 - adds r3, r7, 0 -_080A1066: - bl sub_8002D54 -_080A106A: - lsls r0, 24 - asrs r1, r0, 24 - b _080A1098 - .align 2, 0 -_080A1070: .4byte gUnknown_81164DC -_080A1074: - movs r1, 0x1 - negs r1, r1 - b _080A1098 -_080A107A: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r0, [r0, r5] - bl sub_809CC90 - adds r1, r0, 0 - b _080A1098 -_080A1088: - ldr r0, _080A1090 - ldr r1, _080A1094 - bl FatalError - .align 2, 0 -_080A1090: .4byte gUnknown_81166B4 -_080A1094: .4byte gUnknown_81166C0 -_080A1098: - mov r0, r9 - bl sub_80A2460 - b _080A1330 -_080A10A0: - mov r0, r10 - adds r0, 0x50 - add r1, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r1, r2] - bl sub_8001658 - adds r2, r0, 0 - mov r3, r10 - strh r2, [r3, 0x28] - ldr r1, [r3, 0x4] - ldrb r0, [r1] - cmp r0, 0xD0 - bne _080A10DE - lsls r0, r2, 16 - asrs r3, r0, 16 -_080A10C0: - adds r2, r1, 0 - movs r4, 0x2 - ldrsh r0, [r1, r4] - cmp r0, r3 - bne _080A10CE - bl _0809F0C4 -_080A10CE: - adds r0, r1, 0 - adds r0, 0x10 - mov r5, r10 - str r0, [r5, 0x4] - adds r1, r0, 0 - ldrb r0, [r2, 0x10] - cmp r0, 0xD0 - beq _080A10C0 -_080A10DE: - mov r1, r10 - ldr r0, [r1, 0x4] - ldrb r0, [r0] - cmp r0, 0xD1 - beq _080A10EC - bl _0809EAE0 -_080A10EC: - ldr r0, _080A10F4 - strh r0, [r1, 0x28] - bl _0809F0C4 - .align 2, 0 -_080A10F4: .4byte 0x0000ffff -_080A10F8: - ldr r7, [sp, 0x14] - ldr r1, _080A11F0 - movs r0, 0 - str r0, [r1] - mov r2, r10 - strh r0, [r2, 0x28] - add r0, sp, 0x8 - ldrb r0, [r0] - cmp r0, 0xD8 - bgt _080A1176 - cmp r0, 0xD6 - blt _080A1176 - mov r0, r10 - adds r0, 0x50 - ldr r1, [sp, 0x10] - lsls r1, 16 - asrs r1, 16 - bl sub_8001658 - adds r3, r0, 0 - mov r4, r10 - ldr r1, [r4, 0x4] - ldrb r0, [r1] - cmp r0, 0xD0 - bne _080A114E -_080A112A: - adds r2, r1, 0 - movs r5, 0x2 - ldrsh r0, [r2, r5] - cmp r0, r3 - bne _080A1136 - ldr r7, [r2, 0xC] -_080A1136: - adds r0, r1, 0 - adds r0, 0x10 - mov r1, r10 - str r0, [r1, 0x4] - ldrh r1, [r1, 0x28] - adds r1, 0x1 - mov r4, r10 - strh r1, [r4, 0x28] - adds r1, r0, 0 - ldrb r0, [r2, 0x10] - cmp r0, 0xD0 - beq _080A112A -_080A114E: - mov r5, r10 - ldr r1, [r5, 0x4] - ldrb r0, [r1] - cmp r0, 0xD1 - bne _080A1176 -_080A1158: - cmp r7, 0 - bne _080A115E - ldr r7, [r1, 0xC] -_080A115E: - mov r0, r10 - ldr r2, [r0, 0x4] - adds r1, r2, 0 - adds r1, 0x10 - str r1, [r0, 0x4] - ldrh r0, [r0, 0x28] - adds r0, 0x1 - mov r3, r10 - strh r0, [r3, 0x28] - ldrb r0, [r2, 0x10] - cmp r0, 0xD1 - beq _080A1158 -_080A1176: - cmp r7, 0 - bne _080A117C - ldr r7, _080A11F4 -_080A117C: - mov r4, r10 - ldr r5, [r4, 0x4] - ldrb r0, [r5] - cmp r0, 0xD9 - bne _080A11B8 - ldr r0, _080A11F8 - mov r8, r0 - ldr r6, _080A11F0 - movs r1, 0x4 - add r1, r8 - mov r12, r1 -_080A1192: - ldr r1, [r6] - lsls r2, r1, 3 - mov r4, r8 - adds r3, r2, r4 - adds r4, r5, 0 - ldr r0, [r4, 0xC] - str r0, [r3] - add r2, r12 - adds r1, 0x1 - str r1, [r2] - str r1, [r6] - adds r0, r4, 0 - adds r0, 0x10 - mov r5, r10 - str r0, [r5, 0x4] - adds r5, r0, 0 - ldrb r0, [r4, 0x10] - cmp r0, 0xD9 - beq _080A1192 -_080A11B8: - ldr r0, _080A11F0 - ldr r1, [r0] - cmp r1, 0 - bgt _080A11C4 - bl _0809EAE0 -_080A11C4: - ldr r3, _080A11F8 - lsls r2, r1, 3 - adds r1, r2, r3 - movs r0, 0 - str r0, [r1] - adds r0, r3, 0x4 - adds r2, r0 - add r0, sp, 0x8 - movs r1, 0x2 - ldrsh r0, [r0, r1] - str r0, [r2] - add r0, sp, 0x8 - ldrb r0, [r0] - subs r0, 0xD2 - cmp r0, 0x6 - bhi _080A1280 - lsls r0, 2 - ldr r1, _080A11FC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080A11F0: .4byte gUnknown_203B4AC -_080A11F4: .4byte gUnknown_81166D8 -_080A11F8: .4byte gUnknown_2039D50 -_080A11FC: .4byte _080A1200 - .align 2, 0 -_080A1200: - .4byte _080A121C - .4byte _080A121C - .4byte _080A123E - .4byte _080A1260 - .4byte _080A121C - .4byte _080A123E - .4byte _080A1260 -_080A121C: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - movs r2, 0x1 - negs r2, r2 - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - str r0, [sp] - str r7, [sp, 0x4] - adds r0, r3, 0 - movs r3, 0 - bl sub_809B028 - b _080A1280 -_080A123E: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - movs r2, 0x1 - negs r2, r2 - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - str r0, [sp] - str r7, [sp, 0x4] - adds r0, r3, 0 - movs r3, 0x1 - bl sub_809B028 - b _080A1280 -_080A1260: - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - movs r2, 0x1 - negs r2, r2 - ldr r0, [sp, 0xC] - lsls r0, 16 - asrs r0, 16 - str r0, [sp] - str r7, [sp, 0x4] - adds r0, r3, 0 - movs r3, 0x2 - bl sub_809B028 -_080A1280: - mov r0, r9 - movs r1, 0x1 - bl sub_809D8EC - lsls r0, 24 - cmp r0, 0 - bne _080A1292 - bl _0809EAE0 -_080A1292: - movs r0, 0 - movs r1, 0xB - bl sub_80A87AC - bl _0809F0C4 -_080A129E: - mov r0, r9 - movs r1, 0x1 - bl sub_809D8EC - b _080A130A -_080A12A8: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] -_080A12AC: - mov r2, r10 -_080A12AE: - strh r0, [r2, 0x2A] - bl _0809F0C4 -_080A12B4: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r1, [r0, r3] - ldr r0, [sp, 0xC] - subs r0, r1 - bl OtherRandomCapped - add r1, sp, 0x8 - ldrh r1, [r1, 0x2] - adds r1, r0 - mov r4, r10 - strh r1, [r4, 0x2A] - bl _0809F0C4 -_080A12D0: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - mov r5, r10 - strh r0, [r5, 0x28] - add r0, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r0, r2] - mov r0, r9 - bl sub_809D8EC - b _080A130A -_080A12E6: - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r0, [r0, r3] - bl sub_809D9B8 - bl _0809EAE0 -_080A12F4: - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - mov r4, r10 - strh r0, [r4, 0x28] - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r1, [r0, r5] - ldrb r2, [r0, 0x1] - mov r0, r9 - bl sub_809DA08 -_080A130A: - lsls r0, 24 -_080A130C: - cmp r0, 0 - bne _080A1314 - bl _0809EAE0 -_080A1314: - bl _0809F0C4 -_080A1318: - mov r1, r10 - adds r1, 0x10 - mov r0, r10 - adds r0, 0x4 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} -_080A1324: - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r1, [r0, r5] -_080A132A: - mov r0, r9 - bl sub_80A242C -_080A1330: - mov r1, r10 - str r0, [r1, 0x4] - bl _0809EAE0 -_080A1338: - mov r1, r10 - adds r1, 0x10 - mov r0, r10 - adds r0, 0x4 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} -_080A1344: - ldr r2, _080A1364 - add r0, sp, 0x8 - movs r5, 0x2 - ldrsh r1, [r0, r5] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r2, 0x8 - adds r0, r2 - ldr r0, [r0] - mov r1, r10 - str r0, [r1, 0x4] - str r0, [r1, 0x8] - bl _0809EAE0 - .align 2, 0 -_080A1364: .4byte gUnknown_812F1F8 -_080A1368: - mov r1, r10 - adds r1, 0x10 - mov r0, r10 - adds r0, 0x4 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} -_080A1374: - ldr r0, _080A138C - movs r5, 0 - ldrsh r1, [r0, r5] - add r0, sp, 0x8 - ldrh r0, [r0, 0x2] - lsls r0, 16 - cmp r0, 0 - blt _080A1390 - add r0, sp, 0x8 - movs r3, 0x2 - ldrsh r2, [r0, r3] - b _080A1396 - .align 2, 0 -_080A138C: .4byte gUnknown_2039A34 -_080A1390: - mov r4, r10 - movs r5, 0xC - ldrsh r2, [r4, r5] -_080A1396: - adds r5, r2, 0 - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - lsls r0, 24 - cmp r0, 0 - blt _080A13AA - add r0, sp, 0x8 - movs r4, 0x1 - ldrsb r4, [r0, r4] - b _080A13B0 -_080A13AA: - mov r0, r10 - movs r4, 0xE - ldrsb r4, [r0, r4] -_080A13B0: - add r0, sp, 0x1C - adds r2, r5, 0 - adds r3, r4, 0 - bl GroundMap_GetStationScript - ldr r0, [sp, 0x1C] - mov r1, r10 - str r0, [r1, 0x4] - str r0, [r1, 0x8] - strh r5, [r1, 0xC] - strb r4, [r1, 0xE] - bl _0809EAE0 -_080A13CA: - mov r0, r10 - adds r0, 0x50 - add r1, sp, 0x8 - movs r2, 0x2 - ldrsh r1, [r1, r2] - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - bl sub_80A4D7C - ldr r4, _080A13F4 - strh r0, [r4] - bl sub_809D940 - movs r3, 0 - ldrsh r0, [r4, r3] - bl GroundMap_ExecuteEnter - bl _0809EAE0 - .align 2, 0 -_080A13F4: .4byte gUnknown_2039A34 -_080A13F8: - movs r0, 0 - mov r4, r10 - str r0, [r4, 0x10] - str r0, [r4, 0x14] - bl _0809EAE0 -_080A1404: - mov r5, r10 - ldr r0, [r5, 0x10] - cmp r0, 0 - bne _080A1410 -_080A140C: - movs r0, 0 - b _080A142E -_080A1410: - mov r0, r10 - adds r0, 0x4 - mov r1, r10 - adds r1, 0x10 - ldm r1!, {r2-r4} - stm r0!, {r2-r4} - movs r0, 0 - mov r5, r10 - str r0, [r5, 0x10] - str r0, [r5, 0x14] - bl _0809EAE0 -_080A1428: - movs r0, 0x1 - b _080A142E -_080A142C: - movs r0, 0x4 -_080A142E: - add sp, 0x1BC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end ExecuteScriptCommand - - thumb_func_start sub_80A1440 -sub_80A1440: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r3, r2, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_80A14E8 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80A1440 - - thumb_func_start GroundScript_ExecuteTrigger -GroundScript_ExecuteTrigger: - push {r4,r5,lr} - sub sp, 0xF4 - lsls r0, 16 - asrs r4, r0, 16 - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 2 - ldr r1, _080A14C8 - adds r0, r1 - movs r1, 0x2 - ldrsh r0, [r0, r1] - cmp r0, 0xB - bne _080A14C4 - add r5, sp, 0x10 - ldr r1, _080A14CC - movs r0, 0 - str r0, [sp] - adds r0, r5, 0 - movs r2, 0 - movs r3, 0 - bl sub_809D600 - movs r0, 0 - add r1, sp, 0x4 - adds r2, r4, 0 - bl sub_809D710 - ldr r3, _080A14D0 - adds r0, r5, 0 - movs r1, 0 - add r2, sp, 0x4 - bl GroundScript_ExecutePP - add r1, sp, 0x44 - add r0, sp, 0x38 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldr r0, _080A14D4 - str r0, [r5, 0x34] - str r0, [r5, 0x38] - ldr r1, _080A14D8 - adds r0, r5, 0 - bl HandleAction - adds r4, r0, 0 - lsls r4, 16 - asrs r4, 16 - adds r0, r5, 0 - bl sub_809D648 - cmp r4, 0 - beq _080A14DC -_080A14C4: - movs r0, 0 - b _080A14DE - .align 2, 0 -_080A14C8: .4byte gUnknown_812F1F8 -_080A14CC: .4byte gUnknown_8116488 -_080A14D0: .4byte gUnknown_81166F8 -_080A14D4: .4byte gUnknown_81164E4 -_080A14D8: .4byte gUnknown_8116704 -_080A14DC: - movs r0, 0x1 -_080A14DE: - add sp, 0xF4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end GroundScript_ExecuteTrigger - - thumb_func_start sub_80A14E8 -sub_80A14E8: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r4, _080A1514 - add sp, r4 - adds r6, r0, 0 - adds r5, r2, 0 - adds r7, r3, 0 - lsls r1, 24 - lsrs r1, 24 - subs r0, r1, 0x1 - cmp r0, 0x49 - bls _080A1508 - bl _080A236A -_080A1508: - lsls r0, 2 - ldr r1, _080A1518 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080A1514: .4byte 0xfffffc80 -_080A1518: .4byte _080A151C - .align 2, 0 -_080A151C: - .4byte _080A1644 - .4byte _080A164C - .4byte _080A1672 - .4byte _080A167A - .4byte _080A1680 - .4byte _080A1688 - .4byte _080A1690 - .4byte _080A1698 - .4byte _080A169E - .4byte _080A16C6 - .4byte _080A1730 - .4byte _080A1756 - .4byte _080A178C - .4byte _080A1792 - .4byte _080A17C0 - .4byte _080A17C6 - .4byte _080A1800 - .4byte _080A1814 - .4byte _080A1824 - .4byte _080A1840 - .4byte _080A185E - .4byte _080A18C2 - .4byte _080A18E2 - .4byte _080A18F2 - .4byte _080A1904 - .4byte _080A197C - .4byte _080A1988 - .4byte _080A19DC - .4byte _080A19FC - .4byte _080A1A0E - .4byte _080A1A18 - .4byte _080A1A70 - .4byte _080A1AF8 - .4byte _080A1B20 - .4byte _080A1B36 - .4byte _080A1B58 - .4byte _080A1B64 - .4byte _080A1BD8 - .4byte _080A1BE4 - .4byte _080A1C30 - .4byte _080A1C84 - .4byte _080A1DEC - .4byte _080A1E30 - .4byte _080A1E3C - .4byte _080A1ED0 - .4byte _080A1ED6 - .4byte _080A1F28 - .4byte _080A1F3C - .4byte _080A1F44 - .4byte _080A1F50 - .4byte _080A1F80 - .4byte _080A1FDA - .4byte _080A202C - .4byte _080A2054 - .4byte _080A2060 - .4byte _080A204A - .4byte _080A206C - .4byte _080A2076 - .4byte _080A207C - .4byte _080A2082 - .4byte _080A20D4 - .4byte _080A20F4 - .4byte _080A21E4 - .4byte _080A228C - .4byte _080A229E - .4byte _080A2298 - .4byte _080A22AE - .4byte _080A22CC - .4byte _080A22E4 - .4byte _080A2304 - .4byte _080A2320 - .4byte _080A232E - .4byte _080A233A - .4byte _080A2346 -_080A1644: - bl sub_8098C58 - bl _080A236A -_080A164C: - bl sub_8011C34 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080A1660 - bl Random - bl sub_8011C40 -_080A1660: - movs r0, 0x1 - bl sub_8011C28 - bl sub_8001064 - bl sub_809965C - bl _080A236A -_080A1672: - bl sub_8098CC8 - bl _080A236A -_080A167A: - bl sub_80961D8 - b _080A1804 -_080A1680: - bl sub_8096028 - bl _080A236A -_080A1688: - bl sub_80963FC - bl _080A236A -_080A1690: - bl sub_8096488 - bl _080A236A -_080A1698: - bl sub_80964B4 - b _080A1804 -_080A169E: - movs r0, 0x8 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _080A16B0 - bl sub_808D4B0 - b _080A16B4 -_080A16B0: - bl sub_808D500 -_080A16B4: - lsls r0, 24 - lsrs r4, r0, 24 - bl nullsub_104 - negs r0, r4 - orrs r0, r4 - lsrs r0, 31 - bl _080A236C -_080A16C6: - movs r1, 0xC - ldrsh r0, [r6, r1] - cmp r0, 0x1 - beq _080A16D2 - bl _080A236A -_080A16D2: - movs r2, 0xE - ldrsh r0, [r6, r2] - add r1, sp, 0x314 - bl sub_80A8C4C - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - bne _080A16E8 - bl _080A236A -_080A16E8: - add r0, sp, 0x314 - ldrb r0, [r0] - cmp r0, 0x44 - bne _080A16FC - movs r0, 0x82 - lsls r0, 1 - cmp r1, r0 - bne _080A16FC - bl _080A203C -_080A16FC: - movs r3, 0xE - ldrsh r0, [r6, r3] - bl sub_80A90C8 - lsls r0, 16 - ldr r1, _080A172C - asrs r0, 14 - adds r0, r1 - ldr r1, [r0] - add r0, sp, 0x4 - bl strcpy - movs r0, 0 - movs r1, 0x1 - add r2, sp, 0x4 - bl sub_809AE90 -_080A171E: - lsls r0, 24 -_080A1720: - cmp r0, 0 - beq _080A1726 - b _080A1EBE -_080A1726: - bl _080A236A - .align 2, 0 -_080A172C: .4byte gUnknown_813237C -_080A1730: - movs r0, 0 - movs r1, 0x14 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - bl sub_80A2740 - lsls r0, 24 - lsrs r0, 24 - bl sub_80969D0 - movs r1, 0 - cmp r0, 0 - ble _080A1750 - movs r1, 0x1 -_080A1750: - adds r0, r1, 0 - bl _080A236C -_080A1756: - add r4, sp, 0x104 - adds r0, r4, 0 - bl sub_8099394 - lsls r0, 24 - cmp r0, 0 - bne _080A1768 - bl _080A236A -_080A1768: - ldr r0, _080A1788 - ldr r1, [r0] - ldrb r2, [r4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 4 - adds r1, r0 - adds r1, 0x2C - movs r0, 0 - ldrsb r0, [r1, r0] -_080A177C: - cmp r0, 0 - ble _080A1782 - b _080A1EBE -_080A1782: - bl _080A236A - .align 2, 0 -_080A1788: .4byte gUnknown_203B480 -_080A178C: - bl sub_8097640 - b _080A1804 -_080A1792: - movs r5, 0x11 -_080A1794: - lsls r4, r5, 16 - asrs r0, r4, 16 - bl sub_809758C - lsls r0, 24 - cmp r0, 0 - beq _080A17B6 - lsrs r4, 16 - movs r0, 0 - movs r1, 0x2F - adds r2, r4, 0 - bl sub_8001784 - cmp r0, 0 - bne _080A17B6 - bl _080A234E -_080A17B6: - adds r5, 0x1 - cmp r5, 0x16 - ble _080A1794 - bl _080A236A -_080A17C0: - bl sub_80964E4 - b _080A1804 -_080A17C6: - movs r4, 0x8 - ldrsh r0, [r6, r4] - cmp r0, 0x1 - beq _080A17D2 - bl _080A236A -_080A17D2: - movs r5, 0xA - ldrsh r0, [r6, r5] - cmp r0, 0 - beq _080A17DE - bl _080A236A -_080A17DE: - movs r1, 0xC - ldrsh r0, [r6, r1] - cmp r0, 0x1 - beq _080A17EA - bl _080A236A -_080A17EA: - movs r2, 0xA - ldrsh r4, [r6, r2] - movs r3, 0xE - ldrsh r0, [r6, r3] - bl sub_80A8E9C - adds r1, r0, 0 - adds r0, r4, 0 - bl sub_80A87E0 - b _080A171E -_080A1800: - bl sub_80A8D20 -_080A1804: - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - bl _080A236C -_080A1814: - ldr r0, _080A1820 - ldrh r0, [r0] - movs r1, 0xC0 - lsls r1, 2 - ands r0, r1 - b _080A1720 - .align 2, 0 -_080A1820: .4byte gUnknown_20255F0 -_080A1824: - lsls r0, r5, 16 - asrs r0, 16 - bl sub_80A8D54 - cmp r0, 0 - bne _080A1834 - bl _080A236A -_080A1834: - ldrh r0, [r0] - lsrs r0, 1 - movs r1, 0x1 - ands r0, r1 - bl _080A236C -_080A1840: - movs r4, 0x8 - ldrsh r0, [r6, r4] - cmp r0, 0x1 - beq _080A184C - bl _080A236A -_080A184C: - movs r5, 0xA - ldrsh r0, [r6, r5] - bl sub_80A8BFC - lsls r0, 16 - asrs r0, 16 - bl sub_808DB48 - b _080A171E -_080A185E: - lsls r0, r5, 16 - asrs r0, 16 - bl sub_80A7AE8 - lsls r0, 16 - asrs r5, r0, 16 - cmp r5, 0 - bge _080A1872 - bl _080A236A -_080A1872: - lsls r4, r7, 8 - ldr r1, [r6] - ldr r0, [r6, 0x4] - add r7, sp, 0x318 - ldr r2, [r1, 0xC] - adds r1, r7, 0 - bl _call_via_r2 - add r6, sp, 0x320 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80A8FD8 - add r0, sp, 0x318 - ldr r3, [r0] - subs r1, r3, r4 - add r0, sp, 0x320 - ldr r2, [r0] - cmp r1, r2 - ble _080A189E - bl _080A236A -_080A189E: - adds r0, r3, r4 - cmp r0, r2 - bge _080A18A8 - bl _080A236A -_080A18A8: - ldr r2, [r7, 0x4] - subs r0, r2, r4 - ldr r1, [r6, 0x4] - cmp r0, r1 - ble _080A18B6 - bl _080A236A -_080A18B6: - adds r0, r2, r4 - cmp r0, r1 - blt _080A18BE - b _080A1EBE -_080A18BE: - bl _080A236A -_080A18C2: - movs r0, 0x1 - bl sub_80A8D54 - cmp r0, 0 - bne _080A18D0 - bl _080A236A -_080A18D0: - adds r1, r0, 0 - adds r1, 0x4C - movs r2, 0 - adds r0, 0x55 -_080A18D8: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _080A18D8 - b _080A1EBE -_080A18E2: - movs r0, 0xC - bl sub_80925EC - movs r0, 0x12 - bl sub_80925EC - bl _080A236A -_080A18F2: - ldr r0, _080A1900 - movs r1, 0x3C -_080A18F6: - movs r2, 0xA - bl sub_80A8F50 - bl _080A236A - .align 2, 0 -_080A1900: .4byte gUnknown_2039D98 -_080A1904: - movs r0, 0x51 - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - bl sub_80925EC - add r1, sp, 0x4 - ldr r0, _080A1970 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r4,r6} - stm r1!, {r2,r4,r6} - ldm r0!, {r3,r4,r6} - stm r1!, {r3,r4,r6} - ldr r0, [r0] - str r0, [r1] - add r4, sp, 0x2C - adds r0, r4, 0 - add r1, sp, 0x4 - bl sub_808D144 - adds r0, r4, 0 - bl sub_808D1DC - cmp r0, 0 - bne _080A193C - b _080A1EBE -_080A193C: - movs r3, 0 - ldr r1, _080A1974 - mov r8, r1 - lsls r6, r5, 2 - ldr r2, _080A1978 - adds r4, r0, 0 - adds r4, 0x4C - mov r7, r8 -_080A194C: - adds r0, r4, r3 - adds r1, r3, r7 - ldrb r1, [r1] - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0x9 - ble _080A194C -_080A195A: - adds r0, r6, r5 - lsls r0, 4 - adds r0, r2 - mov r1, r8 - movs r2, 0xA - bl sub_80922B4 -_080A1968: - bl sub_8097848 - bl _080A236A - .align 2, 0 -_080A1970: .4byte gUnknown_8116710 -_080A1974: .4byte gUnknown_2039D98 -_080A1978: .4byte gUnknown_202E2B8 -_080A197C: - ldr r0, _080A1984 - movs r1, 0x53 - b _080A18F6 - .align 2, 0 -_080A1984: .4byte gUnknown_2039D98 -_080A1988: - ldr r0, _080A19D4 - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - bl sub_80925EC - add r1, sp, 0x84 - adds r2, r1, 0 - ldr r0, _080A19D8 - ldm r0!, {r3-r5} - stm r2!, {r3-r5} - ldm r0!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - ldm r0!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldr r0, [r0] - str r0, [r2] - add r4, sp, 0xAC - adds r0, r4, 0 - bl sub_808D144 - adds r0, r4, 0 - bl sub_808D1DC - adds r4, r0, 0 - cmp r4, 0 - bne _080A19C2 - b _080A1EBE -_080A19C2: - bl sub_8097848 - ldrh r1, [r4] - movs r0, 0x2 - orrs r0, r1 - strh r0, [r4] - bl _080A236A - .align 2, 0 -_080A19D4: .4byte 0x00000183 -_080A19D8: .4byte gUnknown_8116738 -_080A19DC: - ldr r0, _080A19F8 - movs r1, 0 - bl sub_808D434 - adds r2, r0, 0 - cmp r2, 0 - bne _080A19EC - b _080A1EBE -_080A19EC: - ldrh r1, [r2] - movs r0, 0x2 - orrs r0, r1 - strh r0, [r2] - bl _080A236A - .align 2, 0 -_080A19F8: .4byte 0x00000183 -_080A19FC: - movs r0, 0x82 - lsls r0, 1 -_080A1A00: - bl sub_808D278 - cmp r0, 0 - bne _080A1A0A - b _080A1EBE -_080A1A0A: - bl _080A236A -_080A1A0E: - ldr r0, _080A1A14 - movs r1, 0x7C - b _080A18F6 - .align 2, 0 -_080A1A14: .4byte gUnknown_2039D98 -_080A1A18: - add r1, sp, 0x108 - adds r2, r1, 0 - ldr r0, _080A1A64 - ldm r0!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - ldm r0!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - ldm r0!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - ldr r0, [r0] - str r0, [r2] - add r4, sp, 0x130 - adds r0, r4, 0 - bl sub_808D144 - adds r0, r4, 0 - bl sub_808D1DC - cmp r0, 0 - bne _080A1A42 - b _080A1EBE -_080A1A42: - movs r3, 0 - ldr r4, _080A1A68 - mov r8, r4 - lsls r6, r5, 2 - ldr r2, _080A1A6C - adds r4, r0, 0 - adds r4, 0x4C - mov r7, r8 -_080A1A52: - adds r0, r4, r3 - adds r1, r3, r7 - ldrb r1, [r1] - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0x9 - ble _080A1A52 - b _080A195A - .align 2, 0 -_080A1A64: .4byte gUnknown_8116760 -_080A1A68: .4byte gUnknown_2039D98 -_080A1A6C: .4byte gUnknown_202E2B8 -_080A1A70: - movs r0, 0x9E - movs r1, 0x1 - bl sub_80026E8 - movs r0, 0x91 - movs r1, 0 - bl sub_808D434 - cmp r0, 0 - bne _080A1A9A - ldr r3, _080A1AEC - str r0, [sp] - movs r0, 0x91 - movs r1, 0 - movs r2, 0 - bl sub_808D2E8 - cmp r0, 0 - beq _080A1A9A - bl sub_8097848 -_080A1A9A: - movs r0, 0x92 - movs r1, 0 - bl sub_808D434 - cmp r0, 0 - bne _080A1ABC - ldr r3, _080A1AF0 - str r0, [sp] - movs r0, 0x92 - movs r1, 0 - movs r2, 0 - bl sub_808D2E8 - cmp r0, 0 - beq _080A1ABC - bl sub_8097848 -_080A1ABC: - movs r0, 0x90 - movs r1, 0 - bl sub_808D434 - cmp r0, 0 - beq _080A1ACC - bl _080A236A -_080A1ACC: - ldr r3, _080A1AF4 - str r0, [sp] - movs r0, 0x90 - movs r1, 0 - movs r2, 0 - bl sub_808D2E8 - cmp r0, 0 - bne _080A1AE2 - bl _080A236A -_080A1AE2: - bl sub_8097848 - bl _080A236A - .align 2, 0 -_080A1AEC: .4byte gUnknown_8116788 -_080A1AF0: .4byte gUnknown_811678C -_080A1AF4: .4byte gUnknown_8116790 -_080A1AF8: - movs r0, 0x90 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - bne _080A1B08 - bl _080A236A -_080A1B08: - movs r0, 0x91 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - bne _080A1B18 - bl _080A236A -_080A1B18: - movs r0, 0x92 - bl sub_808E734 - b _080A171E -_080A1B20: - bl sub_808D33C - ldrh r0, [r0, 0x8] - subs r0, 0x90 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bls _080A1B32 - b _080A1EBE -_080A1B32: - bl _080A236A -_080A1B36: - bl sub_808D33C - cmp r0, 0 - beq _080A1B4A - movs r5, 0x8 - ldrsh r1, [r0, r5] - ldr r0, _080A1B54 - cmp r1, r0 - bne _080A1B4A - b _080A203C -_080A1B4A: - ldr r0, _080A1B54 - bl sub_8098134 - b _080A171E - .align 2, 0 -_080A1B54: .4byte 0x00000113 -_080A1B58: - ldr r0, _080A1B60 - movs r1, 0x79 - b _080A18F6 - .align 2, 0 -_080A1B60: .4byte gUnknown_2039D98 -_080A1B64: - ldr r4, _080A1BCC - adds r0, r4, 0 - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - bl sub_8092600 - lsls r0, 24 - cmp r0, 0 - bne _080A1B88 - adds r0, r4, 0 - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - bl sub_80925EC -_080A1B88: - add r1, sp, 0x188 - adds r2, r1, 0 - ldr r0, _080A1BD0 - ldm r0!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - ldm r0!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r0!, {r4-r6} - stm r2!, {r4-r6} - ldr r0, [r0] - str r0, [r2] - add r4, sp, 0x1B0 - adds r0, r4, 0 - bl sub_808D144 - adds r0, r4, 0 - bl sub_808D1DC - cmp r0, 0 - bne _080A1BB2 - b _080A1EBE -_080A1BB2: - movs r2, 0 - adds r3, r0, 0 - adds r3, 0x4C - ldr r4, _080A1BD4 -_080A1BBA: - adds r0, r3, r2 - adds r1, r2, r4 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x9 - ble _080A1BBA - b _080A1968 - .align 2, 0 -_080A1BCC: .4byte 0x00000199 -_080A1BD0: .4byte gUnknown_8116794 -_080A1BD4: .4byte gUnknown_2039D98 -_080A1BD8: - ldr r0, _080A1BE0 - movs r1, 0x7A - b _080A18F6 - .align 2, 0 -_080A1BE0: .4byte gUnknown_2039D98 -_080A1BE4: - add r1, sp, 0x208 - adds r2, r1, 0 - ldr r0, _080A1C28 - ldm r0!, {r3-r5} - stm r2!, {r3-r5} - ldm r0!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - ldm r0!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldr r0, [r0] - str r0, [r2] - add r4, sp, 0x230 - adds r0, r4, 0 - bl sub_808D144 - adds r0, r4, 0 - bl sub_808D1DC - cmp r0, 0 - bne _080A1C0E - b _080A1EBE -_080A1C0E: - movs r2, 0 - adds r3, r0, 0 - adds r3, 0x4C - ldr r4, _080A1C2C -_080A1C16: - adds r0, r3, r2 - adds r1, r2, r4 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x9 - ble _080A1C16 - b _080A1968 - .align 2, 0 -_080A1C28: .4byte gUnknown_81167BC -_080A1C2C: .4byte gUnknown_2039D98 -_080A1C30: - bl sub_8090A34 - cmp r0, 0x13 - ble _080A1C70 - ldr r0, _080A1C64 - ldrb r4, [r0, 0x2] - adds r0, r4, 0 - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - bne _080A1C4A - b _080A236A -_080A1C4A: - ldr r0, _080A1C68 - ldr r0, [r0] - lsls r1, r4, 1 - adds r0, 0x50 - adds r1, r0, r1 - ldrh r2, [r1] - ldr r0, _080A1C6C - cmp r2, r0 - bls _080A1C5E - b _080A236A -_080A1C5E: - adds r0, r2, 0x1 - strh r0, [r1] - b _080A236A - .align 2, 0 -_080A1C64: .4byte gUnknown_81167E4 -_080A1C68: .4byte gUnknown_203B460 -_080A1C6C: .4byte 0x000003e6 -_080A1C70: - ldr r0, _080A1C80 - ldrb r0, [r0, 0x2] - movs r1, 0 - bl sub_809124C - bl sub_80910B4 - b _080A236A - .align 2, 0 -_080A1C80: .4byte gUnknown_81167E4 -_080A1C84: - movs r0, 0xD1 - lsls r0, 1 - bl RandomCapped - adds r0, 0x1 - lsls r0, 16 - asrs r5, r0, 16 - movs r0, 0x20 - bl RandomCapped - adds r4, r0, 0 - movs r7, 0xD2 - lsls r7, 1 - movs r6, 0 - ldr r0, _080A1DE0 - mov r8, r0 -_080A1CA4: - adds r0, r5, 0x1 - lsls r0, 16 - asrs r5, r0, 16 - cmp r5, r8 - ble _080A1CB0 - movs r5, 0x1 -_080A1CB0: - subs r7, 0x1 - cmp r7, 0 - bge _080A1CCC - cmp r6, 0 - bne _080A1CBC - b _080A2360 -_080A1CBC: - cmp r4, r6 - blt _080A1CCC - adds r0, r6, 0 - bl RandomCapped - adds r4, r0, 0 - movs r7, 0xD2 - lsls r7, 1 -_080A1CCC: - adds r0, r5, 0 - subs r0, 0x90 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bls _080A1CA4 - ldr r0, _080A1DE4 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x1 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0xB - cmp r5, r0 - beq _080A1CA4 - subs r0, 0xD - cmp r5, r0 - beq _080A1CA4 - subs r0, 0x88 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x67 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x1 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x1 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x23 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x3 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x1 - cmp r5, r0 - beq _080A1CA4 - cmp r5, r8 - beq _080A1CA4 - cmp r5, 0x96 - beq _080A1CA4 - subs r0, 0x5 - cmp r5, r0 - beq _080A1CA4 - cmp r5, 0x97 - beq _080A1CA4 - subs r0, 0x5 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x1 - cmp r5, r0 - beq _080A1CA4 - subs r0, 0x8C - cmp r5, r0 - beq _080A1CA4 - subs r0, 0x1 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x2 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x5 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x82 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x1 - cmp r5, r0 - beq _080A1CA4 - adds r0, 0x1 - cmp r5, r0 - beq _080A1CA4 - subs r0, 0x83 - cmp r5, r0 - beq _080A1CA4 - adds r0, r5, 0 - bl sub_80981DC - lsls r0, 24 - cmp r0, 0 - beq _080A1CA4 - adds r0, r5, 0 - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - bl sub_8092600 - lsls r0, 24 - cmp r0, 0 - beq _080A1D9E - adds r0, r5, 0 - bl sub_808E734 - lsls r0, 24 - cmp r0, 0 - bne _080A1CA4 - adds r0, r5, 0 - bl sub_808D278 - cmp r0, 0 - beq _080A1CA4 -_080A1D9E: - adds r6, 0x1 - subs r4, 0x1 - cmp r4, 0 - blt _080A1DA8 - b _080A1CA4 -_080A1DA8: - movs r0, 0 - movs r1, 0x1F - adds r2, r5, 0 - bl sub_80018D8 - ldr r4, _080A1DE8 - adds r0, r5, 0 - bl sub_808DBA8 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - movs r2, 0 - bl sub_8092578 - adds r0, r5, 0 - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - bl sub_8092600 - lsls r0, 24 - cmp r0, 0 - bne _080A1EBE - b _080A203C - .align 2, 0 -_080A1DE0: .4byte 0x000001a3 -_080A1DE4: .4byte 0x0000019b -_080A1DE8: .4byte gUnknown_202E628 -_080A1DEC: - movs r0, 0 - movs r1, 0x1F - bl sub_8001658 - lsls r0, 16 - asrs r5, r0, 16 - ldr r4, _080A1E2C - adds r0, r5, 0 - bl sub_808DBA8 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - movs r2, 0 - bl sub_8092578 - cmp r5, 0 - bne _080A1E14 - b _080A236A -_080A1E14: - adds r0, r5, 0 - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - bl sub_8092600 - lsls r0, 24 - cmp r0, 0 - bne _080A1EBE - b _080A203C - .align 2, 0 -_080A1E2C: .4byte gUnknown_202E628 -_080A1E30: - ldr r0, _080A1E38 - movs r1, 0x20 - b _080A18F6 - .align 2, 0 -_080A1E38: .4byte gUnknown_2039D98 -_080A1E3C: - cmp r5, 0 - bne _080A1E42 - b _080A2360 -_080A1E42: - movs r0, 0 - movs r1, 0x1F - bl sub_8001658 - lsls r0, 16 - asrs r5, r0, 16 - adds r6, r5, 0 - ldr r4, _080A1EC4 - adds r0, r5, 0 - bl sub_808DBA8 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - movs r2, 0 - bl sub_8092578 - cmp r5, 0 - bne _080A1E6C - b _080A236A -_080A1E6C: - adds r0, r5, 0 - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - bl sub_8092600 - lsls r0, 24 - cmp r0, 0 - bne _080A1E8E - adds r0, r5, 0 - bl sub_808DBA8 - lsls r0, 24 - lsrs r0, 24 - bl sub_80925EC -_080A1E8E: - ldr r3, _080A1EC8 - movs r0, 0 - str r0, [sp] - adds r0, r6, 0 - movs r1, 0 - movs r2, 0 - bl sub_808D2E8 - cmp r0, 0 - bne _080A1EA4 - b _080A236A -_080A1EA4: - movs r2, 0 - adds r3, r0, 0 - adds r3, 0x4C - ldr r4, _080A1ECC -_080A1EAC: - adds r0, r3, r2 - adds r1, r2, r4 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x9 - ble _080A1EAC - bl sub_8097848 -_080A1EBE: - movs r0, 0x1 - b _080A236C - .align 2, 0 -_080A1EC4: .4byte gUnknown_202E628 -_080A1EC8: .4byte gUnknown_81167E8 -_080A1ECC: .4byte gUnknown_2039D98 -_080A1ED0: - bl sub_809211C - b _080A177C -_080A1ED6: - bl sub_8092178 - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_809211C - cmp r0, 0 - bgt _080A1EE8 - b _080A236A -_080A1EE8: - bl sub_8092158 - bl sub_8092178 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - adds r0, r4, 0 - bl sub_80921A8 - adds r1, r0, 0 - ldr r4, _080A1F30 - adds r0, r4, 0 - bl strcpy - adds r0, r5, 0 - bl sub_80921A8 - adds r1, r0, 0 - adds r4, 0x50 - adds r0, r4, 0 - bl strcpy - movs r1, 0x1 - negs r1, r1 - ldr r2, _080A1F34 - movs r0, 0 - bl sub_809AE90 - lsls r0, 24 - cmp r0, 0 - bne _080A1EBE -_080A1F28: - ldr r0, _080A1F38 - bl sub_80913A0 - b _080A236A - .align 2, 0 -_080A1F30: .4byte gUnknown_202DE58 -_080A1F34: .4byte gUnknown_81167EC -_080A1F38: .4byte 0x00002710 -_080A1F3C: - ldr r0, _080A1F40 - b _080A1A00 - .align 2, 0 -_080A1F40: .4byte 0x00000133 -_080A1F44: - ldr r0, _080A1F4C - movs r1, 0x52 - b _080A18F6 - .align 2, 0 -_080A1F4C: .4byte gUnknown_2039D98 -_080A1F50: - add r1, sp, 0x288 - adds r2, r1, 0 - ldr r0, _080A1F7C - ldm r0!, {r3-r5} - stm r2!, {r3-r5} - ldm r0!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - ldm r0!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldr r0, [r0] - str r0, [r2] - add r4, sp, 0x2B0 - adds r0, r4, 0 - bl sub_808D144 - adds r0, r4, 0 - bl sub_808D1DC - cmp r0, 0 - beq _080A1EBE - b _080A1968 - .align 2, 0 -_080A1F7C: .4byte gUnknown_811681C -_080A1F80: - movs r2, 0x1 - negs r2, r2 - movs r0, 0x3 - movs r1, 0x12 - bl sub_8001D44 - lsls r0, 24 - cmp r0, 0 - bne _080A1F94 - b _080A236A -_080A1F94: - movs r0, 0 - movs r1, 0xF - bl sub_8001658 - cmp r0, 0x4 - bne _080A1FA2 - b _080A236A -_080A1FA2: - movs r0, 0 - movs r1, 0x42 - movs r2, 0 - bl sub_8001784 - cmp r0, 0 - ble _080A1FB2 - b _080A236A -_080A1FB2: - movs r0, 0x80 - lsls r0, 1 - bl OtherRandomCapped - cmp r0, 0 - bne _080A1FCC - movs r0, 0 - movs r1, 0x42 - movs r2, 0 - movs r3, 0x4 - bl sub_800199C - b _080A1EBE -_080A1FCC: - movs r0, 0 - movs r1, 0x42 - movs r2, 0 - movs r3, 0x1 - bl sub_800199C - b _080A236A -_080A1FDA: - ldr r6, _080A200C - ldr r7, _080A2010 - movs r5, 0x2 -_080A1FE0: - bl sub_8090A34 - cmp r0, 0x13 - ble _080A2018 - ldrb r4, [r6, 0x2] - adds r0, r4, 0 - bl sub_8091524 - lsls r0, 24 - cmp r0, 0 - beq _080A2024 - ldr r0, _080A2014 - ldr r0, [r0] - lsls r1, r4, 1 - adds r0, 0x50 - adds r1, r0, r1 - ldrh r0, [r1] - cmp r0, r7 - bhi _080A2024 - adds r0, 0x1 - strh r0, [r1] - b _080A2024 - .align 2, 0 -_080A200C: .4byte gUnknown_8116844 -_080A2010: .4byte 0x000003e6 -_080A2014: .4byte gUnknown_203B460 -_080A2018: - ldrb r0, [r6, 0x2] - movs r1, 0 - bl sub_809124C - bl sub_80910B4 -_080A2024: - subs r5, 0x1 - cmp r5, 0 - bge _080A1FE0 - b _080A236A -_080A202C: - bl sub_808D33C - cmp r0, 0 - beq _080A2040 - movs r4, 0x8 - ldrsh r0, [r0, r4] - cmp r0, 0x71 - bne _080A2040 -_080A203C: - movs r0, 0x2 - b _080A236C -_080A2040: - movs r0, 0x71 - bl sub_8098134 - bl _080A171E -_080A204A: - movs r0, 0 - movs r1, 0x1 - bl sub_80A56A0 - b _080A236A -_080A2054: - add r0, sp, 0x328 - str r5, [r0] - str r7, [r0, 0x4] - bl sub_80A56F0 - b _080A236A -_080A2060: - add r0, sp, 0x330 - str r5, [r0] - str r7, [r0, 0x4] - bl sub_80A5704 - b _080A236A -_080A206C: - lsls r0, r5, 16 - lsrs r0, 16 - bl sub_809C6CC - b _080A236A -_080A2076: - bl sub_809C6EC - b _080A236A -_080A207C: - bl sub_809C760 - b _080A236A -_080A2082: - movs r0, 0 - movs r4, 0x80 - lsls r4, 9 -_080A2088: - movs r1, 0x80 - lsls r1, 15 - bl sub_80A86C8 - adds r0, r4, 0 - movs r5, 0x80 - lsls r5, 9 - adds r4, r5 - asrs r0, 16 - cmp r0, 0x17 - ble _080A2088 - movs r0, 0 - adds r4, r5, 0 -_080A20A2: - movs r1, 0x80 - lsls r1, 15 - bl sub_80AC1B0 - adds r0, r4, 0 - movs r6, 0x80 - lsls r6, 9 - adds r4, r6 - asrs r0, 16 - cmp r0, 0xF - ble _080A20A2 - movs r0, 0 - adds r4, r6, 0 -_080A20BC: - movs r1, 0x80 - lsls r1, 15 - bl sub_80AD0C8 - adds r0, r4, 0 - movs r1, 0x80 - lsls r1, 9 - adds r4, r1 - asrs r0, 16 - cmp r0, 0xF - ble _080A20BC - b _080A236A -_080A20D4: - add r0, sp, 0x338 - str r5, [r0] - adds r4, r0, 0 - str r7, [r4, 0x4] - movs r0, 0x1 - adds r1, r4, 0 - bl sub_80A5984 - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - movs r0, 0 - adds r1, r4, 0 - bl sub_80A59A0 - b _080A236A -_080A20F4: - add r1, sp, 0x308 - movs r2, 0 - movs r0, 0x1 - strb r0, [r1] - strb r2, [r1, 0x1] - strb r0, [r1, 0x2] - strb r0, [r1, 0x3] - str r2, [r1, 0x4] - ldr r0, _080A21D8 - ldr r2, _080A21DC - adds r0, r2 - ldr r0, [r0] - str r0, [r1, 0x8] - movs r0, 0x1 - negs r0, r0 - lsls r2, r5, 16 - asrs r2, 16 - lsls r3, r7, 24 - asrs r3, 24 - bl GroundEffect_Add - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _080A2128 - b _080A236A -_080A2128: - bl sub_80AD158 - adds r7, r0, 0 - add r4, sp, 0x340 - add r5, sp, 0x348 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80A579C - ldr r0, [r4, 0x4] - movs r1, 0xC0 - lsls r1, 4 - adds r0, r1 - str r0, [r4, 0x4] - ldr r0, [r5, 0x4] - adds r0, r1 - str r0, [r5, 0x4] - ldr r1, [r6] - ldr r0, [r6, 0x4] - add r6, sp, 0x350 - ldr r2, [r1, 0xC] - adds r1, r6, 0 - bl _call_via_r2 - add r1, sp, 0x350 - ldr r2, [r1] - add r0, sp, 0x340 - ldr r0, [r0] - cmp r2, r0 - blt _080A216E - add r0, sp, 0x348 - ldr r0, [r0] - cmp r2, r0 - blt _080A2170 - subs r0, 0x1 -_080A216E: - str r0, [r1] -_080A2170: - ldr r1, [r6, 0x4] - ldr r0, [r4, 0x4] - cmp r1, r0 - blt _080A2180 - ldr r0, [r5, 0x4] - cmp r1, r0 - blt _080A2182 - subs r0, 0x1 -_080A2180: - str r0, [r6, 0x4] -_080A2182: - add r1, sp, 0x340 - ldr r0, [r1] - ldr r2, _080A21E0 - adds r0, r2 - str r0, [r1] - ldr r0, [r4, 0x4] - adds r0, r2 - str r0, [r4, 0x4] - add r1, sp, 0x348 - ldr r0, [r1] - movs r2, 0x80 - lsls r2, 3 - adds r0, r2 - str r0, [r1] - ldr r0, [r5, 0x4] - adds r0, r2 - str r0, [r5, 0x4] - ldr r1, [r7] - ldr r0, [r7, 0x4] - ldr r3, [r1, 0x20] - adds r1, r4, 0 - adds r2, r5, 0 - bl _call_via_r3 - ldr r1, [r7] - ldr r0, [r7, 0x4] - ldr r2, [r1, 0x24] - adds r1, r6, 0 - bl _call_via_r2 - movs r0, 0 - movs r1, 0 - add r2, sp, 0x358 - str r0, [r2] - str r1, [r2, 0x4] - ldr r2, [r7] - ldr r0, [r7, 0x4] - add r1, sp, 0x358 - ldr r2, [r2, 0x48] - bl _call_via_r2 - b _080A1EBE - .align 2, 0 -_080A21D8: .4byte gUnknown_812F1F8 -_080A21DC: .4byte 0x00001310 -_080A21E0: .4byte 0xfffffc00 -_080A21E4: - ldr r0, _080A2288 - ldrh r4, [r0] - ldrh r0, [r0, 0x2] - movs r1, 0xC - ands r0, r1 - cmp r0, 0 - beq _080A21F4 - b _080A236A -_080A21F4: - adds r0, r4, 0 - bl sub_809CFE8 - lsls r0, 24 - asrs r1, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A2282 - movs r2, 0x80 - lsls r2, 1 - add r0, sp, 0x360 - bl sub_8002BB8 - add r0, sp, 0x360 - ldr r1, [r0, 0x4] - ldr r0, [r0] - add r2, sp, 0x368 - str r0, [r2] - str r1, [r2, 0x4] - movs r0, 0x2 - ands r4, r0 - cmp r4, 0 - beq _080A2226 - movs r0, 0x4 -_080A2226: - cmp r0, 0 - beq _080A2282 - movs r3, 0xDA - lsls r3, 2 - add r3, sp - mov r9, r3 - add r7, sp, 0x370 - add r4, sp, 0x378 - mov r8, r0 -_080A2238: - ldr r1, [r6] - ldr r0, [r6, 0x4] - ldr r2, [r1, 0x48] - mov r1, r9 - bl _call_via_r2 - cmp r0, 0 - beq _080A2276 - movs r5, 0 - str r5, [r7] - mov r1, r9 - ldr r0, [r1, 0x4] - str r0, [r7, 0x4] - ldr r1, [r6] - ldr r0, [r6, 0x4] - ldr r2, [r1, 0x48] - adds r1, r7, 0 - bl _call_via_r2 - cmp r0, 0 - beq _080A2276 - mov r2, r9 - ldr r0, [r2] - str r0, [r4] - str r5, [r4, 0x4] - ldr r1, [r6] - ldr r0, [r6, 0x4] - ldr r2, [r1, 0x48] - adds r1, r4, 0 - bl _call_via_r2 -_080A2276: - movs r3, 0x1 - negs r3, r3 - add r8, r3 - mov r5, r8 - cmp r5, 0 - bne _080A2238 -_080A2282: - movs r0, 0x1 - negs r0, r0 - b _080A236C - .align 2, 0 -_080A2288: .4byte gUnknown_20255F0 -_080A228C: - negs r0, r5 - orrs r0, r5 - lsrs r0, 31 - bl sub_80993C0 - b _080A236A -_080A2298: - movs r0, 0x1 - bl sub_8011C28 -_080A229E: - adds r0, r5, 0 - bl sub_8098F00 - lsls r0, r5, 16 - lsrs r0, 16 - bl sub_80118C4 - b _080A236A -_080A22AE: - bl sub_800C068 - ldr r1, _080A22C4 - strh r0, [r1] - lsls r0, 16 - ldr r1, _080A22C8 - cmp r0, r1 - beq _080A22C0 - b _080A1EBE -_080A22C0: - b _080A236A - .align 2, 0 -_080A22C4: .4byte gUnknown_2039DA8 -_080A22C8: .4byte 0x03e70000 -_080A22CC: - ldr r4, _080A22DC - ldrh r0, [r4] - ldr r5, _080A22E0 - cmp r0, r5 - beq _080A236A - bl sub_80118F0 - b _080A2312 - .align 2, 0 -_080A22DC: .4byte gUnknown_2039DA8 -_080A22E0: .4byte 0x000003e7 -_080A22E4: - ldr r4, _080A22FC - ldrh r0, [r4] - ldr r6, _080A2300 - cmp r0, r6 - beq _080A236A - lsls r1, r5, 16 - lsrs r1, 16 - bl sub_8011900 - strh r6, [r4] - b _080A1EBE - .align 2, 0 -_080A22FC: .4byte gUnknown_2039DA8 -_080A2300: .4byte 0x000003e7 -_080A2304: - ldr r4, _080A2318 - ldrh r0, [r4] - ldr r5, _080A231C - cmp r0, r5 - beq _080A236A - bl sub_8011914 -_080A2312: - strh r5, [r4] - b _080A1EBE - .align 2, 0 -_080A2318: .4byte gUnknown_2039DA8 -_080A231C: .4byte 0x000003e7 -_080A2320: - lsls r0, r5, 16 - lsrs r0, 16 - lsls r1, r7, 16 - lsrs r1, 16 - bl sub_80997F4 - b _080A236A -_080A232E: - lsls r1, r5, 16 - lsrs r1, 16 - movs r0, 0x1E - bl sub_80997F4 - b _080A236A -_080A233A: - lsls r1, r5, 16 - lsrs r1, 16 - movs r0, 0 - bl GroundSprite_ExtendPaletteAdd - b _080A236A -_080A2346: - movs r0, 0 - bl sub_80A6C88 - b _080A236A -_080A234E: - movs r0, 0 - movs r1, 0x2F - adds r2, r4, 0 - movs r3, 0x1 - bl sub_800199C - adds r0, r5, 0 - subs r0, 0x10 - b _080A236C -_080A2360: - movs r0, 0 - movs r1, 0x1F - movs r2, 0 - bl sub_80018D8 -_080A236A: - movs r0, 0 -_080A236C: - movs r3, 0xE0 - lsls r3, 2 - add sp, r3 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A14E8 - - thumb_func_start sub_80A2380 -sub_80A2380: - push {r4-r7,lr} - ldr r1, _080A241C - ldrb r0, [r1] - cmp r0, 0 - beq _080A2414 - movs r0, 0 - strb r0, [r1] - movs r6, 0 -_080A2390: - ldr r0, _080A2420 - adds r7, r6, r0 - ldrb r0, [r7] - cmp r0, 0 - beq _080A240E - movs r0, 0x1 - ldr r1, _080A2424 - adds r2, r6, 0 - bl Log - lsls r5, r6, 16 - asrs r5, 16 - adds r0, r5, 0 - bl sub_80A4D2C - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl sub_80A8B1C - orrs r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl sub_80AC320 - orrs r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl sub_80AD238 - orrs r4, r0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _080A2428 - adds r5, r6, r0 - ldrb r0, [r5] - cmp r0, 0 - beq _080A240C - cmp r4, 0 - beq _080A240E - movs r0, 0x80 - adds r4, r6, 0 - orrs r4, r0 - lsls r4, 16 - asrs r4, 16 - adds r0, r4, 0 - bl sub_80A4D2C - adds r0, r4, 0 - bl sub_80A8B1C - adds r0, r4, 0 - bl sub_80AC320 - adds r0, r4, 0 - bl sub_80AD238 - movs r0, 0 - strb r0, [r5] -_080A240C: - strb r0, [r7] -_080A240E: - adds r6, 0x1 - cmp r6, 0x80 - ble _080A2390 -_080A2414: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A241C: .4byte gUnknown_2039A36 -_080A2420: .4byte gUnknown_2039A38 -_080A2424: .4byte gUnknown_8116848 -_080A2428: .4byte gUnknown_2039AC0 - thumb_func_end sub_80A2380 - - thumb_func_start sub_80A242C -sub_80A242C: - push {r4-r7,lr} - sub sp, 0x10 - adds r4, r1, 0 - ldr r0, [r0, 0x2C] - adds r2, r0, 0 - adds r2, 0x10 - mov r3, sp -_080A243A: - mov r1, sp - adds r0, r2, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldr r0, [r0] - str r0, [r1] - adds r2, 0x10 - ldrb r0, [r3] - cmp r0, 0xF4 - bne _080A243A - movs r1, 0x2 - ldrsh r0, [r3, r1] - cmp r4, r0 - bne _080A243A - adds r0, r2, 0 - add sp, 0x10 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A242C - - thumb_func_start sub_80A2460 -sub_80A2460: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - adds r5, r0, 0 - mov r8, r1 - ldr r6, [r5, 0x28] - mov r4, sp -_080A2470: - mov r0, sp - adds r1, r6, 0 - ldm r1!, {r2,r3,r7} - stm r0!, {r2,r3,r7} - ldr r1, [r1] - str r1, [r0] - ldrb r0, [r4] - cmp r0, 0xCC - bne _080A249E - ldr r1, [sp, 0x4] - mov r0, r8 - movs r2, 0x2 - bl FlagJudge - lsls r0, 24 - cmp r0, 0 - beq _080A24F0 - movs r0, 0x2 - ldrsh r1, [r4, r0] - adds r0, r5, 0 - bl sub_80A242C - b _080A24F4 -_080A249E: - cmp r0, 0xCD - bne _080A24BE - ldr r1, [sp, 0x4] - ldrb r2, [r4, 0x1] - mov r0, r8 - bl FlagJudge - lsls r0, 24 - cmp r0, 0 - beq _080A24F0 - movs r2, 0x2 - ldrsh r1, [r4, r2] - adds r0, r5, 0 - bl sub_80A242C - b _080A24F4 -_080A24BE: - cmp r0, 0xCE - bne _080A24EC - ldr r1, [sp, 0x4] - lsls r1, 16 - asrs r1, 16 - adds r0, r5, 0 - adds r0, 0x74 - bl sub_8001658 - adds r1, r0, 0 - ldrb r2, [r4, 0x1] - mov r0, r8 - bl FlagJudge - lsls r0, 24 - cmp r0, 0 - beq _080A24F0 - movs r3, 0x2 - ldrsh r1, [r4, r3] - adds r0, r5, 0 - bl sub_80A242C - b _080A24F4 -_080A24EC: - adds r0, r6, 0 - b _080A24F4 -_080A24F0: - adds r6, 0x10 - b _080A2470 -_080A24F4: - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A2460 - - thumb_func_start sub_80A2500 -sub_80A2500: - push {r4,lr} - adds r4, r0, 0 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0x1 - bne _080A2524 - lsls r4, 16 - asrs r4, 16 - movs r2, 0x2 - ldrsh r0, [r1, r2] - bl sub_80A8BBC - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r0, r4, 0 - bl sub_809AB4C -_080A2524: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80A2500 - - thumb_func_start sub_80A252C -sub_80A252C: - push {r4,lr} - adds r4, r0, 0 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0x1 - bne _080A2550 - lsls r4, 16 - asrs r4, 16 - movs r2, 0x2 - ldrsh r0, [r1, r2] - bl sub_80A8BBC - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r0, r4, 0 - bl sub_809ABB4 -_080A2550: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80A252C - - thumb_func_start sub_80A2558 -sub_80A2558: - push {r4,lr} - adds r4, r0, 0 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0x1 - bne _080A257C - lsls r4, 16 - asrs r4, 16 - movs r2, 0x2 - ldrsh r0, [r1, r2] - bl sub_80A8BBC - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r0, r4, 0 - bl sub_809AC18 -_080A257C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80A2558 - - thumb_func_start sub_80A2584 -sub_80A2584: - push {lr} - lsls r1, 16 - asrs r1, 16 - lsls r0, 16 - asrs r0, 16 - bl sub_809ABB4 - pop {r0} - bx r0 - thumb_func_end sub_80A2584 - - thumb_func_start sub_80A2598 -sub_80A2598: - push {lr} - lsls r1, 16 - asrs r1, 16 - lsls r0, 16 - asrs r0, 16 - bl sub_809AC18 - pop {r0} - bx r0 - thumb_func_end sub_80A2598 - - thumb_func_start sub_80A25AC -sub_80A25AC: - push {r4,r5,lr} - lsls r0, 16 - lsrs r4, r0, 16 - adds r5, r4, 0 - bl sub_8098F88 - lsls r0, 24 - cmp r0, 0 - beq _080A25C2 - adds r0, r4, 0 - b _080A2602 -_080A25C2: - cmp r4, 0x32 - bne _080A25CA - movs r0, 0x32 - b _080A2602 -_080A25CA: - movs r0, 0xC - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _080A25E0 - ldr r0, _080A25DC - b _080A2602 - .align 2, 0 -_080A25DC: .4byte 0x000003e7 -_080A25E0: - movs r0, 0xD - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A25F0 - movs r0, 0x13 - b _080A2602 -_080A25F0: - cmp r4, 0x1 - bne _080A2600 - movs r0, 0 - movs r1, 0x28 - bl sub_8001658 - movs r0, 0x1 - b _080A2602 -_080A2600: - adds r0, r5, 0 -_080A2602: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80A25AC - - thumb_func_start sub_80A2608 -sub_80A2608: - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - ldr r1, _080A261C - adds r0, r1 - bx lr - .align 2, 0 -_080A261C: .4byte gUnknown_81168A8 - thumb_func_end sub_80A2608 - - thumb_func_start sub_80A2620 -sub_80A2620: - push {lr} - lsls r0, 16 - asrs r0, 16 - bl sub_80A26B8 - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - ldr r1, _080A2640 - adds r0, r1 - pop {r1} - bx r1 - .align 2, 0 -_080A2640: .4byte gUnknown_81168A8 - thumb_func_end sub_80A2620 - - thumb_func_start sub_80A2644 -sub_80A2644: - ldr r1, _080A2650 - lsls r0, 1 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080A2650: .4byte gUnknown_8116F24 - thumb_func_end sub_80A2644 - - thumb_func_start sub_80A2654 -sub_80A2654: - push {lr} - lsls r0, 16 - asrs r0, 16 - bl sub_80A2608 - movs r1, 0xE - ldrsh r0, [r0, r1] - pop {r1} - bx r1 - thumb_func_end sub_80A2654 - - thumb_func_start sub_80A2668 -sub_80A2668: - push {lr} - lsls r0, 16 - ldr r2, _080A267C - adds r1, r0, r2 - lsrs r0, r1, 16 - cmp r0, 0x18 - bls _080A2680 - movs r0, 0x1 - negs r0, r0 - b _080A2682 - .align 2, 0 -_080A267C: .4byte 0xffc90000 -_080A2680: - asrs r0, r1, 16 -_080A2682: - pop {r1} - bx r1 - thumb_func_end sub_80A2668 - - thumb_func_start sub_80A2688 -sub_80A2688: - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - adds r3, r1, 0 - adds r2, r1, 0 - subs r2, 0x4B - lsls r0, r2, 24 - lsrs r0, 24 - cmp r0, 0x16 - bhi _080A26A0 - adds r0, r2, 0 - b _080A26B4 -_080A26A0: - cmp r1, 0x2F - bne _080A26A8 - movs r0, 0x17 - b _080A26B4 -_080A26A8: - cmp r3, 0x30 - beq _080A26B2 - movs r0, 0x1 - negs r0, r0 - b _080A26B4 -_080A26B2: - movs r0, 0x18 -_080A26B4: - pop {r1} - bx r1 - thumb_func_end sub_80A2688 - - thumb_func_start sub_80A26B8 -sub_80A26B8: - lsls r0, 16 - ldr r1, _080A26C8 - asrs r0, 15 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080A26C8: .4byte gUnknown_8116F9A - thumb_func_end sub_80A26B8 - - thumb_func_start sub_80A26CC -sub_80A26CC: - lsls r0, 16 - movs r1, 0xDC - lsls r1, 14 - adds r0, r1 - asrs r0, 16 - bx lr - thumb_func_end sub_80A26CC - - thumb_func_start sub_80A26D8 -sub_80A26D8: - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 -_080A26E0: - lsls r0, r5, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_80A2608 - adds r1, r0, 0 - ldrb r0, [r1, 0x11] - cmp r0, 0 - beq _080A26FC - ldrb r0, [r1, 0xC] - cmp r0, r6 - bne _080A26FC - adds r0, r4, 0 - b _080A2706 -_080A26FC: - adds r5, 0x1 - cmp r5, 0x52 - ble _080A26E0 - movs r0, 0x1 - negs r0, r0 -_080A2706: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80A26D8 - - thumb_func_start sub_80A270C -sub_80A270C: - push {lr} - lsls r0, 16 - ldr r1, _080A2724 - asrs r0, 15 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_80A2608 - ldrb r0, [r0, 0xC] - pop {r1} - bx r1 - .align 2, 0 -_080A2724: .4byte gUnknown_8116F9A - thumb_func_end sub_80A270C - - thumb_func_start sub_80A2728 -sub_80A2728: - push {lr} - lsls r0, 16 - movs r1, 0xDC - lsls r1, 14 - adds r0, r1 - asrs r0, 16 - bl sub_80A2608 - ldrb r0, [r0, 0xC] - pop {r1} - bx r1 - thumb_func_end sub_80A2728 - - thumb_func_start sub_80A2740 -sub_80A2740: - push {lr} - lsls r0, 16 - asrs r0, 16 - bl sub_80A2608 - ldrb r0, [r0, 0xC] - pop {r1} - bx r1 - thumb_func_end sub_80A2740 - - thumb_func_start sub_80A2750 -sub_80A2750: - push {r4,lr} - lsls r0, 16 - asrs r1, r0, 16 - adds r2, r1, 0 - cmp r1, 0x50 - bne _080A2760 - movs r0, 0x3 - b _080A27C4 -_080A2760: - cmp r1, 0x51 - beq _080A27BE - cmp r1, 0x52 - beq _080A2780 - adds r0, r1, 0 - subs r0, 0x28 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xE - bls _080A27BE - adds r0, r1, 0 - subs r0, 0x37 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x18 - bhi _080A2784 -_080A2780: - movs r0, 0x4 - b _080A27C4 -_080A2784: - adds r0, r2, 0 - bl sub_80A2608 - adds r4, r0, 0 - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A27C2 - movs r0, 0x5 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _080A27C2 - movs r1, 0xE - ldrsh r0, [r4, r1] - bl sub_80973F4 - lsls r0, 24 - cmp r0, 0 - beq _080A27C2 - movs r0, 0x1 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A27C2 -_080A27BE: - movs r0, 0x2 - b _080A27C4 -_080A27C2: - movs r0, 0x1 -_080A27C4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80A2750 - - thumb_func_start sub_80A27CC -sub_80A27CC: - push {r4,r5,lr} - lsls r0, 16 - asrs r4, r0, 16 - adds r5, r4, 0 - adds r0, r4, 0 - bl sub_80A2620 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A281A - movs r0, 0x5 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _080A281A - adds r0, r4, 0 - bl sub_8097384 - lsls r0, 24 - cmp r0, 0 - bne _080A2816 - movs r0, 0x1 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A281A - adds r0, r5, 0 - bl sub_80973F4 - lsls r0, 24 - cmp r0, 0 - beq _080A281A -_080A2816: - movs r0, 0x1 - b _080A281C -_080A281A: - movs r0, 0 -_080A281C: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80A27CC - - thumb_func_start sub_80A2824 -sub_80A2824: - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r0, 0x5 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - bne _080A28AC - movs r0, 0x1 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A2880 - movs r5, 0 -_080A2844: - lsls r0, r5, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_80A2620 - adds r1, r0, 0 - ldrb r0, [r1, 0x11] - cmp r0, 0 - beq _080A2874 - ldrb r0, [r1, 0xC] - cmp r0, r6 - bne _080A2874 - adds r0, r4, 0 - bl sub_8097384 - lsls r0, 24 - cmp r0, 0 - bne _080A287C - adds r0, r4, 0 - bl sub_80973F4 - lsls r0, 24 - cmp r0, 0 - bne _080A287C -_080A2874: - adds r5, 0x1 - cmp r5, 0x2D - ble _080A2844 - b _080A28AC -_080A287C: - movs r0, 0x1 - b _080A28AE -_080A2880: - movs r5, 0 -_080A2882: - lsls r0, r5, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_80A2620 - adds r1, r0, 0 - ldrb r0, [r1, 0x11] - cmp r0, 0 - beq _080A28A6 - ldrb r0, [r1, 0xC] - cmp r0, r6 - bne _080A28A6 - adds r0, r4, 0 - bl sub_8097384 - lsls r0, 24 - cmp r0, 0 - bne _080A287C -_080A28A6: - adds r5, 0x1 - cmp r5, 0x2D - ble _080A2882 -_080A28AC: - movs r0, 0 -_080A28AE: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80A2824 - - thumb_func_start sub_80A28B4 -sub_80A28B4: - push {r4,lr} - lsls r0, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_80A2620 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A28E8 - adds r0, r4, 0 - bl sub_8097384 - lsls r0, 24 - cmp r0, 0 - bne _080A28E4 - adds r0, r4, 0 - bl sub_80973F4 - lsls r0, 24 - cmp r0, 0 - beq _080A28E8 -_080A28E4: - movs r0, 0x1 - b _080A28EA -_080A28E8: - movs r0, 0 -_080A28EA: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80A28B4 - - thumb_func_start sub_80A28F0 -sub_80A28F0: - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 -_080A28F8: - lsls r0, r5, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_80A2620 - adds r1, r0, 0 - ldrb r0, [r1, 0x11] - cmp r0, 0 - beq _080A292C - ldrb r0, [r1, 0xC] - cmp r0, r6 - bne _080A292C - adds r0, r4, 0 - bl sub_8097384 - lsls r0, 24 - cmp r0, 0 - bne _080A2928 - adds r0, r4, 0 - bl sub_80973F4 - lsls r0, 24 - cmp r0, 0 - beq _080A292C -_080A2928: - movs r0, 0x1 - b _080A2934 -_080A292C: - adds r5, 0x1 - cmp r5, 0x2D - ble _080A28F8 - movs r0, 0 -_080A2934: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80A28F0 - - thumb_func_start sub_80A293C -sub_80A293C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x40 - mov r8, r0 - movs r7, 0 - movs r1, 0 - mov r0, sp - adds r0, 0x3E -_080A294E: - strb r1, [r0] - subs r0, 0x1 - cmp r0, sp - bge _080A294E - movs r5, 0 -_080A2958: - lsls r0, r5, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_80A2620 - adds r6, r0, 0 - ldrb r0, [r6, 0x11] - cmp r0, 0 - beq _080A2980 - adds r0, r4, 0 - bl sub_8097384 - lsls r0, 24 - cmp r0, 0 - beq _080A2980 - ldrb r0, [r6, 0xC] - mov r2, sp - adds r1, r2, r0 - movs r0, 0x1 - strb r0, [r1] -_080A2980: - adds r5, 0x1 - cmp r5, 0x2D - ble _080A2958 - movs r5, 0 -_080A2988: - mov r1, sp - adds r0, r1, r5 - ldrb r0, [r0] - cmp r0, 0 - beq _080A299A - mov r2, r8 - adds r0, r2, r7 - strb r5, [r0] - adds r7, 0x1 -_080A299A: - adds r5, 0x1 - cmp r5, 0x3E - ble _080A2988 - adds r0, r7, 0 - add sp, 0x40 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A293C - - thumb_func_start sub_80A29B0 -sub_80A29B0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x48 - mov r8, r0 - movs r7, 0 - movs r0, 0x2B - add r0, sp - mov r9, r0 - add r1, sp, 0x2C - mov r10, r1 - mov r2, sp - adds r2, 0x2D - str r2, [sp, 0x40] - mov r0, sp - adds r0, 0x2E - str r0, [sp, 0x44] - movs r1, 0 - adds r0, 0x10 -_080A29DA: - strb r1, [r0] - subs r0, 0x1 - cmp r0, sp - bge _080A29DA - movs r0, 0x1 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A2A1E - movs r5, 0 -_080A29F0: - lsls r0, r5, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_80A2620 - adds r6, r0, 0 - ldrb r0, [r6, 0x11] - cmp r0, 0 - beq _080A2A18 - adds r0, r4, 0 - bl sub_80973F4 - lsls r0, 24 - cmp r0, 0 - beq _080A2A18 - ldrb r0, [r6, 0xC] - mov r2, sp - adds r1, r2, r0 - movs r0, 0x1 - strb r0, [r1] -_080A2A18: - adds r5, 0x1 - cmp r5, 0x2D - ble _080A29F0 -_080A2A1E: - movs r0, 0 - mov r1, r9 - strb r0, [r1] - mov r2, r10 - strb r0, [r2] - ldr r1, [sp, 0x40] - strb r0, [r1] - ldr r2, [sp, 0x44] - strb r0, [r2] - movs r5, 0 -_080A2A32: - mov r1, sp - adds r0, r1, r5 - ldrb r0, [r0] - cmp r0, 0 - beq _080A2A44 - mov r2, r8 - adds r0, r2, r7 - strb r5, [r0] - adds r7, 0x1 -_080A2A44: - adds r5, 0x1 - cmp r5, 0x3E - ble _080A2A32 - adds r0, r7, 0 - add sp, 0x48 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A29B0 - - thumb_func_start sub_80A2A5C -sub_80A2A5C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x40 - mov r8, r0 - movs r7, 0 - movs r1, 0 - mov r0, sp - adds r0, 0x3E -_080A2A6E: - strb r1, [r0] - subs r0, 0x1 - cmp r0, sp - bge _080A2A6E - movs r0, 0x1 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A2AC0 - movs r6, 0 -_080A2A84: - lsls r0, r6, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_80A2620 - adds r5, r0, 0 - ldrb r0, [r5, 0x11] - cmp r0, 0 - beq _080A2AB8 - adds r0, r4, 0 - bl sub_8097384 - lsls r0, 24 - cmp r0, 0 - bne _080A2AAE - adds r0, r4, 0 - bl sub_80973F4 - lsls r0, 24 - cmp r0, 0 - beq _080A2AB8 -_080A2AAE: - ldrb r0, [r5, 0xC] - mov r2, sp - adds r1, r2, r0 - movs r0, 0x1 - strb r0, [r1] -_080A2AB8: - adds r6, 0x1 - cmp r6, 0x2D - ble _080A2A84 - b _080A2AF0 -_080A2AC0: - movs r6, 0 -_080A2AC2: - lsls r0, r6, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - bl sub_80A2620 - adds r5, r0, 0 - ldrb r0, [r5, 0x11] - cmp r0, 0 - beq _080A2AEA - adds r0, r4, 0 - bl sub_8097384 - lsls r0, 24 - cmp r0, 0 - beq _080A2AEA - ldrb r0, [r5, 0xC] - mov r2, sp - adds r1, r2, r0 - movs r0, 0x1 - strb r0, [r1] -_080A2AEA: - adds r6, 0x1 - cmp r6, 0x2D - ble _080A2AC2 -_080A2AF0: - movs r6, 0 -_080A2AF2: - mov r1, sp - adds r0, r1, r6 - ldrb r0, [r0] - cmp r0, 0 - beq _080A2B04 - mov r2, r8 - adds r0, r2, r7 - strb r6, [r0] - adds r7, 0x1 -_080A2B04: - adds r6, 0x1 - cmp r6, 0x3E - ble _080A2AF2 - adds r0, r7, 0 - add sp, 0x40 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A2A5C - - thumb_func_start sub_80A2B18 -sub_80A2B18: - lsls r0, 16 - ldr r1, _080A2B24 - asrs r0, 14 - adds r0, r1 - ldr r0, [r0] - bx lr - .align 2, 0 -_080A2B24: .4byte gUnknown_8117000 - thumb_func_end sub_80A2B18 - - thumb_func_start sub_80A2B28 -sub_80A2B28: - push {lr} - movs r0, 0 - movs r1, 0x11 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - bl sub_80A2B18 - pop {r1} - bx r1 - thumb_func_end sub_80A2B28 - - thumb_func_start sub_80A2B40 -sub_80A2B40: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r2, _080A2BFC - adds r0, r5, r2 - ldm r1!, {r2-r4} - stm r0!, {r2-r4} - ldm r1!, {r2-r4} - stm r0!, {r2-r4} - ldr r3, _080A2C00 - adds r0, r5, r3 - movs r4, 0 - ldrsh r1, [r0, r4] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - movs r1, 0x6 - bl MemoryAlloc - movs r2, 0xA9 - lsls r2, 3 - adds r1, r5, r2 - str r0, [r1] - movs r6, 0 - movs r3, 0xA7 - lsls r3, 3 - adds r0, r5, r3 - movs r4, 0 - ldrsh r0, [r0, r4] - cmp r6, r0 - bge _080A2BC0 -_080A2B7C: - lsls r4, r6, 2 - ldr r0, _080A2C04 - adds r2, r5, r0 - adds r2, r4 - ldr r1, _080A2C08 - adds r0, r5, r1 - movs r3, 0 - ldrsh r0, [r0, r3] - adds r1, r6, 0x2 - adds r0, r1 - lsls r0, 11 - ldr r1, _080A2C0C - adds r0, r1 - str r0, [r2] - ldr r1, _080A2C10 - adds r0, r5, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - lsls r0, 7 - movs r1, 0x6 - bl MemoryAlloc - ldr r3, _080A2C14 - adds r1, r5, r3 - adds r1, r4 - str r0, [r1] - adds r6, 0x1 - movs r4, 0xA7 - lsls r4, 3 - adds r0, r5, r4 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r6, r0 - blt _080A2B7C -_080A2BC0: - cmp r6, 0x1 - bgt _080A2BD8 - movs r1, 0 - lsls r0, r6, 2 - ldr r2, _080A2C14 - adds r0, r2 - adds r0, r5 -_080A2BCE: - str r1, [r0, 0x8] - stm r0!, {r1} - adds r6, 0x1 - cmp r6, 0x1 - ble _080A2BCE -_080A2BD8: - movs r3, 0xA8 - lsls r3, 3 - adds r0, r5, r3 - ldr r1, [r0] - cmp r1, 0 - beq _080A2C20 - ldr r4, _080A2C18 - adds r0, r5, r4 - movs r1, 0 - ldrsh r0, [r0, r1] - lsls r0, 8 - movs r1, 0x6 - bl MemoryAlloc - ldr r2, _080A2C1C - adds r1, r5, r2 - str r0, [r1] - b _080A2C26 - .align 2, 0 -_080A2BFC: .4byte 0x0000052c -_080A2C00: .4byte 0x00000534 -_080A2C04: .4byte 0x00000554 -_080A2C08: .4byte 0x00000536 -_080A2C0C: .4byte gUnknown_202B038 -_080A2C10: .4byte 0x0000053c -_080A2C14: .4byte 0x0000054c -_080A2C18: .4byte 0x0000053a -_080A2C1C: .4byte 0x00000544 -_080A2C20: - ldr r3, _080A2CF0 - adds r0, r5, r3 - str r1, [r0] -_080A2C26: - movs r4, 0x86 - lsls r4, 3 - adds r0, r5, r4 - movs r1, 0 - str r1, [r0] - ldr r2, _080A2CF4 - adds r0, r5, r2 - str r1, [r0] - movs r3, 0x87 - lsls r3, 3 - adds r0, r5, r3 - str r1, [r0] - adds r4, 0xC - adds r0, r5, r4 - str r1, [r0] - adds r2, 0xC - adds r0, r5, r2 - str r1, [r0] - adds r3, 0xF2 - adds r0, r5, r3 - strb r1, [r0] - adds r4, 0x8 - adds r2, r5, r4 - ldr r0, _080A2CF8 - strh r0, [r2] - movs r2, 0x8D - lsls r2, 3 - adds r0, r5, r2 - str r1, [r0] - subs r3, 0xE2 - adds r0, r5, r3 - strb r1, [r0] - adds r4, 0x5 - adds r0, r5, r4 - strb r1, [r0] - subs r2, 0x1E - adds r0, r5, r2 - strb r1, [r0] - adds r3, 0x3 - adds r0, r5, r3 - strb r1, [r0] - adds r4, 0x3 - adds r0, r5, r4 - strb r1, [r0] - adds r2, 0x3 - adds r0, r5, r2 - strb r1, [r0] - adds r2, r5, 0 - adds r3, 0x21 - adds r0, r5, r3 - str r1, [r0] - adds r4, 0x24 - adds r0, r5, r4 - strb r1, [r0] - adds r3, 0x5 - adds r0, r5, r3 - strb r1, [r0] - movs r0, 0 - movs r1, 0xD -_080A2C9C: - strh r0, [r2] - strh r0, [r2, 0x2] - str r0, [r2, 0x8] - str r0, [r2, 0x4] - subs r1, 0x1 - adds r2, 0x10 - cmp r1, 0 - bge _080A2C9C - movs r1, 0 - movs r4, 0xF8 - lsls r4, 2 - adds r0, r5, r4 - movs r2, 0x1 -_080A2CB6: - strb r1, [r0] - strb r1, [r0, 0x1] - strh r1, [r0, 0x2] - strh r1, [r0, 0x4] - str r1, [r0, 0x8] - str r1, [r0, 0xC] - str r1, [r0, 0x14] - str r1, [r0, 0x10] - str r1, [r0, 0x1C] - str r1, [r0, 0x18] - str r1, [r0, 0x20] - str r1, [r0, 0x24] - adds r0, 0x28 - subs r2, 0x1 - cmp r2, 0 - bge _080A2CB6 - movs r4, 0 -_080A2CD8: - adds r0, r5, 0 - adds r1, r4, 0 - ldr r2, _080A2CFC - bl sub_80A456C - adds r4, 0x1 - cmp r4, 0x1 - ble _080A2CD8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A2CF0: .4byte 0x00000544 -_080A2CF4: .4byte 0x00000434 -_080A2CF8: .4byte 0x0000ffff -_080A2CFC: .4byte gUnknown_81172B8 - thumb_func_end sub_80A2B40 - - thumb_func_start sub_80A2D00 -sub_80A2D00: - push {r4-r7,lr} - adds r6, r0, 0 - bl sub_80A2DD4 - ldr r0, _080A2D5C - adds r4, r6, r0 - ldr r0, [r4] - cmp r0, 0 - beq _080A2D1A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080A2D1A: - movs r1, 0xA9 - lsls r1, 3 - adds r4, r6, r1 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - movs r5, 0 - movs r7, 0 -_080A2D2E: - lsls r2, r5, 2 - ldr r1, _080A2D60 - adds r0, r6, r1 - adds r1, r0, r2 - ldr r0, [r1] - cmp r0, 0 - beq _080A2D3E - str r7, [r1] -_080A2D3E: - ldr r1, _080A2D64 - adds r0, r6, r1 - adds r4, r0, r2 - ldr r0, [r4] - cmp r0, 0 - beq _080A2D50 - bl MemoryFree - str r7, [r4] -_080A2D50: - adds r5, 0x1 - cmp r5, 0x1 - ble _080A2D2E - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A2D5C: .4byte 0x00000544 -_080A2D60: .4byte 0x00000554 -_080A2D64: .4byte 0x0000054c - thumb_func_end sub_80A2D00 - - thumb_func_start sub_80A2D68 -sub_80A2D68: - push {r4,lr} - ldr r1, _080A2D84 - adds r4, r0, r1 - ldr r0, [r4] - cmp r0, 0 - beq _080A2D7C - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080A2D7C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A2D84: .4byte 0x00000544 - thumb_func_end sub_80A2D68 - - thumb_func_start sub_80A2D88 -sub_80A2D88: - push {r4-r7,lr} - adds r6, r0, 0 - movs r0, 0xA8 - lsls r0, 3 - adds r7, r6, r0 - ldr r0, [r7] - cmp r0, 0 - beq _080A2DC6 - movs r1, 0x89 - lsls r1, 3 - adds r5, r6, r1 - ldr r2, _080A2DCC - adds r4, r6, r2 - movs r1, 0 - ldrsh r0, [r4, r1] - lsls r0, 8 - movs r1, 0x6 - bl MemoryAlloc - ldr r2, _080A2DD0 - adds r1, r6, r2 - str r0, [r1] - subs r2, 0xDC - adds r1, r6, r2 - ldr r1, [r1] - movs r2, 0 - ldrsh r3, [r4, r2] - ldr r4, [r7] - adds r2, r5, 0 - bl _call_via_r4 -_080A2DC6: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A2DCC: .4byte 0x0000053a -_080A2DD0: .4byte 0x00000544 - thumb_func_end sub_80A2D88 - - thumb_func_start sub_80A2DD4 -sub_80A2DD4: - push {r4-r6,lr} - adds r6, r0, 0 - movs r0, 0xFA - lsls r0, 2 - adds r4, r6, r0 - movs r5, 0x1 -_080A2DE0: - ldr r0, [r4] - cmp r0, 0 - beq _080A2DEE - bl CloseFile - movs r0, 0 - str r0, [r4] -_080A2DEE: - adds r4, 0x28 - subs r5, 0x1 - cmp r5, 0 - bge _080A2DE0 - ldr r0, _080A2E5C - adds r4, r6, r0 - ldr r0, [r4] - cmp r0, 0 - beq _080A2E08 - bl CloseFile - movs r0, 0 - str r0, [r4] -_080A2E08: - movs r0, 0x88 - lsls r0, 3 - adds r4, r6, r0 - ldr r0, [r4] - cmp r0, 0 - beq _080A2E1C - bl CloseFile - movs r0, 0 - str r0, [r4] -_080A2E1C: - movs r0, 0x86 - lsls r0, 3 - adds r4, r6, r0 - ldr r0, [r4] - cmp r0, 0 - beq _080A2E30 - bl CloseFile - movs r0, 0 - str r0, [r4] -_080A2E30: - ldr r0, _080A2E60 - adds r4, r6, r0 - ldr r0, [r4] - cmp r0, 0 - beq _080A2E42 - bl CloseFile - movs r0, 0 - str r0, [r4] -_080A2E42: - movs r0, 0x87 - lsls r0, 3 - adds r4, r6, r0 - ldr r0, [r4] - cmp r0, 0 - beq _080A2E56 - bl CloseFile - movs r0, 0 - str r0, [r4] -_080A2E56: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A2E5C: .4byte 0x0000043c -_080A2E60: .4byte 0x00000434 - thumb_func_end sub_80A2DD4 - - thumb_func_start sub_80A2E64 -sub_80A2E64: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r7, r0, 0 - bl sub_80A2DD4 - ldr r0, _080A2FA4 - adds r1, r7, r0 - ldr r0, _080A2FA8 - strh r0, [r1] - movs r1, 0xA5 - lsls r1, 3 - adds r0, r7, r1 - movs r1, 0 - movs r2, 0 - strh r2, [r0] - movs r3, 0x89 - lsls r3, 3 - adds r0, r7, r3 - strb r1, [r0] - ldr r4, _080A2FAC - adds r0, r7, r4 - strb r1, [r0] - adds r3, 0x2 - adds r0, r7, r3 - strb r1, [r0] - adds r4, 0x2 - adds r0, r7, r4 - strb r1, [r0] - adds r3, 0x2 - adds r0, r7, r3 - strb r1, [r0] - adds r4, 0x2 - adds r0, r7, r4 - strb r1, [r0] - adds r3, r7, 0 - adds r4, 0x1F - adds r0, r7, r4 - str r2, [r0] - movs r2, 0x8E - lsls r2, 3 - adds r0, r7, r2 - strb r1, [r0] - adds r4, 0x5 - adds r0, r7, r4 - strb r1, [r0] - movs r0, 0 - movs r1, 0xD -_080A2ECA: - strh r0, [r3] - strh r0, [r3, 0x2] - str r0, [r3, 0x8] - str r0, [r3, 0x4] - subs r1, 0x1 - adds r3, 0x10 - cmp r1, 0 - bge _080A2ECA - movs r1, 0 - movs r2, 0xF8 - lsls r2, 2 - adds r0, r7, r2 - movs r2, 0x1 -_080A2EE4: - strb r1, [r0] - strb r1, [r0, 0x1] - strh r1, [r0, 0x2] - strh r1, [r0, 0x4] - str r1, [r0, 0x8] - str r1, [r0, 0xC] - str r1, [r0, 0x14] - str r1, [r0, 0x10] - str r1, [r0, 0x1C] - str r1, [r0, 0x18] - str r1, [r0, 0x20] - str r1, [r0, 0x24] - adds r0, 0x28 - subs r2, 0x1 - cmp r2, 0 - bge _080A2EE4 - ldr r3, _080A2FB0 - adds r0, r7, r3 - movs r4, 0 - ldrsh r0, [r0, r4] - lsls r0, 20 - lsrs r6, r0, 16 - movs r5, 0 - ldr r1, _080A2FB4 - adds r0, r7, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r5, r0 - bge _080A2F78 - mov r10, r5 - add r4, sp, 0x4 - movs r3, 0xFF - mov r9, r3 -_080A2F26: - mov r0, r10 - str r0, [sp] - ldrb r0, [r4] - mov r1, r9 - orrs r0, r1 - strb r0, [r4] - ldrb r0, [r4, 0x1] - orrs r0, r1 - strb r0, [r4, 0x1] - ldrb r0, [r4, 0x2] - orrs r0, r1 - strb r0, [r4, 0x2] - mov r2, r10 - strb r2, [r4, 0x3] - adds r0, r6, 0 - adds r1, r0, 0x1 - lsls r1, 16 - lsrs r6, r1, 16 - ldr r1, [sp] - bl sub_8003810 - adds r5, 0x1 - mov r8, r5 - movs r5, 0xE -_080A2F56: - adds r0, r6, 0 - adds r1, r0, 0x1 - lsls r1, 16 - lsrs r6, r1, 16 - ldr r1, [sp, 0x4] - bl sub_8003810 - subs r5, 0x1 - cmp r5, 0 - bge _080A2F56 - mov r5, r8 - ldr r3, _080A2FB4 - adds r0, r7, r3 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r5, r0 - blt _080A2F26 -_080A2F78: - adds r0, r7, 0 - movs r1, 0 - bl sub_80A3BB0 - movs r2, 0x91 - lsls r2, 3 - adds r0, r7, r2 - bl sub_80A3EB0 - ldr r3, _080A2FB8 - adds r1, r7, r3 - movs r0, 0x1 - strb r0, [r1] - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A2FA4: .4byte 0x00000444 -_080A2FA8: .4byte 0x0000ffff -_080A2FAC: .4byte 0x00000449 -_080A2FB0: .4byte 0x0000052c -_080A2FB4: .4byte 0x0000052e -_080A2FB8: .4byte 0x0000052a - thumb_func_end sub_80A2E64 - - thumb_func_start sub_80A2FBC -sub_80A2FBC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - mov r9, r0 - lsls r1, 16 - asrs r4, r1, 16 - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - bne _080A2FDE - mov r0, r9 - bl sub_80A2E64 - b _080A3428 -_080A2FDE: - mov r0, r9 - bl sub_80A2DD4 - ldr r0, _080A3284 - add r0, r9 - strh r4, [r0] - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - ldr r1, _080A3288 - adds r0, r1 - str r0, [sp, 0xC] - ldr r0, [r0] - ldr r4, _080A328C - adds r1, r4, 0 - bl OpenFileAndGetFileDataPtr - movs r6, 0x86 - lsls r6, 3 - add r6, r9 - str r0, [r6] - ldr r1, [sp, 0xC] - ldr r0, [r1, 0x4] - adds r1, r4, 0 - bl OpenFileAndGetFileDataPtr - ldr r5, _080A3290 - add r5, r9 - str r0, [r5] - ldr r2, [sp, 0xC] - ldr r0, [r2, 0x8] - adds r1, r4, 0 - bl OpenFileAndGetFileDataPtr - movs r1, 0x87 - lsls r1, 3 - add r1, r9 - str r0, [r1] - ldr r1, [r6] - ldr r1, [r1, 0x4] - str r1, [sp, 0x18] - ldr r1, [r5] - ldr r1, [r1, 0x4] - mov r8, r1 - ldr r6, [r0, 0x4] - ldr r3, _080A3294 - add r3, r9 - str r3, [sp, 0x10] - ldr r4, _080A3298 - add r4, r9 - str r4, [sp, 0x14] - movs r5, 0x89 - lsls r5, 3 - add r5, r9 - mov r10, r5 - ldr r7, [sp, 0x18] - ldrb r0, [r7] - strh r0, [r3] - adds r0, r7, 0 - adds r0, 0x2 - str r0, [sp, 0x18] - ldrb r0, [r0] - strh r0, [r3, 0x2] - ldr r1, [sp, 0x18] - adds r1, 0x2 - str r1, [sp, 0x18] - mov r2, r8 - ldrh r0, [r2] - strh r0, [r4] - movs r3, 0x2 - add r8, r3 - mov r4, r8 - ldrh r0, [r4] - ldr r5, [sp, 0x14] - strh r0, [r5, 0x2] - add r8, r3 - mov r7, r8 - ldrh r0, [r7] - strh r0, [r5, 0x4] - add r8, r3 - add r3, sp, 0x8 - ldr r0, _080A329C - add r0, r9 - str r0, [sp, 0x1C] - adds r1, r0, 0 - movs r2, 0x3 -_080A308A: - mov r4, r8 - ldrh r0, [r4] - strh r0, [r1] - movs r5, 0x2 - add r8, r5 - adds r1, 0x2 - subs r2, 0x1 - cmp r2, 0 - bge _080A308A - mov r7, r8 - ldrh r0, [r7] - movs r2, 0 - movs r1, 0 - ldr r4, [sp, 0x14] - strh r0, [r4, 0xE] - add r8, r5 - ldrb r0, [r6] - mov r5, r10 - strb r0, [r5] - adds r6, 0x1 - ldrb r0, [r6] - strb r0, [r5, 0x1] - adds r6, 0x1 - ldrb r0, [r6] - strb r0, [r5, 0x2] - adds r6, 0x1 - ldrb r0, [r6] - strb r0, [r5, 0x3] - adds r6, 0x1 - ldrb r0, [r6] - strb r0, [r5, 0x4] - adds r6, 0x1 - ldrb r0, [r6] - strb r0, [r5, 0x5] - adds r6, 0x1 - ldrb r0, [r6] - strh r0, [r5, 0x6] - adds r6, 0x2 - ldrb r0, [r6] - strh r0, [r5, 0x8] - adds r6, 0x2 - ldrb r0, [r6] - strh r0, [r5, 0xA] - adds r6, 0x2 - ldr r7, [sp, 0x18] - ldr r0, _080A32A0 - add r0, r9 - movs r4, 0 - ldrsh r0, [r0, r4] - lsls r0, 20 - lsrs r5, r0, 16 - str r1, [sp, 0x4] - movs r0, 0xFF - strb r0, [r3] - movs r0, 0x1 - negs r0, r0 - strb r0, [r3, 0x1] - strb r0, [r3, 0x2] - strb r2, [r3, 0x3] - movs r4, 0 - ldr r1, [sp, 0x10] - movs r2, 0 - ldrsh r0, [r1, r2] - ldr r3, [sp, 0xC] - adds r3, 0xC - str r3, [sp, 0x20] - cmp r4, r0 - bge _080A3158 - ldr r0, _080A32A4 - add r0, r9 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r4, r0 - bge _080A3198 -_080A311E: - adds r0, r5, 0 - adds r1, r0, 0x1 - lsls r1, 16 - lsrs r5, r1, 16 - ldr r1, [sp, 0x4] - bl sub_8003810 - adds r0, r5, 0 - adds r1, r7, 0 - movs r2, 0xF - bl sub_809971C - adds r0, r5, 0 - adds r0, 0xF - lsls r0, 16 - lsrs r5, r0, 16 - adds r7, 0x3C - adds r4, 0x1 - ldr r2, [sp, 0x10] - movs r3, 0 - ldrsh r0, [r2, r3] - cmp r4, r0 - bge _080A3158 - ldr r0, _080A32A4 - add r0, r9 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r4, r0 - blt _080A311E -_080A3158: - ldr r0, _080A32A4 - add r0, r9 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r4, r0 - bge _080A3198 -_080A3164: - adds r0, r5, 0 - adds r1, r0, 0x1 - lsls r1, 16 - lsrs r5, r1, 16 - ldr r1, [sp, 0x4] - bl sub_8003810 - adds r7, r4, 0x1 - movs r4, 0xE -_080A3176: - adds r0, r5, 0 - adds r1, r0, 0x1 - lsls r1, 16 - lsrs r5, r1, 16 - ldr r1, [sp, 0x8] - bl sub_8003810 - subs r4, 0x1 - cmp r4, 0 - bge _080A3176 - adds r4, r7, 0 - ldr r0, _080A32A4 - add r0, r9 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r4, r0 - blt _080A3164 -_080A3198: - movs r0, 0xA6 - lsls r0, 3 - add r0, r9 - movs r4, 0 - ldrsh r0, [r0, r4] - lsls r0, 5 - ldr r5, _080A32A8 - adds r0, r5 - ldr r4, _080A32A0 - add r4, r9 - ldr r5, _080A3298 - add r5, r9 - mov r1, r8 - adds r2, r4, 0 - adds r3, r5, 0 - bl sub_80A37C4 - movs r0, 0xA9 - lsls r0, 3 - add r0, r9 - ldr r0, [r0] - movs r1, 0xA5 - lsls r1, 3 - add r1, r9 - ldr r7, [sp, 0x14] - movs r3, 0x4 - ldrsh r2, [r7, r3] - subs r2, 0x1 - lsls r2, 5 - add r2, r8 - str r5, [sp] - adds r3, r4, 0 - bl _UncompressCell - ldr r0, _080A32AC - add r0, r9 - movs r3, 0x89 - lsls r3, 3 - add r3, r9 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_80A3908 - adds r6, r0, 0 - movs r0, 0x8D - lsls r0, 3 - add r0, r9 - str r6, [r0] - ldr r0, _080A32B0 - add r0, r9 - ldr r2, [r0] - cmp r2, 0 - beq _080A321C - movs r1, 0xA8 - lsls r1, 3 - add r1, r9 - ldr r0, _080A32B4 - add r0, r9 - movs r4, 0 - ldrsh r3, [r0, r4] - ldr r4, [r1] - adds r0, r2, 0 - adds r1, r6, 0 - mov r2, r10 - bl _call_via_r4 -_080A321C: - mov r2, r9 - movs r4, 0 - ldr r5, [sp, 0x10] - movs r6, 0x2 - ldrsh r0, [r5, r6] - cmp r0, 0 - beq _080A32E4 - movs r7, 0 - ldrsh r1, [r5, r7] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - ldr r5, [sp, 0x18] - adds r3, r5, r0 - lsls r1, 2 - adds r6, r3, r1 - ldr r0, _080A32B8 - add r0, r9 - str r3, [r0] - movs r0, 0x8E - lsls r0, 3 - add r0, r9 - movs r1, 0x1 - strb r1, [r0] - ldr r0, _080A32BC - add r0, r9 - strb r1, [r0] - ldr r7, [sp, 0x10] - movs r1, 0 - ldrsh r0, [r7, r1] - cmp r4, r0 - bge _080A32F8 - ldr r1, _080A32A4 - add r1, r9 - movs r5, 0 - ldrsh r0, [r1, r5] - cmp r4, r0 - bge _080A32F8 - movs r5, 0 - mov r8, r1 -_080A326C: - movs r7, 0x2 - ldrsh r0, [r3, r7] - cmp r0, 0 - ble _080A32C0 - str r6, [r2, 0x4] - movs r0, 0x2 - ldrsh r1, [r3, r0] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r6, r0 - b _080A32C2 - .align 2, 0 -_080A3284: .4byte 0x00000444 -_080A3288: .4byte gUnknown_81188F0 -_080A328C: .4byte gUnknown_9890000 -_080A3290: .4byte 0x00000434 -_080A3294: .4byte 0x00000464 -_080A3298: .4byte 0x00000454 -_080A329C: .4byte 0x0000045a -_080A32A0: .4byte 0x0000052c -_080A32A4: .4byte 0x0000052e -_080A32A8: .4byte 0x06008000 -_080A32AC: .4byte 0x0000054c -_080A32B0: .4byte 0x00000544 -_080A32B4: .4byte 0x0000053a -_080A32B8: .4byte 0x0000046c -_080A32BC: .4byte 0x00000471 -_080A32C0: - str r5, [r2, 0x4] -_080A32C2: - strh r5, [r2] - strh r5, [r2, 0x2] - str r5, [r2, 0x8] - adds r4, 0x1 - adds r2, 0x10 - adds r3, 0x4 - ldr r1, [sp, 0x10] - movs r7, 0 - ldrsh r0, [r1, r7] - cmp r4, r0 - bge _080A32F8 - mov r1, r8 - movs r7, 0 - ldrsh r0, [r1, r7] - cmp r4, r0 - blt _080A326C - b _080A32F8 -_080A32E4: - ldr r0, _080A3384 - add r0, r9 - str r4, [r0] - movs r0, 0x8E - lsls r0, 3 - add r0, r9 - strb r4, [r0] - ldr r0, _080A3388 - add r0, r9 - strb r4, [r0] -_080A32F8: - cmp r4, 0xD - bgt _080A330E - movs r0, 0 -_080A32FE: - strh r0, [r2] - strh r0, [r2, 0x2] - str r0, [r2, 0x8] - str r0, [r2, 0x4] - adds r4, 0x1 - adds r2, 0x10 - cmp r4, 0xD - ble _080A32FE -_080A330E: - movs r0, 0xA6 - lsls r0, 3 - add r0, r9 - movs r1, 0 - ldrsh r0, [r0, r1] - ldr r2, [sp, 0x14] - movs r3, 0x4 - ldrsh r1, [r2, r3] - adds r0, r1 - lsls r0, 5 - ldr r4, _080A338C - adds r5, r0, r4 - movs r7, 0 - movs r6, 0 - mov r8, r6 - movs r4, 0xF8 - lsls r4, 2 - add r4, r9 - ldr r0, [sp, 0x1C] - str r0, [sp, 0x28] - ldr r3, [sp, 0x20] -_080A3338: - ldr r0, [r3] - cmp r0, 0 - beq _080A3394 - ldr r1, _080A3390 - str r3, [sp, 0x24] - bl OpenFileAndGetFileDataPtr - str r0, [r4, 0x8] - movs r1, 0x1 - strb r1, [r4] - strb r1, [r4, 0x1] - ldr r2, [r0, 0x4] - str r2, [r4, 0xC] - adds r1, r2, 0x4 - movs r0, 0x2 - ldrsh r6, [r2, r0] - lsls r6, 2 - adds r0, r1, r6 - str r1, [r4, 0x14] - str r1, [r4, 0x10] - str r0, [r4, 0x1C] - str r0, [r4, 0x18] - mov r1, r8 - strh r1, [r4, 0x2] - ldr r0, [r2, 0x4] - strh r0, [r4, 0x4] - str r5, [r4, 0x20] - ldr r2, [sp, 0x28] - movs r6, 0 - ldrsh r0, [r2, r6] - lsls r0, 5 - str r0, [r4, 0x24] - movs r1, 0 - ldrsh r0, [r2, r1] - lsls r0, 5 - adds r5, r0 - ldr r3, [sp, 0x24] - b _080A33AC - .align 2, 0 -_080A3384: .4byte 0x0000046c -_080A3388: .4byte 0x00000471 -_080A338C: .4byte 0x06008000 -_080A3390: .4byte gUnknown_9890000 -_080A3394: - strb r0, [r4] - strb r0, [r4, 0x1] - strh r0, [r4, 0x4] - strh r0, [r4, 0x2] - str r0, [r4, 0x8] - str r0, [r4, 0xC] - str r0, [r4, 0x14] - str r0, [r4, 0x10] - str r0, [r4, 0x1C] - str r0, [r4, 0x18] - str r0, [r4, 0x20] - str r0, [r4, 0x24] -_080A33AC: - adds r4, 0x28 - ldr r2, [sp, 0x28] - adds r2, 0x2 - str r2, [sp, 0x28] - adds r3, 0x4 - adds r7, 0x1 - cmp r7, 0x1 - ble _080A3338 - cmp r7, 0x3 - bgt _080A340E -_080A33C0: - lsls r0, r7, 2 - ldr r3, [sp, 0x20] - adds r0, r3, r0 - ldr r0, [r0] - adds r4, r7, 0x1 - cmp r0, 0 - beq _080A3408 - ldr r1, _080A3438 - bl OpenFileAndGetFileDataPtr - adds r3, r0, 0 - ldr r0, [r3, 0x4] - adds r1, r0, 0x4 - movs r6, 0x2 - ldrsh r0, [r0, r6] - lsls r0, 2 - adds r1, r0 - lsls r0, r7, 1 - ldr r7, [sp, 0x1C] - adds r0, r7, r0 - movs r2, 0 - ldrsh r0, [r0, r2] - lsls r0, 4 - cmp r0, 0 - ble _080A3402 - adds r2, r0, 0 -_080A33F4: - ldrh r0, [r1] - strh r0, [r5] - adds r1, 0x2 - adds r5, 0x2 - subs r2, 0x1 - cmp r2, 0 - bne _080A33F4 -_080A3402: - adds r0, r3, 0 - bl CloseFile -_080A3408: - adds r7, r4, 0 - cmp r7, 0x3 - ble _080A33C0 -_080A340E: - mov r0, r9 - movs r1, 0 - bl sub_80A3BB0 - movs r0, 0x91 - lsls r0, 3 - add r0, r9 - bl sub_80A3EB0 - ldr r1, _080A343C - add r1, r9 - movs r0, 0x1 - strb r0, [r1] -_080A3428: - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A3438: .4byte gUnknown_9890000 -_080A343C: .4byte 0x0000052a - thumb_func_end sub_80A2FBC - - thumb_func_start sub_80A3440 -sub_80A3440: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4C - mov r9, r0 - str r2, [sp, 0x34] - str r3, [sp, 0x38] - lsls r1, 16 - asrs r5, r1, 16 - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - beq _080A3464 - ldrb r0, [r2] - cmp r0, 0x63 - bne _080A346C -_080A3464: - mov r0, r9 - bl sub_80A2E64 - b _080A376C -_080A346C: - mov r0, r9 - adds r1, r5, 0 - bl sub_80A2FBC - mov r0, r9 - bl sub_80A2DD4 - ldr r0, _080A377C - add r0, r9 - strh r5, [r0] - lsls r4, r5, 3 - subs r4, r5 - lsls r4, 2 - ldr r0, _080A3780 - adds r4, r0 - ldr r0, [r4] - ldr r5, _080A3784 - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - movs r1, 0x86 - lsls r1, 3 - add r1, r9 - mov r8, r1 - str r0, [r1] - ldr r0, [r4, 0x4] - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - ldr r6, _080A3788 - add r6, r9 - str r0, [r6] - ldr r0, [r4, 0x8] - adds r1, r5, 0 - bl OpenFileAndGetFileDataPtr - movs r1, 0x87 - lsls r1, 3 - add r1, r9 - str r0, [r1] - mov r2, r8 - ldr r1, [r2] - ldr r2, [r1, 0x4] - ldr r1, [r6] - ldr r3, [r1, 0x4] - ldr r7, [r0, 0x4] - ldr r1, _080A378C - add r1, r9 - ldr r4, _080A3790 - add r4, r9 - str r4, [sp, 0x3C] - movs r0, 0x89 - lsls r0, 3 - add r0, r9 - mov r10, r0 - ldrb r0, [r2] - strh r0, [r1] - ldrb r0, [r2, 0x2] - strh r0, [r1, 0x2] - ldrh r0, [r3] - strh r0, [r4] - adds r3, 0x2 - ldrh r0, [r3] - strh r0, [r4, 0x2] - adds r3, 0x2 - ldrh r0, [r3] - strh r0, [r4, 0x4] - adds r3, 0x2 - add r5, sp, 0x2C - ldr r1, _080A3794 - add r1, r9 - str r1, [sp, 0x48] - movs r2, 0x3 -_080A34FE: - ldrh r0, [r3] - strh r0, [r1] - adds r3, 0x2 - adds r1, 0x2 - subs r2, 0x1 - cmp r2, 0 - bge _080A34FE - ldrh r0, [r3] - movs r2, 0 - mov r8, r2 - ldr r4, [sp, 0x3C] - strh r0, [r4, 0xE] - ldrb r0, [r7] - mov r1, r10 - strb r0, [r1] - adds r7, 0x1 - ldrb r0, [r7] - strb r0, [r1, 0x1] - adds r7, 0x1 - ldrb r0, [r7] - strb r0, [r1, 0x2] - adds r7, 0x1 - ldrb r0, [r7] - strb r0, [r1, 0x3] - adds r7, 0x1 - ldrb r0, [r7] - strb r0, [r1, 0x4] - adds r7, 0x1 - ldrb r0, [r7] - strb r0, [r1, 0x5] - adds r7, 0x1 - ldrb r0, [r7] - strh r0, [r1, 0x6] - adds r7, 0x2 - ldrb r0, [r7] - strh r0, [r1, 0x8] - adds r7, 0x2 - ldrb r0, [r7] - strh r0, [r1, 0xA] - adds r7, 0x2 - ldr r4, _080A3798 - add r4, r9 - ldr r0, [r4] - str r0, [sp, 0x2C] - str r2, [r5, 0x4] - ldr r2, _080A379C - add r2, r9 - movs r3, 0x89 - lsls r3, 3 - add r3, r9 - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_80A3908 - adds r7, r0, 0 - movs r0, 0x8D - lsls r0, 3 - add r0, r9 - str r7, [r0] - ldr r5, _080A37A0 - add r5, r9 - movs r6, 0x88 - lsls r6, 3 - add r6, r9 - ldr r2, _080A37A4 - movs r0, 0xA9 - lsls r0, 3 - add r0, r9 - ldr r3, [r0] - ldr r0, _080A37A8 - add r0, r9 - ldr r0, [r0] - str r0, [sp] - ldr r0, [sp, 0x34] - str r0, [sp, 0x4] - ldr r1, [sp, 0x38] - str r1, [sp, 0x8] - movs r0, 0x40 - str r0, [sp, 0xC] - mov r1, r10 - ldrb r0, [r1, 0x5] - str r0, [sp, 0x10] - ldr r0, [r4] - str r0, [sp, 0x14] - mov r0, r8 - str r0, [sp, 0x18] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80ADD9C - ldr r0, [r5] - movs r1, 0 - bl GetFileDataPtr - ldr r0, [r6] - movs r1, 0 - bl GetFileDataPtr - movs r2, 0xA8 - lsls r2, 3 - add r2, r9 - ldr r0, [r4] - ldr r1, _080A37AC - add r1, r9 - movs r4, 0 - ldrsh r3, [r1, r4] - ldr r4, [r2] - adds r1, r7, 0 - mov r2, r10 - bl _call_via_r4 - movs r0, 0x80 - lsls r0, 2 - ldr r1, [sp, 0x3C] - strh r0, [r1, 0x4] - ldr r1, [sp, 0x48] - movs r2, 0 - adds r0, r1, 0x6 -_080A35EA: - strh r2, [r0] - subs r0, 0x2 - cmp r0, r1 - bge _080A35EA - movs r2, 0 - movs r0, 0xFA - ldr r4, [sp, 0x3C] - strh r0, [r4, 0xE] - ldr r1, _080A378C - add r1, r9 - movs r0, 0xC - strh r0, [r1] - ldr r0, _080A37B0 - add r0, r9 - strh r2, [r0] - ldr r0, _080A37A0 - add r0, r9 - ldr r0, [r0] - cmp r0, 0 - beq _080A36E6 - ldr r4, [r0, 0x4] - movs r7, 0 - str r7, [sp, 0x1C] - add r1, sp, 0x20 - movs r0, 0xFF - strb r0, [r1] - movs r0, 0x1 - negs r0, r0 - strb r0, [r1, 0x1] - strb r0, [r1, 0x2] - movs r0, 0 - strb r0, [r1, 0x3] - movs r5, 0 - ldr r0, _080A37B4 - add r0, r9 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r5, r0 - bge _080A36E6 - mov r2, sp - adds r2, 0x28 - str r2, [sp, 0x40] - mov r0, sp - adds r0, 0x29 - str r0, [sp, 0x44] - movs r1, 0x2A - add r1, sp - mov r10, r1 - movs r2, 0x2B - add r2, sp - mov r8, r2 -_080A3650: - adds r0, r7, 0 - adds r1, r0, 0x1 - lsls r1, 16 - lsrs r7, r1, 16 - ldr r1, [sp, 0x1C] - bl sub_8003810 - adds r4, 0x4 - adds r6, r5, 0x1 - movs r5, 0xE -_080A3664: - ldrb r0, [r4] - ldr r1, [sp, 0x40] - strb r0, [r1] - ldrb r0, [r4, 0x1] - ldr r2, [sp, 0x44] - strb r0, [r2] - ldrb r0, [r4, 0x2] - mov r1, r10 - strb r0, [r1] - ldrb r0, [r4, 0x3] - mov r2, r8 - strb r0, [r2] - ldr r1, [sp, 0x28] - str r1, [sp, 0x24] - adds r0, r7, 0 - adds r2, r0, 0x1 - lsls r2, 16 - lsrs r7, r2, 16 - bl sub_8003810 - adds r4, 0x4 - subs r5, 0x1 - cmp r5, 0 - bge _080A3664 - adds r5, r6, 0 - cmp r5, 0xB - bgt _080A36A6 - ldr r0, _080A37B4 - add r0, r9 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r5, r0 - blt _080A3650 -_080A36A6: - ldr r0, _080A37B4 - add r0, r9 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r5, r0 - bge _080A36E6 -_080A36B2: - adds r0, r7, 0 - adds r1, r0, 0x1 - lsls r1, 16 - lsrs r7, r1, 16 - ldr r1, [sp, 0x1C] - bl sub_8003810 - adds r6, r5, 0x1 - movs r5, 0xE -_080A36C4: - adds r0, r7, 0 - adds r1, r0, 0x1 - lsls r1, 16 - lsrs r7, r1, 16 - ldr r1, [sp, 0x20] - bl sub_8003810 - subs r5, 0x1 - cmp r5, 0 - bge _080A36C4 - adds r5, r6, 0 - ldr r0, _080A37B4 - add r0, r9 - movs r4, 0 - ldrsh r0, [r0, r4] - cmp r5, r0 - blt _080A36B2 -_080A36E6: - mov r4, r9 - movs r0, 0x88 - lsls r0, 3 - add r0, r9 - ldr r1, [r0] - cmp r1, 0 - beq _080A36FE - mov r0, r9 - adds r0, 0xE0 - movs r2, 0x20 - bl sub_8004AA4 -_080A36FE: - ldr r0, _080A37B8 - add r0, r9 - movs r1, 0 - str r1, [r0] - movs r0, 0x8E - lsls r0, 3 - add r0, r9 - strb r1, [r0] - ldr r0, _080A37BC - add r0, r9 - strb r1, [r0] - movs r0, 0 - movs r1, 0xD -_080A3718: - strh r0, [r4] - strh r0, [r4, 0x2] - str r0, [r4, 0x8] - str r0, [r4, 0x4] - subs r1, 0x1 - adds r4, 0x10 - cmp r1, 0 - bge _080A3718 - movs r1, 0 - movs r0, 0xF8 - lsls r0, 2 - add r0, r9 - movs r2, 0x1 -_080A3732: - strb r1, [r0] - strb r1, [r0, 0x1] - strh r1, [r0, 0x4] - strh r1, [r0, 0x2] - str r1, [r0, 0x8] - str r1, [r0, 0xC] - str r1, [r0, 0x14] - str r1, [r0, 0x10] - str r1, [r0, 0x1C] - str r1, [r0, 0x18] - str r1, [r0, 0x20] - str r1, [r0, 0x24] - adds r0, 0x28 - subs r2, 0x1 - cmp r2, 0 - bge _080A3732 - mov r0, r9 - movs r1, 0 - bl sub_80A3BB0 - movs r0, 0x91 - lsls r0, 3 - add r0, r9 - bl sub_80A3EB0 - ldr r1, _080A37C0 - add r1, r9 - movs r0, 0x1 - strb r0, [r1] -_080A376C: - add sp, 0x4C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A377C: .4byte 0x00000444 -_080A3780: .4byte gUnknown_81188F0 -_080A3784: .4byte gUnknown_9890000 -_080A3788: .4byte 0x00000434 -_080A378C: .4byte 0x00000464 -_080A3790: .4byte 0x00000454 -_080A3794: .4byte 0x0000045a -_080A3798: .4byte 0x00000544 -_080A379C: .4byte 0x0000052c -_080A37A0: .4byte 0x0000043c -_080A37A4: .4byte 0x06008000 -_080A37A8: .4byte 0x0000054c -_080A37AC: .4byte 0x0000053a -_080A37B0: .4byte 0x00000466 -_080A37B4: .4byte 0x0000052e -_080A37B8: .4byte 0x0000046c -_080A37BC: .4byte 0x00000471 -_080A37C0: .4byte 0x0000052a - thumb_func_end sub_80A3440 - - thumb_func_start sub_80A37C4 -sub_80A37C4: - push {r4-r6,lr} - adds r6, r2, 0 - adds r4, r1, 0 - adds r2, r0, 0 - movs r0, 0 - movs r1, 0xF -_080A37D0: - strh r0, [r2] - adds r2, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _080A37D0 - movs r0, 0x1 - movs r1, 0x4 - ldrsh r3, [r3, r1] - cmp r0, r3 - bge _080A37FE - adds r5, r3, 0 -_080A37E6: - adds r3, r0, 0x1 - movs r1, 0xF -_080A37EA: - ldrh r0, [r4] - strh r0, [r2] - adds r4, 0x2 - adds r2, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _080A37EA - adds r0, r3, 0 - cmp r0, r5 - blt _080A37E6 -_080A37FE: - movs r3, 0x6 - ldrsh r1, [r6, r3] - cmp r0, r1 - bge _080A3820 - ldr r3, _080A3828 - adds r4, r3, 0 - adds r5, r1, 0 -_080A380C: - adds r3, r0, 0x1 - movs r1, 0xF -_080A3810: - strh r4, [r2] - adds r2, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _080A3810 - adds r0, r3, 0 - cmp r0, r5 - blt _080A380C -_080A3820: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A3828: .4byte 0x0000ffff - thumb_func_end sub_80A37C4 - - thumb_func_start _UncompressCell -_UncompressCell: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r1, 0 - mov r8, r3 - ldr r3, [sp, 0x18] - adds r4, r2, 0 - adds r2, r0, 0 - mov r1, r8 - ldrh r0, [r1] - lsls r0, 12 - ldrh r1, [r1, 0x4] - orrs r0, r1 - lsls r0, 16 - lsrs r6, r0, 16 - ldr r1, [r3] - ldr r0, _080A385C - cmp r1, r0 - bne _080A3860 - movs r0, 0x1 - strh r0, [r5] - movs r5, 0x4 - b _080A3890 - .align 2, 0 -_080A385C: .4byte 0x00020002 -_080A3860: - ldr r0, _080A3870 - cmp r1, r0 - bne _080A3874 - movs r0, 0x2 - strh r0, [r5] - movs r5, 0x9 - b _080A3890 - .align 2, 0 -_080A3870: .4byte 0x00030003 -_080A3874: - movs r0, 0 - strh r0, [r5] - ldr r0, _080A3888 - ldr r1, _080A388C - movs r4, 0 - ldrsh r2, [r3, r4] - movs r6, 0x2 - ldrsh r3, [r3, r6] - bl FatalError - .align 2, 0 -_080A3888: .4byte gUnknown_81172E8 -_080A388C: .4byte gUnknown_81172F4 -_080A3890: - movs r0, 0 - movs r1, 0x8 -_080A3894: - strh r0, [r2] - adds r2, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _080A3894 - movs r0, 0x1 - movs r7, 0xE - ldrsh r1, [r3, r7] - cmp r0, r1 - bge _080A38DC - mov r12, r1 -_080A38AA: - movs r1, 0 - adds r3, r0, 0x1 - cmp r1, r5 - bge _080A38C6 - adds r1, r5, 0 -_080A38B4: - ldrh r0, [r4] - adds r0, r6, r0 - strh r0, [r2] - adds r4, 0x2 - adds r2, 0x2 - subs r1, 0x1 - cmp r1, 0 - bne _080A38B4 - adds r1, r5, 0 -_080A38C6: - cmp r1, 0x8 - bgt _080A38D6 - movs r0, 0 -_080A38CC: - strh r0, [r2] - adds r2, 0x2 - adds r1, 0x1 - cmp r1, 0x8 - ble _080A38CC -_080A38D6: - adds r0, r3, 0 - cmp r0, r12 - blt _080A38AA -_080A38DC: - mov r1, r8 - movs r4, 0x8 - ldrsh r3, [r1, r4] - cmp r0, r3 - bge _080A38FE - movs r4, 0 - adds r5, r3, 0 -_080A38EA: - adds r3, r0, 0x1 - movs r1, 0x8 -_080A38EE: - strh r4, [r2] - adds r2, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _080A38EE - adds r0, r3, 0 - cmp r0, r5 - blt _080A38EA -_080A38FE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end _UncompressCell - - thumb_func_start sub_80A3908 -sub_80A3908: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - str r0, [sp] - str r2, [sp, 0x4] - mov r9, r3 - adds r6, r1, 0 - movs r2, 0 - ldr r1, [sp, 0x4] - movs r3, 0xC - ldrsh r0, [r1, r3] - cmp r2, r0 - blt _080A392A - b _080A3B6C -_080A392A: - lsls r0, r2, 2 - ldr r4, [sp] - adds r0, r4 - ldr r0, [r0] - mov r12, r0 - movs r1, 0 - adds r2, 0x1 - str r2, [sp, 0x8] - mov r5, r9 - ldrb r5, [r5, 0x5] - cmp r1, r5 - blt _080A3944 - b _080A3B2A -_080A3944: - ldr r0, _080A39A4 - mov r10, r0 -_080A3948: - movs r2, 0 - mov r8, r2 - cmp r1, 0 - bne _080A3A18 - movs r3, 0x1 - str r3, [sp, 0xC] - mov r4, r9 - ldrb r4, [r4, 0x4] - cmp r1, r4 - blt _080A395E - b _080A3B04 -_080A395E: - ldrb r1, [r6] - adds r6, 0x1 - cmp r1, 0xBF - ble _080A39A8 - adds r2, r1, 0 - subs r2, 0xBF - cmp r1, 0xBF - ble _080A39A0 - ldr r5, _080A39A4 - adds r4, r5, 0 - adds r3, r2, 0 -_080A3974: - ldrb r1, [r6] - ldrb r0, [r6, 0x1] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r6, 0x2] - lsls r0, 16 - orrs r1, r0 - adds r6, 0x3 - adds r0, r1, 0 - ands r0, r4 - mov r5, r12 - strh r0, [r5] - movs r0, 0x2 - add r12, r0 - asrs r1, 12 - ands r1, r4 - mov r5, r12 - strh r1, [r5] - add r12, r0 - subs r3, 0x1 - cmp r3, 0 - bne _080A3974 -_080A39A0: - lsls r0, r2, 1 - b _080A3A0C - .align 2, 0 -_080A39A4: .4byte 0x00000fff -_080A39A8: - cmp r1, 0x7F - ble _080A39EA - ldrb r2, [r6] - ldrb r0, [r6, 0x1] - lsls r0, 8 - orrs r2, r0 - ldrb r0, [r6, 0x2] - lsls r0, 16 - orrs r2, r0 - adds r6, 0x3 - adds r4, r1, 0 - subs r4, 0x7F - cmp r1, 0x7F - ble _080A39E6 - adds r0, r2, 0 - mov r1, r10 - ands r0, r1 - asrs r1, r2, 12 - mov r2, r10 - ands r1, r2 - adds r3, r4, 0 -_080A39D2: - mov r5, r12 - strh r0, [r5] - movs r2, 0x2 - add r12, r2 - mov r5, r12 - strh r1, [r5] - add r12, r2 - subs r3, 0x1 - cmp r3, 0 - bne _080A39D2 -_080A39E6: - lsls r0, r4, 1 - b _080A3A0C -_080A39EA: - movs r3, 0 - adds r0, r1, 0x1 - cmp r3, r1 - bgt _080A3A0A - movs r1, 0 - adds r3, r0, 0 -_080A39F6: - mov r2, r12 - strh r1, [r2] - movs r4, 0x2 - add r12, r4 - mov r5, r12 - strh r1, [r5] - add r12, r4 - subs r3, 0x1 - cmp r3, 0 - bne _080A39F6 -_080A3A0A: - lsls r0, 1 -_080A3A0C: - add r8, r0 - mov r0, r9 - ldrb r0, [r0, 0x4] - cmp r8, r0 - blt _080A395E - b _080A3B04 -_080A3A18: - mov r4, r12 - subs r4, 0x80 - adds r1, 0x1 - str r1, [sp, 0xC] - mov r1, r9 - ldrb r1, [r1, 0x4] - cmp r8, r1 - bge _080A3B04 -_080A3A28: - ldrb r1, [r6] - adds r6, 0x1 - cmp r1, 0xBF - ble _080A3A80 - adds r5, r1, 0 - subs r5, 0xBF - cmp r1, 0xBF - ble _080A3A78 - ldr r2, _080A3A7C - adds r7, r2, 0 - adds r3, r5, 0 -_080A3A3E: - ldrb r2, [r6] - ldrb r0, [r6, 0x1] - lsls r0, 8 - orrs r2, r0 - ldrb r0, [r6, 0x2] - lsls r0, 16 - orrs r2, r0 - adds r6, 0x3 - adds r0, r2, 0 - ands r0, r7 - ldrh r1, [r4] - eors r0, r1 - mov r1, r12 - strh r0, [r1] - adds r4, 0x2 - movs r0, 0x2 - add r12, r0 - asrs r2, 12 - ands r2, r7 - ldrh r0, [r4] - eors r2, r0 - mov r1, r12 - strh r2, [r1] - adds r4, 0x2 - movs r2, 0x2 - add r12, r2 - subs r3, 0x1 - cmp r3, 0 - bne _080A3A3E -_080A3A78: - lsls r0, r5, 1 - b _080A3AFA - .align 2, 0 -_080A3A7C: .4byte 0x00000fff -_080A3A80: - cmp r1, 0x7F - ble _080A3AD2 - ldrb r2, [r6] - ldrb r0, [r6, 0x1] - lsls r0, 8 - orrs r2, r0 - ldrb r0, [r6, 0x2] - lsls r0, 16 - orrs r2, r0 - adds r6, 0x3 - adds r7, r1, 0 - subs r7, 0x7F - cmp r1, 0x7F - ble _080A3ACE - adds r5, r2, 0 - mov r3, r10 - ands r5, r3 - asrs r2, 12 - ands r2, r3 - adds r3, r7, 0 -_080A3AA8: - ldrh r1, [r4] - adds r0, r5, 0 - eors r0, r1 - mov r1, r12 - strh r0, [r1] - adds r4, 0x2 - movs r0, 0x2 - add r12, r0 - ldrh r1, [r4] - adds r0, r2, 0 - eors r0, r1 - mov r1, r12 - strh r0, [r1] - adds r4, 0x2 - movs r0, 0x2 - add r12, r0 - subs r3, 0x1 - cmp r3, 0 - bne _080A3AA8 -_080A3ACE: - lsls r0, r7, 1 - b _080A3AFA -_080A3AD2: - movs r3, 0 - adds r2, r1, 0x1 - cmp r3, r1 - bgt _080A3AF8 - adds r3, r2, 0 -_080A3ADC: - ldrh r0, [r4] - mov r1, r12 - strh r0, [r1] - adds r4, 0x2 - movs r5, 0x2 - add r12, r5 - ldrh r0, [r4] - mov r1, r12 - strh r0, [r1] - adds r4, 0x2 - add r12, r5 - subs r3, 0x1 - cmp r3, 0 - bne _080A3ADC -_080A3AF8: - lsls r0, r2, 1 -_080A3AFA: - add r8, r0 - mov r2, r9 - ldrb r2, [r2, 0x4] - cmp r8, r2 - blt _080A3A28 -_080A3B04: - mov r3, r8 - cmp r3, 0x3F - bgt _080A3B1E - movs r0, 0 -_080A3B0C: - mov r4, r12 - strh r0, [r4] - movs r5, 0x2 - add r12, r5 - movs r1, 0x1 - add r8, r1 - mov r2, r8 - cmp r2, 0x3F - ble _080A3B0C -_080A3B1E: - ldr r1, [sp, 0xC] - mov r3, r9 - ldrb r3, [r3, 0x5] - cmp r1, r3 - bge _080A3B2A - b _080A3948 -_080A3B2A: - ldr r4, [sp, 0x4] - movs r5, 0x10 - ldrsh r0, [r4, r5] - cmp r1, r0 - bge _080A3B5E - movs r2, 0 -_080A3B36: - adds r1, 0x1 - str r1, [sp, 0xC] - movs r0, 0x3F - mov r8, r0 -_080A3B3E: - mov r1, r12 - strh r2, [r1] - movs r3, 0x2 - add r12, r3 - movs r4, 0x1 - negs r4, r4 - add r8, r4 - mov r5, r8 - cmp r5, 0 - bge _080A3B3E - ldr r1, [sp, 0xC] - ldr r3, [sp, 0x4] - movs r4, 0x10 - ldrsh r0, [r3, r4] - cmp r1, r0 - blt _080A3B36 -_080A3B5E: - ldr r2, [sp, 0x8] - ldr r5, [sp, 0x4] - movs r1, 0xC - ldrsh r0, [r5, r1] - cmp r2, r0 - bge _080A3B6C - b _080A392A -_080A3B6C: - adds r0, r6, 0 - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A3908 - - thumb_func_start sub_80A3B80 -sub_80A3B80: - push {r4,lr} - adds r3, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r4, _080A3BA8 - adds r0, r3, r4 - ldr r0, [r0] - cmp r0, 0 - beq _080A3BA2 - adds r4, 0x4 - adds r0, r3, r4 - strb r1, [r0] - ldr r1, _080A3BAC - adds r0, r3, r1 - strb r2, [r0] -_080A3BA2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A3BA8: .4byte 0x0000046c -_080A3BAC: .4byte 0x00000471 - thumb_func_end sub_80A3B80 - - thumb_func_start sub_80A3BB0 -sub_80A3BB0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r5, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r6, r1, 0 - movs r0, 0x91 - lsls r0, 3 - adds r0, r5 - mov r8, r0 - cmp r1, 0 - blt _080A3BD4 - cmp r1, 0x1 - ble _080A3BD4 - cmp r1, 0x4 - ble _080A3C00 -_080A3BD4: - ldr r1, _080A3BFC - adds r0, r5, r1 - movs r1, 0x1 - str r1, [r0] - movs r2, 0xA7 - lsls r2, 3 - adds r0, r5, r2 - movs r1, 0 - ldrsh r3, [r0, r1] - movs r0, 0 - cmp r6, 0x1 - bne _080A3BEE - movs r0, 0x1 -_080A3BEE: - str r0, [sp] - mov r0, r8 - adds r1, r5, 0 - movs r2, 0 - bl sub_80A3D40 - b _080A3C48 - .align 2, 0 -_080A3BFC: .4byte 0x00000474 -_080A3C00: - ldr r2, _080A3C88 - adds r0, r5, r2 - movs r7, 0x2 - str r7, [r0] - movs r0, 0xA7 - lsls r0, 3 - adds r4, r5, r0 - movs r2, 0 - ldrsh r0, [r4, r2] - subs r3, r0, 0x1 - movs r0, 0 - cmp r1, 0x4 - bne _080A3C1C - movs r0, 0x1 -_080A3C1C: - str r0, [sp] - mov r0, r8 - adds r1, r5, 0 - movs r2, 0 - bl sub_80A3D40 - movs r1, 0x9B - lsls r1, 3 - adds r0, r5, r1 - movs r1, 0 - ldrsh r2, [r4, r1] - subs r2, 0x1 - adds r3, r7, 0 - eors r3, r6 - negs r1, r3 - orrs r1, r3 - lsrs r1, 31 - str r1, [sp] - adds r1, r5, 0 - movs r3, 0x1 - bl sub_80A3D40 -_080A3C48: - movs r6, 0 - ldr r2, _080A3C88 - adds r0, r5, r2 - ldr r0, [r0] - cmp r6, r0 - bge _080A3CF0 - movs r0, 0x8F - lsls r0, 3 - adds r7, r5, r0 - mov r4, r8 -_080A3C5C: - adds r0, r5, 0 - adds r1, r6, 0 - ldr r2, _080A3C8C - bl sub_80A456C - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _080A3C72 - cmp r0, 0x2 - beq _080A3CB4 -_080A3C72: - movs r2, 0 - ldrsh r0, [r4, r2] - cmp r0, 0x1 - beq _080A3C94 - cmp r0, 0x1 - ble _080A3C82 - cmp r0, 0x2 - beq _080A3C9C -_080A3C82: - ldr r0, _080A3C90 - b _080A3CD6 - .align 2, 0 -_080A3C88: .4byte 0x00000474 -_080A3C8C: .4byte gUnknown_8117314 -_080A3C90: .4byte sub_80A3EBC -_080A3C94: - ldr r0, _080A3C98 - b _080A3CD6 - .align 2, 0 -_080A3C98: .4byte sub_80A3EF4 -_080A3C9C: - ldrb r0, [r4, 0x6] - ldr r1, _080A3CAC - cmp r0, 0 - beq _080A3CA6 - ldr r1, _080A3CB0 -_080A3CA6: - str r1, [r4, 0x18] - b _080A3CD8 - .align 2, 0 -_080A3CAC: .4byte sub_80A4088 -_080A3CB0: .4byte sub_80A41C4 -_080A3CB4: - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _080A3CCC - cmp r0, 0x1 - ble _080A3CC4 - cmp r0, 0x2 - beq _080A3CD4 -_080A3CC4: - ldr r0, _080A3CC8 - b _080A3CD6 - .align 2, 0 -_080A3CC8: .4byte sub_80A3ED4 -_080A3CCC: - ldr r0, _080A3CD0 - b _080A3CD6 - .align 2, 0 -_080A3CD0: .4byte sub_80A3F94 -_080A3CD4: - ldr r0, _080A3D34 -_080A3CD6: - str r0, [r4, 0x18] -_080A3CD8: - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_80A3E14 - adds r7, 0x8 - adds r4, 0x50 - adds r6, 0x1 - ldr r2, _080A3D38 - adds r0, r5, r2 - ldr r0, [r0] - cmp r6, r0 - blt _080A3C5C -_080A3CF0: - ldr r1, _080A3D38 - adds r0, r5, r1 - ldr r6, [r0] - cmp r6, 0x1 - bgt _080A3D26 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 4 - mov r2, r8 - adds r4, r0, r2 -_080A3D04: - adds r0, r5, 0 - adds r1, r6, 0 - ldr r2, _080A3D3C - bl sub_80A456C - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - movs r3, 0 - bl sub_80A3D40 - adds r4, 0x50 - adds r6, 0x1 - cmp r6, 0x1 - ble _080A3D04 -_080A3D26: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A3D34: .4byte sub_80A4358 -_080A3D38: .4byte 0x00000474 -_080A3D3C: .4byte gUnknown_8117314 - thumb_func_end sub_80A3BB0 - - thumb_func_start sub_80A3D40 -sub_80A3D40: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r4, r0, 0 - adds r5, r1, 0 - mov r8, r3 - ldr r1, [sp, 0x1C] - movs r3, 0xA5 - lsls r3, 3 - adds r0, r5, r3 - ldrh r0, [r0] - strh r0, [r4] - strh r2, [r4, 0x2] - mov r7, r8 - strh r7, [r4, 0x4] - strb r1, [r4, 0x6] - ldr r1, _080A3E10 - adds r0, r5, r1 - ldrb r0, [r0] - str r0, [r4, 0x8] - subs r3, 0xDB - adds r0, r5, r3 - ldrb r0, [r0] - str r0, [r4, 0xC] - movs r7, 0x89 - lsls r7, 3 - adds r0, r5, r7 - ldrb r0, [r0] - lsls r0, 3 - str r0, [r4, 0x10] - subs r1, 0x3 - adds r0, r5, r1 - ldrb r0, [r0] - lsls r0, 3 - str r0, [r4, 0x14] - adds r3, 0xFB - adds r0, r5, r3 - ldr r0, [r0] - str r0, [r4, 0x1C] - movs r3, 0 - cmp r3, r8 - bge _080A3DE0 - adds r7, 0xF0 - adds r6, r5, r7 - movs r1, 0 - ldrsh r0, [r6, r1] - cmp r2, r0 - bge _080A3DE0 - lsls r0, r2, 2 - adds r7, 0x14 - adds r0, r7 - adds r1, r0, r5 - movs r0, 0x20 - adds r0, r4 - mov r12, r0 - movs r7, 0x28 - adds r7, r4 - mov r9, r7 -_080A3DB6: - ldr r0, [r1] - mov r7, r12 - adds r7, 0x4 - mov r12, r7 - subs r7, 0x4 - stm r7!, {r0} - ldr r0, [r1, 0x8] - mov r7, r9 - adds r7, 0x4 - mov r9, r7 - subs r7, 0x4 - stm r7!, {r0} - adds r3, 0x1 - adds r1, 0x4 - adds r2, 0x1 - cmp r3, r8 - bge _080A3DE0 - movs r7, 0 - ldrsh r0, [r6, r7] - cmp r2, r0 - blt _080A3DB6 -_080A3DE0: - cmp r3, 0x1 - bgt _080A3DF8 - movs r1, 0 - lsls r0, r3, 2 - adds r0, 0x20 - adds r0, r4 -_080A3DEC: - str r1, [r0] - str r1, [r0, 0x8] - adds r0, 0x4 - adds r3, 0x1 - cmp r3, 0x1 - ble _080A3DEC -_080A3DF8: - movs r0, 0x8F - lsls r0, 3 - adds r1, r5, r0 - adds r0, r4, 0 - bl sub_80A3E14 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A3E10: .4byte 0x0000044c - thumb_func_end sub_80A3D40 - - thumb_func_start sub_80A3E14 -sub_80A3E14: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - adds r0, r1, 0 - ldr r1, [r0] - mov r8, r1 - str r1, [r4, 0x30] - cmp r1, 0 - bge _080A3E2A - adds r1, 0x7 -_080A3E2A: - asrs r6, r1, 3 - str r6, [r4, 0x38] - ldr r7, [r0, 0x4] - str r7, [r4, 0x34] - adds r0, r7, 0 - cmp r7, 0 - bge _080A3E3A - adds r0, r7, 0x7 -_080A3E3A: - asrs r5, r0, 3 - str r5, [r4, 0x3C] - movs r3, 0 - ldrsh r2, [r4, r3] - cmp r2, 0x1 - beq _080A3E60 - cmp r2, 0x1 - bgt _080A3E50 - cmp r2, 0 - beq _080A3E56 - b _080A3EA4 -_080A3E50: - cmp r2, 0x2 - beq _080A3E7E - b _080A3EA4 -_080A3E56: - str r2, [r4, 0x40] - str r2, [r4, 0x44] - str r2, [r4, 0x48] - str r2, [r4, 0x4C] - b _080A3EA4 -_080A3E60: - lsrs r1, 31 - adds r1, r6, r1 - asrs r1, 1 - str r1, [r4, 0x40] - lsrs r0, 31 - adds r0, r5, r0 - asrs r0, 1 - str r0, [r4, 0x44] - lsls r1, 4 - mov r2, r8 - subs r1, r2, r1 - str r1, [r4, 0x48] - lsls r0, 4 - subs r0, r7, r0 - b _080A3EA2 -_080A3E7E: - adds r0, r6, 0 - movs r1, 0x3 - bl __divsi3 - str r0, [r4, 0x40] - adds r0, r5, 0 - movs r1, 0x3 - bl __divsi3 - str r0, [r4, 0x44] - lsls r0, r6, 3 - mov r3, r8 - subs r0, r3, r0 - str r0, [r4, 0x48] - adds r0, r7, 0 - movs r1, 0x18 - bl __modsi3 -_080A3EA2: - str r0, [r4, 0x4C] -_080A3EA4: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80A3E14 - - thumb_func_start sub_80A3EB0 -sub_80A3EB0: - push {lr} - ldr r1, [r0, 0x18] - bl _call_via_r1 - pop {r0} - bx r0 - thumb_func_end sub_80A3EB0 - - thumb_func_start sub_80A3EBC -sub_80A3EBC: - push {lr} - ldr r0, [r0, 0x28] - movs r2, 0 - movs r1, 0x80 - lsls r1, 3 -_080A3EC6: - strh r2, [r0] - adds r0, 0x2 - subs r1, 0x1 - cmp r1, 0 - bne _080A3EC6 - pop {r0} - bx r0 - thumb_func_end sub_80A3EBC - - thumb_func_start sub_80A3ED4 -sub_80A3ED4: - push {lr} - ldr r1, [r0, 0x28] - ldr r0, [r0, 0x2C] - movs r3, 0 - movs r2, 0x80 - lsls r2, 3 -_080A3EE0: - strh r3, [r1] - adds r1, 0x2 - strh r3, [r0] - adds r0, 0x2 - subs r2, 0x1 - cmp r2, 0 - bne _080A3EE0 - pop {r0} - bx r0 - thumb_func_end sub_80A3ED4 - - thumb_func_start sub_80A3EF4 -sub_80A3EF4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - ldr r1, [r0, 0x44] - lsls r1, 6 - ldr r2, [r0, 0x40] - adds r1, r2 - lsls r1, 1 - ldr r2, [r0, 0x20] - adds r2, r1 - movs r1, 0 - mov r12, r1 - ldr r3, [r0, 0x28] - str r3, [sp, 0xC] - ldr r0, [r0, 0x1C] - mov r10, r0 - mov r0, sp - str r0, [sp, 0x8] -_080A3F1E: - adds r5, r2, 0 - movs r2, 0x80 - adds r2, r5 - mov r9, r2 - adds r1, 0x1 - mov r8, r1 - ldr r1, [sp, 0x8] - mov r3, r12 - lsls r0, r3, 1 - ldr r2, [sp, 0xC] - adds r0, r2 - movs r2, 0x1 -_080A3F36: - stm r1!, {r0} - adds r0, 0x40 - movs r3, 0x20 - add r12, r3 - subs r2, 0x1 - cmp r2, 0 - bge _080A3F36 - movs r4, 0 - mov r7, sp -_080A3F48: - ldrh r1, [r5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - mov r1, r10 - adds r3, r1, r0 - adds r5, 0x2 - adds r6, r4, 0x1 - adds r4, r7, 0 - movs r2, 0x1 -_080A3F5C: - ldr r0, [r4] - ldrh r1, [r3] - strh r1, [r0] - adds r3, 0x2 - adds r0, 0x2 - ldrh r1, [r3] - strh r1, [r0] - adds r3, 0x2 - adds r0, 0x2 - stm r4!, {r0} - subs r2, 0x1 - cmp r2, 0 - bge _080A3F5C - adds r4, r6, 0 - cmp r4, 0xF - ble _080A3F48 - mov r2, r9 - mov r1, r8 - cmp r1, 0xA - ble _080A3F1E - 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_80A3EF4 - - thumb_func_start sub_80A3F94 -sub_80A3F94: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x34 - ldr r1, [r0, 0x44] - lsls r1, 6 - ldr r2, [r0, 0x40] - adds r1, r2 - lsls r1, 1 - ldr r2, [r0, 0x20] - adds r3, r2, r1 - ldr r2, [r0, 0x24] - adds r2, r1 - movs r1, 0 - ldr r4, [r0, 0x28] - str r4, [sp, 0x2C] - ldr r5, [r0, 0x2C] - str r5, [sp, 0x18] - ldr r0, [r0, 0x1C] - str r0, [sp, 0x1C] - mov r0, sp - str r0, [sp, 0x10] - mov r4, sp - adds r4, 0x8 - str r4, [sp, 0x14] - movs r5, 0 - str r5, [sp, 0x30] -_080A3FCE: - mov r8, r3 - mov r12, r2 - mov r0, r8 - adds r0, 0x80 - str r0, [sp, 0x20] - mov r4, r12 - adds r4, 0x80 - str r4, [sp, 0x24] - adds r1, 0x1 - str r1, [sp, 0x28] - ldr r3, [sp, 0x14] - ldr r2, [sp, 0x10] - ldr r5, [sp, 0x30] - ldr r0, [sp, 0x18] - adds r1, r5, r0 - ldr r4, [sp, 0x2C] - adds r0, r5, r4 - movs r5, 0x1 -_080A3FF2: - stm r2!, {r0} - stm r3!, {r1} - adds r1, 0x40 - adds r0, 0x40 - ldr r4, [sp, 0x30] - adds r4, 0x40 - str r4, [sp, 0x30] - subs r5, 0x1 - cmp r5, 0 - bge _080A3FF2 - movs r2, 0 - ldr r5, [sp, 0x1C] - mov r9, r5 -_080A400C: - mov r0, r8 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - mov r1, r9 - adds r4, r1, r0 - movs r5, 0x2 - add r8, r5 - mov r0, r12 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - mov r1, r9 - adds r3, r1, r0 - add r12, r5 - movs r5, 0 - adds r2, 0x1 - mov r10, r2 - ldr r7, [sp, 0x14] - ldr r6, [sp, 0x10] -_080A4038: - ldr r1, [r6] - ldr r2, [r7] - ldrh r0, [r4] - strh r0, [r1] - adds r4, 0x2 - adds r1, 0x2 - ldrh r0, [r4] - strh r0, [r1] - adds r4, 0x2 - adds r1, 0x2 - ldrh r0, [r3] - strh r0, [r2] - adds r3, 0x2 - adds r2, 0x2 - ldrh r0, [r3] - strh r0, [r2] - adds r3, 0x2 - adds r2, 0x2 - stm r6!, {r1} - stm r7!, {r2} - adds r5, 0x1 - cmp r5, 0x1 - ble _080A4038 - mov r2, r10 - cmp r2, 0xF - ble _080A400C - ldr r3, [sp, 0x20] - ldr r2, [sp, 0x24] - ldr r1, [sp, 0x28] - cmp r1, 0xA - ble _080A3FCE - add sp, 0x34 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80A3F94 - - thumb_func_start sub_80A4088 -sub_80A4088: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - adds r4, r0, 0 - ldr r0, [r4, 0x38] - movs r1, 0x3 - bl __modsi3 - adds r7, r0, 0 - ldr r0, [r4, 0x44] - lsls r0, 6 - ldr r1, [r4, 0x40] - adds r0, r1 - lsls r0, 1 - ldr r1, [r4, 0x20] - adds r1, r0 - movs r0, 0 - mov r8, r0 - ldr r2, [r4, 0x28] - str r2, [sp, 0xC] - ldr r4, [r4, 0x1C] - mov r12, r4 -_080A40BA: - adds r5, r1, 0 - movs r1, 0x80 - adds r1, r5 - mov r9, r1 - adds r0, 0x1 - mov r10, r0 - mov r1, sp - mov r2, r8 - lsls r0, r2, 1 - ldr r2, [sp, 0xC] - adds r0, r2 - movs r3, 0x2 -_080A40D2: - stm r1!, {r0} - adds r0, 0x40 - movs r2, 0x20 - add r8, r2 - subs r3, 0x1 - cmp r3, 0 - bge _080A40D2 - cmp r7, 0 - beq _080A412E - ldrh r1, [r5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - mov r1, r12 - adds r2, r1, r0 - adds r5, 0x2 - cmp r7, 0x1 - bne _080A4116 - adds r2, 0x2 - mov r4, sp - movs r3, 0x2 -_080A40FC: - ldr r0, [r4] - ldrh r1, [r2] - strh r1, [r0] - adds r0, 0x2 - ldrh r1, [r2, 0x2] - strh r1, [r0] - adds r0, 0x2 - stm r4!, {r0} - adds r2, 0x6 - subs r3, 0x1 - cmp r3, 0 - bge _080A40FC - b _080A412E -_080A4116: - adds r2, 0x4 - mov r4, sp - movs r3, 0x2 -_080A411C: - ldr r1, [r4] - ldrh r0, [r2] - strh r0, [r1] - adds r1, 0x2 - stm r4!, {r1} - adds r2, 0x6 - subs r3, 0x1 - cmp r3, 0 - bge _080A411C -_080A412E: - movs r3, 0 -_080A4130: - ldrh r1, [r5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - mov r1, r12 - adds r2, r1, r0 - adds r5, 0x2 - adds r6, r3, 0x1 - mov r4, sp - movs r3, 0x2 -_080A4144: - ldr r1, [r4] - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x2 - adds r1, 0x2 - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x2 - adds r1, 0x2 - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x2 - adds r1, 0x2 - stm r4!, {r1} - subs r3, 0x1 - cmp r3, 0 - bge _080A4144 - adds r3, r6, 0 - cmp r3, 0x9 - ble _080A4130 - cmp r7, 0x1 - beq _080A41AA - ldrh r1, [r5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - mov r1, r12 - adds r2, r1, r0 - cmp r7, 0 - bne _080A4198 - mov r4, sp - movs r3, 0x2 -_080A4184: - ldm r4!, {r0} - ldrh r1, [r2] - strh r1, [r0] - ldrh r1, [r2, 0x2] - strh r1, [r0, 0x2] - adds r2, 0x6 - subs r3, 0x1 - cmp r3, 0 - bge _080A4184 - b _080A41AA -_080A4198: - mov r4, sp - movs r3, 0x2 -_080A419C: - ldm r4!, {r1} - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x6 - subs r3, 0x1 - cmp r3, 0 - bge _080A419C -_080A41AA: - mov r1, r9 - mov r0, r10 - cmp r0, 0x7 - ble _080A40BA - 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_80A4088 - - thumb_func_start sub_80A41C4 -sub_80A41C4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - mov r8, r0 - ldr r0, [r0, 0x38] - movs r1, 0x3 - bl __modsi3 - str r0, [sp, 0xC] - mov r0, r8 - ldr r2, [r0, 0x44] - lsls r0, r2, 6 - mov r1, r8 - ldr r3, [r1, 0x40] - adds r0, r3 - lsls r0, 1 - ldr r1, [r1, 0x20] - adds r4, r1, r0 - movs r0, 0 - str r0, [sp, 0x10] - mov r1, r8 - ldr r0, [r1, 0xC] - subs r0, r2 - mov r10, r0 - ldr r0, [r1, 0x8] - subs r0, r3 - str r0, [sp, 0x14] - movs r2, 0 -_080A4202: - ldr r5, [sp, 0x14] - mov r3, r10 - cmp r3, 0 - ble _080A4212 - movs r0, 0x1 - negs r0, r0 - add r10, r0 - b _080A4222 -_080A4212: - mov r1, r8 - ldr r1, [r1, 0xC] - mov r10, r1 - mov r3, r8 - ldr r0, [r3, 0x40] - lsls r0, 1 - ldr r1, [r3, 0x20] - adds r4, r1, r0 -_080A4222: - adds r6, r4, 0 - mov r0, r8 - ldr r1, [r0, 0x28] - ldrh r7, [r4] - ldr r3, [r0, 0x1C] - mov r9, r3 - adds r0, r4, 0x2 - mov r12, r0 - adds r4, 0x80 - str r4, [sp, 0x18] - adds r2, 0x1 - str r2, [sp, 0x1C] - mov r2, sp - ldr r3, [sp, 0x10] - lsls r0, r3, 1 - adds r0, r1 - movs r3, 0x2 -_080A4244: - stm r2!, {r0} - adds r0, 0x40 - ldr r4, [sp, 0x10] - adds r4, 0x20 - str r4, [sp, 0x10] - subs r3, 0x1 - cmp r3, 0 - bge _080A4244 - ldr r0, [sp, 0xC] - cmp r0, 0 - beq _080A42B2 - lsls r0, r7, 3 - adds r0, r7 - lsls r0, 1 - mov r1, r9 - adds r2, r1, r0 - mov r6, r12 - ldr r3, [sp, 0xC] - cmp r3, 0x1 - bne _080A428C - adds r2, 0x2 - mov r4, sp - movs r3, 0x2 -_080A4272: - ldr r0, [r4] - ldrh r1, [r2] - strh r1, [r0] - adds r0, 0x2 - ldrh r1, [r2, 0x2] - strh r1, [r0] - adds r0, 0x2 - stm r4!, {r0} - adds r2, 0x6 - subs r3, 0x1 - cmp r3, 0 - bge _080A4272 - b _080A42A4 -_080A428C: - adds r2, 0x4 - mov r4, sp - movs r3, 0x2 -_080A4292: - ldr r1, [r4] - ldrh r0, [r2] - strh r0, [r1] - adds r1, 0x2 - stm r4!, {r1} - adds r2, 0x6 - subs r3, 0x1 - cmp r3, 0 - bge _080A4292 -_080A42A4: - subs r5, 0x1 - cmp r5, 0 - bgt _080A42B2 - mov r4, r8 - ldr r5, [r4, 0x8] - lsls r0, r5, 1 - subs r6, r0 -_080A42B2: - movs r3, 0 -_080A42B4: - ldrh r1, [r6] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - mov r1, r9 - adds r2, r1, r0 - adds r6, 0x2 - subs r5, 0x1 - adds r7, r3, 0x1 - mov r4, sp - movs r3, 0x2 -_080A42CA: - ldr r1, [r4] - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x2 - adds r1, 0x2 - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x2 - adds r1, 0x2 - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x2 - adds r1, 0x2 - stm r4!, {r1} - subs r3, 0x1 - cmp r3, 0 - bge _080A42CA - cmp r5, 0 - bgt _080A42F8 - mov r3, r8 - ldr r5, [r3, 0x8] - lsls r0, r5, 1 - subs r6, r0 -_080A42F8: - adds r3, r7, 0 - cmp r3, 0x9 - ble _080A42B4 - ldr r4, [sp, 0xC] - cmp r4, 0x1 - beq _080A433E - ldrh r1, [r6] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - mov r1, r9 - adds r2, r1, r0 - cmp r4, 0 - bne _080A432C - mov r4, sp - movs r3, 0x2 -_080A4318: - ldm r4!, {r0} - ldrh r1, [r2] - strh r1, [r0] - ldrh r1, [r2, 0x2] - strh r1, [r0, 0x2] - adds r2, 0x6 - subs r3, 0x1 - cmp r3, 0 - bge _080A4318 - b _080A433E -_080A432C: - mov r4, sp - movs r3, 0x2 -_080A4330: - ldm r4!, {r1} - ldrh r0, [r2] - strh r0, [r1] - adds r2, 0x6 - subs r3, 0x1 - cmp r3, 0 - bge _080A4330 -_080A433E: - ldr r4, [sp, 0x18] - ldr r2, [sp, 0x1C] - cmp r2, 0x7 - bgt _080A4348 - b _080A4202 -_080A4348: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80A41C4 - - thumb_func_start sub_80A4358 -sub_80A4358: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x3C - adds r4, r0, 0 - ldr r0, [r4, 0x38] - movs r1, 0x3 - bl __modsi3 - str r0, [sp, 0x18] - ldr r0, [r4, 0x44] - lsls r0, 6 - ldr r1, [r4, 0x40] - adds r0, r1 - lsls r0, 1 - ldr r1, [r4, 0x20] - adds r2, r1, r0 - ldr r1, [r4, 0x24] - adds r1, r0 - movs r0, 0 - ldr r3, [r4, 0x28] - str r3, [sp, 0x24] - ldr r5, [r4, 0x2C] - str r5, [sp, 0x28] - ldr r4, [r4, 0x1C] - str r4, [sp, 0x20] - mov r3, sp - adds r3, 0xC - str r3, [sp, 0x1C] - movs r4, 0 - str r4, [sp, 0x38] -_080A439A: - mov r12, r2 - mov r8, r1 - mov r5, r12 - adds r5, 0x80 - str r5, [sp, 0x30] - adds r1, 0x80 - str r1, [sp, 0x34] - adds r0, 0x1 - str r0, [sp, 0x2C] - add r3, sp, 0xC - mov r2, sp - ldr r4, [sp, 0x38] - ldr r5, [sp, 0x28] - adds r1, r4, r5 - ldr r5, [sp, 0x24] - adds r0, r4, r5 - movs r5, 0x2 -_080A43BC: - stm r2!, {r0} - stm r3!, {r1} - adds r1, 0x40 - adds r0, 0x40 - ldr r4, [sp, 0x38] - adds r4, 0x40 - str r4, [sp, 0x38] - subs r5, 0x1 - cmp r5, 0 - bge _080A43BC - ldr r5, [sp, 0x18] - cmp r5, 0 - beq _080A445C - mov r0, r12 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r1, [sp, 0x20] - adds r4, r1, r0 - movs r3, 0x2 - add r12, r3 - mov r5, r8 - ldrh r1, [r5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r1, [sp, 0x20] - adds r3, r1, r0 - movs r5, 0x2 - add r8, r5 - ldr r0, [sp, 0x18] - cmp r0, 0x1 - bne _080A4434 - adds r4, 0x2 - adds r3, 0x2 - ldr r7, [sp, 0x1C] - mov r6, sp -_080A4408: - ldr r1, [r6] - ldr r2, [r7] - ldrh r0, [r4] - strh r0, [r1] - adds r1, 0x2 - ldrh r0, [r4, 0x2] - strh r0, [r1] - adds r1, 0x2 - ldrh r0, [r3] - strh r0, [r2] - adds r2, 0x2 - ldrh r0, [r3, 0x2] - strh r0, [r2] - adds r2, 0x2 - stm r6!, {r1} - stm r7!, {r2} - adds r4, 0x6 - adds r3, 0x6 - subs r5, 0x1 - cmp r5, 0 - bge _080A4408 - b _080A445C -_080A4434: - adds r4, 0x4 - adds r3, 0x4 - ldr r6, [sp, 0x1C] - mov r2, sp - movs r5, 0x2 -_080A443E: - ldr r1, [r2] - ldrh r0, [r4] - strh r0, [r1] - adds r1, 0x2 - stm r2!, {r1} - ldr r1, [r6] - ldrh r0, [r3] - strh r0, [r1] - adds r1, 0x2 - stm r6!, {r1} - adds r4, 0x6 - adds r3, 0x6 - subs r5, 0x1 - cmp r5, 0 - bge _080A443E -_080A445C: - movs r2, 0 - ldr r1, [sp, 0x20] - mov r9, r1 -_080A4462: - mov r3, r12 - ldrh r1, [r3] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - mov r5, r9 - adds r4, r5, r0 - movs r0, 0x2 - add r12, r0 - mov r3, r8 - ldrh r1, [r3] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - adds r3, r5, r0 - movs r5, 0x2 - add r8, r5 - movs r5, 0 - adds r2, 0x1 - mov r10, r2 - mov r7, sp - add r6, sp, 0xC -_080A448E: - ldr r1, [r7] - ldr r2, [r6] - ldrh r0, [r4] - strh r0, [r1] - adds r4, 0x2 - adds r1, 0x2 - ldrh r0, [r4] - strh r0, [r1] - adds r4, 0x2 - adds r1, 0x2 - ldrh r0, [r4] - strh r0, [r1] - adds r4, 0x2 - adds r1, 0x2 - ldrh r0, [r3] - strh r0, [r2] - adds r3, 0x2 - adds r2, 0x2 - ldrh r0, [r3] - strh r0, [r2] - adds r3, 0x2 - adds r2, 0x2 - ldrh r0, [r3] - strh r0, [r2] - adds r3, 0x2 - adds r2, 0x2 - stm r7!, {r1} - stm r6!, {r2} - adds r5, 0x1 - cmp r5, 0x2 - ble _080A448E - mov r2, r10 - cmp r2, 0x9 - ble _080A4462 - ldr r0, [sp, 0x18] - cmp r0, 0x1 - beq _080A453A - mov r3, r12 - ldrh r1, [r3] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - ldr r5, [sp, 0x20] - adds r4, r5, r0 - mov r0, r8 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 1 - adds r3, r5, r0 - ldr r1, [sp, 0x18] - cmp r1, 0 - bne _080A451E - ldr r7, [sp, 0x1C] - mov r6, sp - movs r5, 0x2 -_080A44FE: - ldm r6!, {r1} - ldm r7!, {r2} - ldrh r0, [r4] - strh r0, [r1] - ldrh r0, [r4, 0x2] - strh r0, [r1, 0x2] - ldrh r0, [r3] - strh r0, [r2] - ldrh r0, [r3, 0x2] - strh r0, [r2, 0x2] - adds r4, 0x6 - adds r3, 0x6 - subs r5, 0x1 - cmp r5, 0 - bge _080A44FE - b _080A453A -_080A451E: - ldr r6, [sp, 0x1C] - mov r2, sp - movs r5, 0x2 -_080A4524: - ldm r2!, {r1} - ldrh r0, [r4] - strh r0, [r1] - ldm r6!, {r1} - ldrh r0, [r3] - strh r0, [r1] - adds r4, 0x6 - adds r3, 0x6 - subs r5, 0x1 - cmp r5, 0 - bge _080A4524 -_080A453A: - ldr r2, [sp, 0x30] - ldr r1, [sp, 0x34] - ldr r0, [sp, 0x2C] - cmp r0, 0x7 - bgt _080A4546 - b _080A439A -_080A4546: - add sp, 0x3C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80A4358 - - thumb_func_start sub_80A4558 -sub_80A4558: - lsls r1, 3 - movs r3, 0x8F - lsls r3, 3 - adds r0, r3 - adds r0, r1 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [r2] - str r1, [r2, 0x4] - bx lr - thumb_func_end sub_80A4558 - - thumb_func_start sub_80A456C -sub_80A456C: - lsls r1, 3 - movs r3, 0x8F - lsls r3, 3 - adds r0, r3 - adds r0, r1 - ldr r1, [r2] - ldr r2, [r2, 0x4] - str r1, [r0] - str r2, [r0, 0x4] - bx lr - thumb_func_end sub_80A456C - - thumb_func_start sub_80A4580 -sub_80A4580: - push {r4,lr} - adds r3, r2, 0 - lsls r2, r1, 2 - adds r2, r1 - lsls r2, 4 - movs r1, 0x91 - lsls r1, 3 - adds r2, r1 - adds r2, r0, r2 - ldr r0, [r3] - cmp r0, 0 - bge _080A45AE - ldrb r0, [r2, 0x6] - ldr r4, [r3, 0x4] - cmp r0, 0 - beq _080A45CA - ldr r1, [r2, 0x10] -_080A45A2: - ldr r0, [r3] - adds r0, r1 - str r0, [r3] - cmp r0, 0 - blt _080A45A2 - b _080A45CC -_080A45AE: - ldr r1, [r2, 0x10] - ldr r4, [r3, 0x4] - cmp r0, r1 - blt _080A45CC - ldrb r0, [r2, 0x6] - cmp r0, 0 - beq _080A45C8 -_080A45BC: - ldr r0, [r3] - subs r0, r1 - str r0, [r3] - cmp r0, r1 - bge _080A45BC - b _080A45CC -_080A45C8: - subs r0, r1, 0x1 -_080A45CA: - str r0, [r3] -_080A45CC: - cmp r4, 0 - bge _080A45E4 - ldrb r0, [r2, 0x6] - cmp r0, 0 - beq _080A45FE - ldr r1, [r2, 0x14] -_080A45D8: - ldr r0, [r3, 0x4] - adds r0, r1 - str r0, [r3, 0x4] - cmp r0, 0 - blt _080A45D8 - b _080A4600 -_080A45E4: - ldr r1, [r2, 0x14] - cmp r4, r1 - blt _080A4600 - ldrb r0, [r2, 0x6] - cmp r0, 0 - beq _080A45FC -_080A45F0: - ldr r0, [r3, 0x4] - subs r0, r1 - str r0, [r3, 0x4] - cmp r0, r1 - bge _080A45F0 - b _080A4600 -_080A45FC: - subs r0, r1, 0x1 -_080A45FE: - str r0, [r3, 0x4] -_080A4600: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80A4580 - - thumb_func_start sub_80A4608 -sub_80A4608: - movs r3, 0x89 - lsls r3, 3 - adds r2, r0, r3 - ldrb r2, [r2] - str r2, [r1] - ldr r2, _080A461C - adds r0, r2 - ldrb r0, [r0] - str r0, [r1, 0x4] - bx lr - .align 2, 0 -_080A461C: .4byte 0x00000449 - thumb_func_end sub_80A4608 - - thumb_func_start sub_80A4620 -sub_80A4620: - movs r3, 0x89 - lsls r3, 3 - adds r2, r0, r3 - ldrb r2, [r2] - lsls r2, 3 - str r2, [r1] - ldr r2, _080A4638 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 3 - str r0, [r1, 0x4] - bx lr - .align 2, 0 -_080A4638: .4byte 0x00000449 - thumb_func_end sub_80A4620 - - thumb_func_start sub_80A463C -sub_80A463C: - movs r3, 0 - str r3, [r1] - str r3, [r1, 0x4] - movs r3, 0x89 - lsls r3, 3 - adds r1, r0, r3 - ldrb r1, [r1] - lsls r1, 11 - str r1, [r2] - ldr r1, _080A465C - adds r0, r1 - ldrb r0, [r0] - lsls r0, 11 - str r0, [r2, 0x4] - bx lr - .align 2, 0 -_080A465C: .4byte 0x00000449 - thumb_func_end sub_80A463C - - thumb_func_start sub_80A4660 -sub_80A4660: - push {r4-r7,lr} - adds r6, r3, 0 - lsls r1, 24 - lsrs r5, r1, 24 - ldr r1, _080A4678 - adds r0, r1 - ldr r4, [r0] - cmp r4, 0 - bne _080A467C - movs r0, 0 - b _080A46B6 - .align 2, 0 -_080A4678: .4byte 0x00000544 -_080A467C: - ldr r0, [r2, 0x4] - lsls r0, 8 - ldr r1, [r2] - adds r0, r1 - ldr r1, _080A46BC - adds r0, r1 - adds r4, r0 - ldr r3, [r6, 0x4] - cmp r3, 0 - ble _080A46B4 - movs r7, 0x80 - lsls r7, 1 -_080A4694: - ldr r1, [r6] - adds r2, r4, 0 - cmp r1, 0 - ble _080A46AC -_080A469C: - ldrb r0, [r2] - ands r0, r5 - adds r2, 0x1 - cmp r0, 0 - bne _080A46B6 - subs r1, 0x1 - cmp r1, 0 - bgt _080A469C -_080A46AC: - adds r4, r7 - subs r3, 0x1 - cmp r3, 0 - bgt _080A4694 -_080A46B4: - movs r0, 0 -_080A46B6: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080A46BC: .4byte 0x00000405 - thumb_func_end sub_80A4660 - - thumb_func_start sub_80A46C0 -sub_80A46C0: - push {r4-r7,lr} - adds r6, r3, 0 - lsls r1, 24 - lsrs r5, r1, 24 - ldr r1, _080A46D8 - adds r0, r1 - ldr r4, [r0] - cmp r4, 0 - bne _080A46DC -_080A46D2: - movs r0, 0 - b _080A4716 - .align 2, 0 -_080A46D8: .4byte 0x00000544 -_080A46DC: - ldr r0, [r2, 0x4] - lsls r0, 8 - ldr r1, [r2] - adds r0, r1 - ldr r1, _080A471C - adds r0, r1 - adds r4, r0 - ldr r3, [r6, 0x4] - cmp r3, 0 - ble _080A4714 - movs r7, 0x80 - lsls r7, 1 -_080A46F4: - ldr r1, [r6] - adds r2, r4, 0 - cmp r1, 0 - ble _080A470C -_080A46FC: - ldrb r0, [r2] - ands r0, r5 - adds r2, 0x1 - cmp r0, r5 - bne _080A46D2 - subs r1, 0x1 - cmp r1, 0 - bgt _080A46FC -_080A470C: - adds r4, r7 - subs r3, 0x1 - cmp r3, 0 - bgt _080A46F4 -_080A4714: - movs r0, 0x1 -_080A4716: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080A471C: .4byte 0x00000405 - thumb_func_end sub_80A46C0 - - thumb_func_start sub_80A4720 -sub_80A4720: - lsls r1, 2 - ldr r3, _080A473C - adds r0, r3 - adds r0, r1 - ldr r1, [r2, 0x4] - lsls r1, 7 - ldr r3, [r0] - adds r3, r1 - ldr r0, [r2] - lsls r0, 1 - adds r3, r0 - ldrh r0, [r3] - bx lr - .align 2, 0 -_080A473C: .4byte 0x0000054c - thumb_func_end sub_80A4720 - - thumb_func_start sub_80A4740 -sub_80A4740: - push {r4,lr} - lsls r1, 2 - ldr r4, _080A4760 - adds r0, r4 - adds r0, r1 - ldr r1, [r2, 0x4] - lsls r1, 7 - ldr r4, [r0] - adds r4, r1 - ldr r0, [r2] - lsls r0, 1 - adds r4, r0 - strh r3, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A4760: .4byte 0x0000054c - thumb_func_end sub_80A4740 - - thumb_func_start sub_80A4764 -sub_80A4764: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r9, r0 - ldr r0, _080A47E8 - add r0, r9 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A4784 - b _080A49CE -_080A4784: - ldr r0, _080A47EC - add r0, r9 - movs r6, 0 - ldrsh r0, [r0, r6] - cmp r0, 0 - beq _080A4864 - mov r4, r9 - ldr r0, _080A47F0 - add r0, r9 - ldr r5, [r0] - ldr r0, _080A47F4 - add r0, r9 - movs r1, 0 - ldrsh r0, [r0, r1] - lsls r0, 20 - lsrs r6, r0, 16 - movs r7, 0 - ldr r0, _080A47F8 - add r0, r9 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r7, r0 - bge _080A484C -_080A47B2: - ldr r1, [r4, 0x4] - cmp r1, 0 - beq _080A4832 - ldrh r0, [r4, 0x2] - subs r0, 0x1 - strh r0, [r4, 0x2] - lsls r0, 16 - cmp r0, 0 - bgt _080A4832 - ldrh r0, [r4] - subs r0, 0x1 - strh r0, [r4] - lsls r0, 16 - cmp r0, 0 - bgt _080A4808 - ldr r0, _080A47FC - add r0, r9 - ldrb r0, [r0] - cmp r0, 0 - beq _080A4800 - ldrh r0, [r5] - strh r0, [r4, 0x2] - ldrh r0, [r5, 0x2] - strh r0, [r4] - str r1, [r4, 0x8] - b _080A480C - .align 2, 0 -_080A47E8: .4byte 0x00000444 -_080A47EC: .4byte 0x00000466 -_080A47F0: .4byte 0x0000046c -_080A47F4: .4byte 0x0000052c -_080A47F8: .4byte 0x00000464 -_080A47FC: .4byte 0x00000471 -_080A4800: - strh r0, [r4] - strh r0, [r4, 0x2] - str r0, [r4, 0x8] - b _080A480C -_080A4808: - ldrh r0, [r5] - strh r0, [r4, 0x2] -_080A480C: - ldr r0, [r4, 0x8] - cmp r0, 0 - beq _080A4832 - movs r0, 0 - str r0, [sp] - adds r0, r6, 0 - movs r1, 0 - bl sub_8003810 - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r0, 16 - ldr r1, [r4, 0x8] - movs r2, 0xF - bl sub_809971C - ldr r0, [r4, 0x8] - adds r0, 0x3C - str r0, [r4, 0x8] -_080A4832: - adds r7, 0x1 - adds r4, 0x10 - adds r5, 0x4 - adds r0, r6, 0 - adds r0, 0x10 - lsls r0, 16 - lsrs r6, r0, 16 - ldr r0, _080A485C - add r0, r9 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r7, r0 - blt _080A47B2 -_080A484C: - movs r0, 0x8E - lsls r0, 3 - add r0, r9 - ldrb r1, [r0] - ldr r0, _080A4860 - add r0, r9 - strb r1, [r0] - b _080A48E6 - .align 2, 0 -_080A485C: .4byte 0x00000464 -_080A4860: .4byte 0x00000471 -_080A4864: - movs r0, 0x88 - lsls r0, 3 - add r0, r9 - ldr r0, [r0] - cmp r0, 0 - beq _080A48E6 - mov r4, r9 - adds r4, 0xE0 - movs r6, 0xA0 - movs r5, 0x1F -_080A4878: - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8004D14 - lsls r0, 24 - cmp r0, 0 - beq _080A48DC - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8004D40 - lsls r0, 24 - cmp r0, 0 - bne _080A48DC - ldrh r0, [r4, 0x6] - subs r0, 0x1 - strh r0, [r4, 0x6] - lsls r0, 16 - cmp r0, 0 - bgt _080A48DC - ldrh r0, [r4, 0x4] - strh r0, [r4, 0x6] - ldr r1, [r4, 0xC] - ldr r0, [r4, 0x10] - cmp r1, r0 - bcc _080A48B0 - ldr r0, [r4, 0x8] - str r0, [r4, 0xC] -_080A48B0: - ldr r1, [r4, 0xC] - ldm r1!, {r0} - str r0, [r4, 0x14] - str r1, [r4, 0xC] - ldrb r1, [r4, 0x14] - add r0, sp, 0x4 - strb r1, [r0] - ldrb r1, [r4, 0x15] - adds r0, 0x1 - strb r1, [r0] - ldrb r1, [r4, 0x16] - adds r0, 0x1 - strb r1, [r0] - ldrb r1, [r4, 0x17] - adds r0, 0x1 - strb r1, [r0] - ldr r1, [sp, 0x4] - str r1, [sp] - lsls r0, r6, 16 - lsrs r0, 16 - bl sub_8003810 -_080A48DC: - subs r5, 0x1 - adds r4, 0x18 - adds r6, 0x1 - cmp r5, 0 - bge _080A4878 -_080A48E6: - movs r5, 0 - movs r4, 0x1 -_080A48EA: - movs r2, 0xF8 - lsls r2, 2 - adds r0, r5, r2 - mov r6, r9 - adds r2, r6, r0 - ldrb r0, [r2] - cmp r0, 0 - beq _080A4942 - ldrh r1, [r2, 0x4] - subs r0, r1, 0x1 - strh r0, [r2, 0x4] - lsls r1, 16 - cmp r1, 0 - bgt _080A4942 - ldr r0, [r2, 0x14] - adds r0, 0x4 - str r0, [r2, 0x14] - ldr r1, [r2, 0x24] - lsrs r1, 1 - lsls r1, 1 - ldr r0, [r2, 0x1C] - adds r0, r1 - str r0, [r2, 0x1C] - ldrh r0, [r2, 0x2] - adds r0, 0x1 - movs r3, 0 - strh r0, [r2, 0x2] - ldr r1, [r2, 0xC] - lsls r0, 16 - asrs r0, 16 - movs r6, 0x2 - ldrsh r1, [r1, r6] - cmp r0, r1 - blt _080A4938 - ldr r0, [r2, 0x10] - str r0, [r2, 0x14] - ldr r0, [r2, 0x18] - str r0, [r2, 0x1C] - strh r3, [r2, 0x2] -_080A4938: - movs r0, 0x1 - strb r0, [r2, 0x1] - ldr r0, [r2, 0x14] - ldr r0, [r0] - strh r0, [r2, 0x4] -_080A4942: - adds r5, 0x28 - subs r4, 0x1 - cmp r4, 0 - bge _080A48EA - movs r4, 0x91 - lsls r4, 3 - add r4, r9 - movs r7, 0x8F - lsls r7, 3 - add r7, r9 - movs r0, 0 - mov r8, r0 - b _080A49BC -_080A495C: - adds r0, r4, 0 - adds r1, r7, 0 - bl sub_80A3E14 - adds r0, r4, 0 - bl sub_80A3EB0 - movs r6, 0 - movs r2, 0x2 - ldrsh r1, [r4, r2] - ldr r0, _080A4998 - add r0, r9 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r5, r1, r0 - movs r1, 0x4 - ldrsh r0, [r4, r1] - movs r2, 0x1 - add r8, r2 - movs r1, 0x50 - adds r1, r4 - mov r10, r1 - adds r7, 0x8 - cmp r6, r0 - bge _080A49BA -_080A498E: - cmp r5, 0 - beq _080A499C - cmp r5, 0x1 - beq _080A49A6 - b _080A49AE - .align 2, 0 -_080A4998: .4byte 0x00000536 -_080A499C: - ldr r0, [r4, 0x48] - ldr r1, [r4, 0x4C] - bl sub_800CCA0 - b _080A49AE -_080A49A6: - ldr r0, [r4, 0x48] - ldr r1, [r4, 0x4C] - bl sub_800CCAC -_080A49AE: - adds r6, 0x1 - adds r5, 0x1 - movs r2, 0x4 - ldrsh r0, [r4, r2] - cmp r6, r0 - blt _080A498E -_080A49BA: - mov r4, r10 -_080A49BC: - ldr r0, _080A49E0 - add r0, r9 - ldr r0, [r0] - cmp r8, r0 - blt _080A495C - ldr r1, _080A49E4 - add r1, r9 - movs r0, 0x1 - strb r0, [r1] -_080A49CE: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A49E0: .4byte 0x00000474 -_080A49E4: .4byte 0x0000052a - thumb_func_end sub_80A4764 - - thumb_func_start sub_80A49E8 -sub_80A49E8: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - ldr r0, _080A4A74 - adds r5, r6, r0 - movs r1, 0xFF - lsls r1, 2 - adds r4, r6, r1 - ldr r0, _080A4A78 - adds r0, r6 - mov r8, r0 - movs r7, 0x1 -_080A4A02: - ldrb r0, [r5] - cmp r0, 0 - beq _080A4A1C - ldr r0, [r4, 0x4] - ldr r1, [r4] - ldr r2, [r4, 0x8] - bl MemoryCopy32 - movs r0, 0 - strb r0, [r5] - movs r0, 0x1 - mov r1, r8 - strb r0, [r1] -_080A4A1C: - adds r5, 0x28 - adds r4, 0x28 - subs r7, 0x1 - cmp r7, 0 - bge _080A4A02 - ldr r1, _080A4A78 - adds r0, r6, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080A4A68 - movs r5, 0 - adds r1, 0xC - adds r0, r6, r1 - movs r1, 0 - ldrsh r4, [r0, r1] - movs r1, 0xA7 - lsls r1, 3 - adds r0, r6, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r5, r0 - bge _080A4A60 - movs r0, 0xA7 - lsls r0, 3 - adds r7, r6, r0 -_080A4A4E: - adds r0, r4, 0x2 - bl sub_80098F8 - adds r5, 0x1 - adds r4, 0x1 - movs r1, 0 - ldrsh r0, [r7, r1] - cmp r5, r0 - blt _080A4A4E -_080A4A60: - ldr r0, _080A4A78 - adds r1, r6, r0 - movs r0, 0 - strb r0, [r1] -_080A4A68: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A4A74: .4byte 0x000003e1 -_080A4A78: .4byte 0x0000052a - thumb_func_end sub_80A49E8 - - thumb_func_start sub_80A4A7C -sub_80A4A7C: - push {r4,lr} - sub sp, 0x4 - ldr r4, _080A4AB8 - movs r0, 0x88 - lsls r0, 1 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r4] - adds r2, r0, 0 - adds r2, 0xE4 - ldr r1, _080A4ABC - strh r1, [r2] - ldr r1, _080A4AC0 - movs r3, 0x1 - negs r3, r3 - str r3, [sp] - movs r2, 0 - bl sub_809D600 - movs r0, 0 - bl sub_80A5E8C - bl sub_80A4AEC - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A4AB8: .4byte gUnknown_3001B6C -_080A4ABC: .4byte 0x0000ffff -_080A4AC0: .4byte gUnknown_811736C - thumb_func_end sub_80A4A7C - - thumb_func_start sub_80A4AC4 -sub_80A4AC4: - push {r4,lr} - bl sub_80A4AEC - bl sub_80A5EBC - ldr r4, _080A4AE8 - ldr r0, [r4] - bl sub_809D648 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A4AE8: .4byte gUnknown_3001B6C - thumb_func_end sub_80A4AC4 - - thumb_func_start sub_80A4AEC -sub_80A4AEC: - push {r4,lr} - movs r0, 0 - movs r1, 0x37 - bl sub_80015C0 - movs r0, 0 - movs r1, 0x38 - bl sub_80015C0 - ldr r0, _080A4B2C - ldr r0, [r0] - ldr r1, _080A4B30 - bl sub_809D754 - ldr r4, _080A4B34 - ldr r0, [r4] - cmp r0, 0 - beq _080A4B1E - bl sub_80A2D00 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080A4B1E: - movs r0, 0 - bl sub_80A5EDC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A4B2C: .4byte gUnknown_3001B6C -_080A4B30: .4byte gUnknown_8117538 -_080A4B34: .4byte gUnknown_3001B70 - thumb_func_end sub_80A4AEC - - thumb_func_start sub_80A4B38 -sub_80A4B38: - push {lr} - bl nullsub_121 - ldr r0, _080A4B50 - ldr r0, [r0] - cmp r0, 0 - beq _080A4B4A - bl sub_80A2D68 -_080A4B4A: - pop {r0} - bx r0 - .align 2, 0 -_080A4B50: .4byte gUnknown_3001B70 - thumb_func_end sub_80A4B38 - - thumb_func_start sub_80A4B54 -sub_80A4B54: - push {lr} - ldr r0, _080A4B6C - ldr r0, [r0] - cmp r0, 0 - beq _080A4B62 - bl sub_80A2D88 -_080A4B62: - bl nullsub_122 - pop {r0} - bx r0 - .align 2, 0 -_080A4B6C: .4byte gUnknown_3001B70 - thumb_func_end sub_80A4B54 - - thumb_func_start GroundMap_GetStationScript -GroundMap_GetStationScript: - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - mov r8, r0 - adds r4, r1, 0 - adds r6, r2, 0 - adds r5, r3, 0 - lsls r4, 16 - asrs r4, 16 - lsls r6, 16 - asrs r6, 16 - lsls r5, 24 - asrs r5, 24 - adds r0, r4, 0 - bl sub_80A77A0 - ldr r1, _080A4BE0 - adds r0, r4, 0 - bl sub_80A77D0 - mov r9, r0 - ldr r1, _080A4BE4 - str r5, [sp] - movs r0, 0 - adds r2, r4, 0 - adds r3, r6, 0 - bl Log - lsls r1, r6, 3 - mov r2, r9 - ldr r0, [r2, 0x4] - adds r0, r1 - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - ldr r0, [r0, 0x4] - adds r0, r1 - ldr r0, [r0, 0x24] - ldr r0, [r0] - ldr r0, [r0, 0x8] - mov r1, r8 - str r0, [r1] - movs r0, 0x2 - strh r0, [r1, 0x4] - strh r6, [r1, 0x6] - strb r5, [r1, 0x8] - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A4BE0: .4byte gUnknown_8117560 -_080A4BE4: .4byte gUnknown_811756C - thumb_func_end GroundMap_GetStationScript - - thumb_func_start sub_80A4BE8 -sub_80A4BE8: - push {lr} - lsls r1, 16 - asrs r1, 16 - movs r2, 0 - movs r3, 0 - bl GroundMap_GetStationScript - pop {r0} - bx r0 - thumb_func_end sub_80A4BE8 - - thumb_func_start GroundMap_ExecuteEvent -GroundMap_ExecuteEvent: - push {r4,r5,lr} - sub sp, 0xC - adds r4, r0, 0 - adds r5, r1, 0 - lsls r4, 16 - asrs r4, 16 - lsls r5, 24 - lsrs r5, 24 - ldr r1, _080A4C44 - movs r0, 0 - adds r2, r4, 0 - adds r3, r5, 0 - bl Log - movs r0, 0 - mov r1, sp - adds r2, r4, 0 - bl sub_809D710 - cmp r5, 0 - beq _080A4C2C - mov r1, sp - movs r0, 0x5 - strh r0, [r1, 0x4] -_080A4C2C: - ldr r0, _080A4C48 - ldr r0, [r0] - ldr r3, _080A4C4C - movs r1, 0 - mov r2, sp - bl GroundScript_ExecutePP - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080A4C44: .4byte gUnknown_8117594 -_080A4C48: .4byte gUnknown_3001B6C -_080A4C4C: .4byte gUnknown_81175E0 - thumb_func_end GroundMap_ExecuteEvent - - thumb_func_start GroundMap_ExecuteStation -GroundMap_ExecuteStation: - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x14 - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - mov r8, r3 - lsls r4, 16 - asrs r4, 16 - lsls r5, 16 - asrs r5, 16 - lsls r6, 24 - asrs r6, 24 - mov r0, r8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r1, _080A4CB8 - str r6, [sp] - str r0, [sp, 0x4] - movs r0, 0 - adds r2, r4, 0 - adds r3, r5, 0 - bl Log - add r0, sp, 0x8 - adds r1, r4, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl GroundMap_GetStationScript - mov r0, r8 - cmp r0, 0 - beq _080A4C9C - add r1, sp, 0x8 - movs r0, 0x5 - strh r0, [r1, 0x4] -_080A4C9C: - ldr r0, _080A4CBC - ldr r0, [r0] - ldr r3, _080A4CC0 - movs r1, 0 - add r2, sp, 0x8 - bl GroundScript_ExecutePP - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A4CB8: .4byte gUnknown_81175EC -_080A4CBC: .4byte gUnknown_3001B6C -_080A4CC0: .4byte gUnknown_8117644 - thumb_func_end GroundMap_ExecuteStation - - thumb_func_start GroundMap_ExecuteEnter -GroundMap_ExecuteEnter: - push {r4,lr} - sub sp, 0xC - adds r4, r0, 0 - lsls r4, 16 - asrs r4, 16 - ldr r1, _080A4D08 - movs r0, 0 - adds r2, r4, 0 - bl Log - mov r0, sp - adds r1, r4, 0 - bl sub_80A4BE8 - mov r1, sp - movs r3, 0 - movs r2, 0 - movs r0, 0x2 - strh r0, [r1, 0x4] - mov r0, sp - strh r2, [r0, 0x6] - strb r3, [r0, 0x8] - ldr r0, _080A4D0C - ldr r0, [r0] - ldr r3, _080A4D10 - movs r1, 0 - mov r2, sp - bl GroundScript_ExecutePP - add sp, 0xC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A4D08: .4byte gUnknown_8117650 -_080A4D0C: .4byte gUnknown_3001B6C -_080A4D10: .4byte gUnknown_8117698 - thumb_func_end GroundMap_ExecuteEnter - - thumb_func_start sub_80A4D14 -sub_80A4D14: - push {lr} - ldr r0, _080A4D28 - ldr r0, [r0] - bl sub_809D678 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_080A4D28: .4byte gUnknown_3001B6C - thumb_func_end sub_80A4D14 - - thumb_func_start sub_80A4D2C -sub_80A4D2C: - push {lr} - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - ldr r0, _080A4D44 - ldr r0, [r0] - bl sub_809D968 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_080A4D44: .4byte gUnknown_3001B6C - thumb_func_end sub_80A4D2C - - thumb_func_start sub_80A4D48 -sub_80A4D48: - push {lr} - lsls r0, 16 - asrs r2, r0, 16 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _080A4D74 - ldr r1, _080A4D70 - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x5 - beq _080A4D6C - cmp r0, 0x8 - bne _080A4D74 -_080A4D6C: - movs r0, 0 - b _080A4D76 - .align 2, 0 -_080A4D70: .4byte gUnknown_811BAF4 -_080A4D74: - movs r0, 0x1 -_080A4D76: - pop {r1} - bx r1 - thumb_func_end sub_80A4D48 - - thumb_func_start sub_80A4D7C -sub_80A4D7C: - push {r4,r5,lr} - lsls r0, 16 - asrs r5, r0, 16 - cmp r5, 0x9 - beq _080A4D94 - cmp r5, 0x9 - bgt _080A4D90 - cmp r5, 0x2 - beq _080A4DB6 - b _080A4DC4 -_080A4D90: - cmp r5, 0xC - bne _080A4DC4 -_080A4D94: - movs r0, 0 - movs r1, 0x27 - bl sub_8001658 - adds r4, r0, 0 - movs r0, 0 - movs r1, 0x28 - bl sub_8001658 - lsls r1, r4, 1 - adds r1, r4 - lsls r1, 1 - adds r1, r0 - adds r1, r5, r1 - lsls r1, 16 - asrs r5, r1, 16 - b _080A4DC4 -_080A4DB6: - movs r0, 0x6 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A4DC4 - movs r5, 0x3 -_080A4DC4: - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80A4D7C - - thumb_func_start GroundMap_Select -GroundMap_Select: - push {r4-r6,lr} - lsls r0, 16 - asrs r5, r0, 16 - ldr r1, _080A4E38 - movs r0, 0 - adds r2, r5, 0 - bl Log - movs r0, 0 - movs r1, 0x37 - bl sub_80015C0 - movs r0, 0 - movs r1, 0x38 - bl sub_80015C0 - movs r0, 0 - bl sub_80A5EDC - ldr r4, _080A4E3C - ldr r0, [r4] - cmp r0, 0 - beq _080A4E08 - bl sub_80A2D00 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080A4E08: - ldr r0, _080A4E40 - movs r1, 0x6 - bl MemoryAlloc - adds r2, r0, 0 - str r2, [r4] - ldr r0, _080A4E44 - ldr r0, [r0] - adds r0, 0xE4 - strh r5, [r0] - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - bne _080A4E4C - ldr r1, _080A4E48 - adds r0, r2, 0 - bl sub_80A2B40 - ldr r0, [r4] - adds r1, r5, 0 - bl sub_80A2FBC - b _080A50BA - .align 2, 0 -_080A4E38: .4byte gUnknown_81176A4 -_080A4E3C: .4byte gUnknown_3001B70 -_080A4E40: .4byte 0x0000055c -_080A4E44: .4byte gUnknown_3001B6C -_080A4E48: .4byte gUnknown_8117324 -_080A4E4C: - lsls r0, r5, 1 - adds r0, r5 - lsls r0, 2 - ldr r1, _080A4E6C - adds r6, r0, r1 - ldrh r0, [r6] - adds r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xC - bhi _080A4F20 - lsls r0, 2 - ldr r1, _080A4E70 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080A4E6C: .4byte gUnknown_811BAF4 -_080A4E70: .4byte _080A4E74 - .align 2, 0 -_080A4E74: - .4byte _080A4F08 - .4byte _080A4F20 - .4byte _080A4F20 - .4byte _080A4F20 - .4byte _080A4F20 - .4byte _080A4F20 - .4byte _080A4EA8 - .4byte _080A4EA8 - .4byte _080A4EA8 - .4byte _080A4EA8 - .4byte _080A4EA8 - .4byte _080A4ECC - .4byte _080A4ECC -_080A4EA8: - ldr r0, _080A4EC0 - ldr r0, [r0] - ldr r1, _080A4EC4 - bl sub_80A2B40 - ldr r1, _080A4EC8 - movs r2, 0x80 - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - b _080A4F30 - .align 2, 0 -_080A4EC0: .4byte gUnknown_3001B70 -_080A4EC4: .4byte gUnknown_811733C -_080A4EC8: .4byte gUnknown_2026E4E -_080A4ECC: - ldr r4, _080A4EDC - movs r1, 0 - ldrsh r0, [r4, r1] - movs r1, 0x1 - negs r1, r1 - ldr r6, _080A4EE0 - b _080A4EEA - .align 2, 0 -_080A4EDC: .4byte gUnknown_81173C0 -_080A4EE0: .4byte gUnknown_3001B70 -_080A4EE4: - adds r4, 0xC - movs r2, 0 - ldrsh r0, [r4, r2] -_080A4EEA: - cmp r0, r1 - beq _080A4EF2 - cmp r0, r5 - bne _080A4EE4 -_080A4EF2: - ldr r0, [r6] - bl MemoryFree - movs r0, 0 - str r0, [r6] - adds r1, r4, 0x4 - ldr r2, [r4, 0x8] - adds r0, r5, 0 - bl GroundMap_SelectDungeon - b _080A50BA -_080A4F08: - ldr r0, _080A4F18 - ldr r1, _080A4F1C - movs r2, 0 - ldrsh r3, [r6, r2] - adds r2, r5, 0 - bl FatalError - .align 2, 0 -_080A4F18: .4byte gUnknown_81176D0 -_080A4F1C: .4byte gUnknown_81176DC -_080A4F20: - ldr r0, _080A4FA0 - ldr r0, [r0] - ldr r1, _080A4FA4 - bl sub_80A2B40 - movs r0, 0x1 - bl sub_80A5EDC -_080A4F30: - ldr r5, _080A4FA0 - ldr r0, [r5] - movs r2, 0x4 - ldrsh r1, [r6, r2] - bl sub_80A2FBC - ldr r0, _080A4FA8 - ldr r0, [r0] - mov r12, r0 - adds r0, 0xE8 - movs r1, 0 - str r1, [r0] - adds r0, 0x4 - str r1, [r0] - adds r0, 0x4 - str r1, [r0] - adds r0, 0x4 - str r1, [r0] - adds r0, 0x4 - str r1, [r0] - adds r0, 0x4 - str r1, [r0] - movs r4, 0x80 - lsls r4, 1 - add r4, r12 - movs r3, 0x82 - lsls r3, 1 - add r3, r12 - movs r2, 0x84 - lsls r2, 1 - add r2, r12 - movs r0, 0x86 - lsls r0, 1 - add r0, r12 - str r1, [r0] - str r1, [r2] - str r1, [r3] - str r1, [r4] - mov r0, r12 - adds r0, 0xE4 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0xAD - beq _080A5034 - cmp r0, 0xAD - bgt _080A4FC0 - cmp r0, 0xA3 - bgt _080A4FAC - cmp r0, 0xA2 - bge _080A4FEE - cmp r0, 0x4 - beq _080A5084 - cmp r0, 0xA1 - beq _080A5084 - b _080A50A2 - .align 2, 0 -_080A4FA0: .4byte gUnknown_3001B70 -_080A4FA4: .4byte gUnknown_8117324 -_080A4FA8: .4byte gUnknown_3001B6C -_080A4FAC: - cmp r0, 0xAA - beq _080A500C - cmp r0, 0xAA - bgt _080A4FBA - cmp r0, 0xA8 - beq _080A500C - b _080A50A2 -_080A4FBA: - cmp r0, 0xAB - beq _080A5018 - b _080A50A2 -_080A4FC0: - cmp r0, 0xBA - beq _080A506A - cmp r0, 0xBA - bgt _080A4FD6 - cmp r0, 0xAF - beq _080A5072 - cmp r0, 0xAF - blt _080A5044 - cmp r0, 0xB0 - beq _080A5060 - b _080A50A2 -_080A4FD6: - cmp r0, 0xDF - beq _080A4FEE - cmp r0, 0xDF - bgt _080A4FE4 - cmp r0, 0xC0 - beq _080A5020 - b _080A50A2 -_080A4FE4: - cmp r0, 0xE0 - beq _080A508E - cmp r0, 0xE1 - beq _080A5096 - b _080A50A2 -_080A4FEE: - ldr r0, _080A5000 - ldr r0, [r0] - movs r1, 0x4 - bl sub_80A3BB0 - ldr r1, _080A5004 - ldr r2, _080A5008 - b _080A5050 - .align 2, 0 -_080A5000: .4byte gUnknown_3001B70 -_080A5004: .4byte gUnknown_2026E4E -_080A5008: .4byte 0x00000808 -_080A500C: - ldr r0, _080A5014 - ldr r0, [r0] - b _080A5062 - .align 2, 0 -_080A5014: .4byte gUnknown_3001B70 -_080A5018: - ldr r0, [r5] - movs r1, 0x1 - bl sub_80A3BB0 -_080A5020: - ldr r0, _080A5030 - ldr r0, [r0] - movs r1, 0 - movs r2, 0 - bl sub_80A3B80 - b _080A50A2 - .align 2, 0 -_080A5030: .4byte gUnknown_3001B70 -_080A5034: - ldr r1, _080A503C - ldr r2, _080A5040 - b _080A5050 - .align 2, 0 -_080A503C: .4byte gUnknown_2026E4E -_080A5040: .4byte 0x00001010 -_080A5044: - ldr r0, [r5] - movs r1, 0x4 - bl sub_80A3BB0 - ldr r1, _080A5058 - ldr r2, _080A505C -_080A5050: - adds r0, r2, 0 - strh r0, [r1] - b _080A50A2 - .align 2, 0 -_080A5058: .4byte gUnknown_2026E4E -_080A505C: .4byte 0x0000080c -_080A5060: - ldr r0, [r5] -_080A5062: - movs r1, 0x1 - bl sub_80A3BB0 - b _080A50A2 -_080A506A: - ldr r0, _080A507C - ldr r2, _080A5080 - adds r1, r2, 0 - strh r1, [r0] -_080A5072: - ldr r0, [r5] - movs r1, 0x4 - bl sub_80A3BB0 - b _080A50A2 - .align 2, 0 -_080A507C: .4byte gUnknown_2026E4E -_080A5080: .4byte 0x00001010 -_080A5084: - ldr r0, [r5] - movs r1, 0x3 - bl sub_80A3BB0 - b _080A50A2 -_080A508E: - ldr r0, [r5] - movs r1, 0x3 - bl sub_80A3BB0 -_080A5096: - ldr r0, _080A50C0 - ldr r0, [r0] - movs r1, 0 - movs r2, 0 - bl sub_80A3B80 -_080A50A2: - movs r0, 0x6 - ldrsh r1, [r6, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A50B4 - adds r0, r1, 0 - bl GroundWeather_Select -_080A50B4: - ldr r0, _080A50C4 - bl sub_80A56D8 -_080A50BA: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A50C0: .4byte gUnknown_3001B70 -_080A50C4: .4byte gUnknown_81176F8 - thumb_func_end GroundMap_Select - - thumb_func_start GroundMap_SelectDungeon -GroundMap_SelectDungeon: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r8, r1 - mov r10, r2 - lsls r0, 16 - asrs r5, r0, 16 - ldr r1, _080A514C - movs r0, 0 - adds r2, r5, 0 - bl Log - movs r0, 0 - movs r1, 0x37 - bl sub_80015C0 - movs r0, 0 - movs r1, 0x38 - bl sub_80015C0 - movs r0, 0 - bl sub_80A5EDC - ldr r7, _080A5150 - ldr r0, [r7] - cmp r0, 0 - beq _080A5110 - bl sub_80A2D00 - ldr r0, [r7] - bl MemoryFree - movs r0, 0 - str r0, [r7] -_080A5110: - ldr r0, _080A5154 - movs r1, 0x6 - bl MemoryAlloc - adds r2, r0, 0 - str r2, [r7] - ldr r0, _080A5158 - mov r9, r0 - ldr r0, [r0] - adds r0, 0xE4 - movs r4, 0 - strh r5, [r0] - movs r6, 0x1 - negs r6, r6 - cmp r5, r6 - beq _080A5138 - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0x63 - bne _080A5160 -_080A5138: - ldr r1, _080A515C - adds r0, r2, 0 - bl sub_80A2B40 - ldr r0, [r7] - adds r1, r6, 0 - bl sub_80A2FBC - b _080A51EC - .align 2, 0 -_080A514C: .4byte gUnknown_8117700 -_080A5150: .4byte gUnknown_3001B70 -_080A5154: .4byte 0x0000055c -_080A5158: .4byte gUnknown_3001B6C -_080A515C: .4byte gUnknown_8117324 -_080A5160: - lsls r0, r5, 1 - adds r0, r5 - lsls r0, 2 - ldr r1, _080A5180 - adds r6, r0, r1 - ldrh r0, [r6] - subs r0, 0xA - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _080A518C - ldr r0, _080A5184 - ldr r1, _080A5188 - adds r2, r5, 0 - bl FatalError - .align 2, 0 -_080A5180: .4byte gUnknown_811BAF4 -_080A5184: .4byte gUnknown_8117734 -_080A5188: .4byte gUnknown_8117740 -_080A518C: - ldr r1, _080A51FC - adds r0, r2, 0 - bl sub_80A2B40 - movs r0, 0x1 - bl sub_80A5EDC - ldr r0, [r7] - movs r2, 0x4 - ldrsh r1, [r6, r2] - mov r2, r8 - mov r3, r10 - bl sub_80A3440 - mov r0, r9 - ldr r0, [r0] - mov r12, r0 - adds r0, 0xE8 - str r4, [r0] - adds r0, 0x4 - str r4, [r0] - adds r0, 0x4 - str r4, [r0] - adds r0, 0x4 - str r4, [r0] - adds r0, 0x4 - str r4, [r0] - adds r0, 0x4 - str r4, [r0] - movs r3, 0x80 - lsls r3, 1 - add r3, r12 - movs r2, 0x82 - lsls r2, 1 - add r2, r12 - movs r1, 0x84 - lsls r1, 1 - add r1, r12 - movs r0, 0x86 - lsls r0, 1 - add r0, r12 - str r4, [r0] - str r4, [r1] - str r4, [r2] - str r4, [r3] - ldr r0, _080A5200 - bl sub_80A56D8 -_080A51EC: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A51FC: .4byte gUnknown_8117354 -_080A5200: .4byte gUnknown_8117754 - thumb_func_end GroundMap_SelectDungeon - - thumb_func_start sub_80A5204 -sub_80A5204: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - str r0, [sp] - mov r8, r1 - str r2, [sp, 0x4] - str r3, [sp, 0x8] - movs r1, 0x8 - ldrsh r0, [r2, r1] - cmp r0, 0 - bgt _080A5222 - b _080A53EA -_080A5222: - mov r5, r8 - ldr r2, [sp] - mov r12, r2 - movs r0, 0 - ldr r3, [sp, 0x4] - ldrb r3, [r3, 0x1] - str r3, [sp, 0x10] - ldr r1, [sp, 0x4] - ldrh r2, [r1, 0xA] - mov r1, sp - strh r2, [r1, 0xC] - movs r1, 0xFF -_080A523A: - adds r0, 0x1 - mov r10, r0 - movs r3, 0xFF - mov r9, r3 -_080A5242: - mov r0, r12 - strb r1, [r0] - movs r2, 0x1 - add r12, r2 - movs r3, 0x1 - negs r3, r3 - add r9, r3 - mov r0, r9 - cmp r0, 0 - bge _080A5242 - mov r0, r10 - cmp r0, 0x3 - ble _080A523A - movs r1, 0 - ldr r2, [sp, 0x10] - cmp r1, r2 - blt _080A5266 - b _080A53BA -_080A5266: - ldr r3, [sp, 0x4] - ldrb r7, [r3] -_080A526A: - adds r0, 0x1 - mov r10, r0 - adds r0, r1, 0x1 - str r0, [sp, 0x14] - movs r0, 0xFF - movs r2, 0x4 - mov r9, r2 -_080A5278: - mov r3, r12 - strb r0, [r3] - movs r2, 0x1 - add r12, r2 - movs r3, 0x1 - negs r3, r3 - add r9, r3 - mov r2, r9 - cmp r2, 0 - bge _080A5278 - movs r3, 0x5 - mov r9, r3 - movs r0, 0 - cmp r1, 0 - bne _080A5308 - cmp r1, r7 - bge _080A5394 -_080A529A: - ldrb r1, [r5] - adds r5, 0x1 - cmp r1, 0xBF - ble _080A52C2 - adds r6, r0, 0 - subs r6, 0xBF - cmp r1, 0xBF - ble _080A5300 - adds r2, r1, 0 - subs r2, 0xBF -_080A52AE: - ldrb r0, [r5] - mov r3, r12 - strb r0, [r3] - adds r5, 0x1 - movs r0, 0x1 - add r12, r0 - subs r2, 0x1 - cmp r2, 0 - bne _080A52AE - b _080A5300 -_080A52C2: - cmp r1, 0x7F - ble _080A52E6 - ldrb r4, [r5] - adds r5, 0x1 - adds r6, r0, 0 - subs r6, 0x7F - cmp r1, 0x7F - ble _080A5300 - adds r2, r1, 0 - subs r2, 0x7F -_080A52D6: - mov r3, r12 - strb r4, [r3] - movs r0, 0x1 - add r12, r0 - subs r2, 0x1 - cmp r2, 0 - bne _080A52D6 - b _080A5300 -_080A52E6: - movs r2, 0 - adds r6, r0, 0x1 - cmp r2, r1 - bgt _080A5300 - movs r0, 0 - adds r2, r1, 0x1 -_080A52F2: - mov r3, r12 - strb r0, [r3] - movs r3, 0x1 - add r12, r3 - subs r2, 0x1 - cmp r2, 0 - bne _080A52F2 -_080A5300: - adds r0, r6, r1 - cmp r0, r7 - blt _080A529A - b _080A5394 -_080A5308: - ldr r4, _080A5340 - add r4, r12 - cmp r0, r7 - bge _080A5394 -_080A5310: - ldrb r3, [r5] - adds r5, 0x1 - cmp r3, 0xBF - ble _080A5344 - adds r6, r0, 0 - subs r6, 0xBF - cmp r3, 0xBF - ble _080A538E - adds r2, r3, 0 - subs r2, 0xBF -_080A5324: - ldrb r1, [r5] - ldrb r0, [r4] - eors r1, r0 - mov r0, r12 - strb r1, [r0] - adds r4, 0x1 - adds r5, 0x1 - movs r1, 0x1 - add r12, r1 - subs r2, 0x1 - cmp r2, 0 - bne _080A5324 - b _080A538E - .align 2, 0 -_080A5340: .4byte 0xffffff00 -_080A5344: - cmp r3, 0x7F - ble _080A5372 - ldrb r2, [r5] - mov r8, r2 - adds r5, 0x1 - adds r6, r0, 0 - subs r6, 0x7F - cmp r3, 0x7F - ble _080A538E - adds r2, r3, 0 - subs r2, 0x7F -_080A535A: - ldrb r1, [r4] - mov r0, r8 - eors r0, r1 - mov r1, r12 - strb r0, [r1] - adds r4, 0x1 - movs r0, 0x1 - add r12, r0 - subs r2, 0x1 - cmp r2, 0 - bne _080A535A - b _080A538E -_080A5372: - movs r2, 0 - adds r6, r0, 0x1 - cmp r2, r3 - bgt _080A538E - adds r2, r3, 0x1 -_080A537C: - ldrb r0, [r4] - mov r1, r12 - strb r0, [r1] - adds r4, 0x1 - movs r0, 0x1 - add r12, r0 - subs r2, 0x1 - cmp r2, 0 - bne _080A537C -_080A538E: - adds r0, r6, r3 - cmp r0, r7 - blt _080A5310 -_080A5394: - add r9, r7 - mov r1, r9 - cmp r1, 0xFF - bgt _080A53AE - movs r0, 0xFF -_080A539E: - mov r2, r12 - strb r0, [r2] - movs r3, 0x1 - add r12, r3 - add r9, r3 - mov r1, r9 - cmp r1, 0xFF - ble _080A539E -_080A53AE: - ldr r1, [sp, 0x14] - mov r0, r10 - ldr r2, [sp, 0x10] - cmp r1, r2 - bge _080A53BA - b _080A526A -_080A53BA: - ldr r3, [sp, 0x8] - cmp r0, r3 - bge _080A53E6 - movs r1, 0xFF -_080A53C2: - adds r0, 0x1 - mov r10, r0 - movs r0, 0xFF - mov r9, r0 -_080A53CA: - mov r2, r12 - strb r1, [r2] - movs r3, 0x1 - add r12, r3 - movs r0, 0x1 - negs r0, r0 - add r9, r0 - mov r2, r9 - cmp r2, 0 - bge _080A53CA - mov r0, r10 - ldr r3, [sp, 0x8] - cmp r0, r3 - blt _080A53C2 -_080A53E6: - mov r8, r5 - b _080A547E -_080A53EA: - ldr r1, [sp] - movs r0, 0 - ldr r2, [sp, 0x4] - ldrb r2, [r2, 0x1] - str r2, [sp, 0x10] - ldr r3, [sp, 0x4] - ldrh r2, [r3, 0xA] - mov r3, sp - strh r2, [r3, 0xC] - movs r6, 0xFF -_080A53FE: - adds r5, r0, 0x1 - movs r4, 0xFF -_080A5402: - strb r6, [r1] - adds r1, 0x1 - subs r4, 0x1 - cmp r4, 0 - bge _080A5402 - adds r0, r5, 0 - cmp r0, 0x3 - ble _080A53FE - movs r4, 0 - ldr r3, [sp, 0x10] - cmp r4, r3 - bge _080A5460 - ldr r2, [sp, 0x4] - ldrb r7, [r2] - movs r3, 0xFF -_080A5420: - adds r5, r0, 0x1 - adds r2, r4, 0x1 - movs r4, 0x4 -_080A5426: - strb r3, [r1] - adds r1, 0x1 - subs r4, 0x1 - cmp r4, 0 - bge _080A5426 - movs r4, 0x5 - cmp r7, 0 - beq _080A5444 - movs r6, 0 - adds r0, r7, 0 -_080A543A: - strb r6, [r1] - adds r1, 0x1 - subs r0, 0x1 - cmp r0, 0 - bne _080A543A -_080A5444: - adds r4, r7 - cmp r4, 0xFF - bgt _080A5456 - movs r0, 0xFF -_080A544C: - strb r0, [r1] - adds r1, 0x1 - adds r4, 0x1 - cmp r4, 0xFF - ble _080A544C -_080A5456: - adds r4, r2, 0 - adds r0, r5, 0 - ldr r2, [sp, 0x10] - cmp r4, r2 - blt _080A5420 -_080A5460: - ldr r3, [sp, 0x8] - cmp r0, r3 - bge _080A547E - movs r6, 0xFF -_080A5468: - adds r5, r0, 0x1 - movs r4, 0xFF -_080A546C: - strb r6, [r1] - adds r1, 0x1 - subs r4, 0x1 - cmp r4, 0 - bge _080A546C - adds r0, r5, 0 - ldr r2, [sp, 0x8] - cmp r0, r2 - blt _080A5468 -_080A547E: - mov r3, sp - ldrh r3, [r3, 0xC] - lsls r0, r3, 16 - cmp r0, 0 - bgt _080A548A - b _080A5590 -_080A548A: - mov r6, r8 - ldr r0, [sp] - movs r1, 0x80 - lsls r1, 3 - adds r2, r0, r1 - movs r0, 0 - ldr r3, [sp, 0x10] - cmp r0, r3 - bge _080A5586 - movs r1, 0xFB - mov r10, r1 -_080A54A0: - adds r2, 0x5 - movs r4, 0 - cmp r0, 0 - bne _080A54EC - ldr r3, [sp, 0x4] - ldrb r7, [r3] - movs r1, 0x1 - mov r9, r1 - cmp r0, r7 - bge _080A5574 -_080A54B4: - ldrb r1, [r6] - adds r6, 0x1 - cmp r1, 0x7F - ble _080A54DE - subs r4, 0x7F - cmp r1, 0x7F - ble _080A54D6 - movs r5, 0x80 - adds r3, r1, 0 - subs r3, 0x7F -_080A54C8: - ldrb r0, [r2] - orrs r0, r5 - strb r0, [r2] - adds r2, 0x1 - subs r3, 0x1 - cmp r3, 0 - bne _080A54C8 -_080A54D6: - adds r4, r1 - ldr r3, [sp, 0x4] - ldrb r7, [r3] - b _080A54E6 -_080A54DE: - adds r0, r1, 0x1 - adds r2, r0 - adds r0, r4, 0x1 - adds r4, r0, r1 -_080A54E6: - cmp r4, r7 - blt _080A54B4 - b _080A5574 -_080A54EC: - ldr r1, _080A5538 - adds r1, r2 - mov r12, r1 - ldr r3, [sp, 0x4] - ldrb r7, [r3] - adds r0, 0x1 - mov r9, r0 - cmp r4, r7 - bge _080A5574 -_080A54FE: - ldrb r5, [r6] - adds r6, 0x1 - cmp r5, 0x7F - ble _080A553C - subs r4, 0x7F - cmp r5, 0x7F - ble _080A556A - movs r7, 0x80 - movs r0, 0x80 - mov r8, r0 - adds r3, r5, 0 - subs r3, 0x7F -_080A5516: - mov r0, r12 - ldrb r1, [r0] - mov r0, r8 - ands r0, r1 - movs r1, 0x1 - add r12, r1 - cmp r0, 0 - bne _080A552C - ldrb r0, [r2] - orrs r0, r7 - strb r0, [r2] -_080A552C: - adds r2, 0x1 - subs r3, 0x1 - cmp r3, 0 - bne _080A5516 - b _080A556A - .align 2, 0 -_080A5538: .4byte 0xffffff00 -_080A553C: - movs r3, 0 - adds r4, 0x1 - cmp r3, r5 - bgt _080A556A - movs r7, 0x80 - movs r3, 0x80 - mov r8, r3 - adds r3, r5, 0x1 -_080A554C: - mov r0, r12 - ldrb r1, [r0] - mov r0, r8 - ands r0, r1 - movs r1, 0x1 - add r12, r1 - cmp r0, 0 - beq _080A5562 - ldrb r0, [r2] - orrs r0, r7 - strb r0, [r2] -_080A5562: - adds r2, 0x1 - subs r3, 0x1 - cmp r3, 0 - bne _080A554C -_080A556A: - adds r4, r5 - ldr r3, [sp, 0x4] - ldrb r7, [r3] - cmp r4, r7 - blt _080A54FE -_080A5574: - mov r1, r10 - subs r0, r1, r7 - adds r2, r0 - mov r0, r9 - ldr r3, [sp, 0x4] - ldrb r3, [r3, 0x1] - str r3, [sp, 0x10] - cmp r0, r3 - blt _080A54A0 -_080A5586: - mov r8, r6 - ldr r0, [sp, 0x4] - ldrh r1, [r0, 0xA] - mov r0, sp - strh r1, [r0, 0xC] -_080A5590: - mov r2, sp - ldrh r2, [r2, 0xC] - lsls r0, r2, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _080A568C - mov r6, r8 - ldr r3, [sp] - movs r0, 0x80 - lsls r0, 3 - adds r2, r3, r0 - movs r0, 0 - b _080A5684 -_080A55AA: - adds r2, 0x5 - movs r4, 0 - cmp r0, 0 - bne _080A55F2 - ldr r3, [sp, 0x4] - ldrb r7, [r3] - movs r1, 0x1 - mov r10, r1 - cmp r0, r7 - bge _080A567C -_080A55BE: - ldrb r1, [r6] - adds r6, 0x1 - cmp r1, 0x7F - ble _080A55E4 - subs r4, 0x7F - cmp r1, 0x7F - ble _080A55E0 - movs r5, 0x40 - adds r3, r1, 0 - subs r3, 0x7F -_080A55D2: - ldrb r0, [r2] - orrs r0, r5 - strb r0, [r2] - adds r2, 0x1 - subs r3, 0x1 - cmp r3, 0 - bne _080A55D2 -_080A55E0: - adds r4, r1 - b _080A55EC -_080A55E4: - adds r0, r1, 0x1 - adds r2, r0 - adds r0, r4, 0x1 - adds r4, r0, r1 -_080A55EC: - cmp r4, r7 - blt _080A55BE - b _080A567C -_080A55F2: - ldr r3, _080A5640 - adds r3, r2 - mov r12, r3 - ldr r1, [sp, 0x4] - ldrb r7, [r1] - adds r0, 0x1 - mov r10, r0 - cmp r4, r7 - bge _080A567C -_080A5604: - ldrb r5, [r6] - adds r6, 0x1 - cmp r5, 0x7F - ble _080A5644 - subs r4, 0x7F - cmp r5, 0x7F - ble _080A5676 - movs r3, 0x40 - mov r8, r3 - movs r0, 0x40 - mov r9, r0 - adds r3, r5, 0 - subs r3, 0x7F -_080A561E: - mov r0, r12 - ldrb r1, [r0] - mov r0, r9 - ands r0, r1 - movs r1, 0x1 - add r12, r1 - cmp r0, 0 - bne _080A5636 - ldrb r0, [r2] - mov r1, r8 - orrs r0, r1 - strb r0, [r2] -_080A5636: - adds r2, 0x1 - subs r3, 0x1 - cmp r3, 0 - bne _080A561E - b _080A5676 - .align 2, 0 -_080A5640: .4byte 0xffffff00 -_080A5644: - movs r3, 0 - adds r4, 0x1 - cmp r3, r5 - bgt _080A5676 - movs r3, 0x40 - mov r8, r3 - movs r0, 0x40 - mov r9, r0 - adds r3, r5, 0x1 -_080A5656: - mov r0, r12 - ldrb r1, [r0] - mov r0, r9 - ands r0, r1 - movs r1, 0x1 - add r12, r1 - cmp r0, 0 - beq _080A566E - ldrb r0, [r2] - mov r1, r8 - orrs r0, r1 - strb r0, [r2] -_080A566E: - adds r2, 0x1 - subs r3, 0x1 - cmp r3, 0 - bne _080A5656 -_080A5676: - adds r4, r5 - cmp r4, r7 - blt _080A5604 -_080A567C: - movs r3, 0xFB - subs r0, r3, r7 - adds r2, r0 - mov r0, r10 -_080A5684: - ldr r1, [sp, 0x10] - cmp r0, r1 - blt _080A55AA - mov r8, r6 -_080A568C: - mov r0, r8 - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A5204 - - thumb_func_start sub_80A56A0 -sub_80A56A0: - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - lsls r3, 24 - lsrs r3, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r0, _080A56BC - ldr r0, [r0] - adds r1, r3, 0 - bl sub_80A3B80 - pop {r0} - bx r0 - .align 2, 0 -_080A56BC: .4byte gUnknown_3001B70 - thumb_func_end sub_80A56A0 - - thumb_func_start sub_80A56C0 -sub_80A56C0: - push {lr} - adds r2, r0, 0 - ldr r0, _080A56D4 - ldr r0, [r0] - movs r1, 0 - bl sub_80A4558 - pop {r0} - bx r0 - .align 2, 0 -_080A56D4: .4byte gUnknown_3001B70 - thumb_func_end sub_80A56C0 - - thumb_func_start sub_80A56D8 -sub_80A56D8: - push {lr} - adds r2, r0, 0 - ldr r0, _080A56EC - ldr r0, [r0] - movs r1, 0 - bl sub_80A456C - pop {r0} - bx r0 - .align 2, 0 -_080A56EC: .4byte gUnknown_3001B70 - thumb_func_end sub_80A56D8 - - thumb_func_start sub_80A56F0 -sub_80A56F0: - ldr r1, _080A5700 - ldr r2, [r1] - adds r2, 0xE8 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [r2] - str r1, [r2, 0x4] - bx lr - .align 2, 0 -_080A5700: .4byte gUnknown_3001B6C - thumb_func_end sub_80A56F0 - - thumb_func_start sub_80A5704 -sub_80A5704: - ldr r1, _080A5724 - ldr r3, [r1] - adds r2, r3, 0 - adds r2, 0xF8 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [r2] - str r1, [r2, 0x4] - adds r0, r3, 0 - adds r0, 0xF0 - movs r1, 0 - str r1, [r0] - adds r0, 0x4 - str r1, [r0] - bx lr - .align 2, 0 -_080A5724: .4byte gUnknown_3001B6C - thumb_func_end sub_80A5704 - - thumb_func_start sub_80A5728 -sub_80A5728: - ldr r0, _080A5734 - ldr r0, [r0] - adds r0, 0xE4 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080A5734: .4byte gUnknown_3001B6C - thumb_func_end sub_80A5728 - - thumb_func_start sub_80A5738 -sub_80A5738: - ldr r0, _080A5750 - ldr r0, [r0] - adds r0, 0xE4 - movs r2, 0 - ldrsh r1, [r0, r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _080A5754 - adds r0, r1 - bx lr - .align 2, 0 -_080A5750: .4byte gUnknown_3001B6C -_080A5754: .4byte gUnknown_811BAF4 - thumb_func_end sub_80A5738 - - thumb_func_start sub_80A5758 -sub_80A5758: - push {lr} - adds r1, r0, 0 - ldr r0, _080A5768 - ldr r0, [r0] - cmp r0, 0 - bne _080A576C - movs r0, 0 - b _080A5772 - .align 2, 0 -_080A5768: .4byte gUnknown_3001B70 -_080A576C: - bl sub_80A4608 - movs r0, 0x1 -_080A5772: - pop {r1} - bx r1 - thumb_func_end sub_80A5758 - - thumb_func_start sub_80A5778 -sub_80A5778: - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - ldr r0, _080A578C - ldr r0, [r0] - cmp r0, 0 - bne _080A5790 - movs r0, 0 - b _080A5798 - .align 2, 0 -_080A578C: .4byte gUnknown_3001B70 -_080A5790: - adds r1, r3, 0 - bl sub_80A463C - movs r0, 0x1 -_080A5798: - pop {r1} - bx r1 - thumb_func_end sub_80A5778 - - thumb_func_start sub_80A579C -sub_80A579C: - push {r4-r7,lr} - adds r6, r0, 0 - adds r5, r1, 0 - ldr r0, _080A5838 - ldr r3, [r0] - cmp r3, 0 - beq _080A5854 - ldr r0, _080A583C - ldr r0, [r0] - adds r2, r0, 0 - adds r2, 0xE4 - movs r0, 0 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A5854 - adds r0, r1, 0 - lsls r4, r0, 1 - adds r4, r0 - lsls r4, 2 - ldr r0, _080A5840 - adds r4, r0 - adds r0, r3, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_80A463C - ldr r2, [r6] - mov r12, r2 - movs r0, 0xF0 - lsls r0, 7 - add r0, r12 - str r0, [r6] - ldr r3, [r6, 0x4] - movs r7, 0xA0 - lsls r7, 7 - adds r0, r3, r7 - str r0, [r6, 0x4] - ldr r2, [r5] - ldr r1, _080A5844 - adds r0, r2, r1 - str r0, [r5] - ldr r1, [r5, 0x4] - ldr r7, _080A5848 - adds r0, r1, r7 - str r0, [r5, 0x4] - movs r7, 0 - ldrsh r0, [r4, r7] - cmp r0, 0xA - bne _080A581E - movs r0, 0x90 - lsls r0, 8 - add r0, r12 - str r0, [r6] - movs r4, 0xD0 - lsls r4, 7 - adds r0, r3, r4 - str r0, [r6, 0x4] - ldr r7, _080A584C - adds r0, r2, r7 - str r0, [r5] - ldr r2, _080A5850 - adds r0, r1, r2 - str r0, [r5, 0x4] -_080A581E: - ldr r1, [r6] - ldr r0, [r5] - cmp r1, r0 - ble _080A5828 - str r1, [r5] -_080A5828: - ldr r1, [r6, 0x4] - ldr r0, [r5, 0x4] - cmp r1, r0 - ble _080A5832 - str r1, [r5, 0x4] -_080A5832: - movs r0, 0x1 - b _080A5856 - .align 2, 0 -_080A5838: .4byte gUnknown_3001B70 -_080A583C: .4byte gUnknown_3001B6C -_080A5840: .4byte gUnknown_811BAF4 -_080A5844: .4byte 0xffff8800 -_080A5848: .4byte 0xffffb000 -_080A584C: .4byte 0xffff7000 -_080A5850: .4byte 0xffff9800 -_080A5854: - movs r0, 0 -_080A5856: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A579C - - thumb_func_start sub_80A585C -sub_80A585C: - push {r4-r7,lr} - adds r7, r1, 0 - ldr r1, _080A5884 - ldr r2, [r1] - ldr r1, _080A5888 - adds r2, r1 - ldr r1, [r0, 0x4] - lsls r1, 8 - ldr r0, [r0] - adds r1, r0 - ldr r0, _080A588C - adds r1, r0 - ldr r0, [r2] - adds r5, r0, r1 - ldr r4, [r7, 0x4] - cmp r0, 0 - bne _080A5890 -_080A587E: - movs r0, 0x1 - b _080A58C0 - .align 2, 0 -_080A5884: .4byte gUnknown_3001B70 -_080A5888: .4byte 0x00000544 -_080A588C: .4byte 0x00000405 -_080A5890: - cmp r4, 0 - ble _080A58BE - movs r1, 0x80 - lsls r1, 1 - mov r12, r1 -_080A589A: - ldr r2, [r7] - adds r3, r5, 0 - cmp r2, 0 - ble _080A58B6 - movs r6, 0x80 -_080A58A4: - ldrb r1, [r3] - adds r0, r6, 0 - ands r0, r1 - adds r3, 0x1 - cmp r0, 0 - bne _080A587E - subs r2, 0x1 - cmp r2, 0 - bgt _080A58A4 -_080A58B6: - add r5, r12 - subs r4, 0x1 - cmp r4, 0 - bgt _080A589A -_080A58BE: - movs r0, 0 -_080A58C0: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A585C - - thumb_func_start sub_80A58C8 -sub_80A58C8: - push {r4-r7,lr} - adds r7, r1, 0 - ldr r1, _080A58F0 - ldr r2, [r1] - ldr r1, _080A58F4 - adds r2, r1 - ldr r1, [r0, 0x4] - lsls r1, 8 - ldr r0, [r0] - adds r1, r0 - ldr r0, _080A58F8 - adds r1, r0 - ldr r0, [r2] - adds r5, r0, r1 - ldr r4, [r7, 0x4] - cmp r0, 0 - bne _080A58FC -_080A58EA: - movs r0, 0x1 - b _080A592C - .align 2, 0 -_080A58F0: .4byte gUnknown_3001B70 -_080A58F4: .4byte 0x00000544 -_080A58F8: .4byte 0x00000405 -_080A58FC: - cmp r4, 0 - ble _080A592A - movs r1, 0x80 - lsls r1, 1 - mov r12, r1 -_080A5906: - ldr r2, [r7] - adds r3, r5, 0 - cmp r2, 0 - ble _080A5922 - movs r6, 0x40 -_080A5910: - ldrb r1, [r3] - adds r0, r6, 0 - ands r0, r1 - adds r3, 0x1 - cmp r0, 0 - bne _080A58EA - subs r2, 0x1 - cmp r2, 0 - bgt _080A5910 -_080A5922: - add r5, r12 - subs r4, 0x1 - cmp r4, 0 - bgt _080A5906 -_080A592A: - movs r0, 0 -_080A592C: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A58C8 - - thumb_func_start sub_80A5934 -sub_80A5934: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r3, r2, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _080A5958 - ldr r0, [r0] - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_80A4660 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080A5958: .4byte gUnknown_3001B70 - thumb_func_end sub_80A5934 - - thumb_func_start sub_80A595C -sub_80A595C: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r3, r2, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _080A5980 - ldr r0, [r0] - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_80A46C0 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080A5980: .4byte gUnknown_3001B70 - thumb_func_end sub_80A595C - - thumb_func_start sub_80A5984 -sub_80A5984: - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - ldr r0, _080A599C - ldr r0, [r0] - adds r1, r3, 0 - bl sub_80A4720 - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - .align 2, 0 -_080A599C: .4byte gUnknown_3001B70 - thumb_func_end sub_80A5984 - - thumb_func_start sub_80A59A0 -sub_80A59A0: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r3, r2, 16 - lsrs r3, 16 - ldr r0, _080A59BC - ldr r0, [r0] - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_80A4740 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080A59BC: .4byte gUnknown_3001B70 - thumb_func_end sub_80A59A0 - - thumb_func_start GroundMap_Action -GroundMap_Action: - push {lr} - bl nullsub_123 - ldr r0, _080A59D4 - ldr r0, [r0] - ldr r1, _080A59D8 - bl HandleAction - pop {r0} - bx r0 - .align 2, 0 -_080A59D4: .4byte gUnknown_3001B6C -_080A59D8: .4byte gUnknown_8117770 - thumb_func_end GroundMap_Action - - thumb_func_start sub_80A59DC -sub_80A59DC: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x58 - ldr r7, _080A5A34 - ldr r0, [r7] - cmp r0, 0 - bne _080A59F0 - b _080A5E5A -_080A59F0: - mov r9, sp - mov r0, sp - bl sub_809D248 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _080A5A04 - str r0, [sp] - str r0, [sp, 0x4] -_080A5A04: - ldr r0, _080A5A38 - mov r8, r0 - ldr r3, [r0] - adds r0, r3, 0 - adds r0, 0xE4 - movs r1, 0 - ldrsh r0, [r0, r1] - mov r6, r8 - cmp r0, 0xAB - bne _080A5A1A - b _080A5BBE -_080A5A1A: - cmp r0, 0xAB - bgt _080A5A46 - cmp r0, 0xA3 - bgt _080A5A3C - cmp r0, 0xA2 - bge _080A5A76 - cmp r0, 0x4 - bne _080A5A2C - b _080A5D76 -_080A5A2C: - cmp r0, 0xA1 - bne _080A5A32 - b _080A5E28 -_080A5A32: - b _080A5E46 - .align 2, 0 -_080A5A34: .4byte gUnknown_3001B70 -_080A5A38: .4byte gUnknown_3001B6C -_080A5A3C: - cmp r0, 0xA8 - beq _080A5AF4 - cmp r0, 0xAA - beq _080A5AF4 - b _080A5E46 -_080A5A46: - cmp r0, 0xB0 - bne _080A5A4C - b _080A5C76 -_080A5A4C: - cmp r0, 0xB0 - bgt _080A5A5E - cmp r0, 0xAE - bne _080A5A56 - b _080A5B58 -_080A5A56: - cmp r0, 0xAF - bne _080A5A5C - b _080A5BD8 -_080A5A5C: - b _080A5E46 -_080A5A5E: - cmp r0, 0xDF - beq _080A5A76 - cmp r0, 0xDF - bgt _080A5A6E - cmp r0, 0xBA - bne _080A5A6C - b _080A5D18 -_080A5A6C: - b _080A5E46 -_080A5A6E: - cmp r0, 0xE0 - bne _080A5A74 - b _080A5DDA -_080A5A74: - b _080A5E46 -_080A5A76: - ldr r3, [r6] - adds r2, r3, 0 - adds r2, 0xF4 - ldr r1, [r2] - adds r0, r1, 0x2 - str r0, [r2] - adds r4, r3, 0 - adds r4, 0xFC - cmp r0, 0 - bge _080A5A8C - adds r0, r1, 0x5 -_080A5A8C: - asrs r1, r0, 2 - ldr r0, [r4] - adds r0, r1 - str r0, [r4] - ldr r0, [r2] - movs r1, 0x3 - ands r0, r1 - str r0, [r2] - ldr r5, _080A5AF0 - ldr r0, [r5] - adds r2, r3, 0 - adds r2, 0xF8 - movs r1, 0 - bl sub_80A4580 - ldr r0, [sp] - str r0, [sp, 0x8] - ldr r0, [r6] - adds r0, 0xFC - ldr r1, [sp, 0x4] - ldr r0, [r0] - adds r1, r0 - add r4, sp, 0x8 - str r1, [r4, 0x4] - ldr r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl sub_80A4580 - ldr r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl sub_80A456C - ldr r0, [sp] - str r0, [sp, 0x8] - ldr r0, [r6] - adds r0, 0xFC - ldr r1, [sp, 0x4] - ldr r0, [r0] - subs r1, r0 - str r1, [r4, 0x4] - ldr r0, [r5] - movs r1, 0x1 - adds r2, r4, 0 - bl sub_80A4580 - ldr r0, [r5] - b _080A5DD0 - .align 2, 0 -_080A5AF0: .4byte gUnknown_3001B70 -_080A5AF4: - ldr r2, [r6] - adds r3, r2, 0 - adds r3, 0xF0 - adds r0, r2, 0 - adds r0, 0xE8 - ldr r1, [r3] - ldr r0, [r0] - adds r1, r0 - str r1, [r3] - adds r2, 0xF8 - cmp r1, 0 - bge _080A5B0E - adds r1, 0x7 -_080A5B0E: - asrs r1, 3 - ldr r0, [r2] - adds r0, r1 - str r0, [r2] - ldr r1, [r3] - adds r0, r1, 0 - cmp r1, 0 - bge _080A5B20 - adds r0, r1, 0x7 -_080A5B20: - asrs r0, 3 - lsls r0, 3 - subs r0, r1, r0 - str r0, [r3] - ldr r5, _080A5B54 - ldr r0, [r5] - movs r1, 0 - bl sub_80A4580 - ldr r0, [r6] - adds r0, 0xF8 - ldr r1, [sp] - ldr r0, [r0] - adds r1, r0 - str r1, [sp, 0x10] - ldr r0, [sp, 0x4] - add r4, sp, 0x10 - str r0, [r4, 0x4] - ldr r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl sub_80A4580 - ldr r0, [r5] - movs r1, 0 - b _080A5DD2 - .align 2, 0 -_080A5B54: .4byte gUnknown_3001B70 -_080A5B58: - adds r4, r3, 0 - adds r4, 0xF0 - adds r0, r3, 0 - adds r0, 0xE8 - ldr r1, [r4] - ldr r0, [r0] - adds r1, r0 - str r1, [r4] - adds r2, r3, 0 - adds r2, 0xF8 - cmp r1, 0 - bge _080A5B72 - adds r1, 0x7 -_080A5B72: - asrs r1, 3 - ldr r0, [r2] - adds r0, r1 - str r0, [r2] - ldr r1, [r4] - adds r0, r1, 0 - cmp r1, 0 - bge _080A5B84 - adds r0, r1, 0x7 -_080A5B84: - asrs r0, 3 - lsls r0, 3 - subs r0, r1, r0 - str r0, [r4] - ldr r0, [r7] - movs r1, 0 - bl sub_80A4580 - mov r1, r8 - ldr r0, [r1] - adds r0, 0xF8 - ldr r1, [sp] - ldr r0, [r0] - adds r1, r0 - str r1, [sp, 0x18] - ldr r0, [sp, 0x4] - add r4, sp, 0x18 - str r0, [r4, 0x4] - ldr r0, [r7] - movs r1, 0 - adds r2, r4, 0 - bl sub_80A4580 - ldr r0, [r7] - movs r1, 0 - adds r2, r4, 0 - bl sub_80A456C - b _080A5DCE -_080A5BBE: - ldr r0, [sp] - ldr r1, [sp, 0x4] - str r0, [sp, 0x20] - str r1, [sp, 0x24] - ldr r0, [r7] - add r4, sp, 0x20 - movs r1, 0 - adds r2, r4, 0 - bl sub_80A4580 - ldr r0, [r7] - movs r1, 0 - b _080A5DD2 -_080A5BD8: - ldr r0, [r7] - movs r1, 0 - mov r2, sp - bl sub_80A456C - mov r0, r8 - ldr r3, [r0] - adds r4, r3, 0 - adds r4, 0xF0 - adds r1, r3, 0 - adds r1, 0xE8 - ldr r0, [r4] - ldr r1, [r1] - adds r0, r1 - str r0, [r4] - adds r5, r3, 0 - adds r5, 0xF4 - adds r1, r3, 0 - adds r1, 0xEC - ldr r0, [r5] - ldr r1, [r1] - adds r0, r1 - str r0, [r5] - adds r2, r3, 0 - adds r2, 0xF8 - ldr r1, [r4] - cmp r1, 0 - bge _080A5C12 - adds r1, 0x7 -_080A5C12: - asrs r1, 3 - ldr r0, [r2] - adds r0, r1 - str r0, [r2] - adds r3, 0xFC - ldr r1, [r5] - cmp r1, 0 - bge _080A5C24 - adds r1, 0x7 -_080A5C24: - asrs r1, 3 - ldr r0, [r3] - adds r0, r1 - str r0, [r3] - ldr r1, [r4] - adds r0, r1, 0 - cmp r1, 0 - bge _080A5C36 - adds r0, r1, 0x7 -_080A5C36: - asrs r0, 3 - lsls r0, 3 - subs r0, r1, r0 - str r0, [r4] - ldr r1, [r5] - adds r0, r1, 0 - cmp r1, 0 - bge _080A5C48 - adds r0, r1, 0x7 -_080A5C48: - asrs r0, 3 - lsls r0, 3 - subs r0, r1, r0 - str r0, [r5] - ldr r0, [r7] - movs r1, 0 - bl sub_80A4580 - mov r1, r8 - ldr r2, [r1] - adds r1, r2, 0 - adds r1, 0xF8 - ldr r0, [sp] - ldr r1, [r1] - adds r0, r1 - str r0, [sp, 0x28] - adds r2, 0xFC - mov r1, r9 - ldr r0, [r1, 0x4] - ldr r1, [r2] - adds r0, r1 - add r4, sp, 0x28 - b _080A5DC2 -_080A5C76: - adds r4, r3, 0 - adds r4, 0xF0 - adds r1, r3, 0 - adds r1, 0xE8 - ldr r0, [r4] - ldr r1, [r1] - adds r0, r1 - str r0, [r4] - adds r5, r3, 0 - adds r5, 0xF4 - adds r1, r3, 0 - adds r1, 0xEC - ldr r0, [r5] - ldr r1, [r1] - adds r0, r1 - str r0, [r5] - adds r6, r3, 0 - adds r6, 0xF8 - ldr r1, [r4] - cmp r1, 0 - bge _080A5CA2 - adds r1, 0x7 -_080A5CA2: - asrs r1, 3 - ldr r0, [r6] - adds r0, r1 - str r0, [r6] - adds r2, r3, 0 - adds r2, 0xFC - ldr r1, [r5] - cmp r1, 0 - bge _080A5CB6 - adds r1, 0x7 -_080A5CB6: - asrs r1, 3 - ldr r0, [r2] - adds r0, r1 - str r0, [r2] - ldr r1, [r4] - adds r0, r1, 0 - cmp r1, 0 - bge _080A5CC8 - adds r0, r1, 0x7 -_080A5CC8: - asrs r0, 3 - lsls r0, 3 - subs r0, r1, r0 - str r0, [r4] - ldr r1, [r5] - adds r0, r1, 0 - cmp r1, 0 - bge _080A5CDA - adds r0, r1, 0x7 -_080A5CDA: - asrs r0, 3 - lsls r0, 3 - subs r0, r1, r0 - str r0, [r5] - ldr r0, [r7] - movs r1, 0 - adds r2, r6, 0 - bl sub_80A4580 - mov r0, r8 - ldr r2, [r0] - adds r1, r2, 0 - adds r1, 0xF8 - ldr r0, [sp] - ldr r1, [r1] - adds r0, r1 - str r0, [sp, 0x30] - adds r2, 0xFC - ldr r0, [sp, 0x4] - ldr r1, [r2] - adds r0, r1 - add r4, sp, 0x30 - str r0, [r4, 0x4] - ldr r0, [r7] - movs r1, 0 - adds r2, r4, 0 - bl sub_80A4580 - ldr r0, [r7] - movs r1, 0 - b _080A5DD2 -_080A5D18: - ldr r0, [r7] - movs r1, 0x1 - mov r2, sp - bl sub_80A456C - mov r0, r8 - ldr r1, [r0] - adds r3, r1, 0 - adds r3, 0xF0 - ldr r4, [r3] - adds r0, r4, 0x1 - str r0, [r3] - adds r2, r1, 0 - adds r2, 0xF8 - cmp r0, 0 - bge _080A5D3A - adds r0, r4, 0x4 -_080A5D3A: - asrs r1, r0, 2 - ldr r0, [r2] - adds r0, r1 - str r0, [r2] - ldr r0, [r3] - movs r1, 0x3 - ands r0, r1 - str r0, [r3] - ldr r0, [r7] - movs r1, 0x1 - bl sub_80A4580 - mov r1, r8 - ldr r0, [r1] - adds r0, 0xF8 - ldr r1, [sp] - ldr r0, [r0] - adds r1, r0 - str r1, [sp, 0x38] - ldr r0, [sp, 0x4] - add r4, sp, 0x38 - str r0, [r4, 0x4] - ldr r0, [r7] - movs r1, 0 - adds r2, r4, 0 - bl sub_80A4580 - ldr r0, [r7] - movs r1, 0 - b _080A5DD2 -_080A5D76: - ldr r0, [r7] - movs r1, 0 - mov r2, sp - bl sub_80A456C - mov r0, r8 - ldr r1, [r0] - adds r3, r1, 0 - adds r3, 0xF0 - ldr r4, [r3] - adds r0, r4, 0x1 - str r0, [r3] - adds r2, r1, 0 - adds r2, 0xF8 - cmp r0, 0 - bge _080A5D98 - adds r0, 0x7 -_080A5D98: - asrs r1, r0, 3 - ldr r0, [r2] - adds r0, r1 - str r0, [r2] - ldr r0, [r3] - movs r1, 0x7 - ands r0, r1 - str r0, [r3] - ldr r0, [r7] - movs r1, 0x1 - bl sub_80A4580 - mov r1, r8 - ldr r0, [r1] - adds r0, 0xF8 - ldr r1, [sp] - ldr r0, [r0] - adds r1, r0 - str r1, [sp, 0x40] - ldr r0, [sp, 0x4] - add r4, sp, 0x40 -_080A5DC2: - str r0, [r4, 0x4] - ldr r0, [r7] - movs r1, 0x1 - adds r2, r4, 0 - bl sub_80A4580 -_080A5DCE: - ldr r0, [r7] -_080A5DD0: - movs r1, 0x1 -_080A5DD2: - adds r2, r4, 0 - bl sub_80A456C - b _080A5E52 -_080A5DDA: - ldr r0, [r7] - movs r1, 0 - mov r2, sp - bl sub_80A456C - mov r0, r8 - ldr r1, [r0] - adds r3, r1, 0 - adds r3, 0xF0 - ldr r4, [r3] - adds r0, r4, 0x1 - str r0, [r3] - adds r2, r1, 0 - adds r2, 0xF8 - cmp r0, 0 - bge _080A5DFC - adds r0, 0x7 -_080A5DFC: - asrs r1, r0, 3 - ldr r0, [r2] - adds r0, r1 - str r0, [r2] - ldr r0, [r3] - movs r1, 0x7 - ands r0, r1 - str r0, [r3] - ldr r0, [r7] - movs r1, 0x1 - bl sub_80A4580 - mov r1, r8 - ldr r0, [r1] - adds r0, 0xF8 - ldr r0, [r0] - str r0, [sp, 0x48] - ldr r0, [sp, 0x4] - add r2, sp, 0x48 - str r0, [r2, 0x4] - ldr r0, [r7] - b _080A5E3E -_080A5E28: - ldr r0, [r7] - movs r1, 0 - mov r2, sp - bl sub_80A456C - movs r0, 0 - movs r1, 0 - str r0, [sp, 0x50] - str r1, [sp, 0x54] - ldr r0, [r7] - add r2, sp, 0x50 -_080A5E3E: - movs r1, 0x1 - bl sub_80A456C - b _080A5E52 -_080A5E46: - ldr r0, _080A5E6C - ldr r0, [r0] - movs r1, 0 - mov r2, sp - bl sub_80A456C -_080A5E52: - ldr r0, _080A5E6C - ldr r0, [r0] - bl sub_80A4764 -_080A5E5A: - bl sub_80A60D8 - add sp, 0x58 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A5E6C: .4byte gUnknown_3001B70 - thumb_func_end sub_80A59DC - - thumb_func_start sub_80A5E70 -sub_80A5E70: - push {lr} - ldr r0, _080A5E88 - ldr r0, [r0] - cmp r0, 0 - beq _080A5E7E - bl sub_80A49E8 -_080A5E7E: - bl sub_80A62D0 - pop {r0} - bx r0 - .align 2, 0 -_080A5E88: .4byte gUnknown_3001B70 - thumb_func_end sub_80A5E70 - - thumb_func_start sub_80A5E8C -sub_80A5E8C: - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _080A5EB4 - movs r0, 0x24 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r5] - ldr r1, _080A5EB8 - strh r1, [r0] - movs r1, 0 - strb r1, [r0, 0x2] - adds r0, r4, 0 - bl sub_80A5EDC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080A5EB4: .4byte gUnknown_3001B74 -_080A5EB8: .4byte 0x0000ffff - thumb_func_end sub_80A5E8C - - thumb_func_start sub_80A5EBC -sub_80A5EBC: - push {r4,lr} - movs r0, 0 - bl sub_80A5EDC - ldr r4, _080A5ED8 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A5ED8: .4byte gUnknown_3001B74 - thumb_func_end sub_80A5EBC - - thumb_func_start sub_80A5EDC -sub_80A5EDC: - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - adds r5, r0, 0 - movs r6, 0x1 - negs r6, r6 - movs r0, 0 - movs r1, 0x1B - adds r2, r6, 0 - bl sub_80018D8 - ldr r0, _080A5F34 - ldr r1, [r0] - ldr r0, _080A5F38 - strh r0, [r1] - strb r5, [r1, 0x2] - ldr r4, _080A5F3C - ldr r0, [r4] - cmp r0, 0 - beq _080A5F12 - bl sub_80A2D00 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_080A5F12: - cmp r5, 0 - beq _080A5F2E - ldr r0, _080A5F40 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r4] - ldr r1, _080A5F44 - bl sub_80A2B40 - ldr r0, [r4] - adds r1, r6, 0 - bl sub_80A2FBC -_080A5F2E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A5F34: .4byte gUnknown_3001B74 -_080A5F38: .4byte 0x0000ffff -_080A5F3C: .4byte gUnknown_3001B78 -_080A5F40: .4byte 0x0000055c -_080A5F44: .4byte gUnknown_8117784 - thumb_func_end sub_80A5EDC - - thumb_func_start nullsub_121 -nullsub_121: - bx lr - thumb_func_end nullsub_121 - - thumb_func_start nullsub_122 -nullsub_122: - bx lr - thumb_func_end nullsub_122 - - thumb_func_start GroundWeather_Select -GroundWeather_Select: - push {r4-r7,lr} - lsls r0, 16 - asrs r5, r0, 16 - adds r7, r5, 0 - ldr r1, _080A5F94 - ldr r6, _080A5F98 - ldr r0, [r6] - ldrb r3, [r0, 0x2] - movs r0, 0 - adds r2, r5, 0 - bl Log - movs r0, 0 - movs r1, 0x1B - adds r2, r5, 0 - bl sub_80018D8 - ldr r0, [r6] - movs r4, 0 - strh r5, [r0] - ldrb r0, [r0, 0x2] - cmp r0, 0 - bne _080A5F80 - b _080A60B4 -_080A5F80: - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - bne _080A5FA0 - ldr r0, _080A5F9C - ldr r0, [r0] - adds r1, r5, 0 - bl sub_80A2FBC - b _080A60B4 - .align 2, 0 -_080A5F94: .4byte gUnknown_811779C -_080A5F98: .4byte gUnknown_3001B74 -_080A5F9C: .4byte gUnknown_3001B78 -_080A5FA0: - lsls r1, r7, 2 - ldr r0, _080A5FD8 - adds r5, r1, r0 - ldr r0, _080A5FDC - ldr r0, [r0] - movs r2, 0x2 - ldrsh r1, [r5, r2] - bl sub_80A2FBC - ldr r0, [r6] - str r4, [r0, 0x4] - str r4, [r0, 0x8] - str r4, [r0, 0xC] - str r4, [r0, 0x10] - str r4, [r0, 0x20] - str r4, [r0, 0x1C] - str r4, [r0, 0x18] - str r4, [r0, 0x14] - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0xF - bhi _080A6098 - lsls r0, 2 - ldr r1, _080A5FE0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080A5FD8: .4byte gUnknown_811E5F4 -_080A5FDC: .4byte gUnknown_3001B78 -_080A5FE0: .4byte _080A5FE4 - .align 2, 0 -_080A5FE4: - .4byte _080A6088 - .4byte _080A6098 - .4byte _080A6098 - .4byte _080A6088 - .4byte _080A6088 - .4byte _080A6088 - .4byte _080A6098 - .4byte _080A6040 - .4byte _080A6088 - .4byte _080A6024 - .4byte _080A6098 - .4byte _080A6098 - .4byte _080A6098 - .4byte _080A6098 - .4byte _080A6050 - .4byte _080A606C -_080A6024: - ldr r0, _080A6034 - ldr r0, [r0] - movs r1, 0x1 - bl sub_80A3BB0 - ldr r1, _080A6038 - ldr r2, _080A603C - b _080A60B0 - .align 2, 0 -_080A6034: .4byte gUnknown_3001B78 -_080A6038: .4byte gUnknown_2026E4E -_080A603C: .4byte 0x0000040c -_080A6040: - ldr r1, _080A6048 - ldr r2, _080A604C - b _080A60B0 - .align 2, 0 -_080A6048: .4byte gUnknown_2026E4E -_080A604C: .4byte 0x00000808 -_080A6050: - ldr r0, _080A6060 - ldr r0, [r0] - movs r1, 0x1 - bl sub_80A3BB0 - ldr r1, _080A6064 - ldr r2, _080A6068 - b _080A60B0 - .align 2, 0 -_080A6060: .4byte gUnknown_3001B78 -_080A6064: .4byte gUnknown_2026E4E -_080A6068: .4byte 0x00001010 -_080A606C: - ldr r0, _080A607C - ldr r0, [r0] - movs r1, 0x1 - bl sub_80A3BB0 - ldr r1, _080A6080 - ldr r2, _080A6084 - b _080A60B0 - .align 2, 0 -_080A607C: .4byte gUnknown_3001B78 -_080A6080: .4byte gUnknown_2026E4E -_080A6084: .4byte 0x0000040c -_080A6088: - ldr r1, _080A6090 - ldr r2, _080A6094 - b _080A60B0 - .align 2, 0 -_080A6090: .4byte gUnknown_2026E4E -_080A6094: .4byte 0x00001010 -_080A6098: - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0x1 - bne _080A60AA - ldr r0, _080A60BC - ldr r0, [r0] - movs r1, 0x1 - bl sub_80A3BB0 -_080A60AA: - ldr r1, _080A60C0 - movs r2, 0x80 - lsls r2, 5 -_080A60B0: - adds r0, r2, 0 - strh r0, [r1] -_080A60B4: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A60BC: .4byte gUnknown_3001B78 -_080A60C0: .4byte gUnknown_2026E4E - thumb_func_end GroundWeather_Select - - thumb_func_start sub_80A60C4 -sub_80A60C4: - ldr r0, _080A60D0 - ldr r0, [r0] - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080A60D0: .4byte gUnknown_3001B74 - thumb_func_end sub_80A60C4 - - thumb_func_start nullsub_123 -nullsub_123: - bx lr - thumb_func_end nullsub_123 - - thumb_func_start sub_80A60D8 -sub_80A60D8: - push {r4-r6,lr} - sub sp, 0x28 - ldr r0, _080A6104 - ldr r3, [r0] - ldrb r1, [r3, 0x2] - adds r6, r0, 0 - cmp r1, 0 - bne _080A60EA - b _080A62C0 -_080A60EA: - ldrh r0, [r3] - adds r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x10 - bls _080A60F8 - b _080A6278 -_080A60F8: - lsls r0, 2 - ldr r1, _080A6108 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080A6104: .4byte gUnknown_3001B74 -_080A6108: .4byte _080A610C - .align 2, 0 -_080A610C: - .4byte _080A62AC - .4byte _080A6278 - .4byte _080A6278 - .4byte _080A6278 - .4byte _080A6278 - .4byte _080A6278 - .4byte _080A6278 - .4byte _080A6278 - .4byte _080A6278 - .4byte _080A6278 - .4byte _080A6150 - .4byte _080A61CC - .4byte _080A61CC - .4byte _080A61CC - .4byte _080A61CC - .4byte _080A61D0 - .4byte _080A6224 -_080A6150: - ldr r2, [r6] - ldr r1, [r2, 0x4] - adds r0, r1, 0x2 - str r0, [r2, 0x4] - ldr r4, [r2, 0x8] - adds r3, r4, 0x1 - str r3, [r2, 0x8] - cmp r0, 0 - bge _080A6164 - adds r0, r1, 0x5 -_080A6164: - asrs r1, r0, 2 - ldr r0, [r2, 0xC] - adds r0, r1 - str r0, [r2, 0xC] - adds r1, r3, 0 - cmp r1, 0 - bge _080A6174 - adds r1, r4, 0x4 -_080A6174: - asrs r1, 2 - ldr r0, [r2, 0x10] - adds r0, r1 - str r0, [r2, 0x10] - ldr r4, _080A61C8 - ldr r0, [r4] - adds r2, 0xC - movs r1, 0 - bl sub_80A4580 - ldr r1, [r6] - ldr r0, [r1, 0x4] - movs r2, 0x3 - ands r0, r2 - str r0, [r1, 0x4] - ldr r0, [r1, 0x8] - ands r0, r2 - str r0, [r1, 0x8] - mov r0, sp - bl sub_80A56C0 - ldr r2, [r6] - ldr r0, [sp] - ldr r1, [r2, 0xC] - subs r0, r1 - str r0, [sp] - ldr r0, [sp, 0x4] - ldr r1, [r2, 0x10] - adds r0, r1 - str r0, [sp, 0x4] - ldr r0, [r4] - movs r1, 0 - mov r2, sp - bl sub_80A4580 - ldr r0, [r4] - movs r1, 0 - mov r2, sp - bl sub_80A456C - b _080A62B8 - .align 2, 0 -_080A61C8: .4byte gUnknown_3001B78 -_080A61CC: - add r4, sp, 0x8 - b _080A628E -_080A61D0: - ldr r2, [r6] - ldr r1, [r2, 0x4] - adds r0, r1, 0x1 - str r0, [r2, 0x4] - cmp r0, 0 - bge _080A61DE - adds r0, r1, 0x4 -_080A61DE: - asrs r1, r0, 2 - ldr r0, [r2, 0xC] - adds r0, r1 - str r0, [r2, 0xC] - ldr r5, _080A6220 - ldr r0, [r5] - adds r2, 0xC - movs r1, 0 - bl sub_80A4580 - ldr r2, [r6] - ldr r0, [r2, 0x4] - movs r1, 0x3 - ands r0, r1 - str r0, [r2, 0x4] - add r4, sp, 0x10 - adds r0, r4, 0 - bl sub_80A56C0 - ldr r1, [r6] - ldr r0, [sp, 0x10] - ldr r1, [r1, 0xC] - subs r0, r1 - str r0, [sp, 0x10] - movs r0, 0 - str r0, [r4, 0x4] - ldr r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl sub_80A4580 - ldr r0, [r5] - b _080A6298 - .align 2, 0 -_080A6220: .4byte gUnknown_3001B78 -_080A6224: - ldr r2, [r6] - ldr r1, [r2, 0x4] - adds r0, r1, 0x2 - str r0, [r2, 0x4] - cmp r0, 0 - bge _080A6232 - adds r0, r1, 0x5 -_080A6232: - asrs r1, r0, 2 - ldr r0, [r2, 0xC] - adds r0, r1 - str r0, [r2, 0xC] - ldr r5, _080A6274 - ldr r0, [r5] - adds r2, 0xC - movs r1, 0 - bl sub_80A4580 - ldr r2, [r6] - ldr r0, [r2, 0x4] - movs r1, 0x3 - ands r0, r1 - str r0, [r2, 0x4] - add r4, sp, 0x18 - adds r0, r4, 0 - bl sub_80A56C0 - ldr r1, [r6] - ldr r0, [sp, 0x18] - ldr r1, [r1, 0xC] - subs r0, r1 - str r0, [sp, 0x18] - movs r0, 0 - str r0, [r4, 0x4] - ldr r0, [r5] - movs r1, 0 - adds r2, r4, 0 - bl sub_80A4580 - ldr r0, [r5] - b _080A6298 - .align 2, 0 -_080A6274: .4byte gUnknown_3001B78 -_080A6278: - ldr r0, [r6] - movs r1, 0 - ldrsh r0, [r0, r1] - lsls r0, 2 - ldr r1, _080A62A4 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _080A62AC - add r4, sp, 0x20 -_080A628E: - adds r0, r4, 0 - bl sub_80A56C0 - ldr r0, _080A62A8 - ldr r0, [r0] -_080A6298: - movs r1, 0 - adds r2, r4, 0 - bl sub_80A456C - b _080A62B8 - .align 2, 0 -_080A62A4: .4byte gUnknown_811E5F4 -_080A62A8: .4byte gUnknown_3001B78 -_080A62AC: - ldr r0, _080A62C8 - ldr r0, [r0] - ldr r2, _080A62CC - movs r1, 0 - bl sub_80A456C -_080A62B8: - ldr r0, _080A62C8 - ldr r0, [r0] - bl sub_80A4764 -_080A62C0: - add sp, 0x28 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A62C8: .4byte gUnknown_3001B78 -_080A62CC: .4byte gUnknown_81177BC - thumb_func_end sub_80A60D8 - - thumb_func_start sub_80A62D0 -sub_80A62D0: - push {lr} - ldr r0, _080A62E8 - ldr r0, [r0] - ldrb r0, [r0, 0x2] - cmp r0, 0 - beq _080A62E4 - ldr r0, _080A62EC - ldr r0, [r0] - bl sub_80A49E8 -_080A62E4: - pop {r0} - bx r0 - .align 2, 0 -_080A62E8: .4byte gUnknown_3001B74 -_080A62EC: .4byte gUnknown_3001B78 - thumb_func_end sub_80A62D0 - - thumb_func_start sub_80A62F0 -sub_80A62F0: - push {r4-r7,lr} - ldr r4, _080A6378 - movs r0, 0x88 - lsls r0, 1 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r4] - ldr r0, _080A637C - ldr r1, _080A6380 - bl OpenFileAndGetFileDataPtr - ldr r1, _080A6384 - str r0, [r1] - movs r0, 0x1 - bl sub_800DAC0 - ldr r4, [r4] - ldr r1, _080A6388 - movs r0, 0x16 - str r0, [r1] - ldr r1, _080A638C - movs r0, 0x1 - strb r0, [r1] - movs r0, 0 - movs r2, 0 - movs r1, 0x80 - lsls r1, 9 - adds r3, r1, 0 -_080A632A: - str r2, [r4] - lsls r0, 4 - str r0, [r4, 0x4] - str r2, [r4, 0x8] - adds r0, r1, 0 - adds r1, r3 - asrs r0, 16 - adds r4, 0xC - cmp r0, 0x15 - ble _080A632A - ldr r0, _080A6378 - ldr r0, [r0] - movs r1, 0x84 - lsls r1, 1 - adds r4, r0, r1 - movs r6, 0 - movs r7, 0 - movs r5, 0xE8 - lsls r5, 13 -_080A6350: - strh r7, [r4] - strh r7, [r4, 0x2] - lsrs r0, r5, 16 - movs r1, 0 - bl sub_80997F4 - movs r0, 0x80 - lsls r0, 9 - adds r5, r0 - adds r6, 0x1 - adds r4, 0x4 - cmp r6, 0x1 - ble _080A6350 - movs r0, 0x1 - negs r0, r0 - bl GroundSprite_Reset - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A6378: .4byte gUnknown_3001B7C -_080A637C: .4byte gUnknown_81177CC -_080A6380: .4byte gUnknown_83B0000 -_080A6384: .4byte gUnknown_203B4B4 -_080A6388: .4byte gUnknown_2039DD4 -_080A638C: .4byte gUnknown_2039DD0 - thumb_func_end sub_80A62F0 - - thumb_func_start GroundSprite_Reset -GroundSprite_Reset: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 16 - asrs r0, 16 - mov r9, r0 - ldr r1, _080A641C - movs r0, 0 - bl Log - ldr r0, _080A6420 - movs r1, 0 - mov r8, r1 - strh r1, [r0] - ldr r0, _080A6424 - strh r1, [r0] - bl sub_80A6460 - mov r0, r9 - bl sub_80A4D48 - lsls r0, 24 - movs r1, 0x2 - cmp r0, 0 - beq _080A63C6 - movs r1, 0x3 -_080A63C6: - movs r0, 0xF8 - lsls r0, 1 - bl sub_808E53C - ldr r5, _080A6428 - adds r0, r5, 0 - bl sub_8004E8C - ldr r4, _080A642C - adds r0, r4, 0 - bl sub_8004E8C - ldrh r1, [r4, 0x4] - ldr r6, _080A6430 - adds r0, r6, 0 - ands r0, r1 - strh r0, [r4, 0x4] - ldrh r1, [r4, 0xA] - adds r0, r6, 0 - ands r0, r1 - movs r2, 0x80 - lsls r2, 4 - adds r7, r2, 0 - orrs r0, r7 - strh r0, [r4, 0xA] - mov r0, r9 - bl sub_80A4D48 - lsls r0, 24 - cmp r0, 0 - beq _080A6434 - ldrh r1, [r5, 0x4] - adds r0, r6, 0 - ands r0, r1 - strh r0, [r5, 0x4] - ldrh r1, [r5, 0xA] - adds r0, r6, 0 - ands r0, r1 - movs r2, 0xC0 - lsls r2, 4 - adds r1, r2, 0 - orrs r0, r1 - b _080A6444 - .align 2, 0 -_080A641C: .4byte gUnknown_81177D8 -_080A6420: .4byte gUnknown_2039DCC -_080A6424: .4byte gUnknown_2039DCE -_080A6428: .4byte gUnknown_2039DB0 -_080A642C: .4byte gUnknown_2039DC0 -_080A6430: .4byte 0x0000f3ff -_080A6434: - ldrh r1, [r5, 0x4] - adds r0, r6, 0 - ands r0, r1 - strh r0, [r5, 0x4] - ldrh r1, [r5, 0xA] - adds r0, r6, 0 - ands r0, r1 - orrs r0, r7 -_080A6444: - strh r0, [r5, 0xA] - movs r0, 0x1 - bl sub_8004D8C - movs r0, 0x1 - bl nullsub_10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end GroundSprite_Reset - - thumb_func_start sub_80A6460 -sub_80A6460: - push {r4-r7,lr} - ldr r0, _080A649C - ldr r1, _080A64A0 - bl OpenFileAndGetFileDataPtr - adds r7, r0, 0 - movs r5, 0x80 - lsls r5, 1 - ldr r4, [r7, 0x4] - movs r6, 0xC -_080A6474: - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x10 - bl sub_809971C - adds r0, r5, 0 - adds r0, 0x10 - lsls r0, 16 - lsrs r5, r0, 16 - adds r4, 0x40 - subs r6, 0x1 - cmp r6, 0 - bge _080A6474 - adds r0, r7, 0 - bl CloseFile - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A649C: .4byte gUnknown_81177EC -_080A64A0: .4byte gUnknown_8510000 - thumb_func_end sub_80A6460 - - thumb_func_start sub_80A64A4 -sub_80A64A4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, _080A6508 - ldr r0, [r0] - movs r1, 0x84 - lsls r1, 1 - adds r7, r0, r1 - bl sub_80A6460 - movs r0, 0 - mov r8, r0 -_080A64C0: - movs r1, 0x2 - ldrsh r0, [r7, r1] - cmp r0, 0 - ble _080A6568 - ldrh r5, [r7] - mov r0, r8 - adds r0, 0x1D - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - mov r1, r8 - lsls r0, r1, 20 - movs r1, 0xE8 - lsls r1, 17 - adds r0, r1 - lsrs r0, 16 - mov r9, r0 - movs r0, 0x80 - lsls r0, 2 - adds r1, r0, 0 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _080A6514 - ldr r0, _080A650C - ldr r1, _080A6510 - bl OpenFileAndGetFileDataPtr - adds r6, r0, 0 - movs r0, 0xFF - ands r0, r5 - lsls r0, 6 - ldr r1, [r6, 0x4] - adds r2, r1, r0 - b _080A652A - .align 2, 0 -_080A6508: .4byte gUnknown_3001B7C -_080A650C: .4byte gUnknown_81177EC -_080A6510: .4byte gUnknown_8510000 -_080A6514: - movs r0, 0xFF - ands r0, r5 - lsls r0, 2 - ldr r1, _080A6584 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080A6588 - bl OpenFileAndGetFileDataPtr - adds r6, r0, 0 - ldr r2, [r6, 0x4] -_080A652A: - movs r1, 0x80 - lsls r1, 5 - adds r0, r1, 0 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 16 - lsrs r1, 16 - negs r1, r1 - lsrs r4, r1, 31 - movs r1, 0x80 - lsls r1, 6 - adds r0, r1, 0 - ands r5, r0 - cmp r5, 0 - beq _080A654C - movs r0, 0x2 - orrs r4, r0 -_080A654C: - mov r0, r9 - adds r1, r2, 0 - movs r2, 0x10 - bl sub_809971C - mov r0, r10 - adds r1, r4, 0 - bl sub_80997F4 - cmp r6, 0 - beq _080A6568 - adds r0, r6, 0 - bl CloseFile -_080A6568: - movs r0, 0x1 - add r8, r0 - adds r7, 0x4 - mov r1, r8 - cmp r1, 0x1 - ble _080A64C0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A6584: .4byte gUnknown_81178F4 -_080A6588: .4byte gUnknown_9E60000 - thumb_func_end sub_80A64A4 - - thumb_func_start sub_80A658C -sub_80A658C: - push {r4,lr} - bl sub_800DB7C - movs r0, 0 - bl sub_8004D8C - movs r0, 0 - bl nullsub_10 - bl sub_8005180 - bl nullsub_12 - bl CopySpritesToOam - bl nullsub_13 - bl sub_8005304 - bl nullsub_14 - ldr r0, _080A65D0 - ldr r0, [r0] - bl CloseFile - ldr r4, _080A65D4 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A65D0: .4byte gUnknown_203B4B4 -_080A65D4: .4byte gUnknown_3001B7C - thumb_func_end sub_80A658C - - thumb_func_start sub_80A65D8 -sub_80A65D8: - adds r0, 0x50 - ldrh r0, [r0] - bx lr - thumb_func_end sub_80A65D8 - - thumb_func_start sub_80A65E0 -sub_80A65E0: - lsrs r0, 16 - ldr r2, _080A65EC - adds r1, r2, 0 - ands r0, r1 - bx lr - .align 2, 0 -_080A65EC: .4byte 0x0000337f - thumb_func_end sub_80A65E0 - - thumb_func_start sub_80A65F0 -sub_80A65F0: - push {r4-r6,lr} - adds r3, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, 0x50 - strh r1, [r0] - movs r0, 0x4 - ands r0, r1 - lsls r0, 16 - lsrs r0, 16 - negs r0, r0 - asrs r2, r0, 31 - movs r0, 0x40 - ands r2, r0 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080A6616 - subs r2, 0x40 -_080A6616: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080A6624 - adds r1, r2, 0 - adds r1, 0x48 - b _080A6628 -_080A6624: - adds r1, r2, 0 - adds r1, 0x40 -_080A6628: - adds r0, r3, 0 - adds r0, 0x6A - strh r1, [r0] - adds r2, r3, 0 - adds r2, 0x50 - ldrh r1, [r2] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080A6648 - adds r1, r3, 0 - adds r1, 0x3C - ldr r0, _080A6644 - b _080A664E - .align 2, 0 -_080A6644: .4byte gUnknown_2039DC0 -_080A6648: - adds r1, r3, 0 - adds r1, 0x3C - ldr r0, _080A6680 -_080A664E: - ldm r0!, {r4-r6} - stm r1!, {r4-r6} - ldrh r1, [r2] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080A6678 - ldrh r2, [r3, 0x3C] - ldr r1, _080A6684 - adds r0, r1, 0 - ands r0, r2 - strh r0, [r3, 0x3C] - adds r2, r3, 0 - adds r2, 0x42 - ldrh r0, [r2] - ands r1, r0 - movs r3, 0x80 - lsls r3, 3 - adds r0, r3, 0 - orrs r1, r0 - strh r1, [r2] -_080A6678: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A6680: .4byte gUnknown_2039DB0 -_080A6684: .4byte 0x0000f3ff - thumb_func_end sub_80A65F0 - - thumb_func_start sub_80A6688 -sub_80A6688: - push {r4,lr} - adds r4, r0, 0 - adds r0, r1, 0 - bl sub_80A65E0 - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl sub_80A65F0 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80A6688 - - thumb_func_start sub_80A66A4 -sub_80A66A4: - push {lr} - movs r1, 0 - adds r0, 0x48 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - ble _080A66B4 - movs r1, 0x1 -_080A66B4: - adds r0, r1, 0 - pop {r1} - bx r1 - thumb_func_end sub_80A66A4 - - thumb_func_start sub_80A66BC -sub_80A66BC: - push {lr} - adds r0, 0x52 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bge _080A66CC - movs r0, 0 - b _080A66CE -_080A66CC: - movs r0, 0x1 -_080A66CE: - pop {r1} - bx r1 - thumb_func_end sub_80A66BC - - thumb_func_start sub_80A66D4 -sub_80A66D4: - push {lr} - adds r1, r0, 0 - adds r0, 0x52 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - bge _080A66F2 - adds r0, r1, 0 - adds r0, 0x48 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - ble _080A66F2 - movs r0, 0x1 - b _080A66F4 -_080A66F2: - movs r0, 0 -_080A66F4: - pop {r1} - bx r1 - thumb_func_end sub_80A66D4 - - thumb_func_start sub_80A66F8 -sub_80A66F8: - push {lr} - adds r1, r0, 0 - adds r0, 0x52 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - blt _080A6716 - ldrh r1, [r1] - movs r0, 0x80 - lsls r0, 6 - ands r0, r1 - cmp r0, 0 - bne _080A6716 - lsrs r0, r1, 15 - b _080A6718 -_080A6716: - movs r0, 0 -_080A6718: - pop {r1} - bx r1 - thumb_func_end sub_80A66F8 - - thumb_func_start sub_80A671C -sub_80A671C: - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r4, 0 - adds r6, 0x58 - movs r0, 0 - ldrsh r1, [r6, r0] - cmp r1, 0 - beq _080A6752 - movs r0, 0xE0 - lsls r0, 1 - cmp r1, r0 - beq _080A674A - ldr r0, [r4, 0x5C] - movs r5, 0x1 - negs r5, r5 - cmp r0, r5 - beq _080A674A - bl sub_800E9E4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _080A674E -_080A674A: - movs r0, 0x1 - b _080A6754 -_080A674E: - str r5, [r4, 0x5C] - strh r0, [r6] -_080A6752: - movs r0, 0 -_080A6754: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80A671C - - thumb_func_start sub_80A675C -sub_80A675C: - push {r4-r6,lr} - sub sp, 0x8 - adds r6, r1, 0 - mov r0, sp - bl sub_809D248 - lsls r0, 24 - cmp r0, 0 - beq _080A678C - ldr r1, [r6] - cmp r1, 0 - bge _080A6776 - adds r1, 0xFF -_080A6776: - asrs r1, 8 - ldr r0, [sp] - subs r4, r1, r0 - ldr r1, [r6, 0x4] - cmp r1, 0 - bge _080A6784 - adds r1, 0xFF -_080A6784: - asrs r1, 8 - ldr r0, [sp, 0x4] - subs r5, r1, r0 - b _080A67A0 -_080A678C: - ldr r0, [r6] - cmp r0, 0 - bge _080A6794 - adds r0, 0xFF -_080A6794: - asrs r4, r0, 8 - ldr r1, [r6, 0x4] - cmp r1, 0 - bge _080A679E - adds r1, 0xFF -_080A679E: - asrs r5, r1, 8 -_080A67A0: - adds r1, r4, 0 - adds r1, 0x40 - ldr r0, _080A67BC - cmp r1, r0 - bhi _080A67C0 - movs r0, 0x10 - negs r0, r0 - cmp r5, r0 - blt _080A67C0 - cmp r5, 0xCF - bgt _080A67C0 - movs r0, 0x1 - b _080A67C2 - .align 2, 0 -_080A67BC: .4byte 0x0000016f -_080A67C0: - movs r0, 0 -_080A67C2: - add sp, 0x8 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80A675C - - thumb_func_start sub_80A67CC -sub_80A67CC: - push {r4-r7,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r7, 0 - cmp r5, 0 - beq _080A67E2 - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0 - ble _080A67E2 - movs r7, 0x1 -_080A67E2: - adds r0, r2, 0 - bl sub_80A65E0 - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl sub_80A65F0 - movs r1, 0 - str r1, [r4, 0x74] - str r1, [r4, 0x78] - movs r6, 0x1 - negs r6, r6 - str r6, [r4, 0x7C] - adds r0, r4, 0 - adds r0, 0x70 - strb r1, [r0] - subs r0, 0x4 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r2, r4, 0 - adds r2, 0x52 - ldr r0, _080A6884 - strh r0, [r2] - str r1, [r4, 0x54] - adds r0, r4, 0 - adds r0, 0x64 - strh r1, [r0] - adds r2, 0x14 - adds r0, r6, 0 - adds r3, r0, 0 - strh r0, [r2] - adds r0, r4, 0 - adds r0, 0x68 - strh r1, [r0] - subs r0, 0x10 - strh r1, [r0] - adds r1, r4, 0 - adds r1, 0x5A - movs r0, 0xFF - strb r0, [r1] - str r6, [r4, 0x5C] - str r6, [r4, 0x60] - cmp r7, 0 - beq _080A6888 - ldr r0, [r5] - ldr r1, [r5, 0x4] - str r0, [r4, 0x48] - str r1, [r4, 0x4C] - adds r5, r4, 0 - adds r5, 0x48 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_80A68F8 - lsls r0, 24 - cmp r0, 0 - bne _080A689A - adds r0, r4, 0 - adds r0, 0x50 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 5 - ands r0, r1 - cmp r0, 0 - bne _080A689A - adds r0, r5, 0 - bl sub_80A6CF4 - lsls r0, 24 - cmp r0, 0 - beq _080A689A - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_80A68F8 - b _080A689A - .align 2, 0 -_080A6884: .4byte 0x0000ffff -_080A6888: - adds r1, r4, 0 - adds r1, 0x48 - ldrh r0, [r1] - orrs r0, r3 - strh r0, [r1] - adds r0, r4, 0 - adds r0, 0x4A - strh r7, [r0] - str r7, [r4, 0x4C] -_080A689A: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80A67CC - - thumb_func_start sub_80A68A0 -sub_80A68A0: - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x50 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _080A68CE - adds r0, r4, 0 - adds r0, 0x58 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _080A68CE - ldr r1, [r4, 0x5C] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A68CE - adds r0, r1, 0 - bl sub_800DC14 -_080A68CE: - ldr r0, [r4, 0x54] - cmp r0, 0 - beq _080A68DC - bl CloseFile - movs r0, 0 - str r0, [r4, 0x54] -_080A68DC: - adds r0, r4, 0 - bl sub_80A69FC - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80A68A0 - - thumb_func_start sub_80A68E8 -sub_80A68E8: - push {lr} - movs r0, 0x15 -_080A68EC: - subs r0, 0x1 - cmp r0, 0 - bge _080A68EC - pop {r0} - bx r0 - thumb_func_end sub_80A68E8 - - thumb_func_start sub_80A68F8 -sub_80A68F8: - push {r4-r7,lr} - mov r12, r0 - adds r5, r2, 0 - ldr r0, _080A6924 - ldr r4, [r0] - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, r5 - blt _080A6956 - adds r5, r0, 0 - movs r3, 0 - ldr r0, [r4] - mov r6, r12 - adds r6, 0x52 - mov r7, r12 - adds r7, 0x64 - cmp r0, 0 - bne _080A6928 - movs r2, 0x1 - cmp r2, r5 - blt _080A692A - b _080A6986 - .align 2, 0 -_080A6924: .4byte gUnknown_3001B7C -_080A6928: - movs r2, 0 -_080A692A: - adds r0, r3, 0x1 - lsls r0, 16 - asrs r3, r0, 16 - adds r4, 0xC - cmp r3, 0x15 - bgt _080A6986 - ldr r0, [r4] - cmp r0, 0 - bne _080A6928 - adds r2, 0x1 - cmp r2, r5 - blt _080A692A - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - subs r0, 0xC - subs r4, r0 - adds r0, r3, 0x1 - subs r0, r2 - lsls r0, 16 - asrs r3, r0, 16 - b _080A6986 -_080A6956: - movs r3, 0x15 - adds r4, 0xFC - ldr r0, [r4] - mov r6, r12 - adds r6, 0x52 - mov r7, r12 - adds r7, 0x64 - cmp r0, 0 - bne _080A696C - movs r2, 0x1 - b _080A6982 -_080A696C: - movs r2, 0 -_080A696E: - subs r0, r3, 0x1 - lsls r0, 16 - asrs r3, r0, 16 - subs r4, 0xC - cmp r3, 0 - blt _080A6986 - ldr r0, [r4] - cmp r0, 0 - bne _080A696C - adds r2, 0x1 -_080A6982: - cmp r2, r5 - blt _080A696E -_080A6986: - cmp r2, r5 - blt _080A69C4 - strh r3, [r6] - strh r5, [r7] - movs r0, 0x1 - str r0, [r4] - mov r0, r12 - str r0, [r4, 0x8] - ldrh r1, [r1, 0x2] - bl GroundSprite_ExtendPaletteAdd - cmp r5, 0x1 - ble _080A69B2 - movs r2, 0x2 - adds r0, r4, 0 - adds r0, 0xC - subs r1, r5, 0x1 -_080A69A8: - str r2, [r0] - adds r0, 0xC - subs r1, 0x1 - cmp r1, 0 - bne _080A69A8 -_080A69B2: - ldr r1, _080A69C0 - ldr r0, [r1] - subs r0, r5 - str r0, [r1] - movs r0, 0x1 - b _080A69EC - .align 2, 0 -_080A69C0: .4byte gUnknown_2039DD4 -_080A69C4: - ldr r1, _080A69F4 - movs r0, 0 - strb r0, [r1] - movs r0, 0x1 - negs r0, r0 - mov r1, r12 - str r0, [r1, 0x7C] - mov r0, r12 - adds r0, 0x70 - movs r1, 0 - strb r1, [r0] - ldr r0, _080A69F8 - strh r0, [r6] - strh r1, [r7] - mov r0, r12 - adds r0, 0x6C - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - movs r0, 0 -_080A69EC: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080A69F4: .4byte gUnknown_2039DD0 -_080A69F8: .4byte 0x0000ffff - thumb_func_end sub_80A68F8 - - thumb_func_start sub_80A69FC -sub_80A69FC: - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r6, 0 - adds r7, 0x52 - movs r0, 0 - ldrsh r4, [r7, r0] - ldr r0, _080A6A80 - lsls r1, r4, 1 - adds r1, r4 - lsls r1, 2 - ldr r0, [r0] - adds r5, r0, r1 - cmp r4, 0 - blt _080A6A7A - adds r0, r6, 0 - bl sub_80A6C88 - movs r0, 0 - str r0, [r5, 0x8] - str r0, [r5] - adds r5, 0xC - ldr r1, _080A6A84 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - adds r0, r4, 0x1 - lsls r0, 16 - asrs r4, r0, 16 - adds r6, 0x64 - mov r12, r6 - cmp r4, 0x15 - bgt _080A6A6A - ldr r0, [r5] - cmp r0, 0x2 - bne _080A6A6A - movs r6, 0 - adds r2, r1, 0 - lsls r1, r4, 16 - movs r0, 0x80 - lsls r0, 9 - adds r1, r0 - adds r3, r0, 0 -_080A6A50: - str r6, [r5] - adds r5, 0xC - ldr r0, [r2] - adds r0, 0x1 - str r0, [r2] - adds r0, r1, 0 - adds r1, r3 - asrs r4, r0, 16 - cmp r4, 0x15 - bgt _080A6A6A - ldr r0, [r5] - cmp r0, 0x2 - beq _080A6A50 -_080A6A6A: - ldr r0, _080A6A88 - strh r0, [r7] - movs r0, 0 - mov r1, r12 - strh r0, [r1] - ldr r1, _080A6A8C - movs r0, 0x1 - strb r0, [r1] -_080A6A7A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A6A80: .4byte gUnknown_3001B7C -_080A6A84: .4byte gUnknown_2039DD4 -_080A6A88: .4byte 0x0000ffff -_080A6A8C: .4byte gUnknown_2039DD0 - thumb_func_end sub_80A69FC - - thumb_func_start GroundSprite_ExtendPaletteAdd -GroundSprite_ExtendPaletteAdd: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - mov r10, r0 - lsls r1, 16 - lsrs r2, r1, 16 - adds r5, r2, 0 - movs r0, 0xC0 - lsls r0, 2 - ands r0, r2 - cmp r0, 0 - bne _080A6AB0 - b _080A6C6C -_080A6AB0: - movs r0, 0x80 - lsls r0, 3 - ands r0, r2 - cmp r0, 0 - beq _080A6AD8 - ldr r0, _080A6AD4 - ldr r1, [r0] - movs r3, 0x86 - lsls r3, 1 - adds r4, r1, r3 - ldrh r1, [r4] - adds r3, r0, 0 - cmp r1, r2 - bne _080A6B36 - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] - b _080A6C78 - .align 2, 0 -_080A6AD4: .4byte gUnknown_3001B7C -_080A6AD8: - movs r0, 0 - mov r8, r0 - ldr r1, _080A6B1C - ldr r0, [r1] - movs r2, 0x84 - lsls r2, 1 - adds r4, r0, r2 - adds r3, r1, 0 - movs r1, 0xE8 - lsls r1, 13 -_080A6AEC: - ldrh r0, [r4] - cmp r0, r5 - bne _080A6B24 - lsrs r1, 16 - adds r3, r1, 0 - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] - mov r0, r10 - cmp r0, 0 - beq _080A6B08 - subs r1, 0x10 - adds r0, 0x68 - strh r1, [r0] -_080A6B08: - adds r0, r3, 0 - subs r0, 0x10 - str r0, [sp] - str r5, [sp, 0x4] - movs r0, 0 - ldr r1, _080A6B20 - mov r2, r8 - bl Log - b _080A6C78 - .align 2, 0 -_080A6B1C: .4byte gUnknown_3001B7C -_080A6B20: .4byte gUnknown_81177F4 -_080A6B24: - movs r2, 0x80 - lsls r2, 9 - adds r1, r2 - movs r0, 0x1 - add r8, r0 - adds r4, 0x4 - mov r2, r8 - cmp r2, 0x1 - ble _080A6AEC -_080A6B36: - movs r0, 0x80 - lsls r0, 3 - ands r0, r5 - cmp r0, 0 - beq _080A6B68 - movs r0, 0x1 - mov r8, r0 - ldr r0, [r3] - movs r1, 0x86 - lsls r1, 1 - adds r4, r0, r1 - movs r2, 0x2 - ldrsh r0, [r4, r2] - cmp r0, 0 - ble _080A6BA8 - ldr r0, _080A6B60 - ldr r1, _080A6B64 - adds r2, r5, 0 - bl FatalError - .align 2, 0 -_080A6B60: .4byte gUnknown_8117858 -_080A6B64: .4byte gUnknown_8117864 -_080A6B68: - movs r0, 0 - mov r8, r0 - ldr r0, [r3] - movs r1, 0x84 - lsls r1, 1 - adds r4, r0, r1 - movs r2, 0x2 - ldrsh r0, [r4, r2] - cmp r0, 0 - ble _080A6B90 -_080A6B7C: - movs r3, 0x1 - add r8, r3 - adds r4, 0x4 - mov r0, r8 - cmp r0, 0x1 - bgt _080A6B96 - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, 0 - bgt _080A6B7C -_080A6B90: - mov r2, r8 - cmp r2, 0x1 - ble _080A6BA8 -_080A6B96: - ldr r0, _080A6BA0 - ldr r1, _080A6BA4 - adds r2, r5, 0 - bl FatalError - .align 2, 0 -_080A6BA0: .4byte gUnknown_8117888 -_080A6BA4: .4byte gUnknown_8117864 -_080A6BA8: - mov r0, r8 - adds r0, 0x1D - lsls r0, 16 - lsrs r0, 16 - str r0, [sp, 0xC] - mov r3, r8 - lsls r0, r3, 20 - movs r1, 0xE8 - lsls r1, 17 - adds r0, r1 - lsrs r0, 16 - str r0, [sp, 0x10] - movs r0, 0x80 - lsls r0, 2 - ands r0, r5 - cmp r0, 0 - beq _080A6BE8 - ldr r0, _080A6BE0 - ldr r1, _080A6BE4 - bl OpenFileAndGetFileDataPtr - mov r9, r0 - ldr r7, [r0, 0x4] - movs r0, 0xFF - ands r0, r5 - lsls r0, 6 - adds r7, r0 - b _080A6BFE - .align 2, 0 -_080A6BE0: .4byte gUnknown_81177EC -_080A6BE4: .4byte gUnknown_8510000 -_080A6BE8: - movs r0, 0xFF - ands r0, r5 - lsls r0, 2 - ldr r1, _080A6C60 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080A6C64 - bl OpenFileAndGetFileDataPtr - mov r9, r0 - ldr r7, [r0, 0x4] -_080A6BFE: - movs r0, 0x80 - lsls r0, 5 - ands r0, r5 - lsls r0, 16 - lsrs r0, 16 - negs r0, r0 - lsrs r6, r0, 31 - movs r0, 0x80 - lsls r0, 6 - ands r0, r5 - cmp r0, 0 - beq _080A6C1A - movs r0, 0x2 - orrs r6, r0 -_080A6C1A: - ldr r0, [sp, 0xC] - adds r1, r6, 0 - bl sub_80997F4 - ldr r0, [sp, 0x10] - adds r1, r7, 0 - movs r2, 0x10 - bl sub_809971C - strh r5, [r4] - movs r0, 0x1 - strh r0, [r4, 0x2] - ldr r2, [sp, 0xC] - subs r2, 0x10 - mov r3, r10 - cmp r3, 0 - beq _080A6C42 - mov r0, r10 - adds r0, 0x68 - strh r2, [r0] -_080A6C42: - ldr r1, _080A6C68 - str r2, [sp] - str r5, [sp, 0x4] - str r6, [sp, 0x8] - movs r0, 0 - mov r2, r8 - ldr r3, [sp, 0xC] - bl Log - mov r0, r9 - cmp r0, 0 - beq _080A6C78 - bl CloseFile - b _080A6C78 - .align 2, 0 -_080A6C60: .4byte gUnknown_81178F4 -_080A6C64: .4byte gUnknown_9E60000 -_080A6C68: .4byte gUnknown_8117894 -_080A6C6C: - mov r1, r10 - cmp r1, 0 - beq _080A6C78 - mov r0, r10 - adds r0, 0x68 - strh r5, [r0] -_080A6C78: - 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 GroundSprite_ExtendPaletteAdd - - thumb_func_start sub_80A6C88 -sub_80A6C88: - push {r4-r6,lr} - adds r2, r0, 0 - cmp r2, 0 - beq _080A6C9E - adds r0, 0x68 - ldrh r0, [r0] - adds r5, r0, 0 - subs r5, 0xD - cmp r5, 0 - blt _080A6CE6 - b _080A6CA0 -_080A6C9E: - movs r5, 0x1 -_080A6CA0: - ldr r0, _080A6CEC - lsls r1, r5, 2 - movs r3, 0x84 - lsls r3, 1 - adds r1, r3 - ldr r0, [r0] - adds r4, r0, r1 - cmp r2, 0 - beq _080A6CBA - adds r1, r2, 0 - adds r1, 0x68 - movs r0, 0 - strh r0, [r1] -_080A6CBA: - ldrh r0, [r4, 0x2] - subs r0, 0x1 - movs r6, 0 - strh r0, [r4, 0x2] - lsls r0, 16 - cmp r0, 0 - bgt _080A6CE6 - ldr r1, _080A6CF0 - ldrh r3, [r4] - movs r0, 0 - adds r2, r5, 0 - bl Log - strh r6, [r4] - strh r6, [r4, 0x2] - adds r0, r5, 0 - adds r0, 0x1D - lsls r0, 16 - lsrs r0, 16 - movs r1, 0 - bl sub_80997F4 -_080A6CE6: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A6CEC: .4byte gUnknown_3001B7C -_080A6CF0: .4byte gUnknown_81178C0 - thumb_func_end sub_80A6C88 - - thumb_func_start sub_80A6CF4 -sub_80A6CF4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x68 - movs r1, 0 - mov r8, r1 - movs r1, 0 - ldrsh r2, [r0, r1] - mov r9, r2 - movs r2, 0 - mov r10, r2 - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0x60] - str r0, [sp, 0x64] - add r4, sp, 0x58 - adds r0, r4, 0 - bl sub_809D248 - movs r7, 0 - ldr r0, _080A6D70 - ldr r3, [r0] - movs r1, 0x80 - lsls r1, 6 - mov r12, r1 - mov r4, sp -_080A6D2C: - ldr r0, [r3] - cmp r0, 0x1 - bne _080A6DB4 - ldr r2, [r3, 0x8] - adds r0, r2, 0 - adds r0, 0x50 - ldrh r1, [r0] - mov r0, r12 - ands r0, r1 - cmp r0, 0 - bne _080A6DB4 - ldr r0, [r2, 0x7C] - cmp r0, 0 - blt _080A6DB4 - ldr r1, [r2, 0x74] - cmp r1, 0 - bge _080A6D50 - adds r1, 0xFF -_080A6D50: - asrs r1, 8 - ldr r0, [sp, 0x58] - subs r5, r1, r0 - ldr r1, [r2, 0x78] - cmp r1, 0 - bge _080A6D5E - adds r1, 0xFF -_080A6D5E: - asrs r1, 8 - ldr r0, [sp, 0x5C] - subs r1, r0 - adds r6, r1, 0 - cmp r1, 0 - ble _080A6D74 - adds r0, r6, 0 - adds r0, 0x28 - b _080A6D78 - .align 2, 0 -_080A6D70: .4byte gUnknown_3001B7C -_080A6D74: - movs r0, 0x28 - subs r0, r6 -_080A6D78: - str r0, [r2, 0x7C] - cmp r5, 0 - ble _080A6D88 - ldr r0, [r2, 0x7C] - cmp r5, r0 - ble _080A6D92 - str r5, [r2, 0x7C] - b _080A6D92 -_080A6D88: - negs r1, r5 - ldr r0, [r2, 0x7C] - cmp r1, r0 - ble _080A6D92 - str r1, [r2, 0x7C] -_080A6D92: - adds r0, r2, 0 - adds r0, 0x48 - movs r1, 0 - ldrsh r0, [r0, r1] - add r10, r0 - cmp r0, r9 - blt _080A6DAE - ldr r0, [r2, 0x7C] - ldr r1, [sp, 0x64] - cmp r1, r0 - bge _080A6DAE - mov r1, r8 - str r1, [sp, 0x60] - str r0, [sp, 0x64] -_080A6DAE: - stm r4!, {r2} - movs r2, 0x1 - add r8, r2 -_080A6DB4: - adds r0, r7, 0x1 - lsls r0, 16 - asrs r7, r0, 16 - adds r3, 0xC - cmp r7, 0x15 - ble _080A6D2C - cmp r10, r9 - blt _080A6E54 - ldr r0, [sp, 0x60] - cmp r0, 0 - blt _080A6DD8 - lsls r0, 2 - add r0, sp - ldr r0, [r0] - bl sub_80A69FC - movs r0, 0x1 - b _080A6E56 -_080A6DD8: - mov r1, r8 - cmp r1, 0 - ble _080A6E54 -_080A6DDE: - movs r5, 0x1 - negs r5, r5 - adds r3, r5, 0 - movs r6, 0 - mov r7, r8 - subs r7, 0x1 - mov r2, r8 - cmp r2, 0 - ble _080A6E08 - mov r2, sp - mov r1, r8 -_080A6DF4: - ldr r0, [r2] - ldr r0, [r0, 0x7C] - cmp r3, r0 - bge _080A6E00 - mov r5, r8 - adds r3, r0, 0 -_080A6E00: - adds r2, 0x4 - subs r1, 0x1 - cmp r1, 0 - bne _080A6DF4 -_080A6E08: - lsls r0, r5, 2 - mov r1, sp - adds r4, r1, r0 - ldr r0, [r4] - bl sub_80A69FC - mov r8, r7 - adds r1, r5, 0 - cmp r1, r8 - bge _080A6E28 - adds r2, r4, 0 -_080A6E1E: - ldr r0, [r2, 0x4] - stm r2!, {r0} - adds r1, 0x1 - cmp r1, r8 - blt _080A6E1E -_080A6E28: - movs r1, 0 - ldr r0, _080A6E40 - ldr r3, [r0] -_080A6E2E: - ldr r0, [r3] - cmp r0, 0 - bne _080A6E44 - adds r6, 0x1 - cmp r6, r9 - blt _080A6E46 - movs r0, 0x1 - b _080A6E56 - .align 2, 0 -_080A6E40: .4byte gUnknown_3001B7C -_080A6E44: - movs r6, 0 -_080A6E46: - adds r1, 0x1 - adds r3, 0xC - cmp r1, 0x15 - ble _080A6E2E - mov r2, r8 - cmp r2, 0 - bgt _080A6DDE -_080A6E54: - movs r0, 0 -_080A6E56: - add sp, 0x68 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A6CF4 - - thumb_func_start sub_80A6E68 -sub_80A6E68: - push {lr} - movs r0, 0 - bl sub_8004D8C - movs r0, 0 - bl nullsub_10 - bl sub_800E970 - pop {r0} - bx r0 - thumb_func_end sub_80A6E68 - - thumb_func_start sub_80A6E80 -sub_80A6E80: - push {r4,lr} - sub sp, 0x4 - ldr r4, _080A6EC4 - adds r0, r4, 0 - bl sub_809D248 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _080A6E98 - str r0, [r4] - str r0, [r4, 0x4] -_080A6E98: - bl sub_80ABA7C - bl sub_80ACAD4 - bl sub_80AD7AC - ldrh r1, [r4, 0x4] - lsls r1, 16 - ldrh r0, [r4] - orrs r0, r1 - str r0, [sp] - mov r0, sp - bl sub_800E90C - bl sub_8005180 - bl nullsub_12 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A6EC4: .4byte gUnknown_2039DD8 - thumb_func_end sub_80A6E80 - - thumb_func_start sub_80A6EC8 -sub_80A6EC8: - push {lr} - adds r2, r0, 0 - adds r0, 0x52 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r0, 0 - ble _080A6EF6 - adds r0, r2, 0 - adds r0, 0x48 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r1, r0 - bgt _080A6EE4 - adds r1, r0, 0 -_080A6EE4: - adds r0, r2, 0 - adds r0, 0x64 - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r0, r1 - beq _080A6EF6 - adds r0, r2, 0 - adds r0, 0x66 - strh r1, [r0] -_080A6EF6: - pop {r0} - bx r0 - thumb_func_end sub_80A6EC8 - - thumb_func_start sub_80A6EFC -sub_80A6EFC: - push {r4-r7,lr} - sub sp, 0xC - adds r4, r0, 0 - lsls r1, 16 - asrs r7, r1, 16 - lsls r2, 24 - asrs r6, r2, 24 - adds r0, 0x52 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bge _080A6F48 - adds r5, r4, 0 - adds r5, 0x66 - movs r2, 0 - ldrsh r0, [r5, r2] - cmp r0, 0 - blt _080A6F28 - adds r1, r4, 0 - adds r1, 0x48 - adds r2, r0, 0 - b _080A6F62 -_080A6F28: - adds r1, r4, 0 - adds r1, 0x48 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - bgt _080A6F36 - b _080A7038 -_080A6F36: - movs r2, 0x1 - negs r2, r2 - adds r0, r4, 0 - bl sub_80A68F8 - lsls r0, 24 - cmp r0, 0 - beq _080A7038 - b _080A6F72 -_080A6F48: - adds r5, r4, 0 - adds r5, 0x66 - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0 - blt _080A6F72 - adds r0, r4, 0 - bl sub_80A69FC - adds r1, r4, 0 - adds r1, 0x48 - movs r0, 0 - ldrsh r2, [r5, r0] -_080A6F62: - adds r0, r4, 0 - bl sub_80A68F8 - lsls r0, 24 - cmp r0, 0 - beq _080A7038 - ldr r0, _080A6F8C - strh r0, [r5] -_080A6F72: - movs r0, 0x80 - lsls r0, 3 - ands r0, r7 - lsls r0, 16 - asrs r3, r0, 16 - cmp r3, 0 - beq _080A6F94 - ldrh r1, [r4] - ldr r0, _080A6F90 - ands r0, r1 - strh r0, [r4] - b _080A7038 - .align 2, 0 -_080A6F8C: .4byte 0x0000ffff -_080A6F90: .4byte 0x0000efff -_080A6F94: - ldr r2, _080A6FE0 - adds r0, r4, 0 - adds r0, 0x52 - movs r5, 0 - ldrsh r1, [r0, r5] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, [r2] - adds r1, r0 - mov r12, r1 - adds r1, r4, 0 - adds r1, 0x70 - movs r0, 0x1 - strb r0, [r1] - subs r0, 0x2 - str r0, [r4, 0x7C] - movs r1, 0xE0 - lsls r1, 3 - ands r1, r7 - movs r0, 0x80 - lsls r0, 1 - cmp r1, r0 - beq _080A6FE4 - cmp r1, r0 - ble _080A6FEE - movs r0, 0x80 - lsls r0, 2 - cmp r1, r0 - beq _080A6FFA - movs r0, 0xC0 - lsls r0, 2 - cmp r1, r0 - bne _080A6FEE - adds r0, r4, 0 - adds r0, 0x6C - strh r3, [r0] - b _080A7000 - .align 2, 0 -_080A6FE0: .4byte gUnknown_3001B7C -_080A6FE4: - adds r1, r4, 0 - adds r1, 0x6C - movs r0, 0x80 - strh r0, [r1] - b _080A7000 -_080A6FEE: - adds r1, r4, 0 - adds r1, 0x6C - movs r0, 0x80 - lsls r0, 1 - strh r0, [r1] - b _080A7000 -_080A6FFA: - adds r0, r4, 0 - adds r0, 0x6C - strh r1, [r0] -_080A7000: - adds r0, r4, 0 - adds r0, 0x6E - movs r1, 0 - strh r1, [r0] - ldr r5, [r4, 0x4C] - movs r0, 0xFF - ands r0, r7 - adds r2, r6, 0 - cmp r6, 0 - bge _080A7016 - adds r2, r6, 0x7 -_080A7016: - asrs r2, 3 - adds r2, r0, r2 - movs r3, 0x7 - ands r3, r6 - mov r6, r12 - ldr r0, [r6, 0x4] - str r0, [sp] - str r1, [sp, 0x4] - lsls r0, r7, 16 - lsrs r0, 27 - movs r1, 0x1 - ands r0, r1 - str r0, [sp, 0x8] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80053D0 -_080A7038: - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80A6EFC - - thumb_func_start sub_80A7040 -sub_80A7040: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r3, 0 - lsls r1, 16 - asrs r3, r1, 16 - lsls r2, 24 - asrs r2, 24 - adds r0, 0x50 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _080A708C - cmp r3, 0 - beq _080A7068 - movs r0, 0xE0 - lsls r0, 1 - cmp r3, r0 - bne _080A7080 -_080A7068: - adds r0, r4, 0 - bl sub_80A671C - lsls r0, 24 - cmp r0, 0 - beq _080A708C - adds r1, r4, 0 - adds r1, 0x58 - movs r0, 0xE0 - lsls r0, 1 - strh r0, [r1] - b _080A708C -_080A7080: - adds r0, r4, 0 - adds r0, 0x58 - strh r3, [r0] - adds r0, 0x2 - strb r2, [r0] - str r5, [r4, 0x60] -_080A708C: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80A7040 - - thumb_func_start sub_80A7094 -sub_80A7094: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x40 - adds r7, r0, 0 - mov r10, r1 - mov r8, r2 - str r3, [sp, 0x3C] - ldr r0, [r2] - ldr r1, [r2, 0x4] - str r0, [r7, 0x74] - str r1, [r7, 0x78] - movs r6, 0 - str r6, [r7, 0x7C] - adds r0, r7, 0 - adds r0, 0x50 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _080A7172 - adds r4, r7, 0 - adds r4, 0x58 - movs r0, 0 - ldrsh r1, [r4, r0] - cmp r1, 0 - beq _080A7172 - movs r0, 0xE0 - lsls r0, 1 - cmp r1, r0 - bne _080A70EC - ldr r0, [r7, 0x5C] - movs r5, 0x1 - negs r5, r5 - cmp r0, r5 - beq _080A70E8 - bl sub_800DC14 - str r5, [r7, 0x5C] -_080A70E8: - strh r6, [r4] - b _080A7172 -_080A70EC: - ldr r0, [r7, 0x5C] - movs r1, 0x1 - negs r1, r1 - mov r9, r1 - cmp r0, r9 - bne _080A7160 - add r1, sp, 0x8 - ldr r0, _080A715C - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - movs r1, 0 - ldrsh r0, [r4, r1] - bl sub_800EE5C - bl sub_800EF64 - add r2, sp, 0x14 - movs r3, 0 - ldrsh r0, [r4, r3] - str r0, [sp, 0x14] - str r6, [r2, 0x4] - adds r0, r7, 0 - adds r0, 0x5A - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - str r0, [r2, 0x8] - mov r4, r8 - ldr r0, [r4] - cmp r0, 0 - bge _080A712C - adds r0, 0xFF -_080A712C: - asrs r0, 8 - strh r0, [r2, 0xC] - mov r5, r8 - ldr r0, [r5, 0x4] - cmp r0, 0 - bge _080A713A - adds r0, 0xFF -_080A713A: - asrs r0, 8 - strh r0, [r2, 0xE] - strh r6, [r2, 0x10] - strh r6, [r2, 0x12] - mov r0, r9 - str r0, [r2, 0x14] - str r6, [r2, 0x18] - add r1, sp, 0x30 - add r0, sp, 0x8 - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - adds r0, r2, 0 - bl sub_800E890 - str r0, [r7, 0x5C] - b _080A7172 - .align 2, 0 -_080A715C: .4byte gUnknown_81178E0 -_080A7160: - bl sub_800E9E4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _080A7172 - mov r1, r9 - str r1, [r7, 0x5C] - strh r0, [r4] -_080A7172: - adds r0, r7, 0 - adds r0, 0x52 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - blt _080A7222 - adds r0, r7, 0 - adds r0, 0x50 - ldrh r4, [r0] - movs r0, 0x40 - ands r0, r4 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - cmp r0, 0 - bne _080A7222 - mov r3, r8 - ldr r1, [r3] - cmp r1, 0 - bge _080A719C - adds r1, 0xFF -_080A719C: - asrs r1, 8 - ldr r2, _080A7228 - ldr r0, [r2] - subs r5, r1, r0 - mov r1, r8 - ldr r0, [r1, 0x4] - cmp r0, 0 - bge _080A71AE - adds r0, 0xFF -_080A71AE: - asrs r1, r0, 8 - ldr r0, [r2, 0x4] - subs r6, r1, r0 - ldr r3, [sp, 0x3C] - cmp r3, 0 - bge _080A71BC - adds r3, 0xFF -_080A71BC: - asrs r0, r3, 8 - subs r0, r6, r0 - mov r8, r0 - adds r1, r5, 0 - adds r1, 0x40 - ldr r0, _080A722C - cmp r1, r0 - bhi _080A7274 - movs r0, 0x10 - negs r0, r0 - cmp r6, r0 - blt _080A7274 - cmp r6, 0xCF - bgt _080A7274 - cmp r8, r0 - blt _080A7274 - mov r2, r8 - cmp r2, 0xCF - bgt _080A7274 - movs r0, 0x10 - ands r0, r4 - cmp r0, 0 - beq _080A7234 - ldr r0, _080A7230 - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080A7234 - adds r0, r7, 0 - movs r1, 0 - bl sub_80A72B8 - movs r1, 0x98 - lsls r1, 1 - adds r0, r7, 0 - adds r0, 0x68 - ldrh r0, [r0] - str r0, [sp] - adds r0, r7, 0 - adds r0, 0x3C - str r0, [sp, 0x4] - adds r0, r7, 0 - movs r2, 0xD0 - movs r3, 0 - bl sub_800558C - adds r0, r7, 0 - adds r0, 0x70 - mov r3, r9 - strb r3, [r0] -_080A7222: - movs r0, 0 - b _080A72A6 - .align 2, 0 -_080A7228: .4byte gUnknown_2039DD8 -_080A722C: .4byte 0x0000016f -_080A7230: .4byte gUnknown_2039DCC -_080A7234: - adds r4, r7, 0 - adds r4, 0x70 - ldrb r1, [r4] - adds r0, r7, 0 - bl sub_80A72B8 - adds r0, r7, 0 - adds r0, 0x6A - movs r1, 0 - ldrsh r3, [r0, r1] - adds r3, r6 - subs r0, 0x2 - ldrh r0, [r0] - str r0, [sp] - adds r0, r7, 0 - adds r0, 0x3C - str r0, [sp, 0x4] - adds r0, r7, 0 - adds r1, r5, 0 - mov r2, r8 - bl sub_800558C - movs r0, 0 - strb r0, [r4] - mov r2, r10 - cmp r2, 0 - beq _080A7270 - mov r3, r10 - str r5, [r3] - str r6, [r3, 0x4] -_080A7270: - movs r0, 0x1 - b _080A72A6 -_080A7274: - adds r4, r7, 0 - adds r4, 0x70 - ldrb r0, [r4] - cmp r0, 0 - beq _080A7222 - adds r0, r7, 0 - movs r1, 0x1 - bl sub_80A72B8 - movs r1, 0x98 - lsls r1, 1 - adds r0, r7, 0 - adds r0, 0x68 - ldrh r0, [r0] - str r0, [sp] - adds r0, r7, 0 - adds r0, 0x3C - str r0, [sp, 0x4] - adds r0, r7, 0 - movs r2, 0xD0 - movs r3, 0 - bl sub_800558C - movs r0, 0 - strb r0, [r4] -_080A72A6: - add sp, 0x40 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A7094 - - thumb_func_start sub_80A72B8 -sub_80A72B8: - push {r4-r7,lr} - adds r6, r0, 0 - lsls r1, 24 - cmp r1, 0 - beq _080A72D2 - adds r1, r6, 0 - adds r1, 0x6E - movs r0, 0 - strh r0, [r1] - adds r0, r6, 0 - bl sub_80054BC - b _080A7304 -_080A72D2: - adds r5, r6, 0 - adds r5, 0x6E - adds r0, r6, 0 - adds r0, 0x6C - ldrh r0, [r0] - ldrh r1, [r5] - adds r0, r1 - strh r0, [r5] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xFF - ble _080A7304 - ldr r0, _080A730C - adds r7, r0, 0 -_080A72EE: - adds r4, r5, 0 - ldrh r1, [r5] - adds r0, r7, r1 - strh r0, [r5] - adds r0, r6, 0 - bl sub_80054BC - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0xFF - bgt _080A72EE -_080A7304: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A730C: .4byte 0xffffff00 - thumb_func_end sub_80A72B8 - - thumb_func_start sub_80A7310 -sub_80A7310: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - mov r12, r0 - adds r4, r1, 0 - adds r5, r2, 0 - adds r0, 0x50 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _080A73DC - mov r0, r12 - ldr r0, [r0, 0x5C] - mov r8, r0 - movs r0, 0x1 - negs r0, r0 - cmp r8, r0 - beq _080A73DC - ldr r0, [r4] - cmp r0, 0 - bge _080A7344 - adds r0, 0xFF -_080A7344: - lsls r0, 8 - lsrs r0, 16 - ldr r1, _080A73D0 - mov r9, r1 - ldr r2, [sp, 0x4] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0x4] - ldr r0, [r4, 0x4] - cmp r0, 0 - bge _080A735C - adds r0, 0xFF -_080A735C: - lsls r0, 8 - lsrs r0, 16 - lsls r0, 16 - ldr r6, _080A73D4 - adds r4, r6, 0 - ands r4, r2 - orrs r4, r0 - str r4, [sp, 0x4] - asrs r2, r4, 16 - ldr r0, _080A73D8 - ldr r0, [r0, 0x4] - subs r0, r2, r0 - mov r1, r12 - adds r1, 0x6A - movs r7, 0 - ldrsh r1, [r1, r7] - adds r0, r1 - adds r7, r0, 0x2 - cmp r3, 0 - bge _080A7386 - adds r3, 0xFF -_080A7386: - asrs r0, r3, 8 - subs r0, r2, r0 - lsls r0, 16 - adds r2, r6, 0 - ands r2, r4 - orrs r2, r0 - str r2, [sp, 0x4] - cmp r5, 0 - beq _080A73B8 - ldr r1, [r5] - add r0, sp, 0x4 - ldrh r0, [r0] - adds r1, r0 - lsls r1, 16 - lsrs r1, 16 - mov r0, r9 - ands r0, r2 - orrs r0, r1 - asrs r2, r0, 16 - ldr r1, [r5, 0x4] - adds r1, r2 - lsls r1, 16 - ands r0, r6 - orrs r0, r1 - str r0, [sp, 0x4] -_080A73B8: - mov r0, r12 - adds r0, 0x3C - str r0, [sp] - mov r0, r8 - add r1, sp, 0x4 - movs r2, 0 - adds r3, r7, 0 - bl sub_800E8AC - movs r0, 0x1 - b _080A73DE - .align 2, 0 -_080A73D0: .4byte 0xffff0000 -_080A73D4: .4byte 0x0000ffff -_080A73D8: .4byte gUnknown_2039DD8 -_080A73DC: - movs r0, 0 -_080A73DE: - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A7310 - - thumb_func_start sub_80A73EC -sub_80A73EC: - push {lr} - bl CopySpritesToOam - bl nullsub_13 - bl sub_8005304 - bl nullsub_14 - ldr r1, _080A7420 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - ldr r1, _080A7424 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xB - bls _080A741A - movs r0, 0 - strh r0, [r1] -_080A741A: - pop {r0} - bx r0 - .align 2, 0 -_080A7420: .4byte gUnknown_2039DCC -_080A7424: .4byte gUnknown_2039DCE - thumb_func_end sub_80A73EC - - thumb_func_start sub_80A7428 -sub_80A7428: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - adds r6, r0, 0 - mov r8, r3 - lsls r1, 16 - asrs r7, r1, 16 - lsls r2, 16 - asrs r2, 16 - adds r4, r2, 0 - ldr r1, _080A7480 - mov r0, sp - bl sprintf - ldr r1, _080A7484 - mov r0, sp - bl OpenFile - adds r5, r0, 0 - movs r1, 0 - bl GetFileDataPtr - adds r0, r4, 0 - bl sub_808DACC - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080A7488 - ldr r2, [sp, 0xC] - ands r2, r1 - orrs r2, r0 - str r2, [sp, 0xC] - movs r0, 0xD3 - lsls r0, 1 - cmp r4, r0 - bne _080A7490 - ldr r0, _080A748C - ands r0, r2 - movs r1, 0x91 - lsls r1, 17 - orrs r0, r1 - str r0, [sp, 0xC] - b _080A74AC - .align 2, 0 -_080A7480: .4byte gUnknown_8117EDC -_080A7484: .4byte gUnknown_8510000 -_080A7488: .4byte 0xffff0000 -_080A748C: .4byte 0x0000ffff -_080A7490: - movs r1, 0 - cmp r7, 0x47 - bne _080A7498 - movs r1, 0x1 -_080A7498: - adds r0, r4, 0 - bl sub_808DD68 - lsls r0, 24 - lsrs r0, 8 - ldr r2, _080A74E0 - ldr r1, [sp, 0xC] - ands r1, r2 - orrs r1, r0 - str r1, [sp, 0xC] -_080A74AC: - ldr r0, [r5, 0x4] - add r1, sp, 0xC - str r0, [r1, 0x4] - adds r0, r6, 0 - mov r2, r8 - bl sub_80A67CC - str r5, [r6, 0x54] - adds r0, r6, 0 - adds r0, 0x52 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - blt _080A74D4 - movs r1, 0xC0 - lsls r1, 2 - adds r0, r6, 0 - movs r2, 0 - bl sub_80A6EFC -_080A74D4: - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A74E0: .4byte 0x0000ffff - thumb_func_end sub_80A7428 - - thumb_func_start sub_80A74E4 -sub_80A74E4: - push {lr} - bl sub_80A68A0 - pop {r0} - bx r0 - thumb_func_end sub_80A74E4 - - thumb_func_start sub_80A74F0 -sub_80A74F0: - push {r4-r6,lr} - adds r6, r0, 0 - lsls r1, 16 - asrs r4, r1, 16 - lsls r2, 24 - asrs r5, r2, 24 - cmp r3, 0 - bge _080A7514 - movs r0, 0xE0 - lsls r0, 1 - cmp r4, r0 - beq _080A7512 - adds r0, r4, 0 - bl sub_800E700 - adds r3, r0, 0 - b _080A7514 -_080A7512: - movs r3, 0 -_080A7514: - adds r0, r6, 0 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_80A7040 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80A74F0 - - thumb_func_start sub_80A7524 -sub_80A7524: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x18 - adds r5, r0, 0 - adds r6, r2, 0 - adds r7, r3, 0 - lsls r1, 16 - asrs r1, 16 - mov r8, r1 - mov r1, sp - bl sub_80A7094 - lsls r0, 24 - cmp r0, 0 - beq _080A75C0 - ldr r1, [r5, 0x5C] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A758C - ldr r2, [r5, 0x60] - cmp r2, 0x3 - bgt _080A7580 - cmp r2, 0 - blt _080A7580 - add r4, sp, 0x8 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_800569C - movs r1, 0 - ldrsh r0, [r4, r1] - str r0, [sp, 0xC] - movs r1, 0x2 - ldrsh r0, [r4, r1] - add r2, sp, 0xC - str r0, [r2, 0x4] - adds r0, r5, 0 - adds r1, r6, 0 - adds r3, r7, 0 - bl sub_80A7310 - b _080A758C -_080A7580: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - adds r3, r7, 0 - bl sub_80A7310 -_080A758C: - adds r0, r5, 0 - adds r0, 0x50 - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 1 - ands r0, r1 - cmp r0, 0 - beq _080A75B4 - ldr r0, [sp] - lsls r0, 16 - ldr r1, [sp, 0x4] - lsls r1, 16 - lsrs r0, 16 - orrs r0, r1 - str r0, [sp, 0x14] - add r1, sp, 0x14 - mov r0, r8 - adds r2, r5, 0 - bl sub_808E668 -_080A75B4: - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0 - adds r3, r7, 0 - bl sub_80A7310 -_080A75C0: - add sp, 0x18 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80A7524 - - thumb_func_start sub_80A75CC -sub_80A75CC: - push {r4-r6,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r6, r3, 0 - lsls r2, 16 - asrs r2, 13 - ldr r0, _080A7618 - adds r2, r0 - movs r5, 0 - movs r0, 0 - ldrsb r0, [r2, r0] - lsls r0, 16 - lsrs r0, 16 - ldr r3, _080A761C - ldr r1, [sp] - ands r1, r3 - orrs r1, r0 - str r1, [sp] - ldrh r3, [r2, 0x2] - lsls r3, 16 - ldr r0, _080A7620 - ands r0, r1 - orrs r0, r3 - str r0, [sp] - ldr r0, [r2, 0x4] - cmp r0, 0 - beq _080A7628 - ldr r1, _080A7624 - bl OpenFile - adds r5, r0, 0 - movs r1, 0 - bl GetFileDataPtr - ldr r0, [r5, 0x4] - str r0, [sp, 0x4] - b _080A762A - .align 2, 0 -_080A7618: .4byte gUnknown_8117AE4 -_080A761C: .4byte 0xffff0000 -_080A7620: .4byte 0x0000ffff -_080A7624: .4byte gUnknown_9E60000 -_080A7628: - str r5, [sp, 0x4] -_080A762A: - adds r0, r4, 0 - mov r1, sp - adds r2, r6, 0 - bl sub_80A67CC - str r5, [r4, 0x54] - adds r0, r4, 0 - adds r0, 0x52 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - blt _080A764E - movs r1, 0x80 - lsls r1, 4 - adds r0, r4, 0 - movs r2, 0 - bl sub_80A6EFC -_080A764E: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80A75CC - - thumb_func_start sub_80A7658 -sub_80A7658: - push {lr} - bl sub_80A68A0 - pop {r0} - bx r0 - thumb_func_end sub_80A7658 - - thumb_func_start sub_80A7664 -sub_80A7664: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - movs r1, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_80A7094 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - adds r3, r6, 0 - bl sub_80A7310 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80A7664 - - thumb_func_start sub_80A7688 -sub_80A7688: - push {r4-r6,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r6, r3, 0 - lsls r2, 16 - asrs r2, 13 - ldr r0, _080A76D4 - adds r2, r0 - movs r5, 0 - movs r0, 0 - ldrsb r0, [r2, r0] - lsls r0, 16 - lsrs r0, 16 - ldr r3, _080A76D8 - ldr r1, [sp] - ands r1, r3 - orrs r1, r0 - str r1, [sp] - ldrh r3, [r2, 0x2] - lsls r3, 16 - ldr r0, _080A76DC - ands r0, r1 - orrs r0, r3 - str r0, [sp] - ldr r0, [r2, 0x4] - cmp r0, 0 - beq _080A76E4 - ldr r1, _080A76E0 - bl OpenFile - adds r5, r0, 0 - movs r1, 0 - bl GetFileDataPtr - ldr r0, [r5, 0x4] - str r0, [sp, 0x4] - b _080A76E6 - .align 2, 0 -_080A76D4: .4byte gUnknown_8117E8C -_080A76D8: .4byte 0xffff0000 -_080A76DC: .4byte 0x0000ffff -_080A76E0: .4byte gUnknown_9E60000 -_080A76E4: - str r5, [sp, 0x4] -_080A76E6: - adds r0, r4, 0 - mov r1, sp - adds r2, r6, 0 - bl sub_80A67CC - str r5, [r4, 0x54] - adds r0, r4, 0 - adds r0, 0x52 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - blt _080A770A - movs r1, 0x80 - lsls r1, 4 - adds r0, r4, 0 - movs r2, 0 - bl sub_80A6EFC -_080A770A: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80A7688 - - thumb_func_start sub_80A7714 -sub_80A7714: - push {lr} - bl sub_80A68A0 - pop {r0} - bx r0 - thumb_func_end sub_80A7714 - - thumb_func_start sub_80A7720 -sub_80A7720: - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - movs r1, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_80A7094 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - adds r3, r6, 0 - bl sub_80A7310 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80A7720 - - thumb_func_start sub_80A7744 -sub_80A7744: - ldr r1, _080A7750 - movs r2, 0x1 - negs r2, r2 - adds r0, r2, 0 - strh r0, [r1] - bx lr - .align 2, 0 -_080A7750: .4byte gUnknown_2039DE0 - thumb_func_end sub_80A7744 - - thumb_func_start sub_80A7754 -sub_80A7754: - ldr r1, _080A7760 - movs r2, 0x1 - negs r2, r2 - adds r0, r2, 0 - strh r0, [r1] - bx lr - .align 2, 0 -_080A7760: .4byte gUnknown_2039DE0 - thumb_func_end sub_80A7754 - - thumb_func_start sub_80A7764 -sub_80A7764: - push {r4,lr} - lsls r0, 16 - asrs r4, r0, 16 - bl sub_80A7784 - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - beq _080A777A - ldr r0, _080A7780 - strh r4, [r0] -_080A777A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A7780: .4byte gUnknown_2039DE0 - thumb_func_end sub_80A7764 - - thumb_func_start sub_80A7784 -sub_80A7784: - push {lr} - ldr r2, _080A779C - movs r1, 0 - ldrsh r0, [r2, r1] - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080A7796 - strh r1, [r2] -_080A7796: - pop {r0} - bx r0 - .align 2, 0 -_080A779C: .4byte gUnknown_2039DE0 - thumb_func_end sub_80A7784 - - thumb_func_start sub_80A77A0 -sub_80A77A0: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - adds r2, r1, 0 - ldr r0, _080A77BC - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r0, r1 - beq _080A77CA - cmp r1, 0 - bge _080A77C0 - bl sub_80A7784 - b _080A77C6 - .align 2, 0 -_080A77BC: .4byte gUnknown_2039DE0 -_080A77C0: - adds r0, r2, 0 - bl sub_80A7764 -_080A77C6: - movs r0, 0x1 - b _080A77CC -_080A77CA: - movs r0, 0 -_080A77CC: - pop {r1} - bx r1 - thumb_func_end sub_80A77A0 - - thumb_func_start sub_80A77D0 -sub_80A77D0: - push {lr} - lsls r0, 16 - asrs r1, r0, 16 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A77E8 - ldr r0, _080A77E4 - b _080A77F0 - .align 2, 0 -_080A77E4: .4byte gUnknown_8117EFC -_080A77E8: - ldr r0, _080A77F4 - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] -_080A77F0: - pop {r1} - bx r1 - .align 2, 0 -_080A77F4: .4byte gUnknown_811E258 - thumb_func_end sub_80A77D0 - - thumb_func_start sub_80A77F8 -sub_80A77F8: - push {r4,r5,lr} - ldr r4, _080A7860 - movs r0, 0xCE - lsls r0, 2 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r4] - ldr r4, _080A7864 - movs r0, 0xBA - lsls r0, 6 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r4] - adds r1, r0, 0 - ldr r0, _080A7868 - adds r5, r0, 0 - movs r4, 0xF8 - lsls r4, 1 - movs r2, 0x80 - lsls r2, 9 - adds r3, r2, 0 -_080A7826: - ldrh r0, [r1, 0x2] - orrs r0, r5 - strh r0, [r1, 0x2] - adds r0, r2, 0 - adds r2, r3 - asrs r0, 16 - adds r1, r4 - cmp r0, 0x17 - ble _080A7826 - ldr r4, _080A7860 - ldr r1, [r4] - movs r0, 0xCB - lsls r0, 2 - adds r1, r0 - movs r0, 0 - movs r2, 0x19 - bl sub_809D710 - ldr r0, [r4] - movs r1, 0xCC - lsls r1, 2 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] - bl sub_80A786C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080A7860: .4byte gUnknown_3001B80 -_080A7864: .4byte gUnknown_3001B84 -_080A7868: .4byte 0x0000ffff - thumb_func_end sub_80A77F8 - - thumb_func_start sub_80A786C -sub_80A786C: - push {r4-r6,lr} - ldr r0, _080A78E8 - ldr r4, [r0] - movs r1, 0 - movs r6, 0x1 - negs r6, r6 - movs r5, 0x80 - lsls r5, 9 -_080A787C: - movs r2, 0x2 - ldrsh r0, [r4, r2] - cmp r0, r6 - beq _080A788A - adds r0, r1, 0 - bl sub_80A8684 -_080A788A: - adds r0, r5, 0 - movs r1, 0x80 - lsls r1, 9 - adds r5, r1 - asrs r1, r0, 16 - movs r2, 0xF8 - lsls r2, 1 - adds r4, r2 - cmp r1, 0x17 - ble _080A787C - ldr r3, _080A78EC - ldr r0, [r3] - movs r2, 0x1 - negs r2, r2 - str r2, [r0, 0x24] - adds r0, 0x28 - movs r1, 0xFF - strb r1, [r0] - movs r5, 0 - movs r4, 0 - movs r1, 0x2 -_080A78B4: - ldr r0, [r3] - adds r0, r4 - str r2, [r0, 0x8] - str r5, [r0] - str r5, [r0, 0x4] - adds r4, 0xC - subs r1, 0x1 - cmp r1, 0 - bge _080A78B4 - ldr r4, _080A78EC - movs r2, 0 - movs r3, 0x2C - movs r1, 0x3F -_080A78CE: - ldr r0, [r4] - adds r0, r3 - str r2, [r0] - str r2, [r0, 0x4] - str r2, [r0, 0x8] - adds r3, 0xC - subs r1, 0x1 - cmp r1, 0 - bge _080A78CE - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080A78E8: .4byte gUnknown_3001B84 -_080A78EC: .4byte gUnknown_3001B80 - thumb_func_end sub_80A786C - - thumb_func_start sub_80A78F0 -sub_80A78F0: - push {r4,r5,lr} - bl sub_80A786C - ldr r4, _080A7914 - ldr r0, [r4] - bl MemoryFree - movs r5, 0 - str r5, [r4] - ldr r4, _080A7918 - ldr r0, [r4] - bl MemoryFree - str r5, [r4] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080A7914: .4byte gUnknown_3001B84 -_080A7918: .4byte gUnknown_3001B80 - thumb_func_end sub_80A78F0 - - thumb_func_start GroundLives_Select -GroundLives_Select: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 16 - asrs r4, 16 - lsls r1, 16 - asrs r7, r1, 16 - lsls r2, 24 - asrs r6, r2, 24 - ldr r1, _080A7980 - adds r0, r4, 0 - bl sub_80A77D0 - adds r5, r0, 0 - ldr r1, _080A7984 - str r6, [sp] - movs r0, 0 - adds r2, r4, 0 - adds r3, r7, 0 - bl Log - lsls r1, r7, 3 - ldr r0, [r5, 0x4] - adds r0, r1 - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - ldr r0, [r0, 0x4] - adds r0, r1 - ldr r5, [r0, 0x4] - ldr r0, [r0] - cmp r0, 0 - ble _080A7976 - adds r4, r0, 0 -_080A7960: - movs r0, 0x1 - negs r0, r0 - adds r1, r5, 0 - adds r2, r7, 0 - adds r3, r6, 0 - bl GroundLives_Add - subs r4, 0x1 - adds r5, 0x18 - cmp r4, 0 - bne _080A7960 -_080A7976: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A7980: .4byte gUnknown_811808C -_080A7984: .4byte gUnknown_8118098 - thumb_func_end GroundLives_Select - - thumb_func_start sub_80A7988 -sub_80A7988: - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - asrs r7, r0, 16 - lsls r1, 24 - asrs r5, r1, 24 - ldr r1, _080A79F4 - movs r0, 0 - adds r2, r7, 0 - adds r3, r5, 0 - bl Log - movs r1, 0 - ldr r0, _080A79F8 - ldr r4, [r0] - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r6, 0x80 - lsls r6, 9 -_080A79B2: - movs r2, 0x2 - ldrsh r0, [r4, r2] - cmp r0, r8 - beq _080A79D4 - movs r2, 0x4 - ldrsh r0, [r4, r2] - cmp r0, r7 - bne _080A79D4 - cmp r5, 0 - blt _080A79CE - movs r0, 0x6 - ldrsb r0, [r4, r0] - cmp r0, r5 - bne _080A79D4 -_080A79CE: - adds r0, r1, 0 - bl sub_80A8684 -_080A79D4: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r1, r0, 16 - movs r2, 0xF8 - lsls r2, 1 - adds r4, r2 - cmp r1, 0x17 - ble _080A79B2 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A79F4: .4byte gUnknown_81180BC -_080A79F8: .4byte gUnknown_3001B84 - thumb_func_end sub_80A7988 - - thumb_func_start sub_80A79FC -sub_80A79FC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - ldr r1, _080A7A70 - movs r0, 0 - bl Log - movs r6, 0 - ldr r0, _080A7A74 - ldr r4, [r0] - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r1, 0xA2 - lsls r1, 1 - adds r5, r4, r1 - mov r7, sp -_080A7A20: - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, r8 - beq _080A7A50 - ldr r0, [r5] - ldr r1, [r4, 0x14] - adds r0, r1 - str r0, [sp] - ldr r0, [r5, 0x4] - ldr r1, [r4, 0x18] - adds r0, r1 - str r0, [r7, 0x4] - movs r1, 0xB8 - lsls r1, 1 - adds r0, r4, r1 - mov r1, sp - bl sub_80A675C - lsls r0, 24 - cmp r0, 0 - bne _080A7A50 - adds r0, r6, 0 - bl sub_80A8684 -_080A7A50: - adds r0, r6, 0x1 - lsls r0, 16 - asrs r6, r0, 16 - movs r0, 0xF8 - lsls r0, 1 - adds r5, r0 - adds r4, r0 - cmp r6, 0x17 - ble _080A7A20 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A7A70: .4byte gUnknown_81180D8 -_080A7A74: .4byte gUnknown_3001B84 - thumb_func_end sub_80A79FC - - thumb_func_start sub_80A7A78 -sub_80A7A78: - push {r4-r7,lr} - ldr r1, _080A7AC0 - movs r0, 0 - bl Log - movs r6, 0 - ldr r0, _080A7AC4 - ldr r4, [r0] - movs r7, 0x1 - negs r7, r7 - movs r0, 0x9F - lsls r0, 1 - adds r5, r4, r0 -_080A7A92: - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, r7 - beq _080A7ACC - movs r1, 0x8E - lsls r1, 1 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 4 - ands r0, r1 - cmp r0, 0 - beq _080A7AC8 - movs r0, 0xA2 - lsls r0, 1 - adds r1, r4, r0 - adds r0, 0x8 - adds r2, r4, r0 - movs r0, 0x20 - bl sub_80ADCA0 - b _080A7ACA - .align 2, 0 -_080A7AC0: .4byte gUnknown_81180D8 -_080A7AC4: .4byte gUnknown_3001B84 -_080A7AC8: - ldr r0, _080A7AE4 -_080A7ACA: - strh r0, [r5] -_080A7ACC: - adds r0, r6, 0x1 - lsls r0, 16 - asrs r6, r0, 16 - movs r1, 0xF8 - lsls r1, 1 - adds r5, r1 - adds r4, r1 - cmp r6, 0x17 - ble _080A7A92 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080A7AE4: .4byte 0x0000ffff - thumb_func_end sub_80A7A78 - - thumb_func_start sub_80A7AE8 -sub_80A7AE8: - push {r4-r7,lr} - sub sp, 0x4 - mov r1, sp - strh r0, [r1] - mov r0, sp - bl sub_80A7B94 - mov r0, sp - movs r1, 0 - ldrsh r2, [r0, r1] - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _080A7B34 - movs r3, 0 - ldr r0, _080A7B24 - ldr r1, [r0] - adds r4, r2, 0 - movs r2, 0x80 - lsls r2, 9 - adds r6, r2, 0 - movs r5, 0xF8 - lsls r5, 1 -_080A7B16: - movs r7, 0x2 - ldrsh r0, [r1, r7] - cmp r0, r4 - bne _080A7B28 - adds r0, r3, 0 - b _080A7B38 - .align 2, 0 -_080A7B24: .4byte gUnknown_3001B84 -_080A7B28: - adds r0, r2, 0 - adds r2, r6 - asrs r3, r0, 16 - adds r1, r5 - cmp r3, 0x17 - ble _080A7B16 -_080A7B34: - movs r0, 0x1 - negs r0, r0 -_080A7B38: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A7AE8 - - thumb_func_start sub_80A7B40 -sub_80A7B40: - push {r4-r7,lr} - lsls r0, 16 - asrs r4, r0, 16 - movs r3, 0 - ldr r0, _080A7B70 - ldr r1, [r0] - movs r6, 0x1 - negs r6, r6 - movs r2, 0x80 - lsls r2, 9 - movs r5, 0x9E - lsls r5, 1 -_080A7B58: - movs r7, 0x2 - ldrsh r0, [r1, r7] - cmp r0, r6 - beq _080A7B74 - adds r0, r1, r5 - movs r7, 0 - ldrsh r0, [r0, r7] - cmp r0, r4 - bne _080A7B74 - adds r0, r3, 0 - b _080A7B8C - .align 2, 0 -_080A7B70: .4byte gUnknown_3001B84 -_080A7B74: - adds r0, r2, 0 - movs r3, 0x80 - lsls r3, 9 - adds r2, r3 - asrs r3, r0, 16 - movs r7, 0xF8 - lsls r7, 1 - adds r1, r7 - cmp r3, 0x17 - ble _080A7B58 - movs r0, 0x1 - negs r0, r0 -_080A7B8C: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A7B40 - - thumb_func_start sub_80A7B94 -sub_80A7B94: - push {r4-r7,lr} - sub sp, 0x10 - adds r7, r0, 0 - movs r0, 0 - ldrsh r2, [r7, r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - ldr r1, _080A7BD4 - adds r0, r1 - movs r6, 0x1 - negs r6, r6 - movs r1, 0 - ldrsh r5, [r0, r1] - cmp r5, 0x1 - bne _080A7C14 - adds r0, r2, 0 - cmp r0, 0 - bne _080A7C10 - movs r0, 0 - movs r1, 0x1C - bl sub_8001658 - adds r4, r0, 0 - cmp r4, 0x1 - beq _080A7BDE - cmp r4, 0x1 - bgt _080A7BD8 - cmp r4, 0 - beq _080A7BF2 - b _080A7C08 - .align 2, 0 -_080A7BD4: .4byte gUnknown_811E63C -_080A7BD8: - cmp r4, 0x2 - beq _080A7BE4 - b _080A7C08 -_080A7BDE: - movs r0, 0x2 - strh r0, [r7] - b _080A7C10 -_080A7BE4: - bl sub_808D33C - adds r6, r0, 0 - bl sub_808D3BC - cmp r0, r6 - bne _080A7BF6 -_080A7BF2: - strh r5, [r7] - b _080A7C10 -_080A7BF6: - bl sub_808D3F8 - cmp r0, r6 - bne _080A7C02 - strh r4, [r7] - b _080A7C10 -_080A7C02: - movs r0, 0x3 - strh r0, [r7] - b _080A7C10 -_080A7C08: - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 - b _080A7DAC -_080A7C10: - movs r6, 0 - b _080A7DD2 -_080A7C14: - cmp r5, 0x2 - bne _080A7CD2 - movs r0, 0 - movs r1, 0x1D - bl sub_8001658 - adds r4, r0, 0 - movs r0, 0 - movs r1, 0x1E - bl sub_8001658 - adds r2, r0, 0 - ldrh r1, [r7] - subs r0, r1, 0x4 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _080A7C82 - cmp r1, 0x4 - bne _080A7C44 - adds r0, r4, 0 - cmp r0, 0 - bne _080A7C4C - b _080A7C4A -_080A7C44: - movs r0, 0 - cmp r4, 0 - beq _080A7C4C -_080A7C4A: - adds r0, r2, 0 -_080A7C4C: - cmp r0, 0x2 - beq _080A7C7A - cmp r0, 0x2 - bhi _080A7C5A - cmp r0, 0x1 - beq _080A7C6E - b _080A7DA6 -_080A7C5A: - cmp r0, 0x3 - beq _080A7C60 - b _080A7DA6 -_080A7C60: - bl sub_808D33C - adds r4, r0, 0 - bl sub_808D3BC - cmp r0, r4 - bne _080A7C72 -_080A7C6E: - movs r0, 0x6 - b _080A7C80 -_080A7C72: - bl sub_808D3F8 - cmp r0, r4 - bne _080A7C7E -_080A7C7A: - movs r0, 0x7 - b _080A7C80 -_080A7C7E: - movs r0, 0x8 -_080A7C80: - strh r0, [r7] -_080A7C82: - movs r0, 0 - ldrsh r5, [r7, r0] - cmp r5, 0x7 - beq _080A7CB0 - cmp r5, 0x7 - bgt _080A7C94 - cmp r5, 0x6 - beq _080A7C9A - b _080A7CCA -_080A7C94: - cmp r5, 0x8 - beq _080A7CC6 - b _080A7CCA -_080A7C9A: - movs r6, 0x2 - bl sub_808D33C - adds r4, r0, 0 - bl sub_808D3BC - cmp r4, r0 - beq _080A7CAC - b _080A7DD2 -_080A7CAC: - strh r5, [r7] - b _080A7DD2 -_080A7CB0: - movs r6, 0x1 - bl sub_808D33C - adds r4, r0, 0 - bl sub_808D3F8 - cmp r4, r0 - beq _080A7CC2 - b _080A7DD2 -_080A7CC2: - movs r0, 0x6 - b _080A7DD0 -_080A7CC6: - movs r6, 0x2 - b _080A7DD2 -_080A7CCA: - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 - b _080A7DAC -_080A7CD2: - cmp r5, 0x3 - bne _080A7DB0 - ldrh r1, [r7] - adds r0, r1, 0 - subs r0, 0xA - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x3 - bhi _080A7D12 - adds r4, r2, 0 - subs r4, 0xA - bl sub_8098F88 - lsls r0, 24 - cmp r0, 0 - bne _080A7DD2 - movs r0, 0x9 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A7D06 - mov r0, sp - bl sub_808D6A4 - b _080A7D0C -_080A7D06: - mov r0, sp - bl sub_808D654 -_080A7D0C: - cmp r4, r0 - bge _080A7DA6 - b _080A7D7E -_080A7D12: - adds r0, r1, 0 - subs r0, 0xE - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xF - bhi _080A7DA6 - movs r0, 0 - movs r1, 0x10 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - bl sub_8002658 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _080A7DA6 - movs r2, 0 - ldrsh r0, [r7, r2] - adds r4, r0, 0 - subs r4, 0xE - adds r0, r1, 0 - mov r1, sp - movs r2, 0 - movs r3, 0 - bl sub_8092638 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r4, r0 - bge _080A7DA6 - ldr r2, _080A7D84 - ldr r0, [sp, 0x8] - adds r0, r4 - movs r1, 0x58 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - movs r0, 0x9 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A7D88 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080A7DA6 - ldrb r0, [r4, 0x2] - cmp r0, 0 - bne _080A7DA6 -_080A7D7E: - movs r0, 0x1 - negs r0, r0 - b _080A7DD4 - .align 2, 0 -_080A7D84: .4byte gUnknown_203B45C -_080A7D88: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080A7DA6 - ldrb r0, [r4, 0x2] - cmp r0, 0 - bne _080A7DA6 - movs r1, 0 - ldrb r0, [r4, 0x4] - cmp r0, 0x41 - bne _080A7DA2 - movs r1, 0x1 -_080A7DA2: - cmp r1, 0 - beq _080A7D7E -_080A7DA6: - movs r2, 0x1 - negs r2, r2 - adds r0, r2, 0 -_080A7DAC: - strh r0, [r7] - b _080A7D7E -_080A7DB0: - cmp r2, 0x23 - bne _080A7DD2 - bl sub_808D33C - adds r4, r0, 0 - bl sub_808D3BC - cmp r0, r4 - bne _080A7DC6 - movs r0, 0x21 - b _080A7DD0 -_080A7DC6: - bl sub_808D3F8 - cmp r0, r4 - bne _080A7DD2 - movs r0, 0x22 -_080A7DD0: - strh r0, [r7] -_080A7DD2: - adds r0, r6, 0 -_080A7DD4: - add sp, 0x10 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A7B94 - - thumb_func_start sub_80A7DDC -sub_80A7DDC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x24 - adds r7, r0, 0 - adds r5, r1, 0 - bl sub_80A7B94 - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - movs r0, 0 - strh r0, [r5] - ldrh r3, [r7] - movs r1, 0 - ldrsh r0, [r7, r1] - movs r6, 0x1 - negs r6, r6 - cmp r0, r6 - bne _080A7E0A -_080A7E04: - movs r0, 0x1 - negs r0, r0 - b _080A8098 -_080A7E0A: - movs r0, 0 - ldrsh r2, [r7, r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - ldr r1, _080A7E50 - adds r4, r0, r1 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0x3 - beq _080A7E22 - b _080A7F38 -_080A7E22: - adds r0, r3, 0 - subs r0, 0xA - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x3 - bhi _080A7E90 - adds r4, r2, 0 - subs r4, 0xA - bl sub_8098F88 - lsls r0, 24 - cmp r0, 0 - beq _080A7E58 - ldr r0, _080A7E54 - lsls r1, r4, 1 - adds r1, r0 - ldrh r0, [r1] - strh r0, [r5] - cmp r0, 0 - bne _080A7E04 - strh r6, [r7] - b _080A7E04 - .align 2, 0 -_080A7E50: .4byte gUnknown_811E63C -_080A7E54: .4byte gUnknown_81180F0 -_080A7E58: - movs r0, 0x9 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A7E6C - mov r0, sp - bl sub_808D6A4 - b _080A7E72 -_080A7E6C: - mov r0, sp - bl sub_808D654 -_080A7E72: - cmp r4, r0 - blt _080A7E78 - b _080A8080 -_080A7E78: - ldr r2, _080A7E8C - lsls r0, r4, 2 - add r0, sp - ldr r1, [r0] - movs r0, 0x58 - muls r1, r0 - ldr r0, [r2] - adds r0, r1 - ldrh r0, [r0, 0x8] - b _080A800A - .align 2, 0 -_080A7E8C: .4byte gUnknown_203B45C -_080A7E90: - adds r0, r3, 0 - subs r0, 0xE - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xF - bls _080A7E9E - b _080A8080 -_080A7E9E: - movs r0, 0 - movs r1, 0x10 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - bl sub_8002658 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _080A7EB8 - b _080A8080 -_080A7EB8: - movs r2, 0 - ldrsh r0, [r7, r2] - adds r4, r0, 0 - subs r4, 0xE - adds r0, r1, 0 - mov r1, sp - movs r2, 0 - movs r3, 0 - bl sub_8092638 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r4, r0 - blt _080A7ED8 - b _080A8080 -_080A7ED8: - ldr r2, _080A7F0C - ldr r0, [sp, 0x8] - adds r0, r4 - movs r1, 0x58 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - movs r0, 0x9 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A7F10 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080A7EFE - b _080A8080 -_080A7EFE: - ldrb r0, [r4, 0x2] - cmp r0, 0 - beq _080A7F06 - b _080A8080 -_080A7F06: - ldrh r0, [r4, 0x8] - b _080A800A - .align 2, 0 -_080A7F0C: .4byte gUnknown_203B45C -_080A7F10: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080A7F1C - b _080A8080 -_080A7F1C: - ldrb r0, [r4, 0x2] - cmp r0, 0 - beq _080A7F24 - b _080A8080 -_080A7F24: - movs r1, 0 - ldrb r0, [r4, 0x4] - cmp r0, 0x41 - bne _080A7F2E - movs r1, 0x1 -_080A7F2E: - cmp r1, 0 - beq _080A7F34 - b _080A8080 -_080A7F34: - ldrh r0, [r4, 0x8] - b _080A800A -_080A7F38: - subs r0, r3, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x23 - bls _080A7F44 - b _080A808A -_080A7F44: - lsls r0, 2 - ldr r1, _080A7F50 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080A7F50: .4byte _080A7F54 - .align 2, 0 -_080A7F54: - .4byte _080A7FE4 - .4byte _080A7FEC - .4byte _080A7FF4 - .4byte _080A808A - .4byte _080A808A - .4byte _080A7FE4 - .4byte _080A7FEC - .4byte _080A7FF4 - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A808A - .4byte _080A8032 - .4byte _080A8032 - .4byte _080A8014 - .4byte _080A7FE4 - .4byte _080A7FEC - .4byte _080A7FF4 - .4byte _080A7FFC -_080A7FE4: - bl sub_808D3BC - ldrh r0, [r0, 0x8] - b _080A8094 -_080A7FEC: - bl sub_808D3F8 - ldrh r0, [r0, 0x8] - b _080A8094 -_080A7FF4: - bl sub_808D33C - ldrh r0, [r0, 0x8] - b _080A8094 -_080A7FFC: - movs r0, 0xF - bl RandomCapped - ldr r1, _080A8010 - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] -_080A800A: - strh r0, [r5] - b _080A7E04 - .align 2, 0 -_080A8010: .4byte gUnknown_81180FC -_080A8014: - movs r0, 0 - movs r1, 0x1F - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - beq _080A8028 - strh r0, [r5] - b _080A7E04 -_080A8028: - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 - strh r0, [r7] - b _080A7E04 -_080A8032: - movs r0, 0x89 - strh r0, [r5] - add r6, sp, 0x10 - adds r0, r6, 0 - bl sub_8099328 - lsls r0, 24 - cmp r0, 0 - bne _080A8046 - b _080A7E04 -_080A8046: - add r1, sp, 0x14 - add r2, sp, 0x18 - movs r0, 0x2 - bl sub_8001B88 - add r4, sp, 0x1C - ldr r1, [sp, 0x18] - lsls r1, 24 - lsrs r1, 24 - ldrb r2, [r6] - adds r0, r4, 0 - bl sub_8096AF8 - ldrb r0, [r4] - cmp r0, 0 - beq _080A8076 - movs r2, 0 - ldrsh r0, [r7, r2] - cmp r0, 0x1E - bne _080A8072 - ldrh r0, [r4, 0x2] - b _080A8074 -_080A8072: - ldrh r0, [r4, 0x4] -_080A8074: - strh r0, [r5] -_080A8076: - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _080A8080 - b _080A7E04 -_080A8080: - movs r2, 0x1 - negs r2, r2 - adds r0, r2, 0 - strh r0, [r7] - b _080A7E04 -_080A808A: - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _080A8096 - ldrh r0, [r4, 0x2] -_080A8094: - strh r0, [r5] -_080A8096: - mov r0, r8 -_080A8098: - add sp, 0x24 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A7DDC - - thumb_func_start GroundLives_Add -GroundLives_Add: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - str r1, [sp, 0x10] - lsls r0, 16 - asrs r6, r0, 16 - lsls r2, 16 - asrs r2, 16 - str r2, [sp, 0x14] - lsls r3, 24 - asrs r3, 24 - str r3, [sp, 0x18] - ldrb r1, [r1] - add r0, sp, 0xC - strh r1, [r0] - movs r0, 0 - mov r8, r0 - mov r4, sp - adds r4, 0xE - add r0, sp, 0xC - adds r1, r4, 0 - bl sub_80A7DDC - lsls r0, 16 - asrs r7, r0, 16 - add r0, sp, 0xC - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0x1 - negs r0, r0 - mov r9, r4 - cmp r1, r0 - beq _080A81AE - cmp r7, 0x1 - beq _080A8104 - cmp r7, 0x1 - bgt _080A80FA - cmp r7, 0 - beq _080A8100 - b _080A8118 -_080A80FA: - cmp r7, 0x2 - beq _080A8108 - b _080A8118 -_080A8100: - movs r6, 0 - b _080A8118 -_080A8104: - movs r6, 0x1 - b _080A8118 -_080A8108: - movs r0, 0 - movs r1, 0x1D - bl sub_8001658 - cmp r0, 0 - bne _080A8116 - movs r7, 0x1 -_080A8116: - movs r6, 0x2 -_080A8118: - add r0, sp, 0xC - movs r3, 0 - ldrsh r2, [r0, r3] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - ldr r1, _080A813C - adds r0, r1 - str r0, [sp, 0x1C] - cmp r6, 0 - bge _080A81B4 - cmp r2, 0x21 - beq _080A8140 - cmp r2, 0x23 - beq _080A8154 - adds r0, r2, 0 - b _080A8162 - .align 2, 0 -_080A813C: .4byte gUnknown_811E63C -_080A8140: - ldr r0, _080A8150 - ldr r0, [r0] - movs r4, 0x2 - ldrsh r0, [r0, r4] - cmp r0, 0x1 - beq _080A81AE - movs r0, 0x21 - b _080A8162 - .align 2, 0 -_080A8150: .4byte gUnknown_3001B84 -_080A8154: - ldr r0, _080A8188 - ldr r0, [r0] - movs r1, 0x2 - ldrsh r0, [r0, r1] - cmp r0, 0x3 - beq _080A81AE - movs r0, 0x23 -_080A8162: - bl sub_80A7AE8 - adds r6, r0, 0 - cmp r6, 0 - bge _080A81B4 - movs r2, 0x3 - ldr r0, _080A8188 - ldr r0, [r0] - movs r3, 0xBA - lsls r3, 3 - adds r5, r0, r3 - movs r4, 0x2 - ldrsh r1, [r5, r4] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A818C - movs r6, 0x3 - b _080A81B4 - .align 2, 0 -_080A8188: .4byte gUnknown_3001B84 -_080A818C: - adds r0, r2, 0x1 - lsls r0, 16 - asrs r2, r0, 16 - movs r0, 0xF8 - lsls r0, 1 - adds r5, r0 - cmp r2, 0x17 - bgt _080A81AA - movs r3, 0x2 - ldrsh r1, [r5, r3] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A818C - adds r6, r2, 0 -_080A81AA: - cmp r6, 0 - bge _080A81B4 -_080A81AE: - movs r0, 0x1 - negs r0, r0 - b _080A8674 -_080A81B4: - ldr r1, _080A8234 - lsls r0, r6, 5 - subs r0, r6 - lsls r0, 4 - ldr r1, [r1] - adds r5, r1, r0 - ldr r1, _080A8238 - add r0, sp, 0xC - movs r4, 0 - ldrsh r3, [r0, r4] - ldr r2, [sp, 0x1C] - movs r4, 0 - ldrsh r0, [r2, r4] - str r0, [sp] - ldr r0, [sp, 0x14] - str r0, [sp, 0x4] - ldr r2, [sp, 0x18] - str r2, [sp, 0x8] - movs r0, 0 - adds r2, r6, 0 - bl Log - movs r2, 0 - movs r3, 0x2 - ldrsh r1, [r5, r3] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A81F0 - movs r2, 0x1 -_080A81F0: - str r2, [sp, 0x20] - strh r6, [r5] - add r0, sp, 0xC - ldrh r0, [r0] - strh r0, [r5, 0x2] - mov r4, sp - ldrh r4, [r4, 0x14] - strh r4, [r5, 0x4] - mov r0, sp - ldrb r0, [r0, 0x18] - strb r0, [r5, 0x6] - mov r1, r9 - ldrh r0, [r1] - strh r0, [r5, 0x8] - movs r2, 0x90 - lsls r2, 1 - adds r4, r5, r2 - adds r0, r4, 0 - bl sub_809CD68 - movs r0, 0x9 - str r0, [r4] - ldr r3, [sp, 0x1C] - ldrh r0, [r3] - subs r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x9 - bhi _080A82D8 - lsls r0, 2 - ldr r1, _080A823C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080A8234: .4byte gUnknown_3001B84 -_080A8238: .4byte gUnknown_811811C -_080A823C: .4byte _080A8240 - .align 2, 0 -_080A8240: - .4byte _080A8268 - .4byte _080A8280 - .4byte _080A8290 - .4byte _080A82D8 - .4byte _080A82D8 - .4byte _080A8298 - .4byte _080A82A8 - .4byte _080A82B4 - .4byte _080A82BE - .4byte _080A82CA -_080A8268: - movs r4, 0x8E - lsls r4, 1 - adds r1, r5, r4 - ldr r0, _080A827C - str r0, [r1] - movs r0, 0x90 - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x1 - b _080A82E0 - .align 2, 0 -_080A827C: .4byte 0x2300181d -_080A8280: - movs r2, 0x8E - lsls r2, 1 - adds r1, r5, r2 - ldr r0, _080A828C - b _080A82E0 - .align 2, 0 -_080A828C: .4byte 0x23001000 -_080A8290: - movs r3, 0x8E - lsls r3, 1 - adds r1, r5, r3 - b _080A82DE -_080A8298: - movs r4, 0x8E - lsls r4, 1 - adds r1, r5, r4 - ldr r0, _080A82A4 - b _080A82E0 - .align 2, 0 -_080A82A4: .4byte 0x2000000d -_080A82A8: - movs r0, 0x8E - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x80 - lsls r0, 10 - b _080A82E0 -_080A82B4: - movs r2, 0x8E - lsls r2, 1 - adds r1, r5, r2 - movs r0, 0 - b _080A82E0 -_080A82BE: - movs r3, 0x8E - lsls r3, 1 - adds r1, r5, r3 - movs r0, 0xC0 - lsls r0, 12 - b _080A82E0 -_080A82CA: - movs r4, 0x8E - lsls r4, 1 - adds r1, r5, r4 - ldr r0, _080A82D4 - b _080A82E0 - .align 2, 0 -_080A82D4: .4byte 0x20010000 -_080A82D8: - movs r0, 0x8E - lsls r0, 1 - adds r1, r5, r0 -_080A82DE: - ldr r0, _080A83DC -_080A82E0: - str r0, [r1] - ldr r2, [sp, 0x1C] - ldrb r1, [r2, 0x8] - lsls r1, 11 - str r1, [r5, 0xC] - ldrb r0, [r2, 0x9] - lsls r0, 11 - str r0, [r5, 0x10] - lsrs r1, 1 - str r1, [r5, 0x14] - lsrs r0, 1 - str r0, [r5, 0x18] - ldr r3, [sp, 0x10] - ldrb r0, [r3, 0x1] - strb r0, [r5, 0x1C] - adds r2, r3, 0 - adds r2, 0x4 - adds r4, r5, 0 - adds r4, 0x20 - ldrb r1, [r2, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080A8328 - ldrb r0, [r3, 0x4] - lsls r3, r0, 11 - str r3, [r5, 0x20] - ldrb r1, [r2, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080A8328 - movs r1, 0x80 - lsls r1, 3 - adds r0, r3, r1 - str r0, [r5, 0x20] -_080A8328: - ldrb r1, [r2, 0x3] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080A834A - ldrb r0, [r2, 0x1] - lsls r3, r0, 11 - str r3, [r4, 0x4] - ldrb r1, [r2, 0x3] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080A834A - movs r2, 0x80 - lsls r2, 3 - adds r0, r3, r2 - str r0, [r4, 0x4] -_080A834A: - ldr r3, [sp, 0x20] - cmp r3, 0 - beq _080A83EC - ldrb r0, [r5, 0x1C] - movs r4, 0xA1 - lsls r4, 1 - adds r1, r5, r4 - movs r3, 0 - strb r0, [r1] - movs r0, 0xA2 - lsls r0, 1 - adds r2, r5, r0 - ldr r0, [r5, 0x20] - ldr r1, [r5, 0x14] - subs r0, r1 - str r0, [r2] - movs r1, 0xA6 - lsls r1, 1 - adds r2, r5, r1 - ldr r0, [r5, 0x20] - ldr r1, [r5, 0x14] - adds r0, r1 - str r0, [r2] - adds r4, 0x6 - adds r2, r5, r4 - ldr r0, [r5, 0x24] - ldr r1, [r5, 0x18] - subs r0, r1 - str r0, [r2] - movs r0, 0xA8 - lsls r0, 1 - adds r2, r5, r0 - ldr r0, [r5, 0x24] - ldr r1, [r5, 0x18] - adds r0, r1 - str r0, [r2] - movs r2, 0xAA - lsls r2, 1 - adds r1, r5, r2 - adds r4, 0x10 - adds r0, r5, r4 - str r3, [r0] - str r3, [r1] - movs r1, 0x9E - lsls r1, 1 - adds r0, r5, r1 - strh r7, [r0] - ldr r1, _080A83E0 - lsls r0, r7, 1 - adds r0, r7 - lsls r0, 2 - ldr r1, [r1] - adds r1, r0 - movs r0, 0x1 - negs r0, r0 - str r0, [r1, 0x8] - str r3, [r1] - str r3, [r1, 0x4] - ldrh r0, [r5, 0x2] - subs r0, 0xE - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xF - bhi _080A83E4 - movs r0, 0x12 - bl OtherRandomCapped - movs r2, 0xA0 - lsls r2, 1 - adds r1, r5, r2 - strh r0, [r1] - b _080A83EC - .align 2, 0 -_080A83DC: .4byte 0x2300068d -_080A83E0: .4byte gUnknown_3001B80 -_080A83E4: - movs r4, 0xA0 - lsls r4, 1 - adds r0, r5, r4 - strh r3, [r0] -_080A83EC: - movs r1, 0x8E - lsls r1, 1 - adds r0, r5, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 4 - ands r0, r1 - cmp r0, 0 - beq _080A8418 - movs r2, 0xA2 - lsls r2, 1 - adds r1, r5, r2 - movs r3, 0xA6 - lsls r3, 1 - adds r2, r5, r3 - movs r0, 0x20 - bl sub_80ADCA0 - movs r4, 0x9F - lsls r4, 1 - adds r1, r5, r4 - b _080A8420 -_080A8418: - movs r0, 0x9F - lsls r0, 1 - adds r1, r5, r0 - ldr r0, _080A849C -_080A8420: - strh r0, [r1] - adds r0, r5, 0 - adds r0, 0x28 - adds r1, r5, 0 - adds r1, 0x30 - bl sub_80A5778 - ldr r1, [sp, 0x20] - cmp r1, 0 - beq _080A84AC - ldr r2, _080A84A0 - adds r1, r5, r2 - movs r0, 0xFF - strb r0, [r1] - movs r3, 0xAF - lsls r3, 1 - adds r1, r5, r3 - movs r3, 0 - movs r0, 0xC0 - lsls r0, 2 - strh r0, [r1] - movs r4, 0xB0 - lsls r4, 1 - adds r1, r5, r4 - movs r2, 0x1 - movs r0, 0x1 - strh r0, [r1] - movs r1, 0xB2 - lsls r1, 1 - adds r0, r5, r1 - str r3, [r0] - adds r4, 0x8 - adds r1, r5, r4 - ldr r0, _080A84A4 - strh r0, [r1] - movs r1, 0xAE - lsls r1, 1 - adds r0, r5, r1 - strb r2, [r0] - movs r2, 0xB5 - lsls r2, 1 - adds r0, r5, r2 - strh r3, [r0] - movs r3, 0xB8 - lsls r3, 1 - adds r0, r5, r3 - movs r4, 0x2 - ldrsh r1, [r5, r4] - movs r3, 0x8 - ldrsh r2, [r5, r3] - movs r4, 0x8E - lsls r4, 1 - adds r3, r5, r4 - ldr r3, [r3] - bl sub_80A7428 - adds r4, r5, 0 - adds r4, 0x38 - ldr r1, _080A84A8 - ldr r0, [sp, 0x18] - str r0, [sp] - b _080A855C - .align 2, 0 -_080A849C: .4byte 0x0000ffff -_080A84A0: .4byte 0x0000015d -_080A84A4: .4byte 0x00000807 -_080A84A8: .4byte gUnknown_8117F10 -_080A84AC: - adds r4, r5, 0 - adds r4, 0x38 - ldr r0, _080A84F0 - ldr r1, [r0] - movs r2, 0xCB - lsls r2, 2 - adds r1, r2 - adds r0, r4, 0 - bl sub_809D684 - lsls r0, 24 - cmp r0, 0 - beq _080A8550 - adds r0, r5, 0 - adds r0, 0xBE - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r0, 0 - beq _080A84F4 - adds r0, r5, 0 - adds r0, 0xE0 - ldrh r0, [r0] - mov r10, r0 - adds r0, r5, 0 - adds r0, 0xE2 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - mov r9, r0 - adds r7, r5, 0 - adds r7, 0x80 - movs r0, 0x82 - adds r0, r5 - b _080A8508 - .align 2, 0 -_080A84F0: .4byte gUnknown_3001B80 -_080A84F4: - adds r1, r5, 0 - adds r1, 0x80 - ldrh r2, [r1] - mov r10, r2 - adds r0, r5, 0 - adds r0, 0x82 - movs r3, 0 - ldrsb r3, [r0, r3] - mov r9, r3 - adds r7, r1, 0 -_080A8508: - mov r8, r0 - adds r0, r4, 0 - bl sub_809D648 - ldr r1, _080A8544 - ldr r0, [sp, 0x18] - str r0, [sp] - adds r0, r4, 0 - adds r2, r5, 0 - ldr r3, [sp, 0x14] - bl sub_809D600 - ldr r0, _080A8548 - ldr r2, [r0] - movs r1, 0xCB - lsls r1, 2 - adds r2, r1 - ldr r3, _080A854C - adds r0, r4, 0 - movs r1, 0 - bl GroundScript_ExecutePP - mov r2, r10 - strh r2, [r7] - mov r0, r9 - mov r3, r8 - strb r0, [r3] - movs r1, 0x1 - mov r8, r1 - b _080A8566 - .align 2, 0 -_080A8544: .4byte gUnknown_8117F10 -_080A8548: .4byte gUnknown_3001B80 -_080A854C: .4byte gUnknown_8118170 -_080A8550: - adds r0, r4, 0 - bl sub_809D648 - ldr r1, _080A861C - ldr r2, [sp, 0x18] - str r2, [sp] -_080A855C: - adds r0, r4, 0 - adds r2, r5, 0 - ldr r3, [sp, 0x14] - bl sub_809D600 -_080A8566: - ldr r3, [sp, 0x10] - ldr r2, [r3, 0xC] - cmp r2, 0 - bne _080A8574 - ldr r0, _080A8620 - adds r0, 0xEC - ldr r2, [r0] -_080A8574: - adds r0, r4, 0 - movs r1, 0x1 - bl sub_809D6D8 - ldr r0, [sp, 0x10] - ldr r2, [r0, 0x10] - cmp r2, 0 - bne _080A8588 - ldr r0, _080A8620 - ldr r2, [r0, 0x38] -_080A8588: - adds r0, r4, 0 - movs r1, 0x2 - bl sub_809D6D8 - ldr r1, [sp, 0x10] - ldr r2, [r1, 0x14] - cmp r2, 0 - bne _080A859C - ldr r0, _080A8620 - ldr r2, [r0, 0x50] -_080A859C: - adds r0, r4, 0 - movs r1, 0x3 - bl sub_809D6D8 - ldr r3, [sp, 0x10] - ldr r2, [r3, 0x8] - cmp r2, 0 - beq _080A8630 - adds r0, r4, 0 - movs r1, 0 - bl sub_809D6D8 - ldr r0, [sp, 0x20] - cmp r0, 0 - bne _080A860C - mov r1, r8 - cmp r1, 0 - bne _080A860C - movs r2, 0x8E - lsls r2, 1 - adds r0, r5, r2 - ldr r0, [r0] - movs r1, 0xC0 - lsls r1, 5 - ands r0, r1 - cmp r0, 0 - bne _080A860C - ldr r0, _080A8624 - ldr r2, [r0] - movs r3, 0xCB - lsls r3, 2 - adds r2, r3 - ldr r3, _080A8628 - adds r0, r4, 0 - movs r1, 0 - bl GroundScript_ExecutePP - movs r1, 0xB0 - lsls r1, 1 - adds r0, r5, r1 - movs r2, 0xAF - lsls r2, 1 - adds r1, r5, r2 - ldrh r0, [r0] - ldrh r1, [r1] - orrs r0, r1 - adds r1, r5, 0 - adds r1, 0x80 - strh r0, [r1] - movs r3, 0xA1 - lsls r3, 1 - adds r0, r5, r3 - ldrb r1, [r0] - adds r0, r5, 0 - adds r0, 0x82 - strb r1, [r0] -_080A860C: - ldr r3, _080A862C - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - bl sub_809D8C0 - b _080A865A - .align 2, 0 -_080A861C: .4byte gUnknown_8117F10 -_080A8620: .4byte gUnknown_812F1F8 -_080A8624: .4byte gUnknown_3001B80 -_080A8628: .4byte gUnknown_811817C -_080A862C: .4byte gUnknown_8118188 -_080A8630: - mov r4, r8 - cmp r4, 0 - beq _080A865A - movs r0, 0xAE - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x1 - strb r0, [r1] - adds r0, r5, 0 - adds r0, 0x82 - ldrb r0, [r0] - movs r2, 0xA1 - lsls r2, 1 - adds r1, r5, r2 - strb r0, [r1] - adds r0, r5, 0 - adds r0, 0x80 - ldrh r1, [r0] - adds r0, r5, 0 - bl sub_80A9750 -_080A865A: - ldr r3, [sp, 0x1C] - movs r4, 0 - ldrsh r0, [r3, r4] - cmp r0, 0x1 - bne _080A8672 - ldr r0, [sp, 0x20] - cmp r0, 0 - beq _080A8672 - movs r0, 0x1 - adds r1, r6, 0 - bl sub_809D170 -_080A8672: - adds r0, r6, 0 -_080A8674: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end GroundLives_Add - - thumb_func_start sub_80A8684 -sub_80A8684: - push {r4,lr} - adds r2, r0, 0 - lsls r2, 16 - asrs r2, 16 - ldr r1, _080A86BC - lsls r0, r2, 5 - subs r0, r2 - lsls r0, 4 - ldr r1, [r1] - adds r4, r1, r0 - ldr r1, _080A86C0 - movs r0, 0 - bl Log - movs r1, 0xB8 - lsls r1, 1 - adds r0, r4, r1 - bl sub_80A74E4 - adds r0, r4, 0 - adds r0, 0x38 - bl sub_809D648 - ldr r0, _080A86C4 - strh r0, [r4, 0x2] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080A86BC: .4byte gUnknown_3001B84 -_080A86C0: .4byte gUnknown_8118194 -_080A86C4: .4byte 0x0000ffff - thumb_func_end sub_80A8684 - - thumb_func_start sub_80A86C8 -sub_80A86C8: - push {r4,r5,lr} - adds r5, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A8708 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r4, r0, r1 - movs r1, 0x2 - ldrsh r0, [r4, r1] - movs r3, 0x1 - negs r3, r3 - cmp r0, r3 - beq _080A8744 - movs r2, 0x9E - lsls r2, 1 - adds r1, r4, r2 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _080A870C - movs r0, 0xC0 - lsls r0, 6 - ands r0, r5 - cmp r0, 0 - beq _080A872E - bl sub_80AB5A4 - b _080A872E - .align 2, 0 -_080A8708: .4byte gUnknown_3001B84 -_080A870C: - movs r0, 0x80 - lsls r0, 5 - ands r0, r5 - cmp r0, 0 - beq _080A872E - ldr r2, _080A874C - movs r0, 0 - ldrsh r1, [r1, r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, [r2] - adds r1, r0 - str r3, [r1, 0x8] - movs r0, 0 - str r0, [r1] - str r0, [r1, 0x4] -_080A872E: - movs r1, 0x8E - lsls r1, 1 - adds r0, r4, r1 - ldr r1, [r0] - orrs r1, r5 - str r1, [r0] - movs r2, 0xB8 - lsls r2, 1 - adds r0, r4, r2 - bl sub_80A6688 -_080A8744: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080A874C: .4byte gUnknown_3001B80 - thumb_func_end sub_80A86C8 - - thumb_func_start sub_80A8750 -sub_80A8750: - push {r4,r5,lr} - adds r5, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A87A8 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r4, r0, r1 - movs r0, 0x2 - ldrsh r1, [r4, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A87A2 - movs r1, 0x9E - lsls r1, 1 - adds r0, r4, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - bne _080A878C - movs r0, 0xC0 - lsls r0, 6 - ands r0, r5 - cmp r0, 0 - beq _080A878C - bl sub_80AB5A4 -_080A878C: - movs r1, 0x8E - lsls r1, 1 - adds r0, r4, r1 - ldr r1, [r0] - bics r1, r5 - str r1, [r0] - movs r2, 0xB8 - lsls r2, 1 - adds r0, r4, r2 - bl sub_80A6688 -_080A87A2: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080A87A8: .4byte gUnknown_3001B84 - thumb_func_end sub_80A8750 - - thumb_func_start sub_80A87AC -sub_80A87AC: - push {lr} - adds r3, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A87DC - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A87D8 - movs r1, 0x90 - lsls r1, 1 - adds r0, r2, r1 - adds r1, r3, 0 - bl sub_809CD8C -_080A87D8: - pop {r0} - bx r0 - .align 2, 0 -_080A87DC: .4byte gUnknown_3001B84 - thumb_func_end sub_80A87AC - - thumb_func_start sub_80A87E0 -sub_80A87E0: - push {r4,lr} - adds r3, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A8820 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r4, r0, r1 - movs r0, 0x2 - ldrsh r1, [r4, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A8824 - movs r0, 0x7 - movs r1, 0 - adds r2, r3, 0 - bl sub_809B1C0 - lsls r0, 24 - cmp r0, 0 - beq _080A8824 - movs r1, 0x90 - lsls r1, 1 - adds r0, r4, r1 - movs r1, 0x5 - bl sub_809CD8C - movs r0, 0x1 - b _080A8826 - .align 2, 0 -_080A8820: .4byte gUnknown_3001B84 -_080A8824: - movs r0, 0 -_080A8826: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80A87E0 - - thumb_func_start sub_80A882C -sub_80A882C: - push {lr} - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A8850 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A8854 - movs r0, 0 - b _080A8858 - .align 2, 0 -_080A8850: .4byte gUnknown_3001B84 -_080A8854: - adds r0, r2, 0 - adds r0, 0x38 -_080A8858: - pop {r1} - bx r1 - thumb_func_end sub_80A882C - - thumb_func_start sub_80A885C -sub_80A885C: - push {r4,lr} - adds r4, r1, 0 - lsls r0, 16 - asrs r0, 16 - lsls r2, 16 - asrs r3, r2, 16 - ldr r2, _080A8884 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A8888 - movs r0, 0 - b _080A8898 - .align 2, 0 -_080A8884: .4byte gUnknown_3001B84 -_080A8888: - adds r0, r2, 0 - adds r0, 0x38 - adds r1, r4, 0 - adds r2, r3, 0 - bl sub_809D6E4 - lsls r0, 24 - lsrs r0, 24 -_080A8898: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80A885C - - thumb_func_start sub_80A88A0 -sub_80A88A0: - push {lr} - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A88C4 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A88C8 - movs r0, 0 - b _080A88D4 - .align 2, 0 -_080A88C4: .4byte gUnknown_3001B84 -_080A88C8: - adds r0, r2, 0 - adds r0, 0x38 - bl sub_809D678 - lsls r0, 24 - lsrs r0, 24 -_080A88D4: - pop {r1} - bx r1 - thumb_func_end sub_80A88A0 - - thumb_func_start GroundLives_ExecuteScript -GroundLives_ExecuteScript: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r7, r1, 0 - adds r6, r2, 0 - lsls r4, 16 - asrs r4, 16 - ldr r1, _080A8914 - lsls r0, r4, 5 - subs r0, r4 - lsls r0, 4 - ldr r1, [r1] - adds r5, r1, r0 - ldr r1, _080A8918 - movs r0, 0x2 - ldrsh r3, [r5, r0] - str r6, [sp] - movs r0, 0 - adds r2, r4, 0 - bl Log - movs r0, 0x2 - ldrsh r1, [r5, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A891C - movs r0, 0 - b _080A8934 - .align 2, 0 -_080A8914: .4byte gUnknown_3001B84 -_080A8918: .4byte gUnknown_81181B0 -_080A891C: - adds r0, r5, 0 - adds r0, 0x38 - ldr r3, _080A893C - adds r1, r7, 0 - adds r2, r6, 0 - bl GroundScript_ExecutePP - movs r0, 0xAE - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x1 - strb r0, [r1] -_080A8934: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080A893C: .4byte gUnknown_81181F4 - thumb_func_end GroundLives_ExecuteScript - - thumb_func_start _ExecutePlayerScript -_ExecutePlayerScript: - push {r4,r5,lr} - adds r3, r0, 0 - adds r5, r1, 0 - adds r4, r2, 0 - movs r0, 0xAF - lsls r0, 1 - adds r1, r3, r0 - movs r2, 0 - movs r0, 0xC0 - lsls r0, 2 - strh r0, [r1] - movs r0, 0xB0 - lsls r0, 1 - adds r1, r3, r0 - movs r0, 0x1 - strh r0, [r1] - movs r1, 0xB2 - lsls r1, 1 - adds r0, r3, r1 - str r2, [r0] - movs r0, 0xB4 - lsls r0, 1 - adds r2, r3, r0 - movs r1, 0 - ldrsh r0, [r2, r1] - ldr r1, _080A898C - cmp r0, r1 - beq _080A8984 - strh r1, [r2] - movs r0, 0xAE - lsls r0, 1 - adds r1, r3, r0 - movs r0, 0x1 - strb r0, [r1] -_080A8984: - cmp r4, 0 - bne _080A8990 - movs r0, 0 - b _080A89A2 - .align 2, 0 -_080A898C: .4byte 0x00000807 -_080A8990: - adds r0, r3, 0 - adds r0, 0x38 - ldr r3, _080A89A8 - adds r1, r5, 0 - adds r2, r4, 0 - bl GroundScript_ExecutePP - lsls r0, 24 - lsrs r0, 24 -_080A89A2: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080A89A8: .4byte gUnknown_8118218 - thumb_func_end _ExecutePlayerScript - - thumb_func_start sub_80A89AC -sub_80A89AC: - push {r4,lr} - lsls r0, 16 - asrs r0, 16 - ldr r4, _080A89CC - lsls r3, r0, 5 - subs r3, r0 - lsls r3, 4 - ldr r0, [r4] - adds r0, r3 - bl _ExecutePlayerScript - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080A89CC: .4byte gUnknown_3001B84 - thumb_func_end sub_80A89AC - - thumb_func_start GroundLives_ExecutePlayerScriptActionLives -GroundLives_ExecutePlayerScriptActionLives: - push {r4-r6,lr} - sub sp, 0x10 - lsls r0, 16 - asrs r2, r0, 16 - lsls r1, 16 - asrs r4, r1, 16 - cmp r2, 0 - blt _080A8A50 - cmp r4, 0 - blt _080A8A50 - ldr r1, _080A8A48 - lsls r0, r2, 5 - subs r0, r2 - lsls r0, 4 - ldr r1, [r1] - adds r5, r1, r0 - lsls r0, r4, 5 - subs r0, r4 - lsls r0, 4 - adds r1, r0 - movs r2, 0x2 - ldrsh r0, [r5, r2] - movs r2, 0x1 - negs r2, r2 - cmp r0, r2 - beq _080A8A50 - movs r3, 0x2 - ldrsh r0, [r1, r3] - cmp r0, r2 - beq _080A8A50 - adds r6, r1, 0 - adds r6, 0x38 - adds r0, r6, 0 - mov r1, sp - movs r2, 0x2 - bl sub_809D6E4 - lsls r0, 24 - cmp r0, 0 - beq _080A8A50 - movs r1, 0x1 - lsls r0, r4, 16 - orrs r0, r1 - str r0, [sp, 0xC] - adds r1, r5, 0 - adds r1, 0x40 - ldr r3, _080A8A4C - adds r0, r6, 0 - movs r2, 0x3 - bl sub_809D8C0 - add r1, sp, 0xC - adds r0, r5, 0 - mov r2, sp - bl _ExecutePlayerScript - lsls r0, 24 - lsrs r0, 24 - b _080A8A52 - .align 2, 0 -_080A8A48: .4byte gUnknown_3001B84 -_080A8A4C: .4byte gUnknown_8118250 -_080A8A50: - movs r0, 0 -_080A8A52: - add sp, 0x10 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end GroundLives_ExecutePlayerScriptActionLives - - thumb_func_start sub_80A8A5C -sub_80A8A5C: - push {r4-r6,lr} - sub sp, 0x1C - lsls r0, 16 - asrs r2, r0, 16 - lsls r1, 16 - asrs r5, r1, 16 - cmp r2, 0 - blt _080A8AC0 - cmp r5, 0 - blt _080A8AC0 - ldr r1, _080A8ABC - lsls r0, r2, 5 - subs r0, r2 - lsls r0, 4 - ldr r1, [r1] - adds r6, r1, r0 - adds r0, r5, 0 - mov r1, sp - movs r2, 0x2 - bl sub_80AC274 - lsls r0, 24 - cmp r0, 0 - beq _080A8AC0 - movs r1, 0x2 - lsls r0, r5, 16 - orrs r0, r1 - str r0, [sp, 0x18] - add r4, sp, 0xC - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x3 - bl sub_80AC274 - adds r1, r6, 0 - adds r1, 0x40 - adds r0, r5, 0 - adds r2, r4, 0 - bl GroundObject_ExecuteScript - add r1, sp, 0x18 - adds r0, r6, 0 - mov r2, sp - bl _ExecutePlayerScript - lsls r0, 24 - lsrs r0, 24 - b _080A8AC2 - .align 2, 0 -_080A8ABC: .4byte gUnknown_3001B84 -_080A8AC0: - movs r0, 0 -_080A8AC2: - add sp, 0x1C - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80A8A5C - - thumb_func_start sub_80A8ACC -sub_80A8ACC: - push {r4,lr} - sub sp, 0xC - lsls r0, 16 - asrs r2, r0, 16 - lsls r1, 16 - asrs r3, r1, 16 - cmp r2, 0 - blt _080A8B10 - cmp r3, 0 - blt _080A8B10 - ldr r1, _080A8B0C - lsls r0, r2, 5 - subs r0, r2 - lsls r0, 4 - ldr r1, [r1] - adds r4, r1, r0 - adds r0, r3, 0 - mov r1, sp - bl sub_80ADC64 - lsls r0, 24 - cmp r0, 0 - beq _080A8B10 - adds r0, r4, 0 - movs r1, 0 - mov r2, sp - bl _ExecutePlayerScript - lsls r0, 24 - lsrs r0, 24 - b _080A8B12 - .align 2, 0 -_080A8B0C: .4byte gUnknown_3001B84 -_080A8B10: - movs r0, 0 -_080A8B12: - add sp, 0xC - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80A8ACC - - thumb_func_start sub_80A8B1C -sub_80A8B1C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - asrs r7, r0, 16 - ldr r0, _080A8B70 - ldr r4, [r0] - movs r5, 0 - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r6, 0x80 - lsls r6, 9 -_080A8B36: - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, r8 - beq _080A8B4E - adds r0, r4, 0 - adds r0, 0x38 - adds r1, r7, 0 - bl sub_809D968 - orrs r5, r0 - lsls r0, r5, 24 - lsrs r5, r0, 24 -_080A8B4E: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r0, 16 - movs r1, 0xF8 - lsls r1, 1 - adds r4, r1 - cmp r0, 0x17 - ble _080A8B36 - adds r0, r5, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080A8B70: .4byte gUnknown_3001B84 - thumb_func_end sub_80A8B1C - - thumb_func_start sub_80A8B74 -sub_80A8B74: - push {r4-r7,lr} - ldr r0, _080A8BB8 - ldr r4, [r0] - movs r5, 0 - movs r7, 0x1 - negs r7, r7 - movs r6, 0x80 - lsls r6, 9 -_080A8B84: - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, r7 - beq _080A8B9A - adds r0, r4, 0 - adds r0, 0x38 - bl sub_809D92C - orrs r5, r0 - lsls r0, r5, 24 - lsrs r5, r0, 24 -_080A8B9A: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r0, 16 - movs r1, 0xF8 - lsls r1, 1 - adds r4, r1 - cmp r0, 0x17 - ble _080A8B84 - adds r0, r5, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080A8BB8: .4byte gUnknown_3001B84 - thumb_func_end sub_80A8B74 - - thumb_func_start sub_80A8BBC -sub_80A8BBC: - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A8BD4 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r0, r1 - movs r1, 0x2 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080A8BD4: .4byte gUnknown_3001B84 - thumb_func_end sub_80A8BBC - - thumb_func_start sub_80A8BD8 -sub_80A8BD8: - lsls r0, 16 - asrs r0, 16 - ldr r3, _080A8BF8 - lsls r2, r0, 5 - subs r2, r0 - lsls r2, 4 - ldr r0, [r3] - adds r0, r2 - movs r3, 0x8E - lsls r3, 1 - adds r2, r0, r3 - ldr r2, [r2] - str r2, [r1] - movs r1, 0x2 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080A8BF8: .4byte gUnknown_3001B84 - thumb_func_end sub_80A8BD8 - - thumb_func_start sub_80A8BFC -sub_80A8BFC: - push {lr} - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A8C20 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A8C24 - movs r0, 0 - b _080A8C28 - .align 2, 0 -_080A8C20: .4byte gUnknown_3001B84 -_080A8C24: - movs r1, 0x8 - ldrsh r0, [r2, r1] -_080A8C28: - pop {r1} - bx r1 - thumb_func_end sub_80A8BFC - - thumb_func_start sub_80A8C2C -sub_80A8C2C: - push {r4,lr} - sub sp, 0x4 - mov r1, sp - strh r0, [r1] - mov r4, sp - adds r4, 0x2 - mov r0, sp - adds r1, r4, 0 - bl sub_80A7DDC - movs r1, 0 - ldrsh r0, [r4, r1] - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80A8C2C - - thumb_func_start sub_80A8C4C -sub_80A8C4C: - push {r4,r5,lr} - adds r5, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A8C80 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r4, r0, r1 - movs r0, 0x2 - ldrsh r1, [r4, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A8C90 - adds r0, r1, 0 - bl sub_80A8D54 - adds r1, r0, 0 - cmp r1, 0 - beq _080A8C84 - ldr r0, [r1, 0x4] - str r0, [r5] - b _080A8C8A - .align 2, 0 -_080A8C80: .4byte gUnknown_3001B84 -_080A8C84: - movs r0, 0x63 - strb r0, [r5] - strb r1, [r5, 0x1] -_080A8C8A: - movs r1, 0x8 - ldrsh r0, [r4, r1] - b _080A8C92 -_080A8C90: - movs r0, 0 -_080A8C92: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80A8C4C - - thumb_func_start sub_80A8C98 -sub_80A8C98: - push {r4,lr} - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A8CD4 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r3, r0, r1 - movs r0, 0x2 - ldrsh r1, [r3, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A8CE8 - ldr r1, _080A8CD8 - ldrh r2, [r1] - movs r4, 0 - ldrsh r0, [r1, r4] - cmp r0, 0 - beq _080A8CE8 - movs r0, 0x8 - ldrsh r3, [r3, r0] -_080A8CC6: - lsls r0, r2, 16 - asrs r0, 16 - cmp r0, r3 - bne _080A8CDC - movs r0, 0x1 - b _080A8CEA - .align 2, 0 -_080A8CD4: .4byte gUnknown_3001B84 -_080A8CD8: .4byte gUnknown_8117FCE -_080A8CDC: - adds r1, 0x2 - ldrh r2, [r1] - movs r4, 0 - ldrsh r0, [r1, r4] - cmp r0, 0 - bne _080A8CC6 -_080A8CE8: - movs r0, 0 -_080A8CEA: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80A8C98 - - thumb_func_start sub_80A8CF0 -sub_80A8CF0: - push {r4,lr} - lsls r0, 16 - asrs r3, r0, 16 - ldr r1, _080A8CFC - b _080A8D0E - .align 2, 0 -_080A8CFC: .4byte gUnknown_8117FCE -_080A8D00: - lsls r0, r2, 16 - asrs r0, 16 - cmp r0, r3 - bne _080A8D0C - movs r0, 0x1 - b _080A8D1A -_080A8D0C: - adds r1, 0x2 -_080A8D0E: - ldrh r2, [r1] - movs r4, 0 - ldrsh r0, [r1, r4] - cmp r0, 0 - bne _080A8D00 - movs r0, 0 -_080A8D1A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80A8CF0 - - thumb_func_start sub_80A8D20 -sub_80A8D20: - push {lr} - movs r0, 0 - bl sub_80A7AE8 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A8D50 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r0, r1 - movs r1, 0x90 - lsls r1, 1 - adds r0, r1 - bl sub_809CDB8 - movs r1, 0 - cmp r0, 0x1 - bne _080A8D4A - movs r1, 0x1 -_080A8D4A: - adds r0, r1, 0 - pop {r1} - bx r1 - .align 2, 0 -_080A8D50: .4byte gUnknown_3001B84 - thumb_func_end sub_80A8D20 - - thumb_func_start sub_80A8D54 -sub_80A8D54: - push {r4,r5,lr} - sub sp, 0x14 - mov r1, sp - strh r0, [r1] - mov r0, sp - bl sub_80A7B94 - mov r0, sp - ldrh r1, [r0] - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0x1 - beq _080A8D76 - cmp r0, 0x6 - beq _080A8D76 - cmp r0, 0x21 - bne _080A8D7C -_080A8D76: - bl sub_808D3BC - b _080A8E94 -_080A8D7C: - cmp r0, 0x2 - beq _080A8D88 - cmp r0, 0x7 - beq _080A8D88 - cmp r0, 0x22 - bne _080A8D8E -_080A8D88: - bl sub_808D3F8 - b _080A8E94 -_080A8D8E: - cmp r0, 0x3 - beq _080A8D9A - cmp r0, 0x8 - beq _080A8D9A - cmp r0, 0x23 - bne _080A8DA0 -_080A8D9A: - bl sub_808D33C - b _080A8E94 -_080A8DA0: - adds r0, r1, 0 - subs r0, 0xA - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x3 - bhi _080A8DF8 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - adds r5, r0, 0 - subs r5, 0xA - bl sub_8098F88 - lsls r0, 24 - cmp r0, 0 - bne _080A8E92 - movs r0, 0x9 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A8DD6 - add r4, sp, 0x4 - adds r0, r4, 0 - bl sub_808D6A4 - b _080A8DDE -_080A8DD6: - add r4, sp, 0x4 - adds r0, r4, 0 - bl sub_808D654 -_080A8DDE: - cmp r5, r0 - bge _080A8E92 - ldr r2, _080A8DF4 - lsls r0, r5, 2 - adds r0, r4, r0 - ldr r1, [r0] - movs r0, 0x58 - muls r1, r0 - ldr r0, [r2] - adds r0, r1 - b _080A8E94 - .align 2, 0 -_080A8DF4: .4byte gUnknown_203B45C -_080A8DF8: - adds r0, r1, 0 - subs r0, 0xE - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xF - bhi _080A8E92 - movs r0, 0 - movs r1, 0x10 - bl sub_8001658 - lsls r0, 16 - asrs r0, 16 - bl sub_8002658 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _080A8E92 - mov r0, sp - movs r2, 0 - ldrsh r0, [r0, r2] - adds r5, r0, 0 - subs r5, 0xE - add r4, sp, 0x4 - adds r0, r1, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_8092638 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r5, r0 - bge _080A8E92 - ldr r2, _080A8E6C - ldr r0, [r4, 0x8] - adds r0, r5 - movs r1, 0x58 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - movs r0, 0x9 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _080A8E70 - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080A8E92 - ldrb r0, [r4, 0x2] - cmp r0, 0 - bne _080A8E92 - adds r0, r4, 0 - b _080A8E94 - .align 2, 0 -_080A8E6C: .4byte gUnknown_203B45C -_080A8E70: - ldrb r1, [r4] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080A8E92 - ldrb r0, [r4, 0x2] - cmp r0, 0 - bne _080A8E92 - movs r1, 0 - ldrb r0, [r4, 0x4] - cmp r0, 0x41 - bne _080A8E8A - movs r1, 0x1 -_080A8E8A: - cmp r1, 0 - bne _080A8E92 - adds r0, r4, 0 - b _080A8E94 -_080A8E92: - movs r0, 0 -_080A8E94: - add sp, 0x14 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80A8D54 - - thumb_func_start sub_80A8E9C -sub_80A8E9C: - push {lr} - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A8EBC - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r0, r1 - movs r1, 0x2 - ldrsh r0, [r0, r1] - bl sub_80A8D54 - pop {r1} - bx r1 - .align 2, 0 -_080A8EBC: .4byte gUnknown_3001B84 - thumb_func_end sub_80A8E9C - - thumb_func_start sub_80A8EC0 -sub_80A8EC0: - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - mov r0, sp - strh r1, [r0] - mov r5, sp - adds r5, 0x2 - adds r1, r5, 0 - bl sub_80A7DDC - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - bl sub_80A8D54 - cmp r0, 0 - beq _080A8EF0 - adds r1, r0, 0 - adds r1, 0x4C - adds r0, r4, 0 - movs r2, 0xA - bl sub_80922B4 - b _080A8F44 -_080A8EF0: - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - cmp r1, 0x20 - bne _080A8F00 - movs r0, 0 - ldrsh r1, [r5, r0] - b _080A8F34 -_080A8F00: - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A8F3C - mov r0, sp - movs r1, 0 - ldrsh r2, [r0, r1] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - ldr r1, _080A8F2C - adds r0, r1 - cmp r2, 0x34 - beq _080A8F20 - cmp r2, 0x64 - bne _080A8F30 -_080A8F20: - ldr r1, [r0, 0x4] - adds r0, r4, 0 - bl strcpy - b _080A8F44 - .align 2, 0 -_080A8F2C: .4byte gUnknown_811E63C -_080A8F30: - movs r2, 0x2 - ldrsh r1, [r0, r2] -_080A8F34: - adds r0, r4, 0 - bl sub_808D8BC - b _080A8F44 -_080A8F3C: - ldr r1, _080A8F4C - adds r0, r4, 0 - bl strcpy -_080A8F44: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080A8F4C: .4byte gUnknown_811825C - thumb_func_end sub_80A8EC0 - - thumb_func_start sub_80A8F50 -sub_80A8F50: - push {r4,r5,lr} - sub sp, 0x80 - adds r4, r0, 0 - adds r5, r2, 0 - lsls r1, 16 - asrs r1, 16 - mov r0, sp - bl sub_80A8EC0 - adds r0, r4, 0 - mov r1, sp - adds r2, r5, 0 - bl sub_8092310 - add sp, 0x80 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80A8F50 - - thumb_func_start sub_80A8F74 -sub_80A8F74: - push {lr} - adds r3, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A8F98 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r0, r1 - movs r2, 0x2 - ldrsh r1, [r0, r2] - adds r0, r3, 0 - bl sub_80A8EC0 - pop {r0} - bx r0 - .align 2, 0 -_080A8F98: .4byte gUnknown_3001B84 - thumb_func_end sub_80A8F74 - - thumb_func_start sub_80A8F9C -sub_80A8F9C: - push {lr} - adds r3, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A8FC4 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A8FC8 - movs r0, 0 - str r0, [r3] - str r0, [r3, 0x4] - b _080A8FD0 - .align 2, 0 -_080A8FC4: .4byte gUnknown_3001B84 -_080A8FC8: - ldr r0, [r2, 0xC] - ldr r1, [r2, 0x10] - str r0, [r3] - str r1, [r3, 0x4] -_080A8FD0: - movs r1, 0x2 - ldrsh r0, [r2, r1] - pop {r1} - bx r1 - thumb_func_end sub_80A8F9C - - thumb_func_start sub_80A8FD8 -sub_80A8FD8: - push {lr} - adds r3, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A9000 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A9004 - movs r0, 0 - str r0, [r3] - b _080A901E - .align 2, 0 -_080A9000: .4byte gUnknown_3001B84 -_080A9004: - movs r1, 0xA2 - lsls r1, 1 - adds r0, r2, r1 - ldr r0, [r0] - ldr r1, [r2, 0x14] - adds r0, r1 - str r0, [r3] - movs r1, 0xA4 - lsls r1, 1 - adds r0, r2, r1 - ldr r0, [r0] - ldr r1, [r2, 0x18] - adds r0, r1 -_080A901E: - str r0, [r3, 0x4] - movs r1, 0x2 - ldrsh r0, [r2, r1] - pop {r1} - bx r1 - thumb_func_end sub_80A8FD8 - - thumb_func_start sub_80A9028 -sub_80A9028: - push {r4,lr} - lsls r0, 16 - asrs r0, 16 - ldr r3, _080A904C - lsls r2, r0, 5 - subs r2, r0 - lsls r2, 4 - ldr r4, [r3] - adds r4, r2 - adds r0, r4, 0 - bl sub_80A9F20 - movs r1, 0x2 - ldrsh r0, [r4, r1] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080A904C: .4byte gUnknown_3001B84 - thumb_func_end sub_80A9028 - - thumb_func_start sub_80A9050 -sub_80A9050: - push {r4,lr} - adds r4, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A9078 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - adds r3, r0, 0 - cmp r1, r0 - bne _080A907C - strb r3, [r4] - b _080A9086 - .align 2, 0 -_080A9078: .4byte gUnknown_3001B84 -_080A907C: - movs r1, 0xA1 - lsls r1, 1 - adds r0, r2, r1 - ldrb r0, [r0] - strb r0, [r4] -_080A9086: - movs r1, 0x2 - ldrsh r0, [r2, r1] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80A9050 - - thumb_func_start sub_80A9090 -sub_80A9090: - push {lr} - lsls r0, 16 - asrs r0, 16 - lsls r1, 24 - asrs r3, r1, 24 - ldr r2, _080A90C4 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A90BA - movs r1, 0xA1 - lsls r1, 1 - adds r0, r2, r1 - strb r3, [r0] -_080A90BA: - movs r1, 0x2 - ldrsh r0, [r2, r1] - pop {r1} - bx r1 - .align 2, 0 -_080A90C4: .4byte gUnknown_3001B84 - thumb_func_end sub_80A9090 - - thumb_func_start sub_80A90C8 -sub_80A90C8: - lsls r0, 16 - asrs r0, 16 - ldr r2, _080A90E4 - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r0, r1 - movs r1, 0xA0 - lsls r1, 1 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080A90E4: .4byte gUnknown_3001B84 - thumb_func_end sub_80A90C8 - - thumb_func_start sub_80A90E8 -sub_80A90E8: - push {r4,r5,lr} - sub sp, 0x10 - lsls r0, 16 - asrs r2, r0, 16 - lsls r1, 16 - asrs r3, r1, 16 - cmp r2, r3 - beq _080A9196 - ldr r1, _080A916C - lsls r0, r2, 5 - subs r0, r2 - lsls r0, 4 - ldr r1, [r1] - adds r5, r1, r0 - lsls r0, r3, 5 - subs r0, r3 - lsls r0, 4 - adds r4, r1, r0 - movs r1, 0x2 - ldrsh r0, [r5, r1] - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080A9196 - movs r2, 0x2 - ldrsh r0, [r4, r2] - cmp r0, r1 - beq _080A9196 - movs r3, 0xA2 - lsls r3, 1 - adds r0, r5, r3 - ldr r0, [r0] - ldr r1, [r5, 0x14] - adds r0, r1 - str r0, [sp] - movs r2, 0xA4 - lsls r2, 1 - adds r0, r5, r2 - ldr r0, [r0] - ldr r1, [r5, 0x18] - adds r0, r1 - str r0, [sp, 0x4] - adds r3, r4, r3 - ldr r0, [r3] - ldr r1, [r4, 0x14] - adds r0, r1 - str r0, [sp, 0x8] - adds r2, r4, r2 - ldr r0, [r2] - ldr r1, [r4, 0x18] - adds r0, r1 - add r2, sp, 0x8 - str r0, [r2, 0x4] - movs r1, 0x2 - ldrsh r0, [r5, r1] - cmp r0, 0x24 - bgt _080A9170 - adds r1, r5, 0 - adds r1, 0xC - adds r3, r4, 0 - adds r3, 0xC - mov r0, sp - bl sub_8002DF0 - b _080A917E - .align 2, 0 -_080A916C: .4byte gUnknown_3001B84 -_080A9170: - adds r1, r5, 0 - adds r1, 0xC - adds r3, r4, 0 - adds r3, 0xC - mov r0, sp - bl sub_8002D54 -_080A917E: - lsls r0, 24 - asrs r1, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080A9196 - movs r2, 0xA1 - lsls r2, 1 - adds r0, r5, r2 - strb r1, [r0] - movs r0, 0x1 - b _080A9198 -_080A9196: - movs r0, 0 -_080A9198: - add sp, 0x10 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80A90E8 - - thumb_func_start sub_80A91A0 -sub_80A91A0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - lsls r0, 16 - asrs r2, r0, 16 - lsls r1, 16 - asrs r4, r1, 16 - cmp r2, r4 - beq _080A928E - ldr r1, _080A9260 - lsls r0, r2, 5 - subs r0, r2 - lsls r0, 4 - ldr r1, [r1] - adds r7, r1, r0 - lsls r0, r4, 5 - subs r0, r4 - lsls r0, 4 - adds r1, r0 - mov r8, r1 - movs r1, 0x2 - ldrsh r0, [r7, r1] - movs r2, 0x1 - negs r2, r2 - mov r10, r2 - cmp r0, r10 - beq _080A928E - mov r3, r8 - movs r1, 0x2 - ldrsh r0, [r3, r1] - cmp r0, r10 - beq _080A928E - movs r3, 0xA2 - lsls r3, 1 - adds r0, r7, r3 - ldr r0, [r0] - ldr r1, [r7, 0x14] - adds r0, r1 - str r0, [sp] - movs r2, 0xA4 - lsls r2, 1 - adds r0, r7, r2 - ldr r0, [r0] - ldr r1, [r7, 0x18] - adds r0, r1 - str r0, [sp, 0x4] - add r3, r8 - ldr r0, [r3] - mov r3, r8 - ldr r1, [r3, 0x14] - adds r0, r1 - str r0, [sp, 0x8] - add r2, r8 - ldr r0, [r2] - ldr r1, [r3, 0x18] - adds r0, r1 - add r4, sp, 0x8 - str r0, [r4, 0x4] - adds r5, r7, 0 - adds r5, 0xC - mov r6, r8 - adds r6, 0xC - mov r0, sp - adds r1, r5, 0 - adds r2, r4, 0 - adds r3, r6, 0 - bl sub_8002DF0 - lsls r0, 24 - asrs r0, 24 - mov r9, r0 - mov r0, sp - adds r1, r5, 0 - adds r2, r4, 0 - adds r3, r6, 0 - bl sub_8002D54 - lsls r0, 24 - asrs r1, r0, 24 - cmp r9, r10 - beq _080A928E - cmp r1, r10 - beq _080A928E - movs r2, 0x2 - ldrsh r0, [r7, r2] - cmp r0, 0x24 - bgt _080A9264 - movs r3, 0xA1 - lsls r3, 1 - adds r0, r7, r3 - mov r2, r9 - strb r2, [r0] - b _080A926C - .align 2, 0 -_080A9260: .4byte gUnknown_3001B84 -_080A9264: - movs r3, 0xA1 - lsls r3, 1 - adds r0, r7, r3 - strb r1, [r0] -_080A926C: - mov r2, r8 - movs r3, 0x2 - ldrsh r0, [r2, r3] - cmp r0, 0x25 - bgt _080A927A - mov r0, r9 - b _080A927C -_080A927A: - adds r0, r1, 0 -_080A927C: - movs r1, 0x5 - bl sub_8002984 - movs r1, 0xA1 - lsls r1, 1 - add r1, r8 - strb r0, [r1] - movs r0, 0x1 - b _080A9290 -_080A928E: - movs r0, 0 -_080A9290: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A91A0 - - thumb_func_start sub_80A92A0 -sub_80A92A0: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r9, r1 - adds r4, r2, 0 - lsls r0, 16 - asrs r6, r0, 16 - ldr r0, _080A931C - ldr r0, [r0] - mov r12, r0 - movs r2, 0 - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r5, 0x80 - lsls r5, 9 -_080A92C2: - cmp r2, r6 - beq _080A9320 - mov r1, r12 - movs r7, 0x2 - ldrsh r0, [r1, r7] - cmp r0, r8 - beq _080A9320 - movs r0, 0x8E - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - mov r1, r9 - ands r0, r1 - cmp r0, 0 - beq _080A9320 - movs r0, 0xA2 - lsls r0, 1 - add r0, r12 - ldr r1, [r0] - ldr r0, [r3] - cmp r1, r0 - bge _080A9320 - movs r0, 0xA6 - lsls r0, 1 - add r0, r12 - ldr r1, [r0] - ldr r0, [r4] - cmp r1, r0 - ble _080A9320 - movs r0, 0xA4 - lsls r0, 1 - add r0, r12 - ldr r1, [r0] - ldr r0, [r3, 0x4] - cmp r1, r0 - bge _080A9320 - movs r0, 0xA8 - lsls r0, 1 - add r0, r12 - ldr r1, [r0] - ldr r0, [r4, 0x4] - cmp r1, r0 - ble _080A9320 - adds r0, r2, 0 - b _080A9338 - .align 2, 0 -_080A931C: .4byte gUnknown_3001B84 -_080A9320: - adds r0, r5, 0 - movs r7, 0x80 - lsls r7, 9 - adds r5, r7 - asrs r2, r0, 16 - movs r0, 0xF8 - lsls r0, 1 - add r12, r0 - cmp r2, 0x17 - ble _080A92C2 - movs r0, 0x1 - negs r0, r0 -_080A9338: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A92A0 - - thumb_func_start sub_80A9344 -sub_80A9344: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r9, r1 - str r2, [sp] - adds r5, r3, 0 - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - ldr r0, _080A93C4 - ldr r0, [r0] - mov r12, r0 - movs r4, 0 - movs r0, 0x1 - negs r0, r0 - mov r10, r0 - movs r7, 0x80 - lsls r7, 9 -_080A936E: - cmp r4, r8 - beq _080A93C8 - mov r1, r12 - movs r2, 0x2 - ldrsh r0, [r1, r2] - cmp r0, r10 - beq _080A93C8 - movs r0, 0x8E - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - mov r6, r9 - ands r0, r6 - cmp r0, 0 - beq _080A93C8 - movs r0, 0xA2 - lsls r0, 1 - add r0, r12 - ldr r1, [r0] - mov r6, r12 - ldr r0, [r6, 0x14] - adds r2, r1, r0 - movs r0, 0xA4 - lsls r0, 1 - add r0, r12 - ldr r1, [r0] - ldr r0, [r6, 0x18] - adds r3, r1, r0 - ldr r0, [r5] - cmp r2, r0 - bge _080A93C8 - ldr r1, [sp] - ldr r0, [r1] - cmp r2, r0 - ble _080A93C8 - ldr r0, [r5, 0x4] - cmp r3, r0 - bge _080A93C8 - ldr r0, [r1, 0x4] - cmp r3, r0 - ble _080A93C8 - adds r0, r4, 0 - b _080A93E0 - .align 2, 0 -_080A93C4: .4byte gUnknown_3001B84 -_080A93C8: - adds r0, r7, 0 - movs r2, 0x80 - lsls r2, 9 - adds r7, r2 - asrs r4, r0, 16 - movs r6, 0xF8 - lsls r6, 1 - add r12, r6 - cmp r4, 0x17 - ble _080A936E - movs r0, 0x1 - negs r0, r0 -_080A93E0: - 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_80A9344 - - thumb_func_start sub_80A93F0 -sub_80A93F0: - push {r4-r7,lr} - sub sp, 0x10 - lsls r0, 16 - asrs r0, 16 - lsls r1, 24 - lsrs r6, r1, 24 - ldr r2, _080A947C - lsls r1, r0, 5 - subs r1, r0 - lsls r1, 4 - ldr r0, [r2] - adds r0, r1 - mov r12, r0 - movs r0, 0xA2 - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - cmp r0, 0 - bge _080A941A - ldr r1, _080A9480 - adds r0, r1 -_080A941A: - asrs r5, r0, 11 - str r5, [sp] - movs r0, 0xA4 - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - cmp r0, 0 - bge _080A942E - ldr r7, _080A9480 - adds r0, r7 -_080A942E: - asrs r4, r0, 11 - str r4, [sp, 0x4] - movs r0, 0xA6 - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - subs r1, r0, 0x1 - cmp r1, 0 - bge _080A9444 - ldr r7, _080A9484 - adds r1, r0, r7 -_080A9444: - asrs r2, r1, 11 - movs r0, 0xA8 - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - subs r1, r0, 0x1 - cmp r1, 0 - bge _080A9458 - ldr r7, _080A9484 - adds r1, r0, r7 -_080A9458: - asrs r3, r1, 11 - subs r0, r2, r5 - adds r0, 0x1 - str r0, [sp, 0x8] - subs r0, r3, r4 - adds r0, 0x1 - add r2, sp, 0x8 - str r0, [r2, 0x4] - adds r0, r6, 0 - mov r1, sp - bl sub_80A5934 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x10 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080A947C: .4byte gUnknown_3001B84 -_080A9480: .4byte 0x000007ff -_080A9484: .4byte 0x000007fe - thumb_func_end sub_80A93F0 - - thumb_func_start sub_80A9488 -sub_80A9488: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - adds r5, r0, 0 - adds r7, r1, 0 - mov r8, r2 - ldr r0, [r7] - cmp r0, 0 - bge _080A94A0 - ldr r1, _080A9528 - adds r0, r1 -_080A94A0: - asrs r0, 11 - mov r12, r0 - str r0, [sp] - ldr r0, [r7, 0x4] - cmp r0, 0 - bge _080A94B0 - ldr r3, _080A9528 - adds r0, r3 -_080A94B0: - asrs r4, r0, 11 - str r4, [sp, 0x4] - mov r6, r8 - ldr r3, [r6] - subs r0, r3, 0x1 - cmp r0, 0 - bge _080A94C2 - ldr r6, _080A952C - adds r0, r3, r6 -_080A94C2: - asrs r1, r0, 11 - mov r0, r8 - ldr r3, [r0, 0x4] - subs r0, r3, 0x1 - cmp r0, 0 - bge _080A94D2 - ldr r6, _080A952C - adds r0, r3, r6 -_080A94D2: - asrs r2, r0, 11 - mov r3, r12 - subs r0, r1, r3 - adds r0, 0x1 - str r0, [sp, 0x8] - subs r0, r2, r4 - adds r0, 0x1 - add r2, sp, 0x8 - str r0, [r2, 0x4] - movs r6, 0x8E - lsls r6, 1 - adds r0, r5, r6 - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - adds r4, r2, 0 - cmp r0, 0 - beq _080A9504 - mov r0, sp - adds r1, r4, 0 - bl sub_80A585C - lsls r0, 24 - cmp r0, 0 - bne _080A9522 -_080A9504: - movs r1, 0x8E - lsls r1, 1 - adds r0, r5, r1 - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080A9530 - mov r0, sp - adds r1, r4, 0 - bl sub_80A58C8 - lsls r0, 24 - cmp r0, 0 - beq _080A9530 -_080A9522: - movs r0, 0x1 - b _080A95A0 - .align 2, 0 -_080A9528: .4byte 0x000007ff -_080A952C: .4byte 0x000007fe -_080A9530: - movs r3, 0x8E - lsls r3, 1 - adds r0, r5, r3 - ldr r0, [r0] - movs r1, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080A9556 - movs r6, 0 - ldrsh r0, [r5, r6] - adds r2, r7, 0 - mov r3, r8 - bl sub_80A92A0 - lsls r0, 16 - cmp r0, 0 - blt _080A9556 - movs r0, 0x4 - b _080A95A0 -_080A9556: - movs r1, 0x8E - lsls r1, 1 - adds r0, r5, r1 - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080A957A - movs r0, 0x4 - adds r1, r7, 0 - mov r2, r8 - bl sub_80AC4C8 - lsls r0, 16 - cmp r0, 0 - blt _080A957A - movs r0, 0x8 - b _080A95A0 -_080A957A: - movs r3, 0x8E - lsls r3, 1 - adds r0, r5, r3 - ldr r0, [r0] - movs r1, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080A959E - movs r0, 0x40 - adds r1, r7, 0 - mov r2, r8 - bl sub_80ADCA0 - lsls r0, 16 - cmp r0, 0 - blt _080A959E - movs r0, 0x10 - b _080A95A0 -_080A959E: - movs r0, 0 -_080A95A0: - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A9488 - - thumb_func_start sub_80A95AC -sub_80A95AC: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x14 - adds r5, r0, 0 - adds r7, r1, 0 - mov r8, r2 - ldr r0, [r7] - cmp r0, 0 - bge _080A95C6 - ldr r1, _080A96BC - adds r0, r1 -_080A95C6: - asrs r0, 11 - mov r9, r0 - str r0, [sp] - ldr r0, [r7, 0x4] - cmp r0, 0 - bge _080A95D6 - ldr r2, _080A96BC - adds r0, r2 -_080A95D6: - asrs r4, r0, 11 - str r4, [sp, 0x4] - mov r6, r8 - ldr r3, [r6] - subs r0, r3, 0x1 - cmp r0, 0 - bge _080A95E8 - ldr r6, _080A96C0 - adds r0, r3, r6 -_080A95E8: - asrs r1, r0, 11 - mov r0, r8 - ldr r3, [r0, 0x4] - subs r0, r3, 0x1 - cmp r0, 0 - bge _080A95F8 - ldr r6, _080A96C0 - adds r0, r3, r6 -_080A95F8: - asrs r2, r0, 11 - mov r3, r9 - subs r0, r1, r3 - adds r0, 0x1 - str r0, [sp, 0x8] - subs r0, r2, r4 - adds r0, 0x1 - add r2, sp, 0x8 - str r0, [r2, 0x4] - movs r6, 0x8E - lsls r6, 1 - adds r0, r5, r6 - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - adds r4, r2, 0 - cmp r0, 0 - beq _080A962C - mov r0, sp - adds r1, r4, 0 - bl sub_80A585C - lsls r0, 24 - cmp r0, 0 - beq _080A962C - b _080A973C -_080A962C: - movs r1, 0x8E - lsls r1, 1 - adds r0, r5, r1 - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080A964A - mov r0, sp - adds r1, r4, 0 - bl sub_80A58C8 - lsls r0, 24 - cmp r0, 0 - bne _080A973C -_080A964A: - movs r4, 0x8E - lsls r4, 1 - adds r0, r5, r4 - ldr r0, [r0] - movs r1, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080A96C8 - movs r2, 0 - ldrsh r0, [r5, r2] - movs r1, 0x44 - adds r2, r7, 0 - mov r3, r8 - bl sub_80A92A0 - lsls r0, 16 - asrs r2, r0, 16 - mov r9, r2 - cmp r2, 0 - blt _080A96C8 - ldr r1, _080A96C4 - lsls r0, r2, 5 - subs r0, r2 - lsls r0, 4 - ldr r1, [r1] - adds r6, r1, r0 - adds r0, r6, r4 - ldr r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080A973C - movs r0, 0x80 - lsls r0, 2 - ands r1, r0 - cmp r1, 0 - beq _080A96A8 - adds r4, 0x26 - adds r0, r5, r4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x5 - bl sub_8002984 - adds r4, r6, r4 - strb r0, [r4] -_080A96A8: - movs r3, 0 - ldrsh r0, [r5, r3] - mov r1, r9 - bl GroundLives_ExecutePlayerScriptActionLives -_080A96B2: - lsls r0, 24 - cmp r0, 0 - bne _080A9738 - b _080A973C - .align 2, 0 -_080A96BC: .4byte 0x000007ff -_080A96C0: .4byte 0x000007fe -_080A96C4: .4byte gUnknown_3001B84 -_080A96C8: - movs r6, 0x8E - lsls r6, 1 - adds r0, r5, r6 - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080A9708 - movs r0, 0x44 - adds r1, r7, 0 - mov r2, r8 - bl sub_80AC4C8 - lsls r0, 16 - asrs r4, r0, 16 - cmp r4, 0 - blt _080A9708 - add r1, sp, 0x10 - adds r0, r4, 0 - bl sub_80AC3E0 - ldr r0, [sp, 0x10] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080A973C - movs r1, 0 - ldrsh r0, [r5, r1] - adds r1, r4, 0 - bl sub_80A8A5C - b _080A96B2 -_080A9708: - movs r2, 0x8E - lsls r2, 1 - adds r0, r5, r2 - ldr r0, [r0] - movs r1, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080A9740 - movs r0, 0x40 - adds r1, r7, 0 - mov r2, r8 - bl sub_80ADCA0 - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - blt _080A9740 - movs r3, 0 - ldrsh r0, [r5, r3] - bl sub_80A8ACC - lsls r0, 24 - cmp r0, 0 - beq _080A973C -_080A9738: - movs r0, 0x2 - b _080A9742 -_080A973C: - movs r0, 0x1 - b _080A9742 -_080A9740: - movs r0, 0 -_080A9742: - add sp, 0x14 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80A95AC - - thumb_func_start sub_80A9750 -sub_80A9750: - push {r4,lr} - mov r12, r0 - lsls r1, 16 - lsrs r1, 16 - adds r4, r1, 0 - movs r3, 0xFF - ands r3, r1 - movs r2, 0xF0 - lsls r2, 4 - ands r2, r1 - cmp r3, 0 - beq _080A9770 - movs r0, 0xB0 - lsls r0, 1 - add r0, r12 - strh r3, [r0] -_080A9770: - cmp r2, 0 - beq _080A977C - movs r0, 0xAF - lsls r0, 1 - add r0, r12 - strh r2, [r0] -_080A977C: - movs r2, 0xB0 - lsls r2, 1 - add r2, r12 - ldrh r0, [r2] - cmp r0, 0x1 - bne _080A97A8 - movs r0, 0x80 - lsls r0, 5 - cmp r1, r0 - beq _080A97B6 - movs r0, 0xB2 - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - ldr r2, _080A97A4 - cmp r0, 0 - bgt _080A97A0 - b _080A9E98 -_080A97A0: - b _080A97C0 - .align 2, 0 -_080A97A4: .4byte 0x00000807 -_080A97A8: - cmp r0, 0x2 - beq _080A97AE - b _080A9E8C -_080A97AE: - movs r0, 0x80 - lsls r0, 5 - cmp r4, r0 - bne _080A97C6 -_080A97B6: - movs r1, 0xB2 - lsls r1, 1 - add r1, r12 - movs r0, 0x4 - str r0, [r1] -_080A97C0: - movs r2, 0x80 - lsls r2, 4 - b _080A9E98 -_080A97C6: - movs r0, 0xB2 - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - cmp r0, 0 - bgt _080A97C0 - mov r1, r12 - ldrh r0, [r1, 0x8] - subs r0, 0xC - lsls r0, 16 - asrs r1, r0, 16 - ldr r0, _080A97F0 - cmp r1, r0 - bls _080A97E4 - b _080A9E7E -_080A97E4: - lsls r0, r1, 2 - ldr r1, _080A97F4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080A97F0: .4byte 0x00000197 -_080A97F4: .4byte _080A97F8 - .align 2, 0 -_080A97F8: - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E60 - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E60 - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E68 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E60 - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E60 - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E60 - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E60 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E60 - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E60 - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E60 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E60 - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E60 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E60 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E7E - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 - .4byte _080A9E58 -_080A9E58: - ldr r2, _080A9E5C - b _080A9E98 - .align 2, 0 -_080A9E5C: .4byte 0x00000807 -_080A9E60: - ldr r2, _080A9E64 - b _080A9E98 - .align 2, 0 -_080A9E64: .4byte 0x00000307 -_080A9E68: - movs r0, 0xB4 - lsls r0, 1 - add r0, r12 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r2, _080A9E84 - cmp r1, r2 - beq _080A9E98 - ldr r0, _080A9E88 - cmp r1, r0 - beq _080A9E98 -_080A9E7E: - movs r2, 0xC0 - lsls r2, 2 - b _080A9E98 - .align 2, 0 -_080A9E84: .4byte 0x00000807 -_080A9E88: .4byte 0x00000307 -_080A9E8C: - ldr r1, _080A9EC4 - ldrh r0, [r2] - lsls r0, 1 - adds r0, r1 - movs r4, 0 - ldrsh r2, [r0, r4] -_080A9E98: - movs r0, 0xE0 - lsls r0, 3 - ands r0, r2 - cmp r0, 0 - bne _080A9EEE - movs r0, 0xAF - lsls r0, 1 - add r0, r12 - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 2 - cmp r1, r0 - beq _080A9EEE - cmp r1, r0 - bgt _080A9EC8 - movs r3, 0x80 - lsls r3, 1 - cmp r1, r3 - beq _080A9EDA - movs r0, 0x80 - lsls r0, 2 - b _080A9ED4 - .align 2, 0 -_080A9EC4: .4byte gUnknown_8117F64 -_080A9EC8: - movs r3, 0x80 - lsls r3, 3 - cmp r1, r3 - beq _080A9EDE - movs r0, 0x80 - lsls r0, 4 -_080A9ED4: - cmp r1, r0 - beq _080A9EEC - b _080A9EEE -_080A9EDA: - orrs r2, r0 - b _080A9EEE -_080A9EDE: - movs r1, 0x80 - lsls r1, 2 - adds r0, r1, 0 - orrs r2, r0 - lsls r0, r2, 16 - asrs r2, r0, 16 - b _080A9EEE -_080A9EEC: - orrs r2, r3 -_080A9EEE: - movs r1, 0xB4 - lsls r1, 1 - add r1, r12 - ldrh r3, [r1] - movs r4, 0 - ldrsh r0, [r1, r4] - cmp r0, r2 - beq _080A9F02 - strh r2, [r1] - b _080A9F0C -_080A9F02: - movs r0, 0x80 - lsls r0, 5 - ands r0, r3 - cmp r0, 0 - beq _080A9F16 -_080A9F0C: - movs r1, 0xAE - lsls r1, 1 - add r1, r12 - movs r0, 0x1 - strb r0, [r1] -_080A9F16: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80A9750 - - thumb_func_start sub_80A9F20 -sub_80A9F20: - push {r4,r5,lr} - sub sp, 0x10 - adds r5, r0, 0 - ldr r2, [r1] - ldr r4, [r5, 0x14] - subs r0, r2, r4 - str r0, [sp] - ldr r3, [r1, 0x4] - ldr r1, [r5, 0x18] - subs r0, r3, r1 - str r0, [sp, 0x4] - adds r2, r4 - str r2, [sp, 0x8] - adds r3, r1 - add r2, sp, 0x8 - str r3, [r2, 0x4] - ldr r1, [r5, 0x28] - ldr r0, [sp] - cmp r0, r1 - blt _080A9F5E - ldr r1, [r5, 0x30] - ldr r0, [sp, 0x8] - cmp r0, r1 - bge _080A9F5E - ldr r1, [r5, 0x2C] - ldr r0, [sp, 0x4] - cmp r0, r1 - blt _080A9F5E - ldr r0, [r5, 0x34] - cmp r3, r0 - blt _080A9F62 -_080A9F5E: - movs r0, 0x1 - b _080A9F8C -_080A9F62: - adds r0, r5, 0 - mov r1, sp - bl sub_80A9488 - cmp r0, 0 - bne _080A9F8C - movs r0, 0xA2 - lsls r0, 1 - adds r2, r5, r0 - ldr r0, [sp] - ldr r1, [sp, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - movs r0, 0xA6 - lsls r0, 1 - adds r2, r5, r0 - ldr r0, [sp, 0x8] - ldr r1, [sp, 0xC] - str r0, [r2] - str r1, [r2, 0x4] - movs r0, 0 -_080A9F8C: - add sp, 0x10 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80A9F20 - - thumb_func_start sub_80A9F94 -sub_80A9F94: - push {r4-r6,lr} - sub sp, 0x10 - adds r4, r0, 0 - movs r2, 0xA2 - lsls r2, 1 - adds r0, r4, r2 - ldr r0, [r0] - ldr r2, [r1] - adds r0, r2 - str r0, [sp] - movs r3, 0xA4 - lsls r3, 1 - adds r0, r4, r3 - ldr r0, [r0] - ldr r1, [r1, 0x4] - adds r0, r1 - str r0, [sp, 0x4] - adds r3, 0x4 - adds r0, r4, r3 - ldr r0, [r0] - adds r0, r2 - str r0, [sp, 0x8] - movs r2, 0xA8 - lsls r2, 1 - adds r0, r4, r2 - ldr r0, [r0] - adds r0, r1 - add r1, sp, 0x8 - str r0, [r1, 0x4] - movs r6, 0 - ldr r3, [r4, 0x28] - ldr r0, [sp] - adds r2, r1, 0 - cmp r0, r3 - bge _080A9FE4 - str r3, [sp] - ldr r0, [r4, 0xC] - adds r0, r3, r0 - str r0, [sp, 0x8] - b _080A9FF4 -_080A9FE4: - ldr r1, [r4, 0x30] - ldr r0, [sp, 0x8] - cmp r0, r1 - blt _080A9FF6 - ldr r0, [r4, 0xC] - subs r0, r1, r0 - str r0, [sp] - str r1, [sp, 0x8] -_080A9FF4: - movs r6, 0x1 -_080A9FF6: - ldr r1, [r4, 0x2C] - ldr r0, [sp, 0x4] - cmp r0, r1 - bge _080AA008 - str r1, [sp, 0x4] - ldr r0, [r4, 0x10] - adds r0, r1, r0 - str r0, [r2, 0x4] - b _080AA018 -_080AA008: - ldr r1, [r4, 0x34] - ldr r0, [r2, 0x4] - cmp r0, r1 - blt _080AA01A - ldr r0, [r4, 0x10] - subs r0, r1, r0 - str r0, [sp, 0x4] - str r1, [r2, 0x4] -_080AA018: - movs r6, 0x1 -_080AA01A: - adds r0, r4, 0 - mov r1, sp - bl sub_80A9488 - adds r5, r0, 0 - cmp r5, 0 - beq _080AA034 - adds r0, r4, 0 - movs r1, 0 - bl sub_80AAF68 - adds r0, r5, 0 - b _080AA06A -_080AA034: - movs r3, 0xA2 - lsls r3, 1 - adds r2, r4, r3 - ldr r0, [sp] - ldr r1, [sp, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - movs r0, 0xA6 - lsls r0, 1 - adds r2, r4, r0 - ldr r0, [sp, 0x8] - ldr r1, [sp, 0xC] - str r0, [r2] - str r1, [r2, 0x4] - cmp r6, 0 - bne _080AA060 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80AAF68 - movs r0, 0 - b _080AA06A -_080AA060: - adds r0, r4, 0 - movs r1, 0 - bl sub_80AAF68 - movs r0, 0x1 -_080AA06A: - add sp, 0x10 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80A9F94 - - thumb_func_start sub_80AA074 -sub_80AA074: - push {r4-r7,lr} - sub sp, 0x10 - adds r4, r0, 0 - movs r2, 0xA2 - lsls r2, 1 - adds r0, r4, r2 - ldr r0, [r0] - ldr r2, [r1] - adds r0, r2 - str r0, [sp] - movs r3, 0xA4 - lsls r3, 1 - adds r0, r4, r3 - ldr r0, [r0] - ldr r1, [r1, 0x4] - adds r0, r1 - str r0, [sp, 0x4] - adds r3, 0x4 - adds r0, r4, r3 - ldr r0, [r0] - adds r0, r2 - str r0, [sp, 0x8] - movs r2, 0xA8 - lsls r2, 1 - adds r0, r4, r2 - ldr r0, [r0] - adds r0, r1 - add r1, sp, 0x8 - str r0, [r1, 0x4] - ldr r3, [r4, 0x28] - ldr r0, [sp] - adds r5, r1, 0 - cmp r0, r3 - bge _080AA0C2 - str r3, [sp] - ldr r0, [r4, 0xC] - adds r0, r3, r0 - str r0, [sp, 0x8] - b _080AA0D2 -_080AA0C2: - ldr r1, [r4, 0x30] - ldr r0, [sp, 0x8] - cmp r0, r1 - blt _080AA0D2 - ldr r0, [r4, 0xC] - subs r0, r1, r0 - str r0, [sp] - str r1, [sp, 0x8] -_080AA0D2: - ldr r1, [r4, 0x2C] - ldr r0, [sp, 0x4] - cmp r0, r1 - bge _080AA0E4 - str r1, [sp, 0x4] - ldr r0, [r4, 0x10] - adds r0, r1, r0 - str r0, [r5, 0x4] - b _080AA0F4 -_080AA0E4: - ldr r1, [r4, 0x34] - ldr r0, [r5, 0x4] - cmp r0, r1 - blt _080AA0F4 - ldr r0, [r4, 0x10] - subs r0, r1, r0 - str r0, [sp, 0x4] - str r1, [r5, 0x4] -_080AA0F4: - adds r0, r4, 0 - mov r1, sp - adds r2, r5, 0 - bl sub_80A95AC - adds r6, r0, 0 - cmp r6, 0 - bne _080AA170 - movs r3, 0xA2 - lsls r3, 1 - adds r2, r4, r3 - ldr r0, [sp] - ldr r1, [sp, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - movs r0, 0xA6 - lsls r0, 1 - adds r2, r4, r0 - ldr r0, [sp, 0x8] - ldr r1, [sp, 0xC] - str r0, [r2] - str r1, [r2, 0x4] - movs r1, 0x8E - lsls r1, 1 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080AA170 - movs r0, 0x20 - mov r1, sp - adds r2, r5, 0 - bl sub_80ADCA0 - lsls r0, 16 - asrs r5, r0, 16 - cmp r5, 0 - blt _080AA166 - movs r2, 0x9F - lsls r2, 1 - adds r7, r4, r2 - movs r3, 0 - ldrsh r0, [r7, r3] - cmp r0, r5 - beq _080AA170 - movs r1, 0 - ldrsh r0, [r4, r1] - adds r1, r5, 0 - bl sub_80A8ACC - lsls r0, 24 - cmp r0, 0 - beq _080AA170 - strh r5, [r7] - movs r6, 0x2 - b _080AA170 -_080AA166: - movs r2, 0x9F - lsls r2, 1 - adds r1, r4, r2 - ldr r0, _080AA17C - strh r0, [r1] -_080AA170: - adds r0, r6, 0 - add sp, 0x10 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AA17C: .4byte 0x0000ffff - thumb_func_end sub_80AA074 - - thumb_func_start sub_80AA180 -sub_80AA180: - push {r4-r7,lr} - sub sp, 0x10 - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - adds r7, r3, 0 - movs r0, 0x4 - ands r0, r5 - cmp r0, 0 - beq _080AA220 - movs r1, 0 - ldrsh r0, [r4, r1] - movs r1, 0x80 - bl sub_80A9344 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - blt _080AA220 - mov r1, sp - bl sub_80A8FD8 - movs r2, 0xA2 - lsls r2, 1 - adds r0, r4, r2 - ldr r1, [r0] - ldr r0, [r4, 0x14] - adds r1, r0 - ldr r0, [sp] - subs r0, r1 - str r0, [sp, 0x8] - movs r3, 0xA4 - lsls r3, 1 - adds r0, r4, r3 - ldr r0, [r0] - ldr r1, [r4, 0x18] - adds r0, r1 - ldr r1, [sp, 0x4] - subs r1, r0 - add r0, sp, 0x8 - str r1, [r0, 0x4] - bl sub_8002C60 - lsls r0, 24 - asrs r1, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080AA2B2 - movs r0, 0xA1 - lsls r0, 1 - adds r2, r4, r0 - lsls r0, r1, 24 - lsrs r0, 24 - strb r0, [r2] - ldr r3, _080AA21C - adds r1, r4, r3 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - lsls r0, 24 - asrs r0, 24 - cmp r1, r0 - beq _080AA20A - movs r0, 0xAE - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0x1 - strb r0, [r1] -_080AA20A: - movs r1, 0 - ldrsb r1, [r2, r1] - adds r0, r4, 0 - bl sub_80AA3F8 - lsls r0, 24 - cmp r0, 0 - bne _080AA2AE - b _080AA2B2 - .align 2, 0 -_080AA21C: .4byte 0x0000015d -_080AA220: - movs r0, 0x8 - ands r0, r5 - cmp r0, 0 - beq _080AA2B2 - movs r0, 0x80 - adds r1, r6, 0 - adds r2, r7, 0 - bl sub_80AC554 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - blt _080AA2B2 - mov r1, sp - bl sub_80AC448 - movs r1, 0xA2 - lsls r1, 1 - adds r0, r4, r1 - ldr r1, [r0] - ldr r0, [r4, 0x14] - adds r1, r0 - ldr r0, [sp] - subs r0, r1 - str r0, [sp, 0x8] - add r0, sp, 0x8 - movs r2, 0xA4 - lsls r2, 1 - adds r1, r4, r2 - ldr r2, [r1] - ldr r1, [r4, 0x18] - adds r2, r1 - ldr r1, [sp, 0x4] - subs r1, r2 - str r1, [r0, 0x4] - bl sub_8002C60 - lsls r0, 24 - asrs r1, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080AA2B2 - movs r3, 0xA1 - lsls r3, 1 - adds r2, r4, r3 - lsls r0, r1, 24 - lsrs r0, 24 - strb r0, [r2] - adds r3, 0x1B - adds r1, r4, r3 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - lsls r0, 24 - asrs r0, 24 - cmp r1, r0 - beq _080AA29E - movs r0, 0xAE - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0x1 - strb r0, [r1] -_080AA29E: - movs r1, 0 - ldrsb r1, [r2, r1] - adds r0, r4, 0 - bl sub_80AA3F8 - lsls r0, 24 - cmp r0, 0 - beq _080AA2B2 -_080AA2AE: - movs r0, 0x3 - b _080AA2B4 -_080AA2B2: - movs r0, 0 -_080AA2B4: - add sp, 0x10 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80AA180 - - thumb_func_start sub_80AA2BC -sub_80AA2BC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - adds r7, r0, 0 - mov r8, r1 - ldr r0, [r2] - ldr r1, [r2, 0x4] - str r0, [sp] - str r1, [sp, 0x4] - ldr r0, [r3] - ldr r1, [r3, 0x4] - str r0, [sp, 0x10] - str r1, [sp, 0x14] - ldr r0, [sp] - cmp r0, 0 - bge _080AA2E6 - ldr r1, _080AA3C4 - adds r0, r1 -_080AA2E6: - asrs r0, 11 - str r0, [sp, 0x8] - ldr r0, [sp, 0x4] - cmp r0, 0 - bge _080AA2F4 - ldr r2, _080AA3C4 - adds r0, r2 -_080AA2F4: - asrs r0, 11 - add r1, sp, 0x8 - str r0, [r1, 0x4] - ldr r4, [sp, 0x10] - subs r0, r4, 0x1 - mov r10, r1 - cmp r0, 0 - bge _080AA308 - ldr r1, _080AA3C8 - adds r0, r4, r1 -_080AA308: - asrs r2, r0, 11 - add r0, sp, 0x10 - ldr r4, [r0, 0x4] - subs r1, r4, 0x1 - mov r9, r0 - cmp r1, 0 - bge _080AA31A - ldr r0, _080AA3C8 - adds r1, r4, r0 -_080AA31A: - asrs r3, r1, 11 - ldr r0, [sp, 0x8] - subs r0, r2, r0 - adds r0, 0x1 - str r0, [sp, 0x18] - mov r1, r10 - ldr r0, [r1, 0x4] - subs r0, r3, r0 - adds r0, 0x1 - add r1, sp, 0x18 - str r0, [r1, 0x4] - movs r0, 0x4 - mov r2, r8 - ands r0, r2 - cmp r0, 0 - beq _080AA394 - movs r1, 0 - ldrsh r0, [r7, r1] - movs r1, 0x80 - mov r2, sp - mov r3, r9 - bl sub_80A92A0 - lsls r0, 16 - asrs r5, r0, 16 - cmp r5, 0 - blt _080AA394 - ldr r1, _080AA3CC - lsls r0, r5, 5 - subs r0, r5 - lsls r0, 4 - ldr r1, [r1] - adds r6, r1, r0 - movs r2, 0x8E - lsls r2, 1 - adds r0, r6, r2 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 2 - ands r0, r1 - cmp r0, 0 - beq _080AA384 - movs r4, 0xA1 - lsls r4, 1 - adds r0, r7, r4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x5 - bl sub_8002984 - adds r4, r6, r4 - strb r0, [r4] -_080AA384: - movs r1, 0 - ldrsh r0, [r7, r1] - adds r1, r5, 0 - bl GroundLives_ExecutePlayerScriptActionLives - lsls r0, 24 - cmp r0, 0 - bne _080AA3BE -_080AA394: - movs r0, 0x8 - mov r2, r8 - ands r0, r2 - cmp r0, 0 - beq _080AA3D0 - movs r0, 0x80 - mov r1, sp - mov r2, r9 - bl sub_80AC4C8 - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - blt _080AA3D0 - movs r2, 0 - ldrsh r0, [r7, r2] - bl sub_80A8A5C - lsls r0, 24 - cmp r0, 0 - beq _080AA3D0 -_080AA3BE: - movs r0, 0x3 - b _080AA3E6 - .align 2, 0 -_080AA3C4: .4byte 0x000007ff -_080AA3C8: .4byte 0x000007fe -_080AA3CC: .4byte gUnknown_3001B84 -_080AA3D0: - movs r0, 0x10 - mov r1, r10 - add r2, sp, 0x18 - bl sub_80A595C - lsls r0, 24 - cmp r0, 0 - bne _080AA3E4 - movs r0, 0 - b _080AA3E6 -_080AA3E4: - movs r0, 0x6 -_080AA3E6: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80AA2BC - - thumb_func_start sub_80AA3F8 -sub_80AA3F8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x40 - adds r6, r0, 0 - lsls r1, 24 - asrs r1, 24 - str r1, [sp, 0x28] - movs r2, 0x80 - lsls r2, 1 - mov r0, sp - bl sub_8002BB8 - ldr r4, [sp] - ldr r5, [sp, 0x4] - movs r0, 0xA2 - lsls r0, 1 - adds r0, r6 - mov r9, r0 - ldr r0, [r0] - adds r0, r4 - str r0, [sp, 0x8] - movs r1, 0xA4 - lsls r1, 1 - adds r1, r6 - mov r10, r1 - ldr r0, [r1] - adds r0, r5 - add r2, sp, 0x8 - str r0, [r2, 0x4] - movs r1, 0xA6 - lsls r1, 1 - adds r0, r6, r1 - ldr r0, [r0] - adds r0, r4 - str r0, [sp, 0x10] - adds r1, 0x4 - adds r0, r6, r1 - ldr r0, [r0] - adds r0, r5 - add r3, sp, 0x10 - str r0, [r3, 0x4] - adds r0, r6, 0 - movs r1, 0xC - bl sub_80AA2BC - adds r7, r0, 0 - cmp r7, 0x3 - bne _080AA462 -_080AA45E: - movs r0, 0x1 - b _080AA650 -_080AA462: - ldr r0, [r6, 0xC] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - movs r2, 0x80 - lsls r2, 2 - mov r8, r2 - add r0, r8 - muls r0, r4 - cmp r0, 0 - bge _080AA47A - adds r0, 0xFF -_080AA47A: - asrs r0, 8 - str r0, [sp, 0x2C] - ldr r0, [r6, 0x10] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - add r0, r8 - muls r0, r5 - cmp r0, 0 - bge _080AA490 - adds r0, 0xFF -_080AA490: - asrs r0, 8 - str r0, [sp, 0x30] - mov r1, r9 - ldr r0, [r1] - ldr r1, [r6, 0x14] - adds r0, r1 - ldr r2, [sp, 0x2C] - adds r0, r2 - ldr r2, _080AA4F4 - adds r0, r2 - str r0, [sp, 0x18] - mov r1, r10 - ldr r0, [r1] - ldr r1, [r6, 0x18] - adds r0, r1 - ldr r1, [sp, 0x30] - adds r0, r1 - adds r0, r2 - add r2, sp, 0x18 - str r0, [r2, 0x4] - movs r1, 0xC0 - lsls r1, 3 - ldr r0, [sp, 0x18] - adds r0, r1 - str r0, [sp, 0x20] - ldr r0, [r2, 0x4] - adds r0, r1 - add r3, sp, 0x20 - str r0, [r3, 0x4] - ldr r0, _080AA4F8 - mov r9, r0 - ldr r0, [sp, 0x28] - lsls r1, r0, 2 - add r9, r1 - mov r0, r9 - ldr r0, [r0] - str r0, [sp, 0x34] - ldr r0, _080AA4FC - adds r0, r1, r0 - ldr r0, [r0] - str r0, [sp, 0x38] - ldr r0, _080AA500 - adds r1, r0 - ldr r1, [r1] - str r1, [sp, 0x3C] - mov r10, r8 - mov r9, r2 - mov r8, r3 - b _080AA568 - .align 2, 0 -_080AA4F4: .4byte 0xfffffd00 -_080AA4F8: .4byte gUnknown_8117FF0 -_080AA4FC: .4byte gUnknown_8118010 -_080AA500: .4byte gUnknown_8118030 -_080AA504: - ldr r1, [r6, 0x28] - ldr r0, [sp, 0x18] - cmp r0, r1 - bge _080AA50E - b _080AA64E -_080AA50E: - ldr r1, [r6, 0x30] - ldr r0, [sp, 0x20] - cmp r0, r1 - blt _080AA518 - b _080AA64E -_080AA518: - ldr r1, [r6, 0x2C] - mov r2, r9 - ldr r0, [r2, 0x4] - cmp r0, r1 - bge _080AA524 - b _080AA64E -_080AA524: - ldr r1, [r6, 0x34] - mov r2, r8 - ldr r0, [r2, 0x4] - cmp r0, r1 - blt _080AA530 - b _080AA64E -_080AA530: - adds r0, r6, 0 - movs r1, 0xC - mov r2, r9 - mov r3, r8 - bl sub_80AA2BC - adds r7, r0, 0 - cmp r7, 0x3 - beq _080AA45E - ldr r0, [sp, 0x18] - adds r0, r4 - str r0, [sp, 0x18] - mov r1, r9 - ldr r0, [r1, 0x4] - adds r0, r5 - str r0, [r1, 0x4] - ldr r0, [sp, 0x20] - adds r0, r4 - str r0, [sp, 0x20] - mov r2, r8 - ldr r0, [r2, 0x4] - adds r0, r5 - str r0, [r2, 0x4] - cmp r7, 0x6 - beq _080AA572 - movs r0, 0x80 - lsls r0, 1 - add r10, r0 -_080AA568: - ldr r1, [sp, 0x34] - cmp r10, r1 - blt _080AA504 - cmp r7, 0x6 - bne _080AA64E -_080AA572: - ldr r2, [sp, 0x38] - cmp r10, r2 - bge _080AA5DC -_080AA578: - ldr r1, [sp, 0x18] - ldr r0, [r6, 0x28] - cmp r1, r0 - blt _080AA64E - ldr r1, [sp, 0x20] - ldr r0, [r6, 0x30] - cmp r1, r0 - bge _080AA64E - mov r0, r9 - ldr r1, [r0, 0x4] - ldr r0, [r6, 0x2C] - cmp r1, r0 - blt _080AA64E - mov r2, r8 - ldr r1, [r2, 0x4] - ldr r0, [r6, 0x34] - cmp r1, r0 - bge _080AA64E - adds r0, r6, 0 - movs r1, 0x4 - mov r2, r9 - mov r3, r8 - bl sub_80AA2BC - adds r7, r0, 0 - cmp r7, 0x3 - bne _080AA5B0 - b _080AA45E -_080AA5B0: - ldr r0, [sp, 0x18] - adds r0, r4 - str r0, [sp, 0x18] - mov r1, r9 - ldr r0, [r1, 0x4] - adds r0, r5 - str r0, [r1, 0x4] - ldr r0, [sp, 0x20] - adds r0, r4 - str r0, [sp, 0x20] - mov r2, r8 - ldr r0, [r2, 0x4] - adds r0, r5 - str r0, [r2, 0x4] - cmp r7, 0x6 - bne _080AA5E0 - movs r0, 0x80 - lsls r0, 1 - add r10, r0 - ldr r1, [sp, 0x38] - cmp r10, r1 - blt _080AA578 -_080AA5DC: - cmp r7, 0x6 - beq _080AA64E -_080AA5E0: - movs r2, 0 - mov r10, r2 - ldr r0, [sp, 0x3C] - cmp r10, r0 - bge _080AA64E -_080AA5EA: - ldr r1, [sp, 0x18] - ldr r0, [r6, 0x28] - cmp r1, r0 - blt _080AA64E - ldr r1, [sp, 0x20] - ldr r0, [r6, 0x30] - cmp r1, r0 - bge _080AA64E - mov r2, r9 - ldr r1, [r2, 0x4] - ldr r0, [r6, 0x2C] - cmp r1, r0 - blt _080AA64E - mov r0, r8 - ldr r1, [r0, 0x4] - ldr r0, [r6, 0x34] - cmp r1, r0 - bge _080AA64E - adds r0, r6, 0 - movs r1, 0x4 - mov r2, r9 - mov r3, r8 - bl sub_80AA2BC - adds r7, r0, 0 - cmp r7, 0x3 - bne _080AA622 - b _080AA45E -_080AA622: - cmp r7, 0x6 - beq _080AA64E - ldr r0, [sp, 0x18] - adds r0, r4 - str r0, [sp, 0x18] - mov r1, r9 - ldr r0, [r1, 0x4] - adds r0, r5 - str r0, [r1, 0x4] - ldr r0, [sp, 0x20] - adds r0, r4 - str r0, [sp, 0x20] - mov r2, r8 - ldr r0, [r2, 0x4] - adds r0, r5 - str r0, [r2, 0x4] - movs r0, 0x80 - lsls r0, 1 - add r10, r0 - ldr r1, [sp, 0x3C] - cmp r10, r1 - blt _080AA5EA -_080AA64E: - movs r0, 0 -_080AA650: - add sp, 0x40 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80AA3F8 - - thumb_func_start sub_80AA660 -sub_80AA660: - push {r4,lr} - adds r4, r0, 0 - movs r0, 0x80 - lsls r0, 1 - bl sub_80AC4C8 - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - blt _080AA686 - movs r2, 0 - ldrsh r0, [r4, r2] - bl sub_80A8A5C - lsls r0, 24 - cmp r0, 0 - beq _080AA686 - movs r0, 0x4 - b _080AA688 -_080AA686: - movs r0, 0 -_080AA688: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80AA660 - - thumb_func_start sub_80AA690 -sub_80AA690: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - adds r7, r0, 0 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - movs r2, 0x80 - lsls r2, 1 - mov r0, sp - bl sub_8002BB8 - ldr r5, [sp] - ldr r6, [sp, 0x4] - ldr r0, [r7, 0xC] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - movs r1, 0x80 - lsls r1, 2 - mov r8, r1 - add r0, r8 - muls r0, r5 - cmp r0, 0 - bge _080AA6CA - adds r0, 0xFF -_080AA6CA: - asrs r3, r0, 8 - ldr r0, [r7, 0x10] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - add r0, r8 - muls r0, r6 - cmp r0, 0 - bge _080AA6DE - adds r0, 0xFF -_080AA6DE: - asrs r4, r0, 8 - movs r2, 0xA2 - lsls r2, 1 - adds r0, r7, r2 - ldr r0, [r0] - ldr r1, [r7, 0x14] - adds r0, r1 - adds r0, r3 - ldr r2, _080AA76C - adds r0, r2 - str r0, [sp, 0x8] - movs r1, 0xA4 - lsls r1, 1 - adds r0, r7, r1 - ldr r0, [r0] - ldr r1, [r7, 0x18] - adds r0, r1 - adds r0, r4 - adds r0, r2 - add r2, sp, 0x8 - str r0, [r2, 0x4] - movs r1, 0xC0 - lsls r1, 3 - ldr r0, [sp, 0x8] - adds r0, r1 - str r0, [sp, 0x10] - ldr r0, [r2, 0x4] - adds r0, r1 - add r3, sp, 0x10 - str r0, [r3, 0x4] - ldr r1, _080AA770 - mov r4, r9 - lsls r0, r4, 2 - adds r0, r1 - ldr r0, [r0] - mov r10, r0 - mov r9, r8 - mov r8, r2 - adds r4, r3, 0 - cmp r9, r10 - bge _080AA79C -_080AA730: - ldr r1, [r7, 0x28] - ldr r0, [sp, 0x8] - cmp r0, r1 - blt _080AA79C - ldr r1, [r7, 0x30] - ldr r0, [sp, 0x10] - cmp r0, r1 - bge _080AA79C - ldr r1, [r7, 0x2C] - mov r2, r8 - ldr r0, [r2, 0x4] - cmp r0, r1 - blt _080AA79C - ldr r1, [r7, 0x34] - ldr r0, [r4, 0x4] - cmp r0, r1 - bge _080AA79C - adds r0, r7, 0 - mov r1, r8 - adds r2, r4, 0 - bl sub_80AA660 - cmp r0, 0x4 - beq _080AA774 - cmp r0, 0x4 - bhi _080AA778 - cmp r0, 0 - bne _080AA778 - b _080AA79C - .align 2, 0 -_080AA76C: .4byte 0xfffffd00 -_080AA770: .4byte gUnknown_8117FF0 -_080AA774: - movs r0, 0x1 - b _080AA79E -_080AA778: - ldr r0, [sp, 0x8] - adds r0, r5 - str r0, [sp, 0x8] - mov r1, r8 - ldr r0, [r1, 0x4] - adds r0, r6 - str r0, [r1, 0x4] - ldr r0, [sp, 0x10] - adds r0, r5 - str r0, [sp, 0x10] - ldr r0, [r4, 0x4] - adds r0, r6 - str r0, [r4, 0x4] - movs r2, 0x80 - lsls r2, 1 - add r9, r2 - cmp r9, r10 - blt _080AA730 -_080AA79C: - movs r0, 0 -_080AA79E: - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80AA690 - - thumb_func_start sub_80AA7B0 -sub_80AA7B0: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x20 - adds r7, r0, 0 - adds r6, r1, 0 - mov r12, r2 - ldr r2, [sp, 0x38] - ldr r0, [r3] - ldr r1, [r3, 0x4] - str r0, [sp] - str r1, [sp, 0x4] - ldr r0, [r2] - ldr r1, [r2, 0x4] - str r0, [sp, 0x10] - str r1, [sp, 0x14] - ldr r0, [sp] - cmp r0, 0 - bge _080AA7DA - ldr r1, _080AA884 - adds r0, r1 -_080AA7DA: - asrs r0, 11 - str r0, [sp, 0x8] - ldr r0, [sp, 0x4] - cmp r0, 0 - bge _080AA7E8 - ldr r2, _080AA884 - adds r0, r2 -_080AA7E8: - asrs r0, 11 - add r1, sp, 0x8 - str r0, [r1, 0x4] - ldr r4, [sp, 0x10] - subs r0, r4, 0x1 - mov r8, r1 - cmp r0, 0 - bge _080AA7FC - ldr r5, _080AA888 - adds r0, r4, r5 -_080AA7FC: - asrs r2, r0, 11 - add r4, sp, 0x10 - ldr r1, [r4, 0x4] - subs r0, r1, 0x1 - cmp r0, 0 - bge _080AA80C - ldr r5, _080AA888 - adds r0, r1, r5 -_080AA80C: - asrs r3, r0, 11 - ldr r0, [sp, 0x8] - subs r0, r2, r0 - adds r0, 0x1 - str r0, [sp, 0x18] - mov r1, r8 - ldr r0, [r1, 0x4] - subs r0, r3, r0 - adds r0, 0x1 - add r1, sp, 0x18 - str r0, [r1, 0x4] - movs r0, 0x4 - mov r2, r12 - ands r0, r2 - adds r5, r1, 0 - cmp r0, 0 - beq _080AA890 - movs r1, 0 - ldrsh r0, [r7, r1] - movs r1, 0x80 - mov r2, sp - adds r3, r4, 0 - bl sub_80A92A0 - lsls r0, 16 - asrs r4, r0, 16 - cmp r4, 0 - blt _080AA890 - adds r0, r4, 0 - bl sub_80A8BBC - lsls r0, 16 - ldr r2, _080AA88C - adds r0, r2 - lsrs r0, 16 - cmp r0, 0xF - bhi _080AA890 - adds r0, r4, 0 - bl sub_80A8E9C - cmp r0, 0 - beq _080AA890 - strh r4, [r6] - movs r5, 0xA1 - lsls r5, 1 - adds r0, r7, r5 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x5 - bl sub_8002984 - adds r1, r0, 0 - lsls r1, 24 - asrs r1, 24 - adds r0, r4, 0 - bl sub_80A9090 - movs r0, 0x5 - b _080AA8AE - .align 2, 0 -_080AA884: .4byte 0x000007ff -_080AA888: .4byte 0x000007fe -_080AA88C: .4byte 0xfff20000 -_080AA890: - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 - strh r0, [r6] - movs r0, 0x10 - mov r1, r8 - adds r2, r5, 0 - bl sub_80A595C - lsls r0, 24 - cmp r0, 0 - bne _080AA8AC - movs r0, 0 - b _080AA8AE -_080AA8AC: - movs r0, 0x6 -_080AA8AE: - add sp, 0x20 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80AA7B0 - - thumb_func_start sub_80AA8BC -sub_80AA8BC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - adds r6, r0, 0 - str r1, [sp, 0x1C] - lsls r2, 24 - asrs r2, 24 - mov r8, r2 - movs r2, 0x80 - lsls r2, 1 - add r0, sp, 0x4 - mov r1, r8 - bl sub_8002BB8 - ldr r4, [sp, 0x4] - ldr r5, [sp, 0x8] - ldr r0, [r6, 0xC] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - movs r1, 0x80 - lsls r1, 2 - mov r9, r1 - add r0, r9 - muls r0, r4 - cmp r0, 0 - bge _080AA8FA - adds r0, 0xFF -_080AA8FA: - asrs r0, 8 - str r0, [sp, 0x20] - ldr r0, [r6, 0x10] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - add r0, r9 - muls r0, r5 - cmp r0, 0 - bge _080AA910 - adds r0, 0xFF -_080AA910: - asrs r0, 8 - str r0, [sp, 0x24] - movs r2, 0xA2 - lsls r2, 1 - adds r0, r6, r2 - ldr r0, [r0] - ldr r1, [r6, 0x14] - adds r0, r1 - ldr r7, [sp, 0x20] - adds r0, r7 - ldr r2, _080AA9F0 - adds r0, r2 - str r0, [sp, 0xC] - movs r1, 0xA4 - lsls r1, 1 - adds r0, r6, r1 - ldr r0, [r0] - ldr r1, [r6, 0x18] - adds r0, r1 - ldr r7, [sp, 0x24] - adds r0, r7 - adds r0, r2 - add r2, sp, 0xC - str r0, [r2, 0x4] - movs r1, 0xC0 - lsls r1, 3 - ldr r0, [sp, 0xC] - adds r0, r1 - str r0, [sp, 0x14] - ldr r0, [r2, 0x4] - adds r0, r1 - add r3, sp, 0x14 - str r0, [r3, 0x4] - ldr r0, _080AA9F4 - mov r7, r8 - lsls r1, r7, 2 - adds r0, r1, r0 - ldr r0, [r0] - mov r10, r0 - ldr r0, _080AA9F8 - adds r0, r1, r0 - ldr r0, [r0] - str r0, [sp, 0x28] - ldr r0, _080AA9FC - adds r1, r0 - ldr r1, [r1] - str r1, [sp, 0x2C] - movs r1, 0 - movs r7, 0x1 - negs r7, r7 - adds r0, r7, 0 - ldr r7, [sp, 0x1C] - strh r0, [r7] - mov r8, r2 - adds r7, r3, 0 - cmp r9, r10 - bge _080AA9E8 -_080AA982: - ldr r1, [r6, 0x28] - ldr r0, [sp, 0xC] - cmp r0, r1 - bge _080AA98C - b _080AAAD4 -_080AA98C: - ldr r1, [r6, 0x30] - ldr r0, [sp, 0x14] - cmp r0, r1 - blt _080AA996 - b _080AAAD4 -_080AA996: - ldr r1, [r6, 0x2C] - mov r2, r8 - ldr r0, [r2, 0x4] - cmp r0, r1 - bge _080AA9A2 - b _080AAAD4 -_080AA9A2: - ldr r1, [r6, 0x34] - ldr r0, [r7, 0x4] - cmp r0, r1 - blt _080AA9AC - b _080AAAD4 -_080AA9AC: - str r7, [sp] - adds r0, r6, 0 - ldr r1, [sp, 0x1C] - movs r2, 0xC - mov r3, r8 - bl sub_80AA7B0 - adds r1, r0, 0 - cmp r1, 0x5 - beq _080AAA66 - ldr r0, [sp, 0xC] - adds r0, r4 - str r0, [sp, 0xC] - mov r2, r8 - ldr r0, [r2, 0x4] - adds r0, r5 - str r0, [r2, 0x4] - ldr r0, [sp, 0x14] - adds r0, r4 - str r0, [sp, 0x14] - ldr r0, [r7, 0x4] - adds r0, r5 - str r0, [r7, 0x4] - cmp r1, 0x6 - beq _080AAA5A - movs r0, 0x80 - lsls r0, 1 - add r9, r0 - cmp r9, r10 - blt _080AA982 -_080AA9E8: - cmp r1, 0x6 - bne _080AAAD4 - b _080AAA5A - .align 2, 0 -_080AA9F0: .4byte 0xfffffd00 -_080AA9F4: .4byte gUnknown_8117FF0 -_080AA9F8: .4byte gUnknown_8118010 -_080AA9FC: .4byte gUnknown_8118030 -_080AAA00: - ldr r1, [sp, 0xC] - ldr r0, [r6, 0x28] - cmp r1, r0 - blt _080AAAD4 - ldr r1, [sp, 0x14] - ldr r0, [r6, 0x30] - cmp r1, r0 - bge _080AAAD4 - mov r0, r8 - ldr r1, [r0, 0x4] - ldr r0, [r6, 0x2C] - cmp r1, r0 - blt _080AAAD4 - ldr r1, [r7, 0x4] - ldr r0, [r6, 0x34] - cmp r1, r0 - bge _080AAAD4 - str r7, [sp] - adds r0, r6, 0 - ldr r1, [sp, 0x1C] - movs r2, 0x4 - mov r3, r8 - bl sub_80AA7B0 - adds r1, r0, 0 - cmp r1, 0x5 - beq _080AAA66 - ldr r0, [sp, 0xC] - adds r0, r4 - str r0, [sp, 0xC] - mov r2, r8 - ldr r0, [r2, 0x4] - adds r0, r5 - str r0, [r2, 0x4] - ldr r0, [sp, 0x14] - adds r0, r4 - str r0, [sp, 0x14] - ldr r0, [r7, 0x4] - adds r0, r5 - str r0, [r7, 0x4] - cmp r1, 0x6 - bne _080AAA6A - movs r0, 0x80 - lsls r0, 1 - add r9, r0 -_080AAA5A: - ldr r2, [sp, 0x28] - cmp r9, r2 - blt _080AAA00 - cmp r1, 0x6 - bne _080AAA6A - b _080AAAD4 -_080AAA66: - movs r0, 0x1 - b _080AAAD6 -_080AAA6A: - movs r0, 0 - mov r9, r0 - ldr r1, [sp, 0x2C] - cmp r9, r1 - bge _080AAAD4 -_080AAA74: - ldr r1, [sp, 0xC] - ldr r0, [r6, 0x28] - cmp r1, r0 - blt _080AAAD4 - ldr r1, [sp, 0x14] - ldr r0, [r6, 0x30] - cmp r1, r0 - bge _080AAAD4 - mov r2, r8 - ldr r1, [r2, 0x4] - ldr r0, [r6, 0x2C] - cmp r1, r0 - blt _080AAAD4 - ldr r1, [r7, 0x4] - ldr r0, [r6, 0x34] - cmp r1, r0 - bge _080AAAD4 - str r7, [sp] - adds r0, r6, 0 - ldr r1, [sp, 0x1C] - movs r2, 0x4 - mov r3, r8 - bl sub_80AA7B0 - adds r1, r0, 0 - cmp r1, 0x5 - beq _080AAA66 - cmp r1, 0x6 - beq _080AAAD4 - ldr r0, [sp, 0xC] - adds r0, r4 - str r0, [sp, 0xC] - mov r1, r8 - ldr r0, [r1, 0x4] - adds r0, r5 - str r0, [r1, 0x4] - ldr r0, [sp, 0x14] - adds r0, r4 - str r0, [sp, 0x14] - ldr r0, [r7, 0x4] - adds r0, r5 - str r0, [r7, 0x4] - movs r2, 0x80 - lsls r2, 1 - add r9, r2 - ldr r0, [sp, 0x2C] - cmp r9, r0 - blt _080AAA74 -_080AAAD4: - movs r0, 0 -_080AAAD6: - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80AA8BC - - thumb_func_start sub_80AAAE8 -sub_80AAAE8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x80 - adds r5, r0, 0 - adds r3, r1, 0 - lsls r2, 24 - asrs r4, r2, 24 - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0x78] - movs r2, 0xAF - lsls r2, 1 - adds r1, r5, r2 - movs r0, 0xC0 - lsls r0, 2 - strh r0, [r1] - movs r6, 0xB0 - lsls r6, 1 - adds r1, r5, r6 - movs r0, 0x1 - strh r0, [r1] - ldr r0, [sp, 0x78] - cmp r4, r0 - beq _080AAB26 - movs r1, 0xA1 - lsls r1, 1 - adds r0, r5, r1 - strb r4, [r0] -_080AAB26: - subs r0, r3, 0x1 - cmp r0, 0x13 - bls _080AAB2E - b _080AAEB8 -_080AAB2E: - lsls r0, 2 - ldr r1, _080AAB38 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080AAB38: .4byte _080AAB3C - .align 2, 0 -_080AAB3C: - .4byte _080AAB8C - .4byte _080AAD60 - .4byte _080AAC9C - .4byte _080AAC9C - .4byte _080AAC9C - .4byte _080AAB9E - .4byte _080AAB9E - .4byte _080AAB9E - .4byte _080AAD7C - .4byte _080AADF4 - .4byte _080AAE06 - .4byte _080AAEB8 - .4byte _080AAEB8 - .4byte _080AAEB8 - .4byte _080AAEB8 - .4byte _080AAEB8 - .4byte _080AAEB8 - .4byte _080AAEB8 - .4byte _080AAE32 - .4byte _080AAE9C -_080AAB8C: - movs r4, 0xB2 - lsls r4, 1 - adds r1, r5, r4 - movs r0, 0 - str r0, [r1] - movs r6, 0xC0 - lsls r6, 2 - str r6, [sp, 0x78] - b _080AAD6E -_080AAB9E: - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - beq _080AAC88 - movs r6, 0 - movs r0, 0xB2 - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x4 - str r0, [r1] - cmp r3, 0x7 - beq _080AABD2 - cmp r3, 0x7 - bhi _080AABC0 - cmp r3, 0x6 - beq _080AABC6 - b _080AABEA -_080AABC0: - cmp r3, 0x8 - beq _080AABDE - b _080AABEA -_080AABC6: - movs r1, 0x90 - lsls r1, 4 - str r1, [sp, 0x78] - movs r2, 0x1 - str r2, [sp, 0x7C] - b _080AABFC -_080AABD2: - movs r3, 0x80 - lsls r3, 4 - str r3, [sp, 0x78] - movs r0, 0x2 - str r0, [sp, 0x7C] - b _080AABFC -_080AABDE: - movs r1, 0xA0 - lsls r1, 4 - str r1, [sp, 0x78] - movs r2, 0x4 - str r2, [sp, 0x7C] - b _080AABFC -_080AABEA: - movs r3, 0xB2 - lsls r3, 1 - adds r1, r5, r3 - movs r0, 0 - str r0, [r1] - ldr r0, _080AAC20 - str r0, [sp, 0x78] - movs r1, 0 - str r1, [sp, 0x7C] -_080AABFC: - movs r2, 0x80 - lsls r2, 1 - add r0, sp, 0x28 - adds r1, r4, 0 - bl sub_8002BB8 - ldr r0, [sp, 0x28] - ldr r1, [sp, 0x2C] - str r0, [sp, 0x38] - str r1, [sp, 0x3C] - movs r2, 0 - mov r10, r2 - add r3, sp, 0x40 - mov r9, r3 - add r4, sp, 0x30 - mov r8, r4 - b _080AAC42 - .align 2, 0 -_080AAC20: .4byte 0x00000807 -_080AAC24: - cmp r6, 0x1 - bne _080AAC3E - ldr r0, [sp, 0x38] - str r0, [sp, 0x30] - mov r6, r8 - str r7, [r6, 0x4] - adds r0, r5, 0 - mov r1, r8 - bl sub_80AA074 - adds r6, r0, 0 - cmp r6, 0x2 - beq _080AAC78 -_080AAC3E: - movs r0, 0x1 - add r10, r0 -_080AAC42: - ldr r1, [sp, 0x7C] - cmp r10, r1 - bge _080AAC74 - add r4, sp, 0x38 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80AA074 - adds r6, r0, 0 - cmp r6, 0x2 - beq _080AAC78 - cmp r6, 0x1 - bne _080AAC3E - movs r7, 0 - str r7, [sp, 0x40] - ldr r0, [r4, 0x4] - mov r2, r9 - str r0, [r2, 0x4] - adds r0, r5, 0 - mov r1, r9 - bl sub_80AA074 - adds r6, r0, 0 - cmp r6, 0x2 - bne _080AAC24 -_080AAC74: - cmp r6, 0x2 - bne _080AAC7E -_080AAC78: - movs r3, 0x1 - negs r3, r3 - b _080AAD6C -_080AAC7E: - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80AAF68 - b _080AAEC0 -_080AAC88: - movs r4, 0xB2 - lsls r4, 1 - adds r1, r5, r4 - movs r0, 0 - str r0, [r1] - ldr r6, _080AAC98 - str r6, [sp, 0x78] - b _080AAD6E - .align 2, 0 -_080AAC98: .4byte 0x00000807 -_080AAC9C: - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - beq _080AAD60 - movs r0, 0xB2 - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x4 - str r0, [r1] - cmp r3, 0x4 - beq _080AACCE - cmp r3, 0x4 - bhi _080AACBC - cmp r3, 0x3 - beq _080AACC2 - b _080AACE6 -_080AACBC: - cmp r3, 0x5 - beq _080AACDA - b _080AACE6 -_080AACC2: - movs r1, 0x90 - lsls r1, 4 - str r1, [sp, 0x78] - movs r2, 0x1 - mov r9, r2 - b _080AACF6 -_080AACCE: - movs r3, 0x80 - lsls r3, 4 - str r3, [sp, 0x78] - movs r6, 0x2 - mov r9, r6 - b _080AACF6 -_080AACDA: - movs r0, 0xA0 - lsls r0, 4 - str r0, [sp, 0x78] - movs r1, 0x4 - mov r9, r1 - b _080AACF6 -_080AACE6: - movs r2, 0xB2 - lsls r2, 1 - adds r1, r5, r2 - movs r0, 0 - str r0, [r1] - ldr r3, _080AAD5C - str r3, [sp, 0x78] - mov r9, r0 -_080AACF6: - movs r2, 0x80 - lsls r2, 1 - add r0, sp, 0x48 - adds r1, r4, 0 - bl sub_8002BB8 - ldr r0, [sp, 0x48] - ldr r1, [sp, 0x4C] - str r0, [sp, 0x50] - str r1, [sp, 0x54] - movs r6, 0 - cmp r6, r9 - bge _080AAD52 - add r4, sp, 0x50 - mov r8, r4 - add r7, sp, 0x58 -_080AAD16: - adds r0, r5, 0 - mov r1, r8 - bl sub_80A9F94 - cmp r0, 0 - beq _080AAD4C - movs r4, 0 - str r4, [sp, 0x58] - mov r1, r8 - ldr r0, [r1, 0x4] - str r0, [r7, 0x4] - adds r0, r5, 0 - adds r1, r7, 0 - bl sub_80A9F94 - cmp r0, 0 - beq _080AAD4C - ldr r0, [sp, 0x50] - str r0, [sp, 0x60] - add r1, sp, 0x60 - str r4, [r1, 0x4] - adds r0, r5, 0 - bl sub_80A9F94 - cmp r0, 0 - beq _080AAD4C - mov r9, r4 -_080AAD4C: - adds r6, 0x1 - cmp r6, r9 - blt _080AAD16 -_080AAD52: - adds r0, r5, 0 - mov r1, r9 - bl sub_80AAF68 - b _080AAEC0 - .align 2, 0 -_080AAD5C: .4byte 0x00000807 -_080AAD60: - movs r2, 0xB2 - lsls r2, 1 - adds r1, r5, r2 - movs r0, 0 - str r0, [r1] - ldr r3, _080AAD78 -_080AAD6C: - str r3, [sp, 0x78] -_080AAD6E: - adds r0, r5, 0 - movs r1, 0 - bl sub_80AAF68 - b _080AAEC0 - .align 2, 0 -_080AAD78: .4byte 0x00000807 -_080AAD7C: - movs r6, 0x8E - lsls r6, 1 - adds r0, r5, r6 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 5 - ands r0, r1 - cmp r0, 0 - beq _080AAD9C - ldr r0, _080AAD98 - ldr r0, [r0] - adds r0, 0x28 - strb r4, [r0] - b _080AADA6 - .align 2, 0 -_080AAD98: .4byte gUnknown_3001B80 -_080AAD9C: - ldr r0, _080AADF0 - ldr r0, [r0] - adds r0, 0x28 - movs r1, 0xFF - strb r1, [r0] -_080AADA6: - movs r1, 0xB2 - lsls r1, 1 - adds r0, r5, r1 - movs r1, 0 - str r1, [r0] - movs r2, 0x80 - lsls r2, 4 - str r2, [sp, 0x78] - movs r3, 0xA1 - lsls r3, 1 - adds r1, r5, r3 - movs r0, 0x4 - strb r0, [r1] - movs r6, 0x1 - negs r6, r6 - cmp r4, r6 - bne _080AADCA - b _080AAEC0 -_080AADCA: - movs r2, 0x80 - lsls r2, 1 - add r0, sp, 0x68 - adds r1, r4, 0 - bl sub_8002BB8 - ldr r0, [sp, 0x68] - ldr r1, [sp, 0x6C] - str r0, [sp, 0x70] - str r1, [sp, 0x74] - add r1, sp, 0x70 - adds r0, r5, 0 - bl sub_80AA074 - cmp r0, 0x2 - bne _080AAEC0 - str r6, [sp, 0x78] - b _080AAEC0 - .align 2, 0 -_080AADF0: .4byte gUnknown_3001B80 -_080AADF4: - movs r4, 0xA1 - lsls r4, 1 - adds r0, r5, r4 - movs r1, 0 - ldrsb r1, [r0, r1] - adds r0, r5, 0 - bl sub_80AA3F8 - b _080AAEC0 -_080AAE06: - movs r6, 0xA1 - lsls r6, 1 - adds r0, r5, r6 - movs r1, 0 - ldrsb r1, [r0, r1] - adds r0, r5, 0 - bl sub_80AA690 - lsls r0, 24 - cmp r0, 0 - bne _080AAEC0 - movs r0, 0 - mov r1, sp - movs r2, 0x9 - bl sub_809D710 - adds r0, r5, 0 - movs r1, 0 - mov r2, sp - bl _ExecutePlayerScript - b _080AAEC0 -_080AAE32: - add r6, sp, 0xC - movs r1, 0xA1 - lsls r1, 1 - adds r0, r5, r1 - movs r2, 0 - ldrsb r2, [r0, r2] - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80AA8BC - lsls r0, 24 - cmp r0, 0 - beq _080AAE84 - add r4, sp, 0x10 - movs r0, 0 - adds r1, r4, 0 - movs r2, 0x6 - bl sub_809D710 - movs r2, 0 - ldrsh r0, [r6, r2] - adds r1, r5, 0 - adds r1, 0x40 - adds r2, r4, 0 - bl GroundLives_ExecuteScript - adds r0, r5, 0 - movs r1, 0 - movs r2, 0 - bl _ExecutePlayerScript - movs r3, 0 - ldrsh r0, [r6, r3] - bl sub_80A8E9C - adds r2, r0, 0 - movs r0, 0x7 - movs r1, 0 - bl sub_809B1C0 - b _080AAE8E -_080AAE84: - movs r0, 0x7 - movs r1, 0 - movs r2, 0 - bl sub_809B1C0 -_080AAE8E: - movs r4, 0x90 - lsls r4, 1 - adds r0, r5, r4 - movs r1, 0x5 - bl sub_809CD8C - b _080AAEC0 -_080AAE9C: - add r4, sp, 0x1C - ldr r2, _080AAEB4 - movs r0, 0 - adds r1, r4, 0 - bl sub_809D710 - adds r0, r5, 0 - movs r1, 0 - adds r2, r4, 0 - bl _ExecutePlayerScript - b _080AAEC0 - .align 2, 0 -_080AAEB4: .4byte 0x00000195 -_080AAEB8: - adds r0, r5, 0 - movs r1, 0 - bl sub_80AAF68 -_080AAEC0: - movs r0, 0x1 - negs r0, r0 - ldr r6, [sp, 0x78] - cmp r6, r0 - beq _080AAF04 - movs r0, 0xB4 - lsls r0, 1 - adds r2, r5, r0 - movs r1, 0 - ldrsh r0, [r2, r1] - cmp r6, r0 - beq _080AAF04 - movs r3, 0xAE - lsls r3, 1 - adds r1, r5, r3 - movs r0, 0 - strb r0, [r1] - movs r4, 0xB8 - lsls r4, 1 - adds r0, r5, r4 - strh r6, [r2] - movs r1, 0xA1 - lsls r1, 1 - adds r3, r5, r1 - ldrb r1, [r3] - subs r4, 0x13 - adds r2, r5, r4 - strb r1, [r2] - movs r2, 0 - ldrsb r2, [r3, r2] - ldr r1, [sp, 0x78] - bl sub_80A6EFC - b _080AAF54 -_080AAF04: - movs r6, 0xAE - lsls r6, 1 - adds r2, r5, r6 - ldrb r0, [r2] - cmp r0, 0 - bne _080AAF2A - ldr r0, _080AAF64 - adds r1, r5, r0 - movs r3, 0xA1 - lsls r3, 1 - adds r0, r5, r3 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r1, r0 - beq _080AAF54 -_080AAF2A: - movs r0, 0 - strb r0, [r2] - movs r4, 0xB8 - lsls r4, 1 - adds r0, r5, r4 - movs r6, 0xB4 - lsls r6, 1 - adds r1, r5, r6 - movs r2, 0 - ldrsh r1, [r1, r2] - movs r3, 0xA1 - lsls r3, 1 - adds r4, r5, r3 - ldrb r2, [r4] - subs r6, 0xB - adds r3, r5, r6 - strb r2, [r3] - movs r2, 0 - ldrsb r2, [r4, r2] - bl sub_80A6EFC -_080AAF54: - add sp, 0x80 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AAF64: .4byte 0x0000015d - thumb_func_end sub_80AAAE8 - - thumb_func_start sub_80AAF68 -sub_80AAF68: - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x8E - lsls r1, 1 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 7 - ands r0, r1 - cmp r0, 0 - beq _080AB002 - movs r2, 0 - ldrsh r0, [r4, r2] - movs r1, 0x1 - bl sub_80A93F0 - lsls r0, 24 - cmp r0, 0 - beq _080AAFD0 - movs r1, 0xE4 - lsls r1, 1 - adds r0, r4, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - cmp r1, 0 - bne _080AAFA6 - movs r0, 0xB5 - lsls r0, 1 - adds r1, r4, r0 - adds r0, 0x4C - b _080AAFB4 -_080AAFA6: - movs r0, 0xDB - lsls r0, 1 - cmp r1, r0 - beq _080AAFC2 - subs r0, 0x4C - adds r1, r4, r0 - adds r0, 0x56 -_080AAFB4: - strh r0, [r1] - movs r2, 0xB6 - lsls r2, 1 - adds r1, r4, r2 - movs r0, 0x1 - negs r0, r0 - str r0, [r1] -_080AAFC2: - movs r1, 0 - ldrsh r0, [r4, r1] - movs r1, 0x80 - lsls r1, 17 - bl sub_80A8750 - b _080AB002 -_080AAFD0: - movs r2, 0xE4 - lsls r2, 1 - adds r0, r4, r2 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0xDB - lsls r0, 1 - cmp r1, r0 - bne _080AAFF6 - subs r0, 0x4C - adds r1, r4, r0 - adds r0, 0x56 - strh r0, [r1] - movs r2, 0xB6 - lsls r2, 1 - adds r1, r4, r2 - movs r0, 0x1 - negs r0, r0 - str r0, [r1] -_080AAFF6: - movs r1, 0 - ldrsh r0, [r4, r1] - movs r1, 0x80 - lsls r1, 17 - bl sub_80A86C8 -_080AB002: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AAF68 - - thumb_func_start sub_80AB008 -sub_80AB008: - movs r1, 0 - ldrsh r0, [r0, r1] - bx lr - thumb_func_end sub_80AB008 - - thumb_func_start sub_80AB010 -sub_80AB010: - ldr r2, [r0, 0xC] - ldr r3, [r0, 0x10] - str r2, [r1] - str r3, [r1, 0x4] - bx lr - thumb_func_end sub_80AB010 - - thumb_func_start sub_80AB01C -sub_80AB01C: - push {r4,lr} - adds r3, r0, 0 - adds r4, r1, 0 - cmp r4, 0 - beq _080AB05C - movs r0, 0xA2 - lsls r0, 1 - adds r2, r3, r0 - ldr r1, [r4] - ldr r0, [r3, 0x14] - subs r0, r1, r0 - str r0, [r2] - movs r0, 0xA6 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x14] - adds r1, r0 - str r1, [r2] - movs r0, 0xA4 - lsls r0, 1 - adds r2, r3, r0 - ldr r1, [r4, 0x4] - ldr r0, [r3, 0x18] - subs r0, r1, r0 - str r0, [r2] - movs r0, 0xA8 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x18] - adds r1, r0 - str r1, [r2] - b _080AB0C2 -_080AB05C: - movs r0, 0xA2 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x20] - ldr r1, [r3, 0x14] - subs r0, r1 - str r0, [r2] - movs r0, 0xA6 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x20] - ldr r1, [r3, 0x14] - adds r0, r1 - str r0, [r2] - movs r0, 0xA4 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x24] - ldr r1, [r3, 0x18] - subs r0, r1 - str r0, [r2] - movs r0, 0xA8 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x24] - ldr r1, [r3, 0x18] - adds r0, r1 - str r0, [r2] - movs r2, 0xAA - lsls r2, 1 - adds r1, r3, r2 - adds r2, 0x4 - adds r0, r3, r2 - str r4, [r0] - str r4, [r1] - movs r0, 0xA1 - lsls r0, 1 - adds r2, r3, r0 - movs r1, 0 - ldrsb r1, [r2, r1] - movs r0, 0x1C - ldrsb r0, [r3, r0] - cmp r1, r0 - beq _080AB0BE - movs r0, 0xAE - lsls r0, 1 - adds r1, r3, r0 - movs r0, 0x1 - strb r0, [r1] -_080AB0BE: - ldrb r0, [r3, 0x1C] - strb r0, [r2] -_080AB0C2: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AB01C - - thumb_func_start sub_80AB0C8 -sub_80AB0C8: - push {r4,lr} - ldr r3, [r1] - ldr r4, [r1, 0x4] - str r3, [r0, 0x28] - str r4, [r0, 0x2C] - ldr r1, [r2] - ldr r2, [r2, 0x4] - str r1, [r0, 0x30] - str r2, [r0, 0x34] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AB0C8 - - thumb_func_start sub_80AB0E0 -sub_80AB0E0: - adds r3, r0, 0 - movs r2, 0xA2 - lsls r2, 1 - adds r0, r3, r2 - ldr r0, [r0] - ldr r2, [r3, 0x14] - adds r0, r2 - str r0, [r1] - movs r2, 0xA4 - lsls r2, 1 - adds r0, r3, r2 - ldr r0, [r0] - ldr r2, [r3, 0x18] - adds r0, r2 - str r0, [r1, 0x4] - bx lr - thumb_func_end sub_80AB0E0 - - thumb_func_start sub_80AB100 -sub_80AB100: - push {lr} - bl sub_80A9F20 - pop {r1} - bx r1 - thumb_func_end sub_80AB100 - - thumb_func_start sub_80AB10C -sub_80AB10C: - push {r4,lr} - adds r3, r0, 0 - movs r4, 0xAA - lsls r4, 1 - adds r0, r3, r4 - ldr r0, [r0] - str r0, [r1] - movs r1, 0xAC - lsls r1, 1 - adds r0, r3, r1 - ldr r0, [r0] - str r0, [r2] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AB10C - - thumb_func_start sub_80AB12C -sub_80AB12C: - movs r2, 0xAA - lsls r2, 1 - adds r0, r2 - str r1, [r0] - bx lr - thumb_func_end sub_80AB12C - - thumb_func_start sub_80AB138 -sub_80AB138: - movs r2, 0xA1 - lsls r2, 1 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - bx lr - thumb_func_end sub_80AB138 - - thumb_func_start sub_80AB144 -sub_80AB144: - push {lr} - adds r3, r0, 0 - lsls r1, 24 - asrs r1, 24 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080AB17C - movs r0, 0xA1 - lsls r0, 1 - adds r2, r3, r0 - lsls r0, r1, 24 - lsrs r0, 24 - strb r0, [r2] - ldr r2, _080AB180 - adds r1, r3, r2 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - lsls r0, 24 - asrs r0, 24 - cmp r1, r0 - beq _080AB17C - movs r0, 0xAE - lsls r0, 1 - adds r1, r3, r0 - movs r0, 0x1 - strb r0, [r1] -_080AB17C: - pop {r0} - bx r0 - .align 2, 0 -_080AB180: .4byte 0x0000015d - thumb_func_end sub_80AB144 - - thumb_func_start sub_80AB184 -sub_80AB184: - push {lr} - lsls r1, 16 - lsrs r1, 16 - bl sub_80A9750 - pop {r0} - bx r0 - thumb_func_end sub_80AB184 - - thumb_func_start sub_80AB194 -sub_80AB194: - push {lr} - mov r12, r0 - lsls r1, 16 - asrs r1, 16 - adds r3, r1, 0 - cmp r1, 0 - bne _080AB1A8 - movs r0, 0xE0 - lsls r0, 1 - adds r3, r0, 0 -_080AB1A8: - movs r0, 0xB5 - lsls r0, 1 - add r0, r12 - strh r3, [r0] - movs r0, 0xB6 - lsls r0, 1 - add r0, r12 - str r2, [r0] - pop {r0} - bx r0 - thumb_func_end sub_80AB194 - - thumb_func_start nullsub_211 -nullsub_211: - bx lr - thumb_func_end nullsub_211 - - thumb_func_start sub_80AB1C0 -sub_80AB1C0: - push {lr} - adds r1, r0, 0 - movs r2, 0xAE - lsls r2, 1 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080AB1DE - adds r2, 0x14 - adds r0, r1, r2 - bl sub_80A66F8 - lsls r0, 24 - lsrs r0, 24 - b _080AB1E0 -_080AB1DE: - movs r0, 0x1 -_080AB1E0: - pop {r1} - bx r1 - thumb_func_end sub_80AB1C0 - - thumb_func_start sub_80AB1E4 -sub_80AB1E4: - push {lr} - adds r1, r0, 0 - movs r2, 0xB5 - lsls r2, 1 - adds r0, r1, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - bne _080AB206 - movs r2, 0xB8 - lsls r2, 1 - adds r0, r1, r2 - bl sub_80A671C - lsls r0, 24 - lsrs r0, 24 - b _080AB208 -_080AB206: - movs r0, 0x1 -_080AB208: - pop {r1} - bx r1 - thumb_func_end sub_80AB1E4 - - thumb_func_start sub_80AB20C -sub_80AB20C: - movs r2, 0x8E - lsls r2, 1 - adds r0, r2 - ldr r0, [r0] - str r0, [r1] - bx lr - thumb_func_end sub_80AB20C - - thumb_func_start sub_80AB218 -sub_80AB218: - push {lr} - movs r2, 0 - ldrsh r0, [r0, r2] - bl sub_80A86C8 - pop {r0} - bx r0 - thumb_func_end sub_80AB218 - - thumb_func_start sub_80AB228 -sub_80AB228: - push {lr} - movs r2, 0 - ldrsh r0, [r0, r2] - bl sub_80A8750 - pop {r0} - bx r0 - thumb_func_end sub_80AB228 - - thumb_func_start sub_80AB238 -sub_80AB238: - push {lr} - movs r2, 0xB8 - lsls r2, 1 - adds r0, r2 - bl sub_80A6EC8 - pop {r0} - bx r0 - thumb_func_end sub_80AB238 - - thumb_func_start sub_80AB248 -sub_80AB248: - push {lr} - bl sub_80A9F94 - pop {r1} - bx r1 - thumb_func_end sub_80AB248 - - thumb_func_start GroundLives_Action -GroundLives_Action: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x3C - ldr r0, _080AB29C - ldr r5, [r0] - movs r0, 0 - mov r9, r0 -_080AB266: - movs r2, 0x2 - ldrsh r1, [r5, r2] - movs r3, 0x1 - negs r3, r3 - mov r8, r3 - adds r0, r3, 0 - cmp r1, r0 - bne _080AB278 - b _080AB47C -_080AB278: - adds r4, r5, 0 - adds r4, 0x38 - ldr r1, _080AB2A0 - adds r0, r4, 0 - bl HandleAction - lsls r0, 16 - asrs r3, r0, 16 - cmp r3, 0 - beq _080AB2A4 - cmp r3, 0x4 - beq _080AB292 - b _080AB44C -_080AB292: - mov r0, r9 - bl sub_80A8684 - b _080AB47C - .align 2, 0 -_080AB29C: .4byte gUnknown_3001B84 -_080AB2A0: .4byte gUnknown_8118280 -_080AB2A4: - movs r0, 0x8E - lsls r0, 1 - adds r2, r5, r0 - ldr r1, [r2] - movs r0, 0x80 - lsls r0, 4 - ands r0, r1 - cmp r0, 0 - bne _080AB2B8 - b _080AB42E -_080AB2B8: - str r3, [sp, 0xC] - add r0, sp, 0x8 - mov r1, r8 - strb r1, [r0] - str r3, [sp, 0x10] - movs r3, 0x90 - lsls r3, 1 - adds r0, r5, r3 - add r1, sp, 0xC - add r3, sp, 0x10 - add r4, sp, 0x14 - str r4, [sp] - ldr r2, [r2] - str r2, [sp, 0x4] - add r2, sp, 0x8 - bl sub_809CDC8 - subs r0, 0x1 - mov r8, r4 - cmp r0, 0x7 - bls _080AB2E4 - b _080AB44C -_080AB2E4: - lsls r0, 2 - ldr r1, _080AB2F0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080AB2F0: .4byte _080AB2F4 - .align 2, 0 -_080AB2F4: - .4byte _080AB314 - .4byte _080AB314 - .4byte _080AB326 - .4byte _080AB44C - .4byte _080AB314 - .4byte _080AB44C - .4byte _080AB44C - .4byte _080AB314 -_080AB314: - ldr r1, [sp, 0xC] - add r0, sp, 0x8 - movs r2, 0 - ldrsb r2, [r0, r2] - ldr r3, [sp, 0x10] - adds r0, r5, 0 - bl sub_80AAAE8 - b _080AB44C -_080AB326: - add r4, sp, 0x1C - adds r0, r4, 0 - bl sub_809D248 - ldr r1, [sp, 0x1C] - ldr r0, [sp, 0x14] - adds r6, r1, r0 - ldr r1, [r4, 0x4] - mov r2, r8 - ldr r0, [r2, 0x4] - adds r7, r1, r0 - movs r3, 0xA2 - lsls r3, 1 - adds r0, r5, r3 - ldr r1, [r0] - ldr r0, [r5, 0x14] - adds r0, r1, r0 - cmp r0, 0 - bge _080AB34E - adds r0, 0xFF -_080AB34E: - asrs r0, 8 - subs r0, r6, r0 - str r0, [sp, 0x24] - movs r1, 0xA4 - lsls r1, 1 - adds r0, r5, r1 - ldr r1, [r0] - ldr r0, [r5, 0x18] - adds r0, r1, r0 - cmp r0, 0 - bge _080AB366 - adds r0, 0xFF -_080AB366: - asrs r0, 8 - subs r0, r7, r0 - add r1, sp, 0x24 - str r0, [r1, 0x4] - adds r0, r6, 0 - subs r0, 0x10 - lsls r0, 8 - str r0, [sp, 0x2C] - adds r0, r6, 0 - adds r0, 0x10 - lsls r0, 8 - str r0, [sp, 0x34] - subs r0, r7, 0x4 - lsls r0, 8 - add r2, sp, 0x2C - str r0, [r2, 0x4] - adds r0, r7, 0 - adds r0, 0x1C - lsls r0, 8 - add r3, sp, 0x34 - str r0, [r3, 0x4] - ldr r0, [sp, 0xC] - adds r4, r1, 0 - cmp r0, 0xC - bne _080AB3C4 - adds r0, r5, 0 - movs r1, 0xC - bl sub_80AA180 - cmp r0, 0 - bne _080AB44C - ldr r0, [sp, 0x24] - adds r0, 0x10 - cmp r0, 0x20 - bhi _080AB44C - movs r0, 0x1C - negs r0, r0 - ldr r1, [r4, 0x4] - cmp r1, r0 - blt _080AB44C - cmp r1, 0x4 - bgt _080AB44C - movs r2, 0x1 - negs r2, r2 - adds r0, r5, 0 - movs r1, 0x13 - b _080AB426 -_080AB3C4: - ldr r0, [sp, 0x24] - adds r0, 0x10 - cmp r0, 0x20 - bhi _080AB3DA - movs r0, 0x1C - negs r0, r0 - ldr r1, [r4, 0x4] - cmp r1, r0 - blt _080AB3DA - cmp r1, 0x4 - ble _080AB44C -_080AB3DA: - adds r0, r4, 0 - bl sub_8002C60 - add r1, sp, 0x8 - strb r0, [r1] - lsls r0, 24 - movs r1, 0xFF - lsls r1, 24 - cmp r0, r1 - beq _080AB44C - ldr r0, [sp, 0xC] - cmp r0, 0x11 - beq _080AB410 - cmp r0, 0x11 - bhi _080AB3FE - cmp r0, 0x10 - beq _080AB404 - b _080AB44C -_080AB3FE: - cmp r0, 0x12 - beq _080AB41C - b _080AB44C -_080AB404: - add r0, sp, 0x8 - movs r2, 0 - ldrsb r2, [r0, r2] - adds r0, r5, 0 - movs r1, 0x6 - b _080AB426 -_080AB410: - add r0, sp, 0x8 - movs r2, 0 - ldrsb r2, [r0, r2] - adds r0, r5, 0 - movs r1, 0x7 - b _080AB426 -_080AB41C: - add r0, sp, 0x8 - movs r2, 0 - ldrsb r2, [r0, r2] - adds r0, r5, 0 - movs r1, 0x8 -_080AB426: - movs r3, 0 - bl sub_80AAAE8 - b _080AB44C -_080AB42E: - movs r0, 0x80 - lsls r0, 5 - ands r1, r0 - cmp r1, 0 - beq _080AB440 - adds r0, r5, 0 - bl sub_80AB5D4 - b _080AB44C -_080AB440: - ldr r3, _080AB4C4 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x1 - bl sub_809D8C0 -_080AB44C: - movs r2, 0xAE - lsls r2, 1 - adds r1, r5, r2 - ldrb r0, [r1] - cmp r0, 0 - beq _080AB47C - movs r0, 0 - strb r0, [r1] - movs r3, 0xB8 - lsls r3, 1 - adds r0, r5, r3 - adds r2, 0xC - adds r1, r5, r2 - movs r3, 0 - ldrsh r1, [r1, r3] - subs r2, 0x26 - adds r4, r5, r2 - ldrb r2, [r4] - ldr r3, _080AB4C8 - strb r2, [r3, r5] - movs r2, 0 - ldrsb r2, [r4, r2] - bl sub_80A6EFC -_080AB47C: - mov r0, r9 - adds r0, 0x1 - lsls r0, 16 - asrs r0, 16 - mov r9, r0 - movs r0, 0xF8 - lsls r0, 1 - adds r5, r0 - mov r1, r9 - cmp r1, 0x17 - bgt _080AB494 - b _080AB266 -_080AB494: - ldr r0, _080AB4CC - ldr r6, [r0] - ldr r0, _080AB4D0 - ldr r5, [r0] - movs r0, 0 - str r0, [r6] - str r0, [r6, 0x4] - movs r2, 0x2 - ldrsh r1, [r5, r2] - subs r0, 0x1 - cmp r1, r0 - beq _080AB4BE - movs r3, 0x8E - lsls r3, 1 - adds r0, r5, r3 - ldr r1, [r0] - movs r3, 0x80 - lsls r3, 6 - ands r3, r1 - cmp r3, 0 - beq _080AB4D4 -_080AB4BE: - bl sub_80AB5A4 - b _080AB594 - .align 2, 0 -_080AB4C4: .4byte gUnknown_811828C -_080AB4C8: .4byte 0x0000015d -_080AB4CC: .4byte gUnknown_3001B80 -_080AB4D0: .4byte gUnknown_3001B84 -_080AB4D4: - movs r0, 0x80 - lsls r0, 5 - ands r1, r0 - cmp r1, 0 - beq _080AB590 - ldr r7, [r6, 0x24] - cmp r7, 0 - bge _080AB51E - adds r2, r6, 0 - adds r2, 0x2C - str r3, [r6, 0x24] - str r3, [r6, 0x2C] - movs r1, 0xA2 - lsls r1, 1 - adds r0, r5, r1 - ldr r0, [r0] - ldr r1, [r5, 0x14] - adds r0, r1 - str r0, [r2, 0x4] - movs r3, 0xA4 - lsls r3, 1 - adds r0, r5, r3 - ldr r0, [r0] - ldr r1, [r5, 0x18] - adds r0, r1 - str r0, [r2, 0x8] - adds r0, r6, 0 - movs r2, 0 - movs r1, 0x2 -_080AB50E: - str r2, [r0, 0x8] - str r2, [r0] - str r2, [r0, 0x4] - subs r1, 0x1 - adds r0, 0xC - cmp r1, 0 - bge _080AB50E - b _080AB594 -_080AB51E: - adds r2, r7, 0x1 - adds r0, r2, 0 - cmp r2, 0 - bge _080AB52A - adds r0, r7, 0 - adds r0, 0x40 -_080AB52A: - asrs r1, r0, 6 - lsls r0, r1, 6 - subs r1, r2, r0 - str r1, [r6, 0x24] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, 0x2C - adds r0, r6 - mov r8, r0 - movs r1, 0xA2 - lsls r1, 1 - adds r0, r5, r1 - ldr r2, [r0] - ldr r0, [r5, 0x14] - adds r2, r0 - mov r3, r8 - str r2, [r3, 0x4] - adds r1, 0x4 - adds r0, r5, r1 - ldr r1, [r0] - ldr r0, [r5, 0x18] - adds r1, r0 - str r1, [r3, 0x8] - lsls r0, r7, 1 - adds r0, r7 - lsls r0, 2 - adds r0, 0x2C - adds r0, r6, r0 - ldr r3, [r0, 0x4] - ldr r0, [r0, 0x8] - subs r0, r1, r0 - subs r2, r3 - cmp r2, 0 - bge _080AB572 - negs r2, r2 -_080AB572: - adds r4, r2, 0 - cmp r0, 0 - bge _080AB57A - negs r0, r0 -_080AB57A: - cmp r0, r4 - bge _080AB580 - adds r0, r2, 0 -_080AB580: - mov r2, r8 - str r0, [r2] - cmp r0, 0 - bgt _080AB58C - str r7, [r6, 0x24] - b _080AB594 -_080AB58C: - str r0, [r6] - b _080AB594 -_080AB590: - bl sub_80AB5A4 -_080AB594: - add sp, 0x3C - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end GroundLives_Action - - thumb_func_start sub_80AB5A4 -sub_80AB5A4: - push {lr} - ldr r3, _080AB5D0 - ldr r0, [r3] - movs r2, 0x1 - negs r2, r2 - str r2, [r0, 0x24] - adds r0, 0x28 - movs r1, 0xFF - strb r1, [r0] - ldr r3, [r3] - movs r1, 0 - movs r0, 0x2 -_080AB5BC: - str r2, [r3, 0x8] - str r1, [r3] - str r1, [r3, 0x4] - subs r0, 0x1 - adds r3, 0xC - cmp r0, 0 - bge _080AB5BC - pop {r0} - bx r0 - .align 2, 0 -_080AB5D0: .4byte gUnknown_3001B80 - thumb_func_end sub_80AB5A4 - - thumb_func_start sub_80AB5D4 -sub_80AB5D4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - mov r9, r0 - ldr r4, _080AB6BC - movs r2, 0x9E - lsls r2, 1 - add r2, r9 - movs r0, 0 - ldrsh r1, [r2, r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r3, [r4] - adds r0, r3 - mov r8, r0 - adds r0, r1, 0 - adds r5, r4, 0 - cmp r0, 0 - bne _080AB604 - b _080AB9E6 -_080AB604: - movs r1, 0xAF - lsls r1, 1 - add r1, r9 - movs r0, 0xC0 - lsls r0, 2 - strh r0, [r1] - movs r1, 0xB0 - lsls r1, 1 - add r1, r9 - movs r0, 0x1 - strh r0, [r1] - movs r0, 0x8E - lsls r0, 1 - add r0, r9 - ldr r2, [r0] - movs r0, 0x80 - lsls r0, 6 - ands r2, r0 - cmp r2, 0 - beq _080AB6D4 - movs r2, 0xA1 - lsls r2, 1 - add r2, r9 - movs r0, 0 - ldrsb r0, [r2, r0] - cmp r0, 0x4 - bne _080AB64C - movs r0, 0xB4 - lsls r0, 1 - add r0, r9 - movs r3, 0 - ldrsh r1, [r0, r3] - movs r0, 0x80 - lsls r0, 4 - cmp r1, r0 - beq _080AB670 -_080AB64C: - movs r1, 0xB2 - lsls r1, 1 - add r1, r9 - movs r0, 0 - str r0, [r1] - movs r1, 0xB4 - lsls r1, 1 - add r1, r9 - movs r0, 0x80 - lsls r0, 4 - strh r0, [r1] - movs r0, 0x4 - strb r0, [r2] - movs r1, 0xAE - lsls r1, 1 - add r1, r9 - movs r0, 0x1 - strb r0, [r1] -_080AB670: - ldr r0, [r5] - adds r2, r0, 0 - adds r2, 0x28 - movs r1, 0 - ldrsb r1, [r2, r1] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080AB69C - movs r2, 0x80 - lsls r2, 1 - mov r0, sp - bl sub_8002BB8 - ldr r0, [sp] - ldr r1, [sp, 0x4] - str r0, [sp, 0x8] - str r1, [sp, 0xC] - add r1, sp, 0x8 - mov r0, r9 - bl sub_80A9F94 -_080AB69C: - mov r4, r8 - ldr r0, [r4, 0x8] - cmp r0, 0 - blt _080AB6A6 - b _080AB9E6 -_080AB6A6: - ldr r0, [r5] - ldr r0, [r0, 0x24] - cmp r0, 0 - bge _080AB6B0 - b _080AB9E6 -_080AB6B0: - str r0, [r4, 0x8] - movs r0, 0 - str r0, [r4] - str r0, [r4, 0x4] - b _080AB9E6 - .align 2, 0 -_080AB6BC: .4byte gUnknown_3001B80 -_080AB6C0: - ldr r5, [sp, 0x28] - ldr r0, [r5, 0x4] - adds r0, r7, r0 - str r0, [r5, 0x4] - b _080AB7E2 -_080AB6CA: - ldr r1, [sp, 0x28] - ldr r0, [r1, 0x4] - subs r0, r7 - str r0, [r1, 0x4] - b _080AB7E2 -_080AB6D4: - movs r0, 0xA2 - lsls r0, 1 - add r0, r9 - ldr r1, [r0] - mov r5, r9 - ldr r0, [r5, 0x14] - adds r0, r1, r0 - str r0, [sp, 0x20] - movs r0, 0xA4 - lsls r0, 1 - add r0, r9 - ldr r1, [r0] - ldr r0, [r5, 0x18] - adds r0, r1, r0 - str r0, [sp, 0x24] - ldr r0, [sp, 0x20] - ldr r1, [sp, 0x24] - str r0, [sp, 0x10] - str r1, [sp, 0x14] - mov r1, r8 - ldr r0, [r1, 0x8] - cmp r0, 0 - bge _080AB710 - ldr r0, [r3, 0x24] - cmp r0, 0 - bge _080AB70A - b _080AB9E6 -_080AB70A: - str r0, [r1, 0x8] - str r2, [r1] - str r2, [r1, 0x4] -_080AB710: - mov r2, r8 - ldr r7, [r2] - movs r3, 0x1 - mov r10, r3 - mov r5, sp - adds r5, 0x10 - str r5, [sp, 0x28] -_080AB71E: - mov r0, r8 - ldr r1, [r0, 0x8] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, 0x2C - ldr r2, _080AB754 - ldr r1, [r2] - adds r1, r0 - mov r12, r1 - ldr r6, [r1, 0x4] - ldr r5, [sp, 0x10] - subs r4, r6, r5 - adds r2, r4, 0 - ldr r1, [r1, 0x8] - ldr r0, [sp, 0x14] - subs r3, r1, r0 - cmp r4, 0 - ble _080AB75E - cmp r2, r7 - ble _080AB758 - adds r0, r7, r5 - str r0, [sp, 0x10] - movs r4, 0 - mov r10, r4 - b _080AB75A - .align 2, 0 -_080AB754: .4byte gUnknown_3001B80 -_080AB758: - str r6, [sp, 0x10] -_080AB75A: - adds r1, r2, 0 - b _080AB778 -_080AB75E: - cmp r4, 0 - bge _080AB776 - cmn r2, r7 - bge _080AB770 - subs r0, r5, r7 - str r0, [sp, 0x10] - movs r5, 0 - mov r10, r5 - b _080AB772 -_080AB770: - str r6, [sp, 0x10] -_080AB772: - negs r1, r2 - b _080AB778 -_080AB776: - movs r1, 0 -_080AB778: - cmp r3, 0 - ble _080AB78E - cmp r3, r7 - bgt _080AB6C0 - mov r4, r12 - ldr r0, [r4, 0x8] - str r0, [sp, 0x14] - cmp r3, r1 - ble _080AB7A2 - adds r1, r3, 0 - b _080AB7A2 -_080AB78E: - cmp r3, 0 - bge _080AB7A2 - cmn r3, r7 - blt _080AB6CA - mov r5, r12 - ldr r0, [r5, 0x8] - str r0, [sp, 0x14] - cmn r3, r1 - bge _080AB7A2 - negs r1, r3 -_080AB7A2: - mov r0, r10 - cmp r0, 0 - beq _080AB7E2 - subs r7, r1 - cmp r7, 0 - ble _080AB7E2 - ldr r1, _080AB7D4 - ldr r0, [r1] - mov r3, r8 - ldr r2, [r3, 0x8] - ldr r0, [r0, 0x24] - cmp r2, r0 - beq _080AB7D8 - adds r1, r2, 0x1 - adds r0, r1, 0 - cmp r1, 0 - bge _080AB7C8 - adds r0, r2, 0 - adds r0, 0x40 -_080AB7C8: - asrs r0, 6 - lsls r0, 6 - subs r0, r1, r0 - mov r4, r8 - str r0, [r4, 0x8] - b _080AB7DC - .align 2, 0 -_080AB7D4: .4byte gUnknown_3001B80 -_080AB7D8: - movs r5, 0 - mov r10, r5 -_080AB7DC: - mov r0, r10 - cmp r0, 0 - bne _080AB71E -_080AB7E2: - mov r1, r8 - ldr r0, [r1, 0x8] - bl sub_80ABA00 - adds r6, r0, 0 - ldr r0, _080AB860 - ldr r7, [r0] - movs r2, 0x9E - lsls r2, 1 - add r2, r9 - mov r10, r2 - movs r3, 0 - ldrsh r2, [r2, r3] - subs r1, r2, 0x1 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r1, r7, 0x4 - adds r1, r0 - ldr r0, _080AB864 - lsls r2, 2 - adds r2, r0 - ldr r1, [r1] - ldr r0, [r2] - adds r1, r0 - mov r12, r1 - mov r4, r8 - ldr r1, [r4, 0x8] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, 0x2C - adds r0, r7, r0 - ldr r3, [r0, 0x4] - ldr r2, [sp, 0x10] - ldr r1, [r0, 0x8] - ldr r5, [sp, 0x28] - ldr r0, [r5, 0x4] - subs r1, r0 - subs r3, r2 - cmp r3, 0 - bge _080AB838 - negs r3, r3 -_080AB838: - adds r4, r3, 0 - cmp r1, 0 - bge _080AB840 - negs r1, r1 -_080AB840: - cmp r1, r4 - bge _080AB846 - adds r1, r3, 0 -_080AB846: - adds r6, r1 - mov r0, r8 - str r6, [r0, 0x4] - cmp r6, r12 - bgt _080AB86C - ldr r0, [r0] - cmp r0, 0 - ble _080AB8B2 - ldr r1, _080AB868 - adds r0, r1 - mov r2, r8 - b _080AB8B0 - .align 2, 0 -_080AB860: .4byte gUnknown_3001B80 -_080AB864: .4byte gUnknown_8118050 -_080AB868: .4byte 0xffffff00 -_080AB86C: - mov r3, r10 - movs r4, 0 - ldrsh r1, [r3, r4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 11 - cmp r6, r0 - bgt _080AB88E - mov r5, r8 - ldr r0, [r5] - cmp r0, 0xFF - bgt _080AB8B2 - movs r1, 0x80 - lsls r1, 1 - adds r0, r1 - str r0, [r5] - b _080AB8B2 -_080AB88E: - subs r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r7, r0 - ldr r0, [r0] - cmp r0, 0xFF - bgt _080AB8A2 - movs r0, 0x80 - lsls r0, 1 -_080AB8A2: - mov r2, r8 - ldr r1, [r2] - cmp r1, r0 - bge _080AB8B2 - movs r3, 0x80 - lsls r3, 1 - adds r0, r1, r3 -_080AB8B0: - str r0, [r2] -_080AB8B2: - ldr r0, _080AB96C - ldr r3, [r0] - mov r4, r8 - ldr r0, [r4, 0x8] - subs r0, 0x40 - ldr r2, [r3, 0x24] - subs r1, r2, r0 - adds r0, r1, 0 - cmp r1, 0 - bge _080AB8C8 - adds r0, 0x3F -_080AB8C8: - asrs r0, 6 - lsls r0, 6 - subs r0, r1, r0 - cmp r0, 0x3B - ble _080AB8FC - adds r1, r2, 0x5 - adds r0, r1, 0 - cmp r1, 0 - bge _080AB8DE - adds r0, r2, 0 - adds r0, 0x44 -_080AB8DE: - asrs r0, 6 - lsls r0, 6 - subs r0, r1, r0 - mov r5, r8 - str r0, [r5, 0x8] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r0, r3, 0 - adds r0, 0x30 - adds r0, r1 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [sp, 0x10] - str r1, [sp, 0x14] -_080AB8FC: - mov r0, r9 - ldr r1, [sp, 0x28] - bl sub_80A9F20 - adds r6, r0, 0 - cmp r6, 0 - bne _080AB9E6 - ldr r0, [sp, 0x10] - ldr r1, [sp, 0x20] - subs r0, r1 - str r0, [sp, 0x18] - ldr r2, [sp, 0x28] - ldr r1, [r2, 0x4] - ldr r3, [sp, 0x24] - subs r1, r3 - add r0, sp, 0x18 - str r1, [r0, 0x4] - movs r5, 0xA1 - lsls r5, 1 - add r5, r9 - movs r4, 0 - ldrsb r4, [r5, r4] - bl sub_8002C60 - adds r1, r0, 0 - lsls r1, 24 - asrs r1, 24 - adds r0, r4, 0 - bl sub_8002B04 - strb r0, [r5] - mov r4, r8 - ldr r0, [r4] - cmp r0, 0 - ble _080AB970 - movs r1, 0xB2 - lsls r1, 1 - add r1, r9 - movs r0, 0x4 - str r0, [r1] - ldr r1, [r4] - movs r0, 0x80 - lsls r0, 2 - movs r2, 0x80 - lsls r2, 4 - cmp r1, r0 - ble _080AB95E - movs r2, 0xA0 - lsls r2, 4 -_080AB95E: - adds r4, r2, 0 - mov r0, r9 - movs r1, 0x1 - bl sub_80AAF68 - b _080AB982 - .align 2, 0 -_080AB96C: .4byte gUnknown_3001B80 -_080AB970: - ldr r4, _080AB9F8 - movs r0, 0xB2 - lsls r0, 1 - add r0, r9 - str r6, [r0] - mov r0, r9 - movs r1, 0 - bl sub_80AAF68 -_080AB982: - movs r0, 0xAE - lsls r0, 1 - add r0, r9 - ldrb r0, [r0] - cmp r0, 0 - bne _080AB9B6 - movs r0, 0xB4 - lsls r0, 1 - add r0, r9 - movs r5, 0 - ldrsh r0, [r0, r5] - cmp r4, r0 - bne _080AB9B6 - ldr r1, _080AB9FC - add r1, r9 - movs r0, 0xA1 - lsls r0, 1 - add r0, r9 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r1, r0 - beq _080AB9E6 -_080AB9B6: - movs r1, 0xAE - lsls r1, 1 - add r1, r9 - movs r0, 0 - strb r0, [r1] - movs r0, 0xB8 - lsls r0, 1 - add r0, r9 - movs r1, 0xB4 - lsls r1, 1 - add r1, r9 - strh r4, [r1] - movs r3, 0xA1 - lsls r3, 1 - add r3, r9 - ldrb r1, [r3] - ldr r2, _080AB9FC - add r2, r9 - strb r1, [r2] - movs r2, 0 - ldrsb r2, [r3, r2] - adds r1, r4, 0 - bl sub_80A6EFC -_080AB9E6: - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AB9F8: .4byte 0x00000807 -_080AB9FC: .4byte 0x0000015d - thumb_func_end sub_80AB5D4 - - thumb_func_start sub_80ABA00 -sub_80ABA00: - push {r4,r5,lr} - adds r1, r0, 0 - movs r4, 0 - ldr r0, _080ABA34 - ldr r2, [r0] - ldr r3, [r2, 0x24] - adds r5, r0, 0 - cmp r3, r1 - ble _080ABA38 - adds r1, 0x1 - cmp r1, r3 - bge _080ABA72 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, 0x2C - adds r2, r0, r2 - subs r1, r3, r1 -_080ABA24: - ldr r0, [r2] - adds r4, r0 - adds r2, 0xC - subs r1, 0x1 - cmp r1, 0 - bne _080ABA24 - b _080ABA72 - .align 2, 0 -_080ABA34: .4byte gUnknown_3001B80 -_080ABA38: - cmp r3, r1 - bge _080ABA72 - adds r1, 0x1 - cmp r1, 0x3F - bgt _080ABA58 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, 0x2C - adds r2, r0, r2 -_080ABA4C: - ldr r0, [r2] - adds r4, r0 - adds r2, 0xC - adds r1, 0x1 - cmp r1, 0x3F - ble _080ABA4C -_080ABA58: - ldr r1, [r5] - ldr r0, [r1, 0x24] - cmp r0, 0 - ble _080ABA72 - adds r2, r1, 0 - adds r2, 0x2C - adds r1, r0, 0 -_080ABA66: - ldr r0, [r2] - adds r4, r0 - adds r2, 0xC - subs r1, 0x1 - cmp r1, 0 - bne _080ABA66 -_080ABA72: - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80ABA00 - - thumb_func_start sub_80ABA7C -sub_80ABA7C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - ldr r0, _080ABB50 - ldr r5, [r0] - movs r0, 0 - mov r8, r0 - movs r1, 0xA2 - lsls r1, 1 - adds r4, r5, r1 - movs r2, 0x1 - negs r2, r2 - mov r9, r2 -_080ABA9A: - movs r1, 0x2 - ldrsh r0, [r5, r1] - cmp r0, r9 - beq _080ABB2C - ldr r0, [r4] - ldr r1, [r5, 0x14] - adds r0, r1 - str r0, [sp] - ldr r0, [r4, 0x4] - ldr r1, [r5, 0x18] - adds r0, r1 - str r0, [sp, 0x4] - ldr r1, [r4, 0x10] - ldr r0, [r4, 0x14] - adds r7, r1, r0 - ldr r0, [r4, 0x20] - cmp r0, 0 - ble _080ABADA - subs r0, 0x1 - str r0, [r4, 0x20] - cmp r0, 0 - bgt _080ABADA - ldrh r0, [r4, 0x1C] - subs r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _080ABADA - ldrh r1, [r4, 0x1C] - adds r0, r5, 0 - bl sub_80A9750 -_080ABADA: - movs r2, 0xB8 - lsls r2, 1 - adds r6, r5, r2 - adds r0, r6, 0 - bl sub_80A66D4 - lsls r0, 24 - cmp r0, 0 - beq _080ABAFE - movs r0, 0 - strb r0, [r4, 0x18] - movs r0, 0x24 - ldrsh r1, [r4, r0] - movs r2, 0x19 - ldrsb r2, [r4, r2] - adds r0, r6, 0 - bl sub_80A6EFC -_080ABAFE: - movs r1, 0x26 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _080ABB1E - adds r1, r0, 0 - movs r2, 0xA1 - lsls r2, 1 - adds r0, r5, r2 - movs r2, 0 - ldrsb r2, [r0, r2] - ldr r3, [r4, 0x28] - adds r0, r6, 0 - bl sub_80A74F0 - movs r0, 0 - strh r0, [r4, 0x26] -_080ABB1E: - movs r0, 0x8 - ldrsh r1, [r5, r0] - adds r0, r6, 0 - mov r2, sp - adds r3, r7, 0 - bl sub_80A7524 -_080ABB2C: - mov r0, r8 - adds r0, 0x1 - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - movs r1, 0xF8 - lsls r1, 1 - adds r4, r1 - adds r5, r1 - cmp r0, 0x17 - ble _080ABA9A - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ABB50: .4byte gUnknown_3001B84 - thumb_func_end sub_80ABA7C - - thumb_func_start sub_80ABB54 -sub_80ABB54: - push {r4,r5,lr} - ldr r4, _080ABB90 - movs r0, 0xE2 - lsls r0, 5 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r4] - adds r1, r0, 0 - ldr r0, _080ABB94 - adds r5, r0, 0 - movs r4, 0xE2 - lsls r4, 1 - movs r2, 0x80 - lsls r2, 9 - adds r3, r2, 0 -_080ABB74: - ldrh r0, [r1, 0x6] - orrs r0, r5 - strh r0, [r1, 0x6] - adds r0, r2, 0 - adds r2, r3 - asrs r0, 16 - adds r1, r4 - cmp r0, 0xF - ble _080ABB74 - bl sub_80ABB98 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080ABB90: .4byte gUnknown_3001B88 -_080ABB94: .4byte 0x0000ffff - thumb_func_end sub_80ABB54 - - thumb_func_start sub_80ABB98 -sub_80ABB98: - push {r4-r6,lr} - ldr r0, _080ABBD0 - ldr r4, [r0] - movs r1, 0 - movs r6, 0x1 - negs r6, r6 - movs r5, 0x80 - lsls r5, 9 -_080ABBA8: - movs r2, 0x6 - ldrsh r0, [r4, r2] - cmp r0, r6 - beq _080ABBB6 - adds r0, r1, 0 - bl GroundObject_Delete -_080ABBB6: - adds r0, r5, 0 - movs r1, 0x80 - lsls r1, 9 - adds r5, r1 - asrs r1, r0, 16 - movs r2, 0xE2 - lsls r2, 1 - adds r4, r2 - cmp r1, 0xF - ble _080ABBA8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080ABBD0: .4byte gUnknown_3001B88 - thumb_func_end sub_80ABB98 - - thumb_func_start sub_80ABBD4 -sub_80ABBD4: - push {r4,lr} - bl sub_80ABB98 - ldr r4, _080ABBEC - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ABBEC: .4byte gUnknown_3001B88 - thumb_func_end sub_80ABBD4 - - thumb_func_start GroundObject_Select -GroundObject_Select: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 16 - asrs r4, 16 - lsls r1, 16 - asrs r7, r1, 16 - lsls r2, 24 - asrs r6, r2, 24 - ldr r1, _080ABC54 - adds r0, r4, 0 - bl sub_80A77D0 - adds r5, r0, 0 - ldr r1, _080ABC58 - str r6, [sp] - movs r0, 0 - adds r2, r4, 0 - adds r3, r7, 0 - bl Log - lsls r1, r7, 3 - ldr r0, [r5, 0x4] - adds r0, r1 - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - ldr r0, [r0, 0x4] - adds r0, r1 - ldr r5, [r0, 0xC] - ldr r0, [r0, 0x8] - cmp r0, 0 - ble _080ABC4A - adds r4, r0, 0 -_080ABC34: - movs r0, 0x1 - negs r0, r0 - adds r1, r5, 0 - adds r2, r7, 0 - adds r3, r6, 0 - bl GroundObject_Add - subs r4, 0x1 - adds r5, 0x18 - cmp r4, 0 - bne _080ABC34 -_080ABC4A: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ABC54: .4byte gUnknown_81183E4 -_080ABC58: .4byte gUnknown_81183F0 - thumb_func_end GroundObject_Select - - thumb_func_start sub_80ABC5C -sub_80ABC5C: - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - asrs r7, r0, 16 - lsls r1, 24 - asrs r5, r1, 24 - ldr r1, _080ABCC4 - movs r0, 0 - adds r2, r7, 0 - bl Log - movs r1, 0 - ldr r0, _080ABCC8 - ldr r4, [r0] - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r6, 0x80 - lsls r6, 9 -_080ABC84: - movs r2, 0x6 - ldrsh r0, [r4, r2] - cmp r0, r8 - beq _080ABCA6 - movs r2, 0x8 - ldrsh r0, [r4, r2] - cmp r0, r7 - bne _080ABCA6 - cmp r5, 0 - blt _080ABCA0 - movs r0, 0xA - ldrsb r0, [r4, r0] - cmp r0, r5 - bne _080ABCA6 -_080ABCA0: - adds r0, r1, 0 - bl GroundObject_Delete -_080ABCA6: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r1, r0, 16 - movs r2, 0xE2 - lsls r2, 1 - adds r4, r2 - cmp r1, 0xF - ble _080ABC84 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ABCC4: .4byte gUnknown_8118414 -_080ABCC8: .4byte gUnknown_3001B88 - thumb_func_end sub_80ABC5C - - thumb_func_start sub_80ABCCC -sub_80ABCCC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - ldr r1, _080ABD40 - movs r0, 0 - bl Log - movs r6, 0 - ldr r0, _080ABD44 - ldr r4, [r0] - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r1, 0x92 - lsls r1, 1 - adds r5, r4, r1 - mov r7, sp -_080ABCF0: - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r0, r8 - beq _080ABD20 - ldr r0, [r5] - ldr r1, [r4, 0x14] - adds r0, r1 - str r0, [sp] - ldr r0, [r5, 0x4] - ldr r1, [r4, 0x18] - adds r0, r1 - str r0, [r7, 0x4] - movs r1, 0xA2 - lsls r1, 1 - adds r0, r4, r1 - mov r1, sp - bl sub_80A675C - lsls r0, 24 - cmp r0, 0 - bne _080ABD20 - adds r0, r6, 0 - bl GroundObject_Delete -_080ABD20: - adds r0, r6, 0x1 - lsls r0, 16 - asrs r6, r0, 16 - movs r0, 0xE2 - lsls r0, 1 - adds r5, r0 - adds r4, r0 - cmp r6, 0xF - ble _080ABCF0 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ABD40: .4byte gUnknown_811842C -_080ABD44: .4byte gUnknown_3001B88 - thumb_func_end sub_80ABCCC - - thumb_func_start sub_80ABD48 -sub_80ABD48: - push {r4-r7,lr} - lsls r0, 16 - asrs r4, r0, 16 - movs r3, 0 - ldr r0, _080ABD6C - ldr r1, [r0] - movs r6, 0xE2 - lsls r6, 1 - movs r2, 0x80 - lsls r2, 9 - adds r5, r2, 0 -_080ABD5E: - movs r7, 0x6 - ldrsh r0, [r1, r7] - cmp r0, r4 - bne _080ABD70 - adds r0, r3, 0 - b _080ABD80 - .align 2, 0 -_080ABD6C: .4byte gUnknown_3001B88 -_080ABD70: - adds r0, r2, 0 - adds r2, r5 - asrs r3, r0, 16 - adds r1, r6 - cmp r3, 0xF - ble _080ABD5E - movs r0, 0x1 - negs r0, r0 -_080ABD80: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80ABD48 - - thumb_func_start GroundObject_Add -GroundObject_Add: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - mov r8, r1 - lsls r0, 16 - asrs r7, r0, 16 - lsls r2, 16 - asrs r2, 16 - mov r10, r2 - lsls r3, 24 - asrs r3, 24 - mov r9, r3 - ldrb r4, [r1] - cmp r4, 0x1A - bne _080ABDDA - movs r0, 0 - movs r1, 0x28 - bl sub_8001658 - cmp r0, 0x1 - bgt _080ABDBC - movs r4, 0x1B - b _080ABDDA -_080ABDBC: - movs r0, 0 - movs r1, 0x29 - bl sub_8001658 - cmp r0, 0 - bne _080ABDD4 - movs r0, 0 - movs r1, 0x27 - bl sub_8001658 - adds r0, 0x1C - b _080ABDD6 -_080ABDD4: - adds r0, 0x2B -_080ABDD6: - lsls r0, 16 - asrs r4, r0, 16 -_080ABDDA: - lsls r1, r4, 2 - ldr r0, _080ABE10 - adds r6, r1, r0 - cmp r7, 0 - bge _080ABE40 - cmp r4, 0xE - bgt _080ABDF4 - cmp r4, 0xD - blt _080ABDF4 - adds r0, r4, 0 - bl sub_80ABD48 - adds r7, r0, 0 -_080ABDF4: - cmp r7, 0 - bge _080ABE40 - movs r3, 0 - ldr r0, _080ABE14 - ldr r5, [r0] - movs r0, 0x6 - ldrsh r1, [r5, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080ABE18 - movs r7, 0 - b _080ABE40 - .align 2, 0 -_080ABE10: .4byte gUnknown_811ED20 -_080ABE14: .4byte gUnknown_3001B88 -_080ABE18: - adds r0, r3, 0x1 - lsls r0, 16 - asrs r3, r0, 16 - movs r1, 0xE2 - lsls r1, 1 - adds r5, r1 - cmp r3, 0xF - bgt _080ABE36 - movs r2, 0x6 - ldrsh r1, [r5, r2] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080ABE18 - adds r7, r3, 0 -_080ABE36: - cmp r7, 0 - bge _080ABE40 - movs r0, 0x1 - negs r0, r0 - b _080AC142 -_080ABE40: - ldr r1, _080ABEA8 - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 4 - adds r0, r7 - lsls r0, 2 - ldr r1, [r1] - adds r5, r1, r0 - ldr r1, _080ABEAC - mov r3, r8 - ldrb r0, [r3] - str r0, [sp] - movs r2, 0 - ldrsh r0, [r6, r2] - str r0, [sp, 0x4] - mov r3, r10 - str r3, [sp, 0x8] - mov r0, r9 - str r0, [sp, 0xC] - movs r0, 0 - adds r2, r7, 0 - adds r3, r4, 0 - bl Log - movs r2, 0 - movs r3, 0x6 - ldrsh r1, [r5, r3] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080ABE80 - movs r2, 0x1 -_080ABE80: - str r2, [sp, 0x10] - strh r7, [r5, 0x4] - strh r4, [r5, 0x6] - mov r0, r10 - strh r0, [r5, 0x8] - mov r1, r9 - strb r1, [r5, 0xA] - ldrh r0, [r6] - subs r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xE - bls _080ABE9C - b _080ABF8C -_080ABE9C: - lsls r0, 2 - ldr r1, _080ABEB0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080ABEA8: .4byte gUnknown_3001B88 -_080ABEAC: .4byte gUnknown_8118448 -_080ABEB0: .4byte _080ABEB4 - .align 2, 0 -_080ABEB4: - .4byte _080ABEF0 - .4byte _080ABF7C - .4byte _080ABF46 - .4byte _080ABF54 - .4byte _080ABF54 - .4byte _080ABF5E - .4byte _080ABF68 - .4byte _080ABF72 - .4byte _080ABF3C - .4byte _080ABEFA - .4byte _080ABEF0 - .4byte _080ABF06 - .4byte _080ABF2C - .4byte _080ABF1E - .4byte _080ABF12 -_080ABEF0: - movs r2, 0x8E - lsls r2, 1 - adds r1, r5, r2 - movs r0, 0 - b _080ABF94 -_080ABEFA: - movs r3, 0x8E - lsls r3, 1 - adds r1, r5, r3 - movs r0, 0x80 - lsls r0, 10 - b _080ABF94 -_080ABF06: - movs r0, 0x8E - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x80 - lsls r0, 11 - b _080ABF94 -_080ABF12: - movs r2, 0x8E - lsls r2, 1 - adds r1, r5, r2 - movs r0, 0x83 - lsls r0, 18 - b _080ABF94 -_080ABF1E: - movs r3, 0x8E - lsls r3, 1 - adds r1, r5, r3 - ldr r0, _080ABF28 - b _080ABF94 - .align 2, 0 -_080ABF28: .4byte 0x220c0000 -_080ABF2C: - movs r0, 0x8E - lsls r0, 1 - adds r1, r5, r0 - ldr r0, _080ABF38 - b _080ABF94 - .align 2, 0 -_080ABF38: .4byte 0x20010000 -_080ABF3C: - movs r2, 0x8E - lsls r2, 1 - adds r1, r5, r2 - movs r0, 0x5 - b _080ABF94 -_080ABF46: - movs r3, 0x8E - lsls r3, 1 - adds r1, r5, r3 - ldr r0, _080ABF50 - b _080ABF94 - .align 2, 0 -_080ABF50: .4byte 0x22000184 -_080ABF54: - movs r0, 0x8E - lsls r0, 1 - adds r1, r5, r0 - adds r0, 0x68 - b _080ABF94 -_080ABF5E: - movs r2, 0x8E - lsls r2, 1 - adds r1, r5, r2 - movs r0, 0x44 - b _080ABF94 -_080ABF68: - movs r3, 0x8E - lsls r3, 1 - adds r1, r5, r3 - movs r0, 0x84 - b _080ABF94 -_080ABF72: - movs r0, 0x8E - lsls r0, 1 - adds r1, r5, r0 - adds r0, 0x64 - b _080ABF94 -_080ABF7C: - movs r2, 0x8E - lsls r2, 1 - adds r1, r5, r2 - ldr r0, _080ABF88 - b _080ABF94 - .align 2, 0 -_080ABF88: .4byte 0x020000c4 -_080ABF8C: - movs r3, 0x8E - lsls r3, 1 - adds r1, r5, r3 - ldr r0, _080ABFA8 -_080ABF94: - str r0, [r1] - ldrb r0, [r6, 0x2] - cmp r0, 0 - bne _080ABFAC - mov r1, r8 - ldrb r0, [r1, 0x2] - lsls r0, 11 - str r0, [r5, 0xC] - ldrb r0, [r1, 0x3] - b _080ABFB4 - .align 2, 0 -_080ABFA8: .4byte 0x02000185 -_080ABFAC: - ldrb r0, [r6, 0x2] - lsls r0, 11 - str r0, [r5, 0xC] - ldrb r0, [r6, 0x3] -_080ABFB4: - lsls r0, 11 - str r0, [r5, 0x10] - ldr r0, [r5, 0xC] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [r5, 0x14] - ldr r0, [r5, 0x10] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [r5, 0x18] - mov r2, r8 - ldrb r0, [r2, 0x1] - strb r0, [r5, 0x1C] - adds r2, 0x4 - adds r4, r5, 0 - adds r4, 0x20 - ldrb r1, [r2, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080ABFFC - mov r3, r8 - ldrb r0, [r3, 0x4] - lsls r3, r0, 11 - str r3, [r5, 0x20] - ldrb r1, [r2, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080ABFFC - movs r1, 0x80 - lsls r1, 3 - adds r0, r3, r1 - str r0, [r5, 0x20] -_080ABFFC: - ldrb r1, [r2, 0x3] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080AC01E - ldrb r0, [r2, 0x1] - lsls r3, r0, 11 - str r3, [r4, 0x4] - ldrb r1, [r2, 0x3] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080AC01E - movs r2, 0x80 - lsls r2, 3 - adds r0, r3, r2 - str r0, [r4, 0x4] -_080AC01E: - ldr r3, [sp, 0x10] - cmp r3, 0 - beq _080AC076 - ldrb r1, [r5, 0x1C] - movs r2, 0x90 - lsls r2, 1 - adds r0, r5, r2 - movs r3, 0 - strb r1, [r0] - movs r0, 0x92 - lsls r0, 1 - adds r2, r5, r0 - ldr r0, [r5, 0x20] - ldr r1, [r5, 0x14] - subs r0, r1 - str r0, [r2] - movs r1, 0x96 - lsls r1, 1 - adds r2, r5, r1 - ldr r0, [r5, 0x20] - ldr r1, [r5, 0x14] - adds r0, r1 - str r0, [r2] - movs r0, 0x94 - lsls r0, 1 - adds r2, r5, r0 - ldr r0, [r5, 0x24] - ldr r1, [r5, 0x18] - subs r0, r1 - str r0, [r2] - movs r1, 0x98 - lsls r1, 1 - adds r2, r5, r1 - ldr r0, [r5, 0x24] - ldr r1, [r5, 0x18] - adds r0, r1 - str r0, [r2] - movs r2, 0x9A - lsls r2, 1 - adds r1, r5, r2 - adds r2, 0x4 - adds r0, r5, r2 - str r3, [r0] - str r3, [r1] -_080AC076: - adds r0, r5, 0 - adds r0, 0x28 - adds r1, r5, 0 - adds r1, 0x30 - bl sub_80A5778 - ldr r3, [sp, 0x10] - cmp r3, 0 - beq _080AC0C0 - movs r0, 0x9F - lsls r0, 1 - adds r1, r5, r0 - movs r2, 0 - movs r0, 0x80 - lsls r0, 4 - strh r0, [r1] - movs r3, 0x9E - lsls r3, 1 - adds r1, r5, r3 - movs r0, 0x1 - strb r0, [r1] - movs r1, 0xA0 - lsls r1, 1 - adds r0, r5, r1 - strh r2, [r0] - movs r2, 0xA2 - lsls r2, 1 - adds r0, r5, r2 - movs r3, 0x6 - ldrsh r2, [r5, r3] - movs r3, 0x8E - lsls r3, 1 - adds r1, r5, r3 - ldr r3, [r1] - adds r1, r7, 0 - bl sub_80A75CC -_080AC0C0: - adds r4, r5, 0 - adds r4, 0x38 - ldr r1, _080AC154 - mov r0, r9 - str r0, [sp] - adds r0, r4, 0 - adds r2, r5, 0 - mov r3, r10 - bl sub_809D600 - adds r6, r4, 0 - mov r1, r8 - ldr r2, [r1, 0xC] - cmp r2, 0 - bne _080AC0F2 - movs r2, 0xA2 - lsls r2, 1 - adds r0, r5, r2 - bl sub_80A66A4 - lsls r0, 24 - ldr r2, _080AC158 - cmp r0, 0 - beq _080AC0F2 - ldr r2, _080AC15C -_080AC0F2: - adds r0, r6, 0 - movs r1, 0x1 - bl sub_809D6D8 - adds r1, r4, 0 - mov r3, r8 - ldr r2, [r3, 0x10] - cmp r2, 0 - bne _080AC108 - ldr r0, _080AC160 - ldr r2, [r0, 0x38] -_080AC108: - adds r0, r1, 0 - movs r1, 0x2 - bl sub_809D6D8 - mov r0, r8 - ldr r2, [r0, 0x14] - cmp r2, 0 - bne _080AC11C - ldr r0, _080AC160 - ldr r2, [r0, 0x68] -_080AC11C: - adds r0, r4, 0 - movs r1, 0x3 - bl sub_809D6D8 - mov r1, r8 - ldr r2, [r1, 0x8] - cmp r2, 0 - beq _080AC140 - adds r0, r4, 0 - movs r1, 0 - bl sub_809D6D8 - ldr r3, _080AC164 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - bl sub_809D8C0 -_080AC140: - adds r0, r7, 0 -_080AC142: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AC154: .4byte gUnknown_81182A0 -_080AC158: .4byte gUnknown_81182F4 -_080AC15C: .4byte gUnknown_8118350 -_080AC160: .4byte gUnknown_812F1F8 -_080AC164: .4byte gUnknown_81184A4 - thumb_func_end GroundObject_Add - - thumb_func_start GroundObject_Delete -GroundObject_Delete: - push {r4,lr} - adds r2, r0, 0 - lsls r2, 16 - asrs r2, 16 - ldr r1, _080AC1A4 - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 4 - adds r0, r2 - lsls r0, 2 - ldr r1, [r1] - adds r4, r1, r0 - ldr r1, _080AC1A8 - movs r0, 0 - bl Log - movs r1, 0xA2 - lsls r1, 1 - adds r0, r4, r1 - bl sub_80A7658 - adds r0, r4, 0 - adds r0, 0x38 - bl sub_809D648 - ldr r0, _080AC1AC - strh r0, [r4, 0x6] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AC1A4: .4byte gUnknown_3001B88 -_080AC1A8: .4byte gUnknown_81184B0 -_080AC1AC: .4byte 0x0000ffff - thumb_func_end GroundObject_Delete - - thumb_func_start sub_80AC1B0 -sub_80AC1B0: - push {lr} - adds r3, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AC1F0 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x6 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080AC1EA - movs r1, 0x8E - lsls r1, 1 - adds r0, r2, r1 - ldr r1, [r0] - orrs r1, r3 - str r1, [r0] - movs r3, 0xA2 - lsls r3, 1 - adds r0, r2, r3 - bl sub_80A6688 -_080AC1EA: - pop {r0} - bx r0 - .align 2, 0 -_080AC1F0: .4byte gUnknown_3001B88 - thumb_func_end sub_80AC1B0 - - thumb_func_start sub_80AC1F4 -sub_80AC1F4: - push {r4,lr} - adds r4, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AC238 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r3, r0, r1 - movs r0, 0x6 - ldrsh r1, [r3, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080AC232 - movs r0, 0x8E - lsls r0, 1 - adds r2, r3, r0 - ldr r0, _080AC23C - eors r0, r4 - ldr r1, [r2] - ands r1, r0 - str r1, [r2] - movs r2, 0xA2 - lsls r2, 1 - adds r0, r3, r2 - bl sub_80A6688 -_080AC232: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AC238: .4byte gUnknown_3001B88 -_080AC23C: .4byte 0x337fffff - thumb_func_end sub_80AC1F4 - - thumb_func_start sub_80AC240 -sub_80AC240: - push {lr} - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AC268 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x6 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080AC26C - movs r0, 0 - b _080AC270 - .align 2, 0 -_080AC268: .4byte gUnknown_3001B88 -_080AC26C: - adds r0, r2, 0 - adds r0, 0x38 -_080AC270: - pop {r1} - bx r1 - thumb_func_end sub_80AC240 - - thumb_func_start sub_80AC274 -sub_80AC274: - push {r4,lr} - adds r4, r1, 0 - lsls r0, 16 - asrs r0, 16 - lsls r2, 16 - asrs r3, r2, 16 - ldr r2, _080AC2A0 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x6 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080AC2A4 - movs r0, 0 - b _080AC2B4 - .align 2, 0 -_080AC2A0: .4byte gUnknown_3001B88 -_080AC2A4: - adds r0, r2, 0 - adds r0, 0x38 - adds r1, r4, 0 - adds r2, r3, 0 - bl sub_809D6E4 - lsls r0, 24 - lsrs r0, 24 -_080AC2B4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80AC274 - - thumb_func_start GroundObject_ExecuteScript -GroundObject_ExecuteScript: - push {r4-r6,lr} - adds r3, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - lsls r3, 16 - asrs r3, 16 - ldr r1, _080AC2F4 - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 4 - adds r0, r3 - lsls r0, 2 - ldr r1, [r1] - adds r4, r1, r0 - ldr r1, _080AC2F8 - movs r0, 0 - adds r2, r3, 0 - bl Log - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080AC2FC - movs r0, 0 - b _080AC314 - .align 2, 0 -_080AC2F4: .4byte gUnknown_3001B88 -_080AC2F8: .4byte gUnknown_81184CC -_080AC2FC: - adds r0, r4, 0 - adds r0, 0x38 - ldr r3, _080AC31C - adds r1, r5, 0 - adds r2, r6, 0 - bl GroundScript_ExecutePP - movs r0, 0x9E - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0x1 - strb r0, [r1] -_080AC314: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080AC31C: .4byte gUnknown_8118504 - thumb_func_end GroundObject_ExecuteScript - - thumb_func_start sub_80AC320 -sub_80AC320: - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - asrs r7, r0, 16 - ldr r0, _080AC374 - ldr r4, [r0] - movs r5, 0 - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r6, 0x80 - lsls r6, 9 -_080AC33A: - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r0, r8 - beq _080AC352 - adds r0, r4, 0 - adds r0, 0x38 - adds r1, r7, 0 - bl sub_809D968 - orrs r5, r0 - lsls r0, r5, 24 - lsrs r5, r0, 24 -_080AC352: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r0, 16 - movs r1, 0xE2 - lsls r1, 1 - adds r4, r1 - cmp r0, 0xF - ble _080AC33A - adds r0, r5, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AC374: .4byte gUnknown_3001B88 - thumb_func_end sub_80AC320 - - thumb_func_start sub_80AC378 -sub_80AC378: - push {r4-r7,lr} - ldr r0, _080AC3BC - ldr r4, [r0] - movs r5, 0 - movs r7, 0x1 - negs r7, r7 - movs r6, 0x80 - lsls r6, 9 -_080AC388: - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r0, r7 - beq _080AC39E - adds r0, r4, 0 - adds r0, 0x38 - bl sub_809D92C - orrs r5, r0 - lsls r0, r5, 24 - lsrs r5, r0, 24 -_080AC39E: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r0, 16 - movs r1, 0xE2 - lsls r1, 1 - adds r4, r1 - cmp r0, 0xF - ble _080AC388 - adds r0, r5, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AC3BC: .4byte gUnknown_3001B88 - thumb_func_end sub_80AC378 - - thumb_func_start sub_80AC3C0 -sub_80AC3C0: - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AC3DC - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r0, r1 - movs r1, 0x6 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080AC3DC: .4byte gUnknown_3001B88 - thumb_func_end sub_80AC3C0 - - thumb_func_start sub_80AC3E0 -sub_80AC3E0: - lsls r0, 16 - asrs r0, 16 - ldr r3, _080AC404 - lsls r2, r0, 3 - subs r2, r0 - lsls r2, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, [r3] - adds r0, r2 - movs r3, 0x8E - lsls r3, 1 - adds r2, r0, r3 - ldr r2, [r2] - str r2, [r1] - movs r1, 0x6 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080AC404: .4byte gUnknown_3001B88 - thumb_func_end sub_80AC3E0 - - thumb_func_start sub_80AC408 -sub_80AC408: - push {lr} - adds r3, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AC434 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x6 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080AC438 - movs r0, 0 - str r0, [r3] - str r0, [r3, 0x4] - b _080AC440 - .align 2, 0 -_080AC434: .4byte gUnknown_3001B88 -_080AC438: - ldr r0, [r2, 0xC] - ldr r1, [r2, 0x10] - str r0, [r3] - str r1, [r3, 0x4] -_080AC440: - movs r1, 0x6 - ldrsh r0, [r2, r1] - pop {r1} - bx r1 - thumb_func_end sub_80AC408 - - thumb_func_start sub_80AC448 -sub_80AC448: - push {lr} - adds r3, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AC474 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x6 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080AC478 - movs r0, 0 - str r0, [r3] - b _080AC492 - .align 2, 0 -_080AC474: .4byte gUnknown_3001B88 -_080AC478: - movs r1, 0x92 - lsls r1, 1 - adds r0, r2, r1 - ldr r0, [r0] - ldr r1, [r2, 0x14] - adds r0, r1 - str r0, [r3] - movs r1, 0x94 - lsls r1, 1 - adds r0, r2, r1 - ldr r0, [r0] - ldr r1, [r2, 0x18] - adds r0, r1 -_080AC492: - str r0, [r3, 0x4] - movs r1, 0x6 - ldrsh r0, [r2, r1] - pop {r1} - bx r1 - thumb_func_end sub_80AC448 - - thumb_func_start sub_80AC49C -sub_80AC49C: - push {r4,lr} - lsls r0, 16 - asrs r0, 16 - ldr r3, _080AC4C4 - lsls r2, r0, 3 - subs r2, r0 - lsls r2, 4 - adds r2, r0 - lsls r2, 2 - ldr r4, [r3] - adds r4, r2 - adds r0, r4, 0 - bl sub_80AC6AC - movs r1, 0x6 - ldrsh r0, [r4, r1] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080AC4C4: .4byte gUnknown_3001B88 - thumb_func_end sub_80AC49C - - thumb_func_start sub_80AC4C8 -sub_80AC4C8: - push {r4-r7,lr} - adds r7, r0, 0 - adds r4, r1, 0 - ldr r0, _080AC530 - ldr r3, [r0] - movs r5, 0 - movs r0, 0x1 - negs r0, r0 - mov r12, r0 - movs r6, 0x80 - lsls r6, 9 -_080AC4DE: - movs r1, 0x6 - ldrsh r0, [r3, r1] - cmp r0, r12 - beq _080AC534 - movs r1, 0x8E - lsls r1, 1 - adds r0, r3, r1 - ldr r0, [r0] - ands r0, r7 - cmp r0, 0 - beq _080AC534 - adds r1, 0x8 - adds r0, r3, r1 - ldr r1, [r0] - ldr r0, [r2] - cmp r1, r0 - bge _080AC534 - movs r1, 0x96 - lsls r1, 1 - adds r0, r3, r1 - ldr r1, [r0] - ldr r0, [r4] - cmp r1, r0 - ble _080AC534 - movs r1, 0x94 - lsls r1, 1 - adds r0, r3, r1 - ldr r1, [r0] - ldr r0, [r2, 0x4] - cmp r1, r0 - bge _080AC534 - movs r1, 0x98 - lsls r1, 1 - adds r0, r3, r1 - ldr r1, [r0] - ldr r0, [r4, 0x4] - cmp r1, r0 - ble _080AC534 - adds r0, r5, 0 - b _080AC54C - .align 2, 0 -_080AC530: .4byte gUnknown_3001B88 -_080AC534: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r5, r0, 16 - movs r0, 0xE2 - lsls r0, 1 - adds r3, r0 - cmp r5, 0xF - ble _080AC4DE - movs r0, 0x1 - negs r0, r0 -_080AC54C: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80AC4C8 - - thumb_func_start sub_80AC554 -sub_80AC554: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r8, r0 - mov r10, r1 - adds r4, r2, 0 - ldr r0, _080AC5C8 - ldr r0, [r0] - mov r12, r0 - movs r6, 0 - movs r0, 0x1 - negs r0, r0 - mov r9, r0 - movs r7, 0x80 - lsls r7, 9 -_080AC576: - mov r1, r12 - movs r2, 0x6 - ldrsh r0, [r1, r2] - cmp r0, r9 - beq _080AC5CC - movs r0, 0x8E - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - mov r5, r8 - ands r0, r5 - cmp r0, 0 - beq _080AC5CC - movs r0, 0x92 - lsls r0, 1 - add r0, r12 - ldr r1, [r0] - mov r5, r12 - ldr r0, [r5, 0x14] - adds r2, r1, r0 - movs r0, 0x94 - lsls r0, 1 - add r0, r12 - ldr r1, [r0] - ldr r0, [r5, 0x18] - adds r3, r1, r0 - ldr r0, [r4] - cmp r2, r0 - bge _080AC5CC - mov r1, r10 - ldr r0, [r1] - cmp r2, r0 - ble _080AC5CC - ldr r0, [r4, 0x4] - cmp r3, r0 - bge _080AC5CC - ldr r0, [r1, 0x4] - cmp r3, r0 - ble _080AC5CC - adds r0, r6, 0 - b _080AC5E4 - .align 2, 0 -_080AC5C8: .4byte gUnknown_3001B88 -_080AC5CC: - adds r0, r7, 0 - movs r2, 0x80 - lsls r2, 9 - adds r7, r2 - asrs r6, r0, 16 - movs r5, 0xE2 - lsls r5, 1 - add r12, r5 - cmp r6, 0xF - ble _080AC576 - movs r0, 0x1 - negs r0, r0 -_080AC5E4: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80AC554 - - thumb_func_start sub_80AC5F4 -sub_80AC5F4: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - mov r8, r0 - adds r5, r1, 0 - adds r6, r2, 0 - ldr r0, [r5] - cmp r0, 0 - bge _080AC60C - ldr r1, _080AC670 - adds r0, r1 -_080AC60C: - asrs r0, 11 - mov r12, r0 - str r0, [sp] - ldr r0, [r5, 0x4] - cmp r0, 0 - bge _080AC61C - ldr r3, _080AC670 - adds r0, r3 -_080AC61C: - asrs r4, r0, 11 - str r4, [sp, 0x4] - ldr r3, [r6] - subs r0, r3, 0x1 - cmp r0, 0 - bge _080AC62C - ldr r7, _080AC674 - adds r0, r3, r7 -_080AC62C: - asrs r1, r0, 11 - ldr r3, [r6, 0x4] - subs r0, r3, 0x1 - cmp r0, 0 - bge _080AC63A - ldr r7, _080AC674 - adds r0, r3, r7 -_080AC63A: - asrs r2, r0, 11 - mov r3, r12 - subs r0, r1, r3 - adds r0, 0x1 - str r0, [sp, 0x8] - subs r0, r2, r4 - adds r0, 0x1 - add r2, sp, 0x8 - str r0, [r2, 0x4] - movs r0, 0x8E - lsls r0, 1 - add r0, r8 - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080AC678 - mov r0, sp - adds r1, r2, 0 - bl sub_80A585C - lsls r0, 24 - cmp r0, 0 - beq _080AC678 - movs r0, 0x1 - b _080AC6A0 - .align 2, 0 -_080AC670: .4byte 0x000007ff -_080AC674: .4byte 0x000007fe -_080AC678: - movs r0, 0x8E - lsls r0, 1 - add r0, r8 - ldr r0, [r0] - movs r1, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080AC69E - movs r0, 0x1 - negs r0, r0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_80A92A0 - lsls r0, 16 - cmp r0, 0 - blt _080AC69E - movs r0, 0x4 - b _080AC6A0 -_080AC69E: - movs r0, 0 -_080AC6A0: - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80AC5F4 - - thumb_func_start sub_80AC6AC -sub_80AC6AC: - push {r4,r5,lr} - sub sp, 0x10 - adds r5, r0, 0 - ldr r2, [r1] - ldr r4, [r5, 0x14] - subs r0, r2, r4 - str r0, [sp] - ldr r3, [r1, 0x4] - ldr r1, [r5, 0x18] - subs r0, r3, r1 - str r0, [sp, 0x4] - adds r2, r4 - str r2, [sp, 0x8] - adds r3, r1 - add r2, sp, 0x8 - str r3, [r2, 0x4] - ldr r1, [r5, 0x28] - ldr r0, [sp] - cmp r0, r1 - blt _080AC6EA - ldr r1, [r5, 0x30] - ldr r0, [sp, 0x8] - cmp r0, r1 - bge _080AC6EA - ldr r1, [r5, 0x2C] - ldr r0, [sp, 0x4] - cmp r0, r1 - blt _080AC6EA - ldr r0, [r5, 0x34] - cmp r3, r0 - blt _080AC6EE -_080AC6EA: - movs r0, 0x1 - b _080AC718 -_080AC6EE: - adds r0, r5, 0 - mov r1, sp - bl sub_80AC5F4 - cmp r0, 0 - bne _080AC718 - movs r0, 0x92 - lsls r0, 1 - adds r2, r5, r0 - ldr r0, [sp] - ldr r1, [sp, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - movs r0, 0x96 - lsls r0, 1 - adds r2, r5, r0 - ldr r0, [sp, 0x8] - ldr r1, [sp, 0xC] - str r0, [r2] - str r1, [r2, 0x4] - movs r0, 0 -_080AC718: - add sp, 0x10 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80AC6AC - - thumb_func_start sub_80AC720 -sub_80AC720: - push {r4,r5,lr} - sub sp, 0x10 - adds r4, r0, 0 - movs r2, 0x92 - lsls r2, 1 - adds r0, r4, r2 - ldr r0, [r0] - ldr r2, [r1] - adds r0, r2 - str r0, [sp] - movs r3, 0x94 - lsls r3, 1 - adds r0, r4, r3 - ldr r0, [r0] - ldr r1, [r1, 0x4] - adds r0, r1 - str r0, [sp, 0x4] - adds r3, 0x4 - adds r0, r4, r3 - ldr r0, [r0] - adds r0, r2 - str r0, [sp, 0x8] - movs r2, 0x98 - lsls r2, 1 - adds r0, r4, r2 - ldr r0, [r0] - adds r0, r1 - add r1, sp, 0x8 - str r0, [r1, 0x4] - movs r5, 0 - ldr r3, [r4, 0x28] - ldr r0, [sp] - adds r2, r1, 0 - cmp r0, r3 - bge _080AC770 - str r3, [sp] - ldr r0, [r4, 0xC] - adds r0, r3, r0 - str r0, [sp, 0x8] - b _080AC780 -_080AC770: - ldr r1, [r4, 0x30] - ldr r0, [sp, 0x8] - cmp r0, r1 - blt _080AC782 - ldr r0, [r4, 0xC] - subs r0, r1, r0 - str r0, [sp] - str r1, [sp, 0x8] -_080AC780: - movs r5, 0x1 -_080AC782: - ldr r1, [r4, 0x2C] - ldr r0, [sp, 0x4] - cmp r0, r1 - bge _080AC794 - str r1, [sp, 0x4] - ldr r0, [r4, 0x10] - adds r0, r1, r0 - str r0, [r2, 0x4] - b _080AC7A4 -_080AC794: - ldr r1, [r4, 0x34] - ldr r0, [r2, 0x4] - cmp r0, r1 - blt _080AC7A6 - ldr r0, [r4, 0x10] - subs r0, r1, r0 - str r0, [sp, 0x4] - str r1, [r2, 0x4] -_080AC7A4: - movs r5, 0x1 -_080AC7A6: - adds r0, r4, 0 - mov r1, sp - bl sub_80AC5F4 - cmp r0, 0 - bne _080AC7D8 - movs r3, 0x92 - lsls r3, 1 - adds r2, r4, r3 - ldr r0, [sp] - ldr r1, [sp, 0x4] - str r0, [r2] - str r1, [r2, 0x4] - movs r0, 0x96 - lsls r0, 1 - adds r2, r4, r0 - ldr r0, [sp, 0x8] - ldr r1, [sp, 0xC] - str r0, [r2] - str r1, [r2, 0x4] - cmp r5, 0 - bne _080AC7D6 - movs r0, 0 - b _080AC7D8 -_080AC7D6: - movs r0, 0x1 -_080AC7D8: - add sp, 0x10 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80AC720 - - thumb_func_start sub_80AC7E0 -sub_80AC7E0: - movs r1, 0x4 - ldrsh r0, [r0, r1] - bx lr - thumb_func_end sub_80AC7E0 - - thumb_func_start sub_80AC7E8 -sub_80AC7E8: - ldr r2, [r0, 0xC] - ldr r3, [r0, 0x10] - str r2, [r1] - str r3, [r1, 0x4] - bx lr - thumb_func_end sub_80AC7E8 - - thumb_func_start sub_80AC7F4 -sub_80AC7F4: - push {r4,lr} - adds r3, r0, 0 - adds r4, r1, 0 - cmp r4, 0 - beq _080AC834 - movs r0, 0x92 - lsls r0, 1 - adds r2, r3, r0 - ldr r1, [r4] - ldr r0, [r3, 0x14] - subs r0, r1, r0 - str r0, [r2] - movs r0, 0x96 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x14] - adds r1, r0 - str r1, [r2] - movs r0, 0x94 - lsls r0, 1 - adds r2, r3, r0 - ldr r1, [r4, 0x4] - ldr r0, [r3, 0x18] - subs r0, r1, r0 - str r0, [r2] - movs r0, 0x98 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x18] - adds r1, r0 - str r1, [r2] - b _080AC89A -_080AC834: - movs r0, 0x92 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x20] - ldr r1, [r3, 0x14] - subs r0, r1 - str r0, [r2] - movs r0, 0x96 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x20] - ldr r1, [r3, 0x14] - adds r0, r1 - str r0, [r2] - movs r0, 0x94 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x24] - ldr r1, [r3, 0x18] - subs r0, r1 - str r0, [r2] - movs r0, 0x98 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x24] - ldr r1, [r3, 0x18] - adds r0, r1 - str r0, [r2] - movs r2, 0x9A - lsls r2, 1 - adds r1, r3, r2 - adds r2, 0x4 - adds r0, r3, r2 - str r4, [r0] - str r4, [r1] - movs r0, 0x90 - lsls r0, 1 - adds r2, r3, r0 - movs r1, 0 - ldrsb r1, [r2, r1] - movs r0, 0x1C - ldrsb r0, [r3, r0] - cmp r1, r0 - beq _080AC896 - movs r0, 0x9E - lsls r0, 1 - adds r1, r3, r0 - movs r0, 0x1 - strb r0, [r1] -_080AC896: - ldrb r0, [r3, 0x1C] - strb r0, [r2] -_080AC89A: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AC7F4 - - thumb_func_start sub_80AC8A0 -sub_80AC8A0: - push {r4,lr} - ldr r3, [r1] - ldr r4, [r1, 0x4] - str r3, [r0, 0x28] - str r4, [r0, 0x2C] - ldr r1, [r2] - ldr r2, [r2, 0x4] - str r1, [r0, 0x30] - str r2, [r0, 0x34] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AC8A0 - - thumb_func_start sub_80AC8B8 -sub_80AC8B8: - adds r3, r0, 0 - movs r2, 0x92 - lsls r2, 1 - adds r0, r3, r2 - ldr r0, [r0] - ldr r2, [r3, 0x14] - adds r0, r2 - str r0, [r1] - movs r2, 0x94 - lsls r2, 1 - adds r0, r3, r2 - ldr r0, [r0] - ldr r2, [r3, 0x18] - adds r0, r2 - str r0, [r1, 0x4] - bx lr - thumb_func_end sub_80AC8B8 - - thumb_func_start sub_80AC8D8 -sub_80AC8D8: - push {lr} - bl sub_80AC6AC - pop {r1} - bx r1 - thumb_func_end sub_80AC8D8 - - thumb_func_start sub_80AC8E4 -sub_80AC8E4: - push {r4,lr} - adds r3, r0, 0 - movs r4, 0x9A - lsls r4, 1 - adds r0, r3, r4 - ldr r0, [r0] - str r0, [r1] - movs r1, 0x9C - lsls r1, 1 - adds r0, r3, r1 - ldr r0, [r0] - str r0, [r2] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AC8E4 - - thumb_func_start sub_80AC904 -sub_80AC904: - movs r2, 0x9A - lsls r2, 1 - adds r0, r2 - str r1, [r0] - bx lr - thumb_func_end sub_80AC904 - - thumb_func_start sub_80AC910 -sub_80AC910: - movs r2, 0x90 - lsls r2, 1 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - bx lr - thumb_func_end sub_80AC910 - - thumb_func_start sub_80AC91C -sub_80AC91C: - push {lr} - adds r2, r0, 0 - lsls r1, 24 - asrs r1, 24 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080AC934 - movs r3, 0x90 - lsls r3, 1 - adds r0, r2, r3 - strb r1, [r0] -_080AC934: - pop {r0} - bx r0 - thumb_func_end sub_80AC91C - - thumb_func_start sub_80AC938 -sub_80AC938: - push {r4,r5,lr} - lsls r1, 16 - adds r3, r0, 0 - movs r0, 0xFF - lsls r0, 16 - ands r0, r1 - lsrs r0, 16 - cmp r0, 0 - beq _080AC958 - ldr r1, _080AC954 - lsls r0, 1 - adds r0, r1 - b _080AC95E - .align 2, 0 -_080AC954: .4byte gUnknown_81183A0 -_080AC958: - movs r5, 0x9F - lsls r5, 1 - adds r0, r3, r5 -_080AC95E: - movs r1, 0 - ldrsh r2, [r0, r1] - movs r5, 0x9F - lsls r5, 1 - adds r1, r3, r5 - ldrh r4, [r1] - movs r5, 0 - ldrsh r0, [r1, r5] - cmp r0, r2 - beq _080AC97C - strh r2, [r1] - movs r0, 0x9E - lsls r0, 1 - adds r1, r3, r0 - b _080AC98C -_080AC97C: - movs r0, 0x80 - lsls r0, 5 - ands r0, r4 - cmp r0, 0 - beq _080AC990 - movs r5, 0x9E - lsls r5, 1 - adds r1, r3, r5 -_080AC98C: - movs r0, 0x1 - strb r0, [r1] -_080AC990: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80AC938 - - thumb_func_start sub_80AC998 -sub_80AC998: - push {lr} - lsls r1, 16 - asrs r1, 16 - adds r2, r1, 0 - cmp r1, 0 - bne _080AC9AA - movs r1, 0xE0 - lsls r1, 1 - adds r2, r1, 0 -_080AC9AA: - movs r1, 0xA0 - lsls r1, 1 - adds r0, r1 - strh r2, [r0] - pop {r0} - bx r0 - thumb_func_end sub_80AC998 - - thumb_func_start sub_80AC9B8 -sub_80AC9B8: - push {lr} - adds r1, r0, 0 - movs r2, 0x9E - lsls r2, 1 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080AC9D6 - adds r2, 0x8 - adds r0, r1, r2 - bl sub_80A66F8 - lsls r0, 24 - lsrs r0, 24 - b _080AC9D8 -_080AC9D6: - movs r0, 0x1 -_080AC9D8: - pop {r1} - bx r1 - thumb_func_end sub_80AC9B8 - - thumb_func_start sub_80AC9DC -sub_80AC9DC: - push {lr} - adds r1, r0, 0 - movs r2, 0xA0 - lsls r2, 1 - adds r0, r1, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - bne _080AC9FE - movs r2, 0xA2 - lsls r2, 1 - adds r0, r1, r2 - bl sub_80A671C - lsls r0, 24 - lsrs r0, 24 - b _080ACA00 -_080AC9FE: - movs r0, 0x1 -_080ACA00: - pop {r1} - bx r1 - thumb_func_end sub_80AC9DC - - thumb_func_start sub_80ACA04 -sub_80ACA04: - movs r2, 0x8E - lsls r2, 1 - adds r0, r2 - ldr r0, [r0] - str r0, [r1] - bx lr - thumb_func_end sub_80ACA04 - - thumb_func_start sub_80ACA10 -sub_80ACA10: - push {lr} - movs r2, 0x4 - ldrsh r0, [r0, r2] - bl sub_80AC1B0 - pop {r0} - bx r0 - thumb_func_end sub_80ACA10 - - thumb_func_start sub_80ACA20 -sub_80ACA20: - push {lr} - movs r2, 0x4 - ldrsh r0, [r0, r2] - bl sub_80AC1F4 - pop {r0} - bx r0 - thumb_func_end sub_80ACA20 - - thumb_func_start sub_80ACA30 -sub_80ACA30: - push {lr} - bl sub_80AC720 - pop {r1} - bx r1 - thumb_func_end sub_80ACA30 - - thumb_func_start GroundObject_Action -GroundObject_Action: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, _080ACA7C - ldr r5, [r0] - movs r7, 0 - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r1, 0x9E - lsls r1, 1 - adds r6, r5, r1 -_080ACA54: - movs r3, 0x6 - ldrsh r0, [r5, r3] - cmp r0, r8 - beq _080ACAB2 - adds r4, r5, 0 - adds r4, 0x38 - adds r0, r4, 0 - ldr r1, _080ACA80 - bl HandleAction - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - beq _080ACA84 - cmp r0, 0x4 - bne _080ACA90 - adds r0, r7, 0 - bl GroundObject_Delete - b _080ACAB2 - .align 2, 0 -_080ACA7C: .4byte gUnknown_3001B88 -_080ACA80: .4byte gUnknown_8118524 -_080ACA84: - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x1 - ldr r3, _080ACAD0 - bl sub_809D8C0 -_080ACA90: - ldrb r0, [r6] - cmp r0, 0 - beq _080ACAB2 - movs r0, 0 - strb r0, [r6] - movs r1, 0xA2 - lsls r1, 1 - adds r0, r5, r1 - ldrh r2, [r6, 0x2] - movs r3, 0xF8 - lsls r3, 5 - adds r1, r3, 0 - ands r1, r2 - lsls r2, 24 - asrs r2, 24 - bl sub_80A6EFC -_080ACAB2: - adds r0, r7, 0x1 - lsls r0, 16 - asrs r7, r0, 16 - movs r0, 0xE2 - lsls r0, 1 - adds r6, r0 - adds r5, r0 - cmp r7, 0xF - ble _080ACA54 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ACAD0: .4byte gUnknown_8118530 - thumb_func_end GroundObject_Action - - thumb_func_start sub_80ACAD4 -sub_80ACAD4: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - ldr r0, _080ACB8C - ldr r6, [r0] - movs r0, 0 - mov r8, r0 - movs r1, 0x1 - negs r1, r1 - mov r9, r1 - movs r2, 0x90 - lsls r2, 1 - adds r4, r6, r2 -_080ACAF2: - movs r0, 0x6 - ldrsh r1, [r6, r0] - mov r2, r9 - lsls r0, r2, 16 - asrs r0, 16 - cmp r1, r0 - beq _080ACB64 - ldr r0, [r4, 0x4] - ldr r1, [r6, 0x14] - adds r0, r1 - str r0, [sp] - ldr r0, [r4, 0x8] - ldr r1, [r6, 0x18] - adds r0, r1 - str r0, [sp, 0x4] - ldr r1, [r4, 0x14] - ldr r0, [r4, 0x18] - adds r7, r1, r0 - movs r0, 0xA2 - lsls r0, 1 - adds r5, r6, r0 - adds r0, r5, 0 - bl sub_80A66D4 - lsls r0, 24 - cmp r0, 0 - beq _080ACB40 - movs r0, 0 - strb r0, [r4, 0x1C] - ldrh r2, [r4, 0x1E] - movs r0, 0xF8 - lsls r0, 5 - adds r1, r0, 0 - ands r1, r2 - lsls r2, 24 - asrs r2, 24 - adds r0, r5, 0 - bl sub_80A6EFC -_080ACB40: - movs r1, 0x20 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _080ACB5A - adds r1, r0, 0 - movs r2, 0 - ldrsb r2, [r4, r2] - adds r0, r5, 0 - movs r3, 0 - bl sub_80A7040 - movs r0, 0 - strh r0, [r4, 0x20] -_080ACB5A: - adds r0, r5, 0 - mov r1, sp - adds r2, r7, 0 - bl sub_80A7664 -_080ACB64: - mov r0, r8 - adds r0, 0x1 - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - movs r0, 0xE2 - lsls r0, 1 - adds r4, r0 - adds r6, r0 - mov r1, r8 - cmp r1, 0xF - ble _080ACAF2 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ACB8C: .4byte gUnknown_3001B88 - thumb_func_end sub_80ACAD4 - - thumb_func_start sub_80ACB90 -sub_80ACB90: - push {r4,r5,lr} - ldr r4, _080ACBCC - movs r0, 0xE2 - lsls r0, 5 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r4] - adds r1, r0, 0 - ldr r0, _080ACBD0 - adds r5, r0, 0 - movs r4, 0xE2 - lsls r4, 1 - movs r2, 0x80 - lsls r2, 9 - adds r3, r2, 0 -_080ACBB0: - ldrh r0, [r1, 0x6] - orrs r0, r5 - strh r0, [r1, 0x6] - adds r0, r2, 0 - adds r2, r3 - asrs r0, 16 - adds r1, r4 - cmp r0, 0xF - ble _080ACBB0 - bl sub_80ACBD4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080ACBCC: .4byte gUnknown_3001B8C -_080ACBD0: .4byte 0x0000ffff - thumb_func_end sub_80ACB90 - - thumb_func_start sub_80ACBD4 -sub_80ACBD4: - push {r4-r6,lr} - ldr r0, _080ACC0C - ldr r4, [r0] - movs r1, 0 - movs r6, 0x1 - negs r6, r6 - movs r5, 0x80 - lsls r5, 9 -_080ACBE4: - movs r2, 0x6 - ldrsh r0, [r4, r2] - cmp r0, r6 - beq _080ACBF2 - adds r0, r1, 0 - bl sub_80AD080 -_080ACBF2: - adds r0, r5, 0 - movs r1, 0x80 - lsls r1, 9 - adds r5, r1 - asrs r1, r0, 16 - movs r2, 0xE2 - lsls r2, 1 - adds r4, r2 - cmp r1, 0xF - ble _080ACBE4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080ACC0C: .4byte gUnknown_3001B8C - thumb_func_end sub_80ACBD4 - - thumb_func_start sub_80ACC10 -sub_80ACC10: - push {r4,lr} - bl sub_80ACBD4 - ldr r4, _080ACC28 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ACC28: .4byte gUnknown_3001B8C - thumb_func_end sub_80ACC10 - - thumb_func_start GroundEffect_Select -GroundEffect_Select: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 16 - asrs r4, 16 - lsls r1, 16 - asrs r7, r1, 16 - lsls r2, 24 - asrs r6, r2, 24 - ldr r1, _080ACC90 - adds r0, r4, 0 - bl sub_80A77D0 - adds r5, r0, 0 - ldr r1, _080ACC94 - str r6, [sp] - movs r0, 0 - adds r2, r4, 0 - adds r3, r7, 0 - bl Log - lsls r1, r7, 3 - ldr r0, [r5, 0x4] - adds r0, r1 - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - ldr r0, [r0, 0x4] - adds r0, r1 - ldr r5, [r0, 0x14] - ldr r0, [r0, 0x10] - cmp r0, 0 - ble _080ACC86 - adds r4, r0, 0 -_080ACC70: - movs r0, 0x1 - negs r0, r0 - adds r1, r5, 0 - adds r2, r7, 0 - adds r3, r6, 0 - bl GroundEffect_Add - subs r4, 0x1 - adds r5, 0xC - cmp r4, 0 - bne _080ACC70 -_080ACC86: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ACC90: .4byte gUnknown_8118610 -_080ACC94: .4byte gUnknown_811861C - thumb_func_end GroundEffect_Select - - thumb_func_start sub_80ACC98 -sub_80ACC98: - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - asrs r7, r0, 16 - lsls r1, 24 - asrs r5, r1, 24 - ldr r1, _080ACD00 - movs r0, 0 - adds r2, r7, 0 - bl Log - movs r1, 0 - ldr r0, _080ACD04 - ldr r4, [r0] - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r6, 0x80 - lsls r6, 9 -_080ACCC0: - movs r2, 0x6 - ldrsh r0, [r4, r2] - cmp r0, r8 - beq _080ACCE2 - movs r2, 0x8 - ldrsh r0, [r4, r2] - cmp r0, r7 - bne _080ACCE2 - cmp r5, 0 - blt _080ACCDC - movs r0, 0xA - ldrsb r0, [r4, r0] - cmp r0, r5 - bne _080ACCE2 -_080ACCDC: - adds r0, r1, 0 - bl sub_80AD080 -_080ACCE2: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r1, r0, 16 - movs r2, 0xE2 - lsls r2, 1 - adds r4, r2 - cmp r1, 0xF - ble _080ACCC0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ACD00: .4byte gUnknown_8118640 -_080ACD04: .4byte gUnknown_3001B8C - thumb_func_end sub_80ACC98 - - thumb_func_start sub_80ACD08 -sub_80ACD08: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - ldr r1, _080ACD7C - movs r0, 0 - bl Log - movs r6, 0 - ldr r0, _080ACD80 - ldr r4, [r0] - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r1, 0x92 - lsls r1, 1 - adds r5, r4, r1 - mov r7, sp -_080ACD2C: - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r0, r8 - beq _080ACD5C - ldr r0, [r5] - ldr r1, [r4, 0x14] - adds r0, r1 - str r0, [sp] - ldr r0, [r5, 0x4] - ldr r1, [r4, 0x18] - adds r0, r1 - str r0, [r7, 0x4] - movs r1, 0xA2 - lsls r1, 1 - adds r0, r4, r1 - mov r1, sp - bl sub_80A675C - lsls r0, 24 - cmp r0, 0 - bne _080ACD5C - adds r0, r6, 0 - bl sub_80AD080 -_080ACD5C: - adds r0, r6, 0x1 - lsls r0, 16 - asrs r6, r0, 16 - movs r0, 0xE2 - lsls r0, 1 - adds r5, r0 - adds r4, r0 - cmp r6, 0xF - ble _080ACD2C - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ACD7C: .4byte gUnknown_8118658 -_080ACD80: .4byte gUnknown_3001B8C - thumb_func_end sub_80ACD08 - - thumb_func_start sub_80ACD84 -sub_80ACD84: - push {r4-r7,lr} - lsls r0, 16 - asrs r4, r0, 16 - movs r3, 0 - ldr r0, _080ACDA8 - ldr r1, [r0] - movs r6, 0xE2 - lsls r6, 1 - movs r2, 0x80 - lsls r2, 9 - adds r5, r2, 0 -_080ACD9A: - movs r7, 0x6 - ldrsh r0, [r1, r7] - cmp r0, r4 - bne _080ACDAC - adds r0, r3, 0 - b _080ACDBC - .align 2, 0 -_080ACDA8: .4byte gUnknown_3001B8C -_080ACDAC: - adds r0, r2, 0 - adds r2, r5 - asrs r3, r0, 16 - adds r1, r6 - cmp r3, 0xF - ble _080ACD9A - movs r0, 0x1 - negs r0, r0 -_080ACDBC: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80ACD84 - - thumb_func_start GroundEffect_Add -GroundEffect_Add: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - adds r7, r1, 0 - lsls r0, 16 - asrs r6, r0, 16 - lsls r2, 16 - asrs r2, 16 - mov r10, r2 - lsls r3, 24 - asrs r3, 24 - mov r9, r3 - ldrb r0, [r7] - lsls r0, 2 - ldr r1, _080ACE08 - adds r0, r1 - mov r8, r0 - ldr r3, _080ACE0C - cmp r6, 0 - bge _080ACE38 - movs r2, 0 - ldr r5, [r3] - movs r0, 0x6 - ldrsh r1, [r5, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080ACE10 - movs r6, 0 - b _080ACE38 - .align 2, 0 -_080ACE08: .4byte gUnknown_811EE38 -_080ACE0C: .4byte gUnknown_3001B8C -_080ACE10: - adds r0, r2, 0x1 - lsls r0, 16 - asrs r2, r0, 16 - movs r1, 0xE2 - lsls r1, 1 - adds r5, r1 - cmp r2, 0xF - bgt _080ACE2E - movs r4, 0x6 - ldrsh r1, [r5, r4] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080ACE10 - adds r6, r2, 0 -_080ACE2E: - cmp r6, 0 - bge _080ACE38 - movs r0, 0x1 - negs r0, r0 - b _080AD062 -_080ACE38: - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 4 - adds r0, r6 - lsls r0, 2 - ldr r1, [r3] - adds r5, r1, r0 - ldr r1, _080ACE9C - ldrb r3, [r7] - mov r2, r8 - movs r4, 0 - ldrsh r0, [r2, r4] - str r0, [sp] - mov r0, r10 - str r0, [sp, 0x4] - mov r2, r9 - str r2, [sp, 0x8] - movs r0, 0 - adds r2, r6, 0 - bl Log - movs r2, 0 - movs r3, 0x6 - ldrsh r1, [r5, r3] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080ACE72 - movs r2, 0x1 -_080ACE72: - str r2, [sp, 0xC] - strh r6, [r5, 0x4] - ldrb r0, [r7] - strh r0, [r5, 0x6] - mov r4, r10 - strh r4, [r5, 0x8] - mov r0, r9 - strb r0, [r5, 0xA] - mov r1, r8 - ldrh r0, [r1] - subs r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x4 - bhi _080ACEEC - lsls r0, 2 - ldr r1, _080ACEA0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080ACE9C: .4byte gUnknown_8118674 -_080ACEA0: .4byte _080ACEA4 - .align 2, 0 -_080ACEA4: - .4byte _080ACEB8 - .4byte _080ACEEC - .4byte _080ACEC4 - .4byte _080ACED0 - .4byte _080ACEDC -_080ACEB8: - movs r2, 0x8E - lsls r2, 1 - adds r1, r5, r2 - movs r0, 0x81 - lsls r0, 22 - b _080ACEF4 -_080ACEC4: - movs r4, 0x8E - lsls r4, 1 - adds r1, r5, r4 - movs r0, 0x83 - lsls r0, 18 - b _080ACEF4 -_080ACED0: - movs r0, 0x8E - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x88 - lsls r0, 22 - b _080ACEF4 -_080ACEDC: - movs r2, 0x8E - lsls r2, 1 - adds r1, r5, r2 - ldr r0, _080ACEE8 - b _080ACEF4 - .align 2, 0 -_080ACEE8: .4byte 0x22020000 -_080ACEEC: - movs r3, 0x8E - lsls r3, 1 - adds r1, r5, r3 - ldr r0, _080ACF08 -_080ACEF4: - str r0, [r1] - mov r4, r8 - ldrb r0, [r4, 0x2] - cmp r0, 0 - bne _080ACF0C - ldrb r0, [r7, 0x2] - lsls r0, 11 - str r0, [r5, 0xC] - ldrb r0, [r7, 0x3] - b _080ACF16 - .align 2, 0 -_080ACF08: .4byte 0x220c0000 -_080ACF0C: - mov r1, r8 - ldrb r0, [r1, 0x2] - lsls r0, 11 - str r0, [r5, 0xC] - ldrb r0, [r1, 0x3] -_080ACF16: - lsls r0, 11 - str r0, [r5, 0x10] - ldr r0, [r5, 0xC] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [r5, 0x14] - ldr r0, [r5, 0x10] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [r5, 0x18] - ldrb r0, [r7, 0x1] - strb r0, [r5, 0x1C] - adds r2, r7, 0x4 - adds r4, r5, 0 - adds r4, 0x20 - ldrb r1, [r2, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080ACF5A - ldrb r0, [r7, 0x4] - lsls r3, r0, 11 - str r3, [r5, 0x20] - ldrb r1, [r2, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080ACF5A - movs r1, 0x80 - lsls r1, 3 - adds r0, r3, r1 - str r0, [r5, 0x20] -_080ACF5A: - ldrb r1, [r2, 0x3] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080ACF7C - ldrb r0, [r2, 0x1] - lsls r3, r0, 11 - str r3, [r4, 0x4] - ldrb r1, [r2, 0x3] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080ACF7C - movs r2, 0x80 - lsls r2, 3 - adds r0, r3, r2 - str r0, [r4, 0x4] -_080ACF7C: - ldr r3, [sp, 0xC] - cmp r3, 0 - beq _080ACFD2 - ldrb r1, [r5, 0x1C] - movs r4, 0x90 - lsls r4, 1 - adds r0, r5, r4 - movs r3, 0 - strb r1, [r0] - movs r0, 0x92 - lsls r0, 1 - adds r2, r5, r0 - ldr r0, [r5, 0x20] - ldr r1, [r5, 0x14] - subs r0, r1 - str r0, [r2] - movs r1, 0x96 - lsls r1, 1 - adds r2, r5, r1 - ldr r0, [r5, 0x20] - ldr r1, [r5, 0x14] - adds r0, r1 - str r0, [r2] - adds r4, 0x8 - adds r2, r5, r4 - ldr r0, [r5, 0x24] - ldr r1, [r5, 0x18] - subs r0, r1 - str r0, [r2] - movs r0, 0x98 - lsls r0, 1 - adds r2, r5, r0 - ldr r0, [r5, 0x24] - ldr r1, [r5, 0x18] - adds r0, r1 - str r0, [r2] - movs r2, 0x9A - lsls r2, 1 - adds r1, r5, r2 - adds r4, 0x10 - adds r0, r5, r4 - str r3, [r0] - str r3, [r1] -_080ACFD2: - adds r0, r5, 0 - adds r0, 0x28 - adds r1, r5, 0 - adds r1, 0x30 - bl sub_80A5778 - ldr r0, [sp, 0xC] - cmp r0, 0 - beq _080AD01A - movs r2, 0x9F - lsls r2, 1 - adds r1, r5, r2 - movs r2, 0 - movs r0, 0x80 - lsls r0, 4 - strh r0, [r1] - movs r3, 0x9E - lsls r3, 1 - adds r1, r5, r3 - movs r0, 0x1 - strb r0, [r1] - movs r4, 0xA0 - lsls r4, 1 - adds r0, r5, r4 - strh r2, [r0] - movs r1, 0xA2 - lsls r1, 1 - adds r0, r5, r1 - movs r3, 0x6 - ldrsh r2, [r5, r3] - subs r4, 0x24 - adds r1, r5, r4 - ldr r3, [r1] - adds r1, r6, 0 - bl sub_80A7688 -_080AD01A: - adds r4, r5, 0 - adds r4, 0x38 - ldr r1, _080AD074 - mov r0, r9 - str r0, [sp] - adds r0, r4, 0 - adds r2, r5, 0 - mov r3, r10 - bl sub_809D600 - ldr r2, [r7, 0x8] - cmp r2, 0 - bne _080AD04C - mov r1, r8 - movs r3, 0 - ldrsh r0, [r1, r3] - cmp r0, 0x1 - bne _080AD048 - ldr r0, _080AD078 - movs r1, 0xB0 - lsls r1, 2 - adds r0, r1 - ldr r2, [r0] -_080AD048: - cmp r2, 0 - beq _080AD060 -_080AD04C: - adds r0, r4, 0 - movs r1, 0 - bl sub_809D6D8 - ldr r3, _080AD07C - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - bl sub_809D8C0 -_080AD060: - adds r0, r6, 0 -_080AD062: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AD074: .4byte gUnknown_8118544 -_080AD078: .4byte gUnknown_812F1F8 -_080AD07C: .4byte gUnknown_81186CC - thumb_func_end GroundEffect_Add - - thumb_func_start sub_80AD080 -sub_80AD080: - push {r4,lr} - adds r2, r0, 0 - lsls r2, 16 - asrs r2, 16 - ldr r1, _080AD0BC - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 4 - adds r0, r2 - lsls r0, 2 - ldr r1, [r1] - adds r4, r1, r0 - ldr r1, _080AD0C0 - movs r0, 0 - bl Log - movs r1, 0xA2 - lsls r1, 1 - adds r0, r4, r1 - bl sub_80A7714 - adds r0, r4, 0 - adds r0, 0x38 - bl sub_809D648 - ldr r0, _080AD0C4 - strh r0, [r4, 0x6] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AD0BC: .4byte gUnknown_3001B8C -_080AD0C0: .4byte gUnknown_81186D8 -_080AD0C4: .4byte 0x0000ffff - thumb_func_end sub_80AD080 - - thumb_func_start sub_80AD0C8 -sub_80AD0C8: - push {lr} - adds r3, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AD108 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x6 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080AD102 - movs r1, 0x8E - lsls r1, 1 - adds r0, r2, r1 - ldr r1, [r0] - orrs r1, r3 - str r1, [r0] - movs r3, 0xA2 - lsls r3, 1 - adds r0, r2, r3 - bl sub_80A6688 -_080AD102: - pop {r0} - bx r0 - .align 2, 0 -_080AD108: .4byte gUnknown_3001B8C - thumb_func_end sub_80AD0C8 - - thumb_func_start sub_80AD10C -sub_80AD10C: - push {r4,lr} - adds r4, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AD150 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r3, r0, r1 - movs r0, 0x6 - ldrsh r1, [r3, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080AD14A - movs r0, 0x8E - lsls r0, 1 - adds r2, r3, r0 - ldr r0, _080AD154 - eors r0, r4 - ldr r1, [r2] - ands r1, r0 - str r1, [r2] - movs r2, 0xA2 - lsls r2, 1 - adds r0, r3, r2 - bl sub_80A6688 -_080AD14A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AD150: .4byte gUnknown_3001B8C -_080AD154: .4byte 0x337fffff - thumb_func_end sub_80AD10C - - thumb_func_start sub_80AD158 -sub_80AD158: - push {lr} - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AD180 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x6 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080AD184 - movs r0, 0 - b _080AD188 - .align 2, 0 -_080AD180: .4byte gUnknown_3001B8C -_080AD184: - adds r0, r2, 0 - adds r0, 0x38 -_080AD188: - pop {r1} - bx r1 - thumb_func_end sub_80AD158 - - thumb_func_start sub_80AD18C -sub_80AD18C: - push {r4,lr} - adds r4, r1, 0 - lsls r0, 16 - asrs r0, 16 - lsls r2, 16 - asrs r3, r2, 16 - ldr r2, _080AD1B8 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x6 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080AD1BC - movs r0, 0 - b _080AD1CC - .align 2, 0 -_080AD1B8: .4byte gUnknown_3001B8C -_080AD1BC: - adds r0, r2, 0 - adds r0, 0x38 - adds r1, r4, 0 - adds r2, r3, 0 - bl sub_809D6E4 - lsls r0, 24 - lsrs r0, 24 -_080AD1CC: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80AD18C - - thumb_func_start GroundEffect_ExecuteScript -GroundEffect_ExecuteScript: - push {r4-r6,lr} - adds r3, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - lsls r3, 16 - asrs r3, 16 - ldr r1, _080AD20C - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 4 - adds r0, r3 - lsls r0, 2 - ldr r1, [r1] - adds r4, r1, r0 - ldr r1, _080AD210 - movs r0, 0 - adds r2, r3, 0 - bl Log - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080AD214 - movs r0, 0 - b _080AD22C - .align 2, 0 -_080AD20C: .4byte gUnknown_3001B8C -_080AD210: .4byte gUnknown_81186F4 -_080AD214: - adds r0, r4, 0 - adds r0, 0x38 - ldr r3, _080AD234 - adds r1, r5, 0 - adds r2, r6, 0 - bl GroundScript_ExecutePP - movs r0, 0x9E - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0x1 - strb r0, [r1] -_080AD22C: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080AD234: .4byte gUnknown_811872C - thumb_func_end GroundEffect_ExecuteScript - - thumb_func_start sub_80AD238 -sub_80AD238: - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - asrs r7, r0, 16 - ldr r0, _080AD28C - ldr r4, [r0] - movs r5, 0 - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r6, 0x80 - lsls r6, 9 -_080AD252: - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r0, r8 - beq _080AD26A - adds r0, r4, 0 - adds r0, 0x38 - adds r1, r7, 0 - bl sub_809D968 - orrs r5, r0 - lsls r0, r5, 24 - lsrs r5, r0, 24 -_080AD26A: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r0, 16 - movs r1, 0xE2 - lsls r1, 1 - adds r4, r1 - cmp r0, 0xF - ble _080AD252 - adds r0, r5, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AD28C: .4byte gUnknown_3001B8C - thumb_func_end sub_80AD238 - - thumb_func_start sub_80AD290 -sub_80AD290: - push {r4-r7,lr} - ldr r0, _080AD2D4 - ldr r4, [r0] - movs r5, 0 - movs r7, 0x1 - negs r7, r7 - movs r6, 0x80 - lsls r6, 9 -_080AD2A0: - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r0, r7 - beq _080AD2B6 - adds r0, r4, 0 - adds r0, 0x38 - bl sub_809D92C - orrs r5, r0 - lsls r0, r5, 24 - lsrs r5, r0, 24 -_080AD2B6: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r0, 16 - movs r1, 0xE2 - lsls r1, 1 - adds r4, r1 - cmp r0, 0xF - ble _080AD2A0 - adds r0, r5, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AD2D4: .4byte gUnknown_3001B8C - thumb_func_end sub_80AD290 - - thumb_func_start sub_80AD2D8 -sub_80AD2D8: - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AD2F4 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r0, r1 - movs r1, 0x6 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080AD2F4: .4byte gUnknown_3001B8C - thumb_func_end sub_80AD2D8 - - thumb_func_start sub_80AD2F8 -sub_80AD2F8: - lsls r0, 16 - asrs r0, 16 - ldr r3, _080AD31C - lsls r2, r0, 3 - subs r2, r0 - lsls r2, 4 - adds r2, r0 - lsls r2, 2 - ldr r0, [r3] - adds r0, r2 - movs r3, 0x8E - lsls r3, 1 - adds r2, r0, r3 - ldr r2, [r2] - str r2, [r1] - movs r1, 0x6 - ldrsh r0, [r0, r1] - bx lr - .align 2, 0 -_080AD31C: .4byte gUnknown_3001B8C - thumb_func_end sub_80AD2F8 - - thumb_func_start sub_80AD320 -sub_80AD320: - push {lr} - adds r3, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AD34C - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x6 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080AD350 - movs r0, 0 - str r0, [r3] - str r0, [r3, 0x4] - b _080AD358 - .align 2, 0 -_080AD34C: .4byte gUnknown_3001B8C -_080AD350: - ldr r0, [r2, 0xC] - ldr r1, [r2, 0x10] - str r0, [r3] - str r1, [r3, 0x4] -_080AD358: - movs r1, 0x6 - ldrsh r0, [r2, r1] - pop {r1} - bx r1 - thumb_func_end sub_80AD320 - - thumb_func_start sub_80AD360 -sub_80AD360: - push {lr} - adds r3, r1, 0 - lsls r0, 16 - asrs r0, 16 - ldr r2, _080AD38C - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, [r2] - adds r2, r0, r1 - movs r0, 0x6 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080AD390 - movs r0, 0 - str r0, [r3] - b _080AD3AA - .align 2, 0 -_080AD38C: .4byte gUnknown_3001B8C -_080AD390: - movs r1, 0x92 - lsls r1, 1 - adds r0, r2, r1 - ldr r0, [r0] - ldr r1, [r2, 0x14] - adds r0, r1 - str r0, [r3] - movs r1, 0x94 - lsls r1, 1 - adds r0, r2, r1 - ldr r0, [r0] - ldr r1, [r2, 0x18] - adds r0, r1 -_080AD3AA: - str r0, [r3, 0x4] - movs r1, 0x6 - ldrsh r0, [r2, r1] - pop {r1} - bx r1 - thumb_func_end sub_80AD360 - - thumb_func_start sub_80AD3B4 -sub_80AD3B4: - push {r4,lr} - lsls r0, 16 - asrs r0, 16 - ldr r3, _080AD3DC - lsls r2, r0, 3 - subs r2, r0 - lsls r2, 4 - adds r2, r0 - lsls r2, 2 - ldr r4, [r3] - adds r4, r2 - adds r0, r4, 0 - bl sub_80AD3E0 - movs r1, 0x6 - ldrsh r0, [r4, r1] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080AD3DC: .4byte gUnknown_3001B8C - thumb_func_end sub_80AD3B4 - - thumb_func_start sub_80AD3E0 -sub_80AD3E0: - push {r4-r7,lr} - mov r12, r0 - ldr r3, [r1] - ldr r2, [r0, 0x14] - subs r6, r3, r2 - ldr r1, [r1, 0x4] - ldr r0, [r0, 0x18] - subs r7, r1, r0 - adds r4, r3, r2 - adds r5, r1, r0 - mov r1, r12 - ldr r0, [r1, 0x28] - cmp r6, r0 - blt _080AD40E - ldr r0, [r1, 0x30] - cmp r4, r0 - bge _080AD40E - ldr r0, [r1, 0x2C] - cmp r7, r0 - blt _080AD40E - ldr r0, [r1, 0x34] - cmp r5, r0 - blt _080AD412 -_080AD40E: - movs r0, 0x1 - b _080AD428 -_080AD412: - movs r0, 0x92 - lsls r0, 1 - add r0, r12 - str r6, [r0] - str r7, [r0, 0x4] - movs r0, 0x96 - lsls r0, 1 - add r0, r12 - str r4, [r0] - str r5, [r0, 0x4] - movs r0, 0 -_080AD428: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80AD3E0 - - thumb_func_start sub_80AD430 -sub_80AD430: - push {r4-r6,lr} - mov r12, r0 - movs r0, 0x92 - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - ldr r2, [r1] - adds r5, r0, r2 - movs r0, 0x94 - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - ldr r1, [r1, 0x4] - adds r6, r0, r1 - movs r0, 0x96 - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - adds r3, r0, r2 - movs r0, 0x98 - lsls r0, 1 - add r0, r12 - ldr r0, [r0] - adds r4, r0, r1 - mov r0, r12 - ldr r1, [r0, 0x28] - cmp r5, r1 - bge _080AD470 - adds r5, r1, 0 - ldr r0, [r0, 0xC] - adds r3, r1, r0 - b _080AD47E -_080AD470: - mov r2, r12 - ldr r1, [r2, 0x30] - cmp r3, r1 - blt _080AD47E - ldr r0, [r2, 0xC] - subs r5, r1, r0 - adds r3, r1, 0 -_080AD47E: - mov r0, r12 - ldr r1, [r0, 0x2C] - cmp r6, r1 - bge _080AD48E - adds r6, r1, 0 - ldr r0, [r0, 0x10] - adds r4, r1, r0 - b _080AD49C -_080AD48E: - mov r2, r12 - ldr r1, [r2, 0x34] - cmp r4, r1 - blt _080AD49C - ldr r0, [r2, 0x10] - subs r6, r1, r0 - adds r4, r1, 0 -_080AD49C: - movs r0, 0x92 - lsls r0, 1 - add r0, r12 - str r5, [r0] - str r6, [r0, 0x4] - movs r0, 0x96 - lsls r0, 1 - add r0, r12 - str r3, [r0] - str r4, [r0, 0x4] - movs r0, 0 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80AD430 - - thumb_func_start sub_80AD4B8 -sub_80AD4B8: - movs r1, 0x4 - ldrsh r0, [r0, r1] - bx lr - thumb_func_end sub_80AD4B8 - - thumb_func_start sub_80AD4C0 -sub_80AD4C0: - ldr r2, [r0, 0xC] - ldr r3, [r0, 0x10] - str r2, [r1] - str r3, [r1, 0x4] - bx lr - thumb_func_end sub_80AD4C0 - - thumb_func_start sub_80AD4CC -sub_80AD4CC: - push {r4,lr} - adds r3, r0, 0 - adds r4, r1, 0 - cmp r4, 0 - beq _080AD50C - movs r0, 0x92 - lsls r0, 1 - adds r2, r3, r0 - ldr r1, [r4] - ldr r0, [r3, 0x14] - subs r0, r1, r0 - str r0, [r2] - movs r0, 0x96 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x14] - adds r1, r0 - str r1, [r2] - movs r0, 0x94 - lsls r0, 1 - adds r2, r3, r0 - ldr r1, [r4, 0x4] - ldr r0, [r3, 0x18] - subs r0, r1, r0 - str r0, [r2] - movs r0, 0x98 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x18] - adds r1, r0 - str r1, [r2] - b _080AD572 -_080AD50C: - movs r0, 0x92 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x20] - ldr r1, [r3, 0x14] - subs r0, r1 - str r0, [r2] - movs r0, 0x96 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x20] - ldr r1, [r3, 0x14] - adds r0, r1 - str r0, [r2] - movs r0, 0x94 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x24] - ldr r1, [r3, 0x18] - subs r0, r1 - str r0, [r2] - movs r0, 0x98 - lsls r0, 1 - adds r2, r3, r0 - ldr r0, [r3, 0x24] - ldr r1, [r3, 0x18] - adds r0, r1 - str r0, [r2] - movs r2, 0x9A - lsls r2, 1 - adds r1, r3, r2 - adds r2, 0x4 - adds r0, r3, r2 - str r4, [r0] - str r4, [r1] - movs r0, 0x90 - lsls r0, 1 - adds r2, r3, r0 - movs r1, 0 - ldrsb r1, [r2, r1] - movs r0, 0x1C - ldrsb r0, [r3, r0] - cmp r1, r0 - beq _080AD56E - movs r0, 0x9E - lsls r0, 1 - adds r1, r3, r0 - movs r0, 0x1 - strb r0, [r1] -_080AD56E: - ldrb r0, [r3, 0x1C] - strb r0, [r2] -_080AD572: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AD4CC - - thumb_func_start sub_80AD578 -sub_80AD578: - push {r4,lr} - ldr r3, [r1] - ldr r4, [r1, 0x4] - str r3, [r0, 0x28] - str r4, [r0, 0x2C] - ldr r1, [r2] - ldr r2, [r2, 0x4] - str r1, [r0, 0x30] - str r2, [r0, 0x34] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AD578 - - thumb_func_start sub_80AD590 -sub_80AD590: - adds r3, r0, 0 - movs r2, 0x92 - lsls r2, 1 - adds r0, r3, r2 - ldr r0, [r0] - ldr r2, [r3, 0x14] - adds r0, r2 - str r0, [r1] - movs r2, 0x94 - lsls r2, 1 - adds r0, r3, r2 - ldr r0, [r0] - ldr r2, [r3, 0x18] - adds r0, r2 - str r0, [r1, 0x4] - bx lr - thumb_func_end sub_80AD590 - - thumb_func_start sub_80AD5B0 -sub_80AD5B0: - push {lr} - bl sub_80AD3E0 - pop {r1} - bx r1 - thumb_func_end sub_80AD5B0 - - thumb_func_start sub_80AD5BC -sub_80AD5BC: - push {r4,lr} - adds r3, r0, 0 - movs r4, 0x9A - lsls r4, 1 - adds r0, r3, r4 - ldr r0, [r0] - str r0, [r1] - movs r1, 0x9C - lsls r1, 1 - adds r0, r3, r1 - ldr r0, [r0] - str r0, [r2] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AD5BC - - thumb_func_start sub_80AD5DC -sub_80AD5DC: - movs r2, 0x9A - lsls r2, 1 - adds r0, r2 - str r1, [r0] - bx lr - thumb_func_end sub_80AD5DC - - thumb_func_start sub_80AD5E8 -sub_80AD5E8: - movs r2, 0x90 - lsls r2, 1 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - bx lr - thumb_func_end sub_80AD5E8 - - thumb_func_start sub_80AD5F4 -sub_80AD5F4: - push {lr} - adds r2, r0, 0 - lsls r1, 24 - asrs r1, 24 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _080AD60C - movs r3, 0x90 - lsls r3, 1 - adds r0, r2, r3 - strb r1, [r0] -_080AD60C: - pop {r0} - bx r0 - thumb_func_end sub_80AD5F4 - - thumb_func_start sub_80AD610 -sub_80AD610: - push {r4,r5,lr} - lsls r1, 16 - adds r3, r0, 0 - movs r0, 0xFF - lsls r0, 16 - ands r0, r1 - lsrs r0, 16 - cmp r0, 0 - beq _080AD630 - ldr r1, _080AD62C - lsls r0, 1 - adds r0, r1 - b _080AD636 - .align 2, 0 -_080AD62C: .4byte gUnknown_81185F2 -_080AD630: - movs r5, 0x9F - lsls r5, 1 - adds r0, r3, r5 -_080AD636: - movs r1, 0 - ldrsh r2, [r0, r1] - movs r5, 0x9F - lsls r5, 1 - adds r1, r3, r5 - ldrh r4, [r1] - movs r5, 0 - ldrsh r0, [r1, r5] - cmp r0, r2 - beq _080AD654 - strh r2, [r1] - movs r0, 0x9E - lsls r0, 1 - adds r1, r3, r0 - b _080AD664 -_080AD654: - movs r0, 0x80 - lsls r0, 5 - ands r0, r4 - cmp r0, 0 - beq _080AD668 - movs r5, 0x9E - lsls r5, 1 - adds r1, r3, r5 -_080AD664: - movs r0, 0x1 - strb r0, [r1] -_080AD668: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80AD610 - - thumb_func_start sub_80AD670 -sub_80AD670: - push {lr} - lsls r1, 16 - asrs r1, 16 - adds r2, r1, 0 - cmp r1, 0 - bne _080AD682 - movs r1, 0xE0 - lsls r1, 1 - adds r2, r1, 0 -_080AD682: - movs r1, 0xA0 - lsls r1, 1 - adds r0, r1 - strh r2, [r0] - pop {r0} - bx r0 - thumb_func_end sub_80AD670 - - thumb_func_start sub_80AD690 -sub_80AD690: - push {lr} - adds r1, r0, 0 - movs r2, 0x9E - lsls r2, 1 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080AD6AE - adds r2, 0x8 - adds r0, r1, r2 - bl sub_80A66F8 - lsls r0, 24 - lsrs r0, 24 - b _080AD6B0 -_080AD6AE: - movs r0, 0x1 -_080AD6B0: - pop {r1} - bx r1 - thumb_func_end sub_80AD690 - - thumb_func_start sub_80AD6B4 -sub_80AD6B4: - push {lr} - adds r1, r0, 0 - movs r2, 0xA0 - lsls r2, 1 - adds r0, r1, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - bne _080AD6D6 - movs r2, 0xA2 - lsls r2, 1 - adds r0, r1, r2 - bl sub_80A671C - lsls r0, 24 - lsrs r0, 24 - b _080AD6D8 -_080AD6D6: - movs r0, 0x1 -_080AD6D8: - pop {r1} - bx r1 - thumb_func_end sub_80AD6B4 - - thumb_func_start sub_80AD6DC -sub_80AD6DC: - movs r2, 0x8E - lsls r2, 1 - adds r0, r2 - ldr r0, [r0] - str r0, [r1] - bx lr - thumb_func_end sub_80AD6DC - - thumb_func_start sub_80AD6E8 -sub_80AD6E8: - push {lr} - movs r2, 0x4 - ldrsh r0, [r0, r2] - bl sub_80AD0C8 - pop {r0} - bx r0 - thumb_func_end sub_80AD6E8 - - thumb_func_start sub_80AD6F8 -sub_80AD6F8: - push {lr} - movs r2, 0x4 - ldrsh r0, [r0, r2] - bl sub_80AD10C - pop {r0} - bx r0 - thumb_func_end sub_80AD6F8 - - thumb_func_start sub_80AD708 -sub_80AD708: - push {lr} - bl sub_80AD430 - pop {r1} - bx r1 - thumb_func_end sub_80AD708 - - thumb_func_start GroundEffect_Action -GroundEffect_Action: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, _080AD754 - ldr r5, [r0] - movs r7, 0 - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r1, 0x9E - lsls r1, 1 - adds r6, r5, r1 -_080AD72C: - movs r3, 0x6 - ldrsh r0, [r5, r3] - cmp r0, r8 - beq _080AD78A - adds r4, r5, 0 - adds r4, 0x38 - adds r0, r4, 0 - ldr r1, _080AD758 - bl HandleAction - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - beq _080AD75C - cmp r0, 0x4 - bne _080AD768 - adds r0, r7, 0 - bl sub_80AD080 - b _080AD78A - .align 2, 0 -_080AD754: .4byte gUnknown_3001B8C -_080AD758: .4byte gUnknown_811874C -_080AD75C: - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x1 - ldr r3, _080AD7A8 - bl sub_809D8C0 -_080AD768: - ldrb r0, [r6] - cmp r0, 0 - beq _080AD78A - movs r0, 0 - strb r0, [r6] - movs r1, 0xA2 - lsls r1, 1 - adds r0, r5, r1 - ldrh r2, [r6, 0x2] - movs r3, 0xF8 - lsls r3, 5 - adds r1, r3, 0 - ands r1, r2 - lsls r2, 24 - asrs r2, 24 - bl sub_80A6EFC -_080AD78A: - adds r0, r7, 0x1 - lsls r0, 16 - asrs r7, r0, 16 - movs r0, 0xE2 - lsls r0, 1 - adds r6, r0 - adds r5, r0 - cmp r7, 0xF - ble _080AD72C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AD7A8: .4byte gUnknown_8118758 - thumb_func_end GroundEffect_Action - - thumb_func_start sub_80AD7AC -sub_80AD7AC: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - ldr r0, _080AD864 - ldr r6, [r0] - movs r0, 0 - mov r8, r0 - movs r1, 0x1 - negs r1, r1 - mov r9, r1 - movs r2, 0x90 - lsls r2, 1 - adds r4, r6, r2 -_080AD7CA: - movs r0, 0x6 - ldrsh r1, [r6, r0] - mov r2, r9 - lsls r0, r2, 16 - asrs r0, 16 - cmp r1, r0 - beq _080AD83C - ldr r0, [r4, 0x4] - ldr r1, [r6, 0x14] - adds r0, r1 - str r0, [sp] - ldr r0, [r4, 0x8] - ldr r1, [r6, 0x18] - adds r0, r1 - str r0, [sp, 0x4] - ldr r1, [r4, 0x14] - ldr r0, [r4, 0x18] - adds r7, r1, r0 - movs r0, 0xA2 - lsls r0, 1 - adds r5, r6, r0 - adds r0, r5, 0 - bl sub_80A66D4 - lsls r0, 24 - cmp r0, 0 - beq _080AD818 - movs r0, 0 - strb r0, [r4, 0x1C] - ldrh r2, [r4, 0x1E] - movs r0, 0xF8 - lsls r0, 5 - adds r1, r0, 0 - ands r1, r2 - lsls r2, 24 - asrs r2, 24 - adds r0, r5, 0 - bl sub_80A6EFC -_080AD818: - movs r1, 0x20 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _080AD832 - adds r1, r0, 0 - movs r2, 0 - ldrsb r2, [r4, r2] - adds r0, r5, 0 - movs r3, 0 - bl sub_80A7040 - movs r0, 0 - strh r0, [r4, 0x20] -_080AD832: - adds r0, r5, 0 - mov r1, sp - adds r2, r7, 0 - bl sub_80A7720 -_080AD83C: - mov r0, r8 - adds r0, 0x1 - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - movs r0, 0xE2 - lsls r0, 1 - adds r4, r0 - adds r6, r0 - mov r1, r8 - cmp r1, 0xF - ble _080AD7CA - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AD864: .4byte gUnknown_3001B8C - thumb_func_end sub_80AD7AC - - thumb_func_start sub_80AD868 -sub_80AD868: - ldr r1, _080AD870 - movs r0, 0 - str r0, [r1] - bx lr - .align 2, 0 -_080AD870: .4byte gUnknown_203B4B8 - thumb_func_end sub_80AD868 - - thumb_func_start sub_80AD874 -sub_80AD874: - ldr r1, _080AD87C - movs r0, 0 - str r0, [r1] - bx lr - .align 2, 0 -_080AD87C: .4byte gUnknown_203B4B8 - thumb_func_end sub_80AD874 - - thumb_func_start GroundLink_Select -GroundLink_Select: - push {lr} - lsls r0, 16 - asrs r0, 16 - ldr r1, _080AD898 - bl sub_80A77D0 - ldr r1, _080AD89C - ldr r0, [r0, 0x8] - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_080AD898: .4byte gUnknown_8118798 -_080AD89C: .4byte gUnknown_203B4B8 - thumb_func_end GroundLink_Select - - thumb_func_start sub_80AD8A0 -sub_80AD8A0: - lsls r0, 16 - ldr r1, _080AD8B0 - asrs r0, 13 - ldr r1, [r1] - adds r1, r0 - adds r0, r1, 0 - bx lr - .align 2, 0 -_080AD8B0: .4byte gUnknown_203B4B8 - thumb_func_end sub_80AD8A0 - - thumb_func_start sub_80AD8B4 -sub_80AD8B4: - push {r4,lr} - adds r4, r1, 0 - lsls r0, 16 - ldr r1, _080AD910 - asrs r0, 13 - ldr r1, [r1] - adds r2, r1, r0 - ldrb r1, [r2, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080AD8E4 - ldrb r0, [r2] - lsls r3, r0, 11 - str r3, [r4] - ldrb r1, [r2, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080AD8E4 - movs r1, 0x80 - lsls r1, 3 - adds r0, r3, r1 - str r0, [r4] -_080AD8E4: - ldrb r1, [r2, 0x3] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080AD906 - ldrb r0, [r2, 0x1] - lsls r3, r0, 11 - str r3, [r4, 0x4] - ldrb r1, [r2, 0x3] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080AD906 - movs r1, 0x80 - lsls r1, 3 - adds r0, r3, r1 - str r0, [r4, 0x4] -_080AD906: - ldrb r0, [r2, 0x6] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080AD910: .4byte gUnknown_203B4B8 - thumb_func_end sub_80AD8B4 - - thumb_func_start sub_80AD914 -sub_80AD914: - push {r4,r5,lr} - adds r4, r1, 0 - adds r5, r2, 0 - lsls r0, 16 - ldr r1, _080AD98C - asrs r0, 13 - ldr r1, [r1] - adds r2, r1, r0 - ldr r0, [r3] - ldr r1, [r3, 0x4] - str r0, [r4] - str r1, [r4, 0x4] - ldrb r1, [r2, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080AD94E - ldrb r0, [r2] - lsls r3, r0, 11 - str r3, [r4] - ldrb r1, [r2, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080AD94E - movs r1, 0x80 - lsls r1, 3 - adds r0, r3, r1 - str r0, [r4] -_080AD94E: - ldrb r1, [r2, 0x3] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080AD970 - ldrb r0, [r2, 0x1] - lsls r3, r0, 11 - str r3, [r4, 0x4] - ldrb r1, [r2, 0x3] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080AD970 - movs r1, 0x80 - lsls r1, 3 - adds r0, r3, r1 - str r0, [r4, 0x4] -_080AD970: - ldrb r1, [r2, 0x4] - lsls r1, 11 - ldr r0, [r4] - adds r0, r1 - str r0, [r5] - ldrb r1, [r2, 0x5] - lsls r1, 11 - ldr r0, [r4, 0x4] - adds r0, r1 - str r0, [r5, 0x4] - ldrb r0, [r2, 0x6] - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080AD98C: .4byte gUnknown_203B4B8 - thumb_func_end sub_80AD914 - - thumb_func_start sub_80AD990 -sub_80AD990: - push {r4,lr} - ldr r4, _080AD9C8 - movs r0, 0x80 - lsls r0, 3 - movs r1, 0x6 - bl MemoryAlloc - str r0, [r4] - adds r1, r0, 0 - ldr r0, _080AD9CC - adds r4, r0, 0 - movs r2, 0x80 - lsls r2, 9 - adds r3, r2, 0 -_080AD9AC: - ldrh r0, [r1, 0x2] - orrs r0, r4 - strh r0, [r1, 0x2] - adds r0, r2, 0 - adds r2, r3 - asrs r0, 16 - adds r1, 0x20 - cmp r0, 0x1F - ble _080AD9AC - bl sub_80AD9D0 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AD9C8: .4byte gUnknown_3001B90 -_080AD9CC: .4byte 0x0000ffff - thumb_func_end sub_80AD990 - - thumb_func_start sub_80AD9D0 -sub_80AD9D0: - push {r4-r6,lr} - ldr r0, _080ADA04 - ldr r4, [r0] - movs r1, 0 - movs r6, 0x1 - negs r6, r6 - movs r5, 0x80 - lsls r5, 9 -_080AD9E0: - movs r2, 0x2 - ldrsh r0, [r4, r2] - cmp r0, r6 - beq _080AD9EE - adds r0, r1, 0 - bl GroundEvent_Delete -_080AD9EE: - adds r0, r5, 0 - movs r1, 0x80 - lsls r1, 9 - adds r5, r1 - asrs r1, r0, 16 - adds r4, 0x20 - cmp r1, 0x1F - ble _080AD9E0 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080ADA04: .4byte gUnknown_3001B90 - thumb_func_end sub_80AD9D0 - - thumb_func_start sub_80ADA08 -sub_80ADA08: - push {r4,lr} - bl sub_80AD9D0 - ldr r4, _080ADA20 - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADA20: .4byte gUnknown_3001B90 - thumb_func_end sub_80ADA08 - - thumb_func_start GroundEvent_Select -GroundEvent_Select: - push {r4-r7,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 16 - asrs r4, 16 - lsls r1, 16 - asrs r7, r1, 16 - lsls r2, 24 - asrs r6, r2, 24 - ldr r1, _080ADA88 - adds r0, r4, 0 - bl sub_80A77D0 - adds r5, r0, 0 - ldr r1, _080ADA8C - str r6, [sp] - movs r0, 0 - adds r2, r4, 0 - adds r3, r7, 0 - bl Log - lsls r1, r7, 3 - ldr r0, [r5, 0x4] - adds r0, r1 - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - ldr r0, [r0, 0x4] - adds r0, r1 - ldr r5, [r0, 0x1C] - ldr r0, [r0, 0x18] - cmp r0, 0 - ble _080ADA7E - adds r4, r0, 0 -_080ADA68: - movs r0, 0x1 - negs r0, r0 - adds r1, r5, 0 - adds r2, r7, 0 - adds r3, r6, 0 - bl GroundEvent_Add - subs r4, 0x1 - adds r5, 0xC - cmp r4, 0 - bne _080ADA68 -_080ADA7E: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ADA88: .4byte gUnknown_81187DC -_080ADA8C: .4byte gUnknown_81187E8 - thumb_func_end GroundEvent_Select - - thumb_func_start GroundEvent_Cancel -GroundEvent_Cancel: - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - asrs r7, r0, 16 - lsls r1, 24 - asrs r5, r1, 24 - ldr r1, _080ADAF8 - movs r0, 0 - adds r2, r7, 0 - adds r3, r5, 0 - bl Log - movs r1, 0 - ldr r0, _080ADAFC - ldr r4, [r0] - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r6, 0x80 - lsls r6, 9 -_080ADABA: - movs r2, 0x2 - ldrsh r0, [r4, r2] - cmp r0, r8 - beq _080ADADC - movs r2, 0x4 - ldrsh r0, [r4, r2] - cmp r0, r7 - bne _080ADADC - cmp r5, 0 - blt _080ADAD6 - movs r0, 0x6 - ldrsb r0, [r4, r0] - cmp r0, r5 - bne _080ADADC -_080ADAD6: - adds r0, r1, 0 - bl GroundEvent_Delete -_080ADADC: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r1, r0, 16 - adds r4, 0x20 - cmp r1, 0x1F - ble _080ADABA - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ADAF8: .4byte gUnknown_811880C -_080ADAFC: .4byte gUnknown_3001B90 - thumb_func_end GroundEvent_Cancel - - thumb_func_start GroundEvent_Add -GroundEvent_Add: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x14 - mov r8, r1 - lsls r0, 16 - asrs r7, r0, 16 - lsls r2, 16 - asrs r6, r2, 16 - lsls r3, 24 - asrs r3, 24 - mov r9, r3 - ldr r5, [r1, 0x8] - cmp r7, 0 - bge _080ADB60 - ldr r0, _080ADB38 - ldr r4, [r0] - movs r2, 0 - movs r0, 0x2 - ldrsh r1, [r4, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080ADB3C - movs r7, 0 - b _080ADB68 - .align 2, 0 -_080ADB38: .4byte gUnknown_3001B90 -_080ADB3C: - adds r0, r2, 0x1 - lsls r0, 16 - asrs r2, r0, 16 - adds r4, 0x20 - cmp r2, 0x1F - bgt _080ADB56 - movs r3, 0x2 - ldrsh r1, [r4, r3] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080ADB3C - adds r7, r2, 0 -_080ADB56: - cmp r7, 0 - bge _080ADB68 - movs r0, 0x1 - negs r0, r0 - b _080ADC24 -_080ADB60: - ldr r0, _080ADBA0 - lsls r1, r7, 5 - ldr r0, [r0] - adds r4, r0, r1 -_080ADB68: - ldr r1, _080ADBA4 - movs r0, 0 - ldrsh r3, [r5, r0] - str r6, [sp] - mov r2, r9 - str r2, [sp, 0x4] - mov r2, r8 - ldr r0, [r2, 0x8] - ldr r0, [r0, 0x8] - str r0, [sp, 0x8] - movs r0, 0 - adds r2, r7, 0 - bl Log - strh r7, [r4] - ldrh r0, [r5] - strh r0, [r4, 0x2] - strh r6, [r4, 0x4] - mov r3, r9 - strb r3, [r4, 0x6] - movs r6, 0x2 - ldrsh r0, [r5, r6] - cmp r0, 0x1 - blt _080ADBA8 - cmp r0, 0x2 - bgt _080ADBA8 - movs r0, 0x60 - b _080ADBAA - .align 2, 0 -_080ADBA0: .4byte gUnknown_3001B90 -_080ADBA4: .4byte gUnknown_8118828 -_080ADBA8: - movs r0, 0x20 -_080ADBAA: - str r0, [r4, 0x8] - mov r3, r8 - ldrb r0, [r3] - lsls r1, r0, 11 - ldrb r0, [r3, 0x1] - lsls r2, r0, 11 - mov r5, r8 - adds r5, 0x4 - add r6, sp, 0xC - mov r12, r6 - ldrb r6, [r5, 0x2] - movs r0, 0x4 - ands r0, r6 - cmp r0, 0 - bne _080ADBDE - ldrb r0, [r3, 0x4] - lsls r3, r0, 11 - str r3, [sp, 0xC] - movs r0, 0x2 - ands r0, r6 - cmp r0, 0 - beq _080ADBDE - movs r6, 0x80 - lsls r6, 3 - adds r0, r3, r6 - str r0, [sp, 0xC] -_080ADBDE: - ldrb r6, [r5, 0x3] - movs r0, 0x4 - ands r0, r6 - cmp r0, 0 - bne _080ADC02 - ldrb r0, [r5, 0x1] - lsls r3, r0, 11 - mov r0, r12 - str r3, [r0, 0x4] - movs r0, 0x2 - ands r0, r6 - cmp r0, 0 - beq _080ADC02 - movs r5, 0x80 - lsls r5, 3 - adds r0, r3, r5 - mov r6, r12 - str r0, [r6, 0x4] -_080ADC02: - ldr r0, [sp, 0xC] - str r0, [r4, 0xC] - ldr r0, [sp, 0xC] - adds r0, r1 - str r0, [r4, 0x14] - ldr r0, [sp, 0x10] - str r0, [r4, 0x10] - ldr r0, [sp, 0x10] - adds r0, r2 - str r0, [r4, 0x18] - mov r1, r8 - ldr r0, [r1, 0x8] - ldr r0, [r0, 0x8] - str r0, [r4, 0x1C] - bl sub_80A7A78 - adds r0, r7, 0 -_080ADC24: - add sp, 0x14 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end GroundEvent_Add - - thumb_func_start GroundEvent_Delete -GroundEvent_Delete: - push {r4,lr} - adds r2, r0, 0 - lsls r2, 16 - asrs r2, 16 - ldr r0, _080ADC58 - lsls r1, r2, 5 - ldr r4, [r0] - adds r4, r1 - ldr r1, _080ADC5C - movs r0, 0 - bl Log - ldr r0, _080ADC60 - strh r0, [r4, 0x2] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADC58: .4byte gUnknown_3001B90 -_080ADC5C: .4byte gUnknown_811886C -_080ADC60: .4byte 0x0000ffff - thumb_func_end GroundEvent_Delete - - thumb_func_start sub_80ADC64 -sub_80ADC64: - push {lr} - adds r3, r1, 0 - lsls r0, 16 - ldr r1, _080ADC84 - asrs r0, 11 - ldr r1, [r1] - adds r2, r1, r0 - movs r0, 0x2 - ldrsh r1, [r2, r0] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080ADC88 - movs r0, 0 - b _080ADC9A - .align 2, 0 -_080ADC84: .4byte gUnknown_3001B90 -_080ADC88: - ldr r0, [r2, 0x1C] - str r0, [r3] - movs r0, 0x2 - strh r0, [r3, 0x4] - ldrh r0, [r2, 0x4] - strh r0, [r3, 0x6] - ldrb r0, [r2, 0x6] - strb r0, [r3, 0x8] - movs r0, 0x1 -_080ADC9A: - pop {r1} - bx r1 - thumb_func_end sub_80ADC64 - - thumb_func_start sub_80ADCA0 -sub_80ADCA0: - push {r4-r7,lr} - adds r7, r0, 0 - adds r4, r1, 0 - ldr r0, _080ADCEC - ldr r3, [r0] - movs r5, 0 - movs r0, 0x1 - negs r0, r0 - mov r12, r0 - movs r6, 0x80 - lsls r6, 9 -_080ADCB6: - movs r1, 0x2 - ldrsh r0, [r3, r1] - cmp r0, r12 - beq _080ADCF0 - ldr r0, [r3, 0x8] - ands r0, r7 - cmp r0, 0 - beq _080ADCF0 - ldr r1, [r3, 0xC] - ldr r0, [r2] - cmp r1, r0 - bge _080ADCF0 - ldr r1, [r3, 0x14] - ldr r0, [r4] - cmp r1, r0 - ble _080ADCF0 - ldr r1, [r3, 0x10] - ldr r0, [r2, 0x4] - cmp r1, r0 - bge _080ADCF0 - ldr r1, [r3, 0x18] - ldr r0, [r4, 0x4] - cmp r1, r0 - ble _080ADCF0 - adds r0, r5, 0 - b _080ADD04 - .align 2, 0 -_080ADCEC: .4byte gUnknown_3001B90 -_080ADCF0: - adds r0, r6, 0 - movs r1, 0x80 - lsls r1, 9 - adds r6, r1 - asrs r5, r0, 16 - adds r3, 0x20 - cmp r5, 0x1F - ble _080ADCB6 - movs r0, 0x1 - negs r0, r0 -_080ADD04: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80ADCA0 - - thumb_func_start sub_80ADD0C -sub_80ADD0C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r8, r0 - adds r6, r1, 0 - adds r5, r2, 0 - ldr r0, _080ADD74 - ldr r4, [r0] - movs r7, 0 - movs r0, 0x1 - negs r0, r0 - mov r9, r0 - movs r1, 0x80 - lsls r1, 9 - mov r12, r1 -_080ADD2C: - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, r9 - beq _080ADD78 - ldr r0, [r4, 0x8] - mov r1, r8 - ands r0, r1 - cmp r0, 0 - beq _080ADD78 - ldr r0, [r4, 0xC] - ldr r1, [r4, 0x14] - adds r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r2, r0, 1 - ldr r0, [r4, 0x10] - ldr r1, [r4, 0x18] - adds r0, r1 - lsrs r1, r0, 31 - adds r0, r1 - asrs r3, r0, 1 - ldr r0, [r5] - cmp r2, r0 - bge _080ADD78 - ldr r0, [r6] - cmp r2, r0 - ble _080ADD78 - ldr r0, [r5, 0x4] - cmp r3, r0 - bge _080ADD78 - ldr r0, [r6, 0x4] - cmp r3, r0 - ble _080ADD78 - adds r0, r7, 0 - b _080ADD8C - .align 2, 0 -_080ADD74: .4byte gUnknown_3001B90 -_080ADD78: - mov r0, r12 - movs r1, 0x80 - lsls r1, 9 - add r12, r1 - asrs r7, r0, 16 - adds r4, 0x20 - cmp r7, 0x1F - ble _080ADD2C - movs r0, 0x1 - negs r0, r0 -_080ADD8C: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80ADD0C - - thumb_func_start nullsub_124 -nullsub_124: - bx lr - thumb_func_end nullsub_124 - - thumb_func_start sub_80ADD9C -sub_80ADD9C: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - str r0, [sp, 0x20] - str r1, [sp, 0x24] - str r2, [sp, 0x28] - str r3, [sp, 0x2C] - ldr r5, [sp, 0x54] - ldr r0, [sp, 0x5C] - mov r9, r0 - movs r0, 0x93 - lsls r0, 4 - movs r1, 0x7 - bl MemoryAlloc - mov r10, r0 - ldr r0, _080ADEB4 - ldr r7, _080ADEB8 - adds r1, r7, 0 - bl OpenFileAndGetFileDataPtr - adds r6, r0, 0 - add r4, sp, 0x1C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80901D8 - ldrb r5, [r4] - ldrb r4, [r4, 0x1] - cmp r5, 0x3E - bls _080ADDE2 - movs r5, 0x3E -_080ADDE2: - cmp r4, 0 - bgt _080ADDE8 - movs r4, 0x1 -_080ADDE8: - adds r0, r5, 0 - bl sub_8090298 - cmp r4, r0 - blt _080ADDFA - adds r0, r5, 0 - bl sub_8090298 - subs r4, r0, 0x1 -_080ADDFA: - ldr r2, [r6, 0x4] - ldr r1, [r2] - lsls r0, r5, 2 - adds r0, r1 - lsls r1, r4, 4 - ldr r0, [r0] - adds r0, r1 - movs r3, 0 - ldrsh r1, [r0, r3] - ldr r2, [r2, 0x4] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x2] - mov r8, r0 - adds r0, r6, 0 - bl CloseFile - ldr r1, _080ADEBC - ldr r0, _080ADEC0 - add r0, r8 - ldrb r5, [r0] - add r0, sp, 0x10 - adds r2, r5, 0 - bl sprintf - add r0, sp, 0x10 - adds r1, r7, 0 - bl OpenFileAndGetFileDataPtr - adds r4, r0, 0 - ldr r0, [sp, 0x28] - movs r1, 0 - adds r2, r4, 0 - bl sub_800AE28 - adds r0, r4, 0 - bl CloseFile - ldr r1, _080ADEC4 - add r0, sp, 0x10 - mov r2, r8 - bl sprintf - add r0, sp, 0x10 - adds r1, r7, 0 - bl OpenFile - ldr r1, [sp, 0x20] - str r0, [r1] - ldr r1, _080ADEC8 - add r0, sp, 0x10 - adds r2, r5, 0 - bl sprintf - add r0, sp, 0x10 - adds r1, r7, 0 - bl OpenFileAndGetFileDataPtr - adds r4, r0, 0 - ldr r1, _080ADECC - ldr r0, [sp, 0x2C] - adds r2, r4, 0 - bl sub_800AAA8 - adds r0, r4, 0 - bl CloseFile - mov r2, r8 - cmp r2, 0x3F - bgt _080ADED4 - ldr r1, _080ADED0 - add r0, sp, 0x10 - adds r2, r5, 0 - bl sprintf - add r0, sp, 0x10 - adds r1, r7, 0 - bl OpenFileAndGetFileDataPtr - adds r4, r0, 0 - mov r0, r10 - movs r1, 0x93 - lsls r1, 4 - adds r2, r4, 0 - bl sub_800AAA8 - adds r0, r4, 0 - bl CloseFile - b _080ADEFC - .align 2, 0 -_080ADEB4: .4byte gUnknown_8118890 -_080ADEB8: .4byte gUnknown_83B0000 -_080ADEBC: .4byte gUnknown_811889C -_080ADEC0: .4byte gUnknown_8108EC0 -_080ADEC4: .4byte gUnknown_81188A8 -_080ADEC8: .4byte gUnknown_81188B4 -_080ADECC: .4byte 0x00001194 -_080ADED0: .4byte gUnknown_81188C0 -_080ADED4: - ldr r1, _080ADF80 - add r0, sp, 0x10 - mov r2, r8 - ldr r3, [sp, 0x58] - bl sprintf - add r0, sp, 0x10 - adds r1, r7, 0 - bl OpenFileAndGetFileDataPtr - adds r4, r0, 0 - movs r1, 0x90 - lsls r1, 2 - mov r0, r10 - adds r2, r4, 0 - bl sub_800AAA8 - adds r0, r4, 0 - bl CloseFile -_080ADEFC: - movs r5, 0 - ldr r3, [sp, 0x60] - cmp r5, r3 - bge _080ADF52 -_080ADF04: - mov r0, r8 - bl sub_8097F40 - lsls r0, 24 - movs r7, 0 - cmp r0, 0 - beq _080ADF14 - movs r7, 0x3 -_080ADF14: - movs r4, 0 - adds r6, r5, 0x1 - cmp r4, r9 - bge _080ADF4A -_080ADF1C: - ldr r0, [sp, 0x64] - str r0, [sp] - str r7, [sp, 0x4] - mov r1, r10 - str r1, [sp, 0x8] - mov r2, r8 - str r2, [sp, 0xC] - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, r9 - ldr r3, [sp, 0x60] - bl sub_80ADFB8 - mov r1, r9 - muls r1, r5 - adds r1, r4 - lsls r1, 1 - ldr r3, [sp, 0x50] - adds r1, r3 - strh r0, [r1] - adds r4, 0x1 - cmp r4, r9 - blt _080ADF1C -_080ADF4A: - adds r5, r6, 0 - ldr r0, [sp, 0x60] - cmp r5, r0 - blt _080ADF04 -_080ADF52: - ldr r1, _080ADF84 - add r0, sp, 0x10 - mov r2, r8 - bl sprintf - ldr r1, _080ADF88 - add r0, sp, 0x10 - bl OpenFile - ldr r1, [sp, 0x24] - str r0, [r1] - mov r0, r10 - bl MemoryFree - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ADF80: .4byte gUnknown_81188CC -_080ADF84: .4byte gUnknown_81188DC -_080ADF88: .4byte gUnknown_83B0000 - thumb_func_end sub_80ADD9C - - thumb_func_start sub_80ADF8C -sub_80ADF8C: - push {r4,lr} - adds r4, r0, 0 - ldr r0, [sp, 0xC] - cmp r4, 0 - blt _080ADFB0 - cmp r1, 0 - blt _080ADFB0 - cmp r4, r2 - bge _080ADFB0 - cmp r1, r3 - bge _080ADFB0 - adds r0, r1, 0 - muls r0, r2 - adds r0, r4, r0 - lsls r0, 1 - ldr r1, [sp, 0x8] - adds r0, r1 - ldrh r0, [r0] -_080ADFB0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80ADF8C - - thumb_func_start sub_80ADFB8 -sub_80ADFB8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - mov r9, r0 - mov r10, r1 - adds r6, r2, 0 - mov r8, r3 - ldr r4, [sp, 0x5C] - movs r7, 0 - ldr r0, [sp, 0x50] - str r0, [sp] - ldr r1, [sp, 0x54] - str r1, [sp, 0x4] - mov r0, r9 - mov r1, r10 - bl sub_80ADF8C - str r0, [sp, 0x28] - cmp r4, 0x3F - ble _080AE000 - mov r0, r9 - cmp r0, 0x17 - bgt _080ADFFC - mov r1, r10 - cmp r1, 0x17 - bgt _080ADFFC - lsls r0, r1, 1 - add r0, r10 - lsls r0, 3 - add r0, r9 - b _080AE24E -_080ADFFC: - ldr r0, [sp, 0x54] - b _080AE254 -_080AE000: - mov r0, r10 - adds r0, 0x1 - str r0, [sp, 0x2C] - ldr r1, [sp, 0x50] - str r1, [sp] - ldr r0, [sp, 0x54] - str r0, [sp, 0x4] - mov r0, r9 - ldr r1, [sp, 0x2C] - adds r2, r6, 0 - mov r3, r8 - bl sub_80ADF8C - str r0, [sp, 0x8] - mov r4, r9 - adds r4, 0x1 - ldr r1, [sp, 0x50] - str r1, [sp] - ldr r0, [sp, 0x54] - str r0, [sp, 0x4] - adds r0, r4, 0 - ldr r1, [sp, 0x2C] - adds r2, r6, 0 - mov r3, r8 - bl sub_80ADF8C - str r0, [sp, 0xC] - ldr r1, [sp, 0x50] - str r1, [sp] - ldr r0, [sp, 0x54] - str r0, [sp, 0x4] - adds r0, r4, 0 - mov r1, r10 - adds r2, r6, 0 - mov r3, r8 - bl sub_80ADF8C - str r0, [sp, 0x10] - mov r5, r10 - subs r5, 0x1 - ldr r1, [sp, 0x50] - str r1, [sp] - ldr r0, [sp, 0x54] - str r0, [sp, 0x4] - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - mov r3, r8 - bl sub_80ADF8C - str r0, [sp, 0x14] - ldr r1, [sp, 0x50] - str r1, [sp] - ldr r0, [sp, 0x54] - str r0, [sp, 0x4] - mov r0, r9 - adds r1, r5, 0 - adds r2, r6, 0 - mov r3, r8 - bl sub_80ADF8C - str r0, [sp, 0x18] - subs r4, 0x2 - ldr r1, [sp, 0x50] - str r1, [sp] - ldr r0, [sp, 0x54] - str r0, [sp, 0x4] - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - mov r3, r8 - bl sub_80ADF8C - str r0, [sp, 0x1C] - ldr r1, [sp, 0x50] - str r1, [sp] - ldr r0, [sp, 0x54] - str r0, [sp, 0x4] - adds r0, r4, 0 - mov r1, r10 - adds r2, r6, 0 - mov r3, r8 - bl sub_80ADF8C - str r0, [sp, 0x20] - ldr r1, [sp, 0x50] - str r1, [sp] - ldr r0, [sp, 0x54] - str r0, [sp, 0x4] - adds r0, r4, 0 - ldr r1, [sp, 0x2C] - adds r2, r6, 0 - mov r3, r8 - bl sub_80ADF8C - adds r1, r0, 0 - str r1, [sp, 0x24] - ldr r0, [sp, 0x28] - cmp r0, 0x1 - bne _080AE12A - movs r7, 0xFF - ldr r0, [sp, 0x8] - cmp r0, 0 - bne _080AE0D2 - movs r7, 0xFE -_080AE0D2: - ldr r0, [sp, 0xC] - cmp r0, 0 - bne _080AE0DE - movs r0, 0x3 - negs r0, r0 - ands r7, r0 -_080AE0DE: - ldr r0, [sp, 0x10] - cmp r0, 0 - bne _080AE0EA - movs r0, 0x5 - negs r0, r0 - ands r7, r0 -_080AE0EA: - ldr r0, [sp, 0x14] - cmp r0, 0 - bne _080AE0F6 - movs r0, 0x9 - negs r0, r0 - ands r7, r0 -_080AE0F6: - ldr r0, [sp, 0x18] - cmp r0, 0 - bne _080AE102 - movs r0, 0x11 - negs r0, r0 - ands r7, r0 -_080AE102: - ldr r0, [sp, 0x1C] - cmp r0, 0 - bne _080AE10E - movs r0, 0x21 - negs r0, r0 - ands r7, r0 -_080AE10E: - ldr r0, [sp, 0x20] - cmp r0, 0 - bne _080AE11A - movs r0, 0x41 - negs r0, r0 - ands r7, r0 -_080AE11A: - cmp r1, 0 - bne _080AE124 - movs r0, 0x81 - negs r0, r0 - ands r7, r0 -_080AE124: - movs r0, 0x80 - lsls r0, 2 - b _080AE248 -_080AE12A: - ldr r0, [sp, 0x28] - cmp r0, 0x2 - bne _080AE192 - movs r7, 0xFF - ldr r0, [sp, 0x8] - cmp r0, 0x2 - beq _080AE13A - movs r7, 0xFE -_080AE13A: - ldr r0, [sp, 0xC] - cmp r0, 0x2 - beq _080AE146 - movs r0, 0x3 - negs r0, r0 - ands r7, r0 -_080AE146: - ldr r0, [sp, 0x10] - cmp r0, 0x2 - beq _080AE152 - movs r0, 0x5 - negs r0, r0 - ands r7, r0 -_080AE152: - ldr r0, [sp, 0x14] - cmp r0, 0x2 - beq _080AE15E - movs r0, 0x9 - negs r0, r0 - ands r7, r0 -_080AE15E: - ldr r0, [sp, 0x18] - cmp r0, 0x2 - beq _080AE16A - movs r0, 0x11 - negs r0, r0 - ands r7, r0 -_080AE16A: - ldr r0, [sp, 0x1C] - cmp r0, 0x2 - beq _080AE176 - movs r0, 0x21 - negs r0, r0 - ands r7, r0 -_080AE176: - ldr r0, [sp, 0x20] - cmp r0, 0x2 - beq _080AE182 - movs r0, 0x41 - negs r0, r0 - ands r7, r0 -_080AE182: - cmp r1, 0x2 - beq _080AE18C - movs r0, 0x81 - negs r0, r0 - ands r7, r0 -_080AE18C: - movs r0, 0x80 - lsls r0, 1 - b _080AE248 -_080AE192: - ldr r1, [sp, 0x28] - cmp r1, 0x3 - bne _080AE1FC - movs r7, 0xFF - ldr r0, [sp, 0x8] - cmp r0, 0x3 - beq _080AE1A2 - movs r7, 0xFE -_080AE1A2: - ldr r0, [sp, 0xC] - cmp r0, 0x3 - beq _080AE1AE - movs r0, 0x3 - negs r0, r0 - ands r7, r0 -_080AE1AE: - ldr r0, [sp, 0x10] - cmp r0, 0x3 - beq _080AE1BA - movs r0, 0x5 - negs r0, r0 - ands r7, r0 -_080AE1BA: - ldr r0, [sp, 0x14] - cmp r0, 0x3 - beq _080AE1C6 - movs r0, 0x9 - negs r0, r0 - ands r7, r0 -_080AE1C6: - ldr r0, [sp, 0x18] - cmp r0, 0x3 - beq _080AE1D2 - movs r0, 0x11 - negs r0, r0 - ands r7, r0 -_080AE1D2: - ldr r0, [sp, 0x1C] - cmp r0, 0x3 - beq _080AE1DE - movs r0, 0x21 - negs r0, r0 - ands r7, r0 -_080AE1DE: - ldr r0, [sp, 0x20] - cmp r0, 0x3 - beq _080AE1EA - movs r0, 0x41 - negs r0, r0 - ands r7, r0 -_080AE1EA: - ldr r0, [sp, 0x24] - cmp r0, 0x3 - beq _080AE1F6 - movs r0, 0x81 - negs r0, r0 - ands r7, r0 -_080AE1F6: - movs r0, 0x80 - lsls r0, 1 - b _080AE248 -_080AE1FC: - ldr r0, [sp, 0x8] - cmp r0, 0 - bne _080AE204 - movs r7, 0x1 -_080AE204: - ldr r0, [sp, 0xC] - cmp r0, 0 - bne _080AE20E - movs r0, 0x2 - orrs r7, r0 -_080AE20E: - ldr r0, [sp, 0x10] - cmp r0, 0 - bne _080AE218 - movs r0, 0x4 - orrs r7, r0 -_080AE218: - ldr r0, [sp, 0x14] - cmp r0, 0 - bne _080AE222 - movs r0, 0x8 - orrs r7, r0 -_080AE222: - ldr r0, [sp, 0x18] - cmp r0, 0 - bne _080AE22C - movs r0, 0x10 - orrs r7, r0 -_080AE22C: - ldr r0, [sp, 0x1C] - cmp r0, 0 - bne _080AE236 - movs r0, 0x20 - orrs r7, r0 -_080AE236: - ldr r0, [sp, 0x20] - cmp r0, 0 - bne _080AE240 - movs r0, 0x40 - orrs r7, r0 -_080AE240: - ldr r0, [sp, 0x24] - cmp r0, 0 - bne _080AE24A - movs r0, 0x80 -_080AE248: - orrs r7, r0 -_080AE24A: - lsls r0, r7, 1 - adds r0, r7 -_080AE24E: - ldr r1, [sp, 0x58] - adds r0, r1, r0 - ldrb r0, [r0] -_080AE254: - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80ADFB8 - .align 2, 0 @ Don't pad with nop. -- cgit v1.2.3