diff options
Diffstat (limited to 'asm/m4a.s')
-rw-r--r-- | asm/m4a.s | 4625 |
1 files changed, 0 insertions, 4625 deletions
diff --git a/asm/m4a.s b/asm/m4a.s deleted file mode 100644 index 7133670..0000000 --- a/asm/m4a.s +++ /dev/null @@ -1,4625 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start umul3232H32 -umul3232H32: - adr r2, _080AE268 - bx r2 - .arm -_080AE268: - umull r2, r3, r0, r1 - add r0, r3, 0 - bx lr - thumb_func_end umul3232H32 - - thumb_func_start SoundMain -SoundMain: - ldr r0, _080AE2E0 - ldr r0, [r0] - ldr r2, _080AE2E4 - ldr r3, [r0] - cmp r2, r3 - beq _080AE282 - bx lr -_080AE282: - adds r3, 0x1 - str r3, [r0] - push {r4-r7,lr} - mov r1, r8 - mov r2, r9 - mov r3, r10 - mov r4, r11 - push {r0-r4} - sub sp, 0x18 - ldrb r1, [r0, 0xC] - cmp r1, 0 - beq _080AE2A6 - ldr r2, _080AE2EC - ldrb r2, [r2] - cmp r2, 0xA0 - bcs _080AE2A4 - adds r2, 0xE4 -_080AE2A4: - adds r1, r2 -_080AE2A6: - str r1, [sp, 0x14] - ldr r3, [r0, 0x20] - cmp r3, 0 - beq _080AE2B6 - ldr r0, [r0, 0x24] - bl call_r3 - ldr r0, [sp, 0x18] -_080AE2B6: - ldr r3, [r0, 0x28] - bl call_r3 - ldr r0, [sp, 0x18] - ldr r3, [r0, 0x10] - mov r8, r3 - ldr r5, _080AE2F0 - adds r5, r0 - ldrb r4, [r0, 0x4] - subs r7, r4, 0x1 - bls _080AE2D6 - ldrb r1, [r0, 0xB] - subs r1, r7 - mov r2, r8 - muls r2, r1 - adds r5, r2 -_080AE2D6: - str r5, [sp, 0x8] - ldr r6, _080AE2F4 - ldr r3, _080AE2E8 - bx r3 - .align 2, 0 -_080AE2E0: .4byte SOUND_INFO_PTR -_080AE2E4: .4byte 0x68736d53 -_080AE2E8: .4byte SoundMainRAM_Buffer + 1 -_080AE2EC: .4byte 0x04000006 -_080AE2F0: .4byte 0x00000350 -_080AE2F4: .4byte 0x00000630 - thumb_func_end SoundMain - - thumb_func_start sub_80AE2F8 -sub_80AE2F8: - ldrb r3, [r0, 0x5] - cmp r3, 0 - beq _080AE358 - adr r1, _080AE304 - bx r1 - .arm -_080AE304: - cmp r4, 0x2 - addeq r7, r0, 0x350 - addne r7, r5, r8 - mov r4, r8 -_080AE314: - ldrsb r0, [r5, r6] - ldrsb r1, [r5] - add r0, r0, r1 - ldrsb r1, [r7, r6] - add r0, r0, r1 - ldrsb r1, [r7], 0x1 - add r0, r0, r1 - mul r1, r0, r3 - mov r0, r1, asr 9 - tst r0, 0x80 - addne r0, r0, 0x1 - strb r0, [r5, r6] - strb r0, [r5], 0x1 - subs r4, r4, 0x1 - bgt _080AE314 - add r0, pc, 0x2F - bx r0 - .thumb -_080AE358: - movs r0, 0 - mov r1, r8 - adds r6, r5 - lsrs r1, 3 - bcc _080AE366 - stm r5!, {r0} - stm r6!, {r0} -_080AE366: - lsrs r1, 1 - bcc _080AE372 - stm r5!, {r0} - stm r6!, {r0} - stm r5!, {r0} - stm r6!, {r0} -_080AE372: - stm r5!, {r0} - stm r6!, {r0} - stm r5!, {r0} - stm r6!, {r0} - stm r5!, {r0} - stm r6!, {r0} - stm r5!, {r0} - stm r6!, {r0} - subs r1, 0x1 - bgt _080AE372 - ldr r4, [sp, 0x18] - ldr r0, [r4, 0x18] - mov r12, r0 - ldrb r0, [r4, 0x6] - adds r4, 0x50 -_080AE390: - str r0, [sp, 0x4] - ldr r3, [r4, 0x24] - ldr r0, [sp, 0x14] - cmp r0, 0 - beq _080AE3B0 - ldr r1, _080AE3AC - ldrb r1, [r1] - cmp r1, 0xA0 - bcs _080AE3A4 - adds r1, 0xE4 -_080AE3A4: - cmp r1, r0 - bcc _080AE3B0 - b _080AE682 - .align 2, 0 -_080AE3AC: .4byte 0x04000006 -_080AE3B0: - ldrb r6, [r4] - movs r0, 0xC7 - tst r0, r6 - bne _080AE3BA - b _080AE678 -_080AE3BA: - movs r0, 0x80 - tst r0, r6 - beq _080AE3EA - movs r0, 0x40 - tst r0, r6 - bne _080AE3FA - movs r6, 0x3 - strb r6, [r4] - adds r0, r3, 0 - adds r0, 0x10 - str r0, [r4, 0x28] - ldr r0, [r3, 0xC] - str r0, [r4, 0x18] - movs r5, 0 - strb r5, [r4, 0x9] - str r5, [r4, 0x1C] - ldrb r2, [r3, 0x3] - movs r0, 0xC0 - tst r0, r2 - beq _080AE442 - movs r0, 0x10 - orrs r6, r0 - strb r6, [r4] - b _080AE442 -_080AE3EA: - ldrb r5, [r4, 0x9] - movs r0, 0x4 - tst r0, r6 - beq _080AE400 - ldrb r0, [r4, 0xD] - subs r0, 0x1 - strb r0, [r4, 0xD] - bhi _080AE450 -_080AE3FA: - movs r0, 0 - strb r0, [r4] - b _080AE678 -_080AE400: - movs r0, 0x40 - tst r0, r6 - beq _080AE420 - ldrb r0, [r4, 0x7] - muls r5, r0 - lsrs r5, 8 - ldrb r0, [r4, 0xC] - cmp r5, r0 - bhi _080AE450 -_080AE412: - ldrb r5, [r4, 0xC] - cmp r5, 0 - beq _080AE3FA - movs r0, 0x4 - orrs r6, r0 - strb r6, [r4] - b _080AE450 -_080AE420: - movs r2, 0x3 - ands r2, r6 - cmp r2, 0x2 - bne _080AE43E - ldrb r0, [r4, 0x5] - muls r5, r0 - lsrs r5, 8 - ldrb r0, [r4, 0x6] - cmp r5, r0 - bhi _080AE450 - adds r5, r0, 0 - beq _080AE412 - subs r6, 0x1 - strb r6, [r4] - b _080AE450 -_080AE43E: - cmp r2, 0x3 - bne _080AE450 -_080AE442: - ldrb r0, [r4, 0x4] - adds r5, r0 - cmp r5, 0xFF - bcc _080AE450 - movs r5, 0xFF - subs r6, 0x1 - strb r6, [r4] -_080AE450: - strb r5, [r4, 0x9] - ldr r0, [sp, 0x18] - ldrb r0, [r0, 0x7] - adds r0, 0x1 - muls r0, r5 - lsrs r5, r0, 4 - ldrb r0, [r4, 0x2] - muls r0, r5 - lsrs r0, 8 - strb r0, [r4, 0xA] - ldrb r0, [r4, 0x3] - muls r0, r5 - lsrs r0, 8 - strb r0, [r4, 0xB] - movs r0, 0x10 - ands r0, r6 - str r0, [sp, 0x10] - beq _080AE484 - adds r0, r3, 0 - adds r0, 0x10 - ldr r1, [r3, 0x8] - adds r0, r1 - str r0, [sp, 0xC] - ldr r0, [r3, 0xC] - subs r0, r1 - str r0, [sp, 0x10] -_080AE484: - ldr r5, [sp, 0x8] - ldr r2, [r4, 0x18] - ldr r3, [r4, 0x28] - adr r0, _080AE490 - bx r0 - .arm -_080AE490: - str r8, [sp] - ldrb r10, [r4, 0xA] - ldrb r11, [r4, 0xB] - mov r10, r10, lsl 16 - mov r11, r11, lsl 16 - ldrb r0, [r4, 0x1] - tst r0, 0x8 - beq _080AE5D0 -_080AE4B0: - cmp r2, 0x4 - ble _080AE520 - subs r2, r2, r8 - movgt lr, 0 - bgt _080AE4DC - mov lr, r8 - add r2, r2, r8 - sub r8, r2, 0x4 - sub lr, lr, r8 - ands r2, r2, 0x3 - moveq r2, 0x4 -_080AE4DC: - ldr r6, [r5] - ldr r7, [r5, 0x630] -_080AE4E4: - ldrsb r0, [r3], 0x1 - mul r1, r10, r0 - bic r1, r1, 0xFF0000 - add r6, r1, r6, ror 8 - mul r1, r11, r0 - bic r1, r1, 0xFF0000 - add r7, r1, r7, ror 8 - adds r5, r5, 0x40000000 - bcc _080AE4E4 - str r7, [r5, 0x630] - str r6, [r5], 0x4 - subs r8, r8, 0x4 - bgt _080AE4DC - adds r8, r8, lr - beq _080AE664 -_080AE520: - ldr r6, [r5] - ldr r7, [r5, 0x630] -_080AE528: - ldrsb r0, [r3], 0x1 - mul r1, r10, r0 - bic r1, r1, 0xFF0000 - add r6, r1, r6, ror 8 - mul r1, r11, r0 - bic r1, r1, 0xFF0000 - add r7, r1, r7, ror 8 - subs r2, r2, 0x1 - beq _080AE598 -_080AE54C: - adds r5, r5, 0x40000000 - bcc _080AE528 - str r7, [r5, 0x630] - str r6, [r5], 0x4 - subs r8, r8, 0x4 - bgt _080AE4B0 - b _080AE664 -_080AE568: - ldr r0, [sp, 0x18] - cmp r0, 0 - beq _080AE58C - ldr r3, [sp, 0x14] - rsb r9, r2, 0 -_080AE57C: - adds r2, r0, r2 - bgt _080AE634 - sub r9, r9, r0 - b _080AE57C -_080AE58C: - ldmia sp!, {r4,r12} - mov r2, 0 - b _080AE5A8 -_080AE598: - ldr r2, [sp, 0x10] - cmp r2, 0 - ldrne r3, [sp, 0xC] - bne _080AE54C -_080AE5A8: - strb r2, [r4] - mov r0, r5, lsr 30 - bic r5, r5, 0xC0000000 - rsb r0, r0, 0x3 - mov r0, r0, lsl 3 - mov r6, r6, ror r0 - mov r7, r7, ror r0 - str r7, [r5, 0x630] - str r6, [r5], 0x4 - b _080AE66C -_080AE5D0: - stmdb sp!, {r4,r12} - ldr lr, [r4, 0x1C] - ldr r1, [r4, 0x20] - mul r4, r12, r1 - ldrsb r0, [r3] - ldrsb r1, [r3, 0x1]! - sub r1, r1, r0 -_080AE5EC: - ldr r6, [r5] - ldr r7, [r5, 0x630] -_080AE5F4: - mul r9, lr, r1 - add r9, r0, r9, asr 23 - mul r12, r10, r9 - bic r12, r12, 0xFF0000 - add r6, r12, r6, ror 8 - mul r12, r11, r9 - bic r12, r12, 0xFF0000 - add r7, r12, r7, ror 8 - add lr, lr, r4 - movs r9, lr, lsr 23 - beq _080AE640 - bic lr, lr, 0x3F800000 - subs r2, r2, r9 - ble _080AE568 - subs r9, r9, 0x1 - addeq r0, r0, r1 -_080AE634: - ldrsbne r0, [r3, r9]! - ldrsb r1, [r3, 0x1]! - sub r1, r1, r0 -_080AE640: - adds r5, r5, 0x40000000 - bcc _080AE5F4 - str r7, [r5, 0x630] - str r6, [r5], 0x4 - subs r8, r8, 0x4 - bgt _080AE5EC - sub r3, r3, 0x1 - ldmia sp!, {r4,r12} - str lr, [r4, 0x1C] -_080AE664: - str r2, [r4, 0x18] - str r3, [r4, 0x28] -_080AE66C: - ldr r8, [sp] - add r0, pc, 0x1 - bx r0 - .thumb -_080AE678: - ldr r0, [sp, 0x4] - subs r0, 0x1 - ble _080AE682 - adds r4, 0x40 - b _080AE390 -_080AE682: - ldr r0, [sp, 0x18] - ldr r3, _080AE698 - str r3, [r0] - add sp, 0x1C - pop {r0-r7} - mov r8, r0 - mov r9, r1 - mov r10, r2 - mov r11, r3 - pop {r3} - -call_r3: - bx r3 - - .align 2, 0 -_080AE698: .4byte 0x68736D53 - thumb_func_end sub_80AE2F8 - - thumb_func_start sub_80AE69C -sub_80AE69C: - mov r12, r4 - movs r1, 0 - movs r2, 0 - movs r3, 0 - movs r4, 0 - stm r0!, {r1-r4} - stm r0!, {r1-r4} - stm r0!, {r1-r4} - stm r0!, {r1-r4} - mov r4, r12 - bx lr - thumb_func_end sub_80AE69C - - thumb_func_start sub_80AE6B4 -sub_80AE6B4: - ldr r3, [r0, 0x2C] - cmp r3, 0 - beq _080AE6D2 - ldr r1, [r0, 0x34] - ldr r2, [r0, 0x30] - cmp r2, 0 - beq _080AE6C6 - str r1, [r2, 0x34] - b _080AE6C8 -_080AE6C6: - str r1, [r3, 0x20] -_080AE6C8: - cmp r1, 0 - beq _080AE6CE - str r2, [r1, 0x30] -_080AE6CE: - movs r1, 0 - str r1, [r0, 0x2C] -_080AE6D2: - bx lr - thumb_func_end sub_80AE6B4 - - thumb_func_start sub_80AE6D4 -sub_80AE6D4: - push {r4,r5,lr} - adds r5, r1, 0 - ldr r4, [r5, 0x20] - cmp r4, 0 - beq _080AE6F8 -_080AE6DE: - ldrb r1, [r4] - movs r0, 0xC7 - tst r0, r1 - beq _080AE6EC - movs r0, 0x40 - orrs r1, r0 - strb r1, [r4] -_080AE6EC: - adds r0, r4, 0 - bl sub_80AE6B4 - ldr r4, [r4, 0x34] - cmp r4, 0 - bne _080AE6DE -_080AE6F8: - movs r0, 0 - strb r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80AE6D4 - - thumb_func_start sub_80AE704 -sub_80AE704: - mov r12, lr - movs r1, 0x24 - ldr r2, _080AE734 -_080AE70A: - ldr r3, [r2] - bl _080AE71E - stm r0!, {r3} - adds r2, 0x4 - subs r1, 0x1 - bgt _080AE70A - bx r12 - thumb_func_end sub_80AE704 - - .align 2, 0 - .thumb_func -_080AE71C: - ldrb r3, [r2] - - .thumb_func -_080AE71E: - push {r0} - lsrs r0, r2, 25 - bne _080AE730 - ldr r0, _080AE734 - cmp r2, r0 - bcc _080AE72E - lsrs r0, r2, 14 - beq _080AE730 -_080AE72E: - movs r3, 0 -_080AE730: - pop {r0} - bx lr - .align 2, 0 -_080AE734: .4byte gUnknown_826F98C - - thumb_func_start sub_80AE738 -sub_80AE738: - ldr r2, [r1, 0x40] -_080AE73A: - adds r3, r2, 0x1 - str r3, [r1, 0x40] - ldrb r3, [r2] - b _080AE71E - thumb_func_end sub_80AE738 - - thumb_func_start sub_80AE744 -sub_80AE744: - push {lr} -_080AE746: - ldr r2, [r1, 0x40] - ldrb r0, [r2, 0x3] - lsls r0, 8 - ldrb r3, [r2, 0x2] - orrs r0, r3 - lsls r0, 8 - ldrb r3, [r2, 0x1] - orrs r0, r3 - lsls r0, 8 - bl _080AE71C - orrs r0, r3 - str r0, [r1, 0x40] - pop {r0} - bx r0 - thumb_func_end sub_80AE744 - - thumb_func_start sub_80AE764 -sub_80AE764: - ldrb r2, [r1, 0x2] - cmp r2, 0x3 - bcs _080AE77C - lsls r2, 2 - adds r3, r1, r2 - ldr r2, [r1, 0x40] - adds r2, 0x4 - str r2, [r3, 0x44] - ldrb r2, [r1, 0x2] - adds r2, 0x1 - strb r2, [r1, 0x2] - b sub_80AE744 -_080AE77C: - b sub_80AE6D4 - thumb_func_end sub_80AE764 - - thumb_func_start sub_80AE780 -sub_80AE780: - ldrb r2, [r1, 0x2] - cmp r2, 0 - beq _080AE792 - subs r2, 0x1 - strb r2, [r1, 0x2] - lsls r2, 2 - adds r3, r1, r2 - ldr r2, [r3, 0x44] - str r2, [r1, 0x40] -_080AE792: - bx lr - thumb_func_end sub_80AE780 - - thumb_func_start sub_80AE794 -sub_80AE794: - push {lr} - ldr r2, [r1, 0x40] - ldrb r3, [r2] - cmp r3, 0 - bne _080AE7A4 - adds r2, 0x1 - str r2, [r1, 0x40] - b _080AE746 -_080AE7A4: - ldrb r3, [r1, 0x3] - adds r3, 0x1 - strb r3, [r1, 0x3] - mov r12, r3 - bl sub_80AE738 - cmp r12, r3 - bcs _080AE7B6 - b _080AE746 -_080AE7B6: - movs r3, 0 - strb r3, [r1, 0x3] - adds r2, 0x5 - str r2, [r1, 0x40] - pop {r0} - bx r0 - thumb_func_end sub_80AE794 - - thumb_func_start sub_80AE7C4 -sub_80AE7C4: - mov r12, lr - bl sub_80AE738 - strb r3, [r1, 0x1D] - bx r12 - thumb_func_end sub_80AE7C4 - - thumb_func_start sub_80AE7D0 -sub_80AE7D0: - mov r12, lr - bl sub_80AE738 - lsls r3, 1 - strh r3, [r0, 0x1C] - ldrh r2, [r0, 0x1E] - muls r3, r2 - lsrs r3, 8 - strh r3, [r0, 0x20] - bx r12 - thumb_func_end sub_80AE7D0 - - thumb_func_start sub_80AE7E4 -sub_80AE7E4: - mov r12, lr - bl sub_80AE738 - strb r3, [r1, 0xA] - ldrb r3, [r1] - movs r2, 0xC - orrs r3, r2 - strb r3, [r1] - bx r12 - thumb_func_end sub_80AE7E4 - - thumb_func_start sub_80AE7F8 -sub_80AE7F8: - mov r12, lr - ldr r2, [r1, 0x40] - ldrb r3, [r2] - adds r2, 0x1 - str r2, [r1, 0x40] - lsls r2, r3, 1 - adds r2, r3 - lsls r2, 2 - ldr r3, [r0, 0x30] - adds r2, r3 - ldr r3, [r2] - bl _080AE71E - str r3, [r1, 0x24] - ldr r3, [r2, 0x4] - bl _080AE71E - str r3, [r1, 0x28] - ldr r3, [r2, 0x8] - bl _080AE71E - str r3, [r1, 0x2C] - bx r12 - thumb_func_end sub_80AE7F8 - - thumb_func_start sub_80AE828 -sub_80AE828: - mov r12, lr - bl sub_80AE738 - strb r3, [r1, 0x12] - ldrb r3, [r1] - movs r2, 0x3 - orrs r3, r2 - strb r3, [r1] - bx r12 - thumb_func_end sub_80AE828 - - thumb_func_start sub_80AE83C -sub_80AE83C: - mov r12, lr - bl sub_80AE738 - subs r3, 0x40 - strb r3, [r1, 0x14] - ldrb r3, [r1] - movs r2, 0x3 - orrs r3, r2 - strb r3, [r1] - bx r12 - thumb_func_end sub_80AE83C - - thumb_func_start sub_80AE850 -sub_80AE850: - mov r12, lr - bl sub_80AE738 - subs r3, 0x40 - strb r3, [r1, 0xE] - ldrb r3, [r1] - movs r2, 0xC - orrs r3, r2 - strb r3, [r1] - bx r12 - thumb_func_end sub_80AE850 - - thumb_func_start sub_80AE864 -sub_80AE864: - mov r12, lr - bl sub_80AE738 - strb r3, [r1, 0xF] - ldrb r3, [r1] - movs r2, 0xC - orrs r3, r2 - strb r3, [r1] - bx r12 - thumb_func_end sub_80AE864 - - thumb_func_start sub_80AE878 -sub_80AE878: - mov r12, lr - bl sub_80AE738 - strb r3, [r1, 0x1B] - bx r12 - thumb_func_end sub_80AE878 - - thumb_func_start sub_80AE884 -sub_80AE884: - mov r12, lr - bl sub_80AE738 - ldrb r0, [r1, 0x18] - cmp r0, r3 - beq _080AE89A - strb r3, [r1, 0x18] - ldrb r3, [r1] - movs r2, 0xF - orrs r3, r2 - strb r3, [r1] -_080AE89A: - bx r12 - thumb_func_end sub_80AE884 - - thumb_func_start sub_80AE89C -sub_80AE89C: - mov r12, lr - bl sub_80AE738 - subs r3, 0x40 - strb r3, [r1, 0xC] - ldrb r3, [r1] - movs r2, 0xC - orrs r3, r2 - strb r3, [r1] - bx r12 - thumb_func_end sub_80AE89C - - thumb_func_start sub_80AE8B0 -sub_80AE8B0: - mov r12, lr - ldr r2, [r1, 0x40] - ldrb r3, [r2] - adds r2, 0x1 - ldr r0, _080AE8C4 - adds r0, r3 - bl _080AE73A - strb r3, [r0] - bx r12 - .align 2, 0 -_080AE8C4: .4byte 0x04000060 - thumb_func_end sub_80AE8B0 - - thumb_func_start m4aSoundVSync -m4aSoundVSync: - ldr r0, _080AEB74 - ldr r0, [r0] - ldr r2, _080AEB78 - ldr r3, [r0] - subs r3, r2 - cmp r3, 0x1 - bhi _080AE908 - ldrb r1, [r0, 0x4] - subs r1, 0x1 - strb r1, [r0, 0x4] - bgt _080AE908 - ldrb r1, [r0, 0xB] - strb r1, [r0, 0x4] - ldr r2, _080AE90C - ldr r1, [r2, 0x8] - lsls r1, 7 - bcc _080AE8EE - ldr r1, _080AE910 - str r1, [r2, 0x8] -_080AE8EE: - ldr r1, [r2, 0x14] - lsls r1, 7 - bcc _080AE8F8 - ldr r1, _080AE910 - str r1, [r2, 0x14] -_080AE8F8: - movs r1, 0x4 - lsls r1, 8 - strh r1, [r2, 0xA] - strh r1, [r2, 0x16] - movs r1, 0xB6 - lsls r1, 8 - strh r1, [r2, 0xA] - strh r1, [r2, 0x16] -_080AE908: - bx lr - .align 2, 0 -_080AE90C: .4byte 0x040000bc -_080AE910: .4byte 0x84400004 - thumb_func_end m4aSoundVSync - - thumb_func_start sub_80AE914 -sub_80AE914: - ldr r2, _080AEB78 - ldr r3, [r0, 0x34] - cmp r2, r3 - beq _080AE91E - bx lr -_080AE91E: - adds r3, 0x1 - str r3, [r0, 0x34] - push {r0,lr} - ldr r3, [r0, 0x38] - cmp r3, 0 - beq _080AE930 - ldr r0, [r0, 0x3C] - bl _080AEB6C -_080AE930: - pop {r0} - push {r4-r7} - mov r4, r8 - mov r5, r9 - mov r6, r10 - mov r7, r11 - push {r4-r7} - adds r7, r0, 0 - ldr r0, [r7, 0x4] - cmp r0, 0 - bge _080AE948 - b _080AEB5C -_080AE948: - ldr r0, _080AEB74 - ldr r0, [r0] - mov r8, r0 - adds r0, r7, 0 - bl sub_80AF800 - ldr r0, [r7, 0x4] - cmp r0, 0 - bge _080AE95C - b _080AEB5C -_080AE95C: - ldrh r0, [r7, 0x22] - ldrh r1, [r7, 0x20] - adds r0, r1 - b _080AEAAC -_080AE964: - ldrb r6, [r7, 0x8] - ldr r5, [r7, 0x2C] - movs r3, 0x1 - movs r4, 0 -_080AE96C: - ldrb r0, [r5] - movs r1, 0x80 - tst r1, r0 - bne _080AE976 - b _080AEA88 -_080AE976: - mov r10, r3 - orrs r4, r3 - mov r11, r4 - ldr r4, [r5, 0x20] - cmp r4, 0 - beq _080AE9AA -_080AE982: - ldrb r1, [r4] - movs r0, 0xC7 - tst r0, r1 - beq _080AE99E - ldrb r0, [r4, 0x10] - cmp r0, 0 - beq _080AE9A4 - subs r0, 0x1 - strb r0, [r4, 0x10] - bne _080AE9A4 - movs r0, 0x40 - orrs r1, r0 - strb r1, [r4] - b _080AE9A4 -_080AE99E: - adds r0, r4, 0 - bl sub_80AF2FC -_080AE9A4: - ldr r4, [r4, 0x34] - cmp r4, 0 - bne _080AE982 -_080AE9AA: - ldrb r3, [r5] - movs r0, 0x40 - tst r0, r3 - beq _080AEA28 - adds r0, r5, 0 - bl sub_80AF310 - movs r0, 0x80 - strb r0, [r5] - movs r0, 0x2 - strb r0, [r5, 0xF] - movs r0, 0x40 - strb r0, [r5, 0x13] - movs r0, 0x16 - strb r0, [r5, 0x19] - movs r0, 0x1 - adds r1, r5, 0x6 - strb r0, [r1, 0x1E] - b _080AEA28 -_080AE9D0: - ldr r2, [r5, 0x40] - ldrb r1, [r2] - cmp r1, 0x80 - bcs _080AE9DC - ldrb r1, [r5, 0x7] - b _080AE9E6 -_080AE9DC: - adds r2, 0x1 - str r2, [r5, 0x40] - cmp r1, 0xBD - bcc _080AE9E6 - strb r1, [r5, 0x7] -_080AE9E6: - cmp r1, 0xCF - bcc _080AE9FC - mov r0, r8 - ldr r3, [r0, 0x38] - adds r0, r1, 0 - subs r0, 0xCF - adds r1, r7, 0 - adds r2, r5, 0 - bl _080AEB6C - b _080AEA28 -_080AE9FC: - cmp r1, 0xB0 - bls _080AEA1E - adds r0, r1, 0 - subs r0, 0xB1 - strb r0, [r7, 0xA] - mov r3, r8 - ldr r3, [r3, 0x34] - lsls r0, 2 - ldr r3, [r3, r0] - adds r0, r7, 0 - adds r1, r5, 0 - bl _080AEB6C - ldrb r0, [r5] - cmp r0, 0 - beq _080AEA84 - b _080AEA28 -_080AEA1E: - ldr r0, _080AEB70 - subs r1, 0x80 - adds r1, r0 - ldrb r0, [r1] - strb r0, [r5, 0x1] -_080AEA28: - ldrb r0, [r5, 0x1] - cmp r0, 0 - beq _080AE9D0 - subs r0, 0x1 - strb r0, [r5, 0x1] - ldrb r1, [r5, 0x19] - cmp r1, 0 - beq _080AEA84 - ldrb r0, [r5, 0x17] - cmp r0, 0 - beq _080AEA84 - ldrb r0, [r5, 0x1C] - cmp r0, 0 - beq _080AEA4A - subs r0, 0x1 - strb r0, [r5, 0x1C] - b _080AEA84 -_080AEA4A: - ldrb r0, [r5, 0x1A] - adds r0, r1 - strb r0, [r5, 0x1A] - adds r1, r0, 0 - subs r0, 0x40 - lsls r0, 24 - bpl _080AEA5E - lsls r2, r1, 24 - asrs r2, 24 - b _080AEA62 -_080AEA5E: - movs r0, 0x80 - subs r2, r0, r1 -_080AEA62: - ldrb r0, [r5, 0x17] - muls r0, r2 - asrs r2, r0, 6 - ldrb r0, [r5, 0x16] - eors r0, r2 - lsls r0, 24 - beq _080AEA84 - strb r2, [r5, 0x16] - ldrb r0, [r5] - ldrb r1, [r5, 0x18] - cmp r1, 0 - bne _080AEA7E - movs r1, 0xC - b _080AEA80 -_080AEA7E: - movs r1, 0x3 -_080AEA80: - orrs r0, r1 - strb r0, [r5] -_080AEA84: - mov r3, r10 - mov r4, r11 -_080AEA88: - subs r6, 0x1 - ble _080AEA94 - movs r0, 0x50 - adds r5, r0 - lsls r3, 1 - b _080AE96C -_080AEA94: - ldr r0, [r7, 0xC] - adds r0, 0x1 - str r0, [r7, 0xC] - cmp r4, 0 - bne _080AEAA6 - movs r0, 0x80 - lsls r0, 24 - str r0, [r7, 0x4] - b _080AEB5C -_080AEAA6: - str r4, [r7, 0x4] - ldrh r0, [r7, 0x22] - subs r0, 0x96 -_080AEAAC: - strh r0, [r7, 0x22] - cmp r0, 0x96 - bcc _080AEAB4 - b _080AE964 -_080AEAB4: - ldrb r2, [r7, 0x8] - ldr r5, [r7, 0x2C] -_080AEAB8: - ldrb r0, [r5] - movs r1, 0x80 - tst r1, r0 - beq _080AEB52 - movs r1, 0xF - tst r1, r0 - beq _080AEB52 - mov r9, r2 - adds r0, r7, 0 - adds r1, r5, 0 - bl sub_80AF8C8 - ldr r4, [r5, 0x20] - cmp r4, 0 - beq _080AEB48 -_080AEAD6: - ldrb r1, [r4] - movs r0, 0xC7 - tst r0, r1 - bne _080AEAE6 - adds r0, r4, 0 - bl sub_80AF2FC - b _080AEB42 -_080AEAE6: - ldrb r0, [r4, 0x1] - movs r6, 0x7 - ands r6, r0 - ldrb r3, [r5] - movs r0, 0x3 - tst r0, r3 - beq _080AEB04 - bl sub_80AEBC0 - cmp r6, 0 - beq _080AEB04 - ldrb r0, [r4, 0x1D] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r4, 0x1D] -_080AEB04: - ldrb r3, [r5] - movs r0, 0xC - tst r0, r3 - beq _080AEB42 - ldrb r1, [r4, 0x8] - movs r0, 0x8 - ldrsb r0, [r5, r0] - adds r2, r1, r0 - bpl _080AEB18 - movs r2, 0 -_080AEB18: - cmp r6, 0 - beq _080AEB36 - mov r0, r8 - ldr r3, [r0, 0x30] - adds r1, r2, 0 - ldrb r2, [r5, 0x9] - adds r0, r6, 0 - bl _080AEB6C - str r0, [r4, 0x20] - ldrb r0, [r4, 0x1D] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4, 0x1D] - b _080AEB42 -_080AEB36: - adds r1, r2, 0 - ldrb r2, [r5, 0x9] - ldr r0, [r4, 0x24] - bl sub_80AEE80 - str r0, [r4, 0x20] -_080AEB42: - ldr r4, [r4, 0x34] - cmp r4, 0 - bne _080AEAD6 -_080AEB48: - ldrb r0, [r5] - movs r1, 0xF0 - ands r0, r1 - strb r0, [r5] - mov r2, r9 -_080AEB52: - subs r2, 0x1 - ble _080AEB5C - movs r0, 0x50 - adds r5, r0 - bgt _080AEAB8 -_080AEB5C: - ldr r0, _080AEB78 - str r0, [r7, 0x34] - pop {r0-r7} - mov r8, r0 - mov r9, r1 - mov r10, r2 - mov r11, r3 - pop {r3} -_080AEB6C: - bx r3 - .align 2, 0 -_080AEB70: .4byte gUnknown_826FC00 -_080AEB74: .4byte SOUND_INFO_PTR -_080AEB78: .4byte 0x68736d53 - thumb_func_end sub_80AE914 - - thumb_func_start sub_80AEB7C -sub_80AEB7C: - push {r4-r6,lr} - adds r5, r1, 0 - ldrb r1, [r5] - movs r0, 0x80 - tst r0, r1 - beq _080AEBB4 - ldr r4, [r5, 0x20] - cmp r4, 0 - beq _080AEBB2 - movs r6, 0 -_080AEB90: - ldrb r0, [r4] - cmp r0, 0 - beq _080AEBAA - ldrb r0, [r4, 0x1] - movs r3, 0x7 - ands r0, r3 - beq _080AEBA8 - ldr r3, _080AEBBC - ldr r3, [r3] - ldr r3, [r3, 0x2C] - bl _080AEB6C -_080AEBA8: - strb r6, [r4] -_080AEBAA: - str r6, [r4, 0x2C] - ldr r4, [r4, 0x34] - cmp r4, 0 - bne _080AEB90 -_080AEBB2: - str r4, [r5, 0x20] -_080AEBB4: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AEBBC: .4byte SOUND_INFO_PTR - thumb_func_end sub_80AEB7C - - thumb_func_start sub_80AEBC0 -sub_80AEBC0: - ldrb r1, [r4, 0x12] - movs r0, 0x14 - ldrsb r2, [r4, r0] - movs r3, 0x80 - adds r3, r2 - muls r3, r1 - ldrb r0, [r5, 0x10] - muls r0, r3 - asrs r0, 14 - cmp r0, 0xFF - bls _080AEBD8 - movs r0, 0xFF -_080AEBD8: - strb r0, [r4, 0x2] - movs r3, 0x7F - subs r3, r2 - muls r3, r1 - ldrb r0, [r5, 0x11] - muls r0, r3 - asrs r0, 14 - cmp r0, 0xFF - bls _080AEBEC - movs r0, 0xFF -_080AEBEC: - strb r0, [r4, 0x3] - bx lr - thumb_func_end sub_80AEBC0 - - thumb_func_start sub_80AEBF0 -sub_80AEBF0: - push {r4-r7,lr} - mov r4, r8 - mov r5, r9 - mov r6, r10 - mov r7, r11 - push {r4-r7} - sub sp, 0x18 - str r1, [sp] - adds r5, r2, 0 - ldr r1, _080AEDE8 - ldr r1, [r1] - str r1, [sp, 0x4] - ldr r1, _080AEDEC - adds r0, r1 - ldrb r0, [r0] - strb r0, [r5, 0x4] - ldr r3, [r5, 0x40] - ldrb r0, [r3] - cmp r0, 0x80 - bcs _080AEC36 - strb r0, [r5, 0x5] - adds r3, 0x1 - ldrb r0, [r3] - cmp r0, 0x80 - bcs _080AEC34 - strb r0, [r5, 0x6] - adds r3, 0x1 - ldrb r0, [r3] - cmp r0, 0x80 - bcs _080AEC34 - ldrb r1, [r5, 0x4] - adds r1, r0 - strb r1, [r5, 0x4] - adds r3, 0x1 -_080AEC34: - str r3, [r5, 0x40] -_080AEC36: - movs r0, 0 - str r0, [sp, 0x14] - adds r4, r5, 0 - adds r4, 0x24 - ldrb r2, [r4] - movs r0, 0xC0 - tst r0, r2 - beq _080AEC88 - ldrb r3, [r5, 0x5] - movs r0, 0x40 - tst r0, r2 - beq _080AEC56 - ldr r1, [r5, 0x2C] - adds r1, r3 - ldrb r0, [r1] - b _080AEC58 -_080AEC56: - adds r0, r3, 0 -_080AEC58: - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - ldr r0, [r5, 0x28] - adds r1, r0 - mov r9, r1 - mov r6, r9 - ldrb r1, [r6] - movs r0, 0xC0 - tst r0, r1 - beq _080AEC70 - b _080AEDD6 -_080AEC70: - movs r0, 0x80 - tst r0, r2 - beq _080AEC8C - ldrb r1, [r6, 0x3] - movs r0, 0x80 - tst r0, r1 - beq _080AEC84 - subs r1, 0xC0 - lsls r1, 1 - str r1, [sp, 0x14] -_080AEC84: - ldrb r3, [r6, 0x1] - b _080AEC8C -_080AEC88: - mov r9, r4 - ldrb r3, [r5, 0x5] -_080AEC8C: - str r3, [sp, 0x8] - ldr r6, [sp] - ldrb r1, [r6, 0x9] - ldrb r0, [r5, 0x1D] - adds r0, r1 - cmp r0, 0xFF - bls _080AEC9C - movs r0, 0xFF -_080AEC9C: - str r0, [sp, 0x10] - mov r6, r9 - ldrb r0, [r6] - movs r6, 0x7 - ands r6, r0 - str r6, [sp, 0xC] - beq _080AECDC - ldr r0, [sp, 0x4] - ldr r4, [r0, 0x1C] - cmp r4, 0 - bne _080AECB4 - b _080AEDD6 -_080AECB4: - subs r6, 0x1 - lsls r0, r6, 6 - adds r4, r0 - ldrb r1, [r4] - movs r0, 0xC7 - tst r0, r1 - beq _080AED30 - movs r0, 0x40 - tst r0, r1 - bne _080AED30 - ldrb r1, [r4, 0x13] - ldr r0, [sp, 0x10] - cmp r1, r0 - bcc _080AED30 - beq _080AECD4 - b _080AEDD6 -_080AECD4: - ldr r0, [r4, 0x2C] - cmp r0, r5 - bcs _080AED30 - b _080AEDD6 -_080AECDC: - ldr r6, [sp, 0x10] - adds r7, r5, 0 - movs r2, 0 - mov r8, r2 - ldr r4, [sp, 0x4] - ldrb r3, [r4, 0x6] - adds r4, 0x50 -_080AECEA: - ldrb r1, [r4] - movs r0, 0xC7 - tst r0, r1 - beq _080AED30 - movs r0, 0x40 - tst r0, r1 - beq _080AED04 - cmp r2, 0 - bne _080AED08 - adds r2, 0x1 - ldrb r6, [r4, 0x13] - ldr r7, [r4, 0x2C] - b _080AED22 -_080AED04: - cmp r2, 0 - bne _080AED24 -_080AED08: - ldrb r0, [r4, 0x13] - cmp r0, r6 - bcs _080AED14 - adds r6, r0, 0 - ldr r7, [r4, 0x2C] - b _080AED22 -_080AED14: - bhi _080AED24 - ldr r0, [r4, 0x2C] - cmp r0, r7 - bls _080AED20 - adds r7, r0, 0 - b _080AED22 -_080AED20: - bcc _080AED24 -_080AED22: - mov r8, r4 -_080AED24: - adds r4, 0x40 - subs r3, 0x1 - bgt _080AECEA - mov r4, r8 - cmp r4, 0 - beq _080AEDD6 -_080AED30: - adds r0, r4, 0 - bl sub_80AF2FC - movs r1, 0 - str r1, [r4, 0x30] - ldr r3, [r5, 0x20] - str r3, [r4, 0x34] - cmp r3, 0 - beq _080AED44 - str r4, [r3, 0x30] -_080AED44: - str r4, [r5, 0x20] - str r5, [r4, 0x2C] - ldrb r0, [r5, 0x1B] - strb r0, [r5, 0x1C] - cmp r0, r1 - beq _080AED56 - adds r1, r5, 0 - bl sub_80AEE30 -_080AED56: - ldr r0, [sp] - adds r1, r5, 0 - bl sub_80AF8C8 - ldr r0, [r5, 0x4] - str r0, [r4, 0x10] - ldr r0, [sp, 0x10] - strb r0, [r4, 0x13] - ldr r0, [sp, 0x8] - strb r0, [r4, 0x8] - ldr r0, [sp, 0x14] - strb r0, [r4, 0x14] - mov r6, r9 - ldrb r0, [r6] - strb r0, [r4, 0x1] - ldr r7, [r6, 0x4] - str r7, [r4, 0x24] - ldr r0, [r6, 0x8] - str r0, [r4, 0x4] - ldrh r0, [r5, 0x1E] - strh r0, [r4, 0xC] - bl sub_80AEBC0 - ldrb r1, [r4, 0x8] - movs r0, 0x8 - ldrsb r0, [r5, r0] - adds r3, r1, r0 - bpl _080AED90 - movs r3, 0 -_080AED90: - ldr r6, [sp, 0xC] - cmp r6, 0 - beq _080AEDBE - mov r6, r9 - ldrb r0, [r6, 0x2] - strb r0, [r4, 0x1E] - ldrb r1, [r6, 0x3] - movs r0, 0x80 - tst r0, r1 - bne _080AEDAA - movs r0, 0x70 - tst r0, r1 - bne _080AEDAC -_080AEDAA: - movs r1, 0x8 -_080AEDAC: - strb r1, [r4, 0x1F] - ldrb r2, [r5, 0x9] - adds r1, r3, 0 - ldr r0, [sp, 0xC] - ldr r3, [sp, 0x4] - ldr r3, [r3, 0x30] - bl _080AEB6C - b _080AEDC8 -_080AEDBE: - ldrb r2, [r5, 0x9] - adds r1, r3, 0 - adds r0, r7, 0 - bl sub_80AEE80 -_080AEDC8: - str r0, [r4, 0x20] - movs r0, 0x80 - strb r0, [r4] - ldrb r1, [r5] - movs r0, 0xF0 - ands r0, r1 - strb r0, [r5] -_080AEDD6: - add sp, 0x18 - pop {r0-r7} - mov r8, r0 - mov r9, r1 - mov r10, r2 - mov r11, r3 - pop {r0} - bx r0 - .align 2, 0 -_080AEDE8: .4byte SOUND_INFO_PTR -_080AEDEC: .4byte gUnknown_826FC00 - thumb_func_end sub_80AEBF0 - - thumb_func_start sub_80AEDF0 -sub_80AEDF0: - push {r4,r5} - ldr r2, [r1, 0x40] - ldrb r3, [r2] - cmp r3, 0x80 - bcs _080AEE02 - strb r3, [r1, 0x5] - adds r2, 0x1 - str r2, [r1, 0x40] - b _080AEE04 -_080AEE02: - ldrb r3, [r1, 0x5] -_080AEE04: - ldr r1, [r1, 0x20] - cmp r1, 0 - beq _080AEE2C - movs r4, 0x83 - movs r5, 0x40 -_080AEE0E: - ldrb r2, [r1] - tst r2, r4 - beq _080AEE26 - tst r2, r5 - bne _080AEE26 - ldrb r0, [r1, 0x11] - cmp r0, r3 - bne _080AEE26 - movs r0, 0x40 - orrs r2, r0 - strb r2, [r1] - b _080AEE2C -_080AEE26: - ldr r1, [r1, 0x34] - cmp r1, 0 - bne _080AEE0E -_080AEE2C: - pop {r4,r5} - bx lr - thumb_func_end sub_80AEDF0 - - thumb_func_start sub_80AEE30 -sub_80AEE30: - movs r2, 0 - strb r2, [r1, 0x16] - strb r2, [r1, 0x1A] - ldrb r2, [r1, 0x18] - cmp r2, 0 - bne _080AEE40 - movs r2, 0xC - b _080AEE42 -_080AEE40: - movs r2, 0x3 -_080AEE42: - ldrb r3, [r1] - orrs r3, r2 - strb r3, [r1] - bx lr - thumb_func_end sub_80AEE30 - - thumb_func_start sub_80AEE4C -sub_80AEE4C: - ldr r2, [r1, 0x40] - adds r3, r2, 0x1 - str r3, [r1, 0x40] - ldrb r3, [r2] - bx lr - thumb_func_end sub_80AEE4C - - thumb_func_start sub_80AEE58 -sub_80AEE58: - mov r12, lr - bl sub_80AEE4C - strb r3, [r1, 0x19] - cmp r3, 0 - bne _080AEE68 - bl sub_80AEE30 -_080AEE68: - bx r12 - thumb_func_end sub_80AEE58 - - thumb_func_start sub_80AEE6C -sub_80AEE6C: - mov r12, lr - bl sub_80AEE4C - strb r3, [r1, 0x17] - cmp r3, 0 - bne _080AEE7C - bl sub_80AEE30 -_080AEE7C: - bx r12 - thumb_func_end sub_80AEE6C - - thumb_func_start sub_80AEE80 -sub_80AEE80: - push {r4-r7,lr} - mov r12, r0 - lsls r1, 24 - lsrs r6, r1, 24 - lsls r7, r2, 24 - cmp r6, 0xB2 - bls _080AEE94 - movs r6, 0xB2 - movs r7, 0xFF - lsls r7, 24 -_080AEE94: - ldr r3, _080AEEDC - adds r0, r6, r3 - ldrb r5, [r0] - ldr r4, _080AEEE0 - movs r2, 0xF - adds r0, r5, 0 - ands r0, r2 - lsls r0, 2 - adds r0, r4 - lsrs r1, r5, 4 - ldr r5, [r0] - lsrs r5, r1 - adds r0, r6, 0x1 - adds r0, r3 - ldrb r1, [r0] - adds r0, r1, 0 - ands r0, r2 - lsls r0, 2 - adds r0, r4 - lsrs r1, 4 - ldr r0, [r0] - lsrs r0, r1 - mov r1, r12 - ldr r4, [r1, 0x4] - subs r0, r5 - adds r1, r7, 0 - bl umul3232H32 - adds r1, r0, 0 - adds r1, r5, r1 - adds r0, r4, 0 - bl umul3232H32 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AEEDC: .4byte gUnknown_826FA1C -_080AEEE0: .4byte gUnknown_826FAD0 - thumb_func_end sub_80AEE80 - - thumb_func_start nullsub_212 -nullsub_212: - bx lr - thumb_func_end nullsub_212 - - thumb_func_start sub_80AEEE8 -sub_80AEEE8: - adds r2, r0, 0 - ldr r3, [r2, 0x34] - ldr r0, _080AEEFC - cmp r3, r0 - bne _080AEEFA - ldr r0, [r2, 0x4] - ldr r1, _080AEF00 - ands r0, r1 - str r0, [r2, 0x4] -_080AEEFA: - bx lr - .align 2, 0 -_080AEEFC: .4byte 0x68736d53 -_080AEF00: .4byte 0x7fffffff - thumb_func_end sub_80AEEE8 - - thumb_func_start sub_80AEF04 -sub_80AEF04: - adds r2, r0, 0 - lsls r1, 16 - lsrs r1, 16 - ldr r3, [r2, 0x34] - ldr r0, _080AEF20 - cmp r3, r0 - bne _080AEF1C - strh r1, [r2, 0x26] - strh r1, [r2, 0x24] - movs r0, 0x80 - lsls r0, 1 - strh r0, [r2, 0x28] -_080AEF1C: - bx lr - .align 2, 0 -_080AEF20: .4byte 0x68736d53 - thumb_func_end sub_80AEF04 - - thumb_func_start sub_80AEF24 -sub_80AEF24: - push {r4-r6,lr} - ldr r0, _080AEF78 - movs r1, 0x2 - negs r1, r1 - ands r0, r1 - ldr r1, _080AEF7C - ldr r2, _080AEF80 - bl CpuSet - ldr r0, _080AEF84 - bl sub_80AF324 - ldr r0, _080AEF88 - bl sub_80AF1E0 - ldr r0, _080AEF8C - bl sub_80AF4C0 - ldr r0, _080AEF90 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - beq _080AEF72 - ldr r5, _080AEF94 - adds r6, r0, 0 -_080AEF56: - ldr r4, [r5] - ldr r1, [r5, 0x4] - ldrb r2, [r5, 0x8] - adds r0, r4, 0 - bl sub_80AF664 - ldrh r0, [r5, 0xA] - strb r0, [r4, 0xB] - ldr r0, _080AEF98 - str r0, [r4, 0x18] - adds r5, 0xC - subs r6, 0x1 - cmp r6, 0 - bne _080AEF56 -_080AEF72: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AEF78: .4byte sub_80AE2F8 -_080AEF7C: .4byte SoundMainRAM_Buffer -_080AEF80: .4byte 0x04000100 -_080AEF84: .4byte gUnknown_2039ED0 -_080AEF88: .4byte gUnknown_203AF10 -_080AEF8C: .4byte 0x0096e500 -_080AEF90: .4byte 0x00000008 -_080AEF94: .4byte 0x09e8665c -_080AEF98: .4byte gUnknown_2000A30 - thumb_func_end sub_80AEF24 - - thumb_func_start m4aSoundMain -m4aSoundMain: - push {lr} - bl SoundMain - pop {r0} - bx r0 - thumb_func_end m4aSoundMain - - thumb_func_start sub_80AEFA8 -sub_80AEFA8: - push {lr} - lsls r0, 16 - ldr r2, _080AEFCC - ldr r1, _080AEFD0 - lsrs r0, 13 - adds r0, r1 - ldrh r3, [r0, 0x4] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 2 - adds r1, r2 - ldr r2, [r1] - ldr r1, [r0] - adds r0, r2, 0 - bl sub_80AF6DC - pop {r0} - bx r0 - .align 2, 0 -_080AEFCC: .4byte 0x09e8665c -_080AEFD0: .4byte 0x09e866bc - thumb_func_end sub_80AEFA8 - - thumb_func_start sub_80AEFD4 -sub_80AEFD4: - push {lr} - lsls r0, 16 - ldr r2, _080AF000 - ldr r1, _080AF004 - lsrs r0, 13 - adds r0, r1 - ldrh r3, [r0, 0x4] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - ldr r3, [r1] - ldr r2, [r0] - cmp r3, r2 - beq _080AF008 - adds r0, r1, 0 - adds r1, r2, 0 - bl sub_80AF6DC - b _080AF01C - .align 2, 0 -_080AF000: .4byte 0x09e8665c -_080AF004: .4byte 0x09e866bc -_080AF008: - ldr r2, [r1, 0x4] - ldrh r0, [r1, 0x4] - cmp r0, 0 - beq _080AF014 - cmp r2, 0 - bge _080AF01C -_080AF014: - adds r0, r1, 0 - adds r1, r3, 0 - bl sub_80AF6DC -_080AF01C: - pop {r0} - bx r0 - thumb_func_end sub_80AEFD4 - - thumb_func_start sub_80AF020 -sub_80AF020: - push {lr} - lsls r0, 16 - ldr r2, _080AF04C - ldr r1, _080AF050 - lsrs r0, 13 - adds r0, r1 - ldrh r3, [r0, 0x4] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - ldr r3, [r1] - ldr r2, [r0] - cmp r3, r2 - beq _080AF054 - adds r0, r1, 0 - adds r1, r2, 0 - bl sub_80AF6DC - b _080AF070 - .align 2, 0 -_080AF04C: .4byte 0x09e8665c -_080AF050: .4byte 0x09e866bc -_080AF054: - ldr r2, [r1, 0x4] - ldrh r0, [r1, 0x4] - cmp r0, 0 - bne _080AF066 - adds r0, r1, 0 - adds r1, r3, 0 - bl sub_80AF6DC - b _080AF070 -_080AF066: - cmp r2, 0 - bge _080AF070 - adds r0, r1, 0 - bl sub_80AEEE8 -_080AF070: - pop {r0} - bx r0 - thumb_func_end sub_80AF020 - - thumb_func_start sub_80AF074 -sub_80AF074: - push {lr} - lsls r0, 16 - ldr r2, _080AF0A0 - ldr r1, _080AF0A4 - lsrs r0, 13 - adds r0, r1 - ldrh r3, [r0, 0x4] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 2 - adds r1, r2 - ldr r2, [r1] - ldr r1, [r2] - ldr r0, [r0] - cmp r1, r0 - bne _080AF09A - adds r0, r2, 0 - bl sub_80AF7C0 -_080AF09A: - pop {r0} - bx r0 - .align 2, 0 -_080AF0A0: .4byte 0x09e8665c -_080AF0A4: .4byte 0x09e866bc - thumb_func_end sub_80AF074 - - thumb_func_start sub_80AF0A8 -sub_80AF0A8: - push {lr} - lsls r0, 16 - ldr r2, _080AF0D4 - ldr r1, _080AF0D8 - lsrs r0, 13 - adds r0, r1 - ldrh r3, [r0, 0x4] - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 2 - adds r1, r2 - ldr r2, [r1] - ldr r1, [r2] - ldr r0, [r0] - cmp r1, r0 - bne _080AF0CE - adds r0, r2, 0 - bl sub_80AEEE8 -_080AF0CE: - pop {r0} - bx r0 - .align 2, 0 -_080AF0D4: .4byte 0x09e8665c -_080AF0D8: .4byte 0x09e866bc - thumb_func_end sub_80AF0A8 - - thumb_func_start sub_80AF0DC -sub_80AF0DC: - push {r4,r5,lr} - ldr r0, _080AF100 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - beq _080AF0FA - ldr r5, _080AF104 - adds r4, r0, 0 -_080AF0EC: - ldr r0, [r5] - bl sub_80AF7C0 - adds r5, 0xC - subs r4, 0x1 - cmp r4, 0 - bne _080AF0EC -_080AF0FA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080AF100: .4byte 0x00000008 -_080AF104: .4byte 0x09e8665c - thumb_func_end sub_80AF0DC - - thumb_func_start sub_80AF108 -sub_80AF108: - push {lr} - bl sub_80AEEE8 - pop {r0} - bx r0 - thumb_func_end sub_80AF108 - - thumb_func_start sub_80AF114 -sub_80AF114: - push {r4,r5,lr} - ldr r0, _080AF138 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - beq _080AF132 - ldr r5, _080AF13C - adds r4, r0, 0 -_080AF124: - ldr r0, [r5] - bl sub_80AEEE8 - adds r5, 0xC - subs r4, 0x1 - cmp r4, 0 - bne _080AF124 -_080AF132: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080AF138: .4byte 0x00000008 -_080AF13C: .4byte 0x09e8665c - thumb_func_end sub_80AF114 - - thumb_func_start sub_80AF140 -sub_80AF140: - push {lr} - lsls r1, 16 - lsrs r1, 16 - bl sub_80AEF04 - pop {r0} - bx r0 - thumb_func_end sub_80AF140 - - thumb_func_start sub_80AF150 -sub_80AF150: - adds r2, r0, 0 - lsls r1, 16 - lsrs r1, 16 - ldr r3, [r2, 0x34] - ldr r0, _080AF168 - cmp r3, r0 - bne _080AF166 - strh r1, [r2, 0x26] - strh r1, [r2, 0x24] - ldr r0, _080AF16C - strh r0, [r2, 0x28] -_080AF166: - bx lr - .align 2, 0 -_080AF168: .4byte 0x68736d53 -_080AF16C: .4byte 0x00000101 - thumb_func_end sub_80AF150 - - thumb_func_start sub_80AF170 -sub_80AF170: - adds r2, r0, 0 - lsls r1, 16 - lsrs r1, 16 - ldr r3, [r2, 0x34] - ldr r0, _080AF190 - cmp r3, r0 - bne _080AF18E - strh r1, [r2, 0x26] - strh r1, [r2, 0x24] - movs r0, 0x2 - strh r0, [r2, 0x28] - ldr r0, [r2, 0x4] - ldr r1, _080AF194 - ands r0, r1 - str r0, [r2, 0x4] -_080AF18E: - bx lr - .align 2, 0 -_080AF190: .4byte 0x68736d53 -_080AF194: .4byte 0x7fffffff - thumb_func_end sub_80AF170 - - thumb_func_start sub_80AF198 -sub_80AF198: - push {r4-r7,lr} - ldrb r5, [r0, 0x8] - ldr r4, [r0, 0x2C] - cmp r5, 0 - ble _080AF1DA - movs r7, 0x80 -_080AF1A4: - ldrb r1, [r4] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _080AF1D2 - movs r6, 0x40 - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _080AF1D2 - adds r0, r4, 0 - bl sub_80AF310 - strb r7, [r4] - movs r0, 0x2 - strb r0, [r4, 0xF] - strb r6, [r4, 0x13] - movs r0, 0x16 - strb r0, [r4, 0x19] - adds r1, r4, 0 - adds r1, 0x24 - movs r0, 0x1 - strb r0, [r1] -_080AF1D2: - subs r5, 0x1 - adds r4, 0x50 - cmp r5, 0 - bgt _080AF1A4 -_080AF1DA: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80AF198 - - thumb_func_start sub_80AF1E0 -sub_80AF1E0: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - ldr r1, _080AF2A8 - movs r0, 0x8F - strh r0, [r1] - ldr r3, _080AF2AC - movs r2, 0 - strh r2, [r3] - ldr r0, _080AF2B0 - movs r1, 0x8 - strb r1, [r0] - adds r0, 0x6 - strb r1, [r0] - adds r0, 0x10 - strb r1, [r0] - subs r0, 0x14 - movs r1, 0x80 - strb r1, [r0] - adds r0, 0x8 - strb r1, [r0] - adds r0, 0x10 - strb r1, [r0] - subs r0, 0xD - strb r2, [r0] - movs r0, 0x77 - strb r0, [r3] - ldr r0, _080AF2B4 - ldr r4, [r0] - ldr r6, [r4] - ldr r0, _080AF2B8 - cmp r6, r0 - bne _080AF2A0 - adds r0, r6, 0x1 - str r0, [r4] - ldr r1, _080AF2BC - ldr r0, _080AF2C0 - str r0, [r1, 0x20] - ldr r0, _080AF2C4 - str r0, [r1, 0x44] - ldr r0, _080AF2C8 - str r0, [r1, 0x4C] - ldr r0, _080AF2CC - str r0, [r1, 0x70] - ldr r0, _080AF2D0 - str r0, [r1, 0x74] - ldr r0, _080AF2D4 - str r0, [r1, 0x78] - ldr r0, _080AF2D8 - str r0, [r1, 0x7C] - adds r2, r1, 0 - adds r2, 0x80 - ldr r0, _080AF2DC - str r0, [r2] - adds r1, 0x84 - ldr r0, _080AF2E0 - str r0, [r1] - str r5, [r4, 0x1C] - ldr r0, _080AF2E4 - str r0, [r4, 0x28] - ldr r0, _080AF2E8 - str r0, [r4, 0x2C] - ldr r0, _080AF2EC - str r0, [r4, 0x30] - ldr r0, _080AF2F0 - movs r1, 0 - strb r0, [r4, 0xC] - str r1, [sp] - ldr r2, _080AF2F4 - mov r0, sp - adds r1, r5, 0 - bl CpuSet - movs r0, 0x1 - strb r0, [r5, 0x1] - movs r0, 0x11 - strb r0, [r5, 0x1C] - adds r1, r5, 0 - adds r1, 0x41 - movs r0, 0x2 - strb r0, [r1] - adds r1, 0x1B - movs r0, 0x22 - strb r0, [r1] - adds r1, 0x25 - movs r0, 0x3 - strb r0, [r1] - adds r1, 0x1B - movs r0, 0x44 - strb r0, [r1] - adds r1, 0x24 - movs r0, 0x4 - strb r0, [r1, 0x1] - movs r0, 0x88 - strb r0, [r1, 0x1C] - str r6, [r4] -_080AF2A0: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AF2A8: .4byte 0x04000084 -_080AF2AC: .4byte 0x04000080 -_080AF2B0: .4byte 0x04000063 -_080AF2B4: .4byte SOUND_INFO_PTR -_080AF2B8: .4byte 0x68736d53 -_080AF2BC: .4byte gUnknown_203AE80 -_080AF2C0: .4byte sub_80B019C -_080AF2C4: .4byte sub_80AEE58 -_080AF2C8: .4byte sub_80AEE6C -_080AF2CC: .4byte sub_80B02F4 -_080AF2D0: .4byte sub_80AEDF0 -_080AF2D4: .4byte sub_80AF41C -_080AF2D8: .4byte sub_80AEB7C -_080AF2DC: .4byte sub_80AF800 -_080AF2E0: .4byte sub_80AF8C8 -_080AF2E4: .4byte sub_80AFADC -_080AF2E8: .4byte sub_80AFA24 -_080AF2EC: .4byte sub_80AF97C -_080AF2F0: .4byte 0x00000000 -_080AF2F4: .4byte 0x05000040 - thumb_func_end sub_80AF1E0 - - thumb_func_start sub_80AF2F8 -sub_80AF2F8: - swi 0x2A - bx lr - thumb_func_end sub_80AF2F8 - - thumb_func_start sub_80AF2FC -sub_80AF2FC: - push {lr} - ldr r1, _080AF30C - ldr r1, [r1] - bl _call_via_r1 - pop {r0} - bx r0 - .align 2, 0 -_080AF30C: .4byte gUnknown_203AF08 - thumb_func_end sub_80AF2FC - - thumb_func_start sub_80AF310 -sub_80AF310: - push {lr} - ldr r1, _080AF320 - ldr r1, [r1] - bl _call_via_r1 - pop {r0} - bx r0 - .align 2, 0 -_080AF320: .4byte gUnknown_203AF0C - thumb_func_end sub_80AF310 - - thumb_func_start sub_80AF324 -sub_80AF324: - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - movs r3, 0 - str r3, [r5] - ldr r1, _080AF3DC - ldr r0, [r1] - movs r2, 0x80 - lsls r2, 18 - ands r0, r2 - cmp r0, 0 - beq _080AF340 - ldr r0, _080AF3E0 - str r0, [r1] -_080AF340: - ldr r1, _080AF3E4 - ldr r0, [r1] - ands r0, r2 - cmp r0, 0 - beq _080AF34E - ldr r0, _080AF3E0 - str r0, [r1] -_080AF34E: - ldr r0, _080AF3E8 - movs r2, 0x80 - lsls r2, 3 - adds r1, r2, 0 - strh r1, [r0] - adds r0, 0xC - strh r1, [r0] - ldr r1, _080AF3EC - movs r0, 0x8F - strh r0, [r1] - subs r1, 0x2 - ldr r2, _080AF3F0 - adds r0, r2, 0 - strh r0, [r1] - ldr r2, _080AF3F4 - ldrb r1, [r2] - movs r0, 0x3F - ands r0, r1 - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - ldr r1, _080AF3F8 - movs r2, 0xD4 - lsls r2, 2 - adds r0, r5, r2 - str r0, [r1] - adds r1, 0x4 - ldr r0, _080AF3FC - str r0, [r1] - adds r1, 0x8 - movs r2, 0x98 - lsls r2, 4 - adds r0, r5, r2 - str r0, [r1] - adds r1, 0x4 - ldr r0, _080AF400 - str r0, [r1] - ldr r0, _080AF404 - str r5, [r0] - str r3, [sp] - ldr r2, _080AF408 - mov r0, sp - adds r1, r5, 0 - bl CpuSet - movs r0, 0x8 - strb r0, [r5, 0x6] - movs r0, 0xF - strb r0, [r5, 0x7] - ldr r0, _080AF40C - str r0, [r5, 0x38] - ldr r0, _080AF410 - str r0, [r5, 0x28] - str r0, [r5, 0x2C] - str r0, [r5, 0x30] - str r0, [r5, 0x3C] - ldr r4, _080AF414 - adds r0, r4, 0 - bl sub_80AE704 - str r4, [r5, 0x34] - movs r0, 0x80 - lsls r0, 11 - bl sub_80AF41C - ldr r0, _080AF418 - str r0, [r5] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080AF3DC: .4byte 0x040000c4 -_080AF3E0: .4byte 0x84400004 -_080AF3E4: .4byte 0x040000d0 -_080AF3E8: .4byte 0x040000c6 -_080AF3EC: .4byte 0x04000084 -_080AF3F0: .4byte 0x0000a90e -_080AF3F4: .4byte 0x04000089 -_080AF3F8: .4byte 0x040000bc -_080AF3FC: .4byte 0x040000a0 -_080AF400: .4byte 0x040000a4 -_080AF404: .4byte SOUND_INFO_PTR -_080AF408: .4byte 0x050003ec -_080AF40C: .4byte sub_80AEBF0 -_080AF410: .4byte nullsub_139 -_080AF414: .4byte gUnknown_203AE80 -_080AF418: .4byte 0x68736d53 - thumb_func_end sub_80AF324 - - thumb_func_start sub_80AF41C -sub_80AF41C: - push {r4-r6,lr} - adds r2, r0, 0 - ldr r0, _080AF49C - ldr r4, [r0] - movs r0, 0xF0 - lsls r0, 12 - ands r0, r2 - lsrs r2, r0, 16 - movs r6, 0 - strb r2, [r4, 0x8] - ldr r1, _080AF4A0 - subs r0, r2, 0x1 - lsls r0, 1 - adds r0, r1 - ldrh r5, [r0] - str r5, [r4, 0x10] - movs r0, 0xC6 - lsls r0, 3 - adds r1, r5, 0 - bl __divsi3 - strb r0, [r4, 0xB] - ldr r0, _080AF4A4 - muls r0, r5 - ldr r1, _080AF4A8 - adds r0, r1 - ldr r1, _080AF4AC - bl __divsi3 - adds r1, r0, 0 - str r1, [r4, 0x14] - movs r0, 0x80 - lsls r0, 17 - bl __divsi3 - adds r0, 0x1 - asrs r0, 1 - str r0, [r4, 0x18] - ldr r0, _080AF4B0 - strh r6, [r0] - ldr r4, _080AF4B4 - ldr r0, _080AF4B8 - adds r1, r5, 0 - bl __divsi3 - negs r0, r0 - strh r0, [r4] - bl sub_80AF628 - ldr r1, _080AF4BC -_080AF480: - ldrb r0, [r1] - cmp r0, 0x9F - beq _080AF480 - ldr r1, _080AF4BC -_080AF488: - ldrb r0, [r1] - cmp r0, 0x9F - bne _080AF488 - ldr r1, _080AF4B0 - movs r0, 0x80 - strh r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AF49C: .4byte SOUND_INFO_PTR -_080AF4A0: .4byte gUnknown_826FB00 -_080AF4A4: .4byte 0x00091d1b -_080AF4A8: .4byte 0x00001388 -_080AF4AC: .4byte 0x00002710 -_080AF4B0: .4byte 0x04000102 -_080AF4B4: .4byte 0x04000100 -_080AF4B8: .4byte 0x00044940 -_080AF4BC: .4byte 0x04000006 - thumb_func_end sub_80AF41C - - thumb_func_start sub_80AF4C0 -sub_80AF4C0: - push {r4,r5,lr} - adds r3, r0, 0 - ldr r0, _080AF54C - ldr r5, [r0] - ldr r1, [r5] - ldr r0, _080AF550 - cmp r1, r0 - bne _080AF546 - adds r0, r1, 0x1 - str r0, [r5] - movs r4, 0xFF - ands r4, r3 - cmp r4, 0 - beq _080AF4E2 - movs r0, 0x7F - ands r4, r0 - strb r4, [r5, 0x5] -_080AF4E2: - movs r4, 0xF0 - lsls r4, 4 - ands r4, r3 - cmp r4, 0 - beq _080AF502 - lsrs r0, r4, 8 - strb r0, [r5, 0x6] - movs r4, 0xC - adds r0, r5, 0 - adds r0, 0x50 - movs r1, 0 -_080AF4F8: - strb r1, [r0] - subs r4, 0x1 - adds r0, 0x40 - cmp r4, 0 - bne _080AF4F8 -_080AF502: - movs r4, 0xF0 - lsls r4, 8 - ands r4, r3 - cmp r4, 0 - beq _080AF510 - lsrs r0, r4, 12 - strb r0, [r5, 0x7] -_080AF510: - movs r4, 0xB0 - lsls r4, 16 - ands r4, r3 - cmp r4, 0 - beq _080AF52E - movs r0, 0xC0 - lsls r0, 14 - ands r0, r4 - lsrs r4, r0, 14 - ldr r2, _080AF554 - ldrb r1, [r2] - movs r0, 0x3F - ands r0, r1 - orrs r0, r4 - strb r0, [r2] -_080AF52E: - movs r4, 0xF0 - lsls r4, 12 - ands r4, r3 - cmp r4, 0 - beq _080AF542 - bl sub_80AF5AC - adds r0, r4, 0 - bl sub_80AF41C -_080AF542: - ldr r0, _080AF550 - str r0, [r5] -_080AF546: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080AF54C: .4byte SOUND_INFO_PTR -_080AF550: .4byte 0x68736d53 -_080AF554: .4byte 0x04000089 - thumb_func_end sub_80AF4C0 - - thumb_func_start sub_80AF558 -sub_80AF558: - push {r4-r7,lr} - ldr r0, _080AF5A4 - ldr r6, [r0] - ldr r1, [r6] - ldr r0, _080AF5A8 - cmp r1, r0 - bne _080AF59E - adds r0, r1, 0x1 - str r0, [r6] - movs r5, 0xC - adds r4, r6, 0 - adds r4, 0x50 - movs r0, 0 -_080AF572: - strb r0, [r4] - subs r5, 0x1 - adds r4, 0x40 - cmp r5, 0 - bgt _080AF572 - ldr r4, [r6, 0x1C] - cmp r4, 0 - beq _080AF59A - movs r5, 0x1 - movs r7, 0 -_080AF586: - lsls r0, r5, 24 - lsrs r0, 24 - ldr r1, [r6, 0x2C] - bl _call_via_r1 - strb r7, [r4] - adds r5, 0x1 - adds r4, 0x40 - cmp r5, 0x4 - ble _080AF586 -_080AF59A: - ldr r0, _080AF5A8 - str r0, [r6] -_080AF59E: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AF5A4: .4byte SOUND_INFO_PTR -_080AF5A8: .4byte 0x68736d53 - thumb_func_end sub_80AF558 - - thumb_func_start sub_80AF5AC -sub_80AF5AC: - push {lr} - sub sp, 0x4 - ldr r0, _080AF60C - ldr r2, [r0] - ldr r1, [r2] - ldr r3, _080AF610 - adds r0, r1, r3 - cmp r0, 0x1 - bhi _080AF604 - adds r0, r1, 0 - adds r0, 0xA - str r0, [r2] - ldr r1, _080AF614 - ldr r0, [r1] - movs r3, 0x80 - lsls r3, 18 - ands r0, r3 - cmp r0, 0 - beq _080AF5D6 - ldr r0, _080AF618 - str r0, [r1] -_080AF5D6: - ldr r1, _080AF61C - ldr r0, [r1] - ands r0, r3 - cmp r0, 0 - beq _080AF5E4 - ldr r0, _080AF618 - str r0, [r1] -_080AF5E4: - ldr r0, _080AF620 - movs r3, 0x80 - lsls r3, 3 - adds r1, r3, 0 - strh r1, [r0] - adds r0, 0xC - strh r1, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0xD4 - lsls r0, 2 - adds r1, r2, r0 - ldr r2, _080AF624 - mov r0, sp - bl CpuSet -_080AF604: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080AF60C: .4byte SOUND_INFO_PTR -_080AF610: .4byte 0x978c92ad -_080AF614: .4byte 0x040000c4 -_080AF618: .4byte 0x84400004 -_080AF61C: .4byte 0x040000d0 -_080AF620: .4byte 0x040000c6 -_080AF624: .4byte 0x05000318 - thumb_func_end sub_80AF5AC - - thumb_func_start sub_80AF628 -sub_80AF628: - push {r4,lr} - ldr r0, _080AF658 - ldr r2, [r0] - ldr r3, [r2] - ldr r0, _080AF65C - cmp r3, r0 - beq _080AF650 - ldr r0, _080AF660 - movs r4, 0xB6 - lsls r4, 8 - adds r1, r4, 0 - strh r1, [r0] - adds r0, 0xC - strh r1, [r0] - ldrb r0, [r2, 0x4] - movs r0, 0 - strb r0, [r2, 0x4] - adds r0, r3, 0 - subs r0, 0xA - str r0, [r2] -_080AF650: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AF658: .4byte SOUND_INFO_PTR -_080AF65C: .4byte 0x68736d53 -_080AF660: .4byte 0x040000c6 - thumb_func_end sub_80AF628 - - thumb_func_start sub_80AF664 -sub_80AF664: - push {r4-r7,lr} - adds r7, r0, 0 - adds r6, r1, 0 - lsls r2, 24 - lsrs r4, r2, 24 - cmp r4, 0 - beq _080AF6C8 - cmp r4, 0x10 - bls _080AF678 - movs r4, 0x10 -_080AF678: - ldr r0, _080AF6D0 - ldr r5, [r0] - ldr r1, [r5] - ldr r0, _080AF6D4 - cmp r1, r0 - bne _080AF6C8 - adds r0, r1, 0x1 - str r0, [r5] - adds r0, r7, 0 - bl sub_80AF310 - str r6, [r7, 0x2C] - strb r4, [r7, 0x8] - movs r0, 0x80 - lsls r0, 24 - str r0, [r7, 0x4] - cmp r4, 0 - beq _080AF6AC - movs r1, 0 -_080AF69E: - strb r1, [r6] - subs r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - adds r6, 0x50 - cmp r4, 0 - bne _080AF69E -_080AF6AC: - ldr r0, [r5, 0x20] - cmp r0, 0 - beq _080AF6BC - str r0, [r7, 0x38] - ldr r0, [r5, 0x24] - str r0, [r7, 0x3C] - movs r0, 0 - str r0, [r5, 0x20] -_080AF6BC: - str r7, [r5, 0x24] - ldr r0, _080AF6D8 - str r0, [r5, 0x20] - ldr r0, _080AF6D4 - str r0, [r5] - str r0, [r7, 0x34] -_080AF6C8: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AF6D0: .4byte SOUND_INFO_PTR -_080AF6D4: .4byte 0x68736d53 -_080AF6D8: .4byte sub_80AE914 - thumb_func_end sub_80AF664 - - thumb_func_start sub_80AF6DC -sub_80AF6DC: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - adds r7, r1, 0 - ldr r1, [r5, 0x34] - ldr r0, _080AF7BC - cmp r1, r0 - bne _080AF7B2 - ldrb r0, [r5, 0xB] - ldrb r2, [r7, 0x2] - cmp r0, 0 - beq _080AF71E - ldr r0, [r5] - cmp r0, 0 - beq _080AF708 - ldr r1, [r5, 0x2C] - movs r0, 0x40 - ldrb r1, [r1] - ands r0, r1 - cmp r0, 0 - bne _080AF714 -_080AF708: - ldr r1, [r5, 0x4] - ldrh r0, [r5, 0x4] - cmp r0, 0 - beq _080AF71E - cmp r1, 0 - blt _080AF71E -_080AF714: - ldrb r0, [r7, 0x2] - adds r2, r0, 0 - ldrb r0, [r5, 0x9] - cmp r0, r2 - bhi _080AF7B2 -_080AF71E: - ldr r0, [r5, 0x34] - adds r0, 0x1 - str r0, [r5, 0x34] - movs r1, 0 - str r1, [r5, 0x4] - str r7, [r5] - ldr r0, [r7, 0x4] - str r0, [r5, 0x30] - strb r2, [r5, 0x9] - str r1, [r5, 0xC] - movs r0, 0x96 - strh r0, [r5, 0x1C] - strh r0, [r5, 0x20] - adds r0, 0x6A - strh r0, [r5, 0x1E] - strh r1, [r5, 0x22] - strh r1, [r5, 0x24] - movs r6, 0 - ldr r4, [r5, 0x2C] - ldrb r1, [r7] - cmp r6, r1 - bge _080AF77E - ldrb r0, [r5, 0x8] - cmp r6, r0 - bge _080AF79E - mov r8, r6 -_080AF752: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80AEB7C - movs r0, 0xC0 - strb r0, [r4] - mov r1, r8 - str r1, [r4, 0x20] - lsls r1, r6, 2 - adds r0, r7, 0 - adds r0, 0x8 - adds r0, r1 - ldr r0, [r0] - str r0, [r4, 0x40] - adds r6, 0x1 - adds r4, 0x50 - ldrb r0, [r7] - cmp r6, r0 - bge _080AF77E - ldrb r1, [r5, 0x8] - cmp r6, r1 - blt _080AF752 -_080AF77E: - ldrb r0, [r5, 0x8] - cmp r6, r0 - bge _080AF79E - movs r1, 0 - mov r8, r1 -_080AF788: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80AEB7C - mov r0, r8 - strb r0, [r4] - adds r6, 0x1 - adds r4, 0x50 - ldrb r1, [r5, 0x8] - cmp r6, r1 - blt _080AF788 -_080AF79E: - movs r0, 0x80 - ldrb r1, [r7, 0x3] - ands r0, r1 - cmp r0, 0 - beq _080AF7AE - ldrb r0, [r7, 0x3] - bl sub_80AF4C0 -_080AF7AE: - ldr r0, _080AF7BC - str r0, [r5, 0x34] -_080AF7B2: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AF7BC: .4byte 0x68736d53 - thumb_func_end sub_80AF6DC - - thumb_func_start sub_80AF7C0 -sub_80AF7C0: - push {r4-r6,lr} - adds r6, r0, 0 - ldr r1, [r6, 0x34] - ldr r0, _080AF7FC - cmp r1, r0 - bne _080AF7F6 - adds r0, r1, 0x1 - str r0, [r6, 0x34] - ldr r0, [r6, 0x4] - movs r1, 0x80 - lsls r1, 24 - orrs r0, r1 - str r0, [r6, 0x4] - ldrb r4, [r6, 0x8] - ldr r5, [r6, 0x2C] - cmp r4, 0 - ble _080AF7F2 -_080AF7E2: - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_80AEB7C - subs r4, 0x1 - adds r5, 0x50 - cmp r4, 0 - bgt _080AF7E2 -_080AF7F2: - ldr r0, _080AF7FC - str r0, [r6, 0x34] -_080AF7F6: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AF7FC: .4byte 0x68736d53 - thumb_func_end sub_80AF7C0 - - thumb_func_start sub_80AF800 -sub_80AF800: - push {r4-r7,lr} - adds r6, r0, 0 - ldrh r1, [r6, 0x24] - cmp r1, 0 - beq _080AF8C2 - ldrh r0, [r6, 0x26] - subs r0, 0x1 - strh r0, [r6, 0x26] - ldr r3, _080AF840 - adds r2, r3, 0 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0 - bne _080AF8C2 - strh r1, [r6, 0x26] - ldrh r1, [r6, 0x28] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080AF844 - adds r0, r1, 0 - adds r0, 0x10 - strh r0, [r6, 0x28] - ands r0, r2 - cmp r0, 0xFF - bls _080AF896 - movs r0, 0x80 - lsls r0, 1 - strh r0, [r6, 0x28] - strh r3, [r6, 0x24] - b _080AF896 - .align 2, 0 -_080AF840: .4byte 0x0000ffff -_080AF844: - adds r0, r1, 0 - subs r0, 0x10 - strh r0, [r6, 0x28] - ands r0, r2 - lsls r0, 16 - cmp r0, 0 - bgt _080AF896 - ldrb r5, [r6, 0x8] - ldr r4, [r6, 0x2C] - cmp r5, 0 - ble _080AF876 -_080AF85A: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80AEB7C - movs r0, 0x1 - ldrh r7, [r6, 0x28] - ands r0, r7 - cmp r0, 0 - bne _080AF86E - strb r0, [r4] -_080AF86E: - subs r5, 0x1 - adds r4, 0x50 - cmp r5, 0 - bgt _080AF85A -_080AF876: - movs r0, 0x1 - ldrh r1, [r6, 0x28] - ands r0, r1 - cmp r0, 0 - beq _080AF88A - ldr r0, [r6, 0x4] - movs r1, 0x80 - lsls r1, 24 - orrs r0, r1 - b _080AF88E -_080AF88A: - movs r0, 0x80 - lsls r0, 24 -_080AF88E: - str r0, [r6, 0x4] - movs r0, 0 - strh r0, [r6, 0x24] - b _080AF8C2 -_080AF896: - ldrb r5, [r6, 0x8] - ldr r4, [r6, 0x2C] - cmp r5, 0 - ble _080AF8C2 - movs r3, 0x80 - movs r7, 0 - movs r2, 0x3 -_080AF8A4: - ldrb r1, [r4] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _080AF8BA - ldrh r7, [r6, 0x28] - lsrs r0, r7, 2 - strb r0, [r4, 0x13] - adds r0, r1, 0 - orrs r0, r2 - strb r0, [r4] -_080AF8BA: - subs r5, 0x1 - adds r4, 0x50 - cmp r5, 0 - bgt _080AF8A4 -_080AF8C2: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80AF800 - - thumb_func_start sub_80AF8C8 -sub_80AF8C8: - push {r4,lr} - adds r2, r1, 0 - movs r0, 0x1 - ldrb r1, [r2] - ands r0, r1 - cmp r0, 0 - beq _080AF92C - ldrb r3, [r2, 0x13] - ldrb r1, [r2, 0x12] - adds r0, r3, 0 - muls r0, r1 - lsrs r3, r0, 5 - ldrb r4, [r2, 0x18] - cmp r4, 0x1 - bne _080AF8F0 - movs r0, 0x16 - ldrsb r0, [r2, r0] - adds r0, 0x80 - muls r0, r3 - lsrs r3, r0, 7 -_080AF8F0: - movs r0, 0x14 - ldrsb r0, [r2, r0] - lsls r0, 1 - movs r1, 0x15 - ldrsb r1, [r2, r1] - adds r1, r0, r1 - cmp r4, 0x2 - bne _080AF906 - movs r0, 0x16 - ldrsb r0, [r2, r0] - adds r1, r0 -_080AF906: - movs r0, 0x80 - negs r0, r0 - cmp r1, r0 - bge _080AF912 - adds r1, r0, 0 - b _080AF918 -_080AF912: - cmp r1, 0x7F - ble _080AF918 - movs r1, 0x7F -_080AF918: - adds r0, r1, 0 - adds r0, 0x80 - muls r0, r3 - lsrs r0, 8 - strb r0, [r2, 0x10] - movs r0, 0x7F - subs r0, r1 - muls r0, r3 - lsrs r0, 8 - strb r0, [r2, 0x11] -_080AF92C: - ldrb r1, [r2] - movs r0, 0x4 - ands r0, r1 - adds r3, r1, 0 - cmp r0, 0 - beq _080AF970 - movs r0, 0xE - ldrsb r0, [r2, r0] - ldrb r1, [r2, 0xF] - muls r0, r1 - movs r1, 0xC - ldrsb r1, [r2, r1] - adds r1, r0 - lsls r1, 2 - movs r0, 0xA - ldrsb r0, [r2, r0] - lsls r0, 8 - adds r1, r0 - movs r0, 0xB - ldrsb r0, [r2, r0] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0xD] - adds r1, r0, r1 - ldrb r0, [r2, 0x18] - cmp r0, 0 - bne _080AF96A - movs r0, 0x16 - ldrsb r0, [r2, r0] - lsls r0, 4 - adds r1, r0 -_080AF96A: - asrs r0, r1, 8 - strb r0, [r2, 0x8] - strb r1, [r2, 0x9] -_080AF970: - movs r0, 0xFA - ands r0, r3 - strb r0, [r2] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AF8C8 - - thumb_func_start sub_80AF97C -sub_80AF97C: - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r2, 24 - mov r12, r2 - cmp r0, 0x4 - bne _080AF9B4 - cmp r5, 0x14 - bhi _080AF998 - movs r5, 0 - b _080AF9A6 -_080AF998: - adds r0, r5, 0 - subs r0, 0x15 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3B - bls _080AF9A6 - movs r5, 0x3B -_080AF9A6: - ldr r0, _080AF9B0 - adds r0, r5, r0 - ldrb r0, [r0] - b _080AFA16 - .align 2, 0 -_080AF9B0: .4byte gUnknown_826FBB4 -_080AF9B4: - cmp r5, 0x23 - bhi _080AF9C0 - movs r0, 0 - mov r12, r0 - movs r5, 0 - b _080AF9D2 -_080AF9C0: - adds r0, r5, 0 - subs r0, 0x24 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x82 - bls _080AF9D2 - movs r5, 0x82 - movs r1, 0xFF - mov r12, r1 -_080AF9D2: - ldr r3, _080AFA1C - adds r0, r5, r3 - ldrb r6, [r0] - ldr r4, _080AFA20 - movs r2, 0xF - adds r0, r6, 0 - ands r0, r2 - lsls r0, 1 - adds r0, r4 - movs r7, 0 - ldrsh r1, [r0, r7] - asrs r0, r6, 4 - adds r6, r1, 0 - asrs r6, r0 - adds r0, r5, 0x1 - adds r0, r3 - ldrb r1, [r0] - adds r0, r1, 0 - ands r0, r2 - lsls r0, 1 - adds r0, r4 - movs r2, 0 - ldrsh r0, [r0, r2] - asrs r1, 4 - asrs r0, r1 - subs r0, r6 - mov r7, r12 - muls r7, r0 - adds r0, r7, 0 - asrs r0, 8 - adds r0, r6, r0 - movs r1, 0x80 - lsls r1, 4 - adds r0, r1 -_080AFA16: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AFA1C: .4byte gUnknown_826FB18 -_080AFA20: .4byte gUnknown_826FB9C - thumb_func_end sub_80AF97C - - thumb_func_start sub_80AFA24 -sub_80AFA24: - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0x2 - beq _080AFA4C - cmp r0, 0x2 - bgt _080AFA38 - cmp r0, 0x1 - beq _080AFA3E - b _080AFA60 -_080AFA38: - cmp r1, 0x3 - beq _080AFA54 - b _080AFA60 -_080AFA3E: - ldr r1, _080AFA48 - movs r0, 0x8 - strb r0, [r1] - adds r1, 0x2 - b _080AFA68 - .align 2, 0 -_080AFA48: .4byte 0x04000063 -_080AFA4C: - ldr r1, _080AFA50 - b _080AFA62 - .align 2, 0 -_080AFA50: .4byte 0x04000069 -_080AFA54: - ldr r1, _080AFA5C - movs r0, 0 - b _080AFA6A - .align 2, 0 -_080AFA5C: .4byte 0x04000070 -_080AFA60: - ldr r1, _080AFA70 -_080AFA62: - movs r0, 0x8 - strb r0, [r1] - adds r1, 0x4 -_080AFA68: - movs r0, 0x80 -_080AFA6A: - strb r0, [r1] - bx lr - .align 2, 0 -_080AFA70: .4byte 0x04000079 - thumb_func_end sub_80AFA24 - - thumb_func_start sub_80AFA74 -sub_80AFA74: - push {r4,lr} - adds r1, r0, 0 - ldrb r0, [r1, 0x2] - lsls r2, r0, 24 - lsrs r4, r2, 24 - ldrb r3, [r1, 0x3] - lsls r0, r3, 24 - lsrs r3, r0, 24 - cmp r4, r3 - bcc _080AFA94 - lsrs r0, r2, 25 - cmp r0, r3 - bcc _080AFAA0 - movs r0, 0xF - strb r0, [r1, 0x1B] - b _080AFAAE -_080AFA94: - lsrs r0, 25 - cmp r0, r4 - bcc _080AFAA0 - movs r0, 0xF0 - strb r0, [r1, 0x1B] - b _080AFAAE -_080AFAA0: - movs r0, 0xFF - strb r0, [r1, 0x1B] - ldrb r2, [r1, 0x3] - ldrb r3, [r1, 0x2] - adds r0, r2, r3 - lsrs r0, 4 - b _080AFABE -_080AFAAE: - ldrb r2, [r1, 0x3] - ldrb r3, [r1, 0x2] - adds r0, r2, r3 - lsrs r0, 4 - strb r0, [r1, 0xA] - cmp r0, 0xF - bls _080AFAC0 - movs r0, 0xF -_080AFABE: - strb r0, [r1, 0xA] -_080AFAC0: - ldrb r2, [r1, 0x6] - ldrb r3, [r1, 0xA] - adds r0, r2, 0 - muls r0, r3 - adds r0, 0xF - asrs r0, 4 - strb r0, [r1, 0x19] - ldrb r0, [r1, 0x1C] - ldrb r2, [r1, 0x1B] - ands r0, r2 - strb r0, [r1, 0x1B] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AFA74 - - thumb_func_start sub_80AFADC -sub_80AFADC: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - ldr r0, _080AFAFC - ldr r0, [r0] - str r0, [sp, 0x4] - ldrb r0, [r0, 0xA] - cmp r0, 0 - beq _080AFB00 - subs r0, 0x1 - ldr r1, [sp, 0x4] - strb r0, [r1, 0xA] - b _080AFB06 - .align 2, 0 -_080AFAFC: .4byte SOUND_INFO_PTR -_080AFB00: - movs r0, 0xE - ldr r2, [sp, 0x4] - strb r0, [r2, 0xA] -_080AFB06: - movs r6, 0x1 - ldr r0, [sp, 0x4] - ldr r4, [r0, 0x1C] -_080AFB0C: - ldrb r1, [r4] - movs r0, 0xC7 - ands r0, r1 - adds r2, r6, 0x1 - mov r10, r2 - movs r2, 0x40 - adds r2, r4 - mov r9, r2 - cmp r0, 0 - bne _080AFB22 - b _080AFF0C -_080AFB22: - cmp r6, 0x2 - beq _080AFB54 - cmp r6, 0x2 - bgt _080AFB30 - cmp r6, 0x1 - beq _080AFB36 - b _080AFB8C -_080AFB30: - cmp r6, 0x3 - beq _080AFB6C - b _080AFB8C -_080AFB36: - ldr r0, _080AFB48 - str r0, [sp, 0x8] - ldr r7, _080AFB4C - ldr r2, _080AFB50 - str r2, [sp, 0xC] - adds r0, 0x4 - str r0, [sp, 0x10] - adds r2, 0x2 - b _080AFB9C - .align 2, 0 -_080AFB48: .4byte 0x04000060 -_080AFB4C: .4byte 0x04000062 -_080AFB50: .4byte 0x04000063 -_080AFB54: - ldr r0, _080AFB60 - str r0, [sp, 0x8] - ldr r7, _080AFB64 - ldr r2, _080AFB68 - b _080AFB94 - .align 2, 0 -_080AFB60: .4byte 0x04000061 -_080AFB64: .4byte 0x04000068 -_080AFB68: .4byte 0x04000069 -_080AFB6C: - ldr r0, _080AFB80 - str r0, [sp, 0x8] - ldr r7, _080AFB84 - ldr r2, _080AFB88 - str r2, [sp, 0xC] - adds r0, 0x4 - str r0, [sp, 0x10] - adds r2, 0x2 - b _080AFB9C - .align 2, 0 -_080AFB80: .4byte 0x04000070 -_080AFB84: .4byte 0x04000072 -_080AFB88: .4byte 0x04000073 -_080AFB8C: - ldr r0, _080AFBEC - str r0, [sp, 0x8] - ldr r7, _080AFBF0 - ldr r2, _080AFBF4 -_080AFB94: - str r2, [sp, 0xC] - adds r0, 0xB - str r0, [sp, 0x10] - adds r2, 0x4 -_080AFB9C: - str r2, [sp, 0x14] - ldr r0, [sp, 0x4] - ldrb r0, [r0, 0xA] - str r0, [sp] - ldr r2, [sp, 0xC] - ldrb r0, [r2] - mov r8, r0 - adds r2, r1, 0 - movs r0, 0x80 - ands r0, r2 - cmp r0, 0 - beq _080AFC92 - movs r3, 0x40 - adds r0, r3, 0 - ands r0, r2 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r6, 0x1 - mov r10, r0 - movs r1, 0x40 - adds r1, r4 - mov r9, r1 - cmp r5, 0 - bne _080AFCB6 - movs r0, 0x3 - strb r0, [r4] - strb r0, [r4, 0x1D] - adds r0, r4, 0 - str r3, [sp, 0x18] - bl sub_80AFA74 - ldr r3, [sp, 0x18] - cmp r6, 0x2 - beq _080AFC04 - cmp r6, 0x2 - bgt _080AFBF8 - cmp r6, 0x1 - beq _080AFBFE - b _080AFC58 - .align 2, 0 -_080AFBEC: .4byte 0x04000071 -_080AFBF0: .4byte 0x04000078 -_080AFBF4: .4byte 0x04000079 -_080AFBF8: - cmp r6, 0x3 - beq _080AFC10 - b _080AFC58 -_080AFBFE: - ldrb r0, [r4, 0x1F] - ldr r2, [sp, 0x8] - strb r0, [r2] -_080AFC04: - ldr r0, [r4, 0x24] - lsls r0, 6 - ldrb r1, [r4, 0x1E] - adds r0, r1, r0 - strb r0, [r7] - b _080AFC64 -_080AFC10: - ldr r1, [r4, 0x24] - ldr r0, [r4, 0x28] - cmp r1, r0 - beq _080AFC38 - ldr r2, [sp, 0x8] - strb r3, [r2] - ldr r1, _080AFC4C - ldr r2, [r4, 0x24] - ldr r0, [r2] - str r0, [r1] - adds r1, 0x4 - ldr r0, [r2, 0x4] - str r0, [r1] - adds r1, 0x4 - ldr r0, [r2, 0x8] - str r0, [r1] - adds r1, 0x4 - ldr r0, [r2, 0xC] - str r0, [r1] - str r2, [r4, 0x28] -_080AFC38: - ldr r0, [sp, 0x8] - strb r5, [r0] - ldrb r0, [r4, 0x1E] - strb r0, [r7] - ldrb r0, [r4, 0x1E] - cmp r0, 0 - beq _080AFC50 - movs r0, 0xC0 - b _080AFC72 - .align 2, 0 -_080AFC4C: .4byte 0x04000090 -_080AFC50: - movs r1, 0x80 - negs r1, r1 - strb r1, [r4, 0x1A] - b _080AFC74 -_080AFC58: - ldrb r0, [r4, 0x1E] - strb r0, [r7] - ldr r0, [r4, 0x24] - lsls r0, 3 - ldr r2, [sp, 0x10] - strb r0, [r2] -_080AFC64: - ldrb r0, [r4, 0x4] - adds r0, 0x8 - mov r8, r0 - ldrb r0, [r4, 0x1E] - cmp r0, 0 - beq _080AFC72 - movs r0, 0x40 -_080AFC72: - strb r0, [r4, 0x1A] -_080AFC74: - ldrb r1, [r4, 0x4] - movs r2, 0 - strb r1, [r4, 0xB] - movs r0, 0xFF - ands r0, r1 - adds r1, r6, 0x1 - mov r10, r1 - movs r1, 0x40 - adds r1, r4 - mov r9, r1 - cmp r0, 0 - bne _080AFC8E - b _080AFDCA -_080AFC8E: - strb r2, [r4, 0x9] - b _080AFDF8 -_080AFC92: - movs r0, 0x4 - ands r0, r2 - cmp r0, 0 - beq _080AFCC4 - ldrb r0, [r4, 0xD] - subs r0, 0x1 - strb r0, [r4, 0xD] - movs r2, 0xFF - ands r0, r2 - lsls r0, 24 - adds r1, r6, 0x1 - mov r10, r1 - movs r2, 0x40 - adds r2, r4 - mov r9, r2 - cmp r0, 0 - ble _080AFCB6 - b _080AFE0A -_080AFCB6: - lsls r0, r6, 24 - lsrs r0, 24 - bl sub_80AFA24 - movs r0, 0 - strb r0, [r4] - b _080AFF08 -_080AFCC4: - movs r0, 0x40 - ands r0, r1 - adds r2, r6, 0x1 - mov r10, r2 - movs r2, 0x40 - adds r2, r4 - mov r9, r2 - cmp r0, 0 - beq _080AFD04 - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _080AFD04 - movs r0, 0xFC - ands r0, r1 - movs r2, 0 - strb r0, [r4] - ldrb r1, [r4, 0x7] - strb r1, [r4, 0xB] - movs r0, 0xFF - ands r0, r1 - cmp r0, 0 - beq _080AFD36 - movs r0, 0x1 - ldrb r1, [r4, 0x1D] - orrs r0, r1 - strb r0, [r4, 0x1D] - cmp r6, 0x3 - beq _080AFDF8 - ldrb r2, [r4, 0x7] - mov r8, r2 - b _080AFDF8 -_080AFD04: - ldrb r0, [r4, 0xB] - cmp r0, 0 - bne _080AFDF8 - cmp r6, 0x3 - bne _080AFD16 - movs r0, 0x1 - ldrb r1, [r4, 0x1D] - orrs r0, r1 - strb r0, [r4, 0x1D] -_080AFD16: - adds r0, r4, 0 - bl sub_80AFA74 - movs r0, 0x3 - ldrb r2, [r4] - ands r0, r2 - cmp r0, 0 - bne _080AFD6A - ldrb r0, [r4, 0x9] - subs r0, 0x1 - strb r0, [r4, 0x9] - movs r1, 0xFF - ands r0, r1 - lsls r0, 24 - cmp r0, 0 - bgt _080AFD66 -_080AFD36: - ldrb r2, [r4, 0xC] - ldrb r1, [r4, 0xA] - adds r0, r2, 0 - muls r0, r1 - adds r0, 0xFF - asrs r0, 8 - movs r1, 0 - strb r0, [r4, 0x9] - lsls r0, 24 - cmp r0, 0 - beq _080AFCB6 - movs r0, 0x4 - ldrb r2, [r4] - orrs r0, r2 - strb r0, [r4] - movs r0, 0x1 - ldrb r1, [r4, 0x1D] - orrs r0, r1 - strb r0, [r4, 0x1D] - cmp r6, 0x3 - beq _080AFE0A - movs r2, 0x8 - mov r8, r2 - b _080AFE0A -_080AFD66: - ldrb r0, [r4, 0x7] - b _080AFDF6 -_080AFD6A: - cmp r0, 0x1 - bne _080AFD76 -_080AFD6E: - ldrb r0, [r4, 0x19] - strb r0, [r4, 0x9] - movs r0, 0x7 - b _080AFDF6 -_080AFD76: - cmp r0, 0x2 - bne _080AFDBA - ldrb r0, [r4, 0x9] - subs r0, 0x1 - strb r0, [r4, 0x9] - movs r1, 0xFF - ands r0, r1 - lsls r0, 24 - ldrb r2, [r4, 0x19] - lsls r1, r2, 24 - cmp r0, r1 - bgt _080AFDB6 -_080AFD8E: - ldrb r0, [r4, 0x6] - cmp r0, 0 - bne _080AFD9E - movs r0, 0xFC - ldrb r1, [r4] - ands r0, r1 - strb r0, [r4] - b _080AFD36 -_080AFD9E: - ldrb r0, [r4] - subs r0, 0x1 - strb r0, [r4] - movs r0, 0x1 - ldrb r2, [r4, 0x1D] - orrs r0, r2 - strb r0, [r4, 0x1D] - cmp r6, 0x3 - beq _080AFD6E - movs r0, 0x8 - mov r8, r0 - b _080AFD6E -_080AFDB6: - ldrb r0, [r4, 0x5] - b _080AFDF6 -_080AFDBA: - ldrb r0, [r4, 0x9] - adds r0, 0x1 - strb r0, [r4, 0x9] - movs r1, 0xFF - ands r0, r1 - ldrb r2, [r4, 0xA] - cmp r0, r2 - bcc _080AFDF4 -_080AFDCA: - ldrb r0, [r4] - subs r0, 0x1 - movs r2, 0 - strb r0, [r4] - ldrb r1, [r4, 0x5] - strb r1, [r4, 0xB] - movs r0, 0xFF - ands r0, r1 - cmp r0, 0 - beq _080AFD8E - movs r0, 0x1 - ldrb r1, [r4, 0x1D] - orrs r0, r1 - strb r0, [r4, 0x1D] - ldrb r0, [r4, 0xA] - strb r0, [r4, 0x9] - cmp r6, 0x3 - beq _080AFDF8 - ldrb r2, [r4, 0x5] - mov r8, r2 - b _080AFDF8 -_080AFDF4: - ldrb r0, [r4, 0x4] -_080AFDF6: - strb r0, [r4, 0xB] -_080AFDF8: - ldrb r0, [r4, 0xB] - subs r0, 0x1 - strb r0, [r4, 0xB] - ldr r0, [sp] - cmp r0, 0 - bne _080AFE0A - subs r0, 0x1 - str r0, [sp] - b _080AFD04 -_080AFE0A: - movs r0, 0x2 - ldrb r1, [r4, 0x1D] - ands r0, r1 - cmp r0, 0 - beq _080AFE82 - cmp r6, 0x3 - bgt _080AFE4A - movs r0, 0x8 - ldrb r2, [r4, 0x1] - ands r0, r2 - cmp r0, 0 - beq _080AFE4A - ldr r0, _080AFE34 - ldrb r0, [r0] - cmp r0, 0x3F - bgt _080AFE3C - ldr r0, [r4, 0x20] - adds r0, 0x2 - ldr r1, _080AFE38 - b _080AFE46 - .align 2, 0 -_080AFE34: .4byte 0x04000089 -_080AFE38: .4byte 0x000007fc -_080AFE3C: - cmp r0, 0x7F - bgt _080AFE4A - ldr r0, [r4, 0x20] - adds r0, 0x1 - ldr r1, _080AFE58 -_080AFE46: - ands r0, r1 - str r0, [r4, 0x20] -_080AFE4A: - cmp r6, 0x4 - beq _080AFE5C - ldr r0, [r4, 0x20] - ldr r1, [sp, 0x10] - strb r0, [r1] - b _080AFE6A - .align 2, 0 -_080AFE58: .4byte 0x000007fe -_080AFE5C: - ldr r2, [sp, 0x10] - ldrb r0, [r2] - movs r1, 0x8 - ands r1, r0 - ldr r0, [r4, 0x20] - orrs r0, r1 - strb r0, [r2] -_080AFE6A: - movs r0, 0xC0 - ldrb r1, [r4, 0x1A] - ands r0, r1 - adds r1, r4, 0 - adds r1, 0x21 - ldrb r1, [r1] - adds r0, r1, r0 - strb r0, [r4, 0x1A] - movs r2, 0xFF - ands r0, r2 - ldr r1, [sp, 0x14] - strb r0, [r1] -_080AFE82: - movs r0, 0x1 - ldrb r2, [r4, 0x1D] - ands r0, r2 - cmp r0, 0 - beq _080AFF08 - ldr r1, _080AFECC - ldrb r0, [r1] - ldrb r2, [r4, 0x1C] - bics r0, r2 - ldrb r2, [r4, 0x1B] - orrs r0, r2 - strb r0, [r1] - cmp r6, 0x3 - bne _080AFED4 - ldr r0, _080AFED0 - ldrb r1, [r4, 0x9] - adds r0, r1, r0 - ldrb r0, [r0] - ldr r2, [sp, 0xC] - strb r0, [r2] - movs r1, 0x80 - adds r0, r1, 0 - ldrb r2, [r4, 0x1A] - ands r0, r2 - cmp r0, 0 - beq _080AFF08 - ldr r0, [sp, 0x8] - strb r1, [r0] - ldrb r0, [r4, 0x1A] - ldr r1, [sp, 0x14] - strb r0, [r1] - movs r0, 0x7F - ldrb r2, [r4, 0x1A] - ands r0, r2 - strb r0, [r4, 0x1A] - b _080AFF08 - .align 2, 0 -_080AFECC: .4byte 0x04000081 -_080AFED0: .4byte gUnknown_826FBF0 -_080AFED4: - movs r0, 0xF - mov r1, r8 - ands r1, r0 - mov r8, r1 - ldrb r2, [r4, 0x9] - lsls r0, r2, 4 - add r0, r8 - ldr r1, [sp, 0xC] - strb r0, [r1] - movs r2, 0x80 - ldrb r0, [r4, 0x1A] - orrs r0, r2 - ldr r1, [sp, 0x14] - strb r0, [r1] - cmp r6, 0x1 - bne _080AFF08 - ldr r0, [sp, 0x8] - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080AFF08 - ldrb r0, [r4, 0x1A] - orrs r0, r2 - ldr r1, [sp, 0x14] - strb r0, [r1] -_080AFF08: - movs r0, 0 - strb r0, [r4, 0x1D] -_080AFF0C: - mov r6, r10 - mov r4, r9 - cmp r6, 0x4 - bgt _080AFF16 - b _080AFB0C -_080AFF16: - 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_80AFADC - - thumb_func_start sub_80AFF28 -sub_80AFF28: - push {r4,lr} - adds r2, r0, 0 - lsls r1, 16 - lsrs r1, 16 - ldr r3, [r2, 0x34] - ldr r0, _080AFF4C - cmp r3, r0 - bne _080AFF44 - strh r1, [r2, 0x1E] - ldrh r4, [r2, 0x1C] - adds r0, r1, 0 - muls r0, r4 - asrs r0, 8 - strh r0, [r2, 0x20] -_080AFF44: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AFF4C: .4byte 0x68736d53 - thumb_func_end sub_80AFF28 - - thumb_func_start sub_80AFF50 -sub_80AFF50: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r4, r0, 0 - lsls r1, 16 - lsrs r7, r1, 16 - lsls r6, r2, 16 - ldr r3, [r4, 0x34] - ldr r0, _080AFFB4 - cmp r3, r0 - bne _080AFFA8 - adds r0, r3, 0x1 - str r0, [r4, 0x34] - ldrb r2, [r4, 0x8] - ldr r1, [r4, 0x2C] - movs r5, 0x1 - cmp r2, 0 - ble _080AFFA4 - movs r0, 0x80 - mov r8, r0 - lsrs r6, 18 - movs r0, 0x3 - mov r12, r0 -_080AFF80: - adds r0, r7, 0 - ands r0, r5 - cmp r0, 0 - beq _080AFF9A - ldrb r3, [r1] - mov r0, r8 - ands r0, r3 - cmp r0, 0 - beq _080AFF9A - strb r6, [r1, 0x13] - mov r0, r12 - orrs r0, r3 - strb r0, [r1] -_080AFF9A: - subs r2, 0x1 - adds r1, 0x50 - lsls r5, 1 - cmp r2, 0 - bgt _080AFF80 -_080AFFA4: - ldr r0, _080AFFB4 - str r0, [r4, 0x34] -_080AFFA8: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AFFB4: .4byte 0x68736d53 - thumb_func_end sub_80AFF50 - - thumb_func_start sub_80AFFB8 -sub_80AFFB8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r4, r0, 0 - lsls r1, 16 - lsrs r1, 16 - mov r12, r1 - lsls r2, 16 - lsrs r6, r2, 16 - ldr r3, [r4, 0x34] - ldr r0, _080B0028 - cmp r3, r0 - bne _080B001A - adds r0, r3, 0x1 - str r0, [r4, 0x34] - ldrb r2, [r4, 0x8] - ldr r3, [r4, 0x2C] - movs r5, 0x1 - cmp r2, 0 - ble _080B0016 - movs r0, 0x80 - mov r9, r0 - lsls r0, r6, 16 - asrs r7, r0, 24 - movs r0, 0xC - mov r8, r0 -_080AFFF0: - mov r0, r12 - ands r0, r5 - cmp r0, 0 - beq _080B000C - ldrb r1, [r3] - mov r0, r9 - ands r0, r1 - cmp r0, 0 - beq _080B000C - strb r7, [r3, 0xB] - strb r6, [r3, 0xD] - mov r0, r8 - orrs r0, r1 - strb r0, [r3] -_080B000C: - subs r2, 0x1 - adds r3, 0x50 - lsls r5, 1 - cmp r2, 0 - bgt _080AFFF0 -_080B0016: - ldr r0, _080B0028 - str r0, [r4, 0x34] -_080B001A: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B0028: .4byte 0x68736d53 - thumb_func_end sub_80AFFB8 - - thumb_func_start sub_80B002C -sub_80B002C: - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r4, r0, 0 - lsls r1, 16 - lsrs r7, r1, 16 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r3, [r4, 0x34] - ldr r0, _080B0090 - cmp r3, r0 - bne _080B0084 - adds r0, r3, 0x1 - str r0, [r4, 0x34] - ldrb r2, [r4, 0x8] - ldr r1, [r4, 0x2C] - movs r5, 0x1 - cmp r2, 0 - ble _080B0080 - movs r0, 0x80 - mov r8, r0 - movs r0, 0x3 - mov r12, r0 -_080B005C: - adds r0, r7, 0 - ands r0, r5 - cmp r0, 0 - beq _080B0076 - ldrb r3, [r1] - mov r0, r8 - ands r0, r3 - cmp r0, 0 - beq _080B0076 - strb r6, [r1, 0x15] - mov r0, r12 - orrs r0, r3 - strb r0, [r1] -_080B0076: - subs r2, 0x1 - adds r1, 0x50 - lsls r5, 1 - cmp r2, 0 - bgt _080B005C -_080B0080: - ldr r0, _080B0090 - str r0, [r4, 0x34] -_080B0084: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B0090: .4byte 0x68736d53 - thumb_func_end sub_80B002C - - thumb_func_start sub_80B0094 -sub_80B0094: - adds r1, r0, 0 - movs r2, 0 - movs r0, 0 - strb r0, [r1, 0x1A] - strb r0, [r1, 0x16] - ldrb r0, [r1, 0x18] - cmp r0, 0 - bne _080B00A8 - movs r0, 0xC - b _080B00AA -_080B00A8: - movs r0, 0x3 -_080B00AA: - ldrb r2, [r1] - orrs r0, r2 - strb r0, [r1] - bx lr - thumb_func_end sub_80B0094 - - thumb_func_start sub_80B00B4 -sub_80B00B4: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r6, r0, 0 - lsls r1, 16 - lsrs r1, 16 - mov r10, r1 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - ldr r1, [r6, 0x34] - ldr r0, _080B0124 - cmp r1, r0 - bne _080B0114 - adds r0, r1, 0x1 - str r0, [r6, 0x34] - ldrb r5, [r6, 0x8] - ldr r4, [r6, 0x2C] - movs r7, 0x1 - cmp r5, 0 - ble _080B0110 - mov r9, r8 -_080B00E4: - mov r0, r10 - ands r0, r7 - cmp r0, 0 - beq _080B0106 - movs r0, 0x80 - ldrb r1, [r4] - ands r0, r1 - cmp r0, 0 - beq _080B0106 - mov r0, r8 - strb r0, [r4, 0x17] - mov r1, r9 - cmp r1, 0 - bne _080B0106 - adds r0, r4, 0 - bl sub_80B0094 -_080B0106: - subs r5, 0x1 - adds r4, 0x50 - lsls r7, 1 - cmp r5, 0 - bgt _080B00E4 -_080B0110: - ldr r0, _080B0124 - str r0, [r6, 0x34] -_080B0114: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B0124: .4byte 0x68736d53 - thumb_func_end sub_80B00B4 - - thumb_func_start sub_80B0128 -sub_80B0128: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r6, r0, 0 - lsls r1, 16 - lsrs r1, 16 - mov r10, r1 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - ldr r1, [r6, 0x34] - ldr r0, _080B0198 - cmp r1, r0 - bne _080B0188 - adds r0, r1, 0x1 - str r0, [r6, 0x34] - ldrb r5, [r6, 0x8] - ldr r4, [r6, 0x2C] - movs r7, 0x1 - cmp r5, 0 - ble _080B0184 - mov r9, r8 -_080B0158: - mov r0, r10 - ands r0, r7 - cmp r0, 0 - beq _080B017A - movs r0, 0x80 - ldrb r1, [r4] - ands r0, r1 - cmp r0, 0 - beq _080B017A - mov r0, r8 - strb r0, [r4, 0x19] - mov r1, r9 - cmp r1, 0 - bne _080B017A - adds r0, r4, 0 - bl sub_80B0094 -_080B017A: - subs r5, 0x1 - adds r4, 0x50 - lsls r7, 1 - cmp r5, 0 - bgt _080B0158 -_080B0184: - ldr r0, _080B0198 - str r0, [r6, 0x34] -_080B0188: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B0198: .4byte 0x68736d53 - thumb_func_end sub_80B0128 - - thumb_func_start sub_80B019C -sub_80B019C: - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r1, 0 - ldr r1, [r6, 0x40] - ldrb r5, [r1] - adds r2, r1, 0x1 - str r2, [r6, 0x40] - ldr r0, [r4, 0x18] - ldrb r1, [r1, 0x1] - adds r3, r1, r0 - adds r0, r2, 0x1 - str r0, [r6, 0x40] - ldrb r2, [r2, 0x1] - adds r0, 0x1 - str r0, [r6, 0x40] - cmp r5, 0x11 - bls _080B01C0 - b _080B02EE -_080B01C0: - lsls r0, r5, 2 - ldr r1, _080B01CC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080B01CC: .4byte _080B01D0 - .align 2, 0 -_080B01D0: - .4byte _080B0218 - .4byte _080B021C - .4byte _080B0224 - .4byte _080B022C - .4byte _080B0236 - .4byte _080B0244 - .4byte _080B0252 - .4byte _080B025A - .4byte _080B0262 - .4byte _080B026A - .4byte _080B0272 - .4byte _080B027A - .4byte _080B0282 - .4byte _080B0290 - .4byte _080B029E - .4byte _080B02AC - .4byte _080B02BA - .4byte _080B02C8 -_080B0218: - strb r2, [r3] - b _080B02EE -_080B021C: - ldrb r1, [r3] - adds r0, r1, r2 - strb r0, [r3] - b _080B02EE -_080B0224: - ldrb r1, [r3] - subs r0, r1, r2 - strb r0, [r3] - b _080B02EE -_080B022C: - ldr r0, [r4, 0x18] - adds r0, r2 - ldrb r0, [r0] - strb r0, [r3] - b _080B02EE -_080B0236: - ldr r0, [r4, 0x18] - adds r0, r2 - ldrb r1, [r3] - ldrb r0, [r0] - adds r0, r1, r0 - strb r0, [r3] - b _080B02EE -_080B0244: - ldr r0, [r4, 0x18] - adds r0, r2 - ldrb r1, [r3] - ldrb r0, [r0] - subs r0, r1, r0 - strb r0, [r3] - b _080B02EE -_080B0252: - ldrb r3, [r3] - cmp r3, r2 - beq _080B02D4 - b _080B02E8 -_080B025A: - ldrb r3, [r3] - cmp r3, r2 - bne _080B02D4 - b _080B02E8 -_080B0262: - ldrb r3, [r3] - cmp r3, r2 - bhi _080B02D4 - b _080B02E8 -_080B026A: - ldrb r3, [r3] - cmp r3, r2 - bcs _080B02D4 - b _080B02E8 -_080B0272: - ldrb r3, [r3] - cmp r3, r2 - bls _080B02D4 - b _080B02E8 -_080B027A: - ldrb r3, [r3] - cmp r3, r2 - bcc _080B02D4 - b _080B02E8 -_080B0282: - ldr r0, [r4, 0x18] - adds r0, r2 - ldrb r3, [r3] - ldrb r0, [r0] - cmp r3, r0 - beq _080B02D4 - b _080B02E8 -_080B0290: - ldr r0, [r4, 0x18] - adds r0, r2 - ldrb r3, [r3] - ldrb r0, [r0] - cmp r3, r0 - bne _080B02D4 - b _080B02E8 -_080B029E: - ldr r0, [r4, 0x18] - adds r0, r2 - ldrb r3, [r3] - ldrb r0, [r0] - cmp r3, r0 - bhi _080B02D4 - b _080B02E8 -_080B02AC: - ldr r0, [r4, 0x18] - adds r0, r2 - ldrb r3, [r3] - ldrb r0, [r0] - cmp r3, r0 - bcs _080B02D4 - b _080B02E8 -_080B02BA: - ldr r0, [r4, 0x18] - adds r0, r2 - ldrb r3, [r3] - ldrb r0, [r0] - cmp r3, r0 - bls _080B02D4 - b _080B02E8 -_080B02C8: - ldr r0, [r4, 0x18] - adds r0, r2 - ldrb r3, [r3] - ldrb r0, [r0] - cmp r3, r0 - bcs _080B02E8 -_080B02D4: - ldr r0, _080B02E4 - ldr r2, [r0] - adds r0, r4, 0 - adds r1, r6, 0 - bl _call_via_r2 - b _080B02EE - .align 2, 0 -_080B02E4: .4byte gUnknown_203AE84 -_080B02E8: - ldr r0, [r6, 0x40] - adds r0, 0x4 - str r0, [r6, 0x40] -_080B02EE: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80B019C - - thumb_func_start sub_80B02F4 -sub_80B02F4: - push {lr} - ldr r2, [r1, 0x40] - ldrb r3, [r2] - adds r2, 0x1 - str r2, [r1, 0x40] - ldr r2, _080B0310 - lsls r3, 2 - adds r3, r2 - ldr r2, [r3] - bl _call_via_r2 - pop {r0} - bx r0 - .align 2, 0 -_080B0310: .4byte gUnknown_826FC34 - thumb_func_end sub_80B02F4 - - thumb_func_start sub_80B0314 -sub_80B0314: - push {lr} - ldr r2, _080B0324 - ldr r2, [r2] - bl _call_via_r2 - pop {r0} - bx r0 - .align 2, 0 -_080B0324: .4byte gUnknown_203AE80 - thumb_func_end sub_80B0314 - - thumb_func_start sub_80B0328 -sub_80B0328: - push {r4,lr} - ldr r2, [r1, 0x40] - ldr r0, _080B0360 - ands r4, r0 - ldrb r0, [r2] - orrs r4, r0 - ldrb r0, [r2, 0x1] - lsls r3, r0, 8 - ldr r0, _080B0364 - ands r4, r0 - orrs r4, r3 - ldrb r0, [r2, 0x2] - lsls r3, r0, 16 - ldr r0, _080B0368 - ands r4, r0 - orrs r4, r3 - ldrb r0, [r2, 0x3] - lsls r3, r0, 24 - ldr r0, _080B036C - ands r4, r0 - orrs r4, r3 - str r4, [r1, 0x28] - adds r2, 0x4 - str r2, [r1, 0x40] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B0360: .4byte 0xffffff00 -_080B0364: .4byte 0xffff00ff -_080B0368: .4byte 0xff00ffff -_080B036C: .4byte 0x00ffffff - thumb_func_end sub_80B0328 - - thumb_func_start sub_80B0370 -sub_80B0370: - ldr r0, [r1, 0x40] - ldrb r2, [r0] - adds r0, r1, 0 - adds r0, 0x24 - strb r2, [r0] - ldr r0, [r1, 0x40] - adds r0, 0x1 - str r0, [r1, 0x40] - bx lr - thumb_func_end sub_80B0370 - - thumb_func_start sub_80B0384 -sub_80B0384: - ldr r0, [r1, 0x40] - ldrb r2, [r0] - adds r0, r1, 0 - adds r0, 0x2C - strb r2, [r0] - ldr r0, [r1, 0x40] - adds r0, 0x1 - str r0, [r1, 0x40] - bx lr - thumb_func_end sub_80B0384 - - thumb_func_start sub_80B0398 -sub_80B0398: - ldr r0, [r1, 0x40] - ldrb r0, [r0] - adds r2, r1, 0 - adds r2, 0x2D - strb r0, [r2] - ldr r0, [r1, 0x40] - adds r0, 0x1 - str r0, [r1, 0x40] - bx lr - thumb_func_end sub_80B0398 - - thumb_func_start sub_80B03AC -sub_80B03AC: - ldr r0, [r1, 0x40] - ldrb r0, [r0] - adds r2, r1, 0 - adds r2, 0x2E - strb r0, [r2] - ldr r0, [r1, 0x40] - adds r0, 0x1 - str r0, [r1, 0x40] - bx lr - thumb_func_end sub_80B03AC - - thumb_func_start sub_80B03C0 -sub_80B03C0: - ldr r0, [r1, 0x40] - ldrb r0, [r0] - adds r2, r1, 0 - adds r2, 0x2F - strb r0, [r2] - ldr r0, [r1, 0x40] - adds r0, 0x1 - str r0, [r1, 0x40] - bx lr - thumb_func_end sub_80B03C0 - - thumb_func_start sub_80B03D4 -sub_80B03D4: - ldr r0, [r1, 0x40] - ldrb r2, [r0] - strb r2, [r1, 0x1E] - adds r0, 0x1 - str r0, [r1, 0x40] - bx lr - thumb_func_end sub_80B03D4 - - thumb_func_start sub_80B03E0 -sub_80B03E0: - ldr r0, [r1, 0x40] - ldrb r2, [r0] - strb r2, [r1, 0x1F] - adds r0, 0x1 - str r0, [r1, 0x40] - bx lr - thumb_func_end sub_80B03E0 - - thumb_func_start sub_80B03EC -sub_80B03EC: - ldr r0, [r1, 0x40] - ldrb r0, [r0] - adds r2, r1, 0 - adds r2, 0x26 - strb r0, [r2] - ldr r0, [r1, 0x40] - adds r0, 0x1 - str r0, [r1, 0x40] - bx lr - thumb_func_end sub_80B03EC - - thumb_func_start ply_xswee -ply_xswee: - ldr r0, [r1, 0x40] - ldrb r0, [r0] - adds r2, r1, 0 - adds r2, 0x27 - strb r0, [r2] - ldr r0, [r1, 0x40] - adds r0, 0x1 - str r0, [r1, 0x40] - bx lr - thumb_func_end ply_xswee - - thumb_func_start nullsub_139 -nullsub_139: - bx lr - thumb_func_end nullsub_139 - - .align 2, 0 @ Don't pad with nop. |